From 2c981d3ce30243c73568f84e6e2b5c7d8ae00fca Mon Sep 17 00:00:00 2001 From: Stephan Lo Date: Tue, 23 Dec 2025 13:31:36 +0100 Subject: [PATCH] refactor(architecture): Refactor text architecture to likec4 --- .../docs/edp/deployment/basics/application.md | 58 +------ .../edp/deployment/basics/orchestration.md | 24 +-- .../edp-likec4/models/components/tools.c4 | 8 + .../models/context/application-deployment.c4 | 21 +++ .../orchestration/orchestration-workflow.c4 | 22 +++ .../views/edp/application-deployment-flow.c4 | 22 +++ static/js/likec4-webcomponent.js | 142 +++++++++--------- 7 files changed, 150 insertions(+), 147 deletions(-) create mode 100644 resources/edp-likec4/models/context/application-deployment.c4 create mode 100644 resources/edp-likec4/views/dynamic/orchestration/orchestration-workflow.c4 create mode 100644 resources/edp-likec4/views/edp/application-deployment-flow.c4 diff --git a/content/en/docs/edp/deployment/basics/application.md b/content/en/docs/edp/deployment/basics/application.md index 25d5333..8151aa1 100644 --- a/content/en/docs/edp/deployment/basics/application.md +++ b/content/en/docs/edp/deployment/basics/application.md @@ -434,63 +434,7 @@ Integration with monitoring and logging: ### Application Deployment Flow -```text -┌──────────────┐ -│ Developer │ -└──────┬───────┘ - │ git push - ▼ -┌─────────────────────────────────────────┐ -│ Forgejo │ -│ │ -│ ┌────────────────────────────────┐ │ -│ │ Git Repository │ │ -│ │ - Application Code │ │ -│ │ - Kubernetes Manifests │ │ -│ │ - Pipeline Configuration │ │ -│ └─────────┬──────────────────────┘ │ -│ │ │ -│ │ triggers │ -│ ▼ │ -│ ┌────────────────────────────────┐ │ -│ │ Forgejo Actions (CI/CD) │ │ -│ │ - Build Container Image │ │ -│ │ - Run Tests │ │ -│ │ - Security Scans │ │ -│ │ - Push to Registry │ │ -│ └─────────┬──────────────────────┘ │ -└────────────┼────────────────────────────┘ - │ - │ image pushed - ▼ -┌─────────────────────────────────────────┐ -│ Container Registry │ -└─────────────────────────────────────────┘ - │ - │ watches manifests - ▼ -┌─────────────────────────────────────────┐ -│ ArgoCD │ -│ │ -│ - Monitors Git Repository │ -│ - Detects Changes │ -│ - Syncs to Kubernetes │ -│ - Reports Health Status │ -└─────────────┬───────────────────────────┘ - │ - │ deploys - ▼ -┌─────────────────────────────────────────┐ -│ Kubernetes Cluster │ -│ │ -│ ┌────────────────────────────────┐ │ -│ │ Running Application │ │ -│ │ - Pods │ │ -│ │ - Services │ │ -│ │ - Ingress │ │ -│ └────────────────────────────────┘ │ -└─────────────────────────────────────────┘ -``` +{{< likec4-view view="application_deployment_flow" title="Application Deployment Flow" >}} ### CI/CD Pipeline Architecture diff --git a/content/en/docs/edp/deployment/basics/orchestration.md b/content/en/docs/edp/deployment/basics/orchestration.md index 181d599..b8df19e 100644 --- a/content/en/docs/edp/deployment/basics/orchestration.md +++ b/content/en/docs/edp/deployment/basics/orchestration.md @@ -145,29 +145,7 @@ Within the IPCEI-CIS platform, we utilize the [CNOE (Cloud Native Operational Ex A typical orchestration workflow in the IPCEI-CIS platform: -```text -┌─────────────┐ ┌───────────┐ ┌───────────┐ ┌────────────┐ -│ Developer │────▶│ Forgejo │────▶│ Git │────▶│ ArgoCD │ -│ │ │ Pipelines│ │Repository │ │ │ -└─────────────┘ └───────────┘ └───────────┘ └─────┬──────┘ - │ - ▼ - ┌───────────────────────────────────────────────┐ - │ │ - │ Kubernetes Cluster(s) │ - │ │ - │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ - │ │ Apps │ │Services │ │Resources │ │ - │ └──────────┘ └──────────┘ └──────────┘ │ - │ │ - └───────────────────────────────────────────────┘ - ▲ - │ - ┌────┴─────┐ - │Terraform │ - │ │ - └──────────┘ -``` +{{< likec4-view view="orchestration_workflow" title="Orchestration Workflow" >}} **Workflow Steps**: diff --git a/resources/edp-likec4/models/components/tools.c4 b/resources/edp-likec4/models/components/tools.c4 index 5215d96..1d4dd0e 100644 --- a/resources/edp-likec4/models/components/tools.c4 +++ b/resources/edp-likec4/models/components/tools.c4 @@ -25,4 +25,12 @@ model { platformdeveloper -> idpbuilder 'runs' } + component terraform 'Terraform' { + description 'Infrastructure provisioning (IaC)' + technology 'Terraform' + style { + shape rectangle + } + } + } \ No newline at end of file diff --git a/resources/edp-likec4/models/context/application-deployment.c4 b/resources/edp-likec4/models/context/application-deployment.c4 new file mode 100644 index 0000000..63d1ce6 --- /dev/null +++ b/resources/edp-likec4/models/context/application-deployment.c4 @@ -0,0 +1,21 @@ +model { + runtimeCluster = system 'Kubernetes Cluster' { + description 'Target cluster where applications are deployed' + technology 'Kubernetes' + + container runningApplication 'Running Application' { + description 'Deployed workload' + + component pods 'Pods' + component services 'Services' + component ingress 'Ingress' + } + } + + // Relationships matching the documentation flow + developer -> edp.forgejogit 'git push' + edp.forgejogit -> edp.forgejoActions 'triggers' + edp.forgejoActions -> edp.imageregistry 'push image' + edp.forgejogit -> edp.argoCD 'watches manifests' + edp.argoCD -> runtimeCluster 'deploys' +} diff --git a/resources/edp-likec4/views/dynamic/orchestration/orchestration-workflow.c4 b/resources/edp-likec4/views/dynamic/orchestration/orchestration-workflow.c4 new file mode 100644 index 0000000..142a6f9 --- /dev/null +++ b/resources/edp-likec4/views/dynamic/orchestration/orchestration-workflow.c4 @@ -0,0 +1,22 @@ +views { + dynamic view orchestration_workflow { + title 'Orchestration Workflow' + + include developer + include edp.forgejo + include edp.forgejoActions + include edp.forgejogit + include edp.argoCD + include runtimeCluster + include terraform + + developer -> edp.forgejo 'defines & commits' + edp.forgejo -> edp.forgejoActions 'pipelines' + edp.forgejo -> edp.forgejogit 'git repository' + edp.forgejogit -> edp.argoCD 'sync trigger' + edp.argoCD -> runtimeCluster 'deploys' + terraform -> runtimeCluster 'provisions' + + autoLayout TopBottom + } +} diff --git a/resources/edp-likec4/views/edp/application-deployment-flow.c4 b/resources/edp-likec4/views/edp/application-deployment-flow.c4 new file mode 100644 index 0000000..1d01fb8 --- /dev/null +++ b/resources/edp-likec4/views/edp/application-deployment-flow.c4 @@ -0,0 +1,22 @@ +views { + + dynamic view application_deployment_flow { + title 'Application Deployment Flow' + + include developer + include edp.forgejo + include edp.forgejogit + include edp.forgejoActions + include edp.imageregistry + include edp.argoCD + include runtimeCluster + + developer -> edp.forgejogit 'git push' + edp.forgejogit -> edp.forgejoActions 'triggers' + edp.forgejoActions -> edp.imageregistry 'push image' + edp.forgejogit -> edp.argoCD 'watches manifests' + edp.argoCD -> runtimeCluster 'deploys' + + autoLayout TopBottom + } +} diff --git a/static/js/likec4-webcomponent.js b/static/js/likec4-webcomponent.js index e3b1072..a22f2f3 100644 --- a/static/js/likec4-webcomponent.js +++ b/static/js/likec4-webcomponent.js @@ -7,7 +7,7 @@ var LikeC4Views=(function(Y6){"use strict";/* prettier-ignore-start */ ******************************************************************************/ -function Lge(e,r){for(var n=0;no[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}function LN(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var X6={exports:{}},Xg={};var FN;function Fge(){if(FN)return Xg;FN=1;var e=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function n(o,i,a){var l=null;if(a!==void 0&&(l=""+a),i.key!==void 0&&(l=""+i.key),"key"in i){a={};for(var s in i)s!=="key"&&(a[s]=i[s])}else a=i;return i=a.ref,{$$typeof:e,type:o,key:l,ref:i!==void 0?i:null,props:a}}return Xg.Fragment=r,Xg.jsx=n,Xg.jsxs=n,Xg}var VN;function Vge(){return VN||(VN=1,X6.exports=Fge()),X6.exports}var y=Vge(),K6={exports:{}},$t={};var qN;function qge(){if(qN)return $t;qN=1;var e=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),a=Symbol.for("react.consumer"),l=Symbol.for("react.context"),s=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),u=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),f=Symbol.iterator;function g(Y){return Y===null||typeof Y!="object"?null:(Y=f&&Y[f]||Y["@@iterator"],typeof Y=="function"?Y:null)}var v={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},w=Object.assign,x={};function k(Y,K,O){this.props=Y,this.context=K,this.refs=x,this.updater=O||v}k.prototype.isReactComponent={},k.prototype.setState=function(Y,K){if(typeof Y!="object"&&typeof Y!="function"&&Y!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,Y,K,"setState")},k.prototype.forceUpdate=function(Y){this.updater.enqueueForceUpdate(this,Y,"forceUpdate")};function C(){}C.prototype=k.prototype;function _(Y,K,O){this.props=Y,this.context=K,this.refs=x,this.updater=O||v}var $=_.prototype=new C;$.constructor=_,w($,k.prototype),$.isPureReactComponent=!0;var R=Array.isArray;function T(){}var A={H:null,A:null,T:null,S:null},z=Object.prototype.hasOwnProperty;function j(Y,K,O){var W=O.ref;return{$$typeof:e,type:Y,key:K,ref:W!==void 0?W:null,props:O}}function I(Y,K){return j(Y.type,K,Y.props)}function P(Y){return typeof Y=="object"&&Y!==null&&Y.$$typeof===e}function L(Y){var K={"=":"=0",":":"=2"};return"$"+Y.replace(/[=:]/g,function(O){return K[O]})}var H=/\/+/g;function M(Y,K){return typeof Y=="object"&&Y!==null&&Y.key!=null?L(""+Y.key):K.toString(36)}function V(Y){switch(Y.status){case"fulfilled":return Y.value;case"rejected":throw Y.reason;default:switch(typeof Y.status=="string"?Y.then(T,T):(Y.status="pending",Y.then(function(K){Y.status==="pending"&&(Y.status="fulfilled",Y.value=K)},function(K){Y.status==="pending"&&(Y.status="rejected",Y.reason=K)})),Y.status){case"fulfilled":return Y.value;case"rejected":throw Y.reason}}throw Y}function B(Y,K,O,W,Z){var Q=typeof Y;(Q==="undefined"||Q==="boolean")&&(Y=null);var ie=!1;if(Y===null)ie=!0;else switch(Q){case"bigint":case"string":case"number":ie=!0;break;case"object":switch(Y.$$typeof){case e:case r:ie=!0;break;case u:return ie=Y._init,B(ie(Y._payload),K,O,W,Z)}}if(ie)return Z=Z(Y),ie=W===""?"."+M(Y,0):W,R(Z)?(O="",ie!=null&&(O=ie.replace(H,"$&/")+"/"),B(Z,K,O,"",function(ue){return ue})):Z!=null&&(P(Z)&&(Z=I(Z,O+(Z.key==null||Y&&Y.key===Z.key?"":(""+Z.key).replace(H,"$&/")+"/")+ie)),K.push(Z)),1;ie=0;var te=W===""?".":W+":";if(R(Y))for(var re=0;re"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(r){console.error(r)}}return e(),Q6.exports=Hge(),Q6.exports}var Va=GN();const YN=LN(Va);function ar(e,r,n){const o=typeof r=="symbol"?r:Symbol.for(r);return e.hasOwnProperty(o)||Object.defineProperty(e,o,{enumerable:!1,writable:!1,value:n()}),e[o]}function J6(e){if(e===null||typeof e!="object")return!1;const r=Object.getPrototypeOf(e);return r!==null&&r!==Object.prototype&&Object.getPrototypeOf(r)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)==="[object Module]":!0}function e_(e,r,n=".",o){if(!J6(r))return e_(e,{},n);const i=Object.assign({},r);for(const a in e){if(a==="__proto__"||a==="constructor")continue;const l=e[a];l!=null&&(Array.isArray(l)&&Array.isArray(i[a])?i[a]=[...l,...i[a]]:J6(l)&&J6(i[a])?i[a]=e_(l,i[a],(n?`${n}.`:"")+a.toString()):i[a]=l)}return i}function Uge(e){return(...r)=>r.reduce((n,o)=>e_(n,o,""),{})}const XN=Uge();function Wge(e,r,n){let o=i=>e(i,...r);return n===void 0?o:Object.assign(o,{lazy:n,lazyArgs:r})}function ao(e,r,n){let o=e.length-r.length;if(o===0)return e(...r);if(o===1)return Wge(e,r,n);throw Error("Wrong number of arguments")}function Ll(...e){return ao(Gge,e)}const Gge=(e,r)=>e.length>=r;function mt(e,r){if(typeof e>"u"||e==null){const n=typeof r=="function"?r():r;throw new Error(n??`Expected defined value, but received ${e}`)}return e}function He(e,r){if(!e)throw new Error(r??"Invariant failed")}function Qo(e){throw new Error(`NonExhaustive value: ${e}`)}function Yge(...e){return ao(Xge,e)}function Xge(e,r){let n={};for(let[o,i]of e.entries())n[i]=r(i,o,e);return n}function yb(...e){return ao(Kg,e)}function Kg(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||typeof r!="object"||e===null||r===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(r))return!1;if(Array.isArray(e))return Kge(e,r);if(e instanceof Map)return Zge(e,r);if(e instanceof Set)return Qge(e,r);if(e instanceof Date)return e.getTime()===r.getTime();if(e instanceof RegExp)return e.toString()===r.toString();if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let[n,o]of Object.entries(e))if(!(n in r)||!Kg(o,r[n]))return!1;return!0}function Kge(e,r){if(e.length!==r.length)return!1;for(let[n,o]of e.entries())if(!Kg(o,r[n]))return!1;return!0}function Zge(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e.entries())if(!r.has(n)||!Kg(o,r.get(n)))return!1;return!0}function Qge(e,r){if(e.size!==r.size)return!1;let n=[...r];for(let o of e){let i=!1;for(let[a,l]of n.entries())if(Kg(o,l)){i=!0,n.splice(a,1);break}if(!i)return!1}return!0}const{min:Jge,max:e1e}=Math,Au=(e,r=0,n=1)=>Jge(e1e(r,e),n),t_=e=>{e._clipped=!1,e._unclipped=e.slice(0);for(let r=0;r<=3;r++)r<3?((e[r]<0||e[r]>255)&&(e._clipped=!0),e[r]=Au(e[r],0,255)):r===3&&(e[r]=Au(e[r],0,1));return e},KN={};for(let e of["Boolean","Number","String","Function","Array","Date","RegExp","Undefined","Null"])KN[`[object ${e}]`]=e.toLowerCase();function Ft(e){return KN[Object.prototype.toString.call(e)]||"object"}const jt=(e,r=null)=>e.length>=3?Array.prototype.slice.call(e):Ft(e[0])=="object"&&r?r.split("").filter(n=>e[0][n]!==void 0).map(n=>e[0][n]):e[0].slice(0),Rh=e=>{if(e.length<2)return null;const r=e.length-1;return Ft(e[r])=="string"?e[r].toLowerCase():null},{PI:vb,min:ZN,max:QN}=Math,Ki=e=>Math.round(e*100)/100,r_=e=>Math.round(e*100)/100,As=vb*2,n_=vb/3,t1e=vb/180,r1e=180/vb;function JN(e){return[...e.slice(0,3).reverse(),...e.slice(3)]}const Rt={format:{},autodetect:[]};let Ne=class{constructor(...r){const n=this;if(Ft(r[0])==="object"&&r[0].constructor&&r[0].constructor===this.constructor)return r[0];let o=Rh(r),i=!1;if(!o){i=!0,Rt.sorted||(Rt.autodetect=Rt.autodetect.sort((a,l)=>l.p-a.p),Rt.sorted=!0);for(let a of Rt.autodetect)if(o=a.test(...r),o)break}if(Rt.format[o]){const a=Rt.format[o].apply(null,i?r:r.slice(0,-1));n._rgb=t_(a)}else throw new Error("unknown format: "+r);n._rgb.length===3&&n._rgb.push(1)}toString(){return Ft(this.hex)=="function"?this.hex():`[${this._rgb.join(",")}]`}};const n1e="3.2.0",zt=(...e)=>new Ne(...e);zt.version=n1e;const zh={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",laserlemon:"#ffff54",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrod:"#fafad2",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",maroon2:"#7f0000",maroon3:"#b03060",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",purple2:"#7f007f",purple3:"#a020f0",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},o1e=/^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,i1e=/^#?([A-Fa-f0-9]{8}|[A-Fa-f0-9]{4})$/,eP=e=>{if(e.match(o1e)){(e.length===4||e.length===7)&&(e=e.substr(1)),e.length===3&&(e=e.split(""),e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);const r=parseInt(e,16),n=r>>16,o=r>>8&255,i=r&255;return[n,o,i,1]}if(e.match(i1e)){(e.length===5||e.length===9)&&(e=e.substr(1)),e.length===4&&(e=e.split(""),e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);const r=parseInt(e,16),n=r>>24&255,o=r>>16&255,i=r>>8&255,a=Math.round((r&255)/255*100)/100;return[n,o,i,a]}throw new Error(`unknown hex color: ${e}`)},{round:bb}=Math,tP=(...e)=>{let[r,n,o,i]=jt(e,"rgba"),a=Rh(e)||"auto";i===void 0&&(i=1),a==="auto"&&(a=i<1?"rgba":"rgb"),r=bb(r),n=bb(n),o=bb(o);let s="000000"+(r<<16|n<<8|o).toString(16);s=s.substr(s.length-6);let c="0"+bb(i*255).toString(16);switch(c=c.substr(c.length-2),a.toLowerCase()){case"rgba":return`#${s}${c}`;case"argb":return`#${c}${s}`;default:return`#${s}`}};Ne.prototype.name=function(){const e=tP(this._rgb,"rgb");for(let r of Object.keys(zh))if(zh[r]===e)return r.toLowerCase();return e},Rt.format.named=e=>{if(e=e.toLowerCase(),zh[e])return eP(zh[e]);throw new Error("unknown color name: "+e)},Rt.autodetect.push({p:5,test:(e,...r)=>{if(!r.length&&Ft(e)==="string"&&zh[e.toLowerCase()])return"named"}}),Ne.prototype.alpha=function(e,r=!1){return e!==void 0&&Ft(e)==="number"?r?(this._rgb[3]=e,this):new Ne([this._rgb[0],this._rgb[1],this._rgb[2],e],"rgb"):this._rgb[3]},Ne.prototype.clipped=function(){return this._rgb._clipped||!1};const Fl={Kn:18,labWhitePoint:"d65",Xn:.95047,Yn:1,Zn:1.08883,kE:216/24389,kKE:8,kK:24389/27,RefWhiteRGB:{X:.95047,Y:1,Z:1.08883},MtxRGB2XYZ:{m00:.4124564390896922,m01:.21267285140562253,m02:.0193338955823293,m10:.357576077643909,m11:.715152155287818,m12:.11919202588130297,m20:.18043748326639894,m21:.07217499330655958,m22:.9503040785363679},MtxXYZ2RGB:{m00:3.2404541621141045,m01:-.9692660305051868,m02:.055643430959114726,m10:-1.5371385127977166,m11:1.8760108454466942,m12:-.2040259135167538,m20:-.498531409556016,m21:.041556017530349834,m22:1.0572251882231791},As:.9414285350000001,Bs:1.040417467,Cs:1.089532651,MtxAdaptMa:{m00:.8951,m01:-.7502,m02:.0389,m10:.2664,m11:1.7135,m12:-.0685,m20:-.1614,m21:.0367,m22:1.0296},MtxAdaptMaI:{m00:.9869929054667123,m01:.43230526972339456,m02:-.008528664575177328,m10:-.14705425642099013,m11:.5183602715367776,m12:.04004282165408487,m20:.15996265166373125,m21:.0492912282128556,m22:.9684866957875502}},a1e=new Map([["a",[1.0985,.35585]],["b",[1.0985,.35585]],["c",[.98074,1.18232]],["d50",[.96422,.82521]],["d55",[.95682,.92149]],["d65",[.95047,1.08883]],["e",[1,1,1]],["f2",[.99186,.67393]],["f7",[.95041,1.08747]],["f11",[1.00962,.6435]],["icc",[.96422,.82521]]]);function Ds(e){const r=a1e.get(String(e).toLowerCase());if(!r)throw new Error("unknown Lab illuminant "+e);Fl.labWhitePoint=e,Fl.Xn=r[0],Fl.Zn=r[1]}function Zg(){return Fl.labWhitePoint}const o_=(...e)=>{e=jt(e,"lab");const[r,n,o]=e,[i,a,l]=l1e(r,n,o),[s,c,d]=rP(i,a,l);return[s,c,d,e.length>3?e[3]:1]},l1e=(e,r,n)=>{const{kE:o,kK:i,kKE:a,Xn:l,Yn:s,Zn:c}=Fl,d=(e+16)/116,u=.002*r+d,p=d-.005*n,f=u*u*u,g=p*p*p,v=f>o?f:(116*u-16)/i,w=e>a?Math.pow((e+16)/116,3):e/i,x=g>o?g:(116*p-16)/i,k=v*l,C=w*s,_=x*c;return[k,C,_]},i_=e=>{const r=Math.sign(e);return e=Math.abs(e),(e<=.0031308?e*12.92:1.055*Math.pow(e,1/2.4)-.055)*r},rP=(e,r,n)=>{const{MtxAdaptMa:o,MtxAdaptMaI:i,MtxXYZ2RGB:a,RefWhiteRGB:l,Xn:s,Yn:c,Zn:d}=Fl,u=s*o.m00+c*o.m10+d*o.m20,p=s*o.m01+c*o.m11+d*o.m21,f=s*o.m02+c*o.m12+d*o.m22,g=l.X*o.m00+l.Y*o.m10+l.Z*o.m20,v=l.X*o.m01+l.Y*o.m11+l.Z*o.m21,w=l.X*o.m02+l.Y*o.m12+l.Z*o.m22,x=(e*o.m00+r*o.m10+n*o.m20)*(g/u),k=(e*o.m01+r*o.m11+n*o.m21)*(v/p),C=(e*o.m02+r*o.m12+n*o.m22)*(w/f),_=x*i.m00+k*i.m10+C*i.m20,$=x*i.m01+k*i.m11+C*i.m21,R=x*i.m02+k*i.m12+C*i.m22,T=i_(_*a.m00+$*a.m10+R*a.m20),A=i_(_*a.m01+$*a.m11+R*a.m21),z=i_(_*a.m02+$*a.m12+R*a.m22);return[T*255,A*255,z*255]},a_=(...e)=>{const[r,n,o,...i]=jt(e,"rgb"),[a,l,s]=nP(r,n,o),[c,d,u]=s1e(a,l,s);return[c,d,u,...i.length>0&&i[0]<1?[i[0]]:[]]};function s1e(e,r,n){const{Xn:o,Yn:i,Zn:a,kE:l,kK:s}=Fl,c=e/o,d=r/i,u=n/a,p=c>l?Math.pow(c,1/3):(s*c+16)/116,f=d>l?Math.pow(d,1/3):(s*d+16)/116,g=u>l?Math.pow(u,1/3):(s*u+16)/116;return[116*f-16,500*(p-f),200*(f-g)]}function l_(e){const r=Math.sign(e);return e=Math.abs(e),(e<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4))*r}const nP=(e,r,n)=>{e=l_(e/255),r=l_(r/255),n=l_(n/255);const{MtxRGB2XYZ:o,MtxAdaptMa:i,MtxAdaptMaI:a,Xn:l,Yn:s,Zn:c,As:d,Bs:u,Cs:p}=Fl;let f=e*o.m00+r*o.m10+n*o.m20,g=e*o.m01+r*o.m11+n*o.m21,v=e*o.m02+r*o.m12+n*o.m22;const w=l*i.m00+s*i.m10+c*i.m20,x=l*i.m01+s*i.m11+c*i.m21,k=l*i.m02+s*i.m12+c*i.m22;let C=f*i.m00+g*i.m10+v*i.m20,_=f*i.m01+g*i.m11+v*i.m21,$=f*i.m02+g*i.m12+v*i.m22;return C*=w/d,_*=x/u,$*=k/p,f=C*a.m00+_*a.m10+$*a.m20,g=C*a.m01+_*a.m11+$*a.m21,v=C*a.m02+_*a.m12+$*a.m22,[f,g,v]};Ne.prototype.lab=function(){return a_(this._rgb)},Object.assign(zt,{lab:(...e)=>new Ne(...e,"lab"),getLabWhitePoint:Zg,setLabWhitePoint:Ds}),Rt.format.lab=o_,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"lab"),Ft(e)==="array"&&e.length===3)return"lab"}}),Ne.prototype.darken=function(e=1){const r=this,n=r.lab();return n[0]-=Fl.Kn*e,new Ne(n,"lab").alpha(r.alpha(),!0)},Ne.prototype.brighten=function(e=1){return this.darken(-e)},Ne.prototype.darker=Ne.prototype.darken,Ne.prototype.brighter=Ne.prototype.brighten,Ne.prototype.get=function(e){const[r,n]=e.split("."),o=this[r]();if(n){const i=r.indexOf(n)-(r.substr(0,2)==="ok"?2:0);if(i>-1)return o[i];throw new Error(`unknown channel ${n} in mode ${r}`)}else return o};const{pow:c1e}=Math,d1e=1e-7,u1e=20;Ne.prototype.luminance=function(e,r="rgb"){if(e!==void 0&&Ft(e)==="number"){if(e===0)return new Ne([0,0,0,this._rgb[3]],"rgb");if(e===1)return new Ne([255,255,255,this._rgb[3]],"rgb");let n=this.luminance(),o=u1e;const i=(l,s)=>{const c=l.interpolate(s,.5,r),d=c.luminance();return Math.abs(e-d)e?i(l,c):i(c,s)},a=(n>e?i(new Ne([0,0,0]),this):i(this,new Ne([255,255,255]))).rgb();return new Ne([...a,this._rgb[3]])}return p1e(...this._rgb.slice(0,3))};const p1e=(e,r,n)=>(e=s_(e),r=s_(r),n=s_(n),.2126*e+.7152*r+.0722*n),s_=e=>(e/=255,e<=.03928?e/12.92:c1e((e+.055)/1.055,2.4)),bo={},Th=(e,r,n=.5,...o)=>{let i=o[0]||"lrgb";if(!bo[i]&&!o.length&&(i=Object.keys(bo)[0]),!bo[i])throw new Error(`interpolation mode ${i} is not defined`);return Ft(e)!=="object"&&(e=new Ne(e)),Ft(r)!=="object"&&(r=new Ne(r)),bo[i](e,r,n).alpha(e.alpha()+n*(r.alpha()-e.alpha()))};Ne.prototype.mix=Ne.prototype.interpolate=function(e,r=.5,...n){return Th(this,e,r,...n)},Ne.prototype.premultiply=function(e=!1){const r=this._rgb,n=r[3];return e?(this._rgb=[r[0]*n,r[1]*n,r[2]*n,n],this):new Ne([r[0]*n,r[1]*n,r[2]*n,n],"rgb")};const{sin:h1e,cos:f1e}=Math,oP=(...e)=>{let[r,n,o]=jt(e,"lch");return isNaN(o)&&(o=0),o=o*t1e,[r,f1e(o)*n,h1e(o)*n]},c_=(...e)=>{e=jt(e,"lch");const[r,n,o]=e,[i,a,l]=oP(r,n,o),[s,c,d]=o_(i,a,l);return[s,c,d,e.length>3?e[3]:1]},m1e=(...e)=>{const r=JN(jt(e,"hcl"));return c_(...r)},{sqrt:g1e,atan2:y1e,round:v1e}=Math,iP=(...e)=>{const[r,n,o]=jt(e,"lab"),i=g1e(n*n+o*o);let a=(y1e(o,n)*r1e+360)%360;return v1e(i*1e4)===0&&(a=Number.NaN),[r,i,a]},d_=(...e)=>{const[r,n,o,...i]=jt(e,"rgb"),[a,l,s]=a_(r,n,o),[c,d,u]=iP(a,l,s);return[c,d,u,...i.length>0&&i[0]<1?[i[0]]:[]]};Ne.prototype.lch=function(){return d_(this._rgb)},Ne.prototype.hcl=function(){return JN(d_(this._rgb))},Object.assign(zt,{lch:(...e)=>new Ne(...e,"lch"),hcl:(...e)=>new Ne(...e,"hcl")}),Rt.format.lch=c_,Rt.format.hcl=m1e,["lch","hcl"].forEach(e=>Rt.autodetect.push({p:2,test:(...r)=>{if(r=jt(r,e),Ft(r)==="array"&&r.length===3)return e}})),Ne.prototype.saturate=function(e=1){const r=this,n=r.lch();return n[1]+=Fl.Kn*e,n[1]<0&&(n[1]=0),new Ne(n,"lch").alpha(r.alpha(),!0)},Ne.prototype.desaturate=function(e=1){return this.saturate(-e)},Ne.prototype.set=function(e,r,n=!1){const[o,i]=e.split("."),a=this[o]();if(i){const l=o.indexOf(i)-(o.substr(0,2)==="ok"?2:0);if(l>-1){if(Ft(r)=="string")switch(r.charAt(0)){case"+":a[l]+=+r;break;case"-":a[l]+=+r;break;case"*":a[l]*=+r.substr(1);break;case"/":a[l]/=+r.substr(1);break;default:a[l]=+r}else if(Ft(r)==="number")a[l]=r;else throw new Error("unsupported value for Color.set");const s=new Ne(a,o);return n?(this._rgb=s._rgb,this):s}throw new Error(`unknown channel ${i} in mode ${o}`)}else return a},Ne.prototype.tint=function(e=.5,...r){return Th(this,"white",e,...r)},Ne.prototype.shade=function(e=.5,...r){return Th(this,"black",e,...r)};const b1e=(e,r,n)=>{const o=e._rgb,i=r._rgb;return new Ne(o[0]+n*(i[0]-o[0]),o[1]+n*(i[1]-o[1]),o[2]+n*(i[2]-o[2]),"rgb")};bo.rgb=b1e;const{sqrt:u_,pow:jh}=Math,x1e=(e,r,n)=>{const[o,i,a]=e._rgb,[l,s,c]=r._rgb;return new Ne(u_(jh(o,2)*(1-n)+jh(l,2)*n),u_(jh(i,2)*(1-n)+jh(s,2)*n),u_(jh(a,2)*(1-n)+jh(c,2)*n),"rgb")};bo.lrgb=x1e;const w1e=(e,r,n)=>{const o=e.lab(),i=r.lab();return new Ne(o[0]+n*(i[0]-o[0]),o[1]+n*(i[1]-o[1]),o[2]+n*(i[2]-o[2]),"lab")};bo.lab=w1e;const Ah=(e,r,n,o)=>{let i,a;o==="hsl"?(i=e.hsl(),a=r.hsl()):o==="hsv"?(i=e.hsv(),a=r.hsv()):o==="hcg"?(i=e.hcg(),a=r.hcg()):o==="hsi"?(i=e.hsi(),a=r.hsi()):o==="lch"||o==="hcl"?(o="hcl",i=e.hcl(),a=r.hcl()):o==="oklch"&&(i=e.oklch().reverse(),a=r.oklch().reverse());let l,s,c,d,u,p;(o.substr(0,1)==="h"||o==="oklch")&&([l,c,u]=i,[s,d,p]=a);let f,g,v,w;return!isNaN(l)&&!isNaN(s)?(s>l&&s-l>180?w=s-(l+360):s180?w=s+360-l:w=s-l,g=l+n*w):isNaN(l)?isNaN(s)?g=Number.NaN:(g=s,(u==1||u==0)&&o!="hsv"&&(f=d)):(g=l,(p==1||p==0)&&o!="hsv"&&(f=c)),f===void 0&&(f=c+n*(d-c)),v=u+n*(p-u),o==="oklch"?new Ne([v,f,g],o):new Ne([g,f,v],o)},aP=(e,r,n)=>Ah(e,r,n,"lch");bo.lch=aP,bo.hcl=aP;const k1e=e=>{if(Ft(e)=="number"&&e>=0&&e<=16777215){const r=e>>16,n=e>>8&255,o=e&255;return[r,n,o,1]}throw new Error("unknown num color: "+e)},_1e=(...e)=>{const[r,n,o]=jt(e,"rgb");return(r<<16)+(n<<8)+o};Ne.prototype.num=function(){return _1e(this._rgb)},Object.assign(zt,{num:(...e)=>new Ne(...e,"num")}),Rt.format.num=k1e,Rt.autodetect.push({p:5,test:(...e)=>{if(e.length===1&&Ft(e[0])==="number"&&e[0]>=0&&e[0]<=16777215)return"num"}});const S1e=(e,r,n)=>{const o=e.num(),i=r.num();return new Ne(o+n*(i-o),"num")};bo.num=S1e;const{floor:E1e}=Math,C1e=(...e)=>{e=jt(e,"hcg");let[r,n,o]=e,i,a,l;o=o*255;const s=n*255;if(n===0)i=a=l=o;else{r===360&&(r=0),r>360&&(r-=360),r<0&&(r+=360),r/=60;const c=E1e(r),d=r-c,u=o*(1-n),p=u+s*(1-d),f=u+s*d,g=u+s;switch(c){case 0:[i,a,l]=[g,f,u];break;case 1:[i,a,l]=[p,g,u];break;case 2:[i,a,l]=[u,g,f];break;case 3:[i,a,l]=[u,p,g];break;case 4:[i,a,l]=[f,u,g];break;case 5:[i,a,l]=[g,u,p];break}}return[i,a,l,e.length>3?e[3]:1]},$1e=(...e)=>{const[r,n,o]=jt(e,"rgb"),i=ZN(r,n,o),a=QN(r,n,o),l=a-i,s=l*100/255,c=i/(255-l)*100;let d;return l===0?d=Number.NaN:(r===a&&(d=(n-o)/l),n===a&&(d=2+(o-r)/l),o===a&&(d=4+(r-n)/l),d*=60,d<0&&(d+=360)),[d,s,c]};Ne.prototype.hcg=function(){return $1e(this._rgb)};const R1e=(...e)=>new Ne(...e,"hcg");zt.hcg=R1e,Rt.format.hcg=C1e,Rt.autodetect.push({p:1,test:(...e)=>{if(e=jt(e,"hcg"),Ft(e)==="array"&&e.length===3)return"hcg"}});const z1e=(e,r,n)=>Ah(e,r,n,"hcg");bo.hcg=z1e;const{cos:Dh}=Math,T1e=(...e)=>{e=jt(e,"hsi");let[r,n,o]=e,i,a,l;return isNaN(r)&&(r=0),isNaN(n)&&(n=0),r>360&&(r-=360),r<0&&(r+=360),r/=360,r<1/3?(l=(1-n)/3,i=(1+n*Dh(As*r)/Dh(n_-As*r))/3,a=1-(l+i)):r<2/3?(r-=1/3,i=(1-n)/3,a=(1+n*Dh(As*r)/Dh(n_-As*r))/3,l=1-(i+a)):(r-=2/3,a=(1-n)/3,l=(1+n*Dh(As*r)/Dh(n_-As*r))/3,i=1-(a+l)),i=Au(o*i*3),a=Au(o*a*3),l=Au(o*l*3),[i*255,a*255,l*255,e.length>3?e[3]:1]},{min:j1e,sqrt:A1e,acos:D1e}=Math,M1e=(...e)=>{let[r,n,o]=jt(e,"rgb");r/=255,n/=255,o/=255;let i;const a=j1e(r,n,o),l=(r+n+o)/3,s=l>0?1-a/l:0;return s===0?i=NaN:(i=(r-n+(r-o))/2,i/=A1e((r-n)*(r-n)+(r-o)*(n-o)),i=D1e(i),o>n&&(i=As-i),i/=As),[i*360,s,l]};Ne.prototype.hsi=function(){return M1e(this._rgb)};const N1e=(...e)=>new Ne(...e,"hsi");zt.hsi=N1e,Rt.format.hsi=T1e,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"hsi"),Ft(e)==="array"&&e.length===3)return"hsi"}});const P1e=(e,r,n)=>Ah(e,r,n,"hsi");bo.hsi=P1e;const p_=(...e)=>{e=jt(e,"hsl");const[r,n,o]=e;let i,a,l;if(n===0)i=a=l=o*255;else{const s=[0,0,0],c=[0,0,0],d=o<.5?o*(1+n):o+n-o*n,u=2*o-d,p=r/360;s[0]=p+1/3,s[1]=p,s[2]=p-1/3;for(let f=0;f<3;f++)s[f]<0&&(s[f]+=1),s[f]>1&&(s[f]-=1),6*s[f]<1?c[f]=u+(d-u)*6*s[f]:2*s[f]<1?c[f]=d:3*s[f]<2?c[f]=u+(d-u)*(2/3-s[f])*6:c[f]=u;[i,a,l]=[c[0]*255,c[1]*255,c[2]*255]}return e.length>3?[i,a,l,e[3]]:[i,a,l,1]},lP=(...e)=>{e=jt(e,"rgba");let[r,n,o]=e;r/=255,n/=255,o/=255;const i=ZN(r,n,o),a=QN(r,n,o),l=(a+i)/2;let s,c;return a===i?(s=0,c=Number.NaN):s=l<.5?(a-i)/(a+i):(a-i)/(2-a-i),r==a?c=(n-o)/(a-i):n==a?c=2+(o-r)/(a-i):o==a&&(c=4+(r-n)/(a-i)),c*=60,c<0&&(c+=360),e.length>3&&e[3]!==void 0?[c,s,l,e[3]]:[c,s,l]};Ne.prototype.hsl=function(){return lP(this._rgb)};const B1e=(...e)=>new Ne(...e,"hsl");zt.hsl=B1e,Rt.format.hsl=p_,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"hsl"),Ft(e)==="array"&&e.length===3)return"hsl"}});const I1e=(e,r,n)=>Ah(e,r,n,"hsl");bo.hsl=I1e;const{floor:O1e}=Math,L1e=(...e)=>{e=jt(e,"hsv");let[r,n,o]=e,i,a,l;if(o*=255,n===0)i=a=l=o;else{r===360&&(r=0),r>360&&(r-=360),r<0&&(r+=360),r/=60;const s=O1e(r),c=r-s,d=o*(1-n),u=o*(1-n*c),p=o*(1-n*(1-c));switch(s){case 0:[i,a,l]=[o,p,d];break;case 1:[i,a,l]=[u,o,d];break;case 2:[i,a,l]=[d,o,p];break;case 3:[i,a,l]=[d,u,o];break;case 4:[i,a,l]=[p,d,o];break;case 5:[i,a,l]=[o,d,u];break}}return[i,a,l,e.length>3?e[3]:1]},{min:F1e,max:V1e}=Math,q1e=(...e)=>{e=jt(e,"rgb");let[r,n,o]=e;const i=F1e(r,n,o),a=V1e(r,n,o),l=a-i;let s,c,d;return d=a/255,a===0?(s=Number.NaN,c=0):(c=l/a,r===a&&(s=(n-o)/l),n===a&&(s=2+(o-r)/l),o===a&&(s=4+(r-n)/l),s*=60,s<0&&(s+=360)),[s,c,d]};Ne.prototype.hsv=function(){return q1e(this._rgb)};const H1e=(...e)=>new Ne(...e,"hsv");zt.hsv=H1e,Rt.format.hsv=L1e,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"hsv"),Ft(e)==="array"&&e.length===3)return"hsv"}});const U1e=(e,r,n)=>Ah(e,r,n,"hsv");bo.hsv=U1e;function xb(e,r){let n=e.length;Array.isArray(e[0])||(e=[e]),Array.isArray(r[0])||(r=r.map(l=>[l]));let o=r[0].length,i=r[0].map((l,s)=>r.map(c=>c[s])),a=e.map(l=>i.map(s=>Array.isArray(l)?l.reduce((c,d,u)=>c+d*(s[u]||0),0):s.reduce((c,d)=>c+d*l,0)));return n===1&&(a=a[0]),o===1?a.map(l=>l[0]):a}const h_=(...e)=>{e=jt(e,"lab");const[r,n,o,...i]=e,[a,l,s]=W1e([r,n,o]),[c,d,u]=rP(a,l,s);return[c,d,u,...i.length>0&&i[0]<1?[i[0]]:[]]};function W1e(e){var r=[[1.2268798758459243,-.5578149944602171,.2813910456659647],[-.0405757452148008,1.112286803280317,-.0717110580655164],[-.0763729366746601,-.4214933324022432,1.5869240198367816]],n=[[1,.3963377773761749,.2158037573099136],[1,-.1055613458156586,-.0638541728258133],[1,-.0894841775298119,-1.2914855480194092]],o=xb(n,e);return xb(r,o.map(i=>i**3))}const f_=(...e)=>{const[r,n,o,...i]=jt(e,"rgb"),a=nP(r,n,o);return[...G1e(a),...i.length>0&&i[0]<1?[i[0]]:[]]};function G1e(e){const r=[[.819022437996703,.3619062600528904,-.1288737815209879],[.0329836539323885,.9292868615863434,.0361446663506424],[.0481771893596242,.2642395317527308,.6335478284694309]],n=[[.210454268309314,.7936177747023054,-.0040720430116193],[1.9779985324311684,-2.42859224204858,.450593709617411],[.0259040424655478,.7827717124575296,-.8086757549230774]],o=xb(r,e);return xb(n,o.map(i=>Math.cbrt(i)))}Ne.prototype.oklab=function(){return f_(this._rgb)},Object.assign(zt,{oklab:(...e)=>new Ne(...e,"oklab")}),Rt.format.oklab=h_,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"oklab"),Ft(e)==="array"&&e.length===3)return"oklab"}});const Y1e=(e,r,n)=>{const o=e.oklab(),i=r.oklab();return new Ne(o[0]+n*(i[0]-o[0]),o[1]+n*(i[1]-o[1]),o[2]+n*(i[2]-o[2]),"oklab")};bo.oklab=Y1e;const X1e=(e,r,n)=>Ah(e,r,n,"oklch");bo.oklch=X1e;const{pow:m_,sqrt:g_,PI:y_,cos:sP,sin:cP,atan2:K1e}=Math,Z1e=(e,r="lrgb",n=null)=>{const o=e.length;n||(n=Array.from(new Array(o)).map(()=>1));const i=o/n.reduce(function(p,f){return p+f});if(n.forEach((p,f)=>{n[f]*=i}),e=e.map(p=>new Ne(p)),r==="lrgb")return Q1e(e,n);const a=e.shift(),l=a.get(r),s=[];let c=0,d=0;for(let p=0;p{const g=p.get(r);u+=p.alpha()*n[f+1];for(let v=0;v=360;)f-=360;l[p]=f}else l[p]=l[p]/s[p];return u/=o,new Ne(l,r).alpha(u>.99999?1:u,!0)},Q1e=(e,r)=>{const n=e.length,o=[0,0,0,0];for(let i=0;i.9999999&&(o[3]=1),new Ne(t_(o))},{pow:J1e}=Math;function wb(e){let r="rgb",n=zt("#ccc"),o=0,i=[0,1],a=[0,1],l=[],s=[0,0],c=!1,d=[],u=!1,p=0,f=1,g=!1,v={},w=!0,x=1;const k=function(z){if(z=z||["#fff","#000"],z&&Ft(z)==="string"&&zt.brewer&&zt.brewer[z.toLowerCase()]&&(z=zt.brewer[z.toLowerCase()]),Ft(z)==="array"){z.length===1&&(z=[z[0],z[0]]),z=z.slice(0);for(let j=0;j=c[I];)I++;return I-1}return 0};let _=z=>z,$=z=>z;const R=function(z,j){let I,P;if(j==null&&(j=!1),isNaN(z)||z===null)return n;j?P=z:c&&c.length>2?P=C(z)/(c.length-2):f!==p?P=(z-p)/(f-p):P=1,P=$(P),j||(P=_(P)),x!==1&&(P=J1e(P,x)),P=s[0]+P*(1-s[0]-s[1]),P=Au(P,0,1);const L=Math.floor(P*1e4);if(w&&v[L])I=v[L];else{if(Ft(d)==="array")for(let H=0;H=M&&H===l.length-1){I=d[H];break}if(P>M&&Pv={};k(e);const A=function(z){const j=zt(R(z));return u&&j[u]?j[u]():j};return A.classes=function(z){if(z!=null){if(Ft(z)==="array")c=z,i=[z[0],z[z.length-1]];else{const j=zt.analyze(i);z===0?c=[j.min,j.max]:c=zt.limits(j,"e",z)}return A}return c},A.domain=function(z){if(!arguments.length)return a;a=z.slice(0),p=z[0],f=z[z.length-1],l=[];const j=d.length;if(z.length===j&&p!==f)for(let I of Array.from(z))l.push((I-p)/(f-p));else{for(let I=0;I2){const I=z.map((L,H)=>H/(z.length-1)),P=z.map(L=>(L-p)/(f-p));P.every((L,H)=>I[H]===L)||($=L=>{if(L<=0||L>=1)return L;let H=0;for(;L>=P[H+1];)H++;const M=(L-P[H])/(P[H+1]-P[H]);return I[H]+M*(I[H+1]-I[H])})}}return i=[p,f],A},A.mode=function(z){return arguments.length?(r=z,T(),A):r},A.range=function(z,j){return k(z),A},A.out=function(z){return u=z,A},A.spread=function(z){return arguments.length?(o=z,A):o},A.correctLightness=function(z){return z==null&&(z=!0),g=z,T(),g?_=function(j){const I=R(0,!0).lab()[0],P=R(1,!0).lab()[0],L=I>P;let H=R(j,!0).lab()[0];const M=I+(P-I)*j;let V=H-M,B=0,F=1,q=20;for(;Math.abs(V)>.01&&q-- >0;)(function(){return L&&(V*=-1),V<0?(B=j,j+=(F-j)*.5):(F=j,j+=(B-j)*.5),H=R(j,!0).lab()[0],V=H-M})();return j}:_=j=>j,A},A.padding=function(z){return z!=null?(Ft(z)==="number"&&(z=[z,z]),s=z,A):s},A.colors=function(z,j){arguments.length<2&&(j="hex");let I=[];if(arguments.length===0)I=d.slice(0);else if(z===1)I=[A(.5)];else if(z>1){const P=i[0],L=i[1]-P;I=eye(0,z).map(H=>A(P+H/(z-1)*L))}else{e=[];let P=[];if(c&&c.length>2)for(let L=1,H=c.length,M=1<=H;M?LH;M?L++:L--)P.push((c[L-1]+c[L])*.5);else P=i;I=P.map(L=>A(L))}return zt[j]&&(I=I.map(P=>P[j]())),I},A.cache=function(z){return z!=null?(w=z,A):w},A.gamma=function(z){return z!=null?(x=z,A):x},A.nodata=function(z){return z!=null?(n=zt(z),A):n},A}function eye(e,r,n){let o=[],i=ea;i?l++:l--)o.push(l);return o}const tye=function(e){let r=[1,1];for(let n=1;nnew Ne(a)),e.length===2)[n,o]=e.map(a=>a.lab()),r=function(a){const l=[0,1,2].map(s=>n[s]+a*(o[s]-n[s]));return new Ne(l,"lab")};else if(e.length===3)[n,o,i]=e.map(a=>a.lab()),r=function(a){const l=[0,1,2].map(s=>(1-a)*(1-a)*n[s]+2*(1-a)*a*o[s]+a*a*i[s]);return new Ne(l,"lab")};else if(e.length===4){let a;[n,o,i,a]=e.map(l=>l.lab()),r=function(l){const s=[0,1,2].map(c=>(1-l)*(1-l)*(1-l)*n[c]+3*(1-l)*(1-l)*l*o[c]+3*(1-l)*l*l*i[c]+l*l*l*a[c]);return new Ne(s,"lab")}}else if(e.length>=5){let a,l,s;a=e.map(c=>c.lab()),s=e.length-1,l=tye(s),r=function(c){const d=1-c,u=[0,1,2].map(p=>a.reduce((f,g,v)=>f+l[v]*d**(s-v)*c**v*g[p],0));return new Ne(u,"lab")}}else throw new RangeError("No point in running bezier with only one color.");return r},nye=e=>{const r=rye(e);return r.scale=()=>wb(r),r},{round:dP}=Math;Ne.prototype.rgb=function(e=!0){return e===!1?this._rgb.slice(0,3):this._rgb.slice(0,3).map(dP)},Ne.prototype.rgba=function(e=!0){return this._rgb.slice(0,4).map((r,n)=>n<3?e===!1?r:dP(r):r)},Object.assign(zt,{rgb:(...e)=>new Ne(...e,"rgb")}),Rt.format.rgb=(...e)=>{const r=jt(e,"rgba");return r[3]===void 0&&(r[3]=1),r},Rt.autodetect.push({p:3,test:(...e)=>{if(e=jt(e,"rgba"),Ft(e)==="array"&&(e.length===3||e.length===4&&Ft(e[3])=="number"&&e[3]>=0&&e[3]<=1))return"rgb"}});const qa=(e,r,n)=>{if(!qa[n])throw new Error("unknown blend mode "+n);return qa[n](e,r)},Kc=e=>(r,n)=>{const o=zt(n).rgb(),i=zt(r).rgb();return zt.rgb(e(o,i))},Zc=e=>(r,n)=>{const o=[];return o[0]=e(r[0],n[0]),o[1]=e(r[1],n[1]),o[2]=e(r[2],n[2]),o},oye=e=>e,iye=(e,r)=>e*r/255,aye=(e,r)=>e>r?r:e,lye=(e,r)=>e>r?e:r,sye=(e,r)=>255*(1-(1-e/255)*(1-r/255)),cye=(e,r)=>r<128?2*e*r/255:255*(1-2*(1-e/255)*(1-r/255)),dye=(e,r)=>255*(1-(1-r/255)/(e/255)),uye=(e,r)=>e===255?255:(e=255*(r/255)/(1-e/255),e>255?255:e);qa.normal=Kc(Zc(oye)),qa.multiply=Kc(Zc(iye)),qa.screen=Kc(Zc(sye)),qa.overlay=Kc(Zc(cye)),qa.darken=Kc(Zc(aye)),qa.lighten=Kc(Zc(lye)),qa.dodge=Kc(Zc(uye)),qa.burn=Kc(Zc(dye));const{pow:pye,sin:hye,cos:fye}=Math;function mye(e=300,r=-1.5,n=1,o=1,i=[0,1]){let a=0,l;Ft(i)==="array"?l=i[1]-i[0]:(l=0,i=[i,i]);const s=function(c){const d=As*((e+120)/360+r*c),u=pye(i[0]+l*c,o),f=(a!==0?n[0]+c*a:n)*u*(1-u)/2,g=fye(d),v=hye(d),w=u+f*(-.14861*g+1.78277*v),x=u+f*(-.29227*g-.90649*v),k=u+f*(1.97294*g);return zt(t_([w*255,x*255,k*255,1]))};return s.start=function(c){return c==null?e:(e=c,s)},s.rotations=function(c){return c==null?r:(r=c,s)},s.gamma=function(c){return c==null?o:(o=c,s)},s.hue=function(c){return c==null?n:(n=c,Ft(n)==="array"?(a=n[1]-n[0],a===0&&(n=n[1])):a=0,s)},s.lightness=function(c){return c==null?i:(Ft(c)==="array"?(i=c,l=c[1]-c[0]):(i=[c,c],l=0),s)},s.scale=()=>zt.scale(s),s.hue(n),s}const gye="0123456789abcdef",{floor:yye,random:vye}=Math,bye=(e=vye)=>{let r="#";for(let n=0;n<6;n++)r+=gye.charAt(yye(e()*16));return new Ne(r,"hex")},{log:uP,pow:xye,floor:wye,abs:kye}=Math;function pP(e,r=null){const n={min:Number.MAX_VALUE,max:Number.MAX_VALUE*-1,sum:0,values:[],count:0};return Ft(e)==="object"&&(e=Object.values(e)),e.forEach(o=>{r&&Ft(o)==="object"&&(o=o[r]),o!=null&&!isNaN(o)&&(n.values.push(o),n.sum+=o,on.max&&(n.max=o),n.count+=1)}),n.domain=[n.min,n.max],n.limits=(o,i)=>hP(n,o,i),n}function hP(e,r="equal",n=7){Ft(e)=="array"&&(e=pP(e));const{min:o,max:i}=e,a=e.values.sort((s,c)=>s-c);if(n===1)return[o,i];const l=[];if(r.substr(0,1)==="c"&&(l.push(o),l.push(i)),r.substr(0,1)==="e"){l.push(o);for(let s=1;s 0");const s=Math.LOG10E*uP(o),c=Math.LOG10E*uP(i);l.push(o);for(let d=1;d200&&(p=!1)}const v={};for(let x=0;xx-k),l.push(w[0]);for(let x=1;x{e=new Ne(e),r=new Ne(r);const n=e.luminance(),o=r.luminance();return n>o?(n+.05)/(o+.05):(o+.05)/(n+.05)};const fP=.027,Sye=5e-4,Eye=.1,mP=1.14,kb=.022,gP=1.414,Cye=(e,r)=>{e=new Ne(e),r=new Ne(r),e.alpha()<1&&(e=Th(r,e,e.alpha(),"rgb"));const n=yP(...e.rgb()),o=yP(...r.rgb()),i=n>=kb?n:n+Math.pow(kb-n,gP),a=o>=kb?o:o+Math.pow(kb-o,gP),l=Math.pow(a,.56)-Math.pow(i,.57),s=Math.pow(a,.65)-Math.pow(i,.62),c=Math.abs(a-i)0?c-fP:c+fP)*100};function yP(e,r,n){return .2126729*Math.pow(e/255,2.4)+.7151522*Math.pow(r/255,2.4)+.072175*Math.pow(n/255,2.4)}const{sqrt:Ms,pow:yn,min:$ye,max:Rye,atan2:vP,abs:bP,cos:_b,sin:xP,exp:zye,PI:wP}=Math;function Tye(e,r,n=1,o=1,i=1){var a=function(O){return 360*O/(2*wP)},l=function(O){return 2*wP*O/360};e=new Ne(e),r=new Ne(r);const[s,c,d]=Array.from(e.lab()),[u,p,f]=Array.from(r.lab()),g=(s+u)/2,v=Ms(yn(c,2)+yn(d,2)),w=Ms(yn(p,2)+yn(f,2)),x=(v+w)/2,k=.5*(1-Ms(yn(x,7)/(yn(x,7)+yn(25,7)))),C=c*(1+k),_=p*(1+k),$=Ms(yn(C,2)+yn(d,2)),R=Ms(yn(_,2)+yn(f,2)),T=($+R)/2,A=a(vP(d,C)),z=a(vP(f,_)),j=A>=0?A:A+360,I=z>=0?z:z+360,P=bP(j-I)>180?(j+I+360)/2:(j+I)/2,L=1-.17*_b(l(P-30))+.24*_b(l(2*P))+.32*_b(l(3*P+6))-.2*_b(l(4*P-63));let H=I-j;H=bP(H)<=180?H:I<=j?H+360:H-360,H=2*Ms($*R)*xP(l(H)/2);const M=u-s,V=R-$,B=1+.015*yn(g-50,2)/Ms(20+yn(g-50,2)),F=1+.045*T,q=1+.015*T*L,G=30*zye(-yn((P-275)/25,2)),Y=-(2*Ms(yn(T,7)/(yn(T,7)+yn(25,7))))*xP(2*l(G)),K=Ms(yn(M/(n*B),2)+yn(V/(o*F),2)+yn(H/(i*q),2)+Y*(V/(o*F))*(H/(i*q)));return Rye(0,$ye(100,K))}function jye(e,r,n="lab"){e=new Ne(e),r=new Ne(r);const o=e.get(n),i=r.get(n);let a=0;for(let l in o){const s=(o[l]||0)-(i[l]||0);a+=s*s}return Math.sqrt(a)}const Aye=(...e)=>{try{return new Ne(...e),!0}catch{return!1}},Dye={cool(){return wb([zt.hsl(180,1,.9),zt.hsl(250,.7,.4)])},hot(){return wb(["#000","#f00","#ff0","#fff"]).mode("rgb")}},v_={OrRd:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"],PuBu:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"],BuPu:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"],Oranges:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"],BuGn:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"],YlOrBr:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"],YlGn:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"],Reds:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"],RdPu:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"],Greens:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"],YlGnBu:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"],Purples:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"],GnBu:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"],Greys:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"],YlOrRd:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"],PuRd:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"],Blues:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"],PuBuGn:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"],Viridis:["#440154","#482777","#3f4a8a","#31678e","#26838f","#1f9d8a","#6cce5a","#b6de2b","#fee825"],Spectral:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],RdYlGn:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],RdBu:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],PiYG:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],PRGn:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],RdYlBu:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],BrBG:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],RdGy:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],PuOr:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],Set2:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"],Accent:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"],Set1:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"],Set3:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"],Dark2:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"],Paired:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"],Pastel2:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"],Pastel1:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},kP=Object.keys(v_),_P=new Map(kP.map(e=>[e.toLowerCase(),e])),Mye=typeof Proxy=="function"?new Proxy(v_,{get(e,r){const n=r.toLowerCase();if(_P.has(n))return e[_P.get(n)]},getOwnPropertyNames(){return Object.getOwnPropertyNames(kP)}}):v_,Nye=(...e)=>{e=jt(e,"cmyk");const[r,n,o,i]=e,a=e.length>4?e[4]:1;return i===1?[0,0,0,a]:[r>=1?0:255*(1-r)*(1-i),n>=1?0:255*(1-n)*(1-i),o>=1?0:255*(1-o)*(1-i),a]},{max:SP}=Math,Pye=(...e)=>{let[r,n,o]=jt(e,"rgb");r=r/255,n=n/255,o=o/255;const i=1-SP(r,SP(n,o)),a=i<1?1/(1-i):0,l=(1-r-i)*a,s=(1-n-i)*a,c=(1-o-i)*a;return[l,s,c,i]};Ne.prototype.cmyk=function(){return Pye(this._rgb)},Object.assign(zt,{cmyk:(...e)=>new Ne(...e,"cmyk")}),Rt.format.cmyk=Nye,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"cmyk"),Ft(e)==="array"&&e.length===4)return"cmyk"}});const Bye=(...e)=>{const r=jt(e,"hsla");let n=Rh(e)||"lsa";return r[0]=Ki(r[0]||0)+"deg",r[1]=Ki(r[1]*100)+"%",r[2]=Ki(r[2]*100)+"%",n==="hsla"||r.length>3&&r[3]<1?(r[3]="/ "+(r.length>3?r[3]:1),n="hsla"):r.length=3,`${n.substr(0,3)}(${r.join(" ")})`},Iye=(...e)=>{const r=jt(e,"lab");let n=Rh(e)||"lab";return r[0]=Ki(r[0])+"%",r[1]=Ki(r[1]),r[2]=Ki(r[2]),n==="laba"||r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`lab(${r.join(" ")})`},Oye=(...e)=>{const r=jt(e,"lch");let n=Rh(e)||"lab";return r[0]=Ki(r[0])+"%",r[1]=Ki(r[1]),r[2]=isNaN(r[2])?"none":Ki(r[2])+"deg",n==="lcha"||r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`lch(${r.join(" ")})`},Lye=(...e)=>{const r=jt(e,"lab");return r[0]=Ki(r[0]*100)+"%",r[1]=r_(r[1]),r[2]=r_(r[2]),r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`oklab(${r.join(" ")})`},EP=(...e)=>{const[r,n,o,...i]=jt(e,"rgb"),[a,l,s]=f_(r,n,o),[c,d,u]=iP(a,l,s);return[c,d,u,...i.length>0&&i[0]<1?[i[0]]:[]]},Fye=(...e)=>{const r=jt(e,"lch");return r[0]=Ki(r[0]*100)+"%",r[1]=r_(r[1]),r[2]=isNaN(r[2])?"none":Ki(r[2])+"deg",r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`oklch(${r.join(" ")})`},{round:b_}=Math,Vye=(...e)=>{const r=jt(e,"rgba");let n=Rh(e)||"rgb";if(n.substr(0,3)==="hsl")return Bye(lP(r),n);if(n.substr(0,3)==="lab"){const o=Zg();Ds("d50");const i=Iye(a_(r),n);return Ds(o),i}if(n.substr(0,3)==="lch"){const o=Zg();Ds("d50");const i=Oye(d_(r),n);return Ds(o),i}return n.substr(0,5)==="oklab"?Lye(f_(r)):n.substr(0,5)==="oklch"?Fye(EP(r)):(r[0]=b_(r[0]),r[1]=b_(r[1]),r[2]=b_(r[2]),(n==="rgba"||r.length>3&&r[3]<1)&&(r[3]="/ "+(r.length>3?r[3]:1),n="rgba"),`${n.substr(0,3)}(${r.slice(0,n==="rgb"?3:4).join(" ")})`)},CP=(...e)=>{e=jt(e,"lch");const[r,n,o,...i]=e,[a,l,s]=oP(r,n,o),[c,d,u]=h_(a,l,s);return[c,d,u,...i.length>0&&i[0]<1?[i[0]]:[]]},Ns=/((?:-?\d+)|(?:-?\d+(?:\.\d+)?)%|none)/.source,Ha=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%?)|none)/.source,Sb=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%)|none)/.source,Zi=/\s*/.source,Mh=/\s+/.source,x_=/\s*,\s*/.source,Eb=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)(?:deg)?)|none)/.source,Nh=/\s*(?:\/\s*((?:[01]|[01]?\.\d+)|\d+(?:\.\d+)?%))?/.source,$P=new RegExp("^rgba?\\("+Zi+[Ns,Ns,Ns].join(Mh)+Nh+"\\)$"),RP=new RegExp("^rgb\\("+Zi+[Ns,Ns,Ns].join(x_)+Zi+"\\)$"),zP=new RegExp("^rgba\\("+Zi+[Ns,Ns,Ns,Ha].join(x_)+Zi+"\\)$"),TP=new RegExp("^hsla?\\("+Zi+[Eb,Sb,Sb].join(Mh)+Nh+"\\)$"),jP=new RegExp("^hsl?\\("+Zi+[Eb,Sb,Sb].join(x_)+Zi+"\\)$"),AP=/^hsla\(\s*(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*,\s*([01]|[01]?\.\d+)\)$/,DP=new RegExp("^lab\\("+Zi+[Ha,Ha,Ha].join(Mh)+Nh+"\\)$"),MP=new RegExp("^lch\\("+Zi+[Ha,Ha,Eb].join(Mh)+Nh+"\\)$"),NP=new RegExp("^oklab\\("+Zi+[Ha,Ha,Ha].join(Mh)+Nh+"\\)$"),PP=new RegExp("^oklch\\("+Zi+[Ha,Ha,Eb].join(Mh)+Nh+"\\)$"),{round:BP}=Math,Ph=e=>e.map((r,n)=>n<=2?Au(BP(r),0,255):r),vn=(e,r=0,n=100,o=!1)=>(typeof e=="string"&&e.endsWith("%")&&(e=parseFloat(e.substring(0,e.length-1))/100,o?e=r+(e+1)*.5*(n-r):e=r+e*(n-r)),+e),Po=(e,r)=>e==="none"?r:e,w_=e=>{if(e=e.toLowerCase().trim(),e==="transparent")return[0,0,0,0];let r;if(Rt.format.named)try{return Rt.format.named(e)}catch{}if((r=e.match($P))||(r=e.match(RP))){let n=r.slice(1,4);for(let i=0;i<3;i++)n[i]=+vn(Po(n[i],0),0,255);n=Ph(n);const o=r[4]!==void 0?+vn(r[4],0,1):1;return n[3]=o,n}if(r=e.match(zP)){const n=r.slice(1,5);for(let o=0;o<4;o++)n[o]=+vn(n[o],0,255);return n}if((r=e.match(TP))||(r=e.match(jP))){const n=r.slice(1,4);n[0]=+Po(n[0].replace("deg",""),0),n[1]=+vn(Po(n[1],0),0,100)*.01,n[2]=+vn(Po(n[2],0),0,100)*.01;const o=Ph(p_(n)),i=r[4]!==void 0?+vn(r[4],0,1):1;return o[3]=i,o}if(r=e.match(AP)){const n=r.slice(1,4);n[1]*=.01,n[2]*=.01;const o=p_(n);for(let i=0;i<3;i++)o[i]=BP(o[i]);return o[3]=+r[4],o}if(r=e.match(DP)){const n=r.slice(1,4);n[0]=vn(Po(n[0],0),0,100),n[1]=vn(Po(n[1],0),-125,125,!0),n[2]=vn(Po(n[2],0),-125,125,!0);const o=Zg();Ds("d50");const i=Ph(o_(n));Ds(o);const a=r[4]!==void 0?+vn(r[4],0,1):1;return i[3]=a,i}if(r=e.match(MP)){const n=r.slice(1,4);n[0]=vn(n[0],0,100),n[1]=vn(Po(n[1],0),0,150,!1),n[2]=+Po(n[2].replace("deg",""),0);const o=Zg();Ds("d50");const i=Ph(c_(n));Ds(o);const a=r[4]!==void 0?+vn(r[4],0,1):1;return i[3]=a,i}if(r=e.match(NP)){const n=r.slice(1,4);n[0]=vn(Po(n[0],0),0,1),n[1]=vn(Po(n[1],0),-.4,.4,!0),n[2]=vn(Po(n[2],0),-.4,.4,!0);const o=Ph(h_(n)),i=r[4]!==void 0?+vn(r[4],0,1):1;return o[3]=i,o}if(r=e.match(PP)){const n=r.slice(1,4);n[0]=vn(Po(n[0],0),0,1),n[1]=vn(Po(n[1],0),0,.4,!1),n[2]=+Po(n[2].replace("deg",""),0);const o=Ph(CP(n)),i=r[4]!==void 0?+vn(r[4],0,1):1;return o[3]=i,o}};w_.test=e=>$P.test(e)||TP.test(e)||DP.test(e)||MP.test(e)||NP.test(e)||PP.test(e)||RP.test(e)||zP.test(e)||jP.test(e)||AP.test(e)||e==="transparent",Ne.prototype.css=function(e){return Vye(this._rgb,e)};const qye=(...e)=>new Ne(...e,"css");zt.css=qye,Rt.format.css=w_,Rt.autodetect.push({p:5,test:(e,...r)=>{if(!r.length&&Ft(e)==="string"&&w_.test(e))return"css"}}),Rt.format.gl=(...e)=>{const r=jt(e,"rgba");return r[0]*=255,r[1]*=255,r[2]*=255,r};const Hye=(...e)=>new Ne(...e,"gl");zt.gl=Hye,Ne.prototype.gl=function(){const e=this._rgb;return[e[0]/255,e[1]/255,e[2]/255,e[3]]},Ne.prototype.hex=function(e){return tP(this._rgb,e)};const Uye=(...e)=>new Ne(...e,"hex");zt.hex=Uye,Rt.format.hex=eP,Rt.autodetect.push({p:4,test:(e,...r)=>{if(!r.length&&Ft(e)==="string"&&[3,4,5,6,7,8,9].indexOf(e.length)>=0)return"hex"}});const{log:Cb}=Math,IP=e=>{const r=e/100;let n,o,i;return r<66?(n=255,o=r<6?0:-155.25485562709179-.44596950469579133*(o=r-2)+104.49216199393888*Cb(o),i=r<20?0:-254.76935184120902+.8274096064007395*(i=r-10)+115.67994401066147*Cb(i)):(n=351.97690566805693+.114206453784165*(n=r-55)-40.25366309332127*Cb(n),o=325.4494125711974+.07943456536662342*(o=r-50)-28.0852963507957*Cb(o),i=255),[n,o,i,1]},{round:Wye}=Math,Gye=(...e)=>{const r=jt(e,"rgb"),n=r[0],o=r[2];let i=1e3,a=4e4;const l=.4;let s;for(;a-i>l;){s=(a+i)*.5;const c=IP(s);c[2]/c[0]>=o/n?a=s:i=s}return Wye(s)};Ne.prototype.temp=Ne.prototype.kelvin=Ne.prototype.temperature=function(){return Gye(this._rgb)};const k_=(...e)=>new Ne(...e,"temp");Object.assign(zt,{temp:k_,kelvin:k_,temperature:k_}),Rt.format.temp=Rt.format.kelvin=Rt.format.temperature=IP,Ne.prototype.oklch=function(){return EP(this._rgb)},Object.assign(zt,{oklch:(...e)=>new Ne(...e,"oklch")}),Rt.format.oklch=CP,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"oklch"),Ft(e)==="array"&&e.length===3)return"oklch"}}),Object.assign(zt,{analyze:pP,average:Z1e,bezier:nye,blend:qa,brewer:Mye,Color:Ne,colors:zh,contrast:_ye,contrastAPCA:Cye,cubehelix:mye,deltaE:Tye,distance:jye,input:Rt,interpolate:Th,limits:hP,mix:Th,random:bye,scale:wb,scales:Dye,valid:Aye});const __=[.96,.907,.805,.697,.605,.547,.518,.445,.395,.34],OP=[.32,.16,.08,.04,0,0,.04,.08,.16,.32];function Yye(e){const r=e.get("hsl.l");return __.reduce((n,o)=>Math.abs(o-r)a===n),i=__.map(a=>r.set("hsl.l",a)).map(a=>zt(a)).map((a,l)=>{const s=OP[l]-OP[o];return s>=0?a.saturate(s):a.desaturate(s*-1)});return i[o]=zt(e),{baseColorIndex:o,colors:i}}function Kye(e){return Xye(e).colors.map(r=>r.hex())}const LP={fill:"#3b82f6",stroke:"#2563eb",hiContrast:"#eff6ff",loContrast:"#bfdbfe"},FP={fill:"#0284c7",stroke:"#0369a1",hiContrast:"#f0f9ff",loContrast:"#B6ECF7"},VP={fill:"#64748b",stroke:"#475569",hiContrast:"#f8fafc",loContrast:"#cbd5e1"},Zye={primary:LP,blue:LP,secondary:FP,sky:FP,muted:VP,slate:VP,gray:{fill:"#737373",stroke:"#525252",hiContrast:"#fafafa",loContrast:"#d4d4d4"},red:{fill:"#AC4D39",stroke:"#853A2D",hiContrast:"#FBD3CB",loContrast:"#f5b2a3"},green:{fill:"#428a4f",stroke:"#2d5d39",hiContrast:"#f8fafc",loContrast:"#c2f0c2"},amber:{fill:"#A35829",stroke:"#7E451D",hiContrast:"#FFE0C2",loContrast:"#f9b27c"},indigo:{fill:"#6366f1",stroke:"#4f46e5",hiContrast:"#eef2ff",loContrast:"#c7d2fe"}},Qye={line:"#8D8D8D",labelBg:"#18191B",label:"#C9C9C9"},qP={line:"#64748b",labelBg:"#0f172a",label:"#cbd5e1"},HP={line:"#3b82f6",labelBg:"#172554",label:"#60a5fa"},UP={line:"#0ea5e9",labelBg:"#082f49",label:"#38bdf8"},Jye={amber:{line:"#b45309",labelBg:"#78350f",label:"#FFE0C2"},blue:HP,gray:Qye,green:{line:"#15803d",labelBg:"#052e16",label:"#22c55e"},indigo:{line:"#6366f1",labelBg:"#1e1b4b",label:"#818cf8"},muted:qP,primary:HP,red:{line:"#AC4D39",labelBg:"#b91c1c",label:"#f5b2a3"},secondary:UP,sky:UP,slate:qP},WP=60,GP=2,YP=1;function e0e(e){He(zt.valid(e),`Invalid color: ${e}`);const r=Kye(e),n=r[6],o=t0e(n);return{elements:{fill:n,stroke:r[7],hiContrast:o[0],loContrast:o[1]},relationships:{line:r[4],label:r[3],labelBg:r[9]}}}function t0e(e){const r=zt(e);let n=r.brighten(GP),o=r.darken(GP),i,a,l,s;do i=n,a=o,n=n.brighten(YP),o=o.darken(YP),l=zt.contrastAPCA(r,n),s=zt.contrastAPCA(r,o);while(Math.abs(l)Math.abs(s)?[n.brighten(.4).hex(),n.hex()]:[o.darken(.4).hex(),o.hex()]}const r0e={color:"primary",size:"md",opacity:15,shape:"rectangle",group:{opacity:15,border:"dashed"},relationship:{color:"gray",line:"dashed",arrow:"normal"}},n0e=["rectangle","person","browser","mobile","cylinder","storage","queue"],o0e={colors:Yge(["amber","blue","gray","slate","green","indigo","muted","primary","red","secondary","sky"],e=>({elements:Zye[e],relationships:Jye[e]})),sizes:{xs:{width:180,height:100},sm:{width:240,height:135},md:{width:320,height:180},lg:{width:420,height:234},xl:{width:520,height:290}},spacing:{xs:8,sm:10,md:16,lg:24,xl:32},textSizes:{xs:13.33,sm:16,md:19.2,lg:23.04,xl:27.65}};function $b({size:e,padding:r,textSize:n,...o},i=S_.defaults.size){return e??=i,n??=e,r??=e,{...o,size:e,padding:r,textSize:n}}const S_={theme:o0e,defaults:r0e};let XP=class ON{constructor(r){this.config=r,this.theme=r.theme,this.defaults=r.defaults}theme;defaults;static DEFAULT=new ON(S_);static from(...r){return Ll(r,1)?new ON(XN(...r,S_)):this.DEFAULT}get elementColors(){return this.theme.colors[this.defaults.color].elements}get relationshipColors(){return this.theme.colors[this.defaults.relationship.color].relationships}get groupColors(){const r=this.defaults.group?.color;return r?ar(this,"defaultGroup",()=>({...this.elementColors,...this.theme.colors[r].elements})):this.elementColors}isDefaultColor(r){return r===this.defaults.color}colors(r){if(r??=this.defaults.color,this.isThemeColor(r))return this.theme.colors[r];throw new Error(`Unknown color: ${r}`)}fontSize(r){return r??=this.defaults.text??this.defaults.size,this.theme.textSizes[r]}padding(r){return r??=this.defaults.padding??this.defaults.size,this.theme.spacing[r]}isThemeColor(r){return r in this.theme.colors}nodeSizes(r){const n=$b(r,this.defaults.size);return{sizes:n,values:{sizes:this.theme.sizes[n.size],padding:this.padding(n.padding),textSize:this.fontSize(n.textSize)}}}computeFrom(r){return this.isThemeColor(r)?this.theme.colors[r]:ar(this,`compute-${r}`,()=>{if(!zt.valid(r))throw new Error(`Invalid color value: "${r}"`);return e0e(r)})}equals(r){return r===this?!0:yb(this.config,r.config)}};function Qg(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Qc(e){return typeof e=="string"}const E_={done:!1,hasNext:!1};function Ps(e,...r){let n=e,o=r.map(a=>"lazy"in a?i0e(a):void 0),i=0;for(;i65;)++o;return+u.slice(p-1,o)}return f=c&&c.indexOf(u.charAt(p)),f>-1?f+76:(f=u.charCodeAt(p)||0,f<45||f>127?f:f<46?65:f<48?f-1:f<58?f+18:f<65?f-11:f<91?f+11:f<97?f-37:f<123?f+5:f-63)}if((r+="")!=(n+="")){for(;a;)if(i=d(r,l++),a=d(n,s++),i<76&&a<76&&i>66&&a>66&&(i=d(r,l,l),a=d(n,s,l=o),s=o),i!=a)return i{if(n===o)return 0;if(!n)return-1;if(!o)return 1;const i=n.split(e),a=o.split(e),l=Math.min(i.length,a.length);for(let c=0;c0?e.slice(0,r):null}function Jg(e){const r=e.lastIndexOf(".");return r>0?e.slice(r+1):e}const e1=e=>$_(e)?e:e.id;function Yn(e,r){const n=e1(e);return r?e1(r).startsWith(n+"."):o=>{const i=e1(o);return n.startsWith(i+".")}}function eB(e,r){if(!r)return i=>eB(e,i);const n=e1(e),o=e1(r);return n===o||o.startsWith(n+".")||n.startsWith(o+".")}function tB(e,r){return n=>Yn(e,n)}function Tb(e){return($_(e)?e:e.id).split(".").length}function t1(e,r){const n=e.split(".");if(n.length<2)return null;const o=r.split(".");if(o.length<2)return null;let i=[];for(let a=0;ai===0?(n.push(o),n):(n.unshift(`${n[0]}.${o}`),n),[])}function c0e(e,r){let n=r;for(const o of e)Yn(o,n)&&(n=o);return n!==r?n:null}function Jc(e){const r=[],n=[...e];let o;for(;o=n.shift();){let i;for(;i=c0e(n,o);)r.push(n.splice(n.indexOf(i),1)[0]);r.push(o)}return r}function rB(e,r){if(!e||$_(e)){const o=e??"asc";return i=>rB(i,o)}const n=r==="desc"?-1:1;return e.map(o=>({item:o,fqn:o.id.split(".")})).sort((o,i)=>{if(o.fqn.length!==i.fqn.length)return(o.fqn.length-i.fqn.length)*n;for(let a=0;ao)}var jb={},nB;function d0e(){return nB||(nB=1,jb.ARRAY_BUFFER_SUPPORT=typeof ArrayBuffer<"u",jb.SYMBOL_SUPPORT=typeof Symbol<"u"),jb}var R_,oB;function Ab(){if(oB)return R_;oB=1;var e=d0e(),r=e.ARRAY_BUFFER_SUPPORT,n=e.SYMBOL_SUPPORT;return R_=function(i,a){var l,s,c,d,u;if(!i)throw new Error("obliterator/forEach: invalid iterable.");if(typeof a!="function")throw new Error("obliterator/forEach: expecting a callback.");if(Array.isArray(i)||r&&ArrayBuffer.isView(i)||typeof i=="string"||i.toString()==="[object Arguments]"){for(c=0,d=i.length;c=n?{done:!0}:{done:!1,value:r[o++]}})},e.empty=function(){var r=new e(function(){return{done:!0}});return r},e.fromSequence=function(r){var n=0,o=r.length;return new e(function(){return n>=o?{done:!0}:{done:!1,value:r[n++]}})},e.is=function(r){return r instanceof e?!0:typeof r=="object"&&r!==null&&typeof r.next=="function"},z_=e,z_}const lB=-1,Db=0,r1=1,Mb=2,T_=3,j_=4,A_=5,D_=6,sB=7,cB=8,dB=typeof self=="object"?self:globalThis,u0e=(e,r)=>{const n=(i,a)=>(e.set(a,i),i),o=i=>{if(e.has(i))return e.get(i);const[a,l]=r[i];switch(a){case Db:case lB:return n(l,i);case r1:{const s=n([],i);for(const c of l)s.push(o(c));return s}case Mb:{const s=n({},i);for(const[c,d]of l)s[o(c)]=o(d);return s}case T_:return n(new Date(l),i);case j_:{const{source:s,flags:c}=l;return n(new RegExp(s,c),i)}case A_:{const s=n(new Map,i);for(const[c,d]of l)s.set(o(c),o(d));return s}case D_:{const s=n(new Set,i);for(const c of l)s.add(o(c));return s}case sB:{const{name:s,message:c}=l;return n(new dB[s](c),i)}case cB:return n(BigInt(l),i);case"BigInt":return n(Object(BigInt(l)),i);case"ArrayBuffer":return n(new Uint8Array(l).buffer,l);case"DataView":{const{buffer:s}=new Uint8Array(l);return n(new DataView(s),l)}}return n(new dB[a](l),i)};return o},uB=e=>u0e(new Map,e)(0),Bh="",{toString:p0e}={},{keys:h0e}=Object,n1=e=>{const r=typeof e;if(r!=="object"||!e)return[Db,r];const n=p0e.call(e).slice(8,-1);switch(n){case"Array":return[r1,Bh];case"Object":return[Mb,Bh];case"Date":return[T_,Bh];case"RegExp":return[j_,Bh];case"Map":return[A_,Bh];case"Set":return[D_,Bh];case"DataView":return[r1,n]}return n.includes("Array")?[r1,n]:n.includes("Error")?[sB,n]:[Mb,n]},Nb=([e,r])=>e===Db&&(r==="function"||r==="symbol"),f0e=(e,r,n,o)=>{const i=(l,s)=>{const c=o.push(l)-1;return n.set(s,c),c},a=l=>{if(n.has(l))return n.get(l);let[s,c]=n1(l);switch(s){case Db:{let u=l;switch(c){case"bigint":s=cB,u=l.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+c);u=null;break;case"undefined":return i([lB],l)}return i([s,u],l)}case r1:{if(c){let f=l;return c==="DataView"?f=new Uint8Array(l.buffer):c==="ArrayBuffer"&&(f=new Uint8Array(l)),i([c,[...f]],l)}const u=[],p=i([s,u],l);for(const f of l)u.push(a(f));return p}case Mb:{if(c)switch(c){case"BigInt":return i([c,l.toString()],l);case"Boolean":case"Number":case"String":return i([c,l.valueOf()],l)}if(r&&"toJSON"in l)return a(l.toJSON());const u=[],p=i([s,u],l);for(const f of h0e(l))(e||!Nb(n1(l[f])))&&u.push([a(f),a(l[f])]);return p}case T_:return i([s,l.toISOString()],l);case j_:{const{source:u,flags:p}=l;return i([s,{source:u,flags:p}],l)}case A_:{const u=[],p=i([s,u],l);for(const[f,g]of l)(e||!(Nb(n1(f))||Nb(n1(g))))&&u.push([a(f),a(g)]);return p}case D_:{const u=[],p=i([s,u],l);for(const f of l)(e||!Nb(n1(f)))&&u.push(a(f));return p}}const{message:d}=l;return i([s,{name:c,message:d}],l)};return a},pB=(e,{json:r,lossy:n}={})=>{const o=[];return f0e(!(r||n),!!r,new Map,o)(e),o},o1=typeof structuredClone=="function"?(e,r)=>r&&("json"in r||"lossy"in r)?uB(pB(e,r)):structuredClone(e):(e,r)=>uB(pB(e,r)),hB=mB("end"),fB=mB("start");function mB(e){return r;function r(n){const o=n&&n.position&&n.position[e]||{};if(typeof o.line=="number"&&o.line>0&&typeof o.column=="number"&&o.column>0)return{line:o.line,column:o.column,offset:typeof o.offset=="number"&&o.offset>-1?o.offset:void 0}}}function gB(e){const r=fB(e),n=hB(e);if(r&&n)return{start:r,end:n}}const Mu=["ariaDescribedBy","ariaLabel","ariaLabelledBy"],M_={ancestors:{tbody:["table"],td:["table"],th:["table"],thead:["table"],tfoot:["table"],tr:["table"]},attributes:{a:[...Mu,"dataFootnoteBackref","dataFootnoteRef",["className","data-footnote-backref"],"href"],blockquote:["cite"],code:[["className",/^language-./]],del:["cite"],div:["itemScope","itemType"],dl:[...Mu],h2:[["className","sr-only"]],img:[...Mu,"longDesc","src"],input:[["disabled",!0],["type","checkbox"]],ins:["cite"],li:[["className","task-list-item"]],ol:[...Mu,["className","contains-task-list"]],q:["cite"],section:["dataFootnotes",["className","footnotes"]],source:["srcSet"],summary:[...Mu],table:[...Mu],ul:[...Mu,["className","contains-task-list"]],"*":["abbr","accept","acceptCharset","accessKey","action","align","alt","axis","border","cellPadding","cellSpacing","char","charOff","charSet","checked","clear","colSpan","color","cols","compact","coords","dateTime","dir","encType","frame","hSpace","headers","height","hrefLang","htmlFor","id","isMap","itemProp","label","lang","maxLength","media","method","multiple","name","noHref","noShade","noWrap","open","prompt","readOnly","rev","rowSpan","rows","rules","scope","selected","shape","size","span","start","summary","tabIndex","title","useMap","vAlign","value","width"]},clobber:["ariaDescribedBy","ariaLabelledBy","id","name"],clobberPrefix:"user-content-",protocols:{cite:["http","https"],href:["http","https","irc","ircs","mailto","xmpp"],longDesc:["http","https"],src:["http","https"]},required:{input:{disabled:!0,type:"checkbox"}},strip:["script"],tagNames:["a","b","blockquote","br","code","dd","del","details","div","dl","dt","em","h1","h2","h3","h4","h5","h6","hr","i","img","input","ins","kbd","li","ol","p","picture","pre","q","rp","rt","ruby","s","samp","section","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","tr","tt","ul","var"]},ed={}.hasOwnProperty;function m0e(e,r){let n={type:"root",children:[]};const o={schema:r?{...M_,...r}:M_,stack:[]},i=yB(o,e);return i&&(Array.isArray(i)?i.length===1?n=i[0]:n.children=i:n=i),n}function yB(e,r){if(r&&typeof r=="object"){const n=r;switch(typeof n.type=="string"?n.type:""){case"comment":return g0e(e,n);case"doctype":return y0e(e,n);case"element":return v0e(e,n);case"root":return b0e(e,n);case"text":return x0e(e,n)}}}function g0e(e,r){if(e.schema.allowComments){const n=typeof r.value=="string"?r.value:"",o=n.indexOf("-->"),a={type:"comment",value:o<0?n:n.slice(0,o)};return i1(a,r),a}}function y0e(e,r){if(e.schema.allowDoctypes){const n={type:"doctype"};return i1(n,r),n}}function v0e(e,r){const n=typeof r.tagName=="string"?r.tagName:"";e.stack.push(n);const o=vB(e,r.children),i=w0e(e,r.properties);e.stack.pop();let a=!1;if(n&&n!=="*"&&(!e.schema.tagNames||e.schema.tagNames.includes(n))&&(a=!0,e.schema.ancestors&&ed.call(e.schema.ancestors,n))){const s=e.schema.ancestors[n];let c=-1;for(a=!1;++c1){let i=!1,a=0;for(;++a-1&&a>c||l>-1&&a>l||s>-1&&a>s)return!0;let d=-1;for(;++d4&&r.slice(0,4).toLowerCase()==="data")return n}function S0e(e){return function(r){return m0e(r,e)}}const E0e=["area","base","basefont","bgsound","br","col","command","embed","frame","hr","image","img","input","keygen","link","meta","param","source","track","wbr"];class a1{constructor(r,n,o){this.normal=n,this.property=r,o&&(this.space=o)}}a1.prototype.normal={},a1.prototype.property={},a1.prototype.space=void 0;function kB(e,r){const n={},o={};for(const i of e)Object.assign(n,i.property),Object.assign(o,i.normal);return new a1(n,o,r)}function N_(e){return e.toLowerCase()}class Jo{constructor(r,n){this.attribute=n,this.property=r}}Jo.prototype.attribute="",Jo.prototype.booleanish=!1,Jo.prototype.boolean=!1,Jo.prototype.commaOrSpaceSeparated=!1,Jo.prototype.commaSeparated=!1,Jo.prototype.defined=!1,Jo.prototype.mustUseProperty=!1,Jo.prototype.number=!1,Jo.prototype.overloadedBoolean=!1,Jo.prototype.property="",Jo.prototype.spaceSeparated=!1,Jo.prototype.space=void 0;let C0e=0;const At=Nu(),bn=Nu(),_B=Nu(),Ie=Nu(),Cr=Nu(),Ih=Nu(),bi=Nu();function Nu(){return 2**++C0e}const P_={__proto__:null,boolean:At,booleanish:bn,commaOrSpaceSeparated:bi,commaSeparated:Ih,number:Ie,overloadedBoolean:_B,spaceSeparated:Cr},B_=Object.keys(P_);class I_ extends Jo{constructor(r,n,o,i){let a=-1;if(super(r,n),SB(this,"space",i),typeof o=="number")for(;++a4&&n.slice(0,4)==="data"&&T0e.test(r)){if(r.charAt(4)==="-"){const a=r.slice(5).replace(jB,D0e);o="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=r.slice(4);if(!jB.test(a)){let l=a.replace(z0e,A0e);l.charAt(0)!=="-"&&(l="-"+l),r="data"+l}}i=I_}return new i(o,r)}function A0e(e){return"-"+e.toLowerCase()}function D0e(e){return e.charAt(1).toUpperCase()}const M0e=kB([EB,$0e,RB,zB,TB],"html"),AB=kB([EB,R0e,RB,zB,TB],"svg"),DB={}.hasOwnProperty;function N0e(e,r){const n=r||{};function o(i,...a){let l=o.invalid;const s=o.handlers;if(i&&DB.call(i,e)){const c=String(i[e]);l=DB.call(s,c)?s[c]:o.unknown}if(l)return l.call(this,i,...a)}return o.handlers=n.handlers||{},o.invalid=n.invalid,o.unknown=n.unknown,o}const P0e=/["&'<>`]/g,B0e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,I0e=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,O0e=/[|\\{}()[\]^$+*?.]/g,MB=new WeakMap;function L0e(e,r){if(e=e.replace(r.subset?F0e(r.subset):P0e,o),r.subset||r.escapeOnly)return e;return e.replace(B0e,n).replace(I0e,o);function n(i,a,l){return r.format((i.charCodeAt(0)-55296)*1024+i.charCodeAt(1)-56320+65536,l.charCodeAt(a+2),r)}function o(i,a,l){return r.format(i.charCodeAt(0),l.charCodeAt(a+1),r)}}function F0e(e){let r=MB.get(e);return r||(r=V0e(e),MB.set(e,r)),r}function V0e(e){const r=[];let n=-1;for(;++n",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",permil:"‰",lsaquo:"‹",rsaquo:"›",euro:"€"},Y0e=["cent","copy","divide","gt","lt","not","para","times"],NB={}.hasOwnProperty,L_={};let Pb;for(Pb in O_)NB.call(O_,Pb)&&(L_[O_[Pb]]=Pb);const X0e=/[^\dA-Za-z]/;function K0e(e,r,n,o){const i=String.fromCharCode(e);if(NB.call(L_,i)){const a=L_[i],l="&"+a;return n&&G0e.includes(a)&&!Y0e.includes(a)&&(!o||r&&r!==61&&X0e.test(String.fromCharCode(r)))?l:l+";"}return""}function Z0e(e,r,n){let o=H0e(e,r,n.omitOptionalSemicolons),i;if((n.useNamedReferences||n.useShortestReferences)&&(i=K0e(e,r,n.omitOptionalSemicolons,n.attribute)),(n.useShortestReferences||!i)&&n.useShortestReferences){const a=W0e(e,r,n.omitOptionalSemicolons);a.length|^->||--!>|"],eve=["<",">"];function tve(e,r,n,o){return o.settings.bogusComments?"":"";function i(a){return Lh(a,Object.assign({},o.settings.characterReferences,{subset:eve}))}}function rve(e,r,n,o){return""}function Bb(e,r){const n=String(e);if(typeof r!="string")throw new TypeError("Expected character");let o=0,i=n.indexOf(r);for(;i!==-1;)o++,i=n.indexOf(r,i+r.length);return o}function nve(e,r){const n=r||{};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}function ove(e){return e.join(" ").trim()}const ive=/[ \t\n\f\r]/g;function F_(e){return typeof e=="object"?e.type==="text"?PB(e.value):!1:PB(e)}function PB(e){return e.replace(ive,"")===""}const On=IB(1),BB=IB(-1),ave=[];function IB(e){return r;function r(n,o,i){const a=n?n.children:ave;let l=(o||0)+e,s=a[l];if(!i)for(;s&&F_(s);)l+=e,s=a[l];return s}}const lve={}.hasOwnProperty;function OB(e){return r;function r(n,o,i){return lve.call(e,n.tagName)&&e[n.tagName](n,o,i)}}const V_=OB({body:cve,caption:q_,colgroup:q_,dd:hve,dt:pve,head:q_,html:sve,li:uve,optgroup:fve,option:mve,p:dve,rp:LB,rt:LB,tbody:yve,td:FB,tfoot:vve,th:FB,thead:gve,tr:bve});function q_(e,r,n){const o=On(n,r,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&F_(o.value.charAt(0)))}function sve(e,r,n){const o=On(n,r);return!o||o.type!=="comment"}function cve(e,r,n){const o=On(n,r);return!o||o.type!=="comment"}function dve(e,r,n){const o=On(n,r);return o?o.type==="element"&&(o.tagName==="address"||o.tagName==="article"||o.tagName==="aside"||o.tagName==="blockquote"||o.tagName==="details"||o.tagName==="div"||o.tagName==="dl"||o.tagName==="fieldset"||o.tagName==="figcaption"||o.tagName==="figure"||o.tagName==="footer"||o.tagName==="form"||o.tagName==="h1"||o.tagName==="h2"||o.tagName==="h3"||o.tagName==="h4"||o.tagName==="h5"||o.tagName==="h6"||o.tagName==="header"||o.tagName==="hgroup"||o.tagName==="hr"||o.tagName==="main"||o.tagName==="menu"||o.tagName==="nav"||o.tagName==="ol"||o.tagName==="p"||o.tagName==="pre"||o.tagName==="section"||o.tagName==="table"||o.tagName==="ul"):!n||!(n.type==="element"&&(n.tagName==="a"||n.tagName==="audio"||n.tagName==="del"||n.tagName==="ins"||n.tagName==="map"||n.tagName==="noscript"||n.tagName==="video"))}function uve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&o.tagName==="li"}function pve(e,r,n){const o=On(n,r);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function hve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function LB(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function fve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&o.tagName==="optgroup"}function mve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function gve(e,r,n){const o=On(n,r);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function yve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function vve(e,r,n){return!On(n,r)}function bve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&o.tagName==="tr"}function FB(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}const xve=OB({body:_ve,colgroup:Sve,head:kve,html:wve,tbody:Eve});function wve(e){const r=On(e,-1);return!r||r.type!=="comment"}function kve(e){const r=new Set;for(const o of e.children)if(o.type==="element"&&(o.tagName==="base"||o.tagName==="title")){if(r.has(o.tagName))return!1;r.add(o.tagName)}const n=e.children[0];return!n||n.type==="element"}function _ve(e){const r=On(e,-1,!0);return!r||r.type!=="comment"&&!(r.type==="text"&&F_(r.value.charAt(0)))&&!(r.type==="element"&&(r.tagName==="meta"||r.tagName==="link"||r.tagName==="script"||r.tagName==="style"||r.tagName==="template"))}function Sve(e,r,n){const o=BB(n,r),i=On(e,-1,!0);return n&&o&&o.type==="element"&&o.tagName==="colgroup"&&V_(o,n.children.indexOf(o),n)?!1:!!(i&&i.type==="element"&&i.tagName==="col")}function Eve(e,r,n){const o=BB(n,r),i=On(e,-1);return n&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&V_(o,n.children.indexOf(o),n)?!1:!!(i&&i.type==="element"&&i.tagName==="tr")}const Ib={name:[[` +function Lme(e,r){for(var n=0;no[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}function LM(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var X6={exports:{}},Xm={};var FM;function Fme(){if(FM)return Xm;FM=1;var e=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function n(o,i,a){var l=null;if(a!==void 0&&(l=""+a),i.key!==void 0&&(l=""+i.key),"key"in i){a={};for(var s in i)s!=="key"&&(a[s]=i[s])}else a=i;return i=a.ref,{$$typeof:e,type:o,key:l,ref:i!==void 0?i:null,props:a}}return Xm.Fragment=r,Xm.jsx=n,Xm.jsxs=n,Xm}var VM;function Vme(){return VM||(VM=1,X6.exports=Fme()),X6.exports}var y=Vme(),K6={exports:{}},$t={};var qM;function qme(){if(qM)return $t;qM=1;var e=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),a=Symbol.for("react.consumer"),l=Symbol.for("react.context"),s=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),u=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),f=Symbol.iterator;function m(Y){return Y===null||typeof Y!="object"?null:(Y=f&&Y[f]||Y["@@iterator"],typeof Y=="function"?Y:null)}var v={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},w=Object.assign,x={};function k(Y,K,O){this.props=Y,this.context=K,this.refs=x,this.updater=O||v}k.prototype.isReactComponent={},k.prototype.setState=function(Y,K){if(typeof Y!="object"&&typeof Y!="function"&&Y!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,Y,K,"setState")},k.prototype.forceUpdate=function(Y){this.updater.enqueueForceUpdate(this,Y,"forceUpdate")};function C(){}C.prototype=k.prototype;function _(Y,K,O){this.props=Y,this.context=K,this.refs=x,this.updater=O||v}var $=_.prototype=new C;$.constructor=_,w($,k.prototype),$.isPureReactComponent=!0;var R=Array.isArray;function T(){}var A={H:null,A:null,T:null,S:null},z=Object.prototype.hasOwnProperty;function j(Y,K,O){var W=O.ref;return{$$typeof:e,type:Y,key:K,ref:W!==void 0?W:null,props:O}}function I(Y,K){return j(Y.type,K,Y.props)}function N(Y){return typeof Y=="object"&&Y!==null&&Y.$$typeof===e}function L(Y){var K={"=":"=0",":":"=2"};return"$"+Y.replace(/[=:]/g,function(O){return K[O]})}var H=/\/+/g;function P(Y,K){return typeof Y=="object"&&Y!==null&&Y.key!=null?L(""+Y.key):K.toString(36)}function V(Y){switch(Y.status){case"fulfilled":return Y.value;case"rejected":throw Y.reason;default:switch(typeof Y.status=="string"?Y.then(T,T):(Y.status="pending",Y.then(function(K){Y.status==="pending"&&(Y.status="fulfilled",Y.value=K)},function(K){Y.status==="pending"&&(Y.status="rejected",Y.reason=K)})),Y.status){case"fulfilled":return Y.value;case"rejected":throw Y.reason}}throw Y}function B(Y,K,O,W,Z){var Q=typeof Y;(Q==="undefined"||Q==="boolean")&&(Y=null);var ie=!1;if(Y===null)ie=!0;else switch(Q){case"bigint":case"string":case"number":ie=!0;break;case"object":switch(Y.$$typeof){case e:case r:ie=!0;break;case u:return ie=Y._init,B(ie(Y._payload),K,O,W,Z)}}if(ie)return Z=Z(Y),ie=W===""?"."+P(Y,0):W,R(Z)?(O="",ie!=null&&(O=ie.replace(H,"$&/")+"/"),B(Z,K,O,"",function(ue){return ue})):Z!=null&&(N(Z)&&(Z=I(Z,O+(Z.key==null||Y&&Y.key===Z.key?"":(""+Z.key).replace(H,"$&/")+"/")+ie)),K.push(Z)),1;ie=0;var te=W===""?".":W+":";if(R(Y))for(var re=0;re"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(r){console.error(r)}}return e(),Q6.exports=Hme(),Q6.exports}var Va=GM();const YM=LM(Va);function ar(e,r,n){const o=typeof r=="symbol"?r:Symbol.for(r);return e.hasOwnProperty(o)||Object.defineProperty(e,o,{enumerable:!1,writable:!1,value:n()}),e[o]}function J6(e){if(e===null||typeof e!="object")return!1;const r=Object.getPrototypeOf(e);return r!==null&&r!==Object.prototype&&Object.getPrototypeOf(r)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)==="[object Module]":!0}function e_(e,r,n=".",o){if(!J6(r))return e_(e,{},n);const i=Object.assign({},r);for(const a in e){if(a==="__proto__"||a==="constructor")continue;const l=e[a];l!=null&&(Array.isArray(l)&&Array.isArray(i[a])?i[a]=[...l,...i[a]]:J6(l)&&J6(i[a])?i[a]=e_(l,i[a],(n?`${n}.`:"")+a.toString()):i[a]=l)}return i}function Ume(e){return(...r)=>r.reduce((n,o)=>e_(n,o,""),{})}const XM=Ume();function Wme(e,r,n){let o=i=>e(i,...r);return n===void 0?o:Object.assign(o,{lazy:n,lazyArgs:r})}function ao(e,r,n){let o=e.length-r.length;if(o===0)return e(...r);if(o===1)return Wme(e,r,n);throw Error("Wrong number of arguments")}function Ll(...e){return ao(Gme,e)}const Gme=(e,r)=>e.length>=r;function gt(e,r){if(typeof e>"u"||e==null){const n=typeof r=="function"?r():r;throw new Error(n??`Expected defined value, but received ${e}`)}return e}function He(e,r){if(!e)throw new Error(r??"Invariant failed")}function Qo(e){throw new Error(`NonExhaustive value: ${e}`)}function Yme(...e){return ao(Xme,e)}function Xme(e,r){let n={};for(let[o,i]of e.entries())n[i]=r(i,o,e);return n}function yb(...e){return ao(Km,e)}function Km(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||typeof r!="object"||e===null||r===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(r))return!1;if(Array.isArray(e))return Kme(e,r);if(e instanceof Map)return Zme(e,r);if(e instanceof Set)return Qme(e,r);if(e instanceof Date)return e.getTime()===r.getTime();if(e instanceof RegExp)return e.toString()===r.toString();if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let[n,o]of Object.entries(e))if(!(n in r)||!Km(o,r[n]))return!1;return!0}function Kme(e,r){if(e.length!==r.length)return!1;for(let[n,o]of e.entries())if(!Km(o,r[n]))return!1;return!0}function Zme(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e.entries())if(!r.has(n)||!Km(o,r.get(n)))return!1;return!0}function Qme(e,r){if(e.size!==r.size)return!1;let n=[...r];for(let o of e){let i=!1;for(let[a,l]of n.entries())if(Km(o,l)){i=!0,n.splice(a,1);break}if(!i)return!1}return!0}const{min:Jme,max:e1e}=Math,Au=(e,r=0,n=1)=>Jme(e1e(r,e),n),t_=e=>{e._clipped=!1,e._unclipped=e.slice(0);for(let r=0;r<=3;r++)r<3?((e[r]<0||e[r]>255)&&(e._clipped=!0),e[r]=Au(e[r],0,255)):r===3&&(e[r]=Au(e[r],0,1));return e},KM={};for(let e of["Boolean","Number","String","Function","Array","Date","RegExp","Undefined","Null"])KM[`[object ${e}]`]=e.toLowerCase();function Ft(e){return KM[Object.prototype.toString.call(e)]||"object"}const jt=(e,r=null)=>e.length>=3?Array.prototype.slice.call(e):Ft(e[0])=="object"&&r?r.split("").filter(n=>e[0][n]!==void 0).map(n=>e[0][n]):e[0].slice(0),Rh=e=>{if(e.length<2)return null;const r=e.length-1;return Ft(e[r])=="string"?e[r].toLowerCase():null},{PI:vb,min:ZM,max:QM}=Math,Ki=e=>Math.round(e*100)/100,r_=e=>Math.round(e*100)/100,As=vb*2,n_=vb/3,t1e=vb/180,r1e=180/vb;function JM(e){return[...e.slice(0,3).reverse(),...e.slice(3)]}const Rt={format:{},autodetect:[]};let Me=class{constructor(...r){const n=this;if(Ft(r[0])==="object"&&r[0].constructor&&r[0].constructor===this.constructor)return r[0];let o=Rh(r),i=!1;if(!o){i=!0,Rt.sorted||(Rt.autodetect=Rt.autodetect.sort((a,l)=>l.p-a.p),Rt.sorted=!0);for(let a of Rt.autodetect)if(o=a.test(...r),o)break}if(Rt.format[o]){const a=Rt.format[o].apply(null,i?r:r.slice(0,-1));n._rgb=t_(a)}else throw new Error("unknown format: "+r);n._rgb.length===3&&n._rgb.push(1)}toString(){return Ft(this.hex)=="function"?this.hex():`[${this._rgb.join(",")}]`}};const n1e="3.2.0",zt=(...e)=>new Me(...e);zt.version=n1e;const zh={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",laserlemon:"#ffff54",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrod:"#fafad2",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",maroon2:"#7f0000",maroon3:"#b03060",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",purple2:"#7f007f",purple3:"#a020f0",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},o1e=/^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,i1e=/^#?([A-Fa-f0-9]{8}|[A-Fa-f0-9]{4})$/,eN=e=>{if(e.match(o1e)){(e.length===4||e.length===7)&&(e=e.substr(1)),e.length===3&&(e=e.split(""),e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);const r=parseInt(e,16),n=r>>16,o=r>>8&255,i=r&255;return[n,o,i,1]}if(e.match(i1e)){(e.length===5||e.length===9)&&(e=e.substr(1)),e.length===4&&(e=e.split(""),e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);const r=parseInt(e,16),n=r>>24&255,o=r>>16&255,i=r>>8&255,a=Math.round((r&255)/255*100)/100;return[n,o,i,a]}throw new Error(`unknown hex color: ${e}`)},{round:bb}=Math,tN=(...e)=>{let[r,n,o,i]=jt(e,"rgba"),a=Rh(e)||"auto";i===void 0&&(i=1),a==="auto"&&(a=i<1?"rgba":"rgb"),r=bb(r),n=bb(n),o=bb(o);let s="000000"+(r<<16|n<<8|o).toString(16);s=s.substr(s.length-6);let c="0"+bb(i*255).toString(16);switch(c=c.substr(c.length-2),a.toLowerCase()){case"rgba":return`#${s}${c}`;case"argb":return`#${c}${s}`;default:return`#${s}`}};Me.prototype.name=function(){const e=tN(this._rgb,"rgb");for(let r of Object.keys(zh))if(zh[r]===e)return r.toLowerCase();return e},Rt.format.named=e=>{if(e=e.toLowerCase(),zh[e])return eN(zh[e]);throw new Error("unknown color name: "+e)},Rt.autodetect.push({p:5,test:(e,...r)=>{if(!r.length&&Ft(e)==="string"&&zh[e.toLowerCase()])return"named"}}),Me.prototype.alpha=function(e,r=!1){return e!==void 0&&Ft(e)==="number"?r?(this._rgb[3]=e,this):new Me([this._rgb[0],this._rgb[1],this._rgb[2],e],"rgb"):this._rgb[3]},Me.prototype.clipped=function(){return this._rgb._clipped||!1};const Fl={Kn:18,labWhitePoint:"d65",Xn:.95047,Yn:1,Zn:1.08883,kE:216/24389,kKE:8,kK:24389/27,RefWhiteRGB:{X:.95047,Y:1,Z:1.08883},MtxRGB2XYZ:{m00:.4124564390896922,m01:.21267285140562253,m02:.0193338955823293,m10:.357576077643909,m11:.715152155287818,m12:.11919202588130297,m20:.18043748326639894,m21:.07217499330655958,m22:.9503040785363679},MtxXYZ2RGB:{m00:3.2404541621141045,m01:-.9692660305051868,m02:.055643430959114726,m10:-1.5371385127977166,m11:1.8760108454466942,m12:-.2040259135167538,m20:-.498531409556016,m21:.041556017530349834,m22:1.0572251882231791},As:.9414285350000001,Bs:1.040417467,Cs:1.089532651,MtxAdaptMa:{m00:.8951,m01:-.7502,m02:.0389,m10:.2664,m11:1.7135,m12:-.0685,m20:-.1614,m21:.0367,m22:1.0296},MtxAdaptMaI:{m00:.9869929054667123,m01:.43230526972339456,m02:-.008528664575177328,m10:-.14705425642099013,m11:.5183602715367776,m12:.04004282165408487,m20:.15996265166373125,m21:.0492912282128556,m22:.9684866957875502}},a1e=new Map([["a",[1.0985,.35585]],["b",[1.0985,.35585]],["c",[.98074,1.18232]],["d50",[.96422,.82521]],["d55",[.95682,.92149]],["d65",[.95047,1.08883]],["e",[1,1,1]],["f2",[.99186,.67393]],["f7",[.95041,1.08747]],["f11",[1.00962,.6435]],["icc",[.96422,.82521]]]);function Ds(e){const r=a1e.get(String(e).toLowerCase());if(!r)throw new Error("unknown Lab illuminant "+e);Fl.labWhitePoint=e,Fl.Xn=r[0],Fl.Zn=r[1]}function Zm(){return Fl.labWhitePoint}const o_=(...e)=>{e=jt(e,"lab");const[r,n,o]=e,[i,a,l]=l1e(r,n,o),[s,c,d]=rN(i,a,l);return[s,c,d,e.length>3?e[3]:1]},l1e=(e,r,n)=>{const{kE:o,kK:i,kKE:a,Xn:l,Yn:s,Zn:c}=Fl,d=(e+16)/116,u=.002*r+d,p=d-.005*n,f=u*u*u,m=p*p*p,v=f>o?f:(116*u-16)/i,w=e>a?Math.pow((e+16)/116,3):e/i,x=m>o?m:(116*p-16)/i,k=v*l,C=w*s,_=x*c;return[k,C,_]},i_=e=>{const r=Math.sign(e);return e=Math.abs(e),(e<=.0031308?e*12.92:1.055*Math.pow(e,1/2.4)-.055)*r},rN=(e,r,n)=>{const{MtxAdaptMa:o,MtxAdaptMaI:i,MtxXYZ2RGB:a,RefWhiteRGB:l,Xn:s,Yn:c,Zn:d}=Fl,u=s*o.m00+c*o.m10+d*o.m20,p=s*o.m01+c*o.m11+d*o.m21,f=s*o.m02+c*o.m12+d*o.m22,m=l.X*o.m00+l.Y*o.m10+l.Z*o.m20,v=l.X*o.m01+l.Y*o.m11+l.Z*o.m21,w=l.X*o.m02+l.Y*o.m12+l.Z*o.m22,x=(e*o.m00+r*o.m10+n*o.m20)*(m/u),k=(e*o.m01+r*o.m11+n*o.m21)*(v/p),C=(e*o.m02+r*o.m12+n*o.m22)*(w/f),_=x*i.m00+k*i.m10+C*i.m20,$=x*i.m01+k*i.m11+C*i.m21,R=x*i.m02+k*i.m12+C*i.m22,T=i_(_*a.m00+$*a.m10+R*a.m20),A=i_(_*a.m01+$*a.m11+R*a.m21),z=i_(_*a.m02+$*a.m12+R*a.m22);return[T*255,A*255,z*255]},a_=(...e)=>{const[r,n,o,...i]=jt(e,"rgb"),[a,l,s]=nN(r,n,o),[c,d,u]=s1e(a,l,s);return[c,d,u,...i.length>0&&i[0]<1?[i[0]]:[]]};function s1e(e,r,n){const{Xn:o,Yn:i,Zn:a,kE:l,kK:s}=Fl,c=e/o,d=r/i,u=n/a,p=c>l?Math.pow(c,1/3):(s*c+16)/116,f=d>l?Math.pow(d,1/3):(s*d+16)/116,m=u>l?Math.pow(u,1/3):(s*u+16)/116;return[116*f-16,500*(p-f),200*(f-m)]}function l_(e){const r=Math.sign(e);return e=Math.abs(e),(e<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4))*r}const nN=(e,r,n)=>{e=l_(e/255),r=l_(r/255),n=l_(n/255);const{MtxRGB2XYZ:o,MtxAdaptMa:i,MtxAdaptMaI:a,Xn:l,Yn:s,Zn:c,As:d,Bs:u,Cs:p}=Fl;let f=e*o.m00+r*o.m10+n*o.m20,m=e*o.m01+r*o.m11+n*o.m21,v=e*o.m02+r*o.m12+n*o.m22;const w=l*i.m00+s*i.m10+c*i.m20,x=l*i.m01+s*i.m11+c*i.m21,k=l*i.m02+s*i.m12+c*i.m22;let C=f*i.m00+m*i.m10+v*i.m20,_=f*i.m01+m*i.m11+v*i.m21,$=f*i.m02+m*i.m12+v*i.m22;return C*=w/d,_*=x/u,$*=k/p,f=C*a.m00+_*a.m10+$*a.m20,m=C*a.m01+_*a.m11+$*a.m21,v=C*a.m02+_*a.m12+$*a.m22,[f,m,v]};Me.prototype.lab=function(){return a_(this._rgb)},Object.assign(zt,{lab:(...e)=>new Me(...e,"lab"),getLabWhitePoint:Zm,setLabWhitePoint:Ds}),Rt.format.lab=o_,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"lab"),Ft(e)==="array"&&e.length===3)return"lab"}}),Me.prototype.darken=function(e=1){const r=this,n=r.lab();return n[0]-=Fl.Kn*e,new Me(n,"lab").alpha(r.alpha(),!0)},Me.prototype.brighten=function(e=1){return this.darken(-e)},Me.prototype.darker=Me.prototype.darken,Me.prototype.brighter=Me.prototype.brighten,Me.prototype.get=function(e){const[r,n]=e.split("."),o=this[r]();if(n){const i=r.indexOf(n)-(r.substr(0,2)==="ok"?2:0);if(i>-1)return o[i];throw new Error(`unknown channel ${n} in mode ${r}`)}else return o};const{pow:c1e}=Math,d1e=1e-7,u1e=20;Me.prototype.luminance=function(e,r="rgb"){if(e!==void 0&&Ft(e)==="number"){if(e===0)return new Me([0,0,0,this._rgb[3]],"rgb");if(e===1)return new Me([255,255,255,this._rgb[3]],"rgb");let n=this.luminance(),o=u1e;const i=(l,s)=>{const c=l.interpolate(s,.5,r),d=c.luminance();return Math.abs(e-d)e?i(l,c):i(c,s)},a=(n>e?i(new Me([0,0,0]),this):i(this,new Me([255,255,255]))).rgb();return new Me([...a,this._rgb[3]])}return p1e(...this._rgb.slice(0,3))};const p1e=(e,r,n)=>(e=s_(e),r=s_(r),n=s_(n),.2126*e+.7152*r+.0722*n),s_=e=>(e/=255,e<=.03928?e/12.92:c1e((e+.055)/1.055,2.4)),bo={},Th=(e,r,n=.5,...o)=>{let i=o[0]||"lrgb";if(!bo[i]&&!o.length&&(i=Object.keys(bo)[0]),!bo[i])throw new Error(`interpolation mode ${i} is not defined`);return Ft(e)!=="object"&&(e=new Me(e)),Ft(r)!=="object"&&(r=new Me(r)),bo[i](e,r,n).alpha(e.alpha()+n*(r.alpha()-e.alpha()))};Me.prototype.mix=Me.prototype.interpolate=function(e,r=.5,...n){return Th(this,e,r,...n)},Me.prototype.premultiply=function(e=!1){const r=this._rgb,n=r[3];return e?(this._rgb=[r[0]*n,r[1]*n,r[2]*n,n],this):new Me([r[0]*n,r[1]*n,r[2]*n,n],"rgb")};const{sin:h1e,cos:f1e}=Math,oN=(...e)=>{let[r,n,o]=jt(e,"lch");return isNaN(o)&&(o=0),o=o*t1e,[r,f1e(o)*n,h1e(o)*n]},c_=(...e)=>{e=jt(e,"lch");const[r,n,o]=e,[i,a,l]=oN(r,n,o),[s,c,d]=o_(i,a,l);return[s,c,d,e.length>3?e[3]:1]},g1e=(...e)=>{const r=JM(jt(e,"hcl"));return c_(...r)},{sqrt:m1e,atan2:y1e,round:v1e}=Math,iN=(...e)=>{const[r,n,o]=jt(e,"lab"),i=m1e(n*n+o*o);let a=(y1e(o,n)*r1e+360)%360;return v1e(i*1e4)===0&&(a=Number.NaN),[r,i,a]},d_=(...e)=>{const[r,n,o,...i]=jt(e,"rgb"),[a,l,s]=a_(r,n,o),[c,d,u]=iN(a,l,s);return[c,d,u,...i.length>0&&i[0]<1?[i[0]]:[]]};Me.prototype.lch=function(){return d_(this._rgb)},Me.prototype.hcl=function(){return JM(d_(this._rgb))},Object.assign(zt,{lch:(...e)=>new Me(...e,"lch"),hcl:(...e)=>new Me(...e,"hcl")}),Rt.format.lch=c_,Rt.format.hcl=g1e,["lch","hcl"].forEach(e=>Rt.autodetect.push({p:2,test:(...r)=>{if(r=jt(r,e),Ft(r)==="array"&&r.length===3)return e}})),Me.prototype.saturate=function(e=1){const r=this,n=r.lch();return n[1]+=Fl.Kn*e,n[1]<0&&(n[1]=0),new Me(n,"lch").alpha(r.alpha(),!0)},Me.prototype.desaturate=function(e=1){return this.saturate(-e)},Me.prototype.set=function(e,r,n=!1){const[o,i]=e.split("."),a=this[o]();if(i){const l=o.indexOf(i)-(o.substr(0,2)==="ok"?2:0);if(l>-1){if(Ft(r)=="string")switch(r.charAt(0)){case"+":a[l]+=+r;break;case"-":a[l]+=+r;break;case"*":a[l]*=+r.substr(1);break;case"/":a[l]/=+r.substr(1);break;default:a[l]=+r}else if(Ft(r)==="number")a[l]=r;else throw new Error("unsupported value for Color.set");const s=new Me(a,o);return n?(this._rgb=s._rgb,this):s}throw new Error(`unknown channel ${i} in mode ${o}`)}else return a},Me.prototype.tint=function(e=.5,...r){return Th(this,"white",e,...r)},Me.prototype.shade=function(e=.5,...r){return Th(this,"black",e,...r)};const b1e=(e,r,n)=>{const o=e._rgb,i=r._rgb;return new Me(o[0]+n*(i[0]-o[0]),o[1]+n*(i[1]-o[1]),o[2]+n*(i[2]-o[2]),"rgb")};bo.rgb=b1e;const{sqrt:u_,pow:jh}=Math,x1e=(e,r,n)=>{const[o,i,a]=e._rgb,[l,s,c]=r._rgb;return new Me(u_(jh(o,2)*(1-n)+jh(l,2)*n),u_(jh(i,2)*(1-n)+jh(s,2)*n),u_(jh(a,2)*(1-n)+jh(c,2)*n),"rgb")};bo.lrgb=x1e;const w1e=(e,r,n)=>{const o=e.lab(),i=r.lab();return new Me(o[0]+n*(i[0]-o[0]),o[1]+n*(i[1]-o[1]),o[2]+n*(i[2]-o[2]),"lab")};bo.lab=w1e;const Ah=(e,r,n,o)=>{let i,a;o==="hsl"?(i=e.hsl(),a=r.hsl()):o==="hsv"?(i=e.hsv(),a=r.hsv()):o==="hcg"?(i=e.hcg(),a=r.hcg()):o==="hsi"?(i=e.hsi(),a=r.hsi()):o==="lch"||o==="hcl"?(o="hcl",i=e.hcl(),a=r.hcl()):o==="oklch"&&(i=e.oklch().reverse(),a=r.oklch().reverse());let l,s,c,d,u,p;(o.substr(0,1)==="h"||o==="oklch")&&([l,c,u]=i,[s,d,p]=a);let f,m,v,w;return!isNaN(l)&&!isNaN(s)?(s>l&&s-l>180?w=s-(l+360):s180?w=s+360-l:w=s-l,m=l+n*w):isNaN(l)?isNaN(s)?m=Number.NaN:(m=s,(u==1||u==0)&&o!="hsv"&&(f=d)):(m=l,(p==1||p==0)&&o!="hsv"&&(f=c)),f===void 0&&(f=c+n*(d-c)),v=u+n*(p-u),o==="oklch"?new Me([v,f,m],o):new Me([m,f,v],o)},aN=(e,r,n)=>Ah(e,r,n,"lch");bo.lch=aN,bo.hcl=aN;const k1e=e=>{if(Ft(e)=="number"&&e>=0&&e<=16777215){const r=e>>16,n=e>>8&255,o=e&255;return[r,n,o,1]}throw new Error("unknown num color: "+e)},_1e=(...e)=>{const[r,n,o]=jt(e,"rgb");return(r<<16)+(n<<8)+o};Me.prototype.num=function(){return _1e(this._rgb)},Object.assign(zt,{num:(...e)=>new Me(...e,"num")}),Rt.format.num=k1e,Rt.autodetect.push({p:5,test:(...e)=>{if(e.length===1&&Ft(e[0])==="number"&&e[0]>=0&&e[0]<=16777215)return"num"}});const S1e=(e,r,n)=>{const o=e.num(),i=r.num();return new Me(o+n*(i-o),"num")};bo.num=S1e;const{floor:E1e}=Math,C1e=(...e)=>{e=jt(e,"hcg");let[r,n,o]=e,i,a,l;o=o*255;const s=n*255;if(n===0)i=a=l=o;else{r===360&&(r=0),r>360&&(r-=360),r<0&&(r+=360),r/=60;const c=E1e(r),d=r-c,u=o*(1-n),p=u+s*(1-d),f=u+s*d,m=u+s;switch(c){case 0:[i,a,l]=[m,f,u];break;case 1:[i,a,l]=[p,m,u];break;case 2:[i,a,l]=[u,m,f];break;case 3:[i,a,l]=[u,p,m];break;case 4:[i,a,l]=[f,u,m];break;case 5:[i,a,l]=[m,u,p];break}}return[i,a,l,e.length>3?e[3]:1]},$1e=(...e)=>{const[r,n,o]=jt(e,"rgb"),i=ZM(r,n,o),a=QM(r,n,o),l=a-i,s=l*100/255,c=i/(255-l)*100;let d;return l===0?d=Number.NaN:(r===a&&(d=(n-o)/l),n===a&&(d=2+(o-r)/l),o===a&&(d=4+(r-n)/l),d*=60,d<0&&(d+=360)),[d,s,c]};Me.prototype.hcg=function(){return $1e(this._rgb)};const R1e=(...e)=>new Me(...e,"hcg");zt.hcg=R1e,Rt.format.hcg=C1e,Rt.autodetect.push({p:1,test:(...e)=>{if(e=jt(e,"hcg"),Ft(e)==="array"&&e.length===3)return"hcg"}});const z1e=(e,r,n)=>Ah(e,r,n,"hcg");bo.hcg=z1e;const{cos:Dh}=Math,T1e=(...e)=>{e=jt(e,"hsi");let[r,n,o]=e,i,a,l;return isNaN(r)&&(r=0),isNaN(n)&&(n=0),r>360&&(r-=360),r<0&&(r+=360),r/=360,r<1/3?(l=(1-n)/3,i=(1+n*Dh(As*r)/Dh(n_-As*r))/3,a=1-(l+i)):r<2/3?(r-=1/3,i=(1-n)/3,a=(1+n*Dh(As*r)/Dh(n_-As*r))/3,l=1-(i+a)):(r-=2/3,a=(1-n)/3,l=(1+n*Dh(As*r)/Dh(n_-As*r))/3,i=1-(a+l)),i=Au(o*i*3),a=Au(o*a*3),l=Au(o*l*3),[i*255,a*255,l*255,e.length>3?e[3]:1]},{min:j1e,sqrt:A1e,acos:D1e}=Math,P1e=(...e)=>{let[r,n,o]=jt(e,"rgb");r/=255,n/=255,o/=255;let i;const a=j1e(r,n,o),l=(r+n+o)/3,s=l>0?1-a/l:0;return s===0?i=NaN:(i=(r-n+(r-o))/2,i/=A1e((r-n)*(r-n)+(r-o)*(n-o)),i=D1e(i),o>n&&(i=As-i),i/=As),[i*360,s,l]};Me.prototype.hsi=function(){return P1e(this._rgb)};const M1e=(...e)=>new Me(...e,"hsi");zt.hsi=M1e,Rt.format.hsi=T1e,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"hsi"),Ft(e)==="array"&&e.length===3)return"hsi"}});const N1e=(e,r,n)=>Ah(e,r,n,"hsi");bo.hsi=N1e;const p_=(...e)=>{e=jt(e,"hsl");const[r,n,o]=e;let i,a,l;if(n===0)i=a=l=o*255;else{const s=[0,0,0],c=[0,0,0],d=o<.5?o*(1+n):o+n-o*n,u=2*o-d,p=r/360;s[0]=p+1/3,s[1]=p,s[2]=p-1/3;for(let f=0;f<3;f++)s[f]<0&&(s[f]+=1),s[f]>1&&(s[f]-=1),6*s[f]<1?c[f]=u+(d-u)*6*s[f]:2*s[f]<1?c[f]=d:3*s[f]<2?c[f]=u+(d-u)*(2/3-s[f])*6:c[f]=u;[i,a,l]=[c[0]*255,c[1]*255,c[2]*255]}return e.length>3?[i,a,l,e[3]]:[i,a,l,1]},lN=(...e)=>{e=jt(e,"rgba");let[r,n,o]=e;r/=255,n/=255,o/=255;const i=ZM(r,n,o),a=QM(r,n,o),l=(a+i)/2;let s,c;return a===i?(s=0,c=Number.NaN):s=l<.5?(a-i)/(a+i):(a-i)/(2-a-i),r==a?c=(n-o)/(a-i):n==a?c=2+(o-r)/(a-i):o==a&&(c=4+(r-n)/(a-i)),c*=60,c<0&&(c+=360),e.length>3&&e[3]!==void 0?[c,s,l,e[3]]:[c,s,l]};Me.prototype.hsl=function(){return lN(this._rgb)};const B1e=(...e)=>new Me(...e,"hsl");zt.hsl=B1e,Rt.format.hsl=p_,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"hsl"),Ft(e)==="array"&&e.length===3)return"hsl"}});const I1e=(e,r,n)=>Ah(e,r,n,"hsl");bo.hsl=I1e;const{floor:O1e}=Math,L1e=(...e)=>{e=jt(e,"hsv");let[r,n,o]=e,i,a,l;if(o*=255,n===0)i=a=l=o;else{r===360&&(r=0),r>360&&(r-=360),r<0&&(r+=360),r/=60;const s=O1e(r),c=r-s,d=o*(1-n),u=o*(1-n*c),p=o*(1-n*(1-c));switch(s){case 0:[i,a,l]=[o,p,d];break;case 1:[i,a,l]=[u,o,d];break;case 2:[i,a,l]=[d,o,p];break;case 3:[i,a,l]=[d,u,o];break;case 4:[i,a,l]=[p,d,o];break;case 5:[i,a,l]=[o,d,u];break}}return[i,a,l,e.length>3?e[3]:1]},{min:F1e,max:V1e}=Math,q1e=(...e)=>{e=jt(e,"rgb");let[r,n,o]=e;const i=F1e(r,n,o),a=V1e(r,n,o),l=a-i;let s,c,d;return d=a/255,a===0?(s=Number.NaN,c=0):(c=l/a,r===a&&(s=(n-o)/l),n===a&&(s=2+(o-r)/l),o===a&&(s=4+(r-n)/l),s*=60,s<0&&(s+=360)),[s,c,d]};Me.prototype.hsv=function(){return q1e(this._rgb)};const H1e=(...e)=>new Me(...e,"hsv");zt.hsv=H1e,Rt.format.hsv=L1e,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"hsv"),Ft(e)==="array"&&e.length===3)return"hsv"}});const U1e=(e,r,n)=>Ah(e,r,n,"hsv");bo.hsv=U1e;function xb(e,r){let n=e.length;Array.isArray(e[0])||(e=[e]),Array.isArray(r[0])||(r=r.map(l=>[l]));let o=r[0].length,i=r[0].map((l,s)=>r.map(c=>c[s])),a=e.map(l=>i.map(s=>Array.isArray(l)?l.reduce((c,d,u)=>c+d*(s[u]||0),0):s.reduce((c,d)=>c+d*l,0)));return n===1&&(a=a[0]),o===1?a.map(l=>l[0]):a}const h_=(...e)=>{e=jt(e,"lab");const[r,n,o,...i]=e,[a,l,s]=W1e([r,n,o]),[c,d,u]=rN(a,l,s);return[c,d,u,...i.length>0&&i[0]<1?[i[0]]:[]]};function W1e(e){var r=[[1.2268798758459243,-.5578149944602171,.2813910456659647],[-.0405757452148008,1.112286803280317,-.0717110580655164],[-.0763729366746601,-.4214933324022432,1.5869240198367816]],n=[[1,.3963377773761749,.2158037573099136],[1,-.1055613458156586,-.0638541728258133],[1,-.0894841775298119,-1.2914855480194092]],o=xb(n,e);return xb(r,o.map(i=>i**3))}const f_=(...e)=>{const[r,n,o,...i]=jt(e,"rgb"),a=nN(r,n,o);return[...G1e(a),...i.length>0&&i[0]<1?[i[0]]:[]]};function G1e(e){const r=[[.819022437996703,.3619062600528904,-.1288737815209879],[.0329836539323885,.9292868615863434,.0361446663506424],[.0481771893596242,.2642395317527308,.6335478284694309]],n=[[.210454268309314,.7936177747023054,-.0040720430116193],[1.9779985324311684,-2.42859224204858,.450593709617411],[.0259040424655478,.7827717124575296,-.8086757549230774]],o=xb(r,e);return xb(n,o.map(i=>Math.cbrt(i)))}Me.prototype.oklab=function(){return f_(this._rgb)},Object.assign(zt,{oklab:(...e)=>new Me(...e,"oklab")}),Rt.format.oklab=h_,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"oklab"),Ft(e)==="array"&&e.length===3)return"oklab"}});const Y1e=(e,r,n)=>{const o=e.oklab(),i=r.oklab();return new Me(o[0]+n*(i[0]-o[0]),o[1]+n*(i[1]-o[1]),o[2]+n*(i[2]-o[2]),"oklab")};bo.oklab=Y1e;const X1e=(e,r,n)=>Ah(e,r,n,"oklch");bo.oklch=X1e;const{pow:g_,sqrt:m_,PI:y_,cos:sN,sin:cN,atan2:K1e}=Math,Z1e=(e,r="lrgb",n=null)=>{const o=e.length;n||(n=Array.from(new Array(o)).map(()=>1));const i=o/n.reduce(function(p,f){return p+f});if(n.forEach((p,f)=>{n[f]*=i}),e=e.map(p=>new Me(p)),r==="lrgb")return Q1e(e,n);const a=e.shift(),l=a.get(r),s=[];let c=0,d=0;for(let p=0;p{const m=p.get(r);u+=p.alpha()*n[f+1];for(let v=0;v=360;)f-=360;l[p]=f}else l[p]=l[p]/s[p];return u/=o,new Me(l,r).alpha(u>.99999?1:u,!0)},Q1e=(e,r)=>{const n=e.length,o=[0,0,0,0];for(let i=0;i.9999999&&(o[3]=1),new Me(t_(o))},{pow:J1e}=Math;function wb(e){let r="rgb",n=zt("#ccc"),o=0,i=[0,1],a=[0,1],l=[],s=[0,0],c=!1,d=[],u=!1,p=0,f=1,m=!1,v={},w=!0,x=1;const k=function(z){if(z=z||["#fff","#000"],z&&Ft(z)==="string"&&zt.brewer&&zt.brewer[z.toLowerCase()]&&(z=zt.brewer[z.toLowerCase()]),Ft(z)==="array"){z.length===1&&(z=[z[0],z[0]]),z=z.slice(0);for(let j=0;j=c[I];)I++;return I-1}return 0};let _=z=>z,$=z=>z;const R=function(z,j){let I,N;if(j==null&&(j=!1),isNaN(z)||z===null)return n;j?N=z:c&&c.length>2?N=C(z)/(c.length-2):f!==p?N=(z-p)/(f-p):N=1,N=$(N),j||(N=_(N)),x!==1&&(N=J1e(N,x)),N=s[0]+N*(1-s[0]-s[1]),N=Au(N,0,1);const L=Math.floor(N*1e4);if(w&&v[L])I=v[L];else{if(Ft(d)==="array")for(let H=0;H=P&&H===l.length-1){I=d[H];break}if(N>P&&Nv={};k(e);const A=function(z){const j=zt(R(z));return u&&j[u]?j[u]():j};return A.classes=function(z){if(z!=null){if(Ft(z)==="array")c=z,i=[z[0],z[z.length-1]];else{const j=zt.analyze(i);z===0?c=[j.min,j.max]:c=zt.limits(j,"e",z)}return A}return c},A.domain=function(z){if(!arguments.length)return a;a=z.slice(0),p=z[0],f=z[z.length-1],l=[];const j=d.length;if(z.length===j&&p!==f)for(let I of Array.from(z))l.push((I-p)/(f-p));else{for(let I=0;I2){const I=z.map((L,H)=>H/(z.length-1)),N=z.map(L=>(L-p)/(f-p));N.every((L,H)=>I[H]===L)||($=L=>{if(L<=0||L>=1)return L;let H=0;for(;L>=N[H+1];)H++;const P=(L-N[H])/(N[H+1]-N[H]);return I[H]+P*(I[H+1]-I[H])})}}return i=[p,f],A},A.mode=function(z){return arguments.length?(r=z,T(),A):r},A.range=function(z,j){return k(z),A},A.out=function(z){return u=z,A},A.spread=function(z){return arguments.length?(o=z,A):o},A.correctLightness=function(z){return z==null&&(z=!0),m=z,T(),m?_=function(j){const I=R(0,!0).lab()[0],N=R(1,!0).lab()[0],L=I>N;let H=R(j,!0).lab()[0];const P=I+(N-I)*j;let V=H-P,B=0,F=1,q=20;for(;Math.abs(V)>.01&&q-- >0;)(function(){return L&&(V*=-1),V<0?(B=j,j+=(F-j)*.5):(F=j,j+=(B-j)*.5),H=R(j,!0).lab()[0],V=H-P})();return j}:_=j=>j,A},A.padding=function(z){return z!=null?(Ft(z)==="number"&&(z=[z,z]),s=z,A):s},A.colors=function(z,j){arguments.length<2&&(j="hex");let I=[];if(arguments.length===0)I=d.slice(0);else if(z===1)I=[A(.5)];else if(z>1){const N=i[0],L=i[1]-N;I=eye(0,z).map(H=>A(N+H/(z-1)*L))}else{e=[];let N=[];if(c&&c.length>2)for(let L=1,H=c.length,P=1<=H;P?LH;P?L++:L--)N.push((c[L-1]+c[L])*.5);else N=i;I=N.map(L=>A(L))}return zt[j]&&(I=I.map(N=>N[j]())),I},A.cache=function(z){return z!=null?(w=z,A):w},A.gamma=function(z){return z!=null?(x=z,A):x},A.nodata=function(z){return z!=null?(n=zt(z),A):n},A}function eye(e,r,n){let o=[],i=ea;i?l++:l--)o.push(l);return o}const tye=function(e){let r=[1,1];for(let n=1;nnew Me(a)),e.length===2)[n,o]=e.map(a=>a.lab()),r=function(a){const l=[0,1,2].map(s=>n[s]+a*(o[s]-n[s]));return new Me(l,"lab")};else if(e.length===3)[n,o,i]=e.map(a=>a.lab()),r=function(a){const l=[0,1,2].map(s=>(1-a)*(1-a)*n[s]+2*(1-a)*a*o[s]+a*a*i[s]);return new Me(l,"lab")};else if(e.length===4){let a;[n,o,i,a]=e.map(l=>l.lab()),r=function(l){const s=[0,1,2].map(c=>(1-l)*(1-l)*(1-l)*n[c]+3*(1-l)*(1-l)*l*o[c]+3*(1-l)*l*l*i[c]+l*l*l*a[c]);return new Me(s,"lab")}}else if(e.length>=5){let a,l,s;a=e.map(c=>c.lab()),s=e.length-1,l=tye(s),r=function(c){const d=1-c,u=[0,1,2].map(p=>a.reduce((f,m,v)=>f+l[v]*d**(s-v)*c**v*m[p],0));return new Me(u,"lab")}}else throw new RangeError("No point in running bezier with only one color.");return r},nye=e=>{const r=rye(e);return r.scale=()=>wb(r),r},{round:dN}=Math;Me.prototype.rgb=function(e=!0){return e===!1?this._rgb.slice(0,3):this._rgb.slice(0,3).map(dN)},Me.prototype.rgba=function(e=!0){return this._rgb.slice(0,4).map((r,n)=>n<3?e===!1?r:dN(r):r)},Object.assign(zt,{rgb:(...e)=>new Me(...e,"rgb")}),Rt.format.rgb=(...e)=>{const r=jt(e,"rgba");return r[3]===void 0&&(r[3]=1),r},Rt.autodetect.push({p:3,test:(...e)=>{if(e=jt(e,"rgba"),Ft(e)==="array"&&(e.length===3||e.length===4&&Ft(e[3])=="number"&&e[3]>=0&&e[3]<=1))return"rgb"}});const qa=(e,r,n)=>{if(!qa[n])throw new Error("unknown blend mode "+n);return qa[n](e,r)},Kc=e=>(r,n)=>{const o=zt(n).rgb(),i=zt(r).rgb();return zt.rgb(e(o,i))},Zc=e=>(r,n)=>{const o=[];return o[0]=e(r[0],n[0]),o[1]=e(r[1],n[1]),o[2]=e(r[2],n[2]),o},oye=e=>e,iye=(e,r)=>e*r/255,aye=(e,r)=>e>r?r:e,lye=(e,r)=>e>r?e:r,sye=(e,r)=>255*(1-(1-e/255)*(1-r/255)),cye=(e,r)=>r<128?2*e*r/255:255*(1-2*(1-e/255)*(1-r/255)),dye=(e,r)=>255*(1-(1-r/255)/(e/255)),uye=(e,r)=>e===255?255:(e=255*(r/255)/(1-e/255),e>255?255:e);qa.normal=Kc(Zc(oye)),qa.multiply=Kc(Zc(iye)),qa.screen=Kc(Zc(sye)),qa.overlay=Kc(Zc(cye)),qa.darken=Kc(Zc(aye)),qa.lighten=Kc(Zc(lye)),qa.dodge=Kc(Zc(uye)),qa.burn=Kc(Zc(dye));const{pow:pye,sin:hye,cos:fye}=Math;function gye(e=300,r=-1.5,n=1,o=1,i=[0,1]){let a=0,l;Ft(i)==="array"?l=i[1]-i[0]:(l=0,i=[i,i]);const s=function(c){const d=As*((e+120)/360+r*c),u=pye(i[0]+l*c,o),f=(a!==0?n[0]+c*a:n)*u*(1-u)/2,m=fye(d),v=hye(d),w=u+f*(-.14861*m+1.78277*v),x=u+f*(-.29227*m-.90649*v),k=u+f*(1.97294*m);return zt(t_([w*255,x*255,k*255,1]))};return s.start=function(c){return c==null?e:(e=c,s)},s.rotations=function(c){return c==null?r:(r=c,s)},s.gamma=function(c){return c==null?o:(o=c,s)},s.hue=function(c){return c==null?n:(n=c,Ft(n)==="array"?(a=n[1]-n[0],a===0&&(n=n[1])):a=0,s)},s.lightness=function(c){return c==null?i:(Ft(c)==="array"?(i=c,l=c[1]-c[0]):(i=[c,c],l=0),s)},s.scale=()=>zt.scale(s),s.hue(n),s}const mye="0123456789abcdef",{floor:yye,random:vye}=Math,bye=(e=vye)=>{let r="#";for(let n=0;n<6;n++)r+=mye.charAt(yye(e()*16));return new Me(r,"hex")},{log:uN,pow:xye,floor:wye,abs:kye}=Math;function pN(e,r=null){const n={min:Number.MAX_VALUE,max:Number.MAX_VALUE*-1,sum:0,values:[],count:0};return Ft(e)==="object"&&(e=Object.values(e)),e.forEach(o=>{r&&Ft(o)==="object"&&(o=o[r]),o!=null&&!isNaN(o)&&(n.values.push(o),n.sum+=o,on.max&&(n.max=o),n.count+=1)}),n.domain=[n.min,n.max],n.limits=(o,i)=>hN(n,o,i),n}function hN(e,r="equal",n=7){Ft(e)=="array"&&(e=pN(e));const{min:o,max:i}=e,a=e.values.sort((s,c)=>s-c);if(n===1)return[o,i];const l=[];if(r.substr(0,1)==="c"&&(l.push(o),l.push(i)),r.substr(0,1)==="e"){l.push(o);for(let s=1;s 0");const s=Math.LOG10E*uN(o),c=Math.LOG10E*uN(i);l.push(o);for(let d=1;d200&&(p=!1)}const v={};for(let x=0;xx-k),l.push(w[0]);for(let x=1;x{e=new Me(e),r=new Me(r);const n=e.luminance(),o=r.luminance();return n>o?(n+.05)/(o+.05):(o+.05)/(n+.05)};const fN=.027,Sye=5e-4,Eye=.1,gN=1.14,kb=.022,mN=1.414,Cye=(e,r)=>{e=new Me(e),r=new Me(r),e.alpha()<1&&(e=Th(r,e,e.alpha(),"rgb"));const n=yN(...e.rgb()),o=yN(...r.rgb()),i=n>=kb?n:n+Math.pow(kb-n,mN),a=o>=kb?o:o+Math.pow(kb-o,mN),l=Math.pow(a,.56)-Math.pow(i,.57),s=Math.pow(a,.65)-Math.pow(i,.62),c=Math.abs(a-i)0?c-fN:c+fN)*100};function yN(e,r,n){return .2126729*Math.pow(e/255,2.4)+.7151522*Math.pow(r/255,2.4)+.072175*Math.pow(n/255,2.4)}const{sqrt:Ps,pow:yn,min:$ye,max:Rye,atan2:vN,abs:bN,cos:_b,sin:xN,exp:zye,PI:wN}=Math;function Tye(e,r,n=1,o=1,i=1){var a=function(O){return 360*O/(2*wN)},l=function(O){return 2*wN*O/360};e=new Me(e),r=new Me(r);const[s,c,d]=Array.from(e.lab()),[u,p,f]=Array.from(r.lab()),m=(s+u)/2,v=Ps(yn(c,2)+yn(d,2)),w=Ps(yn(p,2)+yn(f,2)),x=(v+w)/2,k=.5*(1-Ps(yn(x,7)/(yn(x,7)+yn(25,7)))),C=c*(1+k),_=p*(1+k),$=Ps(yn(C,2)+yn(d,2)),R=Ps(yn(_,2)+yn(f,2)),T=($+R)/2,A=a(vN(d,C)),z=a(vN(f,_)),j=A>=0?A:A+360,I=z>=0?z:z+360,N=bN(j-I)>180?(j+I+360)/2:(j+I)/2,L=1-.17*_b(l(N-30))+.24*_b(l(2*N))+.32*_b(l(3*N+6))-.2*_b(l(4*N-63));let H=I-j;H=bN(H)<=180?H:I<=j?H+360:H-360,H=2*Ps($*R)*xN(l(H)/2);const P=u-s,V=R-$,B=1+.015*yn(m-50,2)/Ps(20+yn(m-50,2)),F=1+.045*T,q=1+.015*T*L,G=30*zye(-yn((N-275)/25,2)),Y=-(2*Ps(yn(T,7)/(yn(T,7)+yn(25,7))))*xN(2*l(G)),K=Ps(yn(P/(n*B),2)+yn(V/(o*F),2)+yn(H/(i*q),2)+Y*(V/(o*F))*(H/(i*q)));return Rye(0,$ye(100,K))}function jye(e,r,n="lab"){e=new Me(e),r=new Me(r);const o=e.get(n),i=r.get(n);let a=0;for(let l in o){const s=(o[l]||0)-(i[l]||0);a+=s*s}return Math.sqrt(a)}const Aye=(...e)=>{try{return new Me(...e),!0}catch{return!1}},Dye={cool(){return wb([zt.hsl(180,1,.9),zt.hsl(250,.7,.4)])},hot(){return wb(["#000","#f00","#ff0","#fff"]).mode("rgb")}},v_={OrRd:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"],PuBu:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"],BuPu:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"],Oranges:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"],BuGn:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"],YlOrBr:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"],YlGn:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"],Reds:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"],RdPu:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"],Greens:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"],YlGnBu:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"],Purples:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"],GnBu:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"],Greys:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"],YlOrRd:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"],PuRd:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"],Blues:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"],PuBuGn:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"],Viridis:["#440154","#482777","#3f4a8a","#31678e","#26838f","#1f9d8a","#6cce5a","#b6de2b","#fee825"],Spectral:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],RdYlGn:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],RdBu:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],PiYG:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],PRGn:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],RdYlBu:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],BrBG:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],RdGy:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],PuOr:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],Set2:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"],Accent:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"],Set1:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"],Set3:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"],Dark2:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"],Paired:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"],Pastel2:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"],Pastel1:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},kN=Object.keys(v_),_N=new Map(kN.map(e=>[e.toLowerCase(),e])),Pye=typeof Proxy=="function"?new Proxy(v_,{get(e,r){const n=r.toLowerCase();if(_N.has(n))return e[_N.get(n)]},getOwnPropertyNames(){return Object.getOwnPropertyNames(kN)}}):v_,Mye=(...e)=>{e=jt(e,"cmyk");const[r,n,o,i]=e,a=e.length>4?e[4]:1;return i===1?[0,0,0,a]:[r>=1?0:255*(1-r)*(1-i),n>=1?0:255*(1-n)*(1-i),o>=1?0:255*(1-o)*(1-i),a]},{max:SN}=Math,Nye=(...e)=>{let[r,n,o]=jt(e,"rgb");r=r/255,n=n/255,o=o/255;const i=1-SN(r,SN(n,o)),a=i<1?1/(1-i):0,l=(1-r-i)*a,s=(1-n-i)*a,c=(1-o-i)*a;return[l,s,c,i]};Me.prototype.cmyk=function(){return Nye(this._rgb)},Object.assign(zt,{cmyk:(...e)=>new Me(...e,"cmyk")}),Rt.format.cmyk=Mye,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"cmyk"),Ft(e)==="array"&&e.length===4)return"cmyk"}});const Bye=(...e)=>{const r=jt(e,"hsla");let n=Rh(e)||"lsa";return r[0]=Ki(r[0]||0)+"deg",r[1]=Ki(r[1]*100)+"%",r[2]=Ki(r[2]*100)+"%",n==="hsla"||r.length>3&&r[3]<1?(r[3]="/ "+(r.length>3?r[3]:1),n="hsla"):r.length=3,`${n.substr(0,3)}(${r.join(" ")})`},Iye=(...e)=>{const r=jt(e,"lab");let n=Rh(e)||"lab";return r[0]=Ki(r[0])+"%",r[1]=Ki(r[1]),r[2]=Ki(r[2]),n==="laba"||r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`lab(${r.join(" ")})`},Oye=(...e)=>{const r=jt(e,"lch");let n=Rh(e)||"lab";return r[0]=Ki(r[0])+"%",r[1]=Ki(r[1]),r[2]=isNaN(r[2])?"none":Ki(r[2])+"deg",n==="lcha"||r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`lch(${r.join(" ")})`},Lye=(...e)=>{const r=jt(e,"lab");return r[0]=Ki(r[0]*100)+"%",r[1]=r_(r[1]),r[2]=r_(r[2]),r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`oklab(${r.join(" ")})`},EN=(...e)=>{const[r,n,o,...i]=jt(e,"rgb"),[a,l,s]=f_(r,n,o),[c,d,u]=iN(a,l,s);return[c,d,u,...i.length>0&&i[0]<1?[i[0]]:[]]},Fye=(...e)=>{const r=jt(e,"lch");return r[0]=Ki(r[0]*100)+"%",r[1]=r_(r[1]),r[2]=isNaN(r[2])?"none":Ki(r[2])+"deg",r.length>3&&r[3]<1?r[3]="/ "+(r.length>3?r[3]:1):r.length=3,`oklch(${r.join(" ")})`},{round:b_}=Math,Vye=(...e)=>{const r=jt(e,"rgba");let n=Rh(e)||"rgb";if(n.substr(0,3)==="hsl")return Bye(lN(r),n);if(n.substr(0,3)==="lab"){const o=Zm();Ds("d50");const i=Iye(a_(r),n);return Ds(o),i}if(n.substr(0,3)==="lch"){const o=Zm();Ds("d50");const i=Oye(d_(r),n);return Ds(o),i}return n.substr(0,5)==="oklab"?Lye(f_(r)):n.substr(0,5)==="oklch"?Fye(EN(r)):(r[0]=b_(r[0]),r[1]=b_(r[1]),r[2]=b_(r[2]),(n==="rgba"||r.length>3&&r[3]<1)&&(r[3]="/ "+(r.length>3?r[3]:1),n="rgba"),`${n.substr(0,3)}(${r.slice(0,n==="rgb"?3:4).join(" ")})`)},CN=(...e)=>{e=jt(e,"lch");const[r,n,o,...i]=e,[a,l,s]=oN(r,n,o),[c,d,u]=h_(a,l,s);return[c,d,u,...i.length>0&&i[0]<1?[i[0]]:[]]},Ms=/((?:-?\d+)|(?:-?\d+(?:\.\d+)?)%|none)/.source,Ha=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%?)|none)/.source,Sb=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%)|none)/.source,Zi=/\s*/.source,Ph=/\s+/.source,x_=/\s*,\s*/.source,Eb=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)(?:deg)?)|none)/.source,Mh=/\s*(?:\/\s*((?:[01]|[01]?\.\d+)|\d+(?:\.\d+)?%))?/.source,$N=new RegExp("^rgba?\\("+Zi+[Ms,Ms,Ms].join(Ph)+Mh+"\\)$"),RN=new RegExp("^rgb\\("+Zi+[Ms,Ms,Ms].join(x_)+Zi+"\\)$"),zN=new RegExp("^rgba\\("+Zi+[Ms,Ms,Ms,Ha].join(x_)+Zi+"\\)$"),TN=new RegExp("^hsla?\\("+Zi+[Eb,Sb,Sb].join(Ph)+Mh+"\\)$"),jN=new RegExp("^hsl?\\("+Zi+[Eb,Sb,Sb].join(x_)+Zi+"\\)$"),AN=/^hsla\(\s*(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*,\s*([01]|[01]?\.\d+)\)$/,DN=new RegExp("^lab\\("+Zi+[Ha,Ha,Ha].join(Ph)+Mh+"\\)$"),PN=new RegExp("^lch\\("+Zi+[Ha,Ha,Eb].join(Ph)+Mh+"\\)$"),MN=new RegExp("^oklab\\("+Zi+[Ha,Ha,Ha].join(Ph)+Mh+"\\)$"),NN=new RegExp("^oklch\\("+Zi+[Ha,Ha,Eb].join(Ph)+Mh+"\\)$"),{round:BN}=Math,Nh=e=>e.map((r,n)=>n<=2?Au(BN(r),0,255):r),vn=(e,r=0,n=100,o=!1)=>(typeof e=="string"&&e.endsWith("%")&&(e=parseFloat(e.substring(0,e.length-1))/100,o?e=r+(e+1)*.5*(n-r):e=r+e*(n-r)),+e),No=(e,r)=>e==="none"?r:e,w_=e=>{if(e=e.toLowerCase().trim(),e==="transparent")return[0,0,0,0];let r;if(Rt.format.named)try{return Rt.format.named(e)}catch{}if((r=e.match($N))||(r=e.match(RN))){let n=r.slice(1,4);for(let i=0;i<3;i++)n[i]=+vn(No(n[i],0),0,255);n=Nh(n);const o=r[4]!==void 0?+vn(r[4],0,1):1;return n[3]=o,n}if(r=e.match(zN)){const n=r.slice(1,5);for(let o=0;o<4;o++)n[o]=+vn(n[o],0,255);return n}if((r=e.match(TN))||(r=e.match(jN))){const n=r.slice(1,4);n[0]=+No(n[0].replace("deg",""),0),n[1]=+vn(No(n[1],0),0,100)*.01,n[2]=+vn(No(n[2],0),0,100)*.01;const o=Nh(p_(n)),i=r[4]!==void 0?+vn(r[4],0,1):1;return o[3]=i,o}if(r=e.match(AN)){const n=r.slice(1,4);n[1]*=.01,n[2]*=.01;const o=p_(n);for(let i=0;i<3;i++)o[i]=BN(o[i]);return o[3]=+r[4],o}if(r=e.match(DN)){const n=r.slice(1,4);n[0]=vn(No(n[0],0),0,100),n[1]=vn(No(n[1],0),-125,125,!0),n[2]=vn(No(n[2],0),-125,125,!0);const o=Zm();Ds("d50");const i=Nh(o_(n));Ds(o);const a=r[4]!==void 0?+vn(r[4],0,1):1;return i[3]=a,i}if(r=e.match(PN)){const n=r.slice(1,4);n[0]=vn(n[0],0,100),n[1]=vn(No(n[1],0),0,150,!1),n[2]=+No(n[2].replace("deg",""),0);const o=Zm();Ds("d50");const i=Nh(c_(n));Ds(o);const a=r[4]!==void 0?+vn(r[4],0,1):1;return i[3]=a,i}if(r=e.match(MN)){const n=r.slice(1,4);n[0]=vn(No(n[0],0),0,1),n[1]=vn(No(n[1],0),-.4,.4,!0),n[2]=vn(No(n[2],0),-.4,.4,!0);const o=Nh(h_(n)),i=r[4]!==void 0?+vn(r[4],0,1):1;return o[3]=i,o}if(r=e.match(NN)){const n=r.slice(1,4);n[0]=vn(No(n[0],0),0,1),n[1]=vn(No(n[1],0),0,.4,!1),n[2]=+No(n[2].replace("deg",""),0);const o=Nh(CN(n)),i=r[4]!==void 0?+vn(r[4],0,1):1;return o[3]=i,o}};w_.test=e=>$N.test(e)||TN.test(e)||DN.test(e)||PN.test(e)||MN.test(e)||NN.test(e)||RN.test(e)||zN.test(e)||jN.test(e)||AN.test(e)||e==="transparent",Me.prototype.css=function(e){return Vye(this._rgb,e)};const qye=(...e)=>new Me(...e,"css");zt.css=qye,Rt.format.css=w_,Rt.autodetect.push({p:5,test:(e,...r)=>{if(!r.length&&Ft(e)==="string"&&w_.test(e))return"css"}}),Rt.format.gl=(...e)=>{const r=jt(e,"rgba");return r[0]*=255,r[1]*=255,r[2]*=255,r};const Hye=(...e)=>new Me(...e,"gl");zt.gl=Hye,Me.prototype.gl=function(){const e=this._rgb;return[e[0]/255,e[1]/255,e[2]/255,e[3]]},Me.prototype.hex=function(e){return tN(this._rgb,e)};const Uye=(...e)=>new Me(...e,"hex");zt.hex=Uye,Rt.format.hex=eN,Rt.autodetect.push({p:4,test:(e,...r)=>{if(!r.length&&Ft(e)==="string"&&[3,4,5,6,7,8,9].indexOf(e.length)>=0)return"hex"}});const{log:Cb}=Math,IN=e=>{const r=e/100;let n,o,i;return r<66?(n=255,o=r<6?0:-155.25485562709179-.44596950469579133*(o=r-2)+104.49216199393888*Cb(o),i=r<20?0:-254.76935184120902+.8274096064007395*(i=r-10)+115.67994401066147*Cb(i)):(n=351.97690566805693+.114206453784165*(n=r-55)-40.25366309332127*Cb(n),o=325.4494125711974+.07943456536662342*(o=r-50)-28.0852963507957*Cb(o),i=255),[n,o,i,1]},{round:Wye}=Math,Gye=(...e)=>{const r=jt(e,"rgb"),n=r[0],o=r[2];let i=1e3,a=4e4;const l=.4;let s;for(;a-i>l;){s=(a+i)*.5;const c=IN(s);c[2]/c[0]>=o/n?a=s:i=s}return Wye(s)};Me.prototype.temp=Me.prototype.kelvin=Me.prototype.temperature=function(){return Gye(this._rgb)};const k_=(...e)=>new Me(...e,"temp");Object.assign(zt,{temp:k_,kelvin:k_,temperature:k_}),Rt.format.temp=Rt.format.kelvin=Rt.format.temperature=IN,Me.prototype.oklch=function(){return EN(this._rgb)},Object.assign(zt,{oklch:(...e)=>new Me(...e,"oklch")}),Rt.format.oklch=CN,Rt.autodetect.push({p:2,test:(...e)=>{if(e=jt(e,"oklch"),Ft(e)==="array"&&e.length===3)return"oklch"}}),Object.assign(zt,{analyze:pN,average:Z1e,bezier:nye,blend:qa,brewer:Pye,Color:Me,colors:zh,contrast:_ye,contrastAPCA:Cye,cubehelix:gye,deltaE:Tye,distance:jye,input:Rt,interpolate:Th,limits:hN,mix:Th,random:bye,scale:wb,scales:Dye,valid:Aye});const __=[.96,.907,.805,.697,.605,.547,.518,.445,.395,.34],ON=[.32,.16,.08,.04,0,0,.04,.08,.16,.32];function Yye(e){const r=e.get("hsl.l");return __.reduce((n,o)=>Math.abs(o-r)a===n),i=__.map(a=>r.set("hsl.l",a)).map(a=>zt(a)).map((a,l)=>{const s=ON[l]-ON[o];return s>=0?a.saturate(s):a.desaturate(s*-1)});return i[o]=zt(e),{baseColorIndex:o,colors:i}}function Kye(e){return Xye(e).colors.map(r=>r.hex())}const LN={fill:"#3b82f6",stroke:"#2563eb",hiContrast:"#eff6ff",loContrast:"#bfdbfe"},FN={fill:"#0284c7",stroke:"#0369a1",hiContrast:"#f0f9ff",loContrast:"#B6ECF7"},VN={fill:"#64748b",stroke:"#475569",hiContrast:"#f8fafc",loContrast:"#cbd5e1"},Zye={primary:LN,blue:LN,secondary:FN,sky:FN,muted:VN,slate:VN,gray:{fill:"#737373",stroke:"#525252",hiContrast:"#fafafa",loContrast:"#d4d4d4"},red:{fill:"#AC4D39",stroke:"#853A2D",hiContrast:"#FBD3CB",loContrast:"#f5b2a3"},green:{fill:"#428a4f",stroke:"#2d5d39",hiContrast:"#f8fafc",loContrast:"#c2f0c2"},amber:{fill:"#A35829",stroke:"#7E451D",hiContrast:"#FFE0C2",loContrast:"#f9b27c"},indigo:{fill:"#6366f1",stroke:"#4f46e5",hiContrast:"#eef2ff",loContrast:"#c7d2fe"}},Qye={line:"#8D8D8D",labelBg:"#18191B",label:"#C9C9C9"},qN={line:"#64748b",labelBg:"#0f172a",label:"#cbd5e1"},HN={line:"#3b82f6",labelBg:"#172554",label:"#60a5fa"},UN={line:"#0ea5e9",labelBg:"#082f49",label:"#38bdf8"},Jye={amber:{line:"#b45309",labelBg:"#78350f",label:"#FFE0C2"},blue:HN,gray:Qye,green:{line:"#15803d",labelBg:"#052e16",label:"#22c55e"},indigo:{line:"#6366f1",labelBg:"#1e1b4b",label:"#818cf8"},muted:qN,primary:HN,red:{line:"#AC4D39",labelBg:"#b91c1c",label:"#f5b2a3"},secondary:UN,sky:UN,slate:qN},WN=60,GN=2,YN=1;function e0e(e){He(zt.valid(e),`Invalid color: ${e}`);const r=Kye(e),n=r[6],o=t0e(n);return{elements:{fill:n,stroke:r[7],hiContrast:o[0],loContrast:o[1]},relationships:{line:r[4],label:r[3],labelBg:r[9]}}}function t0e(e){const r=zt(e);let n=r.brighten(GN),o=r.darken(GN),i,a,l,s;do i=n,a=o,n=n.brighten(YN),o=o.darken(YN),l=zt.contrastAPCA(r,n),s=zt.contrastAPCA(r,o);while(Math.abs(l)Math.abs(s)?[n.brighten(.4).hex(),n.hex()]:[o.darken(.4).hex(),o.hex()]}const r0e={color:"primary",size:"md",opacity:15,shape:"rectangle",group:{opacity:15,border:"dashed"},relationship:{color:"gray",line:"dashed",arrow:"normal"}},n0e=["rectangle","person","browser","mobile","cylinder","storage","queue"],o0e={colors:Yme(["amber","blue","gray","slate","green","indigo","muted","primary","red","secondary","sky"],e=>({elements:Zye[e],relationships:Jye[e]})),sizes:{xs:{width:180,height:100},sm:{width:240,height:135},md:{width:320,height:180},lg:{width:420,height:234},xl:{width:520,height:290}},spacing:{xs:8,sm:10,md:16,lg:24,xl:32},textSizes:{xs:13.33,sm:16,md:19.2,lg:23.04,xl:27.65}};function $b({size:e,padding:r,textSize:n,...o},i=S_.defaults.size){return e??=i,n??=e,r??=e,{...o,size:e,padding:r,textSize:n}}const S_={theme:o0e,defaults:r0e};let XN=class OM{constructor(r){this.config=r,this.theme=r.theme,this.defaults=r.defaults}theme;defaults;static DEFAULT=new OM(S_);static from(...r){return Ll(r,1)?new OM(XM(...r,S_)):this.DEFAULT}get elementColors(){return this.theme.colors[this.defaults.color].elements}get relationshipColors(){return this.theme.colors[this.defaults.relationship.color].relationships}get groupColors(){const r=this.defaults.group?.color;return r?ar(this,"defaultGroup",()=>({...this.elementColors,...this.theme.colors[r].elements})):this.elementColors}isDefaultColor(r){return r===this.defaults.color}colors(r){if(r??=this.defaults.color,this.isThemeColor(r))return this.theme.colors[r];throw new Error(`Unknown color: ${r}`)}fontSize(r){return r??=this.defaults.text??this.defaults.size,this.theme.textSizes[r]}padding(r){return r??=this.defaults.padding??this.defaults.size,this.theme.spacing[r]}isThemeColor(r){return r in this.theme.colors}nodeSizes(r){const n=$b(r,this.defaults.size);return{sizes:n,values:{sizes:this.theme.sizes[n.size],padding:this.padding(n.padding),textSize:this.fontSize(n.textSize)}}}computeFrom(r){return this.isThemeColor(r)?this.theme.colors[r]:ar(this,`compute-${r}`,()=>{if(!zt.valid(r))throw new Error(`Invalid color value: "${r}"`);return e0e(r)})}equals(r){return r===this?!0:yb(this.config,r.config)}};function Qm(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Qc(e){return typeof e=="string"}const E_={done:!1,hasNext:!1};function Ns(e,...r){let n=e,o=r.map(a=>"lazy"in a?i0e(a):void 0),i=0;for(;i65;)++o;return+u.slice(p-1,o)}return f=c&&c.indexOf(u.charAt(p)),f>-1?f+76:(f=u.charCodeAt(p)||0,f<45||f>127?f:f<46?65:f<48?f-1:f<58?f+18:f<65?f-11:f<91?f+11:f<97?f-37:f<123?f+5:f-63)}if((r+="")!=(n+="")){for(;a;)if(i=d(r,l++),a=d(n,s++),i<76&&a<76&&i>66&&a>66&&(i=d(r,l,l),a=d(n,s,l=o),s=o),i!=a)return i{if(n===o)return 0;if(!n)return-1;if(!o)return 1;const i=n.split(e),a=o.split(e),l=Math.min(i.length,a.length);for(let c=0;c0?e.slice(0,r):null}function Jm(e){const r=e.lastIndexOf(".");return r>0?e.slice(r+1):e}const e1=e=>$_(e)?e:e.id;function Yn(e,r){const n=e1(e);return r?e1(r).startsWith(n+"."):o=>{const i=e1(o);return n.startsWith(i+".")}}function eB(e,r){if(!r)return i=>eB(e,i);const n=e1(e),o=e1(r);return n===o||o.startsWith(n+".")||n.startsWith(o+".")}function tB(e,r){return n=>Yn(e,n)}function Tb(e){return($_(e)?e:e.id).split(".").length}function t1(e,r){const n=e.split(".");if(n.length<2)return null;const o=r.split(".");if(o.length<2)return null;let i=[];for(let a=0;ai===0?(n.push(o),n):(n.unshift(`${n[0]}.${o}`),n),[])}function c0e(e,r){let n=r;for(const o of e)Yn(o,n)&&(n=o);return n!==r?n:null}function Jc(e){const r=[],n=[...e];let o;for(;o=n.shift();){let i;for(;i=c0e(n,o);)r.push(n.splice(n.indexOf(i),1)[0]);r.push(o)}return r}function rB(e,r){if(!e||$_(e)){const o=e??"asc";return i=>rB(i,o)}const n=r==="desc"?-1:1;return e.map(o=>({item:o,fqn:o.id.split(".")})).sort((o,i)=>{if(o.fqn.length!==i.fqn.length)return(o.fqn.length-i.fqn.length)*n;for(let a=0;ao)}var jb={},nB;function d0e(){return nB||(nB=1,jb.ARRAY_BUFFER_SUPPORT=typeof ArrayBuffer<"u",jb.SYMBOL_SUPPORT=typeof Symbol<"u"),jb}var R_,oB;function Ab(){if(oB)return R_;oB=1;var e=d0e(),r=e.ARRAY_BUFFER_SUPPORT,n=e.SYMBOL_SUPPORT;return R_=function(i,a){var l,s,c,d,u;if(!i)throw new Error("obliterator/forEach: invalid iterable.");if(typeof a!="function")throw new Error("obliterator/forEach: expecting a callback.");if(Array.isArray(i)||r&&ArrayBuffer.isView(i)||typeof i=="string"||i.toString()==="[object Arguments]"){for(c=0,d=i.length;c=n?{done:!0}:{done:!1,value:r[o++]}})},e.empty=function(){var r=new e(function(){return{done:!0}});return r},e.fromSequence=function(r){var n=0,o=r.length;return new e(function(){return n>=o?{done:!0}:{done:!1,value:r[n++]}})},e.is=function(r){return r instanceof e?!0:typeof r=="object"&&r!==null&&typeof r.next=="function"},z_=e,z_}const lB=-1,Db=0,r1=1,Pb=2,T_=3,j_=4,A_=5,D_=6,sB=7,cB=8,dB=typeof self=="object"?self:globalThis,u0e=(e,r)=>{const n=(i,a)=>(e.set(a,i),i),o=i=>{if(e.has(i))return e.get(i);const[a,l]=r[i];switch(a){case Db:case lB:return n(l,i);case r1:{const s=n([],i);for(const c of l)s.push(o(c));return s}case Pb:{const s=n({},i);for(const[c,d]of l)s[o(c)]=o(d);return s}case T_:return n(new Date(l),i);case j_:{const{source:s,flags:c}=l;return n(new RegExp(s,c),i)}case A_:{const s=n(new Map,i);for(const[c,d]of l)s.set(o(c),o(d));return s}case D_:{const s=n(new Set,i);for(const c of l)s.add(o(c));return s}case sB:{const{name:s,message:c}=l;return n(new dB[s](c),i)}case cB:return n(BigInt(l),i);case"BigInt":return n(Object(BigInt(l)),i);case"ArrayBuffer":return n(new Uint8Array(l).buffer,l);case"DataView":{const{buffer:s}=new Uint8Array(l);return n(new DataView(s),l)}}return n(new dB[a](l),i)};return o},uB=e=>u0e(new Map,e)(0),Bh="",{toString:p0e}={},{keys:h0e}=Object,n1=e=>{const r=typeof e;if(r!=="object"||!e)return[Db,r];const n=p0e.call(e).slice(8,-1);switch(n){case"Array":return[r1,Bh];case"Object":return[Pb,Bh];case"Date":return[T_,Bh];case"RegExp":return[j_,Bh];case"Map":return[A_,Bh];case"Set":return[D_,Bh];case"DataView":return[r1,n]}return n.includes("Array")?[r1,n]:n.includes("Error")?[sB,n]:[Pb,n]},Mb=([e,r])=>e===Db&&(r==="function"||r==="symbol"),f0e=(e,r,n,o)=>{const i=(l,s)=>{const c=o.push(l)-1;return n.set(s,c),c},a=l=>{if(n.has(l))return n.get(l);let[s,c]=n1(l);switch(s){case Db:{let u=l;switch(c){case"bigint":s=cB,u=l.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+c);u=null;break;case"undefined":return i([lB],l)}return i([s,u],l)}case r1:{if(c){let f=l;return c==="DataView"?f=new Uint8Array(l.buffer):c==="ArrayBuffer"&&(f=new Uint8Array(l)),i([c,[...f]],l)}const u=[],p=i([s,u],l);for(const f of l)u.push(a(f));return p}case Pb:{if(c)switch(c){case"BigInt":return i([c,l.toString()],l);case"Boolean":case"Number":case"String":return i([c,l.valueOf()],l)}if(r&&"toJSON"in l)return a(l.toJSON());const u=[],p=i([s,u],l);for(const f of h0e(l))(e||!Mb(n1(l[f])))&&u.push([a(f),a(l[f])]);return p}case T_:return i([s,l.toISOString()],l);case j_:{const{source:u,flags:p}=l;return i([s,{source:u,flags:p}],l)}case A_:{const u=[],p=i([s,u],l);for(const[f,m]of l)(e||!(Mb(n1(f))||Mb(n1(m))))&&u.push([a(f),a(m)]);return p}case D_:{const u=[],p=i([s,u],l);for(const f of l)(e||!Mb(n1(f)))&&u.push(a(f));return p}}const{message:d}=l;return i([s,{name:c,message:d}],l)};return a},pB=(e,{json:r,lossy:n}={})=>{const o=[];return f0e(!(r||n),!!r,new Map,o)(e),o},o1=typeof structuredClone=="function"?(e,r)=>r&&("json"in r||"lossy"in r)?uB(pB(e,r)):structuredClone(e):(e,r)=>uB(pB(e,r)),hB=gB("end"),fB=gB("start");function gB(e){return r;function r(n){const o=n&&n.position&&n.position[e]||{};if(typeof o.line=="number"&&o.line>0&&typeof o.column=="number"&&o.column>0)return{line:o.line,column:o.column,offset:typeof o.offset=="number"&&o.offset>-1?o.offset:void 0}}}function mB(e){const r=fB(e),n=hB(e);if(r&&n)return{start:r,end:n}}const Pu=["ariaDescribedBy","ariaLabel","ariaLabelledBy"],P_={ancestors:{tbody:["table"],td:["table"],th:["table"],thead:["table"],tfoot:["table"],tr:["table"]},attributes:{a:[...Pu,"dataFootnoteBackref","dataFootnoteRef",["className","data-footnote-backref"],"href"],blockquote:["cite"],code:[["className",/^language-./]],del:["cite"],div:["itemScope","itemType"],dl:[...Pu],h2:[["className","sr-only"]],img:[...Pu,"longDesc","src"],input:[["disabled",!0],["type","checkbox"]],ins:["cite"],li:[["className","task-list-item"]],ol:[...Pu,["className","contains-task-list"]],q:["cite"],section:["dataFootnotes",["className","footnotes"]],source:["srcSet"],summary:[...Pu],table:[...Pu],ul:[...Pu,["className","contains-task-list"]],"*":["abbr","accept","acceptCharset","accessKey","action","align","alt","axis","border","cellPadding","cellSpacing","char","charOff","charSet","checked","clear","colSpan","color","cols","compact","coords","dateTime","dir","encType","frame","hSpace","headers","height","hrefLang","htmlFor","id","isMap","itemProp","label","lang","maxLength","media","method","multiple","name","noHref","noShade","noWrap","open","prompt","readOnly","rev","rowSpan","rows","rules","scope","selected","shape","size","span","start","summary","tabIndex","title","useMap","vAlign","value","width"]},clobber:["ariaDescribedBy","ariaLabelledBy","id","name"],clobberPrefix:"user-content-",protocols:{cite:["http","https"],href:["http","https","irc","ircs","mailto","xmpp"],longDesc:["http","https"],src:["http","https"]},required:{input:{disabled:!0,type:"checkbox"}},strip:["script"],tagNames:["a","b","blockquote","br","code","dd","del","details","div","dl","dt","em","h1","h2","h3","h4","h5","h6","hr","i","img","input","ins","kbd","li","ol","p","picture","pre","q","rp","rt","ruby","s","samp","section","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","tr","tt","ul","var"]},ed={}.hasOwnProperty;function g0e(e,r){let n={type:"root",children:[]};const o={schema:r?{...P_,...r}:P_,stack:[]},i=yB(o,e);return i&&(Array.isArray(i)?i.length===1?n=i[0]:n.children=i:n=i),n}function yB(e,r){if(r&&typeof r=="object"){const n=r;switch(typeof n.type=="string"?n.type:""){case"comment":return m0e(e,n);case"doctype":return y0e(e,n);case"element":return v0e(e,n);case"root":return b0e(e,n);case"text":return x0e(e,n)}}}function m0e(e,r){if(e.schema.allowComments){const n=typeof r.value=="string"?r.value:"",o=n.indexOf("-->"),a={type:"comment",value:o<0?n:n.slice(0,o)};return i1(a,r),a}}function y0e(e,r){if(e.schema.allowDoctypes){const n={type:"doctype"};return i1(n,r),n}}function v0e(e,r){const n=typeof r.tagName=="string"?r.tagName:"";e.stack.push(n);const o=vB(e,r.children),i=w0e(e,r.properties);e.stack.pop();let a=!1;if(n&&n!=="*"&&(!e.schema.tagNames||e.schema.tagNames.includes(n))&&(a=!0,e.schema.ancestors&&ed.call(e.schema.ancestors,n))){const s=e.schema.ancestors[n];let c=-1;for(a=!1;++c1){let i=!1,a=0;for(;++a-1&&a>c||l>-1&&a>l||s>-1&&a>s)return!0;let d=-1;for(;++d4&&r.slice(0,4).toLowerCase()==="data")return n}function S0e(e){return function(r){return g0e(r,e)}}const E0e=["area","base","basefont","bgsound","br","col","command","embed","frame","hr","image","img","input","keygen","link","meta","param","source","track","wbr"];class a1{constructor(r,n,o){this.normal=n,this.property=r,o&&(this.space=o)}}a1.prototype.normal={},a1.prototype.property={},a1.prototype.space=void 0;function kB(e,r){const n={},o={};for(const i of e)Object.assign(n,i.property),Object.assign(o,i.normal);return new a1(n,o,r)}function M_(e){return e.toLowerCase()}class Jo{constructor(r,n){this.attribute=n,this.property=r}}Jo.prototype.attribute="",Jo.prototype.booleanish=!1,Jo.prototype.boolean=!1,Jo.prototype.commaOrSpaceSeparated=!1,Jo.prototype.commaSeparated=!1,Jo.prototype.defined=!1,Jo.prototype.mustUseProperty=!1,Jo.prototype.number=!1,Jo.prototype.overloadedBoolean=!1,Jo.prototype.property="",Jo.prototype.spaceSeparated=!1,Jo.prototype.space=void 0;let C0e=0;const At=Mu(),bn=Mu(),_B=Mu(),Ie=Mu(),Cr=Mu(),Ih=Mu(),bi=Mu();function Mu(){return 2**++C0e}const N_={__proto__:null,boolean:At,booleanish:bn,commaOrSpaceSeparated:bi,commaSeparated:Ih,number:Ie,overloadedBoolean:_B,spaceSeparated:Cr},B_=Object.keys(N_);class I_ extends Jo{constructor(r,n,o,i){let a=-1;if(super(r,n),SB(this,"space",i),typeof o=="number")for(;++a4&&n.slice(0,4)==="data"&&T0e.test(r)){if(r.charAt(4)==="-"){const a=r.slice(5).replace(jB,D0e);o="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=r.slice(4);if(!jB.test(a)){let l=a.replace(z0e,A0e);l.charAt(0)!=="-"&&(l="-"+l),r="data"+l}}i=I_}return new i(o,r)}function A0e(e){return"-"+e.toLowerCase()}function D0e(e){return e.charAt(1).toUpperCase()}const P0e=kB([EB,$0e,RB,zB,TB],"html"),AB=kB([EB,R0e,RB,zB,TB],"svg"),DB={}.hasOwnProperty;function M0e(e,r){const n=r||{};function o(i,...a){let l=o.invalid;const s=o.handlers;if(i&&DB.call(i,e)){const c=String(i[e]);l=DB.call(s,c)?s[c]:o.unknown}if(l)return l.call(this,i,...a)}return o.handlers=n.handlers||{},o.invalid=n.invalid,o.unknown=n.unknown,o}const N0e=/["&'<>`]/g,B0e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,I0e=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,O0e=/[|\\{}()[\]^$+*?.]/g,PB=new WeakMap;function L0e(e,r){if(e=e.replace(r.subset?F0e(r.subset):N0e,o),r.subset||r.escapeOnly)return e;return e.replace(B0e,n).replace(I0e,o);function n(i,a,l){return r.format((i.charCodeAt(0)-55296)*1024+i.charCodeAt(1)-56320+65536,l.charCodeAt(a+2),r)}function o(i,a,l){return r.format(i.charCodeAt(0),l.charCodeAt(a+1),r)}}function F0e(e){let r=PB.get(e);return r||(r=V0e(e),PB.set(e,r)),r}function V0e(e){const r=[];let n=-1;for(;++n",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",permil:"‰",lsaquo:"‹",rsaquo:"›",euro:"€"},Y0e=["cent","copy","divide","gt","lt","not","para","times"],MB={}.hasOwnProperty,L_={};let Nb;for(Nb in O_)MB.call(O_,Nb)&&(L_[O_[Nb]]=Nb);const X0e=/[^\dA-Za-z]/;function K0e(e,r,n,o){const i=String.fromCharCode(e);if(MB.call(L_,i)){const a=L_[i],l="&"+a;return n&&G0e.includes(a)&&!Y0e.includes(a)&&(!o||r&&r!==61&&X0e.test(String.fromCharCode(r)))?l:l+";"}return""}function Z0e(e,r,n){let o=H0e(e,r,n.omitOptionalSemicolons),i;if((n.useNamedReferences||n.useShortestReferences)&&(i=K0e(e,r,n.omitOptionalSemicolons,n.attribute)),(n.useShortestReferences||!i)&&n.useShortestReferences){const a=W0e(e,r,n.omitOptionalSemicolons);a.length|^->||--!>|"],eve=["<",">"];function tve(e,r,n,o){return o.settings.bogusComments?"":"";function i(a){return Lh(a,Object.assign({},o.settings.characterReferences,{subset:eve}))}}function rve(e,r,n,o){return""}function Bb(e,r){const n=String(e);if(typeof r!="string")throw new TypeError("Expected character");let o=0,i=n.indexOf(r);for(;i!==-1;)o++,i=n.indexOf(r,i+r.length);return o}function nve(e,r){const n=r||{};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}function ove(e){return e.join(" ").trim()}const ive=/[ \t\n\f\r]/g;function F_(e){return typeof e=="object"?e.type==="text"?NB(e.value):!1:NB(e)}function NB(e){return e.replace(ive,"")===""}const On=IB(1),BB=IB(-1),ave=[];function IB(e){return r;function r(n,o,i){const a=n?n.children:ave;let l=(o||0)+e,s=a[l];if(!i)for(;s&&F_(s);)l+=e,s=a[l];return s}}const lve={}.hasOwnProperty;function OB(e){return r;function r(n,o,i){return lve.call(e,n.tagName)&&e[n.tagName](n,o,i)}}const V_=OB({body:cve,caption:q_,colgroup:q_,dd:hve,dt:pve,head:q_,html:sve,li:uve,optgroup:fve,option:gve,p:dve,rp:LB,rt:LB,tbody:yve,td:FB,tfoot:vve,th:FB,thead:mve,tr:bve});function q_(e,r,n){const o=On(n,r,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&F_(o.value.charAt(0)))}function sve(e,r,n){const o=On(n,r);return!o||o.type!=="comment"}function cve(e,r,n){const o=On(n,r);return!o||o.type!=="comment"}function dve(e,r,n){const o=On(n,r);return o?o.type==="element"&&(o.tagName==="address"||o.tagName==="article"||o.tagName==="aside"||o.tagName==="blockquote"||o.tagName==="details"||o.tagName==="div"||o.tagName==="dl"||o.tagName==="fieldset"||o.tagName==="figcaption"||o.tagName==="figure"||o.tagName==="footer"||o.tagName==="form"||o.tagName==="h1"||o.tagName==="h2"||o.tagName==="h3"||o.tagName==="h4"||o.tagName==="h5"||o.tagName==="h6"||o.tagName==="header"||o.tagName==="hgroup"||o.tagName==="hr"||o.tagName==="main"||o.tagName==="menu"||o.tagName==="nav"||o.tagName==="ol"||o.tagName==="p"||o.tagName==="pre"||o.tagName==="section"||o.tagName==="table"||o.tagName==="ul"):!n||!(n.type==="element"&&(n.tagName==="a"||n.tagName==="audio"||n.tagName==="del"||n.tagName==="ins"||n.tagName==="map"||n.tagName==="noscript"||n.tagName==="video"))}function uve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&o.tagName==="li"}function pve(e,r,n){const o=On(n,r);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function hve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function LB(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function fve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&o.tagName==="optgroup"}function gve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function mve(e,r,n){const o=On(n,r);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function yve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function vve(e,r,n){return!On(n,r)}function bve(e,r,n){const o=On(n,r);return!o||o.type==="element"&&o.tagName==="tr"}function FB(e,r,n){const o=On(n,r);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}const xve=OB({body:_ve,colgroup:Sve,head:kve,html:wve,tbody:Eve});function wve(e){const r=On(e,-1);return!r||r.type!=="comment"}function kve(e){const r=new Set;for(const o of e.children)if(o.type==="element"&&(o.tagName==="base"||o.tagName==="title")){if(r.has(o.tagName))return!1;r.add(o.tagName)}const n=e.children[0];return!n||n.type==="element"}function _ve(e){const r=On(e,-1,!0);return!r||r.type!=="comment"&&!(r.type==="text"&&F_(r.value.charAt(0)))&&!(r.type==="element"&&(r.tagName==="meta"||r.tagName==="link"||r.tagName==="script"||r.tagName==="style"||r.tagName==="template"))}function Sve(e,r,n){const o=BB(n,r),i=On(e,-1,!0);return n&&o&&o.type==="element"&&o.tagName==="colgroup"&&V_(o,n.children.indexOf(o),n)?!1:!!(i&&i.type==="element"&&i.tagName==="col")}function Eve(e,r,n){const o=BB(n,r),i=On(e,-1);return n&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&V_(o,n.children.indexOf(o),n)?!1:!!(i&&i.type==="element"&&i.tagName==="tr")}const Ib={name:[[` \f\r &/=>`.split(""),` \f\r "&'/=>\``.split("")],[`\0 \f\r "&'/<=>`.split(""),`\0 @@ -15,45 +15,45 @@ function Lge(e,r){for(var n=0;n`.split(""),`\0 \f\r "&'<=>\``.split("")],[`\0 \f\r "&'<=>\``.split(""),`\0 -\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Cve(e,r,n,o){const i=o.schema,a=i.space==="svg"?!1:o.settings.omitOptionalTags;let l=i.space==="svg"?o.settings.closeEmptyElements:o.settings.voids.includes(e.tagName.toLowerCase());const s=[];let c;i.space==="html"&&e.tagName==="svg"&&(o.schema=AB);const d=$ve(o,e.properties),u=o.all(i.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=i,u&&(l=!1),(d||!a||!xve(e,r,n))&&(s.push("<",e.tagName,d?" "+d:""),l&&(i.space==="svg"||o.settings.closeSelfClosing)&&(c=d.charAt(d.length-1),(!o.settings.tightSelfClosing||c==="/"||c&&c!=='"'&&c!=="'")&&s.push(" "),s.push("/")),s.push(">")),s.push(u),!l&&(!a||!V_(e,r,n))&&s.push(""),s.join("")}function $ve(e,r){const n=[];let o=-1,i;if(r){for(i in r)if(r[i]!==null&&r[i]!==void 0){const a=Rve(e,i,r[i]);a&&n.push(a)}}for(;++oBb(n,e.alternative)&&(l=e.alternative),s=l+Lh(n,Object.assign({},e.settings.characterReferences,{subset:(l==="'"?Ib.single:Ib.double)[i][a],attribute:!0}))+l),c+(s&&"="+s))}const zve=["<","&"];function VB(e,r,n,o){return n&&n.type==="element"&&(n.tagName==="script"||n.tagName==="style")?e.value:Lh(e.value,Object.assign({},o.settings.characterReferences,{subset:zve}))}function Tve(e,r,n,o){return o.settings.allowDangerousHtml?e.value:VB(e,r,n,o)}function jve(e,r,n,o){return o.all(e)}const Ave=N0e("type",{invalid:Dve,unknown:Mve,handlers:{comment:tve,doctype:rve,element:Cve,raw:Tve,root:jve,text:VB}});function Dve(e){throw new Error("Expected node, not `"+e+"`")}function Mve(e){const r=e;throw new Error("Cannot compile unknown node `"+r.type+"`")}const Nve={},Pve={},Bve=[];function Ive(e,r){const n=r||Nve,o=n.quote||'"',i=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:Ove,all:Lve,settings:{omitOptionalTags:n.omitOptionalTags||!1,allowParseErrors:n.allowParseErrors||!1,allowDangerousCharacters:n.allowDangerousCharacters||!1,quoteSmart:n.quoteSmart||!1,preferUnquoted:n.preferUnquoted||!1,tightAttributes:n.tightAttributes||!1,upperDoctype:n.upperDoctype||!1,tightDoctype:n.tightDoctype||!1,bogusComments:n.bogusComments||!1,tightCommaSeparatedLists:n.tightCommaSeparatedLists||!1,tightSelfClosing:n.tightSelfClosing||!1,collapseEmptyAttributes:n.collapseEmptyAttributes||!1,allowDangerousHtml:n.allowDangerousHtml||!1,voids:n.voids||E0e,characterReferences:n.characterReferences||Pve,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space==="svg"?AB:M0e,quote:o,alternative:i}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Ove(e,r,n){return Ave(e,r,n,this)}function Lve(e){const r=[],n=e&&e.children||Bve;let o=-1;for(;++o-1&&e.test(String.fromCharCode(n))}}function Uve(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}const Fb=(function(e){if(e==null)return Xve;if(typeof e=="function")return Vb(e);if(typeof e=="object")return Array.isArray(e)?Wve(e):Gve(e);if(typeof e=="string")return Yve(e);throw new Error("Expected function, string, or object as test")});function Wve(e){const r=[];let n=-1;for(;++n":""))+")"})}return f;function f(){let g=qB,v,w,x;if((!r||a(c,d,u[u.length-1]||void 0))&&(g=Jve(n(c,u)),g[0]===U_))return g;if("children"in c&&c.children){const k=c;if(k.children&&g[0]!==Qve)for(w=(o?k.children.length:-1)+l,x=u.concat(k);w>-1&&w0?{type:"text",value:T}:void 0),T===!1?f.lastIndex=$+1:(v!==$&&C.push({type:"text",value:d.value.slice(v,$)}),Array.isArray(T)?C.push(...T):T&&C.push(T),v=$+_[0].length,k=!0),!f.global)break;_=f.exec(d.value)}return k?(v?\]}]+$/.exec(e);if(!r)return[e,void 0];e=e.slice(0,r.index);let n=r[0],o=n.indexOf(")");const i=Bb(e,"(");let a=Bb(e,")");for(;o!==-1&&i>a;)e+=n.slice(0,o+1),n=n.slice(o+1),o=n.indexOf(")"),a++;return[e,n]}function UB(e,r){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Pu(n)||Lb(n))&&(!r||n!==47)}function Ua(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}WB.peek=Sbe;function gbe(){this.buffer()}function ybe(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function vbe(){this.buffer()}function bbe(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function xbe(e){const r=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Ua(this.sliceSerialize(e)).toLowerCase(),n.label=r}function wbe(e){this.exit(e)}function kbe(e){const r=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Ua(this.sliceSerialize(e)).toLowerCase(),n.label=r}function _be(e){this.exit(e)}function Sbe(){return"["}function WB(e,r,n,o){const i=n.createTracker(o);let a=i.move("[^");const l=n.enter("footnoteReference"),s=n.enter("reference");return a+=i.move(n.safe(n.associationId(e),{after:"]",before:a})),s(),l(),a+=i.move("]"),a}function Ebe(){return{enter:{gfmFootnoteCallString:gbe,gfmFootnoteCall:ybe,gfmFootnoteDefinitionLabelString:vbe,gfmFootnoteDefinition:bbe},exit:{gfmFootnoteCallString:xbe,gfmFootnoteCall:wbe,gfmFootnoteDefinitionLabelString:kbe,gfmFootnoteDefinition:_be}}}function Cbe(e){let r=!1;return e&&e.firstLineBlank&&(r=!0),{handlers:{footnoteDefinition:n,footnoteReference:WB},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(o,i,a,l){const s=a.createTracker(l);let c=s.move("[^");const d=a.enter("footnoteDefinition"),u=a.enter("label");return c+=s.move(a.safe(a.associationId(o),{before:c,after:"]"})),u(),c+=s.move("]:"),o.children&&o.children.length>0&&(s.shift(4),c+=s.move((r?` -`:" ")+a.indentLines(a.containerFlow(o,s.current()),r?GB:$be))),d(),c}}function $be(e,r,n){return r===0?e:GB(e,r,n)}function GB(e,r,n){return(n?"":" ")+e}const Rbe=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];YB.peek=Dbe;function zbe(){return{canContainEols:["delete"],enter:{strikethrough:jbe},exit:{strikethrough:Abe}}}function Tbe(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:Rbe}],handlers:{delete:YB}}}function jbe(e){this.enter({type:"delete",children:[]},e)}function Abe(e){this.exit(e)}function YB(e,r,n,o){const i=n.createTracker(o),a=n.enter("strikethrough");let l=i.move("~~");return l+=n.containerPhrasing(e,{...i.current(),before:l,after:"~"}),l+=i.move("~~"),a(),l}function Dbe(){return"~"}function Mbe(e){return e.length}function Nbe(e,r){const n=r||{},o=(n.align||[]).concat(),i=n.stringLength||Mbe,a=[],l=[],s=[],c=[];let d=0,u=-1;for(;++ud&&(d=e[u].length);++kc[k])&&(c[k]=_)}w.push(C)}l[u]=w,s[u]=x}let p=-1;if(typeof o=="object"&&"length"in o)for(;++pc[p]&&(c[p]=C),g[p]=C),f[p]=_}l.splice(1,0,f),s.splice(1,0,g),u=-1;const v=[];for(;++u "),a.shift(2);const l=n.indentLines(n.containerFlow(e,a.current()),Ibe);return i(),l}function Ibe(e,r,n){return">"+(n?"":" ")+e}function Obe(e,r){return KB(e,r.inConstruct,!0)&&!KB(e,r.notInConstruct,!1)}function KB(e,r,n){if(typeof r=="string"&&(r=[r]),!r||r.length===0)return n;let o=-1;for(;++o\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Cve(e,r,n,o){const i=o.schema,a=i.space==="svg"?!1:o.settings.omitOptionalTags;let l=i.space==="svg"?o.settings.closeEmptyElements:o.settings.voids.includes(e.tagName.toLowerCase());const s=[];let c;i.space==="html"&&e.tagName==="svg"&&(o.schema=AB);const d=$ve(o,e.properties),u=o.all(i.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=i,u&&(l=!1),(d||!a||!xve(e,r,n))&&(s.push("<",e.tagName,d?" "+d:""),l&&(i.space==="svg"||o.settings.closeSelfClosing)&&(c=d.charAt(d.length-1),(!o.settings.tightSelfClosing||c==="/"||c&&c!=='"'&&c!=="'")&&s.push(" "),s.push("/")),s.push(">")),s.push(u),!l&&(!a||!V_(e,r,n))&&s.push(""),s.join("")}function $ve(e,r){const n=[];let o=-1,i;if(r){for(i in r)if(r[i]!==null&&r[i]!==void 0){const a=Rve(e,i,r[i]);a&&n.push(a)}}for(;++oBb(n,e.alternative)&&(l=e.alternative),s=l+Lh(n,Object.assign({},e.settings.characterReferences,{subset:(l==="'"?Ib.single:Ib.double)[i][a],attribute:!0}))+l),c+(s&&"="+s))}const zve=["<","&"];function VB(e,r,n,o){return n&&n.type==="element"&&(n.tagName==="script"||n.tagName==="style")?e.value:Lh(e.value,Object.assign({},o.settings.characterReferences,{subset:zve}))}function Tve(e,r,n,o){return o.settings.allowDangerousHtml?e.value:VB(e,r,n,o)}function jve(e,r,n,o){return o.all(e)}const Ave=M0e("type",{invalid:Dve,unknown:Pve,handlers:{comment:tve,doctype:rve,element:Cve,raw:Tve,root:jve,text:VB}});function Dve(e){throw new Error("Expected node, not `"+e+"`")}function Pve(e){const r=e;throw new Error("Cannot compile unknown node `"+r.type+"`")}const Mve={},Nve={},Bve=[];function Ive(e,r){const n=r||Mve,o=n.quote||'"',i=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:Ove,all:Lve,settings:{omitOptionalTags:n.omitOptionalTags||!1,allowParseErrors:n.allowParseErrors||!1,allowDangerousCharacters:n.allowDangerousCharacters||!1,quoteSmart:n.quoteSmart||!1,preferUnquoted:n.preferUnquoted||!1,tightAttributes:n.tightAttributes||!1,upperDoctype:n.upperDoctype||!1,tightDoctype:n.tightDoctype||!1,bogusComments:n.bogusComments||!1,tightCommaSeparatedLists:n.tightCommaSeparatedLists||!1,tightSelfClosing:n.tightSelfClosing||!1,collapseEmptyAttributes:n.collapseEmptyAttributes||!1,allowDangerousHtml:n.allowDangerousHtml||!1,voids:n.voids||E0e,characterReferences:n.characterReferences||Nve,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space==="svg"?AB:P0e,quote:o,alternative:i}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Ove(e,r,n){return Ave(e,r,n,this)}function Lve(e){const r=[],n=e&&e.children||Bve;let o=-1;for(;++o-1&&e.test(String.fromCharCode(n))}}function Uve(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}const Fb=(function(e){if(e==null)return Xve;if(typeof e=="function")return Vb(e);if(typeof e=="object")return Array.isArray(e)?Wve(e):Gve(e);if(typeof e=="string")return Yve(e);throw new Error("Expected function, string, or object as test")});function Wve(e){const r=[];let n=-1;for(;++n":""))+")"})}return f;function f(){let m=qB,v,w,x;if((!r||a(c,d,u[u.length-1]||void 0))&&(m=Jve(n(c,u)),m[0]===U_))return m;if("children"in c&&c.children){const k=c;if(k.children&&m[0]!==Qve)for(w=(o?k.children.length:-1)+l,x=u.concat(k);w>-1&&w0?{type:"text",value:T}:void 0),T===!1?f.lastIndex=$+1:(v!==$&&C.push({type:"text",value:d.value.slice(v,$)}),Array.isArray(T)?C.push(...T):T&&C.push(T),v=$+_[0].length,k=!0),!f.global)break;_=f.exec(d.value)}return k?(v?\]}]+$/.exec(e);if(!r)return[e,void 0];e=e.slice(0,r.index);let n=r[0],o=n.indexOf(")");const i=Bb(e,"(");let a=Bb(e,")");for(;o!==-1&&i>a;)e+=n.slice(0,o+1),n=n.slice(o+1),o=n.indexOf(")"),a++;return[e,n]}function UB(e,r){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Nu(n)||Lb(n))&&(!r||n!==47)}function Ua(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}WB.peek=Sbe;function mbe(){this.buffer()}function ybe(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function vbe(){this.buffer()}function bbe(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function xbe(e){const r=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Ua(this.sliceSerialize(e)).toLowerCase(),n.label=r}function wbe(e){this.exit(e)}function kbe(e){const r=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Ua(this.sliceSerialize(e)).toLowerCase(),n.label=r}function _be(e){this.exit(e)}function Sbe(){return"["}function WB(e,r,n,o){const i=n.createTracker(o);let a=i.move("[^");const l=n.enter("footnoteReference"),s=n.enter("reference");return a+=i.move(n.safe(n.associationId(e),{after:"]",before:a})),s(),l(),a+=i.move("]"),a}function Ebe(){return{enter:{gfmFootnoteCallString:mbe,gfmFootnoteCall:ybe,gfmFootnoteDefinitionLabelString:vbe,gfmFootnoteDefinition:bbe},exit:{gfmFootnoteCallString:xbe,gfmFootnoteCall:wbe,gfmFootnoteDefinitionLabelString:kbe,gfmFootnoteDefinition:_be}}}function Cbe(e){let r=!1;return e&&e.firstLineBlank&&(r=!0),{handlers:{footnoteDefinition:n,footnoteReference:WB},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(o,i,a,l){const s=a.createTracker(l);let c=s.move("[^");const d=a.enter("footnoteDefinition"),u=a.enter("label");return c+=s.move(a.safe(a.associationId(o),{before:c,after:"]"})),u(),c+=s.move("]:"),o.children&&o.children.length>0&&(s.shift(4),c+=s.move((r?` +`:" ")+a.indentLines(a.containerFlow(o,s.current()),r?GB:$be))),d(),c}}function $be(e,r,n){return r===0?e:GB(e,r,n)}function GB(e,r,n){return(n?"":" ")+e}const Rbe=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];YB.peek=Dbe;function zbe(){return{canContainEols:["delete"],enter:{strikethrough:jbe},exit:{strikethrough:Abe}}}function Tbe(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:Rbe}],handlers:{delete:YB}}}function jbe(e){this.enter({type:"delete",children:[]},e)}function Abe(e){this.exit(e)}function YB(e,r,n,o){const i=n.createTracker(o),a=n.enter("strikethrough");let l=i.move("~~");return l+=n.containerPhrasing(e,{...i.current(),before:l,after:"~"}),l+=i.move("~~"),a(),l}function Dbe(){return"~"}function Pbe(e){return e.length}function Mbe(e,r){const n=r||{},o=(n.align||[]).concat(),i=n.stringLength||Pbe,a=[],l=[],s=[],c=[];let d=0,u=-1;for(;++ud&&(d=e[u].length);++kc[k])&&(c[k]=_)}w.push(C)}l[u]=w,s[u]=x}let p=-1;if(typeof o=="object"&&"length"in o)for(;++pc[p]&&(c[p]=C),m[p]=C),f[p]=_}l.splice(1,0,f),s.splice(1,0,m),u=-1;const v=[];for(;++u "),a.shift(2);const l=n.indentLines(n.containerFlow(e,a.current()),Ibe);return i(),l}function Ibe(e,r,n){return">"+(n?"":" ")+e}function Obe(e,r){return KB(e,r.inConstruct,!0)&&!KB(e,r.notInConstruct,!1)}function KB(e,r,n){if(typeof r=="string"&&(r=[r]),!r||r.length===0)return n;let o=-1;for(;++ol&&(l=a):a=1,i=o+r.length,o=n.indexOf(r,i);return l}function Fbe(e,r){return!!(r.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function Vbe(e){const r=e.options.fence||"`";if(r!=="`"&&r!=="~")throw new Error("Cannot serialize code with `"+r+"` for `options.fence`, expected `` ` `` or `~`");return r}function qbe(e,r,n,o){const i=Vbe(n),a=e.value||"",l=i==="`"?"GraveAccent":"Tilde";if(Fbe(e,n)){const p=n.enter("codeIndented"),f=n.indentLines(a,Hbe);return p(),f}const s=n.createTracker(o),c=i.repeat(Math.max(Lbe(a,i)+1,3)),d=n.enter("codeFenced");let u=s.move(c);if(e.lang){const p=n.enter(`codeFencedLang${l}`);u+=s.move(n.safe(e.lang,{before:u,after:" ",encode:["`"],...s.current()})),p()}if(e.lang&&e.meta){const p=n.enter(`codeFencedMeta${l}`);u+=s.move(" "),u+=s.move(n.safe(e.meta,{before:u,after:` `,encode:["`"],...s.current()})),p()}return u+=s.move(` `),a&&(u+=s.move(a+` `)),u+=s.move(c),d(),u}function Hbe(e,r,n){return(n?"":" ")+e}function X_(e){const r=e.options.quote||'"';if(r!=='"'&&r!=="'")throw new Error("Cannot serialize title with `"+r+"` for `options.quote`, expected `\"`, or `'`");return r}function Ube(e,r,n,o){const i=X_(n),a=i==='"'?"Quote":"Apostrophe",l=n.enter("definition");let s=n.enter("label");const c=n.createTracker(o);let d=c.move("[");return d+=c.move(n.safe(n.associationId(e),{before:d,after:"]",...c.current()})),d+=c.move("]: "),s(),!e.url||/[\0- \u007F]/.test(e.url)?(s=n.enter("destinationLiteral"),d+=c.move("<"),d+=c.move(n.safe(e.url,{before:d,after:">",...c.current()})),d+=c.move(">")):(s=n.enter("destinationRaw"),d+=c.move(n.safe(e.url,{before:d,after:e.title?" ":` -`,...c.current()}))),s(),e.title&&(s=n.enter(`title${a}`),d+=c.move(" "+i),d+=c.move(n.safe(e.title,{before:d,after:i,...c.current()})),d+=c.move(i),s()),l(),d}function Wbe(e){const r=e.options.emphasis||"*";if(r!=="*"&&r!=="_")throw new Error("Cannot serialize emphasis with `"+r+"` for `options.emphasis`, expected `*`, or `_`");return r}function l1(e){return"&#x"+e.toString(16).toUpperCase()+";"}function Fh(e){if(e===null||Sr(e)||Pu(e))return 1;if(Lb(e))return 2}function qb(e,r,n){const o=Fh(e),i=Fh(r);return o===void 0?i===void 0?n==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:o===1?i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}QB.peek=Gbe;function QB(e,r,n,o){const i=Wbe(n),a=n.enter("emphasis"),l=n.createTracker(o),s=l.move(i);let c=l.move(n.containerPhrasing(e,{after:i,before:s,...l.current()}));const d=c.charCodeAt(0),u=qb(o.before.charCodeAt(o.before.length-1),d,i);u.inside&&(c=l1(d)+c.slice(1));const p=c.charCodeAt(c.length-1),f=qb(o.after.charCodeAt(0),p,i);f.inside&&(c=c.slice(0,-1)+l1(p));const g=l.move(i);return a(),n.attentionEncodeSurroundingInfo={after:f.outside,before:u.outside},s+c+g}function Gbe(e,r,n){return n.options.emphasis||"*"}function K_(e,r,n,o){let i,a,l;typeof r=="function"&&typeof n!="function"?(a=void 0,l=r,i=n):(a=r,l=n,i=o),HB(e,a,s,i);function s(c,d){const u=d[d.length-1],p=u?u.children.indexOf(c):void 0;return l(c,p,u)}}const Ybe={};function Hb(e,r){const n=r||Ybe,o=typeof n.includeImageAlt=="boolean"?n.includeImageAlt:!0,i=typeof n.includeHtml=="boolean"?n.includeHtml:!0;return JB(e,o,i)}function JB(e,r,n){if(Xbe(e)){if("value"in e)return e.type==="html"&&!n?"":e.value;if(r&&"alt"in e&&e.alt)return e.alt;if("children"in e)return eI(e.children,r,n)}return Array.isArray(e)?eI(e,r,n):""}function eI(e,r,n){const o=[];let i=-1;for(;++i",...c.current()})),d+=c.move(">")):(s=n.enter("destinationRaw"),d+=c.move(n.safe(e.url,{before:d,after:e.title?" ":")",...c.current()}))),s(),e.title&&(s=n.enter(`title${a}`),d+=c.move(" "+i),d+=c.move(n.safe(e.title,{before:d,after:i,...c.current()})),d+=c.move(i),s()),d+=c.move(")"),l(),d}function Jbe(){return"!"}nI.peek=exe;function nI(e,r,n,o){const i=e.referenceType,a=n.enter("imageReference");let l=n.enter("label");const s=n.createTracker(o);let c=s.move("![");const d=n.safe(e.alt,{before:c,after:"]",...s.current()});c+=s.move(d+"]["),l();const u=n.stack;n.stack=[],l=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...s.current()});return l(),n.stack=u,a(),i==="full"||!d||d!==p?c+=s.move(p+"]"):i==="shortcut"?c=c.slice(0,-1):c+=s.move("]"),c}function exe(){return"!"}oI.peek=txe;function oI(e,r,n){let o=e.value||"",i="`",a=-1;for(;new RegExp("(^|[^`])"+i+"([^`]|$)").test(o);)i+="`";for(/[^ \r\n]/.test(o)&&(/^[ \r\n]/.test(o)&&/[ \r\n]$/.test(o)||/^`|`$/.test(o))&&(o=" "+o+" ");++a\u007F]/.test(e.url))}aI.peek=rxe;function aI(e,r,n,o){const i=X_(n),a=i==='"'?"Quote":"Apostrophe",l=n.createTracker(o);let s,c;if(iI(e,n)){const u=n.stack;n.stack=[],s=n.enter("autolink");let p=l.move("<");return p+=l.move(n.containerPhrasing(e,{before:p,after:">",...l.current()})),p+=l.move(">"),s(),n.stack=u,p}s=n.enter("link"),c=n.enter("label");let d=l.move("[");return d+=l.move(n.containerPhrasing(e,{before:d,after:"](",...l.current()})),d+=l.move("]("),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter("destinationLiteral"),d+=l.move("<"),d+=l.move(n.safe(e.url,{before:d,after:">",...l.current()})),d+=l.move(">")):(c=n.enter("destinationRaw"),d+=l.move(n.safe(e.url,{before:d,after:e.title?" ":")",...l.current()}))),c(),e.title&&(c=n.enter(`title${a}`),d+=l.move(" "+i),d+=l.move(n.safe(e.title,{before:d,after:i,...l.current()})),d+=l.move(i),c()),d+=l.move(")"),s(),d}function rxe(e,r,n){return iI(e,n)?"<":"["}lI.peek=nxe;function lI(e,r,n,o){const i=e.referenceType,a=n.enter("linkReference");let l=n.enter("label");const s=n.createTracker(o);let c=s.move("[");const d=n.containerPhrasing(e,{before:c,after:"]",...s.current()});c+=s.move(d+"]["),l();const u=n.stack;n.stack=[],l=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...s.current()});return l(),n.stack=u,a(),i==="full"||!d||d!==p?c+=s.move(p+"]"):i==="shortcut"?c=c.slice(0,-1):c+=s.move("]"),c}function nxe(){return"["}function Z_(e){const r=e.options.bullet||"*";if(r!=="*"&&r!=="+"&&r!=="-")throw new Error("Cannot serialize items with `"+r+"` for `options.bullet`, expected `*`, `+`, or `-`");return r}function oxe(e){const r=Z_(e),n=e.options.bulletOther;if(!n)return r==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===r)throw new Error("Expected `bullet` (`"+r+"`) and `bulletOther` (`"+n+"`) to be different");return n}function ixe(e){const r=e.options.bulletOrdered||".";if(r!=="."&&r!==")")throw new Error("Cannot serialize items with `"+r+"` for `options.bulletOrdered`, expected `.` or `)`");return r}function sI(e){const r=e.options.rule||"*";if(r!=="*"&&r!=="-"&&r!=="_")throw new Error("Cannot serialize rules with `"+r+"` for `options.rule`, expected `*`, `-`, or `_`");return r}function axe(e,r,n,o){const i=n.enter("list"),a=n.bulletCurrent;let l=e.ordered?ixe(n):Z_(n);const s=e.ordered?l==="."?")":".":oxe(n);let c=r&&n.bulletLastUsed?l===n.bulletLastUsed:!1;if(!e.ordered){const u=e.children?e.children[0]:void 0;if((l==="*"||l==="-")&&u&&(!u.children||!u.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(c=!0),sI(n)===l&&u){let p=-1;for(;++p-1?r.start:1)+(n.options.incrementListMarker===!1?0:r.children.indexOf(e))+a);let l=a.length+1;(i==="tab"||i==="mixed"&&(r&&r.type==="list"&&r.spread||e.spread))&&(l=Math.ceil(l/4)*4);const s=n.createTracker(o);s.move(a+" ".repeat(l-a.length)),s.shift(l);const c=n.enter("listItem"),d=n.indentLines(n.containerFlow(e,s.current()),u);return c(),d;function u(p,f,g){return f?(g?"":" ".repeat(l))+p:(g?a:a+" ".repeat(l-a.length))+p}}function cxe(e,r,n,o){const i=n.enter("paragraph"),a=n.enter("phrasing"),l=n.containerPhrasing(e,o);return a(),i(),l}const dxe=Fb(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function uxe(e,r,n,o){return(e.children.some(function(l){return dxe(l)})?n.containerPhrasing:n.containerFlow).call(n,e,o)}function pxe(e){const r=e.options.strong||"*";if(r!=="*"&&r!=="_")throw new Error("Cannot serialize strong with `"+r+"` for `options.strong`, expected `*`, or `_`");return r}cI.peek=hxe;function cI(e,r,n,o){const i=pxe(n),a=n.enter("strong"),l=n.createTracker(o),s=l.move(i+i);let c=l.move(n.containerPhrasing(e,{after:i,before:s,...l.current()}));const d=c.charCodeAt(0),u=qb(o.before.charCodeAt(o.before.length-1),d,i);u.inside&&(c=l1(d)+c.slice(1));const p=c.charCodeAt(c.length-1),f=qb(o.after.charCodeAt(0),p,i);f.inside&&(c=c.slice(0,-1)+l1(p));const g=l.move(i+i);return a(),n.attentionEncodeSurroundingInfo={after:f.outside,before:u.outside},s+c+g}function hxe(e,r,n){return n.options.strong||"*"}function fxe(e,r,n,o){return n.safe(e.value,o)}function mxe(e){const r=e.options.ruleRepetition||3;if(r<3)throw new Error("Cannot serialize rules with repetition `"+r+"` for `options.ruleRepetition`, expected `3` or more");return r}function gxe(e,r,n){const o=(sI(n)+(n.options.ruleSpaces?" ":"")).repeat(mxe(n));return n.options.ruleSpaces?o.slice(0,-1):o}const dI={blockquote:Bbe,break:ZB,code:qbe,definition:Ube,emphasis:QB,hardBreak:ZB,heading:Zbe,html:tI,image:rI,imageReference:nI,inlineCode:oI,link:aI,linkReference:lI,list:axe,listItem:sxe,paragraph:cxe,root:uxe,strong:cI,text:fxe,thematicBreak:gxe},uI={AElig:"Æ",AMP:"&",Aacute:"Á",Abreve:"Ă",Acirc:"Â",Acy:"А",Afr:"𝔄",Agrave:"À",Alpha:"Α",Amacr:"Ā",And:"⩓",Aogon:"Ą",Aopf:"𝔸",ApplyFunction:"⁡",Aring:"Å",Ascr:"𝒜",Assign:"≔",Atilde:"Ã",Auml:"Ä",Backslash:"∖",Barv:"⫧",Barwed:"⌆",Bcy:"Б",Because:"∵",Bernoullis:"ℬ",Beta:"Β",Bfr:"𝔅",Bopf:"𝔹",Breve:"˘",Bscr:"ℬ",Bumpeq:"≎",CHcy:"Ч",COPY:"©",Cacute:"Ć",Cap:"⋒",CapitalDifferentialD:"ⅅ",Cayleys:"ℭ",Ccaron:"Č",Ccedil:"Ç",Ccirc:"Ĉ",Cconint:"∰",Cdot:"Ċ",Cedilla:"¸",CenterDot:"·",Cfr:"ℭ",Chi:"Χ",CircleDot:"⊙",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",Colon:"∷",Colone:"⩴",Congruent:"≡",Conint:"∯",ContourIntegral:"∮",Copf:"ℂ",Coproduct:"∐",CounterClockwiseContourIntegral:"∳",Cross:"⨯",Cscr:"𝒞",Cup:"⋓",CupCap:"≍",DD:"ⅅ",DDotrahd:"⤑",DJcy:"Ђ",DScy:"Ѕ",DZcy:"Џ",Dagger:"‡",Darr:"↡",Dashv:"⫤",Dcaron:"Ď",Dcy:"Д",Del:"∇",Delta:"Δ",Dfr:"𝔇",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",Diamond:"⋄",DifferentialD:"ⅆ",Dopf:"𝔻",Dot:"¨",DotDot:"⃜",DotEqual:"≐",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrow:"↓",DownArrowBar:"⤓",DownArrowUpArrow:"⇵",DownBreve:"̑",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVector:"↽",DownLeftVectorBar:"⥖",DownRightTeeVector:"⥟",DownRightVector:"⇁",DownRightVectorBar:"⥗",DownTee:"⊤",DownTeeArrow:"↧",Downarrow:"⇓",Dscr:"𝒟",Dstrok:"Đ",ENG:"Ŋ",ETH:"Ð",Eacute:"É",Ecaron:"Ě",Ecirc:"Ê",Ecy:"Э",Edot:"Ė",Efr:"𝔈",Egrave:"È",Element:"∈",Emacr:"Ē",EmptySmallSquare:"◻",EmptyVerySmallSquare:"▫",Eogon:"Ę",Eopf:"𝔼",Epsilon:"Ε",Equal:"⩵",EqualTilde:"≂",Equilibrium:"⇌",Escr:"ℰ",Esim:"⩳",Eta:"Η",Euml:"Ë",Exists:"∃",ExponentialE:"ⅇ",Fcy:"Ф",Ffr:"𝔉",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",Fopf:"𝔽",ForAll:"∀",Fouriertrf:"ℱ",Fscr:"ℱ",GJcy:"Ѓ",GT:">",Gamma:"Γ",Gammad:"Ϝ",Gbreve:"Ğ",Gcedil:"Ģ",Gcirc:"Ĝ",Gcy:"Г",Gdot:"Ġ",Gfr:"𝔊",Gg:"⋙",Gopf:"𝔾",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",Gt:"≫",HARDcy:"Ъ",Hacek:"ˇ",Hat:"^",Hcirc:"Ĥ",Hfr:"ℌ",HilbertSpace:"ℋ",Hopf:"ℍ",HorizontalLine:"─",Hscr:"ℋ",Hstrok:"Ħ",HumpDownHump:"≎",HumpEqual:"≏",IEcy:"Е",IJlig:"IJ",IOcy:"Ё",Iacute:"Í",Icirc:"Î",Icy:"И",Idot:"İ",Ifr:"ℑ",Igrave:"Ì",Im:"ℑ",Imacr:"Ī",ImaginaryI:"ⅈ",Implies:"⇒",Int:"∬",Integral:"∫",Intersection:"⋂",InvisibleComma:"⁣",InvisibleTimes:"⁢",Iogon:"Į",Iopf:"𝕀",Iota:"Ι",Iscr:"ℐ",Itilde:"Ĩ",Iukcy:"І",Iuml:"Ï",Jcirc:"Ĵ",Jcy:"Й",Jfr:"𝔍",Jopf:"𝕁",Jscr:"𝒥",Jsercy:"Ј",Jukcy:"Є",KHcy:"Х",KJcy:"Ќ",Kappa:"Κ",Kcedil:"Ķ",Kcy:"К",Kfr:"𝔎",Kopf:"𝕂",Kscr:"𝒦",LJcy:"Љ",LT:"<",Lacute:"Ĺ",Lambda:"Λ",Lang:"⟪",Laplacetrf:"ℒ",Larr:"↞",Lcaron:"Ľ",Lcedil:"Ļ",Lcy:"Л",LeftAngleBracket:"⟨",LeftArrow:"←",LeftArrowBar:"⇤",LeftArrowRightArrow:"⇆",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVector:"⇃",LeftDownVectorBar:"⥙",LeftFloor:"⌊",LeftRightArrow:"↔",LeftRightVector:"⥎",LeftTee:"⊣",LeftTeeArrow:"↤",LeftTeeVector:"⥚",LeftTriangle:"⊲",LeftTriangleBar:"⧏",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVector:"↿",LeftUpVectorBar:"⥘",LeftVector:"↼",LeftVectorBar:"⥒",Leftarrow:"⇐",Leftrightarrow:"⇔",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",LessLess:"⪡",LessSlantEqual:"⩽",LessTilde:"≲",Lfr:"𝔏",Ll:"⋘",Lleftarrow:"⇚",Lmidot:"Ŀ",LongLeftArrow:"⟵",LongLeftRightArrow:"⟷",LongRightArrow:"⟶",Longleftarrow:"⟸",Longleftrightarrow:"⟺",Longrightarrow:"⟹",Lopf:"𝕃",LowerLeftArrow:"↙",LowerRightArrow:"↘",Lscr:"ℒ",Lsh:"↰",Lstrok:"Ł",Lt:"≪",Map:"⤅",Mcy:"М",MediumSpace:" ",Mellintrf:"ℳ",Mfr:"𝔐",MinusPlus:"∓",Mopf:"𝕄",Mscr:"ℳ",Mu:"Μ",NJcy:"Њ",Nacute:"Ń",Ncaron:"Ň",Ncedil:"Ņ",Ncy:"Н",NegativeMediumSpace:"​",NegativeThickSpace:"​",NegativeThinSpace:"​",NegativeVeryThinSpace:"​",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:` +`,...a.current()});return/^[\t ]/.test(d)&&(d=l1(d.charCodeAt(0))+d.slice(1)),d=d?l+" "+d:l,n.options.closeAtx&&(d+=" "+l),c(),s(),d}tI.peek=Qbe;function tI(e){return e.value||""}function Qbe(){return"<"}rI.peek=Jbe;function rI(e,r,n,o){const i=X_(n),a=i==='"'?"Quote":"Apostrophe",l=n.enter("image");let s=n.enter("label");const c=n.createTracker(o);let d=c.move("![");return d+=c.move(n.safe(e.alt,{before:d,after:"]",...c.current()})),d+=c.move("]("),s(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(s=n.enter("destinationLiteral"),d+=c.move("<"),d+=c.move(n.safe(e.url,{before:d,after:">",...c.current()})),d+=c.move(">")):(s=n.enter("destinationRaw"),d+=c.move(n.safe(e.url,{before:d,after:e.title?" ":")",...c.current()}))),s(),e.title&&(s=n.enter(`title${a}`),d+=c.move(" "+i),d+=c.move(n.safe(e.title,{before:d,after:i,...c.current()})),d+=c.move(i),s()),d+=c.move(")"),l(),d}function Jbe(){return"!"}nI.peek=exe;function nI(e,r,n,o){const i=e.referenceType,a=n.enter("imageReference");let l=n.enter("label");const s=n.createTracker(o);let c=s.move("![");const d=n.safe(e.alt,{before:c,after:"]",...s.current()});c+=s.move(d+"]["),l();const u=n.stack;n.stack=[],l=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...s.current()});return l(),n.stack=u,a(),i==="full"||!d||d!==p?c+=s.move(p+"]"):i==="shortcut"?c=c.slice(0,-1):c+=s.move("]"),c}function exe(){return"!"}oI.peek=txe;function oI(e,r,n){let o=e.value||"",i="`",a=-1;for(;new RegExp("(^|[^`])"+i+"([^`]|$)").test(o);)i+="`";for(/[^ \r\n]/.test(o)&&(/^[ \r\n]/.test(o)&&/[ \r\n]$/.test(o)||/^`|`$/.test(o))&&(o=" "+o+" ");++a\u007F]/.test(e.url))}aI.peek=rxe;function aI(e,r,n,o){const i=X_(n),a=i==='"'?"Quote":"Apostrophe",l=n.createTracker(o);let s,c;if(iI(e,n)){const u=n.stack;n.stack=[],s=n.enter("autolink");let p=l.move("<");return p+=l.move(n.containerPhrasing(e,{before:p,after:">",...l.current()})),p+=l.move(">"),s(),n.stack=u,p}s=n.enter("link"),c=n.enter("label");let d=l.move("[");return d+=l.move(n.containerPhrasing(e,{before:d,after:"](",...l.current()})),d+=l.move("]("),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter("destinationLiteral"),d+=l.move("<"),d+=l.move(n.safe(e.url,{before:d,after:">",...l.current()})),d+=l.move(">")):(c=n.enter("destinationRaw"),d+=l.move(n.safe(e.url,{before:d,after:e.title?" ":")",...l.current()}))),c(),e.title&&(c=n.enter(`title${a}`),d+=l.move(" "+i),d+=l.move(n.safe(e.title,{before:d,after:i,...l.current()})),d+=l.move(i),c()),d+=l.move(")"),s(),d}function rxe(e,r,n){return iI(e,n)?"<":"["}lI.peek=nxe;function lI(e,r,n,o){const i=e.referenceType,a=n.enter("linkReference");let l=n.enter("label");const s=n.createTracker(o);let c=s.move("[");const d=n.containerPhrasing(e,{before:c,after:"]",...s.current()});c+=s.move(d+"]["),l();const u=n.stack;n.stack=[],l=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...s.current()});return l(),n.stack=u,a(),i==="full"||!d||d!==p?c+=s.move(p+"]"):i==="shortcut"?c=c.slice(0,-1):c+=s.move("]"),c}function nxe(){return"["}function Z_(e){const r=e.options.bullet||"*";if(r!=="*"&&r!=="+"&&r!=="-")throw new Error("Cannot serialize items with `"+r+"` for `options.bullet`, expected `*`, `+`, or `-`");return r}function oxe(e){const r=Z_(e),n=e.options.bulletOther;if(!n)return r==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===r)throw new Error("Expected `bullet` (`"+r+"`) and `bulletOther` (`"+n+"`) to be different");return n}function ixe(e){const r=e.options.bulletOrdered||".";if(r!=="."&&r!==")")throw new Error("Cannot serialize items with `"+r+"` for `options.bulletOrdered`, expected `.` or `)`");return r}function sI(e){const r=e.options.rule||"*";if(r!=="*"&&r!=="-"&&r!=="_")throw new Error("Cannot serialize rules with `"+r+"` for `options.rule`, expected `*`, `-`, or `_`");return r}function axe(e,r,n,o){const i=n.enter("list"),a=n.bulletCurrent;let l=e.ordered?ixe(n):Z_(n);const s=e.ordered?l==="."?")":".":oxe(n);let c=r&&n.bulletLastUsed?l===n.bulletLastUsed:!1;if(!e.ordered){const u=e.children?e.children[0]:void 0;if((l==="*"||l==="-")&&u&&(!u.children||!u.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(c=!0),sI(n)===l&&u){let p=-1;for(;++p-1?r.start:1)+(n.options.incrementListMarker===!1?0:r.children.indexOf(e))+a);let l=a.length+1;(i==="tab"||i==="mixed"&&(r&&r.type==="list"&&r.spread||e.spread))&&(l=Math.ceil(l/4)*4);const s=n.createTracker(o);s.move(a+" ".repeat(l-a.length)),s.shift(l);const c=n.enter("listItem"),d=n.indentLines(n.containerFlow(e,s.current()),u);return c(),d;function u(p,f,m){return f?(m?"":" ".repeat(l))+p:(m?a:a+" ".repeat(l-a.length))+p}}function cxe(e,r,n,o){const i=n.enter("paragraph"),a=n.enter("phrasing"),l=n.containerPhrasing(e,o);return a(),i(),l}const dxe=Fb(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function uxe(e,r,n,o){return(e.children.some(function(l){return dxe(l)})?n.containerPhrasing:n.containerFlow).call(n,e,o)}function pxe(e){const r=e.options.strong||"*";if(r!=="*"&&r!=="_")throw new Error("Cannot serialize strong with `"+r+"` for `options.strong`, expected `*`, or `_`");return r}cI.peek=hxe;function cI(e,r,n,o){const i=pxe(n),a=n.enter("strong"),l=n.createTracker(o),s=l.move(i+i);let c=l.move(n.containerPhrasing(e,{after:i,before:s,...l.current()}));const d=c.charCodeAt(0),u=qb(o.before.charCodeAt(o.before.length-1),d,i);u.inside&&(c=l1(d)+c.slice(1));const p=c.charCodeAt(c.length-1),f=qb(o.after.charCodeAt(0),p,i);f.inside&&(c=c.slice(0,-1)+l1(p));const m=l.move(i+i);return a(),n.attentionEncodeSurroundingInfo={after:f.outside,before:u.outside},s+c+m}function hxe(e,r,n){return n.options.strong||"*"}function fxe(e,r,n,o){return n.safe(e.value,o)}function gxe(e){const r=e.options.ruleRepetition||3;if(r<3)throw new Error("Cannot serialize rules with repetition `"+r+"` for `options.ruleRepetition`, expected `3` or more");return r}function mxe(e,r,n){const o=(sI(n)+(n.options.ruleSpaces?" ":"")).repeat(gxe(n));return n.options.ruleSpaces?o.slice(0,-1):o}const dI={blockquote:Bbe,break:ZB,code:qbe,definition:Ube,emphasis:QB,hardBreak:ZB,heading:Zbe,html:tI,image:rI,imageReference:nI,inlineCode:oI,link:aI,linkReference:lI,list:axe,listItem:sxe,paragraph:cxe,root:uxe,strong:cI,text:fxe,thematicBreak:mxe},uI={AElig:"Æ",AMP:"&",Aacute:"Á",Abreve:"Ă",Acirc:"Â",Acy:"А",Afr:"𝔄",Agrave:"À",Alpha:"Α",Amacr:"Ā",And:"⩓",Aogon:"Ą",Aopf:"𝔸",ApplyFunction:"⁡",Aring:"Å",Ascr:"𝒜",Assign:"≔",Atilde:"Ã",Auml:"Ä",Backslash:"∖",Barv:"⫧",Barwed:"⌆",Bcy:"Б",Because:"∵",Bernoullis:"ℬ",Beta:"Β",Bfr:"𝔅",Bopf:"𝔹",Breve:"˘",Bscr:"ℬ",Bumpeq:"≎",CHcy:"Ч",COPY:"©",Cacute:"Ć",Cap:"⋒",CapitalDifferentialD:"ⅅ",Cayleys:"ℭ",Ccaron:"Č",Ccedil:"Ç",Ccirc:"Ĉ",Cconint:"∰",Cdot:"Ċ",Cedilla:"¸",CenterDot:"·",Cfr:"ℭ",Chi:"Χ",CircleDot:"⊙",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",Colon:"∷",Colone:"⩴",Congruent:"≡",Conint:"∯",ContourIntegral:"∮",Copf:"ℂ",Coproduct:"∐",CounterClockwiseContourIntegral:"∳",Cross:"⨯",Cscr:"𝒞",Cup:"⋓",CupCap:"≍",DD:"ⅅ",DDotrahd:"⤑",DJcy:"Ђ",DScy:"Ѕ",DZcy:"Џ",Dagger:"‡",Darr:"↡",Dashv:"⫤",Dcaron:"Ď",Dcy:"Д",Del:"∇",Delta:"Δ",Dfr:"𝔇",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",Diamond:"⋄",DifferentialD:"ⅆ",Dopf:"𝔻",Dot:"¨",DotDot:"⃜",DotEqual:"≐",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrow:"↓",DownArrowBar:"⤓",DownArrowUpArrow:"⇵",DownBreve:"̑",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVector:"↽",DownLeftVectorBar:"⥖",DownRightTeeVector:"⥟",DownRightVector:"⇁",DownRightVectorBar:"⥗",DownTee:"⊤",DownTeeArrow:"↧",Downarrow:"⇓",Dscr:"𝒟",Dstrok:"Đ",ENG:"Ŋ",ETH:"Ð",Eacute:"É",Ecaron:"Ě",Ecirc:"Ê",Ecy:"Э",Edot:"Ė",Efr:"𝔈",Egrave:"È",Element:"∈",Emacr:"Ē",EmptySmallSquare:"◻",EmptyVerySmallSquare:"▫",Eogon:"Ę",Eopf:"𝔼",Epsilon:"Ε",Equal:"⩵",EqualTilde:"≂",Equilibrium:"⇌",Escr:"ℰ",Esim:"⩳",Eta:"Η",Euml:"Ë",Exists:"∃",ExponentialE:"ⅇ",Fcy:"Ф",Ffr:"𝔉",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",Fopf:"𝔽",ForAll:"∀",Fouriertrf:"ℱ",Fscr:"ℱ",GJcy:"Ѓ",GT:">",Gamma:"Γ",Gammad:"Ϝ",Gbreve:"Ğ",Gcedil:"Ģ",Gcirc:"Ĝ",Gcy:"Г",Gdot:"Ġ",Gfr:"𝔊",Gg:"⋙",Gopf:"𝔾",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",Gt:"≫",HARDcy:"Ъ",Hacek:"ˇ",Hat:"^",Hcirc:"Ĥ",Hfr:"ℌ",HilbertSpace:"ℋ",Hopf:"ℍ",HorizontalLine:"─",Hscr:"ℋ",Hstrok:"Ħ",HumpDownHump:"≎",HumpEqual:"≏",IEcy:"Е",IJlig:"IJ",IOcy:"Ё",Iacute:"Í",Icirc:"Î",Icy:"И",Idot:"İ",Ifr:"ℑ",Igrave:"Ì",Im:"ℑ",Imacr:"Ī",ImaginaryI:"ⅈ",Implies:"⇒",Int:"∬",Integral:"∫",Intersection:"⋂",InvisibleComma:"⁣",InvisibleTimes:"⁢",Iogon:"Į",Iopf:"𝕀",Iota:"Ι",Iscr:"ℐ",Itilde:"Ĩ",Iukcy:"І",Iuml:"Ï",Jcirc:"Ĵ",Jcy:"Й",Jfr:"𝔍",Jopf:"𝕁",Jscr:"𝒥",Jsercy:"Ј",Jukcy:"Є",KHcy:"Х",KJcy:"Ќ",Kappa:"Κ",Kcedil:"Ķ",Kcy:"К",Kfr:"𝔎",Kopf:"𝕂",Kscr:"𝒦",LJcy:"Љ",LT:"<",Lacute:"Ĺ",Lambda:"Λ",Lang:"⟪",Laplacetrf:"ℒ",Larr:"↞",Lcaron:"Ľ",Lcedil:"Ļ",Lcy:"Л",LeftAngleBracket:"⟨",LeftArrow:"←",LeftArrowBar:"⇤",LeftArrowRightArrow:"⇆",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVector:"⇃",LeftDownVectorBar:"⥙",LeftFloor:"⌊",LeftRightArrow:"↔",LeftRightVector:"⥎",LeftTee:"⊣",LeftTeeArrow:"↤",LeftTeeVector:"⥚",LeftTriangle:"⊲",LeftTriangleBar:"⧏",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVector:"↿",LeftUpVectorBar:"⥘",LeftVector:"↼",LeftVectorBar:"⥒",Leftarrow:"⇐",Leftrightarrow:"⇔",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",LessLess:"⪡",LessSlantEqual:"⩽",LessTilde:"≲",Lfr:"𝔏",Ll:"⋘",Lleftarrow:"⇚",Lmidot:"Ŀ",LongLeftArrow:"⟵",LongLeftRightArrow:"⟷",LongRightArrow:"⟶",Longleftarrow:"⟸",Longleftrightarrow:"⟺",Longrightarrow:"⟹",Lopf:"𝕃",LowerLeftArrow:"↙",LowerRightArrow:"↘",Lscr:"ℒ",Lsh:"↰",Lstrok:"Ł",Lt:"≪",Map:"⤅",Mcy:"М",MediumSpace:" ",Mellintrf:"ℳ",Mfr:"𝔐",MinusPlus:"∓",Mopf:"𝕄",Mscr:"ℳ",Mu:"Μ",NJcy:"Њ",Nacute:"Ń",Ncaron:"Ň",Ncedil:"Ņ",Ncy:"Н",NegativeMediumSpace:"​",NegativeThickSpace:"​",NegativeThinSpace:"​",NegativeVeryThinSpace:"​",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:` `,Nfr:"𝔑",NoBreak:"⁠",NonBreakingSpace:" ",Nopf:"ℕ",Not:"⫬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",NotLeftTriangle:"⋪",NotLeftTriangleBar:"⧏̸",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangle:"⋫",NotRightTriangleBar:"⧐̸",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",Nscr:"𝒩",Ntilde:"Ñ",Nu:"Ν",OElig:"Œ",Oacute:"Ó",Ocirc:"Ô",Ocy:"О",Odblac:"Ő",Ofr:"𝔒",Ograve:"Ò",Omacr:"Ō",Omega:"Ω",Omicron:"Ο",Oopf:"𝕆",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",Or:"⩔",Oscr:"𝒪",Oslash:"Ø",Otilde:"Õ",Otimes:"⨷",Ouml:"Ö",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",PartialD:"∂",Pcy:"П",Pfr:"𝔓",Phi:"Φ",Pi:"Π",PlusMinus:"±",Poincareplane:"ℌ",Popf:"ℙ",Pr:"⪻",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",Prime:"″",Product:"∏",Proportion:"∷",Proportional:"∝",Pscr:"𝒫",Psi:"Ψ",QUOT:'"',Qfr:"𝔔",Qopf:"ℚ",Qscr:"𝒬",RBarr:"⤐",REG:"®",Racute:"Ŕ",Rang:"⟫",Rarr:"↠",Rarrtl:"⤖",Rcaron:"Ř",Rcedil:"Ŗ",Rcy:"Р",Re:"ℜ",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",Rfr:"ℜ",Rho:"Ρ",RightAngleBracket:"⟩",RightArrow:"→",RightArrowBar:"⇥",RightArrowLeftArrow:"⇄",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVector:"⇂",RightDownVectorBar:"⥕",RightFloor:"⌋",RightTee:"⊢",RightTeeArrow:"↦",RightTeeVector:"⥛",RightTriangle:"⊳",RightTriangleBar:"⧐",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVector:"↾",RightUpVectorBar:"⥔",RightVector:"⇀",RightVectorBar:"⥓",Rightarrow:"⇒",Ropf:"ℝ",RoundImplies:"⥰",Rrightarrow:"⇛",Rscr:"ℛ",Rsh:"↱",RuleDelayed:"⧴",SHCHcy:"Щ",SHcy:"Ш",SOFTcy:"Ь",Sacute:"Ś",Sc:"⪼",Scaron:"Š",Scedil:"Ş",Scirc:"Ŝ",Scy:"С",Sfr:"𝔖",ShortDownArrow:"↓",ShortLeftArrow:"←",ShortRightArrow:"→",ShortUpArrow:"↑",Sigma:"Σ",SmallCircle:"∘",Sopf:"𝕊",Sqrt:"√",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",Sscr:"𝒮",Star:"⋆",Sub:"⋐",Subset:"⋐",SubsetEqual:"⊆",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",SuchThat:"∋",Sum:"∑",Sup:"⋑",Superset:"⊃",SupersetEqual:"⊇",Supset:"⋑",THORN:"Þ",TRADE:"™",TSHcy:"Ћ",TScy:"Ц",Tab:" ",Tau:"Τ",Tcaron:"Ť",Tcedil:"Ţ",Tcy:"Т",Tfr:"𝔗",Therefore:"∴",Theta:"Θ",ThickSpace:"  ",ThinSpace:" ",Tilde:"∼",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",Topf:"𝕋",TripleDot:"⃛",Tscr:"𝒯",Tstrok:"Ŧ",Uacute:"Ú",Uarr:"↟",Uarrocir:"⥉",Ubrcy:"Ў",Ubreve:"Ŭ",Ucirc:"Û",Ucy:"У",Udblac:"Ű",Ufr:"𝔘",Ugrave:"Ù",Umacr:"Ū",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",Uogon:"Ų",Uopf:"𝕌",UpArrow:"↑",UpArrowBar:"⤒",UpArrowDownArrow:"⇅",UpDownArrow:"↕",UpEquilibrium:"⥮",UpTee:"⊥",UpTeeArrow:"↥",Uparrow:"⇑",Updownarrow:"⇕",UpperLeftArrow:"↖",UpperRightArrow:"↗",Upsi:"ϒ",Upsilon:"Υ",Uring:"Ů",Uscr:"𝒰",Utilde:"Ũ",Uuml:"Ü",VDash:"⊫",Vbar:"⫫",Vcy:"В",Vdash:"⊩",Vdashl:"⫦",Vee:"⋁",Verbar:"‖",Vert:"‖",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",Vfr:"𝔙",Vopf:"𝕍",Vscr:"𝒱",Vvdash:"⊪",Wcirc:"Ŵ",Wedge:"⋀",Wfr:"𝔚",Wopf:"𝕎",Wscr:"𝒲",Xfr:"𝔛",Xi:"Ξ",Xopf:"𝕏",Xscr:"𝒳",YAcy:"Я",YIcy:"Ї",YUcy:"Ю",Yacute:"Ý",Ycirc:"Ŷ",Ycy:"Ы",Yfr:"𝔜",Yopf:"𝕐",Yscr:"𝒴",Yuml:"Ÿ",ZHcy:"Ж",Zacute:"Ź",Zcaron:"Ž",Zcy:"З",Zdot:"Ż",ZeroWidthSpace:"​",Zeta:"Ζ",Zfr:"ℨ",Zopf:"ℤ",Zscr:"𝒵",aacute:"á",abreve:"ă",ac:"∾",acE:"∾̳",acd:"∿",acirc:"â",acute:"´",acy:"а",aelig:"æ",af:"⁡",afr:"𝔞",agrave:"à",alefsym:"ℵ",aleph:"ℵ",alpha:"α",amacr:"ā",amalg:"⨿",amp:"&",and:"∧",andand:"⩕",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsd:"∡",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",aogon:"ą",aopf:"𝕒",ap:"≈",apE:"⩰",apacir:"⩯",ape:"≊",apid:"≋",apos:"'",approx:"≈",approxeq:"≊",aring:"å",ascr:"𝒶",ast:"*",asymp:"≈",asympeq:"≍",atilde:"ã",auml:"ä",awconint:"∳",awint:"⨑",bNot:"⫭",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",barvee:"⊽",barwed:"⌅",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",bcy:"б",bdquo:"„",becaus:"∵",because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",beta:"β",beth:"ℶ",between:"≬",bfr:"𝔟",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bnot:"⌐",bopf:"𝕓",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxDL:"╗",boxDR:"╔",boxDl:"╖",boxDr:"╓",boxH:"═",boxHD:"╦",boxHU:"╩",boxHd:"╤",boxHu:"╧",boxUL:"╝",boxUR:"╚",boxUl:"╜",boxUr:"╙",boxV:"║",boxVH:"╬",boxVL:"╣",boxVR:"╠",boxVh:"╫",boxVl:"╢",boxVr:"╟",boxbox:"⧉",boxdL:"╕",boxdR:"╒",boxdl:"┐",boxdr:"┌",boxh:"─",boxhD:"╥",boxhU:"╨",boxhd:"┬",boxhu:"┴",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxuL:"╛",boxuR:"╘",boxul:"┘",boxur:"└",boxv:"│",boxvH:"╪",boxvL:"╡",boxvR:"╞",boxvh:"┼",boxvl:"┤",boxvr:"├",bprime:"‵",breve:"˘",brvbar:"¦",bscr:"𝒷",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsol:"\\",bsolb:"⧅",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpE:"⪮",bumpe:"≏",bumpeq:"≏",cacute:"ć",cap:"∩",capand:"⩄",capbrcup:"⩉",capcap:"⩋",capcup:"⩇",capdot:"⩀",caps:"∩︀",caret:"⁁",caron:"ˇ",ccaps:"⩍",ccaron:"č",ccedil:"ç",ccirc:"ĉ",ccups:"⩌",ccupssm:"⩐",cdot:"ċ",cedil:"¸",cemptyv:"⦲",cent:"¢",centerdot:"·",cfr:"𝔠",chcy:"ч",check:"✓",checkmark:"✓",chi:"χ",cir:"○",cirE:"⧃",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledR:"®",circledS:"Ⓢ",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",cire:"≗",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",clubs:"♣",clubsuit:"♣",colon:":",colone:"≔",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",conint:"∮",copf:"𝕔",coprod:"∐",copy:"©",copysr:"℗",crarr:"↵",cross:"✗",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",cup:"∪",cupbrcap:"⩈",cupcap:"⩆",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",dArr:"⇓",dHar:"⥥",dagger:"†",daleth:"ℸ",darr:"↓",dash:"‐",dashv:"⊣",dbkarow:"⤏",dblac:"˝",dcaron:"ď",dcy:"д",dd:"ⅆ",ddagger:"‡",ddarr:"⇊",ddotseq:"⩷",deg:"°",delta:"δ",demptyv:"⦱",dfisht:"⥿",dfr:"𝔡",dharl:"⇃",dharr:"⇂",diam:"⋄",diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",djcy:"ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",dopf:"𝕕",dot:"˙",doteq:"≐",doteqdot:"≑",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",downarrow:"↓",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",dscr:"𝒹",dscy:"ѕ",dsol:"⧶",dstrok:"đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",dzcy:"џ",dzigrarr:"⟿",eDDot:"⩷",eDot:"≑",eacute:"é",easter:"⩮",ecaron:"ě",ecir:"≖",ecirc:"ê",ecolon:"≕",ecy:"э",edot:"ė",ee:"ⅇ",efDot:"≒",efr:"𝔢",eg:"⪚",egrave:"è",egs:"⪖",egsdot:"⪘",el:"⪙",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",emacr:"ē",empty:"∅",emptyset:"∅",emptyv:"∅",emsp13:" ",emsp14:" ",emsp:" ",eng:"ŋ",ensp:" ",eogon:"ę",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",epsilon:"ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",equals:"=",equest:"≟",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erDot:"≓",erarr:"⥱",escr:"ℯ",esdot:"≐",esim:"≂",eta:"η",eth:"ð",euml:"ë",euro:"€",excl:"!",exist:"∃",expectation:"ℰ",exponentiale:"ⅇ",fallingdotseq:"≒",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",ffr:"𝔣",filig:"fi",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",fopf:"𝕗",forall:"∀",fork:"⋔",forkv:"⫙",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",fscr:"𝒻",gE:"≧",gEl:"⪌",gacute:"ǵ",gamma:"γ",gammad:"ϝ",gap:"⪆",gbreve:"ğ",gcirc:"ĝ",gcy:"г",gdot:"ġ",ge:"≥",gel:"⋛",geq:"≥",geqq:"≧",geqslant:"⩾",ges:"⩾",gescc:"⪩",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",gfr:"𝔤",gg:"≫",ggg:"⋙",gimel:"ℷ",gjcy:"ѓ",gl:"≷",glE:"⪒",gla:"⪥",glj:"⪤",gnE:"≩",gnap:"⪊",gnapprox:"⪊",gne:"⪈",gneq:"⪈",gneqq:"≩",gnsim:"⋧",gopf:"𝕘",grave:"`",gscr:"ℊ",gsim:"≳",gsime:"⪎",gsiml:"⪐",gt:">",gtcc:"⪧",gtcir:"⩺",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",hArr:"⇔",hairsp:" ",half:"½",hamilt:"ℋ",hardcy:"ъ",harr:"↔",harrcir:"⥈",harrw:"↭",hbar:"ℏ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",hfr:"𝔥",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",hopf:"𝕙",horbar:"―",hscr:"𝒽",hslash:"ℏ",hstrok:"ħ",hybull:"⁃",hyphen:"‐",iacute:"í",ic:"⁣",icirc:"î",icy:"и",iecy:"е",iexcl:"¡",iff:"⇔",ifr:"𝔦",igrave:"ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",ijlig:"ij",imacr:"ī",image:"ℑ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",imof:"⊷",imped:"Ƶ",in:"∈",incare:"℅",infin:"∞",infintie:"⧝",inodot:"ı",int:"∫",intcal:"⊺",integers:"ℤ",intercal:"⊺",intlarhk:"⨗",intprod:"⨼",iocy:"ё",iogon:"į",iopf:"𝕚",iota:"ι",iprod:"⨼",iquest:"¿",iscr:"𝒾",isin:"∈",isinE:"⋹",isindot:"⋵",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"⁢",itilde:"ĩ",iukcy:"і",iuml:"ï",jcirc:"ĵ",jcy:"й",jfr:"𝔧",jmath:"ȷ",jopf:"𝕛",jscr:"𝒿",jsercy:"ј",jukcy:"є",kappa:"κ",kappav:"ϰ",kcedil:"ķ",kcy:"к",kfr:"𝔨",kgreen:"ĸ",khcy:"х",kjcy:"ќ",kopf:"𝕜",kscr:"𝓀",lAarr:"⇚",lArr:"⇐",lAtail:"⤛",lBarr:"⤎",lE:"≦",lEg:"⪋",lHar:"⥢",lacute:"ĺ",laemptyv:"⦴",lagran:"ℒ",lambda:"λ",lang:"⟨",langd:"⦑",langle:"⟨",lap:"⪅",laquo:"«",larr:"←",larrb:"⇤",larrbfs:"⤟",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",lat:"⪫",latail:"⤙",late:"⪭",lates:"⪭︀",lbarr:"⤌",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",lcaron:"ľ",lcedil:"ļ",lceil:"⌈",lcub:"{",lcy:"л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",le:"≤",leftarrow:"←",leftarrowtail:"↢",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",leftrightarrow:"↔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",leftthreetimes:"⋋",leg:"⋚",leq:"≤",leqq:"≦",leqslant:"⩽",les:"⩽",lescc:"⪨",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",lessgtr:"≶",lesssim:"≲",lfisht:"⥼",lfloor:"⌊",lfr:"𝔩",lg:"≶",lgE:"⪑",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",ljcy:"љ",ll:"≪",llarr:"⇇",llcorner:"⌞",llhard:"⥫",lltri:"◺",lmidot:"ŀ",lmoust:"⎰",lmoustache:"⎰",lnE:"≨",lnap:"⪉",lnapprox:"⪉",lne:"⪇",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",longleftarrow:"⟵",longleftrightarrow:"⟷",longmapsto:"⟼",longrightarrow:"⟶",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"‎",lrtri:"⊿",lsaquo:"‹",lscr:"𝓁",lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",lstrok:"ł",lt:"<",ltcc:"⪦",ltcir:"⩹",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltrPar:"⦖",ltri:"◃",ltrie:"⊴",ltrif:"◂",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",mDDot:"∺",macr:"¯",male:"♂",malt:"✠",maltese:"✠",map:"↦",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",mcy:"м",mdash:"—",measuredangle:"∡",mfr:"𝔪",mho:"℧",micro:"µ",mid:"∣",midast:"*",midcir:"⫰",middot:"·",minus:"−",minusb:"⊟",minusd:"∸",minusdu:"⨪",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",mopf:"𝕞",mp:"∓",mscr:"𝓂",mstpos:"∾",mu:"μ",multimap:"⊸",mumap:"⊸",nGg:"⋙̸",nGt:"≫⃒",nGtv:"≫̸",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nLl:"⋘̸",nLt:"≪⃒",nLtv:"≪̸",nRightarrow:"⇏",nVDash:"⊯",nVdash:"⊮",nabla:"∇",nacute:"ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natur:"♮",natural:"♮",naturals:"ℕ",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",ncaron:"ň",ncedil:"ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",ncy:"н",ndash:"–",ne:"≠",neArr:"⇗",nearhk:"⤤",nearr:"↗",nearrow:"↗",nedot:"≐̸",nequiv:"≢",nesear:"⤨",nesim:"≂̸",nexist:"∄",nexists:"∄",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",ngsim:"≵",ngt:"≯",ngtr:"≯",nhArr:"⇎",nharr:"↮",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",njcy:"њ",nlArr:"⇍",nlE:"≦̸",nlarr:"↚",nldr:"‥",nle:"≰",nleftarrow:"↚",nleftrightarrow:"↮",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nlsim:"≴",nlt:"≮",nltri:"⋪",nltrie:"⋬",nmid:"∤",nopf:"𝕟",not:"¬",notin:"∉",notinE:"⋹̸",notindot:"⋵̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",npar:"∦",nparallel:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",npre:"⪯̸",nprec:"⊀",npreceq:"⪯̸",nrArr:"⇏",nrarr:"↛",nrarrc:"⤳̸",nrarrw:"↝̸",nrightarrow:"↛",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",nu:"ν",num:"#",numero:"№",numsp:" ",nvDash:"⊭",nvHarr:"⤄",nvap:"≍⃒",nvdash:"⊬",nvge:"≥⃒",nvgt:">⃒",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwArr:"⇖",nwarhk:"⤣",nwarr:"↖",nwarrow:"↖",nwnear:"⤧",oS:"Ⓢ",oacute:"ó",oast:"⊛",ocir:"⊚",ocirc:"ô",ocy:"о",odash:"⊝",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",oelig:"œ",ofcir:"⦿",ofr:"𝔬",ogon:"˛",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",omacr:"ō",omega:"ω",omicron:"ο",omid:"⦶",ominus:"⊖",oopf:"𝕠",opar:"⦷",operp:"⦹",oplus:"⊕",or:"∨",orarr:"↻",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oscr:"ℴ",oslash:"ø",osol:"⊘",otilde:"õ",otimes:"⊗",otimesas:"⨶",ouml:"ö",ovbar:"⌽",par:"∥",para:"¶",parallel:"∥",parsim:"⫳",parsl:"⫽",part:"∂",pcy:"п",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",pfr:"𝔭",phi:"φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",pi:"π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plus:"+",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plusdo:"∔",plusdu:"⨥",pluse:"⩲",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",pointint:"⨕",popf:"𝕡",pound:"£",pr:"≺",prE:"⪳",prap:"⪷",prcue:"≼",pre:"⪯",prec:"≺",precapprox:"⪷",preccurlyeq:"≼",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",precsim:"≾",prime:"′",primes:"ℙ",prnE:"⪵",prnap:"⪹",prnsim:"⋨",prod:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",propto:"∝",prsim:"≾",prurel:"⊰",pscr:"𝓅",psi:"ψ",puncsp:" ",qfr:"𝔮",qint:"⨌",qopf:"𝕢",qprime:"⁗",qscr:"𝓆",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",quot:'"',rAarr:"⇛",rArr:"⇒",rAtail:"⤜",rBarr:"⤏",rHar:"⥤",race:"∽̱",racute:"ŕ",radic:"√",raemptyv:"⦳",rang:"⟩",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",rarr:"→",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",rarrtl:"↣",rarrw:"↝",ratail:"⤚",ratio:"∶",rationals:"ℚ",rbarr:"⤍",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",rcaron:"ř",rcedil:"ŗ",rceil:"⌉",rcub:"}",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",rect:"▭",reg:"®",rfisht:"⥽",rfloor:"⌋",rfr:"𝔯",rhard:"⇁",rharu:"⇀",rharul:"⥬",rho:"ρ",rhov:"ϱ",rightarrow:"→",rightarrowtail:"↣",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",rightthreetimes:"⋌",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"‏",rmoust:"⎱",rmoustache:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",ropf:"𝕣",roplus:"⨮",rotimes:"⨵",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",rsaquo:"›",rscr:"𝓇",rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",ruluhar:"⥨",rx:"℞",sacute:"ś",sbquo:"‚",sc:"≻",scE:"⪴",scap:"⪸",scaron:"š",sccue:"≽",sce:"⪰",scedil:"ş",scirc:"ŝ",scnE:"⪶",scnap:"⪺",scnsim:"⋩",scpolint:"⨓",scsim:"≿",scy:"с",sdot:"⋅",sdotb:"⊡",sdote:"⩦",seArr:"⇘",searhk:"⤥",searr:"↘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",sfr:"𝔰",sfrown:"⌢",sharp:"♯",shchcy:"щ",shcy:"ш",shortmid:"∣",shortparallel:"∥",shy:"­",sigma:"σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",softcy:"ь",sol:"/",solb:"⧄",solbar:"⌿",sopf:"𝕤",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",squ:"□",square:"□",squarf:"▪",squf:"▪",srarr:"→",sscr:"𝓈",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",star:"☆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",sub:"⊂",subE:"⫅",subdot:"⪽",sube:"⊆",subedot:"⫃",submult:"⫁",subnE:"⫋",subne:"⊊",subplus:"⪿",subrarr:"⥹",subset:"⊂",subseteq:"⊆",subseteqq:"⫅",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succ:"≻",succapprox:"⪸",succcurlyeq:"≽",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",sum:"∑",sung:"♪",sup1:"¹",sup2:"²",sup3:"³",sup:"⊃",supE:"⫆",supdot:"⪾",supdsub:"⫘",supe:"⊇",supedot:"⫄",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supne:"⊋",supplus:"⫀",supset:"⊃",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swArr:"⇙",swarhk:"⤦",swarr:"↙",swarrow:"↙",swnwar:"⤪",szlig:"ß",target:"⌖",tau:"τ",tbrk:"⎴",tcaron:"ť",tcedil:"ţ",tcy:"т",tdot:"⃛",telrec:"⌕",tfr:"𝔱",there4:"∴",therefore:"∴",theta:"θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",thinsp:" ",thkap:"≈",thksim:"∼",thorn:"þ",tilde:"˜",times:"×",timesb:"⊠",timesbar:"⨱",timesd:"⨰",tint:"∭",toea:"⤨",top:"⊤",topbot:"⌶",topcir:"⫱",topf:"𝕥",topfork:"⫚",tosa:"⤩",tprime:"‴",trade:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",tscr:"𝓉",tscy:"ц",tshcy:"ћ",tstrok:"ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",uArr:"⇑",uHar:"⥣",uacute:"ú",uarr:"↑",ubrcy:"ў",ubreve:"ŭ",ucirc:"û",ucy:"у",udarr:"⇅",udblac:"ű",udhar:"⥮",ufisht:"⥾",ufr:"𝔲",ugrave:"ù",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",umacr:"ū",uml:"¨",uogon:"ų",uopf:"𝕦",uparrow:"↑",updownarrow:"↕",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",upsi:"υ",upsih:"ϒ",upsilon:"υ",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",uring:"ů",urtri:"◹",uscr:"𝓊",utdot:"⋰",utilde:"ũ",utri:"▵",utrif:"▴",uuarr:"⇈",uuml:"ü",uwangle:"⦧",vArr:"⇕",vBar:"⫨",vBarv:"⫩",vDash:"⊨",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",varr:"↕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",vcy:"в",vdash:"⊢",vee:"∨",veebar:"⊻",veeeq:"≚",vellip:"⋮",verbar:"|",vert:"|",vfr:"𝔳",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",vopf:"𝕧",vprop:"∝",vrtri:"⊳",vscr:"𝓋",vsubnE:"⫋︀",vsubne:"⊊︀",vsupnE:"⫌︀",vsupne:"⊋︀",vzigzag:"⦚",wcirc:"ŵ",wedbar:"⩟",wedge:"∧",wedgeq:"≙",weierp:"℘",wfr:"𝔴",wopf:"𝕨",wp:"℘",wr:"≀",wreath:"≀",wscr:"𝓌",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",xfr:"𝔵",xhArr:"⟺",xharr:"⟷",xi:"ξ",xlArr:"⟸",xlarr:"⟵",xmap:"⟼",xnis:"⋻",xodot:"⨀",xopf:"𝕩",xoplus:"⨁",xotime:"⨂",xrArr:"⟹",xrarr:"⟶",xscr:"𝓍",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",yacute:"ý",yacy:"я",ycirc:"ŷ",ycy:"ы",yen:"¥",yfr:"𝔶",yicy:"ї",yopf:"𝕪",yscr:"𝓎",yucy:"ю",yuml:"ÿ",zacute:"ź",zcaron:"ž",zcy:"з",zdot:"ż",zeetrf:"ℨ",zeta:"ζ",zfr:"𝔷",zhcy:"ж",zigrarr:"⇝",zopf:"𝕫",zscr:"𝓏",zwj:"‍",zwnj:"‌"},yxe={}.hasOwnProperty;function Q_(e){return yxe.call(uI,e)?uI[e]:!1}function pI(e,r){const n=Number.parseInt(e,r);return n<9||n===11||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}const vxe=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function bxe(e){return e.replace(vxe,xxe)}function xxe(e,r,n){if(r)return r;if(n.charCodeAt(0)===35){const i=n.charCodeAt(1),a=i===120||i===88;return pI(n.slice(a?2:1),a?16:10)}return Q_(n)||e}function wxe(){return{enter:{table:kxe,tableData:hI,tableHeader:hI,tableRow:Sxe},exit:{codeText:Exe,table:_xe,tableData:J_,tableHeader:J_,tableRow:J_}}}function kxe(e){const r=e._align;this.enter({type:"table",align:r.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function _xe(e){this.exit(e),this.data.inTable=void 0}function Sxe(e){this.enter({type:"tableRow",children:[]},e)}function J_(e){this.exit(e)}function hI(e){this.enter({type:"tableCell",children:[]},e)}function Exe(e){let r=this.resume();this.data.inTable&&(r=r.replace(/\\([\\|])/g,Cxe));const n=this.stack[this.stack.length-1];n.type,n.value=r,this.exit(e)}function Cxe(e,r){return r==="|"?r:e}function $xe(e){const r=e||{},n=r.tableCellPadding,o=r.tablePipeAlign,i=r.stringLength,a=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:` -`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:f,table:l,tableCell:c,tableRow:s}};function l(g,v,w,x){return d(u(g,w,x),g.align)}function s(g,v,w,x){const k=p(g,w,x),C=d([k]);return C.slice(0,C.indexOf(` -`))}function c(g,v,w,x){const k=w.enter("tableCell"),C=w.enter("phrasing"),_=w.containerPhrasing(g,{...x,before:a,after:a});return C(),k(),_}function d(g,v){return Nbe(g,{align:v,alignDelimiters:o,padding:n,stringLength:i})}function u(g,v,w){const x=g.children;let k=-1;const C=[],_=v.enter("table");for(;++ki?0:i+r:r=r>i?i:r,n=n>0?n:0,o.length<1e4)l=Array.from(o),l.unshift(r,n),e.splice(...l);else for(n&&e.splice(r,n);a0?(xi(e,e.length,0,r),e):r}const mI={}.hasOwnProperty;function gI(e){const r={};let n=-1;for(;++n0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}function Vh(e){const r=[];let n=-1,o=0,i=0;for(;++n55295&&a<57344){const s=e.charCodeAt(n+1);a<56320&&s>56319&&s<57344?(l=String.fromCharCode(a,s),i=1):l="�"}else l=String.fromCharCode(a);l&&(r.push(e.slice(o,n),encodeURIComponent(l)),o=n+i+1,l=""),i&&(n+=i,i=0)}return r.join("")+e.slice(o)}function Ub(e,r,n){const o=[];let i=-1;for(;++i1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const p={...e[o][1].end},f={...e[n][1].start};EI(p,-c),EI(f,c),l={type:c>1?"strongSequence":"emphasisSequence",start:p,end:{...e[o][1].end}},s={type:c>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:f},a={type:c>1?"strongText":"emphasisText",start:{...e[o][1].end},end:{...e[n][1].start}},i={type:c>1?"strong":"emphasis",start:{...l.start},end:{...s.end}},e[o][1].end={...l.start},e[n][1].start={...s.end},d=[],e[o][1].end.offset-e[o][1].start.offset&&(d=Qi(d,[["enter",e[o][1],r],["exit",e[o][1],r]])),d=Qi(d,[["enter",i,r],["enter",l,r],["exit",l,r],["enter",a,r]]),d=Qi(d,Ub(r.parser.constructs.insideSpan.null,e.slice(o+1,n),r)),d=Qi(d,[["exit",a,r],["enter",s,r],["exit",s,r],["exit",i,r]]),e[n][1].end.offset-e[n][1].start.offset?(u=2,d=Qi(d,[["enter",e[n][1],r],["exit",e[n][1],r]])):u=0,xi(e,o-1,n-o+3,d),n=o+d.length-u-2;break}}for(n=-1;++n0&&Vt(T)?Zt(e,C,"linePrefix",a+1)(T):C(T)}function C(T){return T===null||gt(T)?e.check(zI,w,$)(T):(e.enter("codeFlowValue"),_(T))}function _(T){return T===null||gt(T)?(e.exit("codeFlowValue"),C(T)):(e.consume(T),_)}function $(T){return e.exit("codeFenced"),r(T)}function R(T,A,z){let j=0;return I;function I(V){return T.enter("lineEnding"),T.consume(V),T.exit("lineEnding"),P}function P(V){return T.enter("codeFencedFence"),Vt(V)?Zt(T,L,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(V):L(V)}function L(V){return V===s?(T.enter("codeFencedFenceSequence"),H(V)):z(V)}function H(V){return V===s?(j++,T.consume(V),H):j>=l?(T.exit("codeFencedFenceSequence"),Vt(V)?Zt(T,M,"whitespace")(V):M(V)):z(V)}function M(V){return V===null||gt(V)?(T.exit("codeFencedFence"),A(V)):z(V)}}}function owe(e,r,n){const o=this;return i;function i(l){return l===null?n(l):(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a)}function a(l){return o.parser.lazy[o.now().line]?n(l):r(l)}}const n8={name:"codeIndented",tokenize:awe},iwe={partial:!0,tokenize:lwe};function awe(e,r,n){const o=this;return i;function i(d){return e.enter("codeIndented"),Zt(e,a,"linePrefix",5)(d)}function a(d){const u=o.events[o.events.length-1];return u&&u[1].type==="linePrefix"&&u[2].sliceSerialize(u[1],!0).length>=4?l(d):n(d)}function l(d){return d===null?c(d):gt(d)?e.attempt(iwe,l,c)(d):(e.enter("codeFlowValue"),s(d))}function s(d){return d===null||gt(d)?(e.exit("codeFlowValue"),l(d)):(e.consume(d),s)}function c(d){return e.exit("codeIndented"),r(d)}}function lwe(e,r,n){const o=this;return i;function i(l){return o.parser.lazy[o.now().line]?n(l):gt(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),i):Zt(e,a,"linePrefix",5)(l)}function a(l){const s=o.events[o.events.length-1];return s&&s[1].type==="linePrefix"&&s[2].sliceSerialize(s[1],!0).length>=4?r(l):gt(l)?i(l):n(l)}}const swe={name:"codeText",previous:dwe,resolve:cwe,tokenize:uwe};function cwe(e){let r=e.length-4,n=3,o,i;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[r][1].type==="lineEnding"||e[r][1].type==="space")){for(o=n;++o=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+r+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return rthis.left.length?this.right.slice(this.right.length-o+this.left.length,this.right.length-r+this.left.length).reverse():this.left.slice(r).concat(this.right.slice(this.right.length-o+this.left.length).reverse())}splice(r,n,o){const i=n||0;this.setCursor(Math.trunc(r));const a=this.right.splice(this.right.length-i,Number.POSITIVE_INFINITY);return o&&c1(this.left,o),a.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(r){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(r)}pushMany(r){this.setCursor(Number.POSITIVE_INFINITY),c1(this.left,r)}unshift(r){this.setCursor(0),this.right.push(r)}unshiftMany(r){this.setCursor(0),c1(this.right,r.reverse())}setCursor(r){if(!(r===this.left.length||r>this.left.length&&this.right.length===0||r<0&&this.left.length===0))if(r=4?r(l):e.interrupt(o.parser.constructs.flow,n,r)(l)}}function AI(e,r,n,o,i,a,l,s,c){const d=c||Number.POSITIVE_INFINITY;let u=0;return p;function p(k){return k===60?(e.enter(o),e.enter(i),e.enter(a),e.consume(k),e.exit(a),f):k===null||k===32||k===41||Ob(k)?n(k):(e.enter(o),e.enter(l),e.enter(s),e.enter("chunkString",{contentType:"string"}),w(k))}function f(k){return k===62?(e.enter(a),e.consume(k),e.exit(a),e.exit(i),e.exit(o),r):(e.enter(s),e.enter("chunkString",{contentType:"string"}),g(k))}function g(k){return k===62?(e.exit("chunkString"),e.exit(s),f(k)):k===null||k===60||gt(k)?n(k):(e.consume(k),k===92?v:g)}function v(k){return k===60||k===62||k===92?(e.consume(k),g):g(k)}function w(k){return!u&&(k===null||k===41||Sr(k))?(e.exit("chunkString"),e.exit(s),e.exit(l),e.exit(o),r(k)):u999||g===null||g===91||g===93&&!c||g===94&&!s&&"_hiddenFootnoteSupport"in l.parser.constructs?n(g):g===93?(e.exit(a),e.enter(i),e.consume(g),e.exit(i),e.exit(o),r):gt(g)?(e.enter("lineEnding"),e.consume(g),e.exit("lineEnding"),u):(e.enter("chunkString",{contentType:"string"}),p(g))}function p(g){return g===null||g===91||g===93||gt(g)||s++>999?(e.exit("chunkString"),u(g)):(e.consume(g),c||(c=!Vt(g)),g===92?f:p)}function f(g){return g===91||g===92||g===93?(e.consume(g),s++,p):p(g)}}function MI(e,r,n,o,i,a){let l;return s;function s(f){return f===34||f===39||f===40?(e.enter(o),e.enter(i),e.consume(f),e.exit(i),l=f===40?41:f,c):n(f)}function c(f){return f===l?(e.enter(i),e.consume(f),e.exit(i),e.exit(o),r):(e.enter(a),d(f))}function d(f){return f===l?(e.exit(a),c(l)):f===null?n(f):gt(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),Zt(e,d,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),u(f))}function u(f){return f===l||f===null||gt(f)?(e.exit("chunkString"),d(f)):(e.consume(f),f===92?p:u)}function p(f){return f===l||f===92?(e.consume(f),u):u(f)}}function d1(e,r){let n;return o;function o(i){return gt(i)?(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),n=!0,o):Vt(i)?Zt(e,o,n?"linePrefix":"lineSuffix")(i):r(i)}}const bwe={name:"definition",tokenize:wwe},xwe={partial:!0,tokenize:kwe};function wwe(e,r,n){const o=this;let i;return a;function a(g){return e.enter("definition"),l(g)}function l(g){return DI.call(o,e,s,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(g)}function s(g){return i=Ua(o.sliceSerialize(o.events[o.events.length-1][1]).slice(1,-1)),g===58?(e.enter("definitionMarker"),e.consume(g),e.exit("definitionMarker"),c):n(g)}function c(g){return Sr(g)?d1(e,d)(g):d(g)}function d(g){return AI(e,u,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(g)}function u(g){return e.attempt(xwe,p,p)(g)}function p(g){return Vt(g)?Zt(e,f,"whitespace")(g):f(g)}function f(g){return g===null||gt(g)?(e.exit("definition"),o.parser.defined.push(i),r(g)):n(g)}}function kwe(e,r,n){return o;function o(s){return Sr(s)?d1(e,i)(s):n(s)}function i(s){return MI(e,a,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(s)}function a(s){return Vt(s)?Zt(e,l,"whitespace")(s):l(s)}function l(s){return s===null||gt(s)?r(s):n(s)}}const _we={name:"hardBreakEscape",tokenize:Swe};function Swe(e,r,n){return o;function o(a){return e.enter("hardBreakEscape"),e.consume(a),i}function i(a){return gt(a)?(e.exit("hardBreakEscape"),r(a)):n(a)}}const Ewe={name:"headingAtx",resolve:Cwe,tokenize:$we};function Cwe(e,r){let n=e.length-2,o=3,i,a;return e[o][1].type==="whitespace"&&(o+=2),n-2>o&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(o===n-1||n-4>o&&e[n-2][1].type==="whitespace")&&(n-=o+1===n?2:4),n>o&&(i={type:"atxHeadingText",start:e[o][1].start,end:e[n][1].end},a={type:"chunkText",start:e[o][1].start,end:e[n][1].end,contentType:"text"},xi(e,o,n-o+1,[["enter",i,r],["enter",a,r],["exit",a,r],["exit",i,r]])),e}function $we(e,r,n){let o=0;return i;function i(u){return e.enter("atxHeading"),a(u)}function a(u){return e.enter("atxHeadingSequence"),l(u)}function l(u){return u===35&&o++<6?(e.consume(u),l):u===null||Sr(u)?(e.exit("atxHeadingSequence"),s(u)):n(u)}function s(u){return u===35?(e.enter("atxHeadingSequence"),c(u)):u===null||gt(u)?(e.exit("atxHeading"),r(u)):Vt(u)?Zt(e,s,"whitespace")(u):(e.enter("atxHeadingText"),d(u))}function c(u){return u===35?(e.consume(u),c):(e.exit("atxHeadingSequence"),s(u))}function d(u){return u===null||u===35||Sr(u)?(e.exit("atxHeadingText"),s(u)):(e.consume(u),d)}}const Rwe=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],NI=["pre","script","style","textarea"],zwe={concrete:!0,name:"htmlFlow",resolveTo:Awe,tokenize:Dwe},Twe={partial:!0,tokenize:Nwe},jwe={partial:!0,tokenize:Mwe};function Awe(e){let r=e.length;for(;r--&&!(e[r][0]==="enter"&&e[r][1].type==="htmlFlow"););return r>1&&e[r-2][1].type==="linePrefix"&&(e[r][1].start=e[r-2][1].start,e[r+1][1].start=e[r-2][1].start,e.splice(r-2,2)),e}function Dwe(e,r,n){const o=this;let i,a,l,s,c;return d;function d(O){return u(O)}function u(O){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(O),p}function p(O){return O===33?(e.consume(O),f):O===47?(e.consume(O),a=!0,w):O===63?(e.consume(O),i=3,o.interrupt?r:U):Bo(O)?(e.consume(O),l=String.fromCharCode(O),x):n(O)}function f(O){return O===45?(e.consume(O),i=2,g):O===91?(e.consume(O),i=5,s=0,v):Bo(O)?(e.consume(O),i=4,o.interrupt?r:U):n(O)}function g(O){return O===45?(e.consume(O),o.interrupt?r:U):n(O)}function v(O){const W="CDATA[";return O===W.charCodeAt(s++)?(e.consume(O),s===W.length?o.interrupt?r:L:v):n(O)}function w(O){return Bo(O)?(e.consume(O),l=String.fromCharCode(O),x):n(O)}function x(O){if(O===null||O===47||O===62||Sr(O)){const W=O===47,Z=l.toLowerCase();return!W&&!a&&NI.includes(Z)?(i=1,o.interrupt?r(O):L(O)):Rwe.includes(l.toLowerCase())?(i=6,W?(e.consume(O),k):o.interrupt?r(O):L(O)):(i=7,o.interrupt&&!o.parser.lazy[o.now().line]?n(O):a?C(O):_(O))}return O===45||xo(O)?(e.consume(O),l+=String.fromCharCode(O),x):n(O)}function k(O){return O===62?(e.consume(O),o.interrupt?r:L):n(O)}function C(O){return Vt(O)?(e.consume(O),C):I(O)}function _(O){return O===47?(e.consume(O),I):O===58||O===95||Bo(O)?(e.consume(O),$):Vt(O)?(e.consume(O),_):I(O)}function $(O){return O===45||O===46||O===58||O===95||xo(O)?(e.consume(O),$):R(O)}function R(O){return O===61?(e.consume(O),T):Vt(O)?(e.consume(O),R):_(O)}function T(O){return O===null||O===60||O===61||O===62||O===96?n(O):O===34||O===39?(e.consume(O),c=O,A):Vt(O)?(e.consume(O),T):z(O)}function A(O){return O===c?(e.consume(O),c=null,j):O===null||gt(O)?n(O):(e.consume(O),A)}function z(O){return O===null||O===34||O===39||O===47||O===60||O===61||O===62||O===96||Sr(O)?R(O):(e.consume(O),z)}function j(O){return O===47||O===62||Vt(O)?_(O):n(O)}function I(O){return O===62?(e.consume(O),P):n(O)}function P(O){return O===null||gt(O)?L(O):Vt(O)?(e.consume(O),P):n(O)}function L(O){return O===45&&i===2?(e.consume(O),B):O===60&&i===1?(e.consume(O),F):O===62&&i===4?(e.consume(O),Y):O===63&&i===3?(e.consume(O),U):O===93&&i===5?(e.consume(O),G):gt(O)&&(i===6||i===7)?(e.exit("htmlFlowData"),e.check(Twe,K,H)(O)):O===null||gt(O)?(e.exit("htmlFlowData"),H(O)):(e.consume(O),L)}function H(O){return e.check(jwe,M,K)(O)}function M(O){return e.enter("lineEnding"),e.consume(O),e.exit("lineEnding"),V}function V(O){return O===null||gt(O)?H(O):(e.enter("htmlFlowData"),L(O))}function B(O){return O===45?(e.consume(O),U):L(O)}function F(O){return O===47?(e.consume(O),l="",q):L(O)}function q(O){if(O===62){const W=l.toLowerCase();return NI.includes(W)?(e.consume(O),Y):L(O)}return Bo(O)&&l.length<8?(e.consume(O),l+=String.fromCharCode(O),q):L(O)}function G(O){return O===93?(e.consume(O),U):L(O)}function U(O){return O===62?(e.consume(O),Y):O===45&&i===2?(e.consume(O),U):L(O)}function Y(O){return O===null||gt(O)?(e.exit("htmlFlowData"),K(O)):(e.consume(O),Y)}function K(O){return e.exit("htmlFlow"),r(O)}}function Mwe(e,r,n){const o=this;return i;function i(l){return gt(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a):n(l)}function a(l){return o.parser.lazy[o.now().line]?n(l):r(l)}}function Nwe(e,r,n){return o;function o(i){return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),e.attempt(s1,r,n)}}const Pwe={name:"htmlText",tokenize:Bwe};function Bwe(e,r,n){const o=this;let i,a,l;return s;function s(U){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(U),c}function c(U){return U===33?(e.consume(U),d):U===47?(e.consume(U),R):U===63?(e.consume(U),_):Bo(U)?(e.consume(U),z):n(U)}function d(U){return U===45?(e.consume(U),u):U===91?(e.consume(U),a=0,v):Bo(U)?(e.consume(U),C):n(U)}function u(U){return U===45?(e.consume(U),g):n(U)}function p(U){return U===null?n(U):U===45?(e.consume(U),f):gt(U)?(l=p,F(U)):(e.consume(U),p)}function f(U){return U===45?(e.consume(U),g):p(U)}function g(U){return U===62?B(U):U===45?f(U):p(U)}function v(U){const Y="CDATA[";return U===Y.charCodeAt(a++)?(e.consume(U),a===Y.length?w:v):n(U)}function w(U){return U===null?n(U):U===93?(e.consume(U),x):gt(U)?(l=w,F(U)):(e.consume(U),w)}function x(U){return U===93?(e.consume(U),k):w(U)}function k(U){return U===62?B(U):U===93?(e.consume(U),k):w(U)}function C(U){return U===null||U===62?B(U):gt(U)?(l=C,F(U)):(e.consume(U),C)}function _(U){return U===null?n(U):U===63?(e.consume(U),$):gt(U)?(l=_,F(U)):(e.consume(U),_)}function $(U){return U===62?B(U):_(U)}function R(U){return Bo(U)?(e.consume(U),T):n(U)}function T(U){return U===45||xo(U)?(e.consume(U),T):A(U)}function A(U){return gt(U)?(l=A,F(U)):Vt(U)?(e.consume(U),A):B(U)}function z(U){return U===45||xo(U)?(e.consume(U),z):U===47||U===62||Sr(U)?j(U):n(U)}function j(U){return U===47?(e.consume(U),B):U===58||U===95||Bo(U)?(e.consume(U),I):gt(U)?(l=j,F(U)):Vt(U)?(e.consume(U),j):B(U)}function I(U){return U===45||U===46||U===58||U===95||xo(U)?(e.consume(U),I):P(U)}function P(U){return U===61?(e.consume(U),L):gt(U)?(l=P,F(U)):Vt(U)?(e.consume(U),P):j(U)}function L(U){return U===null||U===60||U===61||U===62||U===96?n(U):U===34||U===39?(e.consume(U),i=U,H):gt(U)?(l=L,F(U)):Vt(U)?(e.consume(U),L):(e.consume(U),M)}function H(U){return U===i?(e.consume(U),i=void 0,V):U===null?n(U):gt(U)?(l=H,F(U)):(e.consume(U),H)}function M(U){return U===null||U===34||U===39||U===60||U===61||U===96?n(U):U===47||U===62||Sr(U)?j(U):(e.consume(U),M)}function V(U){return U===47||U===62||Sr(U)?j(U):n(U)}function B(U){return U===62?(e.consume(U),e.exit("htmlTextData"),e.exit("htmlText"),r):n(U)}function F(U){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(U),e.exit("lineEnding"),q}function q(U){return Vt(U)?Zt(e,G,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(U):G(U)}function G(U){return e.enter("htmlTextData"),l(U)}}const o8={name:"labelEnd",resolveAll:Fwe,resolveTo:Vwe,tokenize:qwe},Iwe={tokenize:Hwe},Owe={tokenize:Uwe},Lwe={tokenize:Wwe};function Fwe(e){let r=-1;const n=[];for(;++r=3&&(d===null||gt(d))?(e.exit("thematicBreak"),r(d)):n(d)}function c(d){return d===i?(e.consume(d),o++,c):(e.exit("thematicBreakSequence"),Vt(d)?Zt(e,s,"whitespace")(d):s(d))}}const ei={continuation:{tokenize:r3e},exit:o3e,name:"list",tokenize:t3e},Jwe={partial:!0,tokenize:i3e},e3e={partial:!0,tokenize:n3e};function t3e(e,r,n){const o=this,i=o.events[o.events.length-1];let a=i&&i[1].type==="linePrefix"?i[2].sliceSerialize(i[1],!0).length:0,l=0;return s;function s(g){const v=o.containerState.type||(g===42||g===43||g===45?"listUnordered":"listOrdered");if(v==="listUnordered"?!o.containerState.marker||g===o.containerState.marker:H_(g)){if(o.containerState.type||(o.containerState.type=v,e.enter(v,{_container:!0})),v==="listUnordered")return e.enter("listItemPrefix"),g===42||g===45?e.check(Wb,n,d)(g):d(g);if(!o.interrupt||g===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),c(g)}return n(g)}function c(g){return H_(g)&&++l<10?(e.consume(g),c):(!o.interrupt||l<2)&&(o.containerState.marker?g===o.containerState.marker:g===41||g===46)?(e.exit("listItemValue"),d(g)):n(g)}function d(g){return e.enter("listItemMarker"),e.consume(g),e.exit("listItemMarker"),o.containerState.marker=o.containerState.marker||g,e.check(s1,o.interrupt?n:u,e.attempt(Jwe,f,p))}function u(g){return o.containerState.initialBlankLine=!0,a++,f(g)}function p(g){return Vt(g)?(e.enter("listItemPrefixWhitespace"),e.consume(g),e.exit("listItemPrefixWhitespace"),f):n(g)}function f(g){return o.containerState.size=a+o.sliceSerialize(e.exit("listItemPrefix"),!0).length,r(g)}}function r3e(e,r,n){const o=this;return o.containerState._closeFlow=void 0,e.check(s1,i,a);function i(s){return o.containerState.furtherBlankLines=o.containerState.furtherBlankLines||o.containerState.initialBlankLine,Zt(e,r,"listItemIndent",o.containerState.size+1)(s)}function a(s){return o.containerState.furtherBlankLines||!Vt(s)?(o.containerState.furtherBlankLines=void 0,o.containerState.initialBlankLine=void 0,l(s)):(o.containerState.furtherBlankLines=void 0,o.containerState.initialBlankLine=void 0,e.attempt(e3e,r,l)(s))}function l(s){return o.containerState._closeFlow=!0,o.interrupt=void 0,Zt(e,e.attempt(ei,r,n),"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(s)}}function n3e(e,r,n){const o=this;return Zt(e,i,"listItemIndent",o.containerState.size+1);function i(a){const l=o.events[o.events.length-1];return l&&l[1].type==="listItemIndent"&&l[2].sliceSerialize(l[1],!0).length===o.containerState.size?r(a):n(a)}}function o3e(e){e.exit(this.containerState.type)}function i3e(e,r,n){const o=this;return Zt(e,i,"listItemPrefixWhitespace",o.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function i(a){const l=o.events[o.events.length-1];return!Vt(a)&&l&&l[1].type==="listItemPrefixWhitespace"?r(a):n(a)}}const PI={name:"setextUnderline",resolveTo:a3e,tokenize:l3e};function a3e(e,r){let n=e.length,o,i,a;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){o=n;break}e[n][1].type==="paragraph"&&(i=n)}else e[n][1].type==="content"&&e.splice(n,1),!a&&e[n][1].type==="definition"&&(a=n);const l={type:"setextHeading",start:{...e[o][1].start},end:{...e[e.length-1][1].end}};return e[i][1].type="setextHeadingText",a?(e.splice(i,0,["enter",l,r]),e.splice(a+1,0,["exit",e[o][1],r]),e[o][1].end={...e[a][1].end}):e[o][1]=l,e.push(["exit",l,r]),e}function l3e(e,r,n){const o=this;let i;return a;function a(d){let u=o.events.length,p;for(;u--;)if(o.events[u][1].type!=="lineEnding"&&o.events[u][1].type!=="linePrefix"&&o.events[u][1].type!=="content"){p=o.events[u][1].type==="paragraph";break}return!o.parser.lazy[o.now().line]&&(o.interrupt||p)?(e.enter("setextHeadingLine"),i=d,l(d)):n(d)}function l(d){return e.enter("setextHeadingLineSequence"),s(d)}function s(d){return d===i?(e.consume(d),s):(e.exit("setextHeadingLineSequence"),Vt(d)?Zt(e,c,"lineSuffix")(d):c(d))}function c(d){return d===null||gt(d)?(e.exit("setextHeadingLine"),r(d)):n(d)}}const s3e={tokenize:g3e,partial:!0};function c3e(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:h3e,continuation:{tokenize:f3e},exit:m3e}},text:{91:{name:"gfmFootnoteCall",tokenize:p3e},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:d3e,resolveTo:u3e}}}}function d3e(e,r,n){const o=this;let i=o.events.length;const a=o.parser.gfmFootnotes||(o.parser.gfmFootnotes=[]);let l;for(;i--;){const c=o.events[i][1];if(c.type==="labelImage"){l=c;break}if(c.type==="gfmFootnoteCall"||c.type==="labelLink"||c.type==="label"||c.type==="image"||c.type==="link")break}return s;function s(c){if(!l||!l._balanced)return n(c);const d=Ua(o.sliceSerialize({start:l.end,end:o.now()}));return d.codePointAt(0)!==94||!a.includes(d.slice(1))?n(c):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),r(c))}}function u3e(e,r){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const o={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const a={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},l={type:"chunkString",contentType:"string",start:Object.assign({},a.start),end:Object.assign({},a.end)},s=[e[n+1],e[n+2],["enter",o,r],e[n+3],e[n+4],["enter",i,r],["exit",i,r],["enter",a,r],["enter",l,r],["exit",l,r],["exit",a,r],e[e.length-2],e[e.length-1],["exit",o,r]];return e.splice(n,e.length-n+1,...s),e}function p3e(e,r,n){const o=this,i=o.parser.gfmFootnotes||(o.parser.gfmFootnotes=[]);let a=0,l;return s;function s(p){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),c}function c(p){return p!==94?n(p):(e.enter("gfmFootnoteCallMarker"),e.consume(p),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",d)}function d(p){if(a>999||p===93&&!l||p===null||p===91||Sr(p))return n(p);if(p===93){e.exit("chunkString");const f=e.exit("gfmFootnoteCallString");return i.includes(Ua(o.sliceSerialize(f)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),r):n(p)}return Sr(p)||(l=!0),a++,e.consume(p),p===92?u:d}function u(p){return p===91||p===92||p===93?(e.consume(p),a++,d):d(p)}}function h3e(e,r,n){const o=this,i=o.parser.gfmFootnotes||(o.parser.gfmFootnotes=[]);let a,l=0,s;return c;function c(v){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(v),e.exit("gfmFootnoteDefinitionLabelMarker"),d}function d(v){return v===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(v),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",u):n(v)}function u(v){if(l>999||v===93&&!s||v===null||v===91||Sr(v))return n(v);if(v===93){e.exit("chunkString");const w=e.exit("gfmFootnoteDefinitionLabelString");return a=Ua(o.sliceSerialize(w)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(v),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),f}return Sr(v)||(s=!0),l++,e.consume(v),v===92?p:u}function p(v){return v===91||v===92||v===93?(e.consume(v),l++,u):u(v)}function f(v){return v===58?(e.enter("definitionMarker"),e.consume(v),e.exit("definitionMarker"),i.includes(a)||i.push(a),Zt(e,g,"gfmFootnoteDefinitionWhitespace")):n(v)}function g(v){return r(v)}}function f3e(e,r,n){return e.check(s1,r,e.attempt(s3e,r,n))}function m3e(e){e.exit("gfmFootnoteDefinition")}function g3e(e,r,n){const o=this;return Zt(e,i,"gfmFootnoteDefinitionIndent",5);function i(a){const l=o.events[o.events.length-1];return l&&l[1].type==="gfmFootnoteDefinitionIndent"&&l[2].sliceSerialize(l[1],!0).length===4?r(a):n(a)}}function y3e(e){let n=(e||{}).singleTilde;const o={name:"strikethrough",tokenize:a,resolveAll:i};return n==null&&(n=!0),{text:{126:o},insideSpan:{null:[o]},attentionMarkers:{null:[126]}};function i(l,s){let c=-1;for(;++c1?c(v):(l.consume(v),p++,g);if(p<2&&!n)return c(v);const x=l.exit("strikethroughSequenceTemporary"),k=Fh(v);return x._open=!k||k===2&&!!w,x._close=!w||w===2&&!!k,s(v)}}}class v3e{constructor(){this.map=[]}add(r,n,o){b3e(this,r,n,o)}consume(r){if(this.map.sort(function(a,l){return a[0]-l[0]}),this.map.length===0)return;let n=this.map.length;const o=[];for(;n>0;)n-=1,o.push(r.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),r.length=this.map[n][0];o.push(r.slice()),r.length=0;let i=o.pop();for(;i;){for(const a of i)r.push(a);i=o.pop()}this.map.length=0}}function b3e(e,r,n,o){let i=0;if(!(n===0&&o.length===0)){for(;i-1;){const M=o.events[P][1].type;if(M==="lineEnding"||M==="linePrefix")P--;else break}const L=P>-1?o.events[P][1].type:null,H=L==="tableHead"||L==="tableRow"?T:c;return H===T&&o.parser.lazy[o.now().line]?n(I):H(I)}function c(I){return e.enter("tableHead"),e.enter("tableRow"),d(I)}function d(I){return I===124||(l=!0,a+=1),u(I)}function u(I){return I===null?n(I):gt(I)?a>1?(a=0,o.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(I),e.exit("lineEnding"),g):n(I):Vt(I)?Zt(e,u,"whitespace")(I):(a+=1,l&&(l=!1,i+=1),I===124?(e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),l=!0,u):(e.enter("data"),p(I)))}function p(I){return I===null||I===124||Sr(I)?(e.exit("data"),u(I)):(e.consume(I),I===92?f:p)}function f(I){return I===92||I===124?(e.consume(I),p):p(I)}function g(I){return o.interrupt=!1,o.parser.lazy[o.now().line]?n(I):(e.enter("tableDelimiterRow"),l=!1,Vt(I)?Zt(e,v,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(I):v(I))}function v(I){return I===45||I===58?x(I):I===124?(l=!0,e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),w):R(I)}function w(I){return Vt(I)?Zt(e,x,"whitespace")(I):x(I)}function x(I){return I===58?(a+=1,l=!0,e.enter("tableDelimiterMarker"),e.consume(I),e.exit("tableDelimiterMarker"),k):I===45?(a+=1,k(I)):I===null||gt(I)?$(I):R(I)}function k(I){return I===45?(e.enter("tableDelimiterFiller"),C(I)):R(I)}function C(I){return I===45?(e.consume(I),C):I===58?(l=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(I),e.exit("tableDelimiterMarker"),_):(e.exit("tableDelimiterFiller"),_(I))}function _(I){return Vt(I)?Zt(e,$,"whitespace")(I):$(I)}function $(I){return I===124?v(I):I===null||gt(I)?!l||i!==a?R(I):(e.exit("tableDelimiterRow"),e.exit("tableHead"),r(I)):R(I)}function R(I){return n(I)}function T(I){return e.enter("tableRow"),A(I)}function A(I){return I===124?(e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),A):I===null||gt(I)?(e.exit("tableRow"),r(I)):Vt(I)?Zt(e,A,"whitespace")(I):(e.enter("data"),z(I))}function z(I){return I===null||I===124||Sr(I)?(e.exit("data"),A(I)):(e.consume(I),I===92?j:z)}function j(I){return I===92||I===124?(e.consume(I),z):z(I)}}function _3e(e,r){let n=-1,o=!0,i=0,a=[0,0,0,0],l=[0,0,0,0],s=!1,c=0,d,u,p;const f=new v3e;for(;++nn[2]+1){const v=n[2]+1,w=n[3]-n[2]-1;e.add(v,w,[])}}e.add(n[3]+1,0,[["exit",p,r]])}return i!==void 0&&(a.end=Object.assign({},qh(r.events,i)),e.add(i,0,[["exit",a,r]]),a=void 0),a}function BI(e,r,n,o,i){const a=[],l=qh(r.events,n);i&&(i.end=Object.assign({},l),a.push(["exit",i,r])),o.end=Object.assign({},l),a.push(["exit",o,r]),e.add(n+1,0,a)}function qh(e,r){const n=e[r],o=n[0]==="enter"?"start":"end";return n[1][o]}const S3e={name:"tasklistCheck",tokenize:C3e};function E3e(){return{text:{91:S3e}}}function C3e(e,r,n){const o=this;return i;function i(c){return o.previous!==null||!o._gfmTasklistFirstContentOfListItem?n(c):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),a)}function a(c){return Sr(c)?(e.enter("taskListCheckValueUnchecked"),e.consume(c),e.exit("taskListCheckValueUnchecked"),l):c===88||c===120?(e.enter("taskListCheckValueChecked"),e.consume(c),e.exit("taskListCheckValueChecked"),l):n(c)}function l(c){return c===93?(e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),s):n(c)}function s(c){return gt(c)?r(c):Vt(c)?e.check({tokenize:$3e},r,n)(c):n(c)}}function $3e(e,r,n){return Zt(e,o,"whitespace");function o(i){return i===null?n(i):r(i)}}function R3e(e){return gI([Ixe(),c3e(),y3e(e),w3e(),E3e()])}const z3e={};function T3e(e){const r=this,n=e||z3e,o=r.data(),i=o.micromarkExtensions||(o.micromarkExtensions=[]),a=o.fromMarkdownExtensions||(o.fromMarkdownExtensions=[]),l=o.toMarkdownExtensions||(o.toMarkdownExtensions=[]);i.push(R3e(n)),a.push(Axe()),l.push(Dxe(n))}const j3e=/^\[!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]/i,A3e=/^\[!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)(\/.*)?\]/i,D3e=({legacyTitle:e=!1,tagName:r="div"}={})=>n=>{K_(n,"blockquote",(o,i,a)=>{let l="",s="",c=!0,d=o.children.map(u=>{if(c&&u.type==="paragraph"){const p=u.children[0],f=p.type==="text"?p.value:"",g=e?A3e:j3e,v=f.match(g);if(v&&(c=!1,l=v[1].toLocaleLowerCase(),s=e&&v[2]||l.toLocaleUpperCase(),f.includes(` -`)&&(u.children[0]={type:"text",value:f.replace(g,"").replace(/^\n+/,"")}),!f.includes(` -`))){const w=[];u.children.forEach((x,k)=>{k!=0&&(k==1&&x.type==="break"||w.push(x))}),u.children=[...w]}}return u});l&&(o.data={hName:r,hProperties:{className:["markdown-alert",`markdown-alert-${l}`],dir:"auto"}},d.unshift({type:"paragraph",children:[M3e(l),{type:"text",value:s.replace(/^\//,"")}],data:{hProperties:{className:"markdown-alert-title",dir:"auto"}}})),o.children=[...d]})};function M3e(e){let r=N3e[e]??"";return{type:"emphasis",data:{hName:"svg",hProperties:{className:["octicon"],viewBox:"0 0 16 16",width:"16",height:"16",ariaHidden:"true"}},children:[{type:"emphasis",data:{hName:"path",hProperties:{d:r}},children:[]}]}}const N3e={note:"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z",tip:"M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z",important:"M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",warning:"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",caution:"M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"},P3e={tokenize:B3e};function B3e(e){const r=e.attempt(this.parser.constructs.contentInitial,o,i);let n;return r;function o(s){if(s===null){e.consume(s);return}return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),Zt(e,r,"linePrefix")}function i(s){return e.enter("paragraph"),a(s)}function a(s){const c=e.enter("chunkText",{contentType:"text",previous:n});return n&&(n.next=c),n=c,l(s)}function l(s){if(s===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(s);return}return gt(s)?(e.consume(s),e.exit("chunkText"),a):(e.consume(s),l)}}const I3e={tokenize:O3e},II={tokenize:L3e};function O3e(e){const r=this,n=[];let o=0,i,a,l;return s;function s(_){if(ol))return;const A=r.events.length;let z=A,j,I;for(;z--;)if(r.events[z][0]==="exit"&&r.events[z][1].type==="chunkFlow"){if(j){I=r.events[z][1].end;break}j=!0}for(k(o),T=A;T_;){const R=n[$];r.containerState=R[1],R[0].exit.call(r,e)}n.length=_}function C(){i.write([null]),a=void 0,i=void 0,r.containerState._closeFlow=void 0}}function L3e(e,r,n){return Zt(e,e.attempt(this.parser.constructs.document,r,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}const F3e={tokenize:V3e};function V3e(e){const r=this,n=e.attempt(s1,o,e.attempt(this.parser.constructs.flowInitial,i,Zt(e,e.attempt(this.parser.constructs.flow,i,e.attempt(fwe,i)),"linePrefix")));return n;function o(a){if(a===null){e.consume(a);return}return e.enter("lineEndingBlank"),e.consume(a),e.exit("lineEndingBlank"),r.currentConstruct=void 0,n}function i(a){if(a===null){e.consume(a);return}return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),r.currentConstruct=void 0,n}}const q3e={resolveAll:LI()},H3e=OI("string"),U3e=OI("text");function OI(e){return{resolveAll:LI(e==="text"?W3e:void 0),tokenize:r};function r(n){const o=this,i=this.parser.constructs[e],a=n.attempt(i,l,s);return l;function l(u){return d(u)?a(u):s(u)}function s(u){if(u===null){n.consume(u);return}return n.enter("data"),n.consume(u),c}function c(u){return d(u)?(n.exit("data"),a(u)):(n.consume(u),c)}function d(u){if(u===null)return!0;const p=i[u];let f=-1;if(p)for(;++f-1){const s=l[0];typeof s=="string"?l[0]=s.slice(o):l.shift()}a>0&&l.push(e[i].slice(0,a))}return l}function K3e(e,r){let n=-1;const o=[];let i;for(;++ni?0:i+r:r=r>i?i:r,n=n>0?n:0,o.length<1e4)l=Array.from(o),l.unshift(r,n),e.splice(...l);else for(n&&e.splice(r,n);a0?(xi(e,e.length,0,r),e):r}const gI={}.hasOwnProperty;function mI(e){const r={};let n=-1;for(;++n0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}function Vh(e){const r=[];let n=-1,o=0,i=0;for(;++n55295&&a<57344){const s=e.charCodeAt(n+1);a<56320&&s>56319&&s<57344?(l=String.fromCharCode(a,s),i=1):l="�"}else l=String.fromCharCode(a);l&&(r.push(e.slice(o,n),encodeURIComponent(l)),o=n+i+1,l=""),i&&(n+=i,i=0)}return r.join("")+e.slice(o)}function Ub(e,r,n){const o=[];let i=-1;for(;++i1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const p={...e[o][1].end},f={...e[n][1].start};EI(p,-c),EI(f,c),l={type:c>1?"strongSequence":"emphasisSequence",start:p,end:{...e[o][1].end}},s={type:c>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:f},a={type:c>1?"strongText":"emphasisText",start:{...e[o][1].end},end:{...e[n][1].start}},i={type:c>1?"strong":"emphasis",start:{...l.start},end:{...s.end}},e[o][1].end={...l.start},e[n][1].start={...s.end},d=[],e[o][1].end.offset-e[o][1].start.offset&&(d=Qi(d,[["enter",e[o][1],r],["exit",e[o][1],r]])),d=Qi(d,[["enter",i,r],["enter",l,r],["exit",l,r],["enter",a,r]]),d=Qi(d,Ub(r.parser.constructs.insideSpan.null,e.slice(o+1,n),r)),d=Qi(d,[["exit",a,r],["enter",s,r],["exit",s,r],["exit",i,r]]),e[n][1].end.offset-e[n][1].start.offset?(u=2,d=Qi(d,[["enter",e[n][1],r],["exit",e[n][1],r]])):u=0,xi(e,o-1,n-o+3,d),n=o+d.length-u-2;break}}for(n=-1;++n0&&Vt(T)?Zt(e,C,"linePrefix",a+1)(T):C(T)}function C(T){return T===null||mt(T)?e.check(zI,w,$)(T):(e.enter("codeFlowValue"),_(T))}function _(T){return T===null||mt(T)?(e.exit("codeFlowValue"),C(T)):(e.consume(T),_)}function $(T){return e.exit("codeFenced"),r(T)}function R(T,A,z){let j=0;return I;function I(V){return T.enter("lineEnding"),T.consume(V),T.exit("lineEnding"),N}function N(V){return T.enter("codeFencedFence"),Vt(V)?Zt(T,L,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(V):L(V)}function L(V){return V===s?(T.enter("codeFencedFenceSequence"),H(V)):z(V)}function H(V){return V===s?(j++,T.consume(V),H):j>=l?(T.exit("codeFencedFenceSequence"),Vt(V)?Zt(T,P,"whitespace")(V):P(V)):z(V)}function P(V){return V===null||mt(V)?(T.exit("codeFencedFence"),A(V)):z(V)}}}function owe(e,r,n){const o=this;return i;function i(l){return l===null?n(l):(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a)}function a(l){return o.parser.lazy[o.now().line]?n(l):r(l)}}const n8={name:"codeIndented",tokenize:awe},iwe={partial:!0,tokenize:lwe};function awe(e,r,n){const o=this;return i;function i(d){return e.enter("codeIndented"),Zt(e,a,"linePrefix",5)(d)}function a(d){const u=o.events[o.events.length-1];return u&&u[1].type==="linePrefix"&&u[2].sliceSerialize(u[1],!0).length>=4?l(d):n(d)}function l(d){return d===null?c(d):mt(d)?e.attempt(iwe,l,c)(d):(e.enter("codeFlowValue"),s(d))}function s(d){return d===null||mt(d)?(e.exit("codeFlowValue"),l(d)):(e.consume(d),s)}function c(d){return e.exit("codeIndented"),r(d)}}function lwe(e,r,n){const o=this;return i;function i(l){return o.parser.lazy[o.now().line]?n(l):mt(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),i):Zt(e,a,"linePrefix",5)(l)}function a(l){const s=o.events[o.events.length-1];return s&&s[1].type==="linePrefix"&&s[2].sliceSerialize(s[1],!0).length>=4?r(l):mt(l)?i(l):n(l)}}const swe={name:"codeText",previous:dwe,resolve:cwe,tokenize:uwe};function cwe(e){let r=e.length-4,n=3,o,i;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[r][1].type==="lineEnding"||e[r][1].type==="space")){for(o=n;++o=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+r+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return rthis.left.length?this.right.slice(this.right.length-o+this.left.length,this.right.length-r+this.left.length).reverse():this.left.slice(r).concat(this.right.slice(this.right.length-o+this.left.length).reverse())}splice(r,n,o){const i=n||0;this.setCursor(Math.trunc(r));const a=this.right.splice(this.right.length-i,Number.POSITIVE_INFINITY);return o&&c1(this.left,o),a.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(r){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(r)}pushMany(r){this.setCursor(Number.POSITIVE_INFINITY),c1(this.left,r)}unshift(r){this.setCursor(0),this.right.push(r)}unshiftMany(r){this.setCursor(0),c1(this.right,r.reverse())}setCursor(r){if(!(r===this.left.length||r>this.left.length&&this.right.length===0||r<0&&this.left.length===0))if(r=4?r(l):e.interrupt(o.parser.constructs.flow,n,r)(l)}}function AI(e,r,n,o,i,a,l,s,c){const d=c||Number.POSITIVE_INFINITY;let u=0;return p;function p(k){return k===60?(e.enter(o),e.enter(i),e.enter(a),e.consume(k),e.exit(a),f):k===null||k===32||k===41||Ob(k)?n(k):(e.enter(o),e.enter(l),e.enter(s),e.enter("chunkString",{contentType:"string"}),w(k))}function f(k){return k===62?(e.enter(a),e.consume(k),e.exit(a),e.exit(i),e.exit(o),r):(e.enter(s),e.enter("chunkString",{contentType:"string"}),m(k))}function m(k){return k===62?(e.exit("chunkString"),e.exit(s),f(k)):k===null||k===60||mt(k)?n(k):(e.consume(k),k===92?v:m)}function v(k){return k===60||k===62||k===92?(e.consume(k),m):m(k)}function w(k){return!u&&(k===null||k===41||Sr(k))?(e.exit("chunkString"),e.exit(s),e.exit(l),e.exit(o),r(k)):u999||m===null||m===91||m===93&&!c||m===94&&!s&&"_hiddenFootnoteSupport"in l.parser.constructs?n(m):m===93?(e.exit(a),e.enter(i),e.consume(m),e.exit(i),e.exit(o),r):mt(m)?(e.enter("lineEnding"),e.consume(m),e.exit("lineEnding"),u):(e.enter("chunkString",{contentType:"string"}),p(m))}function p(m){return m===null||m===91||m===93||mt(m)||s++>999?(e.exit("chunkString"),u(m)):(e.consume(m),c||(c=!Vt(m)),m===92?f:p)}function f(m){return m===91||m===92||m===93?(e.consume(m),s++,p):p(m)}}function PI(e,r,n,o,i,a){let l;return s;function s(f){return f===34||f===39||f===40?(e.enter(o),e.enter(i),e.consume(f),e.exit(i),l=f===40?41:f,c):n(f)}function c(f){return f===l?(e.enter(i),e.consume(f),e.exit(i),e.exit(o),r):(e.enter(a),d(f))}function d(f){return f===l?(e.exit(a),c(l)):f===null?n(f):mt(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),Zt(e,d,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),u(f))}function u(f){return f===l||f===null||mt(f)?(e.exit("chunkString"),d(f)):(e.consume(f),f===92?p:u)}function p(f){return f===l||f===92?(e.consume(f),u):u(f)}}function d1(e,r){let n;return o;function o(i){return mt(i)?(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),n=!0,o):Vt(i)?Zt(e,o,n?"linePrefix":"lineSuffix")(i):r(i)}}const bwe={name:"definition",tokenize:wwe},xwe={partial:!0,tokenize:kwe};function wwe(e,r,n){const o=this;let i;return a;function a(m){return e.enter("definition"),l(m)}function l(m){return DI.call(o,e,s,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(m)}function s(m){return i=Ua(o.sliceSerialize(o.events[o.events.length-1][1]).slice(1,-1)),m===58?(e.enter("definitionMarker"),e.consume(m),e.exit("definitionMarker"),c):n(m)}function c(m){return Sr(m)?d1(e,d)(m):d(m)}function d(m){return AI(e,u,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(m)}function u(m){return e.attempt(xwe,p,p)(m)}function p(m){return Vt(m)?Zt(e,f,"whitespace")(m):f(m)}function f(m){return m===null||mt(m)?(e.exit("definition"),o.parser.defined.push(i),r(m)):n(m)}}function kwe(e,r,n){return o;function o(s){return Sr(s)?d1(e,i)(s):n(s)}function i(s){return PI(e,a,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(s)}function a(s){return Vt(s)?Zt(e,l,"whitespace")(s):l(s)}function l(s){return s===null||mt(s)?r(s):n(s)}}const _we={name:"hardBreakEscape",tokenize:Swe};function Swe(e,r,n){return o;function o(a){return e.enter("hardBreakEscape"),e.consume(a),i}function i(a){return mt(a)?(e.exit("hardBreakEscape"),r(a)):n(a)}}const Ewe={name:"headingAtx",resolve:Cwe,tokenize:$we};function Cwe(e,r){let n=e.length-2,o=3,i,a;return e[o][1].type==="whitespace"&&(o+=2),n-2>o&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(o===n-1||n-4>o&&e[n-2][1].type==="whitespace")&&(n-=o+1===n?2:4),n>o&&(i={type:"atxHeadingText",start:e[o][1].start,end:e[n][1].end},a={type:"chunkText",start:e[o][1].start,end:e[n][1].end,contentType:"text"},xi(e,o,n-o+1,[["enter",i,r],["enter",a,r],["exit",a,r],["exit",i,r]])),e}function $we(e,r,n){let o=0;return i;function i(u){return e.enter("atxHeading"),a(u)}function a(u){return e.enter("atxHeadingSequence"),l(u)}function l(u){return u===35&&o++<6?(e.consume(u),l):u===null||Sr(u)?(e.exit("atxHeadingSequence"),s(u)):n(u)}function s(u){return u===35?(e.enter("atxHeadingSequence"),c(u)):u===null||mt(u)?(e.exit("atxHeading"),r(u)):Vt(u)?Zt(e,s,"whitespace")(u):(e.enter("atxHeadingText"),d(u))}function c(u){return u===35?(e.consume(u),c):(e.exit("atxHeadingSequence"),s(u))}function d(u){return u===null||u===35||Sr(u)?(e.exit("atxHeadingText"),s(u)):(e.consume(u),d)}}const Rwe=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],MI=["pre","script","style","textarea"],zwe={concrete:!0,name:"htmlFlow",resolveTo:Awe,tokenize:Dwe},Twe={partial:!0,tokenize:Mwe},jwe={partial:!0,tokenize:Pwe};function Awe(e){let r=e.length;for(;r--&&!(e[r][0]==="enter"&&e[r][1].type==="htmlFlow"););return r>1&&e[r-2][1].type==="linePrefix"&&(e[r][1].start=e[r-2][1].start,e[r+1][1].start=e[r-2][1].start,e.splice(r-2,2)),e}function Dwe(e,r,n){const o=this;let i,a,l,s,c;return d;function d(O){return u(O)}function u(O){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(O),p}function p(O){return O===33?(e.consume(O),f):O===47?(e.consume(O),a=!0,w):O===63?(e.consume(O),i=3,o.interrupt?r:U):Bo(O)?(e.consume(O),l=String.fromCharCode(O),x):n(O)}function f(O){return O===45?(e.consume(O),i=2,m):O===91?(e.consume(O),i=5,s=0,v):Bo(O)?(e.consume(O),i=4,o.interrupt?r:U):n(O)}function m(O){return O===45?(e.consume(O),o.interrupt?r:U):n(O)}function v(O){const W="CDATA[";return O===W.charCodeAt(s++)?(e.consume(O),s===W.length?o.interrupt?r:L:v):n(O)}function w(O){return Bo(O)?(e.consume(O),l=String.fromCharCode(O),x):n(O)}function x(O){if(O===null||O===47||O===62||Sr(O)){const W=O===47,Z=l.toLowerCase();return!W&&!a&&MI.includes(Z)?(i=1,o.interrupt?r(O):L(O)):Rwe.includes(l.toLowerCase())?(i=6,W?(e.consume(O),k):o.interrupt?r(O):L(O)):(i=7,o.interrupt&&!o.parser.lazy[o.now().line]?n(O):a?C(O):_(O))}return O===45||xo(O)?(e.consume(O),l+=String.fromCharCode(O),x):n(O)}function k(O){return O===62?(e.consume(O),o.interrupt?r:L):n(O)}function C(O){return Vt(O)?(e.consume(O),C):I(O)}function _(O){return O===47?(e.consume(O),I):O===58||O===95||Bo(O)?(e.consume(O),$):Vt(O)?(e.consume(O),_):I(O)}function $(O){return O===45||O===46||O===58||O===95||xo(O)?(e.consume(O),$):R(O)}function R(O){return O===61?(e.consume(O),T):Vt(O)?(e.consume(O),R):_(O)}function T(O){return O===null||O===60||O===61||O===62||O===96?n(O):O===34||O===39?(e.consume(O),c=O,A):Vt(O)?(e.consume(O),T):z(O)}function A(O){return O===c?(e.consume(O),c=null,j):O===null||mt(O)?n(O):(e.consume(O),A)}function z(O){return O===null||O===34||O===39||O===47||O===60||O===61||O===62||O===96||Sr(O)?R(O):(e.consume(O),z)}function j(O){return O===47||O===62||Vt(O)?_(O):n(O)}function I(O){return O===62?(e.consume(O),N):n(O)}function N(O){return O===null||mt(O)?L(O):Vt(O)?(e.consume(O),N):n(O)}function L(O){return O===45&&i===2?(e.consume(O),B):O===60&&i===1?(e.consume(O),F):O===62&&i===4?(e.consume(O),Y):O===63&&i===3?(e.consume(O),U):O===93&&i===5?(e.consume(O),G):mt(O)&&(i===6||i===7)?(e.exit("htmlFlowData"),e.check(Twe,K,H)(O)):O===null||mt(O)?(e.exit("htmlFlowData"),H(O)):(e.consume(O),L)}function H(O){return e.check(jwe,P,K)(O)}function P(O){return e.enter("lineEnding"),e.consume(O),e.exit("lineEnding"),V}function V(O){return O===null||mt(O)?H(O):(e.enter("htmlFlowData"),L(O))}function B(O){return O===45?(e.consume(O),U):L(O)}function F(O){return O===47?(e.consume(O),l="",q):L(O)}function q(O){if(O===62){const W=l.toLowerCase();return MI.includes(W)?(e.consume(O),Y):L(O)}return Bo(O)&&l.length<8?(e.consume(O),l+=String.fromCharCode(O),q):L(O)}function G(O){return O===93?(e.consume(O),U):L(O)}function U(O){return O===62?(e.consume(O),Y):O===45&&i===2?(e.consume(O),U):L(O)}function Y(O){return O===null||mt(O)?(e.exit("htmlFlowData"),K(O)):(e.consume(O),Y)}function K(O){return e.exit("htmlFlow"),r(O)}}function Pwe(e,r,n){const o=this;return i;function i(l){return mt(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a):n(l)}function a(l){return o.parser.lazy[o.now().line]?n(l):r(l)}}function Mwe(e,r,n){return o;function o(i){return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),e.attempt(s1,r,n)}}const Nwe={name:"htmlText",tokenize:Bwe};function Bwe(e,r,n){const o=this;let i,a,l;return s;function s(U){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(U),c}function c(U){return U===33?(e.consume(U),d):U===47?(e.consume(U),R):U===63?(e.consume(U),_):Bo(U)?(e.consume(U),z):n(U)}function d(U){return U===45?(e.consume(U),u):U===91?(e.consume(U),a=0,v):Bo(U)?(e.consume(U),C):n(U)}function u(U){return U===45?(e.consume(U),m):n(U)}function p(U){return U===null?n(U):U===45?(e.consume(U),f):mt(U)?(l=p,F(U)):(e.consume(U),p)}function f(U){return U===45?(e.consume(U),m):p(U)}function m(U){return U===62?B(U):U===45?f(U):p(U)}function v(U){const Y="CDATA[";return U===Y.charCodeAt(a++)?(e.consume(U),a===Y.length?w:v):n(U)}function w(U){return U===null?n(U):U===93?(e.consume(U),x):mt(U)?(l=w,F(U)):(e.consume(U),w)}function x(U){return U===93?(e.consume(U),k):w(U)}function k(U){return U===62?B(U):U===93?(e.consume(U),k):w(U)}function C(U){return U===null||U===62?B(U):mt(U)?(l=C,F(U)):(e.consume(U),C)}function _(U){return U===null?n(U):U===63?(e.consume(U),$):mt(U)?(l=_,F(U)):(e.consume(U),_)}function $(U){return U===62?B(U):_(U)}function R(U){return Bo(U)?(e.consume(U),T):n(U)}function T(U){return U===45||xo(U)?(e.consume(U),T):A(U)}function A(U){return mt(U)?(l=A,F(U)):Vt(U)?(e.consume(U),A):B(U)}function z(U){return U===45||xo(U)?(e.consume(U),z):U===47||U===62||Sr(U)?j(U):n(U)}function j(U){return U===47?(e.consume(U),B):U===58||U===95||Bo(U)?(e.consume(U),I):mt(U)?(l=j,F(U)):Vt(U)?(e.consume(U),j):B(U)}function I(U){return U===45||U===46||U===58||U===95||xo(U)?(e.consume(U),I):N(U)}function N(U){return U===61?(e.consume(U),L):mt(U)?(l=N,F(U)):Vt(U)?(e.consume(U),N):j(U)}function L(U){return U===null||U===60||U===61||U===62||U===96?n(U):U===34||U===39?(e.consume(U),i=U,H):mt(U)?(l=L,F(U)):Vt(U)?(e.consume(U),L):(e.consume(U),P)}function H(U){return U===i?(e.consume(U),i=void 0,V):U===null?n(U):mt(U)?(l=H,F(U)):(e.consume(U),H)}function P(U){return U===null||U===34||U===39||U===60||U===61||U===96?n(U):U===47||U===62||Sr(U)?j(U):(e.consume(U),P)}function V(U){return U===47||U===62||Sr(U)?j(U):n(U)}function B(U){return U===62?(e.consume(U),e.exit("htmlTextData"),e.exit("htmlText"),r):n(U)}function F(U){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(U),e.exit("lineEnding"),q}function q(U){return Vt(U)?Zt(e,G,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(U):G(U)}function G(U){return e.enter("htmlTextData"),l(U)}}const o8={name:"labelEnd",resolveAll:Fwe,resolveTo:Vwe,tokenize:qwe},Iwe={tokenize:Hwe},Owe={tokenize:Uwe},Lwe={tokenize:Wwe};function Fwe(e){let r=-1;const n=[];for(;++r=3&&(d===null||mt(d))?(e.exit("thematicBreak"),r(d)):n(d)}function c(d){return d===i?(e.consume(d),o++,c):(e.exit("thematicBreakSequence"),Vt(d)?Zt(e,s,"whitespace")(d):s(d))}}const ei={continuation:{tokenize:r3e},exit:o3e,name:"list",tokenize:t3e},Jwe={partial:!0,tokenize:i3e},e3e={partial:!0,tokenize:n3e};function t3e(e,r,n){const o=this,i=o.events[o.events.length-1];let a=i&&i[1].type==="linePrefix"?i[2].sliceSerialize(i[1],!0).length:0,l=0;return s;function s(m){const v=o.containerState.type||(m===42||m===43||m===45?"listUnordered":"listOrdered");if(v==="listUnordered"?!o.containerState.marker||m===o.containerState.marker:H_(m)){if(o.containerState.type||(o.containerState.type=v,e.enter(v,{_container:!0})),v==="listUnordered")return e.enter("listItemPrefix"),m===42||m===45?e.check(Wb,n,d)(m):d(m);if(!o.interrupt||m===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),c(m)}return n(m)}function c(m){return H_(m)&&++l<10?(e.consume(m),c):(!o.interrupt||l<2)&&(o.containerState.marker?m===o.containerState.marker:m===41||m===46)?(e.exit("listItemValue"),d(m)):n(m)}function d(m){return e.enter("listItemMarker"),e.consume(m),e.exit("listItemMarker"),o.containerState.marker=o.containerState.marker||m,e.check(s1,o.interrupt?n:u,e.attempt(Jwe,f,p))}function u(m){return o.containerState.initialBlankLine=!0,a++,f(m)}function p(m){return Vt(m)?(e.enter("listItemPrefixWhitespace"),e.consume(m),e.exit("listItemPrefixWhitespace"),f):n(m)}function f(m){return o.containerState.size=a+o.sliceSerialize(e.exit("listItemPrefix"),!0).length,r(m)}}function r3e(e,r,n){const o=this;return o.containerState._closeFlow=void 0,e.check(s1,i,a);function i(s){return o.containerState.furtherBlankLines=o.containerState.furtherBlankLines||o.containerState.initialBlankLine,Zt(e,r,"listItemIndent",o.containerState.size+1)(s)}function a(s){return o.containerState.furtherBlankLines||!Vt(s)?(o.containerState.furtherBlankLines=void 0,o.containerState.initialBlankLine=void 0,l(s)):(o.containerState.furtherBlankLines=void 0,o.containerState.initialBlankLine=void 0,e.attempt(e3e,r,l)(s))}function l(s){return o.containerState._closeFlow=!0,o.interrupt=void 0,Zt(e,e.attempt(ei,r,n),"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(s)}}function n3e(e,r,n){const o=this;return Zt(e,i,"listItemIndent",o.containerState.size+1);function i(a){const l=o.events[o.events.length-1];return l&&l[1].type==="listItemIndent"&&l[2].sliceSerialize(l[1],!0).length===o.containerState.size?r(a):n(a)}}function o3e(e){e.exit(this.containerState.type)}function i3e(e,r,n){const o=this;return Zt(e,i,"listItemPrefixWhitespace",o.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function i(a){const l=o.events[o.events.length-1];return!Vt(a)&&l&&l[1].type==="listItemPrefixWhitespace"?r(a):n(a)}}const NI={name:"setextUnderline",resolveTo:a3e,tokenize:l3e};function a3e(e,r){let n=e.length,o,i,a;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){o=n;break}e[n][1].type==="paragraph"&&(i=n)}else e[n][1].type==="content"&&e.splice(n,1),!a&&e[n][1].type==="definition"&&(a=n);const l={type:"setextHeading",start:{...e[o][1].start},end:{...e[e.length-1][1].end}};return e[i][1].type="setextHeadingText",a?(e.splice(i,0,["enter",l,r]),e.splice(a+1,0,["exit",e[o][1],r]),e[o][1].end={...e[a][1].end}):e[o][1]=l,e.push(["exit",l,r]),e}function l3e(e,r,n){const o=this;let i;return a;function a(d){let u=o.events.length,p;for(;u--;)if(o.events[u][1].type!=="lineEnding"&&o.events[u][1].type!=="linePrefix"&&o.events[u][1].type!=="content"){p=o.events[u][1].type==="paragraph";break}return!o.parser.lazy[o.now().line]&&(o.interrupt||p)?(e.enter("setextHeadingLine"),i=d,l(d)):n(d)}function l(d){return e.enter("setextHeadingLineSequence"),s(d)}function s(d){return d===i?(e.consume(d),s):(e.exit("setextHeadingLineSequence"),Vt(d)?Zt(e,c,"lineSuffix")(d):c(d))}function c(d){return d===null||mt(d)?(e.exit("setextHeadingLine"),r(d)):n(d)}}const s3e={tokenize:m3e,partial:!0};function c3e(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:h3e,continuation:{tokenize:f3e},exit:g3e}},text:{91:{name:"gfmFootnoteCall",tokenize:p3e},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:d3e,resolveTo:u3e}}}}function d3e(e,r,n){const o=this;let i=o.events.length;const a=o.parser.gfmFootnotes||(o.parser.gfmFootnotes=[]);let l;for(;i--;){const c=o.events[i][1];if(c.type==="labelImage"){l=c;break}if(c.type==="gfmFootnoteCall"||c.type==="labelLink"||c.type==="label"||c.type==="image"||c.type==="link")break}return s;function s(c){if(!l||!l._balanced)return n(c);const d=Ua(o.sliceSerialize({start:l.end,end:o.now()}));return d.codePointAt(0)!==94||!a.includes(d.slice(1))?n(c):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),r(c))}}function u3e(e,r){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const o={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const a={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},l={type:"chunkString",contentType:"string",start:Object.assign({},a.start),end:Object.assign({},a.end)},s=[e[n+1],e[n+2],["enter",o,r],e[n+3],e[n+4],["enter",i,r],["exit",i,r],["enter",a,r],["enter",l,r],["exit",l,r],["exit",a,r],e[e.length-2],e[e.length-1],["exit",o,r]];return e.splice(n,e.length-n+1,...s),e}function p3e(e,r,n){const o=this,i=o.parser.gfmFootnotes||(o.parser.gfmFootnotes=[]);let a=0,l;return s;function s(p){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),c}function c(p){return p!==94?n(p):(e.enter("gfmFootnoteCallMarker"),e.consume(p),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",d)}function d(p){if(a>999||p===93&&!l||p===null||p===91||Sr(p))return n(p);if(p===93){e.exit("chunkString");const f=e.exit("gfmFootnoteCallString");return i.includes(Ua(o.sliceSerialize(f)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),r):n(p)}return Sr(p)||(l=!0),a++,e.consume(p),p===92?u:d}function u(p){return p===91||p===92||p===93?(e.consume(p),a++,d):d(p)}}function h3e(e,r,n){const o=this,i=o.parser.gfmFootnotes||(o.parser.gfmFootnotes=[]);let a,l=0,s;return c;function c(v){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(v),e.exit("gfmFootnoteDefinitionLabelMarker"),d}function d(v){return v===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(v),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",u):n(v)}function u(v){if(l>999||v===93&&!s||v===null||v===91||Sr(v))return n(v);if(v===93){e.exit("chunkString");const w=e.exit("gfmFootnoteDefinitionLabelString");return a=Ua(o.sliceSerialize(w)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(v),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),f}return Sr(v)||(s=!0),l++,e.consume(v),v===92?p:u}function p(v){return v===91||v===92||v===93?(e.consume(v),l++,u):u(v)}function f(v){return v===58?(e.enter("definitionMarker"),e.consume(v),e.exit("definitionMarker"),i.includes(a)||i.push(a),Zt(e,m,"gfmFootnoteDefinitionWhitespace")):n(v)}function m(v){return r(v)}}function f3e(e,r,n){return e.check(s1,r,e.attempt(s3e,r,n))}function g3e(e){e.exit("gfmFootnoteDefinition")}function m3e(e,r,n){const o=this;return Zt(e,i,"gfmFootnoteDefinitionIndent",5);function i(a){const l=o.events[o.events.length-1];return l&&l[1].type==="gfmFootnoteDefinitionIndent"&&l[2].sliceSerialize(l[1],!0).length===4?r(a):n(a)}}function y3e(e){let n=(e||{}).singleTilde;const o={name:"strikethrough",tokenize:a,resolveAll:i};return n==null&&(n=!0),{text:{126:o},insideSpan:{null:[o]},attentionMarkers:{null:[126]}};function i(l,s){let c=-1;for(;++c1?c(v):(l.consume(v),p++,m);if(p<2&&!n)return c(v);const x=l.exit("strikethroughSequenceTemporary"),k=Fh(v);return x._open=!k||k===2&&!!w,x._close=!w||w===2&&!!k,s(v)}}}class v3e{constructor(){this.map=[]}add(r,n,o){b3e(this,r,n,o)}consume(r){if(this.map.sort(function(a,l){return a[0]-l[0]}),this.map.length===0)return;let n=this.map.length;const o=[];for(;n>0;)n-=1,o.push(r.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),r.length=this.map[n][0];o.push(r.slice()),r.length=0;let i=o.pop();for(;i;){for(const a of i)r.push(a);i=o.pop()}this.map.length=0}}function b3e(e,r,n,o){let i=0;if(!(n===0&&o.length===0)){for(;i-1;){const P=o.events[N][1].type;if(P==="lineEnding"||P==="linePrefix")N--;else break}const L=N>-1?o.events[N][1].type:null,H=L==="tableHead"||L==="tableRow"?T:c;return H===T&&o.parser.lazy[o.now().line]?n(I):H(I)}function c(I){return e.enter("tableHead"),e.enter("tableRow"),d(I)}function d(I){return I===124||(l=!0,a+=1),u(I)}function u(I){return I===null?n(I):mt(I)?a>1?(a=0,o.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(I),e.exit("lineEnding"),m):n(I):Vt(I)?Zt(e,u,"whitespace")(I):(a+=1,l&&(l=!1,i+=1),I===124?(e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),l=!0,u):(e.enter("data"),p(I)))}function p(I){return I===null||I===124||Sr(I)?(e.exit("data"),u(I)):(e.consume(I),I===92?f:p)}function f(I){return I===92||I===124?(e.consume(I),p):p(I)}function m(I){return o.interrupt=!1,o.parser.lazy[o.now().line]?n(I):(e.enter("tableDelimiterRow"),l=!1,Vt(I)?Zt(e,v,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(I):v(I))}function v(I){return I===45||I===58?x(I):I===124?(l=!0,e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),w):R(I)}function w(I){return Vt(I)?Zt(e,x,"whitespace")(I):x(I)}function x(I){return I===58?(a+=1,l=!0,e.enter("tableDelimiterMarker"),e.consume(I),e.exit("tableDelimiterMarker"),k):I===45?(a+=1,k(I)):I===null||mt(I)?$(I):R(I)}function k(I){return I===45?(e.enter("tableDelimiterFiller"),C(I)):R(I)}function C(I){return I===45?(e.consume(I),C):I===58?(l=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(I),e.exit("tableDelimiterMarker"),_):(e.exit("tableDelimiterFiller"),_(I))}function _(I){return Vt(I)?Zt(e,$,"whitespace")(I):$(I)}function $(I){return I===124?v(I):I===null||mt(I)?!l||i!==a?R(I):(e.exit("tableDelimiterRow"),e.exit("tableHead"),r(I)):R(I)}function R(I){return n(I)}function T(I){return e.enter("tableRow"),A(I)}function A(I){return I===124?(e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),A):I===null||mt(I)?(e.exit("tableRow"),r(I)):Vt(I)?Zt(e,A,"whitespace")(I):(e.enter("data"),z(I))}function z(I){return I===null||I===124||Sr(I)?(e.exit("data"),A(I)):(e.consume(I),I===92?j:z)}function j(I){return I===92||I===124?(e.consume(I),z):z(I)}}function _3e(e,r){let n=-1,o=!0,i=0,a=[0,0,0,0],l=[0,0,0,0],s=!1,c=0,d,u,p;const f=new v3e;for(;++nn[2]+1){const v=n[2]+1,w=n[3]-n[2]-1;e.add(v,w,[])}}e.add(n[3]+1,0,[["exit",p,r]])}return i!==void 0&&(a.end=Object.assign({},qh(r.events,i)),e.add(i,0,[["exit",a,r]]),a=void 0),a}function BI(e,r,n,o,i){const a=[],l=qh(r.events,n);i&&(i.end=Object.assign({},l),a.push(["exit",i,r])),o.end=Object.assign({},l),a.push(["exit",o,r]),e.add(n+1,0,a)}function qh(e,r){const n=e[r],o=n[0]==="enter"?"start":"end";return n[1][o]}const S3e={name:"tasklistCheck",tokenize:C3e};function E3e(){return{text:{91:S3e}}}function C3e(e,r,n){const o=this;return i;function i(c){return o.previous!==null||!o._gfmTasklistFirstContentOfListItem?n(c):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),a)}function a(c){return Sr(c)?(e.enter("taskListCheckValueUnchecked"),e.consume(c),e.exit("taskListCheckValueUnchecked"),l):c===88||c===120?(e.enter("taskListCheckValueChecked"),e.consume(c),e.exit("taskListCheckValueChecked"),l):n(c)}function l(c){return c===93?(e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),s):n(c)}function s(c){return mt(c)?r(c):Vt(c)?e.check({tokenize:$3e},r,n)(c):n(c)}}function $3e(e,r,n){return Zt(e,o,"whitespace");function o(i){return i===null?n(i):r(i)}}function R3e(e){return mI([Ixe(),c3e(),y3e(e),w3e(),E3e()])}const z3e={};function T3e(e){const r=this,n=e||z3e,o=r.data(),i=o.micromarkExtensions||(o.micromarkExtensions=[]),a=o.fromMarkdownExtensions||(o.fromMarkdownExtensions=[]),l=o.toMarkdownExtensions||(o.toMarkdownExtensions=[]);i.push(R3e(n)),a.push(Axe()),l.push(Dxe(n))}const j3e=/^\[!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\]/i,A3e=/^\[!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)(\/.*)?\]/i,D3e=({legacyTitle:e=!1,tagName:r="div"}={})=>n=>{K_(n,"blockquote",(o,i,a)=>{let l="",s="",c=!0,d=o.children.map(u=>{if(c&&u.type==="paragraph"){const p=u.children[0],f=p.type==="text"?p.value:"",m=e?A3e:j3e,v=f.match(m);if(v&&(c=!1,l=v[1].toLocaleLowerCase(),s=e&&v[2]||l.toLocaleUpperCase(),f.includes(` +`)&&(u.children[0]={type:"text",value:f.replace(m,"").replace(/^\n+/,"")}),!f.includes(` +`))){const w=[];u.children.forEach((x,k)=>{k!=0&&(k==1&&x.type==="break"||w.push(x))}),u.children=[...w]}}return u});l&&(o.data={hName:r,hProperties:{className:["markdown-alert",`markdown-alert-${l}`],dir:"auto"}},d.unshift({type:"paragraph",children:[P3e(l),{type:"text",value:s.replace(/^\//,"")}],data:{hProperties:{className:"markdown-alert-title",dir:"auto"}}})),o.children=[...d]})};function P3e(e){let r=M3e[e]??"";return{type:"emphasis",data:{hName:"svg",hProperties:{className:["octicon"],viewBox:"0 0 16 16",width:"16",height:"16",ariaHidden:"true"}},children:[{type:"emphasis",data:{hName:"path",hProperties:{d:r}},children:[]}]}}const M3e={note:"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z",tip:"M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z",important:"M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",warning:"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",caution:"M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"},N3e={tokenize:B3e};function B3e(e){const r=e.attempt(this.parser.constructs.contentInitial,o,i);let n;return r;function o(s){if(s===null){e.consume(s);return}return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),Zt(e,r,"linePrefix")}function i(s){return e.enter("paragraph"),a(s)}function a(s){const c=e.enter("chunkText",{contentType:"text",previous:n});return n&&(n.next=c),n=c,l(s)}function l(s){if(s===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(s);return}return mt(s)?(e.consume(s),e.exit("chunkText"),a):(e.consume(s),l)}}const I3e={tokenize:O3e},II={tokenize:L3e};function O3e(e){const r=this,n=[];let o=0,i,a,l;return s;function s(_){if(ol))return;const A=r.events.length;let z=A,j,I;for(;z--;)if(r.events[z][0]==="exit"&&r.events[z][1].type==="chunkFlow"){if(j){I=r.events[z][1].end;break}j=!0}for(k(o),T=A;T_;){const R=n[$];r.containerState=R[1],R[0].exit.call(r,e)}n.length=_}function C(){i.write([null]),a=void 0,i=void 0,r.containerState._closeFlow=void 0}}function L3e(e,r,n){return Zt(e,e.attempt(this.parser.constructs.document,r,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}const F3e={tokenize:V3e};function V3e(e){const r=this,n=e.attempt(s1,o,e.attempt(this.parser.constructs.flowInitial,i,Zt(e,e.attempt(this.parser.constructs.flow,i,e.attempt(fwe,i)),"linePrefix")));return n;function o(a){if(a===null){e.consume(a);return}return e.enter("lineEndingBlank"),e.consume(a),e.exit("lineEndingBlank"),r.currentConstruct=void 0,n}function i(a){if(a===null){e.consume(a);return}return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),r.currentConstruct=void 0,n}}const q3e={resolveAll:LI()},H3e=OI("string"),U3e=OI("text");function OI(e){return{resolveAll:LI(e==="text"?W3e:void 0),tokenize:r};function r(n){const o=this,i=this.parser.constructs[e],a=n.attempt(i,l,s);return l;function l(u){return d(u)?a(u):s(u)}function s(u){if(u===null){n.consume(u);return}return n.enter("data"),n.consume(u),c}function c(u){return d(u)?(n.exit("data"),a(u)):(n.consume(u),c)}function d(u){if(u===null)return!0;const p=i[u];let f=-1;if(p)for(;++f-1){const s=l[0];typeof s=="string"?l[0]=s.slice(o):l.shift()}a>0&&l.push(e[i].slice(0,a))}return l}function K3e(e,r){let n=-1;const o=[];let i;for(;++n0){const Tr=Ye.tokenStack[Ye.tokenStack.length-1];(Tr[1]||GI).call(Ye,void 0,Tr[0])}for(ke.position={start:rd(be.length>0?be[0][1].start:{line:1,column:1,offset:0}),end:rd(be.length>0?be[be.length-2][1].end:{line:1,column:1,offset:0})},xt=-1;++xt0){const Tr=Ye.tokenStack[Ye.tokenStack.length-1];(Tr[1]||GI).call(Ye,void 0,Tr[0])}for(ke.position={start:rd(be.length>0?be[0][1].start:{line:1,column:1,offset:0}),end:rd(be.length>0?be[be.length-2][1].end:{line:1,column:1,offset:0})},xt=-1;++xt1?"-"+s:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(l)}]};e.patch(r,c);const d={type:"element",tagName:"sup",properties:{},children:[c]};return e.patch(r,d),e.applyData(r,d)}function c2e(e,r){const n={type:"element",tagName:"h"+r.depth,properties:{},children:e.all(r)};return e.patch(r,n),e.applyData(r,n)}function d2e(e,r){if(e.options.allowDangerousHtml){const n={type:"raw",value:r.value};return e.patch(r,n),e.applyData(r,n)}}function YI(e,r){const n=r.referenceType;let o="]";if(n==="collapsed"?o+="[]":n==="full"&&(o+="["+(r.label||r.identifier)+"]"),r.type==="imageReference")return[{type:"text",value:"!["+r.alt+o}];const i=e.all(r),a=i[0];a&&a.type==="text"?a.value="["+a.value:i.unshift({type:"text",value:"["});const l=i[i.length-1];return l&&l.type==="text"?l.value+=o:i.push({type:"text",value:o}),i}function u2e(e,r){const n=String(r.identifier).toUpperCase(),o=e.definitionById.get(n);if(!o)return YI(e,r);const i={src:Vh(o.url||""),alt:r.alt};o.title!==null&&o.title!==void 0&&(i.title=o.title);const a={type:"element",tagName:"img",properties:i,children:[]};return e.patch(r,a),e.applyData(r,a)}function p2e(e,r){const n={src:Vh(r.url)};r.alt!==null&&r.alt!==void 0&&(n.alt=r.alt),r.title!==null&&r.title!==void 0&&(n.title=r.title);const o={type:"element",tagName:"img",properties:n,children:[]};return e.patch(r,o),e.applyData(r,o)}function h2e(e,r){const n={type:"text",value:r.value.replace(/\r?\n|\r/g," ")};e.patch(r,n);const o={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(r,o),e.applyData(r,o)}function f2e(e,r){const n=String(r.identifier).toUpperCase(),o=e.definitionById.get(n);if(!o)return YI(e,r);const i={href:Vh(o.url||"")};o.title!==null&&o.title!==void 0&&(i.title=o.title);const a={type:"element",tagName:"a",properties:i,children:e.all(r)};return e.patch(r,a),e.applyData(r,a)}function m2e(e,r){const n={href:Vh(r.url)};r.title!==null&&r.title!==void 0&&(n.title=r.title);const o={type:"element",tagName:"a",properties:n,children:e.all(r)};return e.patch(r,o),e.applyData(r,o)}function g2e(e,r,n){const o=e.all(r),i=n?y2e(n):XI(r),a={},l=[];if(typeof r.checked=="boolean"){const u=o[0];let p;u&&u.type==="element"&&u.tagName==="p"?p=u:(p={type:"element",tagName:"p",properties:{},children:[]},o.unshift(p)),p.children.length>0&&p.children.unshift({type:"text",value:" "}),p.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:r.checked,disabled:!0},children:[]}),a.className=["task-list-item"]}let s=-1;for(;++s1?"-"+s:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(l)}]};e.patch(r,c);const d={type:"element",tagName:"sup",properties:{},children:[c]};return e.patch(r,d),e.applyData(r,d)}function c2e(e,r){const n={type:"element",tagName:"h"+r.depth,properties:{},children:e.all(r)};return e.patch(r,n),e.applyData(r,n)}function d2e(e,r){if(e.options.allowDangerousHtml){const n={type:"raw",value:r.value};return e.patch(r,n),e.applyData(r,n)}}function YI(e,r){const n=r.referenceType;let o="]";if(n==="collapsed"?o+="[]":n==="full"&&(o+="["+(r.label||r.identifier)+"]"),r.type==="imageReference")return[{type:"text",value:"!["+r.alt+o}];const i=e.all(r),a=i[0];a&&a.type==="text"?a.value="["+a.value:i.unshift({type:"text",value:"["});const l=i[i.length-1];return l&&l.type==="text"?l.value+=o:i.push({type:"text",value:o}),i}function u2e(e,r){const n=String(r.identifier).toUpperCase(),o=e.definitionById.get(n);if(!o)return YI(e,r);const i={src:Vh(o.url||""),alt:r.alt};o.title!==null&&o.title!==void 0&&(i.title=o.title);const a={type:"element",tagName:"img",properties:i,children:[]};return e.patch(r,a),e.applyData(r,a)}function p2e(e,r){const n={src:Vh(r.url)};r.alt!==null&&r.alt!==void 0&&(n.alt=r.alt),r.title!==null&&r.title!==void 0&&(n.title=r.title);const o={type:"element",tagName:"img",properties:n,children:[]};return e.patch(r,o),e.applyData(r,o)}function h2e(e,r){const n={type:"text",value:r.value.replace(/\r?\n|\r/g," ")};e.patch(r,n);const o={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(r,o),e.applyData(r,o)}function f2e(e,r){const n=String(r.identifier).toUpperCase(),o=e.definitionById.get(n);if(!o)return YI(e,r);const i={href:Vh(o.url||"")};o.title!==null&&o.title!==void 0&&(i.title=o.title);const a={type:"element",tagName:"a",properties:i,children:e.all(r)};return e.patch(r,a),e.applyData(r,a)}function g2e(e,r){const n={href:Vh(r.url)};r.title!==null&&r.title!==void 0&&(n.title=r.title);const o={type:"element",tagName:"a",properties:n,children:e.all(r)};return e.patch(r,o),e.applyData(r,o)}function m2e(e,r,n){const o=e.all(r),i=n?y2e(n):XI(r),a={},l=[];if(typeof r.checked=="boolean"){const u=o[0];let p;u&&u.type==="element"&&u.tagName==="p"?p=u:(p={type:"element",tagName:"p",properties:{},children:[]},o.unshift(p)),p.children.length>0&&p.children.unshift({type:"text",value:" "}),p.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:r.checked,disabled:!0},children:[]}),a.className=["task-list-item"]}let s=-1;for(;++s1}function v2e(e,r){const n={},o=e.all(r);let i=-1;for(typeof r.start=="number"&&r.start!==1&&(n.start=r.start);++i0){const l={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},s=fB(r.children[1]),c=hB(r.children[r.children.length-1]);s&&c&&(l.position={start:s,end:c}),i.push(l)}const a={type:"element",tagName:"table",properties:{},children:e.wrap(i,!0)};return e.patch(r,a),e.applyData(r,a)}function _2e(e,r,n){const o=n?n.children:void 0,a=(o?o.indexOf(r):1)===0?"th":"td",l=n&&n.type==="table"?n.align:void 0,s=l?l.length:r.children.length;let c=-1;const d=[];for(;++c0,!0),o[0]),i=o.index+o[0].length,o=n.exec(r);return a.push(QI(r.slice(i),i>0,!1)),a.join("")}function QI(e,r,n){let o=0,i=e.length;if(r){let a=e.codePointAt(o);for(;a===KI||a===ZI;)o++,a=e.codePointAt(o)}if(n){let a=e.codePointAt(i-1);for(;a===KI||a===ZI;)i--,a=e.codePointAt(i-1)}return i>o?e.slice(o,i):""}function C2e(e,r){const n={type:"text",value:E2e(String(r.value))};return e.patch(r,n),e.applyData(r,n)}function $2e(e,r){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(r,n),e.applyData(r,n)}const R2e={blockquote:n2e,break:o2e,code:i2e,delete:a2e,emphasis:l2e,footnoteReference:s2e,heading:c2e,html:d2e,imageReference:u2e,image:p2e,inlineCode:h2e,linkReference:f2e,link:m2e,listItem:g2e,list:v2e,paragraph:b2e,root:x2e,strong:w2e,table:k2e,tableCell:S2e,tableRow:_2e,text:C2e,thematicBreak:$2e,toml:Yb,yaml:Yb,definition:Yb,footnoteDefinition:Yb};function Yb(){}function z2e(e,r){const n=[{type:"text",value:"↩"}];return r>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(r)}]}),n}function T2e(e,r){return"Back to reference "+(e+1)+(r>1?"-"+r:"")}function j2e(e){const r=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||z2e,o=e.options.footnoteBackLabel||T2e,i=e.options.footnoteLabel||"Footnotes",a=e.options.footnoteLabelTagName||"h2",l=e.options.footnoteLabelProperties||{className:["sr-only"]},s=[];let c=-1;for(;++c0&&v.push({type:"text",value:" "});let C=typeof n=="string"?n:n(c,g);typeof C=="string"&&(C={type:"text",value:C}),v.push({type:"element",tagName:"a",properties:{href:"#"+r+"fnref-"+f+(g>1?"-"+g:""),dataFootnoteBackref:"",ariaLabel:typeof o=="string"?o:o(c,g),className:["data-footnote-backref"]},children:Array.isArray(C)?C:[C]})}const x=u[u.length-1];if(x&&x.type==="element"&&x.tagName==="p"){const C=x.children[x.children.length-1];C&&C.type==="text"?C.value+=" ":x.children.push({type:"text",value:" "}),x.children.push(...v)}else u.push(...v);const k={type:"element",tagName:"li",properties:{id:r+"fn-"+f},children:e.wrap(u,!0)};e.patch(d,k),s.push(k)}if(s.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:a,properties:{...o1(l),id:"footnote-label"},children:[{type:"text",value:i}]},{type:"text",value:` +`});const d={type:"element",tagName:"li",properties:a,children:l};return e.patch(r,d),e.applyData(r,d)}function y2e(e){let r=!1;if(e.type==="list"){r=e.spread||!1;const n=e.children;let o=-1;for(;!r&&++o1}function v2e(e,r){const n={},o=e.all(r);let i=-1;for(typeof r.start=="number"&&r.start!==1&&(n.start=r.start);++i0){const l={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},s=fB(r.children[1]),c=hB(r.children[r.children.length-1]);s&&c&&(l.position={start:s,end:c}),i.push(l)}const a={type:"element",tagName:"table",properties:{},children:e.wrap(i,!0)};return e.patch(r,a),e.applyData(r,a)}function _2e(e,r,n){const o=n?n.children:void 0,a=(o?o.indexOf(r):1)===0?"th":"td",l=n&&n.type==="table"?n.align:void 0,s=l?l.length:r.children.length;let c=-1;const d=[];for(;++c0,!0),o[0]),i=o.index+o[0].length,o=n.exec(r);return a.push(QI(r.slice(i),i>0,!1)),a.join("")}function QI(e,r,n){let o=0,i=e.length;if(r){let a=e.codePointAt(o);for(;a===KI||a===ZI;)o++,a=e.codePointAt(o)}if(n){let a=e.codePointAt(i-1);for(;a===KI||a===ZI;)i--,a=e.codePointAt(i-1)}return i>o?e.slice(o,i):""}function C2e(e,r){const n={type:"text",value:E2e(String(r.value))};return e.patch(r,n),e.applyData(r,n)}function $2e(e,r){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(r,n),e.applyData(r,n)}const R2e={blockquote:n2e,break:o2e,code:i2e,delete:a2e,emphasis:l2e,footnoteReference:s2e,heading:c2e,html:d2e,imageReference:u2e,image:p2e,inlineCode:h2e,linkReference:f2e,link:g2e,listItem:m2e,list:v2e,paragraph:b2e,root:x2e,strong:w2e,table:k2e,tableCell:S2e,tableRow:_2e,text:C2e,thematicBreak:$2e,toml:Yb,yaml:Yb,definition:Yb,footnoteDefinition:Yb};function Yb(){}function z2e(e,r){const n=[{type:"text",value:"↩"}];return r>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(r)}]}),n}function T2e(e,r){return"Back to reference "+(e+1)+(r>1?"-"+r:"")}function j2e(e){const r=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||z2e,o=e.options.footnoteBackLabel||T2e,i=e.options.footnoteLabel||"Footnotes",a=e.options.footnoteLabelTagName||"h2",l=e.options.footnoteLabelProperties||{className:["sr-only"]},s=[];let c=-1;for(;++c0&&v.push({type:"text",value:" "});let C=typeof n=="string"?n:n(c,m);typeof C=="string"&&(C={type:"text",value:C}),v.push({type:"element",tagName:"a",properties:{href:"#"+r+"fnref-"+f+(m>1?"-"+m:""),dataFootnoteBackref:"",ariaLabel:typeof o=="string"?o:o(c,m),className:["data-footnote-backref"]},children:Array.isArray(C)?C:[C]})}const x=u[u.length-1];if(x&&x.type==="element"&&x.tagName==="p"){const C=x.children[x.children.length-1];C&&C.type==="text"?C.value+=" ":x.children.push({type:"text",value:" "}),x.children.push(...v)}else u.push(...v);const k={type:"element",tagName:"li",properties:{id:r+"fn-"+f},children:e.wrap(u,!0)};e.patch(d,k),s.push(k)}if(s.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:a,properties:{...o1(l),id:"footnote-label"},children:[{type:"text",value:i}]},{type:"text",value:` `},{type:"element",tagName:"ol",properties:{},children:e.wrap(s,!0)},{type:"text",value:` -`}]}}const l8={}.hasOwnProperty,A2e={};function D2e(e,r){const n=r||A2e,o=new Map,i=new Map,a=new Map,l={...R2e,...n.handlers},s={all:d,applyData:N2e,definitionById:o,footnoteById:i,footnoteCounts:a,footnoteOrder:[],handlers:l,one:c,options:n,patch:M2e,wrap:B2e};return K_(e,function(u){if(u.type==="definition"||u.type==="footnoteDefinition"){const p=u.type==="definition"?o:i,f=String(u.identifier).toUpperCase();p.has(f)||p.set(f,u)}}),s;function c(u,p){const f=u.type,g=s.handlers[f];if(l8.call(s.handlers,f)&&g)return g(s,u,p);if(s.options.passThrough&&s.options.passThrough.includes(f)){if("children"in u){const{children:w,...x}=u,k=o1(x);return k.children=s.all(u),k}return o1(u)}return(s.options.unknownHandler||P2e)(s,u,p)}function d(u){const p=[];if("children"in u){const f=u.children;let g=-1;for(;++g0&&n.push({type:"text",value:` `}),n}function JI(e){let r=0,n=e.charCodeAt(r);for(;n===9||n===32;)r++,n=e.charCodeAt(r);return e.slice(r)}function eO(e,r){const n=D2e(e,r),o=n.one(e,void 0),i=j2e(n),a=Array.isArray(o)?{type:"root",children:o}:o||{type:"root",children:[]};return i&&a.children.push({type:"text",value:` -`},i),a}function I2e(e,r){return e&&"run"in e?async function(n,o){const i=eO(n,{file:o,...r});await e.run(i,o)}:function(n,o){return eO(n,{file:o,...e||r})}}function tO(e){if(e)throw e}var s8,rO;function O2e(){if(rO)return s8;rO=1;var e=Object.prototype.hasOwnProperty,r=Object.prototype.toString,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,i=function(d){return typeof Array.isArray=="function"?Array.isArray(d):r.call(d)==="[object Array]"},a=function(d){if(!d||r.call(d)!=="[object Object]")return!1;var u=e.call(d,"constructor"),p=d.constructor&&d.constructor.prototype&&e.call(d.constructor.prototype,"isPrototypeOf");if(d.constructor&&!u&&!p)return!1;var f;for(f in d);return typeof f>"u"||e.call(d,f)},l=function(d,u){n&&u.name==="__proto__"?n(d,u.name,{enumerable:!0,configurable:!0,value:u.newValue,writable:!0}):d[u.name]=u.newValue},s=function(d,u){if(u==="__proto__")if(e.call(d,u)){if(o)return o(d,u).value}else return;return d[u]};return s8=function c(){var d,u,p,f,g,v,w=arguments[0],x=1,k=arguments.length,C=!1;for(typeof w=="boolean"&&(C=w,w=arguments[1]||{},x=2),(w==null||typeof w!="object"&&typeof w!="function")&&(w={});xl.length;let c;s&&l.push(i);try{c=e.apply(this,l)}catch(d){const u=d;if(s&&n)throw u;return i(u)}s||(c&&c.then&&typeof c.then=="function"?c.then(a,i):c instanceof Error?i(c):a(c))}function i(l,...s){n||(n=!0,r(l,...s))}function a(l){i(null,l)}}class ti extends Error{constructor(r,n,o){super(),typeof n=="string"&&(o=n,n=void 0);let i="",a={},l=!1;if(n&&("line"in n&&"column"in n?a={place:n}:"start"in n&&"end"in n?a={place:n}:"type"in n?a={ancestors:[n],place:n.position}:a={...n}),typeof r=="string"?i=r:!a.cause&&r&&(l=!0,i=r.message,a.cause=r),!a.ruleId&&!a.source&&typeof o=="string"){const c=o.indexOf(":");c===-1?a.ruleId=o:(a.source=o.slice(0,c),a.ruleId=o.slice(c+1))}if(!a.place&&a.ancestors&&a.ancestors){const c=a.ancestors[a.ancestors.length-1];c&&(a.place=c.position)}const s=a.place&&"start"in a.place?a.place.start:a.place;this.ancestors=a.ancestors||void 0,this.cause=a.cause||void 0,this.column=s?s.column:void 0,this.fatal=void 0,this.file,this.message=i,this.line=s?s.line:void 0,this.name=u1(a.place)||"1:1",this.place=a.place||void 0,this.reason=this.message,this.ruleId=a.ruleId||void 0,this.source=a.source||void 0,this.stack=l&&a.cause&&typeof a.cause.stack=="string"?a.cause.stack:"",this.actual,this.expected,this.note,this.url}}ti.prototype.file="",ti.prototype.name="",ti.prototype.reason="",ti.prototype.message="",ti.prototype.stack="",ti.prototype.column=void 0,ti.prototype.line=void 0,ti.prototype.ancestors=void 0,ti.prototype.cause=void 0,ti.prototype.fatal=void 0,ti.prototype.place=void 0,ti.prototype.ruleId=void 0,ti.prototype.source=void 0;const ql={basename:q2e,dirname:H2e,extname:U2e,join:W2e,sep:"/"};function q2e(e,r){if(r!==void 0&&typeof r!="string")throw new TypeError('"ext" argument must be a string');p1(e);let n=0,o=-1,i=e.length,a;if(r===void 0||r.length===0||r.length>e.length){for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else o<0&&(a=!0,o=i+1);return o<0?"":e.slice(n,o)}if(r===e)return"";let l=-1,s=r.length-1;for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else l<0&&(a=!0,l=i+1),s>-1&&(e.codePointAt(i)===r.codePointAt(s--)?s<0&&(o=i):(s=-1,o=l));return n===o?o=l:o<0&&(o=e.length),e.slice(n,o)}function H2e(e){if(p1(e),e.length===0)return".";let r=-1,n=e.length,o;for(;--n;)if(e.codePointAt(n)===47){if(o){r=n;break}}else o||(o=!0);return r<0?e.codePointAt(0)===47?"/":".":r===1&&e.codePointAt(0)===47?"//":e.slice(0,r)}function U2e(e){p1(e);let r=e.length,n=-1,o=0,i=-1,a=0,l;for(;r--;){const s=e.codePointAt(r);if(s===47){if(l){o=r+1;break}continue}n<0&&(l=!0,n=r+1),s===46?i<0?i=r:a!==1&&(a=1):i>-1&&(a=-1)}return i<0||n<0||a===0||a===1&&i===n-1&&i===o+1?"":e.slice(i,n)}function W2e(...e){let r=-1,n;for(;++r0&&e.codePointAt(e.length-1)===47&&(n+="/"),r?"/"+n:n}function Y2e(e,r){let n="",o=0,i=-1,a=0,l=-1,s,c;for(;++l<=e.length;){if(l2){if(c=n.lastIndexOf("/"),c!==n.length-1){c<0?(n="",o=0):(n=n.slice(0,c),o=n.length-1-n.lastIndexOf("/")),i=l,a=0;continue}}else if(n.length>0){n="",o=0,i=l,a=0;continue}}r&&(n=n.length>0?n+"/..":"..",o=2)}else n.length>0?n+="/"+e.slice(i+1,l):n=e.slice(i+1,l),o=l-i-1;i=l,a=0}else s===46&&a>-1?a++:a=-1}return n}function p1(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const X2e={cwd:K2e};function K2e(){return"/"}function u8(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function Z2e(e){if(typeof e=="string")e=new URL(e);else if(!u8(e)){const r=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw r.code="ERR_INVALID_ARG_TYPE",r}if(e.protocol!=="file:"){const r=new TypeError("The URL must be of scheme file");throw r.code="ERR_INVALID_URL_SCHEME",r}return Q2e(e)}function Q2e(e){if(e.hostname!==""){const o=new TypeError('File URL host must be "localhost" or empty on darwin');throw o.code="ERR_INVALID_FILE_URL_HOST",o}const r=e.pathname;let n=-1;for(;++n0){let[g,...v]=u;const w=o[f][1];d8(w)&&d8(g)&&(g=c8(!0,w,g)),o[f]=[d,g,...v]}}}}const n4e=new m8().freeze();function g8(e,r){if(typeof r!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function y8(e,r){if(typeof r!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function v8(e,r){if(r)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function oO(e){if(!d8(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function iO(e,r,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+r+"` instead")}function Xb(e){return o4e(e)?e:new J2e(e)}function o4e(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function i4e(e){return typeof e=="string"||a4e(e)}function a4e(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}function l4e(){return n4e().use(r2e).use(T3e).use(D3e).use(I2e,{allowDangerousHtml:!0}).use(S0e,XN({attributes:{"*":["className"],svg:["width","height","viewBox","fill","ariaHidden"],path:["d","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin"]},tagNames:["svg","g","path","div"]},M_)).use(Fve,{allowDangerousHtml:!0})}function s4e(e){return(""+l4e().processSync(e)).trim()}function c4e(e){return Hb(UI(e),{includeHtml:!1,includeImageAlt:!1})}var b8,aO;function d4e(){if(aO)return b8;aO=1;var e=aB(),r=Ab();function n(){this.clear()}return n.prototype.clear=function(){this.items=[],this.offset=0,this.size=0},n.prototype.enqueue=function(o){return this.items.push(o),++this.size},n.prototype.dequeue=function(){if(this.size){var o=this.items[this.offset];return++this.offset*2>=this.items.length&&(this.items=this.items.slice(this.offset),this.offset=0),this.size--,o}},n.prototype.peek=function(){if(this.size)return this.items[this.offset]},n.prototype.forEach=function(o,i){i=arguments.length>1?i:this;for(var a=this.offset,l=0,s=this.items.length;a=o.length)return{done:!0};var a=o[i];return i++,{value:a,done:!1}})},n.prototype.entries=function(){var o=this.items,i=this.offset,a=0;return new e(function(){if(i>=o.length)return{done:!0};var l=o[i];return i++,{value:[a++,l],done:!1}})},typeof Symbol<"u"&&(n.prototype[Symbol.iterator]=n.prototype.values),n.prototype.toString=function(){return this.toArray().join(",")},n.prototype.toJSON=function(){return this.toArray()},n.prototype.inspect=function(){var o=this.toArray();return Object.defineProperty(o,"constructor",{value:n,enumerable:!1}),o},typeof Symbol<"u"&&(n.prototype[Symbol.for("nodejs.util.inspect.custom")]=n.prototype.inspect),n.from=function(o){var i=new n;return r(o,function(a){i.enqueue(a)}),i},n.of=function(){return n.from(arguments)},b8=n,b8}var u4e=d4e();const x8=Qg(u4e);var w8,lO;function p4e(){if(lO)return w8;lO=1;function e(r){if(typeof r!="function")throw new Error("mnemonist/DefaultMap.constructor: expecting a function.");this.items=new Map,this.factory=r,this.size=0}return e.prototype.clear=function(){this.items.clear(),this.size=0},e.prototype.get=function(r){var n=this.items.get(r);return typeof n>"u"&&(n=this.factory(r,this.size),this.items.set(r,n),this.size++),n},e.prototype.peek=function(r){return this.items.get(r)},e.prototype.set=function(r,n){return this.items.set(r,n),this.size=this.items.size,this},e.prototype.has=function(r){return this.items.has(r)},e.prototype.delete=function(r){var n=this.items.delete(r);return this.size=this.items.size,n},e.prototype.forEach=function(r,n){n=arguments.length>1?n:this,this.items.forEach(r,n)},e.prototype.entries=function(){return this.items.entries()},e.prototype.keys=function(){return this.items.keys()},e.prototype.values=function(){return this.items.values()},typeof Symbol<"u"&&(e.prototype[Symbol.iterator]=e.prototype.entries),e.prototype.inspect=function(){return this.items},typeof Symbol<"u"&&(e.prototype[Symbol.for("nodejs.util.inspect.custom")]=e.prototype.inspect),e.autoIncrement=function(){var r=0;return function(){return r++}},w8=e,w8}var h4e=p4e();const Ln=Qg(h4e);function Ji(e){return!!e}function sO(e){return r=>!e(r)}function f4e(...e){return ao(m4e,e)}const m4e=(e,r)=>r.every(n=>n(e));function g4e(...e){return ao(y4e,e)}const y4e=(e,r)=>r.some(n=>n(e));function Xn(e){return e==null}function cO(e,r){return e[Iu]===r}const Iu="_stage",h1="_type",k8="_layout";function v4e(e){return Ji(e.kind)&&!Ji(e.element)}function b4e(e){return"tag"in e}function x4e(e){return"kind"in e}function w4e(e){return"participant"in e}function k4e(e){return"not"in e}function _4e(e){return"and"in e}function S4e(e){return"or"in e}function Ou(e){switch(!0){case w4e(e):{const r=e.participant,n=Ou(e.operator);return E4e(r,n)}case b4e(e):{if(Qc(e.tag)||"eq"in e.tag){const n=Qc(e.tag)?e.tag:e.tag.eq;return o=>Array.isArray(o.tags)&&o.tags.includes(n)}const r=e.tag.neq;return n=>!Array.isArray(n.tags)||!n.tags.includes(r)}case x4e(e):{if(Qc(e.kind)||"eq"in e.kind){const n=Qc(e.kind)?e.kind:e.kind.eq;return o=>o.kind===n}const r=e.kind.neq;return n=>Xn(n.kind)||n.kind!==r}case k4e(e):{const r=Ou(e.not);return sO(r)}case _4e(e):{const r=e.and.map(Ou);return f4e(r)}case S4e(e):{const r=e.or.map(Ou);return g4e(r)}default:Qo(e)}}function E4e(e,r){return n=>{if(!n.source||!n.target)return!1;switch(e){case"source":return r(n.source);case"target":return r(n.target)}}}function C4e(e){return e._type==="dynamic"}function f1(...e){return ao(Object.entries,e)}function Lu(e,...r){return typeof e=="string"||typeof e=="number"||typeof e=="symbol"?n=>dO(n,e,...r):dO(e,...r)}function dO(e,...r){let n=e;for(let o of r){if(n==null)return;n=n[o]}return n}function Kb(...e){return ao($4e,e,R4e)}const $4e=(e,r)=>e.map(r),R4e=e=>(r,n,o)=>({done:!1,hasNext:!0,next:e(r,n,o)});function z4e(e,r){let n=r.length-e.length;if(n===1){let[o,...i]=r;return Ps(o,{lazy:e,lazyArgs:i})}if(n===0){let o={lazy:e,lazyArgs:r};return Object.assign(i=>Ps(i,o),o)}throw Error("Wrong number of arguments")}function Zb(...e){return z4e(T4e,e)}function T4e(){let e=new Set;return r=>e.has(r)?E_:(e.add(r),{done:!1,hasNext:!0,next:r})}var _8={},uO;function j4e(){return uO||(uO=1,(function(e){e.intersection=function(){if(arguments.length<2)throw new Error("mnemonist/Set.intersection: needs at least two arguments.");var r=new Set,n=1/0,o=null,i,a,l=arguments.length;for(a=0;an.size)return!1;for(;i=o.next(),!i.done;)if(!n.has(i.value))return!1;return!0},e.isSuperset=function(r,n){return e.isSubset(n,r)},e.add=function(r,n){for(var o=n.values(),i;i=o.next(),!i.done;)r.add(i.value)},e.subtract=function(r,n){for(var o=n.values(),i;i=o.next(),!i.done;)r.delete(i.value)},e.intersect=function(r,n){for(var o=r.values(),i;i=o.next(),!i.done;)n.has(i.value)||r.delete(i.value)},e.disjunct=function(r,n){for(var o=r.values(),i,a=[];i=o.next(),!i.done;)n.has(i.value)&&a.push(i.value);for(o=n.values();i=o.next(),!i.done;)r.has(i.value)||r.add(i.value);for(var l=0,s=a.length;ln.size&&(o=r,r=n,n=o),r.size===0)return 0;if(r===n)return r.size;for(var i=r.values(),a,l=0;a=i.next(),!a.done;)n.has(a.value)&&l++;return l},e.unionSize=function(r,n){var o=e.intersectionSize(r,n);return r.size+n.size-o},e.jaccard=function(r,n){var o=e.intersectionSize(r,n);if(o===0)return 0;var i=r.size+n.size-o;return o/i},e.overlap=function(r,n){var o=e.intersectionSize(r,n);return o===0?0:o/Math.min(r.size,n.size)}})(_8)),_8}var pO=j4e();function S8(...e){let r=new Set;for(const n of e)for(const o of n)r.add(o);return r}function Hh(e,...r){let n=new Set;if(e.size===0)return n;let o=Ll(r,2)?pO.intersection(...r):r[0];if(o.size===0)return n;for(const i of e)o.has(i)&&n.add(i);return n}function E8(e,r){if(e.size===0)return new Set;if(r.size===0)return new Set(e);let n=new Set;for(const o of e)r.has(o)||n.add(o);return n}function A4e(e,r){return e.size===r.size&&[...e].every(n=>r.has(n))}function D4e(e,r){return pO.symmetricDifference(e,r)}function m1(e){return e?hO(e):hO}function hO(e){const r=e[Symbol.iterator](),{value:n}=r.next();return n}const Qb=e=>typeof e=="function";function Is(e,r){const n=r??e;He(Qb(n));function*o(i){for(const a of i)n(a)&&(yield a)}return r?o(e):o}const fO={asc:(e,r)=>e>r,desc:(e,r)=>ee(a,i)}function C8(e,r,...n){let o=typeof e=="function"?e:e[0],i=typeof e=="function"?"asc":e[1],{[i]:a}=fO,l=r===void 0?void 0:C8(r,...n);return(s,c)=>{let d=o(s),u=o(c);return a(d,u)?1:a(u,d)?-1:l?.(s,c)??0}}function N4e(e){if(mO(e))return!0;if(typeof e!="object"||!Array.isArray(e))return!1;let[r,n,...o]=e;return mO(r)&&typeof n=="string"&&n in fO&&o.length===0}const mO=e=>typeof e=="function"&&e.length===1;function P4e(...e){return ao(B4e,e,I4e)}const B4e=(e,r)=>e.filter(r),I4e=e=>(r,n,o)=>e(r,n,o)?{done:!1,hasNext:!0,next:r}:E_;function gO(...e){return ao(O4e,e,L4e)}const O4e=(e,r)=>e.flatMap(r),L4e=e=>(r,n,o)=>{let i=e(r,n,o);return Array.isArray(i)?{done:!1,hasNext:!0,hasMany:!0,next:i}:{done:!1,hasNext:!0,next:i}};function $8(...e){return ao(F4e,e)}const F4e=(e,r)=>{let n=Object.create(null);for(let o=0;oPs(r,...e)}function vO(...e){return M4e(U4e,e)}const U4e=(e,r)=>[...e].sort(r);var bO=Symbol.for("immer-nothing"),xO=Symbol.for("immer-draftable"),Io=Symbol.for("immer-state");function Wa(e,...r){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var wi=Object,Uh=wi.getPrototypeOf,Jb="constructor",ex="prototype",T8="configurable",tx="enumerable",rx="writable",g1="value",nd=e=>!!e&&!!e[Io];function Os(e){return e?kO(e)||ox(e)||!!e[xO]||!!e[Jb]?.[xO]||ix(e)||ax(e):!1}var W4e=wi[ex][Jb].toString(),wO=new WeakMap;function kO(e){if(!e||!A8(e))return!1;const r=Uh(e);if(r===null||r===wi[ex])return!0;const n=wi.hasOwnProperty.call(r,Jb)&&r[Jb];if(n===Object)return!0;if(!Wh(n))return!1;let o=wO.get(n);return o===void 0&&(o=Function.toString.call(n),wO.set(n,o)),o===W4e}function y1(e,r,n=!0){v1(e)===0?(n?Reflect.ownKeys(e):wi.keys(e)).forEach(i=>{r(i,e[i],e)}):e.forEach((o,i)=>r(i,o,e))}function v1(e){const r=e[Io];return r?r.type_:ox(e)?1:ix(e)?2:ax(e)?3:0}var _O=(e,r,n=v1(e))=>n===2?e.has(r):wi[ex].hasOwnProperty.call(e,r),j8=(e,r,n=v1(e))=>n===2?e.get(r):e[r],nx=(e,r,n,o=v1(e))=>{o===2?e.set(r,n):o===3?e.add(n):e[r]=n};function G4e(e,r){return e===r?e!==0||1/e===1/r:e!==e&&r!==r}var ox=Array.isArray,ix=e=>e instanceof Map,ax=e=>e instanceof Set,A8=e=>typeof e=="object",Wh=e=>typeof e=="function",D8=e=>typeof e=="boolean",Ls=e=>e.copy_||e.base_,M8=e=>e.modified_?e.copy_:e.base_;function N8(e,r){if(ix(e))return new Map(e);if(ax(e))return new Set(e);if(ox(e))return Array[ex].slice.call(e);const n=kO(e);if(r===!0||r==="class_only"&&!n){const o=wi.getOwnPropertyDescriptors(e);delete o[Io];let i=Reflect.ownKeys(o);for(let a=0;a1&&wi.defineProperties(e,{set:lx,add:lx,clear:lx,delete:lx}),wi.freeze(e),r&&y1(e,(n,o)=>{P8(o,!0)},!1)),e}function Y4e(){Wa(2)}var lx={[g1]:Y4e};function sx(e){return e===null||!A8(e)?!0:wi.isFrozen(e)}var cx="MapSet",B8="Patches",SO={};function Gh(e){const r=SO[e];return r||Wa(0,e),r}var X4e=e=>!!SO[e],b1,EO=()=>b1,K4e=(e,r)=>({drafts_:[],parent_:e,immer_:r,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:X4e(cx)?Gh(cx):void 0});function CO(e,r){r&&(e.patchPlugin_=Gh(B8),e.patches_=[],e.inversePatches_=[],e.patchListener_=r)}function I8(e){O8(e),e.drafts_.forEach(Z4e),e.drafts_=null}function O8(e){e===b1&&(b1=e.parent_)}var $O=e=>b1=K4e(b1,e);function Z4e(e){const r=e[Io];r.type_===0||r.type_===1?r.revoke_():r.revoked_=!0}function RO(e,r){r.unfinalizedDrafts_=r.drafts_.length;const n=r.drafts_[0];if(e!==void 0&&e!==n){n[Io].modified_&&(I8(r),Wa(4)),Os(e)&&(e=zO(r,e));const{patchPlugin_:i}=r;i&&i.generateReplacementPatches_(n[Io].base_,e,r)}else e=zO(r,n);return Q4e(r,e,!0),I8(r),r.patches_&&r.patchListener_(r.patches_,r.inversePatches_),e!==bO?e:void 0}function zO(e,r){if(sx(r))return r;const n=r[Io];if(!n)return L8(r,e.handledSet_,e);if(!dx(n,e))return r;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:o}=n;if(o)for(;o.length>0;)o.pop()(e);AO(n,e)}return n.copy_}function Q4e(e,r,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&P8(r,n)}function TO(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var dx=(e,r)=>e.scope_===r,J4e=[];function jO(e,r,n,o){const i=Ls(e),a=e.type_;if(o!==void 0&&j8(i,o,a)===r){nx(i,o,n,a);return}if(!e.draftLocations_){const s=e.draftLocations_=new Map;y1(i,(c,d)=>{if(nd(d)){const u=s.get(d)||[];u.push(c),s.set(d,u)}})}const l=e.draftLocations_.get(r)??J4e;for(const s of l)nx(i,s,n,a)}function eke(e,r,n){e.callbacks_.push(function(i){const a=r;if(!a||!dx(a,i))return;i.mapSetPlugin_?.fixSetContents(a);const l=M8(a);jO(e,a.draft_??a,l,n),AO(a,i)})}function AO(e,r){if(e.modified_&&!e.finalized_&&(e.type_===3||(e.assigned_?.size??0)>0)){const{patchPlugin_:o}=r;if(o){const i=o.getPath(e);i&&o.generatePatches_(e,i,r)}TO(e)}}function tke(e,r,n){const{scope_:o}=e;if(nd(n)){const i=n[Io];dx(i,o)&&i.callbacks_.push(function(){ux(e);const l=M8(i);jO(e,n,l,r)})}else Os(n)&&e.callbacks_.push(function(){const a=Ls(e);j8(a,r,e.type_)===n&&o.drafts_.length>1&&(e.assigned_.get(r)??!1)===!0&&e.copy_&&L8(j8(e.copy_,r,e.type_),o.handledSet_,o)})}function L8(e,r,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||nd(e)||r.has(e)||!Os(e)||sx(e)||(r.add(e),y1(e,(o,i)=>{if(nd(i)){const a=i[Io];if(dx(a,n)){const l=M8(a);nx(e,o,l,e.type_),TO(a)}}else Os(i)&&L8(i,r,n)})),e}function rke(e,r){const n=ox(e),o={type_:n?1:0,scope_:r?r.scope_:EO(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:r,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let i=o,a=F8;n&&(i=[o],a=x1);const{revoke:l,proxy:s}=Proxy.revocable(i,a);return o.draft_=s,o.revoke_=l,[s,o]}var F8={get(e,r){if(r===Io)return e;const n=Ls(e);if(!_O(n,r,e.type_))return nke(e,n,r);const o=n[r];if(e.finalized_||!Os(o))return o;if(o===V8(e.base_,r)){ux(e);const i=e.type_===1?+r:r,a=H8(e.scope_,o,e,i);return e.copy_[i]=a}return o},has(e,r){return r in Ls(e)},ownKeys(e){return Reflect.ownKeys(Ls(e))},set(e,r,n){const o=DO(Ls(e),r);if(o?.set)return o.set.call(e.draft_,n),!0;if(!e.modified_){const i=V8(Ls(e),r),a=i?.[Io];if(a&&a.base_===n)return e.copy_[r]=n,e.assigned_.set(r,!1),!0;if(G4e(n,i)&&(n!==void 0||_O(e.base_,r,e.type_)))return!0;ux(e),q8(e)}return e.copy_[r]===n&&(n!==void 0||r in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[r])||(e.copy_[r]=n,e.assigned_.set(r,!0),tke(e,r,n)),!0},deleteProperty(e,r){return ux(e),V8(e.base_,r)!==void 0||r in e.base_?(e.assigned_.set(r,!1),q8(e)):e.assigned_.delete(r),e.copy_&&delete e.copy_[r],!0},getOwnPropertyDescriptor(e,r){const n=Ls(e),o=Reflect.getOwnPropertyDescriptor(n,r);return o&&{[rx]:!0,[T8]:e.type_!==1||r!=="length",[tx]:o[tx],[g1]:n[r]}},defineProperty(){Wa(11)},getPrototypeOf(e){return Uh(e.base_)},setPrototypeOf(){Wa(12)}},x1={};y1(F8,(e,r)=>{x1[e]=function(){const n=arguments;return n[0]=n[0][0],r.apply(this,n)}}),x1.deleteProperty=function(e,r){return x1.set.call(this,e,r,void 0)},x1.set=function(e,r,n){return F8.set.call(this,e[0],r,n,e[0])};function V8(e,r){const n=e[Io];return(n?Ls(n):e)[r]}function nke(e,r,n){const o=DO(r,n);return o?g1 in o?o[g1]:o.get?.call(e.draft_):void 0}function DO(e,r){if(!(r in e))return;let n=Uh(e);for(;n;){const o=Object.getOwnPropertyDescriptor(n,r);if(o)return o;n=Uh(n)}}function q8(e){e.modified_||(e.modified_=!0,e.parent_&&q8(e.parent_))}function ux(e){e.copy_||(e.assigned_=new Map,e.copy_=N8(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var oke=class{constructor(r){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,o,i)=>{if(Wh(n)&&!Wh(o)){const l=o;o=n;const s=this;return function(d=l,...u){return s.produce(d,p=>o.call(this,p,...u))}}Wh(o)||Wa(6),i!==void 0&&!Wh(i)&&Wa(7);let a;if(Os(n)){const l=$O(this),s=H8(l,n,void 0);let c=!0;try{a=o(s),c=!1}finally{c?I8(l):O8(l)}return CO(l,i),RO(a,l)}else if(!n||!A8(n)){if(a=o(n),a===void 0&&(a=n),a===bO&&(a=void 0),this.autoFreeze_&&P8(a,!0),i){const l=[],s=[];Gh(B8).generateReplacementPatches_(n,a,{patches_:l,inversePatches_:s}),i(l,s)}return a}else Wa(1,n)},this.produceWithPatches=(n,o)=>{if(Wh(n))return(s,...c)=>this.produceWithPatches(s,d=>n(d,...c));let i,a;return[this.produce(n,o,(s,c)=>{i=s,a=c}),i,a]},D8(r?.autoFreeze)&&this.setAutoFreeze(r.autoFreeze),D8(r?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(r.useStrictShallowCopy),D8(r?.useStrictIteration)&&this.setUseStrictIteration(r.useStrictIteration)}createDraft(r){Os(r)||Wa(8),nd(r)&&(r=ike(r));const n=$O(this),o=H8(n,r,void 0);return o[Io].isManual_=!0,O8(n),o}finishDraft(r,n){const o=r&&r[Io];(!o||!o.isManual_)&&Wa(9);const{scope_:i}=o;return CO(i,n),RO(void 0,i)}setAutoFreeze(r){this.autoFreeze_=r}setUseStrictShallowCopy(r){this.useStrictShallowCopy_=r}setUseStrictIteration(r){this.useStrictIteration_=r}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(r,n){let o;for(o=n.length-1;o>=0;o--){const a=n[o];if(a.path.length===0&&a.op==="replace"){r=a.value;break}}o>-1&&(n=n.slice(o+1));const i=Gh(B8).applyPatches_;return nd(r)?i(r,n):this.produce(r,a=>i(a,n))}};function H8(e,r,n,o){const[i,a]=ix(r)?Gh(cx).proxyMap_(r,n):ax(r)?Gh(cx).proxySet_(r,n):rke(r,n);return(n?.scope_??EO()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=o,n&&o!==void 0?eke(n,a,o):a.callbacks_.push(function(c){c.mapSetPlugin_?.fixSetContents(a);const{patchPlugin_:d}=c;a.modified_&&d&&d.generatePatches_(a,[],c)}),i}function ike(e){return nd(e)||Wa(10,e),MO(e)}function MO(e){if(!Os(e)||sx(e))return e;const r=e[Io];let n,o=!0;if(r){if(!r.modified_)return r.base_;r.finalized_=!0,n=N8(e,r.scope_.immer_.useStrictShallowCopy_),o=r.scope_.immer_.shouldUseStrictIteration()}else n=N8(e,!0);return y1(n,(i,a)=>{nx(n,i,MO(a))},o),r&&(r.finalized_=!1),n}var ake=new oke,Yh=ake.produce,NO=e=>e;function lke(e){return Ps(e,P4e(r=>!!r.notation),$8(Lu("notation")),R8(z8($8(Lu("shape")),R8(z8($8(Lu("color")),R8(z8(Kb(Lu("kind")),Zb())),f1(),Kb(([r,n])=>({kinds:n,color:r})))),f1(),gO(([r,n])=>n.map(({color:o,kinds:i})=>({shape:r,color:o,kinds:i}))))),f1(),gO(([r,n])=>n.map(({shape:o,color:i,kinds:a})=>({title:r,shape:o,color:i,kinds:a}))),vO(Lu("shape"),Lu("title"),[r=>r.kinds.length,"desc"]))}const wo=(e,r)=>e===r||Xn(e)&&Xn(r)?!1:!yb(e,r),px=5;function ske(e,r){e.color=r.color,e.kind=r.kind,e.navigateTo=r.navigateTo??null,e.links=r.links?[...r.links]:null,e.tags=[...r.tags],Xn(r.style.border)?delete e.style.border:e.style.border=r.style.border,V4e(r.style.opacity)?e.style.opacity=r.style.opacity:delete e.style.opacity,Xn(r.style.multiple)?delete e.style.multiple:e.style.multiple=r.style.multiple}function cke(e,r,n){if(wo(r.icon??"none",e.icon??"none")){const o=Ji(e.icon)&&e.icon!=="none";switch(!0){case(o&&Ji(r.icon)&&r.icon!=="none"):return e.icon=r.icon,!0;case(o&&(Xn(r.icon)||r.icon==="none")):return e.icon="none",!0;case(!o&&Ji(r.icon)&&r.icon!=="none"):return n?(e.icon=r.icon,!0):!1}}return!0}function U8(e,r){return e?"md"in r?(e.md=r.md,delete e.txt,e):("txt"in r&&(e.txt=r.txt,delete e.md),e):r}function dke(e,r,n){let o=!0;return wo(e.title,r.title)&&(n?e.title=r.title:o=!1),wo(e.description,r.description)&&(Xn(r.description)?delete e.description:n?e.description=U8(e.description,r.description):o=!1),wo(e.technology,r.technology)&&(Xn(r.technology)?delete e.technology:n?e.technology=r.technology:o=!1),o}function uke(e,r,n){return e.title=r.title,Xn(r.description)?delete e.description:e.description=U8(e.description,r.description),Xn(r.technology)?delete e.technology:e.technology=r.technology,!0}function PO(e,r){He(e.id===r.id,"applyManualLayout: view ids do not match"),He(e._stage==="layouted","applyManualLayout: expected layouted view"),He(r._stage==="layouted","applyManualLayout: expected layouted snapshot"),He(e._layout!=="manual","applyManualLayout: expected auto-layouted view");const n=new Set;e._type!==r._type&&n.add("type-changed");const o=new Map(e.nodes.map(u=>[u.id,u])),i=new Map(e.edges.map(u=>[u.id,u])),a=pke(r.nodes,o,n),l=hke(r.edges,i,n),s=lke(a),c=Object.assign({...r},{title:e.title??r.title,description:e.description??r.description,tags:e.tags?[...e.tags]:null,links:e.links?[...e.links]:null,[k8]:"manual",...s&&s.length>0?{notation:{nodes:s}}:{},nodes:a,edges:l});C4e(e)&&c._type==="dynamic"&&(c.variant=e.variant);const d=[...n];return Ll(d,1)?c.drifts=d:"drifts"in c&&delete c.drifts,c}function pke(e,r,n){const o=e.map(i=>{const a=r.get(i.id);return a&&r.delete(a.id),Yh(i,l=>{if(!a){l.drifts=["removed"],n.add("nodes-removed");return}ske(l,a);const s=new Set,c=i.children.length>0,d=a.children.length>0;(wo(l.modelRef,a.modelRef)||wo(l.deploymentRef,a.deploymentRef))&&s.add("modelRef-changed"),d&&!c&&s.add("became-compound"),!d&&c&&s.add("became-leaf"),wo(l.parent,a.parent)&&s.add("parent-changed");const u=l.width+px>=a.width&&l.height+px>=a.height;wo(l.shape,a.shape)&&(u?l.shape=a.shape:s.add("shape-changed")),cke(l,a,u&&d===c)||s.add("label-changed"),(c?uke:dke)(l,a,u)||s.add("label-changed"),wo(i.notation,a.notation)&&(l.notation=a.notation??null),c&&d&&D4e(new Set(i.children),new Set(a.children)).size>0&&s.add("children-changed");const f=[...s];Ll(f,1)?(n.add("nodes-drift"),l.drifts=f):delete l.drifts})});return r.size>0&&n.add("nodes-added"),o}function hke(e,r,n){const o=e.map(i=>{let a=r.get(i.id)??Ps(r.values(),Is(l=>l.source===i.source&&l.target===i.target),m1());return a&&r.delete(a.id),Yh(i,l=>{if(!a){l.drifts=["removed"],n.add("edges-removed");return}const s=new Set,c=i.id===a.id;switch(!0){case(c&&i.source==a.source&&i.target==a.target):{wo(l.dir??"forward",a.dir??"forward")&&s.add("direction-changed");break}case(c&&i.source==a.target&&i.target==a.source):{i.source!==i.target&&s.add("direction-changed");break}case c:{i.source!=a.source&&s.add("source-changed"),i.target!=a.target&&s.add("target-changed");break}default:{He(i.id!=a.id,"Unexpected case in edge drift detection, ids should not match"),He(i.source==a.source,"Unexpected case in edge drift detection, sources should match"),He(i.target==a.target,"Unexpected case in edge drift detection, targets should match"),wo(l.dir??"forward",a.dir??"forward")&&s.add("direction-changed");break}}l.color=a.color,l.line=a.line,l.navigateTo=a.navigateTo??null,l.tags=a.tags?[...a.tags]:null,wo(i.notes,a.notes)&&(Xn(i.notes)!==Xn(a.notes)&&s.add("notes-changed"),l.notes=a.notes??i.notes),a.astPath?l.astPath=a.astPath:delete l.astPath;const d=yO(i,["label","description","technology","labelBBox"]),u=yO(a,["label","description","technology","labelBBox"]);if(wo(d,u))switch(!0){case(a.labelBBox&&!i.labelBBox):{s.add("label-added");break}case(i.labelBBox&&!a.labelBBox):{s.add("label-removed");break}case(!!i.labelBBox&&!!a.labelBBox):{a.labelBBox.width*a.labelBBox.height>(i.labelBBox.width+px)*(i.labelBBox.height+px)&&(l.labelBBox.width=Math.round(a.labelBBox.width),l.labelBBox.height=Math.round(a.labelBBox.height)),wo(i.label,a.label)&&(Xn(a.label)!==Xn(i.label)&&s.add("label-changed"),l.label=a.label??i.label),wo(i.description,a.description)&&(Xn(a.description)!==Xn(i.description)&&s.add("label-changed"),a.description&&(l.description=U8(i.description,a.description))),wo(i.technology,a.technology)&&(Xn(a.technology)!==Xn(i.technology)&&s.add("label-changed"),l.technology=a.technology??i.technology??null);break}default:He(!i.labelBBox,"Unexpected case in edge labelBBox drift detection"),He(!a.labelBBox,"Unexpected case in next labelBBox drift detection");break}const p=[...s];Ll(p,1)?(n.add("edges-drift"),l.drifts=p):delete l.drifts})});return r.size>0&&n.add("edges-added"),o}function fke(e,r){const{drifts:n,...o}=PO(e,r);if(n){const i=new Set;n.includes("type-changed")&&i.add("type-changed");const a=new Map(o.nodes.map(u=>[u.id,u])),l=new Map(o.edges.map(u=>[u.id,u])),s=e.nodes.map(u=>{const p=a.get(u.id);return p&&a.delete(p.id),Yh(u,f=>{if(!p){i.add("nodes-added"),f.drifts=["added"];return}p.drifts?(i.add("nodes-drift"),f.drifts=[...p.drifts]):delete f.drifts})});a.size>0&&i.add("nodes-removed");const c=e.edges.map(u=>{const p=l.get(u.id)??Ps(l.values(),Is(f=>f.source===u.source&&f.target===u.target),m1());return p&&l.delete(p.id),Yh(u,f=>{if(!p){i.add("edges-added"),f.drifts=["added"];return}p.drifts?(i.add("edges-drift"),f.drifts=[...p.drifts]):delete f.drifts})});l.size>0&&i.add("edges-removed");const d=[...i];return Yh(e,u=>{Ll(d,1)?u.drifts=d:delete u.drifts,u.nodes=NO(s),u.edges=NO(c),u[k8]="auto"})}return Yh(e,i=>{delete i.drifts,i[k8]="auto"})}function Fs(e){return e.summary??e.description}function Xh(e){return e.description??e.summary}const w1="@group";function mke(e){return e.kind===w1}function BO(e,r){return He(typeof e=="string"&&e!=""),"@"+e+"."+r}function gke(e){return e.startsWith("@")}function yke(e){if(!e.startsWith("@"))return[null,e];const r=e.indexOf(".");if(r<2)throw new Error("Invalid global FQN");const n=e.slice(1,r),o=e.slice(r+1);return[n,o]}function k1(e){return e.startsWith("step-")}function IO(e){if(!k1(e))throw new Error(`Invalid step edge id: ${e}`);return parseFloat(e.slice(5))}function vke(...e){return ao(bke,e)}function bke(e,r){let n={...e};for(let[o,i]of Object.entries(n))r(i,o,e)&&delete n[o];return n}var W8={},OO;function G8(){return OO||(OO=1,(function(e){var r=Math.pow(2,8)-1,n=Math.pow(2,16)-1,o=Math.pow(2,32)-1,i=Math.pow(2,7)-1,a=Math.pow(2,15)-1,l=Math.pow(2,31)-1;e.getPointerArray=function(c){var d=c-1;if(d<=r)return Uint8Array;if(d<=n)return Uint16Array;if(d<=o)return Uint32Array;throw new Error("mnemonist: Pointer Array of size > 4294967295 is not supported.")},e.getSignedPointerArray=function(c){var d=c-1;return d<=i?Int8Array:d<=a?Int16Array:d<=l?Int32Array:Float64Array},e.getNumberType=function(c){return c===(c|0)?Math.sign(c)===-1?c<=127&&c>=-128?Int8Array:c<=32767&&c>=-32768?Int16Array:Int32Array:c<=255?Uint8Array:c<=65535?Uint16Array:Uint32Array:Float64Array};var s={Uint8Array:1,Int8Array:2,Uint16Array:3,Int16Array:4,Uint32Array:5,Int32Array:6,Float32Array:7,Float64Array:8};e.getMinimalRepresentation=function(c,d){var u=null,p=0,f,g,v,w,x;for(w=0,x=c.length;wp&&(p=f,u=g);return u},e.isTypedArray=function(c){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView(c)},e.concat=function(){var c=0,d,u,p;for(d=0,p=arguments.length;d"u"))return this.splayOnTop(l),this.V[l]},i.prototype.peek=function(a){var l=this.items[a];if(!(typeof l>"u"))return this.V[l]},i.prototype.forEach=function(a,l){l=arguments.length>1?l:this;for(var s=0,c=this.size,d=this.head,u=this.K,p=this.V,f=this.forward;s=l)return{done:!0};var u=c[s];return a++,a=l)return{done:!0};var u=c[s];return a++,a=l)return{done:!0};var p=c[s],f=d[s];return a++,a"u"))return this.splayOnTop(l),this.V[l]},i.prototype.peek=function(a){var l=this.items.get(a);if(!(typeof l>"u"))return this.V[l]},i.prototype.splayOnTop=e.prototype.splayOnTop,i.prototype.forEach=e.prototype.forEach,i.prototype.keys=e.prototype.keys,i.prototype.values=e.prototype.values,i.prototype.entries=e.prototype.entries,typeof Symbol<"u"&&(i.prototype[Symbol.iterator]=i.prototype.entries),i.prototype.inspect=e.prototype.inspect,i.from=function(a,l,s,c){if(arguments.length<2){if(c=o.guessLength(a),typeof c!="number")throw new Error("mnemonist/lru-cache.from: could not guess iterable length. Please provide desired capacity as last argument.")}else arguments.length===2&&(c=l,l=null,s=null);var d=new i(l,s,c);return r(a,function(u,p){d.set(p,u)}),d},X8=i,X8}var kke=wke();const HO=Qg(kke);function _1(e){return vke(e,r=>r===void 0)}const _ke=Symbol.for("text"),Ske=Symbol.for("html"),Vs="",UO=new HO(500),WO=new HO(500);class ur{static getOrCreateFromText(r){if(r.trim()===Vs)return ur.EMPTY;let n=WO.get(r);return n||(n=new ur({txt:r}),WO.set(r,n),n)}static getOrCreateFromMarkdown(r){if(r.trim()===Vs)return ur.EMPTY;let n=UO.get(r);return n||(n=new ur({md:r}),UO.set(r,n),n)}static memoize(r,n,o){return ar(r,n,()=>ur.from(o))}static from(r){return r==null||r===ur.EMPTY?ur.EMPTY:r instanceof ur?r:typeof r=="string"?this.getOrCreateFromText(r):"isEmpty"in r&&r.isEmpty?ur.EMPTY:"md"in r?this.getOrCreateFromMarkdown(r.md):this.getOrCreateFromText(r.txt)}static EMPTY=new class extends ur{isEmpty=!0;nonEmpty=!1;isMarkdown=!1;$source=null;constructor(){super({txt:Vs})}get text(){return null}get md(){return null}get html(){return null}};$source;isEmpty;nonEmpty;isMarkdown;constructor(r){this.isMarkdown=!1,typeof r=="string"?(this.$source={txt:r},this.isEmpty=r.trim()===Vs):(this.$source=r,this.isEmpty=!0,"md"in r?(this.isEmpty=r.md===Vs,this.isMarkdown=!0):this.isEmpty=r.txt===Vs),this.nonEmpty=!this.isEmpty}get text(){if(this.isEmpty||this.$source===null)return Vs;const r=this.$source;return"txt"in r?r.txt:ar(this,_ke,()=>c4e(r.md))}get md(){if(this.isEmpty||this.$source===null)return Vs;const r=this.$source;if("md"in r)return r.md;if("txt"in r)return r.txt;Qo(r)}get html(){if(this.isEmpty||this.$source===null)return Vs;const r=this.$source;return"txt"in r?r.txt:ar(this,Ske,()=>s4e(r.md))}equals(r){return this===r?!0:r instanceof ur?this.isEmpty&&r.isEmpty?!0:this.isEmpty!==r.isEmpty||this.isMarkdown!==r.isMarkdown?!1:this.isMarkdown?this.$source?.md===r.$source?.md:this.$source?.txt===r.$source?.txt:!1}}var S1;(e=>{function r(c){return"model"in c&&!("project"in c)}e.isElementRef=r;function n(c){return"project"in c&&"model"in c}e.isImportRef=n;function o(c){if(Qc(c))throw new Error(`Expected FqnRef, got: "${c}"`);if(n(c))return BO(c.project,c.model);if(r(c))return c.model;throw new Error("Expected FqnRef.ModelRef or FqnRef.ImportRef")}e.flatten=o;function i(c){return r(c)||n(c)}e.isModelRef=i;function a(c){return"deployment"in c&&"element"in c}e.isInsideInstanceRef=a;function l(c){return"deployment"in c&&!("element"in c)}e.isDeploymentElementRef=l;function s(c){return l(c)||a(c)}e.isDeploymentRef=s})(S1||(S1={}));var ko;(e=>{function r({x:u,y:p,width:f,height:g}){return{x:u+f/2,y:p+g/2}}e.center=r;function n({x:u,y:p,width:f,height:g}){return[{x:u,y:p},{x:u+f,y:p},{x:u+f,y:p+g},{x:u,y:p+g}]}e.toPoints=n;function o(u){const{x1:p,y1:f,x2:g,y2:v}=K8.fromPoints(u);return{x:p,y:f,width:g-p,height:v-f}}e.fromPoints=o;function i(...u){if(He(Ll(u,1),"No boxes provided"),u.length===1)return u[0];let p=u[0].x,f=u[0].y,g=u[0].x+u[0].width,v=u[0].y+u[0].height;for(let w=1;w=p.x+p.width&&u.y+u.height>=p.y+p.height}e.includes=d})(ko||(ko={}));var K8;(e=>{function r({x1:l,y1:s,x2:c,y2:d}){return{x:(l+c)/2,y:(s+d)/2}}e.center=r;function n(l){He(l.length>0,"At least one point is required");let s=1/0,c=1/0,d=-1/0,u=-1/0;for(const[p,f]of l)s=Math.min(s,p),c=Math.min(c,f),d=Math.max(d,p),u=Math.max(u,f);return{x1:s,y1:c,x2:d,y2:u}}e.fromPoints=n;function o(...l){He(l.length>0,"No boxes provided");let s=1/0,c=1/0,d=-1/0,u=-1/0;for(const p of l)s=Math.min(s,p.x1),c=Math.min(c,p.y1),d=Math.max(d,p.x2),u=Math.max(u,p.y2);return{x1:s,y1:c,x2:d,y2:u}}e.merge=o;function i(l){return{x:l.x1,y:l.y1,width:l.x2-l.x1,height:l.y2-l.y1}}e.toBBox=i;function a(l,s){return l===s?!0:l.x1<=s.x1&&l.y1<=s.y1&&l.x2>=s.x2&&l.y2>=s.y2}e.includes=a})(K8||(K8={}));class ki{constructor(r,n){this.x=r,this.y=n}static create(...r){return r.length===2?new ki(r[0],r[1]):new ki(r[0].x,r[0].y)}static add(r,n){return{x:r.x+n.x,y:r.y+n.y}}static subtract(r,n){return{x:r.x-n.x,y:r.y-n.y}}static multiply(r,n){return{x:r.x*n,y:r.y*n}}static divide(r,n){return{x:r.x/n,y:r.y/n}}static dot(r,n){return r.x*n.x+r.y*n.y}add(r){return new ki(this.x+r.x,this.y+r.y)}subtract(r){return new ki(this.x-r.x,this.y-r.y)}multiply(r){return new ki(this.x*r,this.y*r)}divide(r){return new ki(this.x/r,this.y/r)}dot(r){return this.x*r.x+this.y*r.y}cross(r){return this.x*r.y-this.y*r.x}length(){return this.x===0&&this.y===0?0:Math.sqrt(this.x**2+this.y**2)}normalize(){const r=this.length();return r===0?new ki(0,0):new ki(this.x/r,this.y/r)}round(){return new ki(Math.round(this.x),Math.round(this.y))}toObject(){return{x:this.x,y:this.y}}}function Qr(...e){return e.length===1&&e[0]instanceof ki?e[0]:e.length===2?new ki(e[0],e[1]):new ki(e[0].x,e[0].y)}function Z8(e){return k1(e)&&e.includes(".")?e.slice(0,e.indexOf(".")+1):null}function GO(e){const r=typeof e=="string"?e:e.color;return r.startsWith("#")||r.startsWith("rgb")}function Q8(...e){return ao(Eke,e)}function Eke(e,r){let n=[...e];return n.sort(r),n}const Cke=["tomato","grass","blue","ruby","orange","indigo","pink","teal","purple","amber","crimson","red","lime","yellow","violet"];function $ke(e,r,n){let o=e.get(r);return o||(o=n(r),e.set(r,o)),o}function Rke(e){let r=5381;const n=e.length;He(n>0,"stringHash: empty string");for(let o=0;o>>0).toString(36)}function E1(e,r){const n=r??e;He(Qb(n));function o(i){for(const a of i)if(n(a))return a}return r?o(e):o}function zke(e,r){const n=e;He(Qb(n));function*o(i){for(const a of i)yield n(a)}return o}function C1(e){return e?Array.from(e):r=>Array.from(r)}function Tke(e){return e?new Set(e):r=>new Set(r)}function YO(e,r){const n=r??e;He(Qb(n));function o(i){for(const a of i)if(n(a))return!0;return!1}return r?o(e):o}function jke(e,r){const n=e;He(n>=0,"Count must be a non-negative number");function*o(i){let a=0;for(const l of i){if(a>=n)break;yield l,a++}}return i=>o(i)}function Ake(e,r){let n=Math.ceil(e),o=Math.floor(r);if(o{setTimeout(()=>{n(Dke)},r??100)})}function hx(e){const r=Jc([...e]),n=new Set(r),o=new Map(r.map(l=>[l._literalId,l])),i=new Ln(()=>null),a=r.reduce((l,s,c,d)=>(l.set(s,d.slice(c+1).filter(tB(s)).map(u=>(n.delete(u),u)).reduce((u,p)=>(u.some(Yn(p))||(u.push(p),i.set(p,s)),u),[])),l),new Ln(()=>[]));return{sorted:r,byId:l=>mt(o.get(l),`Element not found by id: ${l}`),root:n,parent:l=>i.get(l),children:l=>a.get(l),flatten:()=>new Set([...n,...r.reduce((l,s)=>{const c=a.get(s);return c.length===0?(l.push(s),l):(c.length>1&&l.push(...c),l)},[])])}}const J8=(e,r)=>e.size>2&&r.size!==e.size?new Set(Jc([...hx(e).flatten(),...r])):e.size>1?new Set(Jc([...e])):e;function KO(e,r,n){const o=c=>r.has(c);let i=new Set([e]);const a={incomers:new Set,subjects:new Set([e]),outgoers:new Set};let l=new Set(n.incoming.flatMap(c=>{if(a.subjects.add(c.target),a.incomers.add(c.source),i.add(c.target),c.target!==e){let p=c.target.parent;for(;p&&p!==e;)i.add(p),p=p.parent}let d=c.source;const u=[];for(;u.push(d),!(o(d)||!d.parent);)d=d.parent;return u})),s=new Set(n.outgoing.flatMap(c=>{if(a.subjects.add(c.source),a.outgoers.add(c.target),i.add(c.source),c.source!==e){let p=c.source.parent;for(;p&&p!==e;)i.add(p),p=p.parent}let d=c.target;const u=[];for(;u.push(d),!(o(d)||!d.parent);)d=d.parent;return u}));return{incomers:J8(l,a.incomers),incoming:new Set(n.incoming),subjects:J8(i,a.subjects),outgoing:new Set(n.outgoing),outgoers:J8(s,a.outgoers)}}function ZO(e,r,n,o="global"){const i=n?r.findView(n):null;if(o==="view")return He(i,'Scope view id is required when scope is "view"'),Mke(e,i,r);const a=r.element(e),l=Tke(a.ascendingSiblings());return KO(a,l,{incoming:[...a.incoming()],outgoing:[...a.outgoing()]})}function Mke(e,r,n){const o=n.element(e);let i={incoming:C1(Is(o.incoming(),s=>r.includesRelation(s.id))),outgoing:C1(Is(o.outgoing(),s=>r.includesRelation(s.id)))};const a=tB(o),l=new Set([...o.ascendingSiblings(),...Ps(r.elements(),zke(s=>s.element),Is(s=>s!==o&&a(s)))]);return KO(o,l,i)}var QO;(e=>{e.isInside=r=>n=>Yn(r,n.source.id)&&Yn(r,n.target.id),e.isDirectedBetween=(r,n)=>o=>(o.source.id===r||Yn(r,o.source.id))&&(o.target.id===n||Yn(n,o.target.id)),e.isAnyBetween=(r,n)=>{const o=(0,e.isDirectedBetween)(r,n),i=(0,e.isDirectedBetween)(n,r);return a=>o(a)||i(a)},e.isIncoming=r=>n=>(n.target.id===r||Yn(r,n.target.id))&&!Yn(r,n.source.id),e.isOutgoing=r=>n=>(n.source.id===r||Yn(r,n.source.id))&&!Yn(r,n.target.id),e.isAnyInOut=r=>{const n=(0,e.isIncoming)(r),o=(0,e.isOutgoing)(r);return i=>n(i)||o(i)}})(QO||(QO={}));const Nke=Symbol.for("nodejs.util.inspect.custom");function $1(e){return e===""||e===void 0?!0:Array.isArray(e)?e.length===0:Object.keys(e).length===0}function e7(...e){return ao(Pke,e)}function Pke(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||!e||typeof r!="object"||!r)return!1;if(e instanceof Map&&r instanceof Map)return Bke(e,r);if(e instanceof Set&&r instanceof Set)return Ike(e,r);let n=Object.keys(e);if(n.length!==Object.keys(r).length)return!1;for(let o of n){if(!Object.hasOwn(r,o))return!1;let{[o]:i}=e,{[o]:a}=r;if(i!==a||!Object.is(i,a))return!1}return!0}function Bke(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e){let i=r.get(n);if(o!==i||!Object.is(o,i))return!1}return!0}function Ike(e,r){if(e.size!==r.size)return!1;for(let n of e)if(!r.has(n))return!1;return!0}class JO{Aux;get style(){return ar(this,"style",()=>_1({shape:this.$model.$styles.defaults.shape,color:this.$model.$styles.defaults.color,border:this.$model.$styles.defaults.border,opacity:this.$model.$styles.defaults.opacity,size:this.$model.$styles.defaults.size,padding:this.$model.$styles.defaults.padding,textSize:this.$model.$styles.defaults.text,...this.$node.style}))}get name(){return Jg(this.id)}get shape(){return this.style.shape}get color(){return this.style.color}get icon(){return this.style.icon??null}get summary(){return ur.memoize(this,"summary",Fs(this.$node))}get description(){return ur.memoize(this,"description",Xh(this.$node))}get technology(){return this.$node.technology??null}get links(){return this.$node.links??[]}ancestors(){return this.$model.ancestors(this)}commonAncestor(r){const n=t1(this.id,r.id);return n?this.$model.node(n):null}siblings(){return this.$model.siblings(this)}isSibling(r){return this.parent===r.parent}*ascendingSiblings(){yield*this.siblings();for(const r of this.ancestors())yield*r.siblings()}*descendingSiblings(){for(const r of[...this.ancestors()].reverse())yield*r.siblings();yield*this.siblings()}incoming(r="all"){return this.$model.incoming(this,r)}outgoing(r="all"){return this.$model.outgoing(this,r)}*incomers(r="all"){const n=new Set;for(const o of this.incoming(r))n.has(o.source.id)||(n.add(o.source.id),yield o.source)}*outgoers(r="all"){const n=new Set;for(const o of this.outgoing(r))n.has(o.target.id)||(n.add(o.target.id),yield o.target)}*views(){for(const r of this.$model.views())r._type==="deployment"&&r.includesDeployment(this.id)&&(yield r)}isDeploymentNode(){return!1}isInstance(){return!1}get allOutgoing(){return ar(this,Symbol.for("allOutgoing"),()=>od.from(new Set(this.outgoingModelRelationships()),new Set(this.outgoing())))}get allIncoming(){return ar(this,Symbol.for("allIncoming"),()=>od.from(new Set(this.incomingModelRelationships()),new Set(this.incoming())))}hasMetadata(){return!!this.$node.metadata&&!$1(this.$node.metadata)}getMetadata(r){return r?this.$node.metadata?.[r]:this.$node.metadata??{}}isTagged(r){return this.tags.includes(r)}}class eL extends JO{constructor(r,n){super(),this.$model=r,this.$node=n,this.id=n.id,this._literalId=n.id,this.title=n.title,this.hierarchyLevel=Tb(n.id)}id;_literalId;title;hierarchyLevel;get parent(){return this.$model.parent(this)}get kind(){return this.$node.kind}get tags(){return ar(this,Symbol.for("tags"),()=>Zb([...this.$node.tags??[],...this.$model.$model.specification.deployments[this.kind]?.tags??[]]))}children(){return this.$model.children(this)}descendants(r="desc"){return this.$model.descendants(this,r)}isDeploymentNode(){return!0}*instances(){for(const r of this.descendants("desc"))r.isInstance()&&(yield r)}onlyOneInstance(){const r=this.children();if(r.size!==1)return null;const n=m1(r);return n?n.isInstance()?n:n.onlyOneInstance():null}_relationshipsFromInstances=null;relationshipsFromInstances(){if(this._relationshipsFromInstances)return this._relationshipsFromInstances;const{outgoing:r,incoming:n}=this._relationshipsFromInstances={outgoing:new Set,incoming:new Set};for(const o of this.instances()){for(const i of o.element.outgoing())r.add(i);for(const i of o.element.incoming())n.add(i)}return this._relationshipsFromInstances}outgoingModelRelationships(){return this.relationshipsFromInstances().outgoing.values()}incomingModelRelationships(){return this.relationshipsFromInstances().incoming.values()}internalModelRelationships(){const{outgoing:r,incoming:n}=this.relationshipsFromInstances();return Hh(n,r)}}class tL extends JO{constructor(r,n,o){super(),this.$model=r,this.$instance=n,this.element=o,this.id=n.id,this._literalId=n.id,this.title=n.title??o.title,this.hierarchyLevel=Tb(n.id)}id;_literalId;title;hierarchyLevel;get $node(){return this.$instance}get parent(){return mt(this.$model.parent(this),`Parent of ${this.id} not found`)}get style(){return ar(this,"style",()=>_1({shape:this.$model.$styles.defaults.shape,color:this.$model.$styles.defaults.color,border:this.$model.$styles.defaults.border,opacity:this.$model.$styles.defaults.opacity,size:this.$model.$styles.defaults.size,padding:this.$model.$styles.defaults.padding,textSize:this.$model.$styles.defaults.text,...this.element.$element.style,...this.$instance.style}))}get tags(){return ar(this,Symbol.for("tags"),()=>Zb([...this.$instance.tags??[],...this.element.tags]))}get kind(){return this.element.kind}get summary(){return ur.memoize(this,"summary",Fs(this.$instance)??Fs(this.element.$element))}get description(){return ur.memoize(this,"description",Xh(this.$instance)??Xh(this.element.$element))}get technology(){return this.$instance.technology??this.element.technology??null}get links(){return this.$instance.links??this.element.links}isInstance(){return!0}outgoingModelRelationships(){return this.element.outgoing()}incomingModelRelationships(){return this.element.incoming()}*views(){for(const r of this.$model.views())if(r._type==="deployment"){if(r.includesDeployment(this.id)){yield r;continue}r.includesDeployment(this.parent.id)&&this.parent.onlyOneInstance()&&(yield r)}}}class Oke{constructor(r,n){this.instance=r,this.element=n}get id(){return this.instance.id}get _literalId(){return this.instance.id}get style(){return ar(this,"style ",()=>({shape:this.element.shape,color:this.element.color,...this.element.$element.style}))}get shape(){return this.element.shape}get color(){return this.element.color}get title(){return this.element.title}get summary(){return this.element.summary}get description(){return this.element.description}get technology(){return this.element.technology}isDeploymentNode(){return!1}isInstance(){return!1}}class Lke{constructor(r,n){this.$model=r,this.$relationship=n,this.source=r.deploymentRef(n.source),this.target=r.deploymentRef(n.target);const o=t1(this.source.id,this.target.id);this.boundary=o?this.$model.node(o):null}boundary;source;target;get id(){return this.$relationship.id}get expression(){return`${this.source.id} -> ${this.target.id}`}get title(){return Ji(this.$relationship.title)?this.$relationship.title:null}get technology(){return this.$relationship.technology??null}get hasSummary(){return!!this.$relationship.summary&&!!this.$relationship.description&&!e7(this.$relationship.summary,this.$relationship.description)}get summary(){return ur.memoize(this,"summary",Fs(this.$relationship))}get description(){return ur.memoize(this,"description",Xh(this.$relationship))}get tags(){return this.$relationship.tags??[]}get kind(){return this.$relationship.kind??null}get navigateTo(){return this.$relationship.navigateTo?this.$model.$model.view(this.$relationship.navigateTo):null}get links(){return this.$relationship.links??[]}get color(){return this.$relationship.color??this.$model.$styles.defaults.relationship.color}get line(){return this.$relationship.line??this.$model.$styles.defaults.relationship.line}get head(){return this.$relationship.head??this.$model.$styles.defaults.relationship.arrow}get tail(){return this.$relationship.tail}*views(){for(const r of this.$model.views())r.includesRelation(this.id)&&(yield r)}isDeploymentRelation(){return!0}isModelRelation(){return!1}hasMetadata(){return!!this.$relationship.metadata&&!$1(this.$relationship.metadata)}getMetadata(r){return r?this.$relationship.metadata?.[r]:this.$relationship.metadata??{}}isTagged(r){return this.tags.includes(r)}}class od{constructor(r=new Set,n=new Set){this.model=r,this.deployment=n}static empty(){return new od}static from(r,n){return new od(new Set(r),new Set(n))}get isEmpty(){return this.model.size===0&&this.deployment.size===0}get nonEmpty(){return this.model.size>0||this.deployment.size>0}get size(){return this.model.size+this.deployment.size}intersect(r){return od.from(Hh(this.model,r.model),Hh(this.deployment,r.deployment))}difference(r){return od.from(E8(this.model,r.model),E8(this.deployment,r.deployment))}union(r){return od.from(S8(this.model,r.model),S8(this.deployment,r.deployment))}}function rL(e,r){return n=>e.source===n.source&&e.target===n.target}function t7(e,r,n="directed"){if(e===r)return[];if(eB(e,r))return[];const o=Hh(e.allOutgoing,r.allIncoming),i=o.size>0?new ea(e,r,o):null;if(n==="directed")return i?[i]:[];const a=Hh(e.allIncoming,r.allOutgoing),l=a.size>0?new ea(r,e,a):null;return i&&l?[i,l]:i?[i]:l?[l]:[]}function nL(e,r,n="both"){if(e.allIncoming.size===0&&e.allOutgoing.size===0)return[];const o=[],i=[];for(const a of r)if(e!==a)for(const l of t7(e,a,n))l.source===e?o.push(l):i.push(l);return[...o,...i]}function Fke(e){return[...e].reduce((r,n,o,i)=>(o===i.length-1||r.push(...nL(n,i.slice(o+1),"both")),r),[])}const Vke={__proto__:null,findConnection:t7,findConnectionsBetween:nL,findConnectionsWithin:Fke};class ea{constructor(r,n,o=new Set){this.source=r,this.target=n,this.relations=o,this.id=Rke(`model:${r.id}:${n.id}`)}id;_boundary;get boundary(){return this._boundary??=this.source.commonAncestor(this.target)}get expression(){return`${this.source.id} -> ${this.target.id}`}get isDirect(){return this.nonEmpty()&&!this.isImplicit}get isImplicit(){return this.nonEmpty()&&YO(this.relations,sO(rL(this)))}get directRelations(){return new Set(Is(this.relations,rL(this)))}nonEmpty(){return this.relations.size>0}mergeWith(r){return He(this.source.id===r.source.id,"Cannot merge connections with different sources"),He(this.target.id===r.target.id,"Cannot merge connections with different targets"),new ea(this.source,this.target,S8(this.relations,r.relations))}difference(r){return new ea(this.source,this.target,E8(this.relations,r.relations))}intersect(r){return He(r instanceof ea,"Cannot intersect connection with different type"),new ea(this.source,this.target,Hh(this.relations,r.relations))}equals(r){He(r instanceof ea,"Cannot merge connection with different type");const n=r;return this.id===n.id&&this.source.id===n.source.id&&this.target.id===n.target.id&&A4e(this.relations,n.relations)}update(r){return new ea(this.source,this.target,r)}[Nke](r,n,o){const i=this.toString();return Object.defineProperty(i,"constructor",{value:ea,enumerable:!1}),i}toString(){return[this.expression,this.relations.size?" relations:":" relations: [ ]",...[...this.relations].map(r=>" "+r.expression)].join(` -`)}reversed(r=!1){if(!r)return new ea(this.target,this.source);const[n]=t7(this.target,this.source,"directed");return n??new ea(this.target,this.source,new Set)}}function qke(e){if(e==null||e==="")return!0;if(typeof e!="object")return!1;if("length"in e&&typeof e.length=="number")return e.length===0;if("size"in e&&typeof e.size=="number")return e.size===0;for(let r in e)return!1;return Object.getOwnPropertySymbols(e).length===0}function Hke(...e){return ao(Uke,e)}const Uke=e=>e.at(-1);function oL(e,r,n){return typeof r=="number"||r===void 0?o=>o.split(e,r):e.split(r,n)}function fx(...e){return ao(Object.values,e)}class mx{constructor(r,n){this.$model=r,this.$element=n,this.id=this.$element.id,this._literalId=this.$element.id;const[o,i]=yke(this.id);o?(this.imported={from:o,fqn:i},this.hierarchyLevel=Tb(i)):(this.imported=null,this.hierarchyLevel=Tb(this.id))}Aux;id;_literalId;hierarchyLevel;imported;get name(){return Jg(this.id)}get parent(){return this.$model.parent(this)}get kind(){return this.$element.kind}get shape(){return this.style.shape}get color(){return this.style.color}get icon(){return this.style.icon??null}get tags(){return ar(this,Symbol.for("tags"),()=>Zb([...this.$element.tags??[],...this.$model.specification.elements[this.$element.kind]?.tags??[]]))}get title(){return this.$element.title}get hasSummary(){return!!this.$element.summary&&!!this.$element.description&&!e7(this.$element.summary,this.$element.description)}get summary(){return ur.memoize(this,"summary",Fs(this.$element))}get description(){return ur.memoize(this,"description",Xh(this.$element))}get technology(){return this.$element.technology??null}get links(){return this.$element.links??[]}get defaultView(){return ar(this,Symbol.for("defaultView"),()=>m1(this.scopedViews())??null)}get isRoot(){return this.parent===null}get style(){return ar(this,"style",()=>_1({shape:this.$model.$styles.defaults.shape,color:this.$model.$styles.defaults.color,border:this.$model.$styles.defaults.border,opacity:this.$model.$styles.defaults.opacity,size:this.$model.$styles.defaults.size,padding:this.$model.$styles.defaults.padding,textSize:this.$model.$styles.defaults.text,...this.$element.style}))}isAncestorOf(r){return Yn(this,r)}isDescendantOf(r){return Yn(r,this)}ancestors(){return this.$model.ancestors(this)}commonAncestor(r){const n=t1(this.id,r.id);return n?this.$model.element(n):null}children(){return this.$model.children(this)}descendants(r){return r?rB([...this.$model.descendants(this)],r)[Symbol.iterator]():this.$model.descendants(this)}siblings(){return this.$model.siblings(this)}*ascendingSiblings(){yield*this.siblings();for(const r of this.ancestors())yield*r.siblings()}*descendingSiblings(){for(const r of[...this.ancestors()].reverse())yield*r.siblings();yield*this.siblings()}incoming(r="all"){return this.$model.incoming(this,r)}*incomers(r="all"){const n=new Set;for(const o of this.incoming(r))n.has(o.source.id)||(n.add(o.source.id),yield o.source)}outgoing(r="all"){return this.$model.outgoing(this,r)}*outgoers(r="all"){const n=new Set;for(const o of this.outgoing(r))n.has(o.target.id)||(n.add(o.target.id),yield o.target)}get allOutgoing(){return ar(this,Symbol.for("allOutgoing"),()=>new Set(this.outgoing()))}get allIncoming(){return ar(this,Symbol.for("allIncoming"),()=>new Set(this.incoming()))}views(){return ar(this,Symbol.for("views"),()=>{const r=new Set;for(const n of this.$model.views())n.includesElement(this.id)&&r.add(n);return r})}scopedViews(){return ar(this,Symbol.for("scopedViews"),()=>{const r=new Set;for(const n of this.$model.views())n.isScopedElementView()&&n.viewOf.id===this.id&&r.add(n);return r})}isDeployed(){return Ji(m1(this.deployments()))}deployments(){return this.$model.deployment.instancesOf(this)}hasMetadata(){return!!this.$element.metadata&&!$1(this.$element.metadata)}getMetadata(r){return r?this.$element.metadata?.[r]:this.$element.metadata??{}}isTagged(r){return this.tags.includes(r)}}const yr=e=>typeof e=="string"?e:e.id,_i="/",r7=e=>{if(He(!e.includes(` -`),"View title cannot contain newlines"),e.includes(_i)){const r=e.split(_i).map(n=>n.trim()).filter(n=>n.length>0);return Ll(r,1)?r:[""]}return[e.trim()]},gx=e=>r7(e).join(_i),Wke=e=>{const r=r7(e);return Ll(r,2)?r.slice(0,-1).join(_i):null},n7=e=>e.includes(_i)?r7(e).pop()??e:e.trim();class Gke{constructor(r){this.$model=r;const n=this.$deployments=r.$data.deployments,o=fx(n.elements);for(const i of Jc(o)){const a=this.addElement(i);for(const l of a.tags)this.#c.get(l).add(a);a.isInstance()&&this.#r.get(a.element.id).add(a)}for(const i of fx(n.relations)){const a=this.addRelation(i);for(const l of a.tags)this.#c.get(l).add(a)}}#e=new Map;#a=new Map;#t=new Ln(()=>new Set);#r=new Ln(()=>new Set);#l=new Set;#n=new Map;#s=new Ln(()=>new Set);#i=new Ln(()=>new Set);#o=new Ln(()=>new Set);#c=new Ln(()=>new Set);#d=new Map;$deployments;get $styles(){return this.$model.$styles}element(r){if(r instanceof eL||r instanceof tL)return r;const n=yr(r);return mt(this.#e.get(n),`Element ${n} not found`)}findElement(r){return this.#e.get(r)??null}node(r){const n=this.element(r);return He(n.isDeploymentNode(),`Element ${n.id} is not a deployment node`),n}findNode(r){const n=this.findElement(r);return n?(He(n.isDeploymentNode(),`Element ${n?.id} is not a deployment node`),n):null}instance(r){const n=this.element(r);return He(n.isInstance(),`Element ${n.id} is not a deployed instance`),n}findInstance(r){const n=this.findElement(r);return n?(He(n.isInstance(),`Element ${n?.id} is not a deployed instance`),n):null}roots(){return this.#l.values()}elements(){return this.#e.values()}*nodes(){for(const r of this.#e.values())r.isDeploymentNode()&&(yield r)}*nodesOfKind(r){for(const n of this.#e.values())n.isDeploymentNode()&&n.kind===r&&(yield n)}*instances(){for(const r of this.#e.values())r.isInstance()&&(yield r)}*instancesOf(r){const n=yr(r),o=this.#r.get(n);o&&(yield*o)}deploymentRef(r){if(S1.isInsideInstanceRef(r)){const{deployment:n,element:o}=r;return $ke(this.#d,`${n}@${o}`,()=>new Oke(this.instance(n),this.$model.element(o)))}return this.element(r.deployment)}relationships(){return this.#n.values()}relationship(r){const n=yr(r);return mt(this.#n.get(n),`DeploymentRelationModel ${n} not found`)}findRelationship(r){return this.#n.get(r)??null}*views(){for(const r of this.$model.views())r.isDeploymentView()&&(yield r)}parent(r){const n=yr(r);return this.#a.get(n)||null}children(r){const n=yr(r);return this.#t.get(n)}*siblings(r){const n=yr(r),o=this.parent(r)?.children()??this.roots();for(const i of o)i.id!==n&&(yield i)}*ancestors(r){let n=yr(r),o;for(;o=this.#a.get(n);)yield o,n=o.id}*descendants(r,n="desc"){for(const o of this.children(r))n==="asc"?(yield o,yield*this.descendants(o.id)):(yield*this.descendants(o.id),yield o)}*incoming(r,n="all"){const o=yr(r);for(const i of this.#s.get(o))switch(!0){case n==="all":case(n==="direct"&&i.target.id===o):case(n==="to-descendants"&&i.target.id!==o):yield i;break}}*outgoing(r,n="all"){const o=yr(r);for(const i of this.#i.get(o))switch(!0){case n==="all":case(n==="direct"&&i.source.id===o):case(n==="from-descendants"&&i.source.id!==o):yield i;break}}addElement(r){if(this.#e.has(r.id))throw new Error(`Element ${r.id} already exists`);const n=v4e(r)?new eL(this,Object.freeze(r)):new tL(this,Object.freeze(r),this.$model.element(r.element));this.#e.set(n.id,n);const o=zb(n.id);return o?(He(this.#e.has(o),`Parent ${o} of ${n.id} not found`),this.#a.set(n.id,this.node(o)),this.#t.get(o).add(n)):(He(n.isDeploymentNode(),`Root element ${n.id} is not a deployment node`),this.#l.add(n)),n}addRelation(r){if(this.#n.has(r.id))throw new Error(`Relation ${r.id} already exists`);const n=new Lke(this,Object.freeze(r));this.#n.set(n.id,n),this.#s.get(n.target.id).add(n),this.#i.get(n.source.id).add(n);const o=n.boundary?.id??null;if(o)for(const i of[o,...Du(o)])this.#o.get(i).add(n);for(const i of Du(n.source.id)){if(i===o)break;this.#i.get(i).add(n)}for(const i of Du(n.target.id)){if(i===o)break;this.#s.get(i).add(n)}return n}}class iL{constructor(r,n){this.model=r,this.$relationship=n,this.source=r.element(S1.flatten(n.source)),this.target=r.element(S1.flatten(n.target));const o=t1(this.source.id,this.target.id);this.boundary=o?this.model.element(o):null}source;target;boundary;get id(){return this.$relationship.id}get expression(){return`${this.source.id} -> ${this.target.id}`}get title(){return Ji(this.$relationship.title)?this.$relationship.title:null}get technology(){return Ji(this.$relationship.technology)?this.$relationship.technology:null}get hasSummary(){return!!this.$relationship.summary&&!!this.$relationship.description&&!e7(this.$relationship.summary,this.$relationship.description)}get summary(){return ur.memoize(this,"summary",Fs(this.$relationship))}get description(){return ur.memoize(this,"description",Xh(this.$relationship))}get navigateTo(){return this.$relationship.navigateTo?this.model.view(this.$relationship.navigateTo):null}get tags(){return this.$relationship.tags??[]}get kind(){return this.$relationship.kind??null}get links(){return this.$relationship.links??[]}get color(){return this.$relationship.color??this.model.$styles.defaults.relationship.color}get line(){return this.$relationship.line??this.model.$styles.defaults.relationship.line}get head(){return this.$relationship.head??this.model.$styles.defaults.relationship.arrow}get tail(){return this.$relationship.tail}*views(){for(const r of this.model.views())r.includesRelation(this.id)&&(yield r)}isDeploymentRelation(){return!1}isModelRelation(){return!0}hasMetadata(){return!!this.$relationship.metadata&&!$1(this.$relationship.metadata)}getMetadata(r){return r?this.$relationship.metadata?.[r]:this.$relationship.metadata??{}}isTagged(r){return this.tags.includes(r)}}class Yke{constructor(r,n,o,i){this.source=o,this.target=i,this.$viewModel=r,this.$view=r.$view,this.$edge=n}Aux;$viewModel;$view;$edge;get id(){return this.$edge.id}get parent(){return this.$edge.parent?this.$viewModel.node(this.$edge.parent):null}get label(){return this.$edge.label??null}get description(){return ur.memoize(this,"description",this.$edge.description)}get technology(){return this.$edge.technology??null}hasParent(){return this.$edge.parent!==null}get tags(){return this.$edge.tags??[]}get stepNumber(){return this.isStep()?IO(this.id):null}get navigateTo(){return this.$edge.navigateTo?this.$viewModel.$model.view(this.$edge.navigateTo):null}get color(){return this.$edge.color}get line(){return this.$edge.line??this.$viewModel.$styles.defaults.relationship.line}get head(){return this.$edge.head??this.$viewModel.$styles.defaults.relationship.arrow}get tail(){return this.$edge.tail}isStep(){return k1(this.id)}*relationships(r){for(const n of this.$edge.relations)if(r){const o=this.$viewModel.$model.findRelationship(n,r);o&&(yield o)}else yield this.$viewModel.$model.relationship(n)}includesRelation(r){const n=typeof r=="string"?r:r.id;return this.$edge.relations.includes(n)}isTagged(r){return this.tags.includes(r)}}class Xke{Aux;$viewModel;$view;$node;constructor(r,n){this.$viewModel=r,this.$view=r.$view,this.$node=n}get id(){return this.$node.id}get title(){return this.$node.title}get kind(){return this.$node.kind}get description(){return ur.memoize(this,"description",this.$node.description)}get technology(){return this.$node.technology??null}get parent(){return this.$node.parent?this.$viewModel.node(this.$node.parent):null}get element(){const r=this.$node.modelRef;return r?this.$viewModel.$model.element(r):null}get deployment(){const r=this.$node.deploymentRef;return r?this.$viewModel.$model.deployment.element(r):null}get shape(){return this.$node.shape}get color(){return this.$node.color}get icon(){return this.$node.icon??null}get tags(){return this.$node.tags}get links(){return this.$node.links??[]}get navigateTo(){return this.$node.navigateTo?this.$viewModel.$model.view(this.$node.navigateTo):null}get style(){return this.$node.style}get x(){return"x"in this.$node?this.$node.x:void 0}get y(){return"y"in this.$node?this.$node.y:void 0}get width(){return"width"in this.$node?this.$node.width:void 0}get height(){return"height"in this.$node?this.$node.height:void 0}children(){return ar(this,"children",()=>new Set(this.$node.children.map(r=>this.$viewModel.node(r))))}*ancestors(){let r=this.parent;for(;r;)yield r,r=r.parent}*siblings(){const r=this.parent?.children()??this.$viewModel.roots();for(const n of r)n.id!==this.id&&(yield n)}*incoming(r="all"){for(const n of this.$node.inEdges){const o=this.$viewModel.edge(n);switch(!0){case r==="all":case(r==="direct"&&o.target.id===this.id):case(r==="to-descendants"&&o.target.id!==this.id):yield o;break}}}*incomers(r="all"){const n=new Set;for(const o of this.incoming(r))n.has(o.source.id)||(n.add(o.source.id),yield o.source)}*outgoing(r="all"){for(const n of this.$node.outEdges){const o=this.$viewModel.edge(n);switch(!0){case r==="all":case(r==="direct"&&o.source.id===this.id):case(r==="from-descendants"&&o.source.id!==this.id):yield o;break}}}*outgoers(r="all"){const n=new Set;for(const o of this.outgoing(r))n.has(o.target.id)||(n.add(o.target.id),yield o.target)}isLayouted(){return"width"in this.$node&&"height"in this.$node}hasChildren(){return this.$node.children.length>0}hasParent(){return this.$node.parent!==null}hasElement(){return Ji(this.$node.modelRef)}hasDeployment(){return Ji(this.$node.deploymentRef)}hasDeployedInstance(){return this.hasElement()&&this.hasDeployment()}isGroup(){return mke(this.$node)}isTagged(r){return this.tags.includes(r)}}class o7{Aux;#e;#a=new Set;#t=new Map;#r=new Map;#l=new Set;#n=new Set;#s=new Set;#i=new Ln(r=>new Set);#o;id;$model;title;folder;viewPath;constructor(r,n,o,i){this.$model=r,this.#e=o,this.id=o.id,this.folder=n,this.#o=i;for(const a of this.#e.nodes){const l=new Xke(this,Object.freeze(a));this.#t.set(a.id,l),a.parent||this.#a.add(l),a.deploymentRef&&this.#n.add(a.deploymentRef),a.modelRef&&this.#l.add(a.modelRef);for(const s of l.tags)this.#i.get(s).add(l)}for(const a of this.#e.edges){const l=new Yke(this,Object.freeze(a),this.node(a.source),this.node(a.target));for(const s of l.tags)this.#i.get(s).add(l);for(const s of a.relations)this.#s.add(s);this.#r.set(a.id,l)}this.title=o.title?n7(o.title):null,this.viewPath=o.title?gx(o.title):o.id}get $styles(){return this.$model.$styles}get _type(){return this.#e[h1]}get stage(){return this.#e[Iu]}get bounds(){if("bounds"in this.#e)return this.#e.bounds;if(this.#o)return this.#o.bounds;throw new Error("View is not layouted")}get titleOrId(){return this.title??this.viewOf?.title??this.id}get titleOrUntitled(){return this.title??"Untitled"}get breadcrumbs(){return ar(this,"breadcrumbs",()=>this.folder.isRoot?[this]:[...this.folder.breadcrumbs,this])}get description(){return ur.memoize(this,"description",this.#e.description)}get tags(){return this.#e.tags??[]}get links(){return this.#e.links??[]}get viewOf(){if(this.isElementView()){const r=this.#e.viewOf;return r?this.$model.element(r):null}return null}get mode(){return this.isDynamicView()?this.#e.variant??"diagram":null}get includedTags(){return[...this.#i.keys()]}get $view(){if(!this.isLayouted()||"drifts"in this.#e)return this.#e;const r=this.#o;return r?ar(this,"withDriftReasons",()=>fke(this.#e,r)):this.#e}get $layouted(){if(!this.isLayouted())throw new Error("View is not layouted");return this.$manual??this.#e}get hasManualLayout(){return this.#o!==void 0}get hasLayoutDrifts(){if(!this.isLayouted())return!1;const r=this.$manual;return!!r?.drifts&&r.drifts.length>0}get $manual(){if(!this.isLayouted())return null;const r=this.#o;return r?ar(this,"snapshotWithManualLayout",()=>PO(this.#e,r)):null}roots(){return this.#a.values()}*compounds(){for(const r of this.#t.values())r.hasChildren()&&(yield r)}node(r){const n=yr(r);return mt(this.#t.get(n),`Node ${n} not found in view ${this.#e.id}`)}findNode(r){return this.#t.get(yr(r))??null}findNodeWithElement(r){const n=yr(r);return this.#l.has(n)?E1(this.#t.values(),o=>o.hasElement()&&o.element.id===n)??null:null}nodes(){return this.#t.values()}edge(r){const n=yr(r);return mt(this.#r.get(n),`Edge ${n} not found in view ${this.#e.id}`)}findEdge(r){return this.#r.get(yr(r))??null}edges(){return this.#r.values()}*edgesWithRelation(r){for(const n of this.#r.values())n.includesRelation(r)&&(yield n)}*elements(){for(const r of this.#t.values())r.hasElement()&&(yield r)}isTagged(r){return this.tags.includes(r)}includesElement(r){return this.#l.has(yr(r))}includesDeployment(r){return this.#n.has(yr(r))}includesRelation(r){return this.#s.has(yr(r))}isComputed(){return this.#e[Iu]==="computed"}isLayouted(){return this.#e[Iu]==="layouted"}isDiagram(){return this.#e[Iu]==="layouted"}isElementView(){return this.#e[h1]==="element"}isScopedElementView(){return this.#e[h1]==="element"&&Ji(this.#e.viewOf)}isDeploymentView(){return this.#e[h1]==="deployment"}isDynamicView(){return this.#e[h1]==="dynamic"}}class yx{$model;path;title;isRoot;parentPath;defaultViewId;constructor(r,n,o){this.$model=r,this.path=n.join("/"),this.isRoot=this.path==="",this.title=Hke(n),this.isRoot?this.parentPath=void 0:this.parentPath=n.slice(0,-1).join("/"),this.defaultViewId=o}get defaultView(){return this.defaultViewId?this.$model.view(this.defaultViewId):null}get breadcrumbs(){return He(!this.isRoot,"Root view folder has no breadcrumbs"),ar(this,"breadcrumbs",()=>{const r=this.parent;return r?r.isRoot?[r,this]:[...r.breadcrumbs,this]:[this]})}get parent(){return He(!this.isRoot,"Root view folder has no parent"),qke(this.parentPath)?null:this.$model.viewFolder(this.parentPath)}get children(){return this.$model.viewFolderItems(this.path)}get folders(){return ar(this,"folders",()=>{const r=[];for(const n of this.children)n instanceof yx&&r.push(n);return r})}get views(){return ar(this,"views",()=>{const r=[];for(const n of this.children)n instanceof o7&&r.push(n);return r})}}class Fu{Aux;_elements=new Map;_parents=new Map;_children=new Ln(()=>new Set);_rootElements=new Set;_relations=new Map;_incoming=new Ln(()=>new Set);_outgoing=new Ln(()=>new Set);_internal=new Ln(()=>new Set);_views=new Map;_rootViewFolder;_viewFolders=new Map;_viewFolderItems=new Ln(()=>new Set);_allTags=new Ln(()=>new Set);static fromParsed(r){return new Fu(r)}static create(r){return new Fu(r)}static fromDump(r){const{_stage:n="layouted",projectId:o="unknown",project:i,globals:a,imports:l,deployments:s,views:c,relations:d,elements:u,specification:p}=r;return new Fu({[Iu]:n,projectId:o,project:i,globals:{predicates:a?.predicates??{},dynamicPredicates:a?.dynamicPredicates??{},styles:a?.styles??{}},imports:l??{},deployments:{elements:s?.elements??{},relations:s?.relations??{}},views:c??{},relations:d??{},elements:u??{},specification:p})}deployment;$data;constructor(r){this.$data=r;for(const[,n]of f1(r.elements)){const o=this.addElement(n);for(const i of o.tags)this._allTags.get(i).add(o)}for(const[n,o]of f1(r.imports??{}))for(const i of Jc(o)){const a=this.addImportedElement(n,i);for(const l of a.tags)this._allTags.get(l).add(a)}for(const n of fx(r.relations)){const o=this.addRelation(n);for(const i of o.tags)this._allTags.get(i).add(o)}if(this.deployment=new Gke(this),cO(r,"computed")||cO(r,"layouted")){const n=JP(_i),o=Ps(fx(r.views),Kb(a=>({view:a,path:gx(a.title??a.id),folderPath:a.title&&Wke(a.title)||""})),Q8((a,l)=>n(a.folderPath,l.folderPath))),i=a=>{let l=this._viewFolders.get(a);if(!l){const s=oL(a,_i);He(Ll(s,1),`View group path "${a}" must have at least one element`);let c;a===""?c=o.find(d=>d.view.id==="index"):c=o.find(d=>d.path===a),l=new yx(this,s,c?.view.id),this._viewFolders.set(a,l)}return l};this._rootViewFolder=i("");for(const{folderPath:a}of o)this._viewFolders.has(a)||oL(a,_i).reduce((l,s)=>{const c=l.join(_i),d=$1(c)?s:c+_i+s,u=i(d);return this._viewFolderItems.get(c).add(u),l.push(s),l},[]);for(const{view:a,folderPath:l}of o){const s=new o7(this,i(l),a,r.manualLayouts?.[a.id]);this._viewFolderItems.get(l).add(s),this._views.set(a.id,s);for(const c of s.tags)this._allTags.get(c).add(s)}}else this._rootViewFolder=new yx(this,[""],void 0),this._viewFolders.set(this._rootViewFolder.path,this._rootViewFolder)}get asParsed(){return this}get asComputed(){return this}get asLayouted(){return this}get $styles(){return ar(this,"styles",()=>XP.from(this.$data.project.styles,this.$data.specification.customColors?{theme:{colors:this.$data.specification.customColors}}:void 0))}isParsed(){return this.stage==="parsed"}isLayouted(){return this.stage==="layouted"}isComputed(){return this.stage==="computed"}get $model(){return this.$data}get stage(){return this.$data[Iu]}get projectId(){return this.$data.projectId??"default"}get project(){return this.$data.project??ar(this,Symbol.for("project"),()=>({id:this.projectId}))}get specification(){return this.$data.specification}get globals(){return ar(this,Symbol.for("globals"),()=>({predicates:{...this.$data.globals?.predicates},dynamicPredicates:{...this.$data.globals?.dynamicPredicates},styles:{...this.$data.globals?.styles}}))}element(r){if(r instanceof mx)return r;const n=yr(r);return mt(this._elements.get(n),`Element ${n} not found`)}findElement(r){return this._elements.get(yr(r))??null}roots(){return this._rootElements.values()}elements(){return this._elements.values()}relationships(){return this._relations.values()}relationship(r,n){if(n==="deployment")return this.deployment.relationship(r);const o=yr(r);let i=this._relations.get(o)??null;return i||n==="model"?mt(i,`Model relation ${o} not found`):mt(this.deployment.findRelationship(o),`No model/deployment relation ${o} not found`)}findRelationship(r,n){if(n==="deployment")return this.deployment.findRelationship(r);let o=this._relations.get(yr(r))??null;return o||n==="model"?o:this.deployment.findRelationship(r)}views(){return this._views.values()}view(r){const n=yr(r);return mt(this._views.get(n),`View ${n} not found`)}findView(r){return this._views.get(r)??null}findManualLayout(r){return"manualLayouts"in this.$data?this.$data.manualLayouts?.[r]??null:null}viewFolder(r){return mt(this._viewFolders.get(r),`View folder ${r} not found`)}get rootViewFolder(){return this._rootViewFolder}get hasViewFolders(){return this._viewFolders.size>1}viewFolderItems(r){return He(this._viewFolders.has(r),`View folder ${r} not found`),this._viewFolderItems.get(r)}parent(r){const n=yr(r);return this._parents.get(n)||null}children(r){const n=yr(r);return this._children.get(n)}*siblings(r){const n=yr(r),o=this._parents.get(n),i=o?this._children.get(o.id).values():this.roots();for(const a of i)a.id!==n&&(yield a)}*ancestors(r){let n=yr(r),o;for(;o=this._parents.get(n);)yield o,n=o.id}*descendants(r){for(const n of this.children(r))yield n,yield*this.descendants(n.id)}*incoming(r,n="all"){const o=yr(r);for(const i of this._incoming.get(o))switch(!0){case n==="all":case(n==="direct"&&i.target.id===o):case(n==="to-descendants"&&i.target.id!==o):yield i;break}}*outgoing(r,n="all"){const o=yr(r);for(const i of this._outgoing.get(o))switch(!0){case n==="all":case(n==="direct"&&i.source.id===o):case(n==="from-descendants"&&i.source.id!==o):yield i;break}}get tags(){return ar(this,"tags",()=>Q8([...this._allTags.keys()],Rb))}get tagsSortedByUsage(){return ar(this,"tagsSortedByUsage",()=>Ps([...this._allTags.entries()],Kb(([r,n])=>({tag:r,count:n.size,tagged:n})),Q8((r,n)=>Rb(r.tag,n.tag)),vO([Lu("count"),"desc"])))}findByTag(r,n){return Is(this._allTags.get(r),o=>n==="elements"?o instanceof mx:n==="views"?o instanceof o7:n==="relationships"?o instanceof iL:!0)}*elementsOfKind(r){for(const n of this._elements.values())n.kind===r&&(yield n)}*elementsWhere(r){const n=Ou(r);for(const o of this._elements.values())n(o)&&(yield o)}*relationshipsWhere(r){const n=Ou(r);for(const o of this._relations.values())n(o)&&(yield o)}addElement(r){if(this._elements.has(r.id))throw new Error(`Element ${r.id} already exists`);const n=new mx(this,Object.freeze(r));this._elements.set(n.id,n);const o=zb(n.id);return o?(He(this._elements.has(o),`Parent ${o} of ${n.id} not found`),this._parents.set(n.id,this.element(o)),this._children.get(o).add(n)):this._rootElements.add(n),n}addImportedElement(r,n){He(!gke(n.id),"Imported element already has global FQN");const o=BO(r,n.id);if(this._elements.has(o))throw new Error(`Element ${o} already exists`);const i=new mx(this,Object.freeze({...n,id:o}));this._elements.set(i.id,i);let a=zb(i.id);for(;a;){if(a.includes(".")&&this._elements.has(a))return this._parents.set(i.id,this.element(a)),this._children.get(a).add(i),i;a=zb(a)}return this._rootElements.add(i),i}addRelation(r){if(this._relations.has(r.id))throw new Error(`Relation ${r.id} already exists`);const n=new iL(this,Object.freeze(r)),{source:o,target:i}=n;this._relations.set(n.id,n),this._incoming.get(i.id).add(n),this._outgoing.get(o.id).add(n);const a=t1(o.id,i.id);if(a)for(const l of[a,...Du(a)])this._internal.get(l).add(n);for(const l of Du(o.id)){if(l===a)break;this._outgoing.get(l).add(n)}for(const l of Du(i.id)){if(l===a)break;this._incoming.get(l).add(n)}return n}}(e=>{e.EMPTY=e.create({_stage:"computed",projectId:"default",project:{id:"default"},specification:{elements:{},relationships:{},deployments:{},tags:{}},globals:{predicates:{},dynamicPredicates:{},styles:{}},deployments:{elements:{},relations:{}},elements:{},relations:{},views:{},imports:{}})})(Fu||(Fu={}));function vx(e){return typeof e=="object"&&e!=null&&!Array.isArray(e)}var Kke=e=>typeof e=="object"&&e!==null;function Vu(e){return Object.fromEntries(Object.entries(e??{}).filter(([r,n])=>n!==void 0))}var Zke=e=>e==="base";function Qke(e){return e.slice().filter(r=>!Zke(r))}function aL(e){return String.fromCharCode(e+(e>25?39:97))}function Jke(e){let r="",n;for(n=Math.abs(e);n>52;n=n/52|0)r=aL(n%52)+r;return aL(n%52)+r}function e5e(e,r){let n=r.length;for(;n;)e=e*33^r.charCodeAt(--n);return e}function t5e(e){return Jke(e5e(5381,e)>>>0)}var lL=/\s*!(important)?/i;function r5e(e){return typeof e=="string"?lL.test(e):!1}function n5e(e){return typeof e=="string"?e.replace(lL,"").trim():e}function i7(e){return typeof e=="string"?e.replaceAll(" ","_"):e}var Kn=e=>{const r=new Map;return(...n)=>{const o=JSON.stringify(n);if(r.has(o))return r.get(o);const i=e(...n);return r.set(o,i),i}},o5e=new Set(["__proto__","constructor","prototype"]);function a7(...e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{if(o5e.has(o))return;const i=r[o],a=n[o];vx(i)&&vx(a)?r[o]=a7(i,a):r[o]=a}),r),{})}var i5e=e=>e!=null;function l7(e,r,n={}){const{stop:o,getKey:i}=n;function a(l,s=[]){if(Kke(l)){const c={};for(const[d,u]of Object.entries(l)){const p=i?.(d,u)??d,f=[...s,p];if(o?.(l,f))return r(l,s);const g=a(u,f);i5e(g)&&(c[p]=g)}return c}return r(l,s)}return a(e)}function a5e(e,r){return Array.isArray(e)?e.map(n=>r(n)):vx(e)?l7(e,n=>r(n)):r(e)}function l5e(e,r){return e.reduce((n,o,i)=>{const a=r[i];return o!=null&&(n[a]=o),n},{})}function sL(e,r,n=!0){const{utility:o,conditions:i}=r,{hasShorthand:a,resolveShorthand:l}=o;return l7(e,s=>Array.isArray(s)?l5e(s,i.breakpoints.keys):s,{stop:s=>Array.isArray(s),getKey:n?s=>a?l(s):s:void 0})}var s5e={shift:e=>e,finalize:e=>e,breakpoints:{keys:[]}},c5e=e=>typeof e=="string"?e.replaceAll(/[\n\s]+/g," "):e;function cL(e){const{utility:r,hash:n,conditions:o=s5e}=e,i=l=>[r.prefix,l].filter(Boolean).join("-"),a=(l,s)=>{let c;if(n){const d=[...o.finalize(l),s];c=i(r.toHash(d,t5e))}else c=[...o.finalize(l),i(s)].join(":");return c};return Kn(({base:l,...s}={})=>{const c=Object.assign(s,l),d=sL(c,e),u=new Set;return l7(d,(p,f)=>{if(p==null)return;const g=r5e(p),[v,...w]=o.shift(f),x=Qke(w),k=r.transform(v,n5e(c5e(p)));let C=a(x,k.className);g&&(C=`${C}!`),u.add(C)}),Array.from(u).join(" ")})}function d5e(...e){return e.flat().filter(r=>vx(r)&&Object.keys(Vu(r)).length>0)}function u5e(e){function r(i){const a=d5e(...i);return a.length===1?a:a.map(l=>sL(l,e))}function n(...i){return a7(...r(i))}function o(...i){return Object.assign({},...r(i))}return{mergeCss:Kn(n),assignCss:o}}var p5e=/([A-Z])/g,h5e=/^ms-/,f5e=Kn(e=>e.startsWith("--")?e:e.replace(p5e,"-$1").replace(h5e,"-ms-").toLowerCase()),m5e=["min","max","clamp","calc"],g5e=new RegExp(`^(${m5e.join("|")})\\(.*\\)`),y5e=e=>typeof e=="string"&&g5e.test(e),v5e="cm,mm,Q,in,pc,pt,px,em,ex,ch,rem,lh,rlh,vw,vh,vmin,vmax,vb,vi,svw,svh,lvw,lvh,dvw,dvh,cqw,cqh,cqi,cqb,cqmin,cqmax,%",b5e=`(?:${v5e.split(",").join("|")})`,x5e=new RegExp(`^[+-]?[0-9]*.?[0-9]+(?:[eE][+-]?[0-9]+)?${b5e}$`),w5e=e=>typeof e=="string"&&x5e.test(e),k5e=e=>typeof e=="string"&&/^var\(--.+\)$/.test(e),R1={map:a5e,isCssFunction:y5e,isCssVar:k5e,isCssUnit:w5e},z1=(e,r)=>{if(!e?.defaultValues)return r;const n=typeof e.defaultValues=="function"?e.defaultValues(r):e.defaultValues;return Object.assign({},n,Vu(r))},_5e=(e={})=>{const r=o=>({className:[e.className,o].filter(Boolean).join("__"),base:e.base?.[o]??{},variants:{},defaultVariants:e.defaultVariants??{},compoundVariants:e.compoundVariants?s7(e.compoundVariants,o):[]}),n=(e.slots??[]).map(o=>[o,r(o)]);for(const[o,i]of Object.entries(e.variants??{}))for(const[a,l]of Object.entries(i))n.forEach(([s,c])=>{c.variants[o]??={},c.variants[o][a]=l[s]??{}});return Object.fromEntries(n)},s7=(e,r)=>e.filter(n=>n.css[r]).map(n=>({...n,css:n.css[r]}));function Fn(e,...r){const n=Object.getOwnPropertyDescriptors(e),o=Object.keys(n),i=l=>{const s={};for(let c=0;ci(Array.isArray(l)?l:o.filter(l));return r.map(a).concat(i(o))}var c7=(...e)=>{const r=e.reduce((n,o)=>(o&&o.forEach(i=>n.add(i)),n),new Set([]));return Array.from(r)},dL=["htmlSize","htmlTranslate","htmlWidth","htmlHeight"];function S5e(e){return dL.includes(e)?e.replace("html","").toLowerCase():e}function d7(e){return Object.fromEntries(Object.entries(e).map(([r,n])=>[S5e(r),n]))}d7.keys=dL;const E5e="_hover,_focus,_focusWithin,_focusVisible,_disabled,_active,_visited,_target,_readOnly,_readWrite,_empty,_checked,_enabled,_expanded,_highlighted,_complete,_incomplete,_dragging,_before,_after,_firstLetter,_firstLine,_marker,_selection,_file,_backdrop,_first,_last,_only,_even,_odd,_firstOfType,_lastOfType,_onlyOfType,_peerFocus,_peerHover,_peerActive,_peerFocusWithin,_peerFocusVisible,_peerDisabled,_peerChecked,_peerInvalid,_peerExpanded,_peerPlaceholderShown,_groupFocus,_groupHover,_groupActive,_groupFocusWithin,_groupFocusVisible,_groupDisabled,_groupChecked,_groupExpanded,_groupInvalid,_indeterminate,_required,_valid,_invalid,_autofill,_inRange,_outOfRange,_placeholder,_placeholderShown,_pressed,_selected,_grabbed,_underValue,_overValue,_atValue,_default,_optional,_open,_closed,_fullscreen,_loading,_hidden,_current,_currentPage,_currentStep,_today,_unavailable,_rangeStart,_rangeEnd,_now,_topmost,_motionReduce,_motionSafe,_print,_landscape,_portrait,_dark,_light,_osDark,_osLight,_highContrast,_lessContrast,_moreContrast,_ltr,_rtl,_scrollbar,_scrollbarThumb,_scrollbarTrack,_horizontal,_vertical,_icon,_starting,_noscript,_invertedColors,_shapeSizeXs,_shapeSizeSm,_shapeSizeMd,_shapeSizeLg,_shapeSizeXl,_shapeRectangle,_shapePerson,_shapeBrowser,_shapeMobile,_shapeCylinder,_shapeStorage,_shapeQueue,_notDisabled,_reduceGraphics,_reduceGraphicsOnPan,_noReduceGraphics,_whenPanning,_smallZoom,_compoundTransparent,_edgeActive,_whenHovered,_whenSelectable,_whenSelected,_whenDimmed,_whenFocused,_p3,_srgb,_rec2020,xs,xsOnly,xsDown,sm,smOnly,smDown,md,mdOnly,mdDown,lg,lgOnly,lgDown,xl,xlOnly,xlDown,xsToSm,xsToMd,xsToLg,xsToXl,smToMd,smToLg,smToXl,mdToLg,mdToXl,lgToXl,@/xs,@/sm,@/md,@/lg,@likec4-root/xs,@likec4-root/sm,@likec4-root/md,@likec4-root/lg,@likec4-dialog/xs,@likec4-dialog/sm,@likec4-dialog/md,@likec4-dialog/lg,base",uL=new Set(E5e.split(",")),C5e=/^@|&|&$/;function pL(e){return uL.has(e)||C5e.test(e)}const $5e=/^_/,R5e=/&|@/;function hL(e){return e.map(r=>uL.has(r)?r.replace($5e,""):R5e.test(r)?`[${i7(r.trim())}]`:r)}function fL(e){return e.sort((r,n)=>{const o=pL(r),i=pL(n);return o&&!i?1:!o&&i?-1:0})}const z5e="aspectRatio:asp,boxDecorationBreak:bx-db,zIndex:z,boxSizing:bx-s,objectPosition:obj-p,objectFit:obj-f,overscrollBehavior:ovs-b,overscrollBehaviorX:ovs-bx,overscrollBehaviorY:ovs-by,position:pos/1,top:top,left:left,inset:inset,insetInline:inset-x/insetX,insetBlock:inset-y/insetY,insetBlockEnd:inset-be,insetBlockStart:inset-bs,insetInlineEnd:inset-e/insetEnd/end,insetInlineStart:inset-s/insetStart/start,right:right,bottom:bottom,float:float,visibility:vis,display:d,hideFrom:hide,hideBelow:show,flexBasis:flex-b,flex:flex,flexDirection:flex-d/flexDir,flexGrow:flex-g,flexShrink:flex-sh,gridTemplateColumns:grid-tc,gridTemplateRows:grid-tr,gridColumn:grid-c,gridRow:grid-r,gridColumnStart:grid-cs,gridColumnEnd:grid-ce,gridAutoFlow:grid-af,gridAutoColumns:grid-ac,gridAutoRows:grid-ar,gap:gap,gridGap:grid-g,gridRowGap:grid-rg,gridColumnGap:grid-cg,rowGap:rg,columnGap:cg,justifyContent:jc,alignContent:ac,alignItems:ai,alignSelf:as,padding:p/1,paddingLeft:pl/1,paddingRight:pr/1,paddingTop:pt/1,paddingBottom:pb/1,paddingBlock:py/1/paddingY,paddingBlockEnd:pbe,paddingBlockStart:pbs,paddingInline:px/paddingX/1,paddingInlineEnd:pe/1/paddingEnd,paddingInlineStart:ps/1/paddingStart,marginLeft:ml/1,marginRight:mr/1,marginTop:mt/1,marginBottom:mb/1,margin:m/1,marginBlock:my/1/marginY,marginBlockEnd:mbe,marginBlockStart:mbs,marginInline:mx/1/marginX,marginInlineEnd:me/1/marginEnd,marginInlineStart:ms/1/marginStart,spaceX:sx,spaceY:sy,outlineWidth:ring-w/ringWidth,outlineColor:ring-c/ringColor,outline:ring/1,outlineOffset:ring-o/ringOffset,focusRing:focus-ring,focusVisibleRing:focus-v-ring,focusRingColor:focus-ring-c,focusRingOffset:focus-ring-o,focusRingWidth:focus-ring-w,focusRingStyle:focus-ring-s,divideX:dvd-x,divideY:dvd-y,divideColor:dvd-c,divideStyle:dvd-s,width:w/1,inlineSize:w-is,minWidth:min-w/minW,minInlineSize:min-w-is,maxWidth:max-w/maxW,maxInlineSize:max-w-is,height:h/1,blockSize:h-bs,minHeight:min-h/minH,minBlockSize:min-h-bs,maxHeight:max-h/maxH,maxBlockSize:max-b,boxSize:size,color:c,fontFamily:ff,fontSize:fs,fontSizeAdjust:fs-a,fontPalette:fp,fontKerning:fk,fontFeatureSettings:ff-s,fontWeight:fw,fontSmoothing:fsmt,fontVariant:fv,fontVariantAlternates:fv-alt,fontVariantCaps:fv-caps,fontVariationSettings:fv-s,fontVariantNumeric:fv-num,letterSpacing:ls,lineHeight:lh,textAlign:ta,textDecoration:td,textDecorationColor:td-c,textEmphasisColor:te-c,textDecorationStyle:td-s,textDecorationThickness:td-t,textUnderlineOffset:tu-o,textTransform:tt,textIndent:ti,textShadow:tsh,textShadowColor:tsh-c/textShadowColor,WebkitTextFillColor:wktf-c,textOverflow:tov,verticalAlign:va,wordBreak:wb,textWrap:tw,truncate:trunc,lineClamp:lc,listStyleType:li-t,listStylePosition:li-pos,listStyleImage:li-img,listStyle:li-s,backgroundPosition:bg-p/bgPosition,backgroundPositionX:bg-p-x/bgPositionX,backgroundPositionY:bg-p-y/bgPositionY,backgroundAttachment:bg-a/bgAttachment,backgroundClip:bg-cp/bgClip,background:bg/1,backgroundColor:bg-c/bgColor,backgroundOrigin:bg-o/bgOrigin,backgroundImage:bg-i/bgImage,backgroundRepeat:bg-r/bgRepeat,backgroundBlendMode:bg-bm/bgBlendMode,backgroundSize:bg-s/bgSize,backgroundGradient:bg-grad/bgGradient,backgroundLinear:bg-linear/bgLinear,backgroundRadial:bg-radial/bgRadial,backgroundConic:bg-conic/bgConic,textGradient:txt-grad,gradientFromPosition:grad-from-pos,gradientToPosition:grad-to-pos,gradientFrom:grad-from,gradientTo:grad-to,gradientVia:grad-via,gradientViaPosition:grad-via-pos,borderRadius:bdr/rounded,borderTopLeftRadius:bdr-tl/roundedTopLeft,borderTopRightRadius:bdr-tr/roundedTopRight,borderBottomRightRadius:bdr-br/roundedBottomRight,borderBottomLeftRadius:bdr-bl/roundedBottomLeft,borderTopRadius:bdr-t/roundedTop,borderRightRadius:bdr-r/roundedRight,borderBottomRadius:bdr-b/roundedBottom,borderLeftRadius:bdr-l/roundedLeft,borderStartStartRadius:bdr-ss/roundedStartStart,borderStartEndRadius:bdr-se/roundedStartEnd,borderStartRadius:bdr-s/roundedStart,borderEndStartRadius:bdr-es/roundedEndStart,borderEndEndRadius:bdr-ee/roundedEndEnd,borderEndRadius:bdr-e/roundedEnd,border:bd,borderWidth:bd-w,borderTopWidth:bd-t-w,borderLeftWidth:bd-l-w,borderRightWidth:bd-r-w,borderBottomWidth:bd-b-w,borderBlockStartWidth:bd-bs-w,borderBlockEndWidth:bd-be-w,borderColor:bd-c,borderInline:bd-x/borderX,borderInlineWidth:bd-x-w/borderXWidth,borderInlineColor:bd-x-c/borderXColor,borderBlock:bd-y/borderY,borderBlockWidth:bd-y-w/borderYWidth,borderBlockColor:bd-y-c/borderYColor,borderLeft:bd-l,borderLeftColor:bd-l-c,borderInlineStart:bd-s/borderStart,borderInlineStartWidth:bd-s-w/borderStartWidth,borderInlineStartColor:bd-s-c/borderStartColor,borderRight:bd-r,borderRightColor:bd-r-c,borderInlineEnd:bd-e/borderEnd,borderInlineEndWidth:bd-e-w/borderEndWidth,borderInlineEndColor:bd-e-c/borderEndColor,borderTop:bd-t,borderTopColor:bd-t-c,borderBottom:bd-b,borderBottomColor:bd-b-c,borderBlockEnd:bd-be,borderBlockEndColor:bd-be-c,borderBlockStart:bd-bs,borderBlockStartColor:bd-bs-c,opacity:op,boxShadow:bx-sh/shadow,boxShadowColor:bx-sh-c/shadowColor,mixBlendMode:mix-bm,filter:filter,brightness:brightness,contrast:contrast,grayscale:grayscale,hueRotate:hue-rotate,invert:invert,saturate:saturate,sepia:sepia,dropShadow:drop-shadow,blur:blur,backdropFilter:bkdp,backdropBlur:bkdp-blur,backdropBrightness:bkdp-brightness,backdropContrast:bkdp-contrast,backdropGrayscale:bkdp-grayscale,backdropHueRotate:bkdp-hue-rotate,backdropInvert:bkdp-invert,backdropOpacity:bkdp-opacity,backdropSaturate:bkdp-saturate,backdropSepia:bkdp-sepia,borderCollapse:bd-cl,borderSpacing:bd-sp,borderSpacingX:bd-sx,borderSpacingY:bd-sy,tableLayout:tbl,transitionTimingFunction:trs-tmf,transitionDelay:trs-dly,transitionDuration:trs-dur,transitionProperty:trs-prop,transition:transition,animation:anim,animationName:anim-n,animationTimingFunction:anim-tmf,animationDuration:anim-dur,animationDelay:anim-dly,animationPlayState:anim-ps,animationComposition:anim-comp,animationFillMode:anim-fm,animationDirection:anim-dir,animationIterationCount:anim-ic,animationRange:anim-r,animationState:anim-s,animationRangeStart:anim-rs,animationRangeEnd:anim-re,animationTimeline:anim-tl,transformOrigin:trf-o,transformBox:trf-b,transformStyle:trf-s,transform:trf,rotate:rotate,rotateX:rotate-x,rotateY:rotate-y,rotateZ:rotate-z,scale:scale,scaleX:scale-x,scaleY:scale-y,translate:translate,translateX:translate-x/x,translateY:translate-y/y,translateZ:translate-z/z,accentColor:ac-c,caretColor:ca-c,scrollBehavior:scr-bhv,scrollbar:scr-bar,scrollbarColor:scr-bar-c,scrollbarGutter:scr-bar-g,scrollbarWidth:scr-bar-w,scrollMargin:scr-m,scrollMarginLeft:scr-ml,scrollMarginRight:scr-mr,scrollMarginTop:scr-mt,scrollMarginBottom:scr-mb,scrollMarginBlock:scr-my/scrollMarginY,scrollMarginBlockEnd:scr-mbe,scrollMarginBlockStart:scr-mbt,scrollMarginInline:scr-mx/scrollMarginX,scrollMarginInlineEnd:scr-me,scrollMarginInlineStart:scr-ms,scrollPadding:scr-p,scrollPaddingBlock:scr-py/scrollPaddingY,scrollPaddingBlockStart:scr-pbs,scrollPaddingBlockEnd:scr-pbe,scrollPaddingInline:scr-px/scrollPaddingX,scrollPaddingInlineEnd:scr-pe,scrollPaddingInlineStart:scr-ps,scrollPaddingLeft:scr-pl,scrollPaddingRight:scr-pr,scrollPaddingTop:scr-pt,scrollPaddingBottom:scr-pb,scrollSnapAlign:scr-sa,scrollSnapStop:scrs-s,scrollSnapType:scrs-t,scrollSnapStrictness:scrs-strt,scrollSnapMargin:scrs-m,scrollSnapMarginTop:scrs-mt,scrollSnapMarginBottom:scrs-mb,scrollSnapMarginLeft:scrs-ml,scrollSnapMarginRight:scrs-mr,scrollSnapCoordinate:scrs-c,scrollSnapDestination:scrs-d,scrollSnapPointsX:scrs-px,scrollSnapPointsY:scrs-py,scrollSnapTypeX:scrs-tx,scrollSnapTypeY:scrs-ty,scrollTimeline:scrtl,scrollTimelineAxis:scrtl-a,scrollTimelineName:scrtl-n,touchAction:tch-a,userSelect:us,overflow:ov,overflowWrap:ov-wrap,overflowX:ov-x,overflowY:ov-y,overflowAnchor:ov-a,overflowBlock:ov-b,overflowInline:ov-i,overflowClipBox:ovcp-bx,overflowClipMargin:ovcp-m,overscrollBehaviorBlock:ovs-bb,overscrollBehaviorInline:ovs-bi,fill:fill,stroke:stk,strokeWidth:stk-w,strokeDasharray:stk-dsh,strokeDashoffset:stk-do,strokeLinecap:stk-lc,strokeLinejoin:stk-lj,strokeMiterlimit:stk-ml,strokeOpacity:stk-op,srOnly:sr,debug:debug,appearance:ap,backfaceVisibility:bfv,clipPath:cp-path,hyphens:hy,mask:msk,maskImage:msk-i,maskSize:msk-s,textSizeAdjust:txt-adj,container:cq,containerName:cq-n,containerType:cq-t,cursor:cursor,textStyle:textStyle,layerStyle:layerStyle,animationStyle:animationStyle",mL=new Map,gL=new Map;z5e.split(",").forEach(e=>{const[r,n]=e.split(":"),[o,...i]=n.split("/");mL.set(r,o),i.length&&i.forEach(a=>{gL.set(a==="1"?o:a,r)})});const yL=e=>gL.get(e)||e,vL={conditions:{shift:fL,finalize:hL,breakpoints:{keys:["base","xs","sm","md","lg","xl"]}},utility:{transform:(e,r)=>{const n=yL(e);return{className:`${mL.get(n)||f5e(n)}_${i7(r)}`}},hasShorthand:!0,toHash:(e,r)=>r(e.join(":")),resolveShorthand:yL}},T5e=cL(vL),fe=(...e)=>T5e(qu(...e));fe.raw=(...e)=>qu(...e);const{mergeCss:qu}=u5e(vL);function Ge(){let e="",r=0,n;for(;r({base:{},variants:{},defaultVariants:{},compoundVariants:[],...e});function T1(e){const{base:r,variants:n,defaultVariants:o,compoundVariants:i}=bL(e),a=f=>({...o,...Vu(f)});function l(f={}){const g=a(f);let v={...r};for(const[x,k]of Object.entries(g))n[x]?.[k]&&(v=qu(v,n[x][k]));const w=u7(i,g);return qu(v,w)}function s(f){const g=bL(f.config),v=c7(f.variantKeys,Object.keys(n));return T1({base:qu(r,g.base),variants:Object.fromEntries(v.map(w=>[w,qu(n[w],g.variants[w])])),defaultVariants:a7(o,g.defaultVariants),compoundVariants:[...i,...g.compoundVariants]})}function c(f){return fe(l(f))}const d=Object.keys(n);function u(f){return Fn(f,d)}const p=Object.fromEntries(Object.entries(n).map(([f,g])=>[f,Object.keys(g)]));return Object.assign(Kn(c),{__cva__:!0,variantMap:p,variantKeys:d,raw:l,config:e,merge:s,splitVariantProps:u,getVariantProps:a})}function u7(e,r){let n={};return e.forEach(o=>{Object.entries(o).every(([i,a])=>i==="css"?!0:(Array.isArray(a)?a:[a]).some(l=>r[i]===l))&&(n=qu(n,o.css))}),n}function j5e(e,r,n,o){if(r.length>0&&typeof n?.[o]=="object")throw new Error(`[recipe:${e}:${o}] Conditions are not supported when using compound variants.`)}function A5e(e){const r=Object.entries(_5e(e)).map(([p,f])=>[p,T1(f)]),n=e.defaultVariants??{},o=r.reduce((p,[f,g])=>(e.className&&(p[f]=g.config.className),p),{});function i(p){const f=r.map(([g,v])=>[g,Ge(v(p),o[g])]);return Object.fromEntries(f)}function a(p){const f=r.map(([g,v])=>[g,v.raw(p)]);return Object.fromEntries(f)}const l=e.variants??{},s=Object.keys(l);function c(p){return Fn(p,s)}const d=p=>({...n,...Vu(p)}),u=Object.fromEntries(Object.entries(l).map(([p,f])=>[p,Object.keys(f)]));return Object.assign(Kn(i),{__cva__:!1,raw:a,config:e,variantMap:u,variantKeys:s,classNameMap:o,splitVariantProps:c,getVariantProps:d})}var D5e={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};const wt=(e,r,n,o)=>{const i=S.forwardRef(({color:a="currentColor",size:l=24,stroke:s=2,title:c,className:d,children:u,...p},f)=>S.createElement("svg",{ref:f,...D5e[e],width:l,height:l,className:["tabler-icon",`tabler-icon-${r}`,d].join(" "),...e==="filled"?{fill:a}:{strokeWidth:s,stroke:a},...p},[c&&S.createElement("title",{key:"svg-title"},c),...o.map(([g,v])=>S.createElement(g,v)),...Array.isArray(u)?u:[u]]));return i.displayName=`${n}`,i},M5e=[["path",{d:"M12 6m-7 0a7 3 0 1 0 14 0a7 3 0 1 0 -14 0",key:"svg-0"}],["path",{d:"M5 6v12c0 1.657 3.134 3 7 3s7 -1.343 7 -3v-12",key:"svg-1"}]],xL=wt("outline","cylinder","Cylinder",M5e),N5e=[["path",{d:"M21 14.008v-5.018a1.98 1.98 0 0 0 -1 -1.717l-4 -2.008a2.016 2.016 0 0 0 -2 0l-10 5.008c-.619 .355 -1 1.01 -1 1.718v5.018c0 .709 .381 1.363 1 1.717l4 2.008a2.016 2.016 0 0 0 2 0l10 -5.008c.619 -.355 1 -1.01 1 -1.718z",key:"svg-0"}],["path",{d:"M9 21v-7.5",key:"svg-1"}],["path",{d:"M9 13.5l11.5 -5.5",key:"svg-2"}],["path",{d:"M3.5 11l5.5 2.5",key:"svg-3"}]],P5e=wt("outline","rectangular-prism","RectangularPrism",N5e),B5e=[["path",{d:"M3 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-0"}],["path",{d:"M10 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-1"}],["path",{d:"M17 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-2"}],["path",{d:"M5 11v-3a3 3 0 0 1 3 -3h8a3 3 0 0 1 3 3v3",key:"svg-3"}],["path",{d:"M16.5 8.5l2.5 2.5l2.5 -2.5",key:"svg-4"}]],I5e=wt("outline","reorder","Reorder",B5e),O5e=[["path",{d:"M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0",key:"svg-0"}],["path",{d:"M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2",key:"svg-1"}]],L5e=wt("outline","user","User",O5e),F5e=[["path",{d:"M6 5a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2v-14z",key:"svg-0"}],["path",{d:"M11 4h2",key:"svg-1"}],["path",{d:"M12 17v.01",key:"svg-2"}]],V5e=wt("outline","device-mobile","DeviceMobile",F5e),q5e=[["path",{d:"M4 8h16",key:"svg-0"}],["path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z",key:"svg-1"}],["path",{d:"M8 4v4",key:"svg-2"}]],H5e=wt("outline","browser","Browser",q5e),p7=S.createContext(null);function U5e({value:e,children:r}){return S.useContext(p7)?y.jsx(y.Fragment,{children:r}):y.jsx(p7.Provider,{value:e,children:r})}function bx({element:e,className:r,style:n}){const o=S.useContext(p7);if(!e||!e.icon||e.icon==="none")return null;let i;return e.icon.startsWith("http://")||e.icon.startsWith("https://")?i=y.jsx("img",{src:e.icon,alt:e.title}):o&&(i=y.jsx(o,{node:e})),i?y.jsx("div",{className:Ge(r,"likec4-element-icon"),"data-likec4-icon":e.icon,style:n,children:i}):null}const W5e={browser:H5e,cylinder:xL,mobile:V5e,person:L5e,queue:I5e,rectangle:P5e,storage:xL};function G5e({element:e,className:r}){const n=y.jsx(bx,{element:e,className:r});if(n)return n;const o=W5e[e.shape];return y.jsx("div",{className:Ge(r,"likec4-shape-icon"),children:y.jsx(o,{})})}function Zh(e){const r=S.useRef(e);return r.current=e,S.useMemo(()=>Object.freeze({get current(){return r.current}}),[])}function wL(e){const r=Zh(e);S.useEffect(()=>()=>{r.current()},[])}function h7(e,r,n,o=0){const i=S.useRef(void 0),a=S.useRef(void 0),l=S.useRef(e),s=S.useRef(void 0),c=()=>{i.current&&(clearTimeout(i.current),i.current=void 0),a.current&&(clearTimeout(a.current),a.current=void 0)};return wL(c),S.useEffect(()=>{l.current=e},r),S.useMemo(()=>{const d=()=>{if(c(),!s.current)return;const p=s.current;s.current=void 0,l.current.apply(p.this,p.args)},u=function(...p){i.current&&clearTimeout(i.current),s.current={args:p,this:this},i.current=setTimeout(d,n),o>0&&!a.current&&(a.current=setTimeout(d,o))};return Object.defineProperties(u,{length:{value:e.length},name:{value:`${e.name||"anonymous"}__debounced__${n}`}}),u},[n,o,...r])}const Y5e=()=>{},xx=typeof globalThis<"u"&&typeof navigator<"u"&&typeof document<"u";function X5e(e){const r=Zh(e),n=S.useRef(0),o=S.useCallback(()=>{xx&&n.current&&(cancelAnimationFrame(n.current),n.current=0)},[]);return wL(o),[S.useMemo(()=>{const i=(...a)=>{xx&&(o(),n.current=requestAnimationFrame(()=>{r.current(...a),n.current=0}))};return Object.defineProperties(i,{length:{value:e.length},name:{value:`${e.name||"anonymous"}__raf`}}),i},[]),o]}const K5e=(e,r)=>{if(e===r)return!0;if(e.length!==r.length)return!1;for(const[n,o]of e.entries())if(o!==r[n])return!1;return!0};function Z5e(e,r,n=K5e,o=S.useEffect,...i){const a=S.useRef(void 0);(a.current===void 0||xx&&!n(a.current,r))&&(a.current=r),o(e,a.current,...i)}function kL(){const e=S.useRef(!0);return S.useEffect(()=>{e.current=!1},[]),e.current}const f7=xx?S.useLayoutEffect:S.useEffect;function Q5e(e){S.useEffect(()=>{e()},[])}function _L(e,r){const[n,o]=X5e(e);S.useEffect(()=>(n(),o),r)}const J5e=e=>(e+1)%Number.MAX_SAFE_INTEGER;function e6e(){const[,e]=S.useState(0);return S.useCallback(()=>{e(J5e)},[])}function t6e(e,r){const n=kL();S.useEffect(n?Y5e:e,r)}const r6e=e=>{e&&clearTimeout(e)};function wx(e,r){const n=Zh(e),o=Zh(r),i=S.useRef(null),a=S.useCallback(()=>{r6e(i.current)},[]),l=S.useCallback(()=>{o.current!==void 0&&(a(),i.current=setTimeout(()=>{n.current()},o.current))},[]);return S.useEffect(()=>(l(),a),[r]),[a,l]}const SL=(e,r,n)=>{const o=S.useRef(void 0);return(o.current===void 0||!n(o.current,r))&&(o.current=r),S.useMemo(e,o.current)};function dn(e){if(typeof e=="string"||typeof e=="number")return""+e;let r="";if(Array.isArray(e))for(let n=0,o;n{}};function kx(){for(var e=0,r=arguments.length,n={},o;e=0&&(o=n.slice(i+1),n=n.slice(0,i)),n&&!r.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:o}})}_x.prototype=kx.prototype={constructor:_x,on:function(e,r){var n=this._,o=o6e(e+"",n),i,a=-1,l=o.length;if(arguments.length<2){for(;++a0)for(var n=new Array(i),o=0,i,a;o=0&&(r=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),CL.hasOwnProperty(r)?{space:CL[r],local:e}:e}function a6e(e){return function(){var r=this.ownerDocument,n=this.namespaceURI;return n===m7&&r.documentElement.namespaceURI===m7?r.createElement(e):r.createElementNS(n,e)}}function l6e(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function $L(e){var r=Sx(e);return(r.local?l6e:a6e)(r)}function s6e(){}function g7(e){return e==null?s6e:function(){return this.querySelector(e)}}function c6e(e){typeof e!="function"&&(e=g7(e));for(var r=this._groups,n=r.length,o=new Array(n),i=0;i=_&&(_=C+1);!(R=x[_])&&++_=0;)(l=o[i])&&(a&&l.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(l,a),a=l);return this}function M6e(e){e||(e=N6e);function r(p,f){return p&&f?e(p.__data__,f.__data__):!p-!f}for(var n=this._groups,o=n.length,i=new Array(o),a=0;ar?1:e>=r?0:NaN}function P6e(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function B6e(){return Array.from(this)}function I6e(){for(var e=this._groups,r=0,n=e.length;r1?this.each((r==null?X6e:typeof r=="function"?Z6e:K6e)(e,r,n??"")):Qh(this.node(),e)}function Qh(e,r){return e.style.getPropertyValue(r)||AL(e).getComputedStyle(e,null).getPropertyValue(r)}function J6e(e){return function(){delete this[e]}}function e_e(e,r){return function(){this[e]=r}}function t_e(e,r){return function(){var n=r.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function r_e(e,r){return arguments.length>1?this.each((r==null?J6e:typeof r=="function"?t_e:e_e)(e,r)):this.node()[e]}function DL(e){return e.trim().split(/^|\s+/)}function y7(e){return e.classList||new ML(e)}function ML(e){this._node=e,this._names=DL(e.getAttribute("class")||"")}ML.prototype={add:function(e){var r=this._names.indexOf(e);r<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var r=this._names.indexOf(e);r>=0&&(this._names.splice(r,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function NL(e,r){for(var n=y7(e),o=-1,i=r.length;++o=0&&(n=r.slice(o+1),r=r.slice(0,o)),{type:r,name:n}})}function T_e(e){return function(){var r=this.__on;if(r){for(var n=0,o=-1,i=r.length,a;n()=>e;function b7(e,{sourceEvent:r,subject:n,target:o,identifier:i,active:a,x:l,y:s,dx:c,dy:d,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:r,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:d,enumerable:!0,configurable:!0},_:{value:u}})}b7.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function L_e(e){return!e.ctrlKey&&!e.button}function F_e(){return this.parentNode}function V_e(e,r){return r??{x:e.x,y:e.y}}function q_e(){return navigator.maxTouchPoints||"ontouchstart"in this}function FL(){var e=L_e,r=F_e,n=V_e,o=q_e,i={},a=kx("start","drag","end"),l=0,s,c,d,u,p=0;function f($){$.on("mousedown.drag",g).filter(o).on("touchstart.drag",x).on("touchmove.drag",k,O_e).on("touchend.drag touchcancel.drag",C).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g($,R){if(!(u||!e.call(this,$,R))){var T=_(this,r.call(this,$,R),$,R,"mouse");T&&(Ei($.view).on("mousemove.drag",v,A1).on("mouseup.drag",w,A1),OL($.view),v7($),d=!1,s=$.clientX,c=$.clientY,T("start",$))}}function v($){if(Jh($),!d){var R=$.clientX-s,T=$.clientY-c;d=R*R+T*T>p}i.mouse("drag",$)}function w($){Ei($.view).on("mousemove.drag mouseup.drag",null),LL($.view,d),Jh($),i.mouse("end",$)}function x($,R){if(e.call(this,$,R)){var T=$.changedTouches,A=r.call(this,$,R),z=T.length,j,I;for(j=0;j>8&15|r>>4&240,r>>4&15|r&240,(r&15)<<4|r&15,1):n===8?Rx(r>>24&255,r>>16&255,r>>8&255,(r&255)/255):n===4?Rx(r>>12&15|r>>8&240,r>>8&15|r>>4&240,r>>4&15|r&240,((r&15)<<4|r&15)/255):null):(r=U_e.exec(e))?new ri(r[1],r[2],r[3],1):(r=W_e.exec(e))?new ri(r[1]*255/100,r[2]*255/100,r[3]*255/100,1):(r=G_e.exec(e))?Rx(r[1],r[2],r[3],r[4]):(r=Y_e.exec(e))?Rx(r[1]*255/100,r[2]*255/100,r[3]*255/100,r[4]):(r=X_e.exec(e))?XL(r[1],r[2]/100,r[3]/100,1):(r=K_e.exec(e))?XL(r[1],r[2]/100,r[3]/100,r[4]):qL.hasOwnProperty(e)?WL(qL[e]):e==="transparent"?new ri(NaN,NaN,NaN,0):null}function WL(e){return new ri(e>>16&255,e>>8&255,e&255,1)}function Rx(e,r,n,o){return o<=0&&(e=r=n=NaN),new ri(e,r,n,o)}function J_e(e){return e instanceof D1||(e=Hu(e)),e?(e=e.rgb(),new ri(e.r,e.g,e.b,e.opacity)):new ri}function w7(e,r,n,o){return arguments.length===1?J_e(e):new ri(e,r,n,o??1)}function ri(e,r,n,o){this.r=+e,this.g=+r,this.b=+n,this.opacity=+o}x7(ri,w7,VL(D1,{brighter(e){return e=e==null?$x:Math.pow($x,e),new ri(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?M1:Math.pow(M1,e),new ri(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new ri(Uu(this.r),Uu(this.g),Uu(this.b),zx(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:GL,formatHex:GL,formatHex8:e8e,formatRgb:YL,toString:YL}));function GL(){return`#${Wu(this.r)}${Wu(this.g)}${Wu(this.b)}`}function e8e(){return`#${Wu(this.r)}${Wu(this.g)}${Wu(this.b)}${Wu((isNaN(this.opacity)?1:this.opacity)*255)}`}function YL(){const e=zx(this.opacity);return`${e===1?"rgb(":"rgba("}${Uu(this.r)}, ${Uu(this.g)}, ${Uu(this.b)}${e===1?")":`, ${e})`}`}function zx(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Uu(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Wu(e){return e=Uu(e),(e<16?"0":"")+e.toString(16)}function XL(e,r,n,o){return o<=0?e=r=n=NaN:n<=0||n>=1?e=r=NaN:r<=0&&(e=NaN),new Ya(e,r,n,o)}function KL(e){if(e instanceof Ya)return new Ya(e.h,e.s,e.l,e.opacity);if(e instanceof D1||(e=Hu(e)),!e)return new Ya;if(e instanceof Ya)return e;e=e.rgb();var r=e.r/255,n=e.g/255,o=e.b/255,i=Math.min(r,n,o),a=Math.max(r,n,o),l=NaN,s=a-i,c=(a+i)/2;return s?(r===a?l=(n-o)/s+(n0&&c<1?0:l,new Ya(l,s,c,e.opacity)}function t8e(e,r,n,o){return arguments.length===1?KL(e):new Ya(e,r,n,o??1)}function Ya(e,r,n,o){this.h=+e,this.s=+r,this.l=+n,this.opacity=+o}x7(Ya,t8e,VL(D1,{brighter(e){return e=e==null?$x:Math.pow($x,e),new Ya(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?M1:Math.pow(M1,e),new Ya(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,r=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,o=n+(n<.5?n:1-n)*r,i=2*n-o;return new ri(k7(e>=240?e-240:e+120,i,o),k7(e,i,o),k7(e<120?e+240:e-120,i,o),this.opacity)},clamp(){return new Ya(ZL(this.h),Tx(this.s),Tx(this.l),zx(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 e=zx(this.opacity);return`${e===1?"hsl(":"hsla("}${ZL(this.h)}, ${Tx(this.s)*100}%, ${Tx(this.l)*100}%${e===1?")":`, ${e})`}`}}));function ZL(e){return e=(e||0)%360,e<0?e+360:e}function Tx(e){return Math.max(0,Math.min(1,e||0))}function k7(e,r,n){return(e<60?r+(n-r)*e/60:e<180?n:e<240?r+(n-r)*(240-e)/60:r)*255}const _7=e=>()=>e;function r8e(e,r){return function(n){return e+n*r}}function n8e(e,r,n){return e=Math.pow(e,n),r=Math.pow(r,n)-e,n=1/n,function(o){return Math.pow(e+o*r,n)}}function o8e(e){return(e=+e)==1?QL:function(r,n){return n-r?n8e(r,n,e):_7(isNaN(r)?n:r)}}function QL(e,r){var n=r-e;return n?r8e(e,n):_7(isNaN(e)?r:e)}const jx=(function e(r){var n=o8e(r);function o(i,a){var l=n((i=w7(i)).r,(a=w7(a)).r),s=n(i.g,a.g),c=n(i.b,a.b),d=QL(i.opacity,a.opacity);return function(u){return i.r=l(u),i.g=s(u),i.b=c(u),i.opacity=d(u),i+""}}return o.gamma=e,o})(1);function i8e(e,r){r||(r=[]);var n=e?Math.min(r.length,e.length):0,o=r.slice(),i;return function(a){for(i=0;in&&(a=r.slice(n,a),s[l]?s[l]+=a:s[++l]=a),(o=o[0])===(i=i[0])?s[l]?s[l]+=i:s[++l]=i:(s[++l]=null,c.push({i:l,x:Ul(o,i)})),n=E7.lastIndex;return n180?u+=360:u-d>180&&(d+=360),f.push({i:p.push(i(p)+"rotate(",null,o)-2,x:Ul(d,u)})):u&&p.push(i(p)+"rotate("+u+o)}function s(d,u,p,f){d!==u?f.push({i:p.push(i(p)+"skewX(",null,o)-2,x:Ul(d,u)}):u&&p.push(i(p)+"skewX("+u+o)}function c(d,u,p,f,g,v){if(d!==p||u!==f){var w=g.push(i(g)+"scale(",null,",",null,")");v.push({i:w-4,x:Ul(d,p)},{i:w-2,x:Ul(u,f)})}else(p!==1||f!==1)&&g.push(i(g)+"scale("+p+","+f+")")}return function(d,u){var p=[],f=[];return d=e(d),u=e(u),a(d.translateX,d.translateY,u.translateX,u.translateY,p,f),l(d.rotate,u.rotate,p,f),s(d.skewX,u.skewX,p,f),c(d.scaleX,d.scaleY,u.scaleX,u.scaleY,p,f),d=u=null,function(g){for(var v=-1,w=f.length,x;++v=0&&e._call.call(void 0,r),e=e._next;--tf}function sF(){Gu=(Nx=L1.now())+Px,tf=B1=0;try{x8e()}finally{tf=0,k8e(),Gu=0}}function w8e(){var e=L1.now(),r=e-Nx;r>iF&&(Px-=r,Nx=e)}function k8e(){for(var e,r=Mx,n,o=1/0;r;)r._call?(o>r._time&&(o=r._time),e=r,r=r._next):(n=r._next,r._next=null,r=e?e._next=n:Mx=n);O1=e,$7(o)}function $7(e){if(!tf){B1&&(B1=clearTimeout(B1));var r=e-Gu;r>24?(e<1/0&&(B1=setTimeout(sF,e-L1.now()-Px)),I1&&(I1=clearInterval(I1))):(I1||(Nx=L1.now(),I1=setInterval(w8e,iF)),tf=1,aF(sF))}}function cF(e,r,n){var o=new Bx;return r=r==null?0:+r,o.restart(i=>{o.stop(),e(i+r)},r,n),o}var _8e=kx("start","end","cancel","interrupt"),S8e=[],dF=0,uF=1,R7=2,Ix=3,pF=4,z7=5,Ox=6;function Lx(e,r,n,o,i,a){var l=e.__transition;if(!l)e.__transition={};else if(n in l)return;E8e(e,n,{name:r,index:o,group:i,on:_8e,tween:S8e,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:dF})}function T7(e,r){var n=Xa(e,r);if(n.state>dF)throw new Error("too late; already scheduled");return n}function Wl(e,r){var n=Xa(e,r);if(n.state>Ix)throw new Error("too late; already running");return n}function Xa(e,r){var n=e.__transition;if(!n||!(n=n[r]))throw new Error("transition not found");return n}function E8e(e,r,n){var o=e.__transition,i;o[r]=n,n.timer=lF(a,0,n.time);function a(d){n.state=uF,n.timer.restart(l,n.delay,n.time),n.delay<=d&&l(d-n.delay)}function l(d){var u,p,f,g;if(n.state!==uF)return c();for(u in o)if(g=o[u],g.name===n.name){if(g.state===Ix)return cF(l);g.state===pF?(g.state=Ox,g.timer.stop(),g.on.call("interrupt",e,e.__data__,g.index,g.group),delete o[u]):+uR7&&o.state=0&&(r=r.slice(0,n)),!r||r==="start"})}function t7e(e,r,n){var o,i,a=e7e(r)?T7:Wl;return function(){var l=a(this,e),s=l.on;s!==o&&(i=(o=s).copy()).on(r,n),l.on=i}}function r7e(e,r){var n=this._id;return arguments.length<2?Xa(this.node(),n).on.on(e):this.each(t7e(n,e,r))}function n7e(e){return function(){var r=this.parentNode;for(var n in this.__transition)if(+n!==e)return;r&&r.removeChild(this)}}function o7e(){return this.on("end.remove",n7e(this._id))}function i7e(e){var r=this._name,n=this._id;typeof e!="function"&&(e=g7(e));for(var o=this._groups,i=o.length,a=new Array(i),l=0;l()=>e;function T7e(e,{sourceEvent:r,target:n,transform:o,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:r,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:o,enumerable:!0,configurable:!0},_:{value:i}})}function Us(e,r,n){this.k=e,this.x=r,this.y=n}Us.prototype={constructor:Us,scale:function(e){return e===1?this:new Us(this.k*e,this.x,this.y)},translate:function(e,r){return e===0&r===0?this:new Us(this.k,this.x+this.k*e,this.y+this.k*r)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var qx=new Us(1,0,0);gF.prototype=Us.prototype;function gF(e){for(;!e.__zoom;)if(!(e=e.parentNode))return qx;return e.__zoom}function A7(e){e.stopImmediatePropagation()}function F1(e){e.preventDefault(),e.stopImmediatePropagation()}function j7e(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function A7e(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function yF(){return this.__zoom||qx}function D7e(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function M7e(){return navigator.maxTouchPoints||"ontouchstart"in this}function N7e(e,r,n){var o=e.invertX(r[0][0])-n[0][0],i=e.invertX(r[1][0])-n[1][0],a=e.invertY(r[0][1])-n[0][1],l=e.invertY(r[1][1])-n[1][1];return e.translate(i>o?(o+i)/2:Math.min(0,o)||Math.max(0,i),l>a?(a+l)/2:Math.min(0,a)||Math.max(0,l))}function vF(){var e=j7e,r=A7e,n=N7e,o=D7e,i=M7e,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Dx,d=kx("start","zoom","end"),u,p,f,g=500,v=150,w=0,x=10;function k(M){M.property("__zoom",yF).on("wheel.zoom",z,{passive:!1}).on("mousedown.zoom",j).on("dblclick.zoom",I).filter(i).on("touchstart.zoom",P).on("touchmove.zoom",L).on("touchend.zoom touchcancel.zoom",H).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}k.transform=function(M,V,B,F){var q=M.selection?M.selection():M;q.property("__zoom",yF),M!==q?R(M,V,B,F):q.interrupt().each(function(){T(this,arguments).event(F).start().zoom(null,typeof V=="function"?V.apply(this,arguments):V).end()})},k.scaleBy=function(M,V,B,F){k.scaleTo(M,function(){var q=this.__zoom.k,G=typeof V=="function"?V.apply(this,arguments):V;return q*G},B,F)},k.scaleTo=function(M,V,B,F){k.transform(M,function(){var q=r.apply(this,arguments),G=this.__zoom,U=B==null?$(q):typeof B=="function"?B.apply(this,arguments):B,Y=G.invert(U),K=typeof V=="function"?V.apply(this,arguments):V;return n(_(C(G,K),U,Y),q,l)},B,F)},k.translateBy=function(M,V,B,F){k.transform(M,function(){return n(this.__zoom.translate(typeof V=="function"?V.apply(this,arguments):V,typeof B=="function"?B.apply(this,arguments):B),r.apply(this,arguments),l)},null,F)},k.translateTo=function(M,V,B,F,q){k.transform(M,function(){var G=r.apply(this,arguments),U=this.__zoom,Y=F==null?$(G):typeof F=="function"?F.apply(this,arguments):F;return n(qx.translate(Y[0],Y[1]).scale(U.k).translate(typeof V=="function"?-V.apply(this,arguments):-V,typeof B=="function"?-B.apply(this,arguments):-B),G,l)},F,q)};function C(M,V){return V=Math.max(a[0],Math.min(a[1],V)),V===M.k?M:new Us(V,M.x,M.y)}function _(M,V,B){var F=V[0]-B[0]*M.k,q=V[1]-B[1]*M.k;return F===M.x&&q===M.y?M:new Us(M.k,F,q)}function $(M){return[(+M[0][0]+ +M[1][0])/2,(+M[0][1]+ +M[1][1])/2]}function R(M,V,B,F){M.on("start.zoom",function(){T(this,arguments).event(F).start()}).on("interrupt.zoom end.zoom",function(){T(this,arguments).event(F).end()}).tween("zoom",function(){var q=this,G=arguments,U=T(q,G).event(F),Y=r.apply(q,G),K=B==null?$(Y):typeof B=="function"?B.apply(q,G):B,O=Math.max(Y[1][0]-Y[0][0],Y[1][1]-Y[0][1]),W=q.__zoom,Z=typeof V=="function"?V.apply(q,G):V,Q=c(W.invert(K).concat(O/W.k),Z.invert(K).concat(O/Z.k));return function(ie){if(ie===1)ie=Z;else{var te=Q(ie),re=O/te[2];ie=new Us(re,K[0]-te[0]*re,K[1]-te[1]*re)}U.zoom(null,ie)}})}function T(M,V,B){return!B&&M.__zooming||new A(M,V)}function A(M,V){this.that=M,this.args=V,this.active=0,this.sourceEvent=null,this.extent=r.apply(M,V),this.taps=0}A.prototype={event:function(M){return M&&(this.sourceEvent=M),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(M,V){return this.mouse&&M!=="mouse"&&(this.mouse[1]=V.invert(this.mouse[0])),this.touch0&&M!=="touch"&&(this.touch0[1]=V.invert(this.touch0[0])),this.touch1&&M!=="touch"&&(this.touch1[1]=V.invert(this.touch1[0])),this.that.__zoom=V,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(M){var V=Ei(this.that).datum();d.call(M,this.that,new T7e(M,{sourceEvent:this.sourceEvent,target:k,transform:this.that.__zoom,dispatch:d}),V)}};function z(M,...V){if(!e.apply(this,arguments))return;var B=T(this,V).event(M),F=this.__zoom,q=Math.max(a[0],Math.min(a[1],F.k*Math.pow(2,o.apply(this,arguments)))),G=Ga(M);if(B.wheel)(B.mouse[0][0]!==G[0]||B.mouse[0][1]!==G[1])&&(B.mouse[1]=F.invert(B.mouse[0]=G)),clearTimeout(B.wheel);else{if(F.k===q)return;B.mouse=[G,F.invert(G)],Fx(this),B.start()}F1(M),B.wheel=setTimeout(U,v),B.zoom("mouse",n(_(C(F,q),B.mouse[0],B.mouse[1]),B.extent,l));function U(){B.wheel=null,B.end()}}function j(M,...V){if(f||!e.apply(this,arguments))return;var B=M.currentTarget,F=T(this,V,!0).event(M),q=Ei(M.view).on("mousemove.zoom",K,!0).on("mouseup.zoom",O,!0),G=Ga(M,B),U=M.clientX,Y=M.clientY;OL(M.view),A7(M),F.mouse=[G,this.__zoom.invert(G)],Fx(this),F.start();function K(W){if(F1(W),!F.moved){var Z=W.clientX-U,Q=W.clientY-Y;F.moved=Z*Z+Q*Q>w}F.event(W).zoom("mouse",n(_(F.that.__zoom,F.mouse[0]=Ga(W,B),F.mouse[1]),F.extent,l))}function O(W){q.on("mousemove.zoom mouseup.zoom",null),LL(W.view,F.moved),F1(W),F.event(W).end()}}function I(M,...V){if(e.apply(this,arguments)){var B=this.__zoom,F=Ga(M.changedTouches?M.changedTouches[0]:M,this),q=B.invert(F),G=B.k*(M.shiftKey?.5:2),U=n(_(C(B,G),F,q),r.apply(this,V),l);F1(M),s>0?Ei(this).transition().duration(s).call(R,U,F,M):Ei(this).call(k.transform,U,F,M)}}function P(M,...V){if(e.apply(this,arguments)){var B=M.touches,F=B.length,q=T(this,V,M.changedTouches.length===F).event(M),G,U,Y,K;for(A7(M),U=0;U"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"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.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:r,sourceHandle:n,targetHandle:o})=>`Couldn't create edge for ${e} handle id: "${e==="source"?n:o}", edge id: ${r}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},V1=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],bF=["Enter"," ","Escape"],xF={"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:e,x:r,y:n})=>`Moved selected node ${e}. New position, x: ${r}, y: ${n}`,"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 rf;(function(e){e.Strict="strict",e.Loose="loose"})(rf||(rf={}));var Yu;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(Yu||(Yu={}));var q1;(function(e){e.Partial="partial",e.Full="full"})(q1||(q1={}));const wF={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var id;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(id||(id={}));var Hx;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(Hx||(Hx={}));var Ue;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(Ue||(Ue={}));const kF={[Ue.Left]:Ue.Right,[Ue.Right]:Ue.Left,[Ue.Top]:Ue.Bottom,[Ue.Bottom]:Ue.Top};function _F(e){return e===null?null:e?"valid":"invalid"}const SF=e=>"id"in e&&"source"in e&&"target"in e,P7e=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),D7=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),H1=(e,r=[0,0])=>{const{width:n,height:o}=_o(e),i=e.origin??r,a=n*i[0],l=o*i[1];return{x:e.position.x-a,y:e.position.y-l}},EF=(e,r={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((o,i)=>{const a=typeof i=="string";let l=!r.nodeLookup&&!a?i:void 0;r.nodeLookup&&(l=a?r.nodeLookup.get(i):D7(i)?i:r.nodeLookup.get(i.id));const s=l?Gx(l,r.nodeOrigin):{x:0,y:0,x2:0,y2:0};return Ux(o,s)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return Wx(n)},nf=(e,r={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},o=!1;return e.forEach(i=>{(r.filter===void 0||r.filter(i))&&(n=Ux(n,Gx(i)),o=!0)}),o?Wx(n):{x:0,y:0,width:0,height:0}},M7=(e,r,[n,o,i]=[0,0,1],a=!1,l=!1)=>{const s={...G1(r,[n,o,i]),width:r.width/i,height:r.height/i},c=[];for(const d of e.values()){const{measured:u,selectable:p=!0,hidden:f=!1}=d;if(l&&!p||f)continue;const g=u.width??d.width??d.initialWidth??null,v=u.height??d.height??d.initialHeight??null,w=U1(s,Ku(d)),x=(g??0)*(v??0),k=a&&w>0;(!d.internals.handleBounds||k||w>=x||d.dragging)&&c.push(d)}return c},B7e=(e,r)=>{const n=new Set;return e.forEach(o=>{n.add(o.id)}),r.filter(o=>n.has(o.source)||n.has(o.target))};function I7e(e,r){const n=new Map,o=r?.nodes?new Set(r.nodes.map(i=>i.id)):null;return e.forEach(i=>{i.measured.width&&i.measured.height&&(r?.includeHiddenNodes||!i.hidden)&&(!o||o.has(i.id))&&n.set(i.id,i)}),n}async function O7e({nodes:e,width:r,height:n,panZoom:o,minZoom:i,maxZoom:a},l){if(e.size===0)return Promise.resolve(!0);const s=I7e(e,l),c=nf(s),d=Ws(c,r,n,l?.minZoom??i,l?.maxZoom??a,l?.padding??.1);return await o.setViewport(d,{duration:l?.duration,ease:l?.ease,interpolate:l?.interpolate}),Promise.resolve(!0)}function CF({nodeId:e,nextPosition:r,nodeLookup:n,nodeOrigin:o=[0,0],nodeExtent:i,onError:a}){const l=n.get(e),s=l.parentId?n.get(l.parentId):void 0,{x:c,y:d}=s?s.internals.positionAbsolute:{x:0,y:0},u=l.origin??o;let p=l.extent||i;if(l.extent==="parent"&&!l.expandParent)if(!s)a?.("005",Gl.error005());else{const g=s.measured.width,v=s.measured.height;g&&v&&(p=[[c,d],[c+g,d+v]])}else s&&sf(l.extent)&&(p=[[l.extent[0][0]+c,l.extent[0][1]+d],[l.extent[1][0]+c,l.extent[1][1]+d]]);const f=sf(p)?Xu(r,p,l.measured):r;return(l.measured.width===void 0||l.measured.height===void 0)&&a?.("015",Gl.error015()),{position:{x:f.x-c+(l.measured.width??0)*u[0],y:f.y-d+(l.measured.height??0)*u[1]},positionAbsolute:f}}async function L7e({nodesToRemove:e=[],edgesToRemove:r=[],nodes:n,edges:o,onBeforeDelete:i}){const a=new Set(e.map(p=>p.id)),l=[];for(const p of n){if(p.deletable===!1)continue;const f=a.has(p.id),g=!f&&p.parentId&&l.find(v=>v.id===p.parentId);(f||g)&&l.push(p)}const s=new Set(r.map(p=>p.id)),c=o.filter(p=>p.deletable!==!1),d=B7e(l,c);for(const p of c)s.has(p.id)&&!d.find(f=>f.id===p.id)&&d.push(p);if(!i)return{edges:d,nodes:l};const u=await i({nodes:l,edges:d});return typeof u=="boolean"?u?{edges:d,nodes:l}:{edges:[],nodes:[]}:u}const of=(e,r=0,n=1)=>Math.min(Math.max(e,r),n),Xu=(e={x:0,y:0},r,n)=>({x:of(e.x,r[0][0],r[1][0]-(n?.width??0)),y:of(e.y,r[0][1],r[1][1]-(n?.height??0))});function $F(e,r,n){const{width:o,height:i}=_o(n),{x:a,y:l}=n.internals.positionAbsolute;return Xu(e,[[a,l],[a+o,l+i]],r)}const RF=(e,r,n)=>en?-of(Math.abs(e-n),1,r)/r:0,zF=(e,r,n=15,o=40)=>{const i=RF(e.x,o,r.width-o)*n,a=RF(e.y,o,r.height-o)*n;return[i,a]},Ux=(e,r)=>({x:Math.min(e.x,r.x),y:Math.min(e.y,r.y),x2:Math.max(e.x2,r.x2),y2:Math.max(e.y2,r.y2)}),N7=({x:e,y:r,width:n,height:o})=>({x:e,y:r,x2:e+n,y2:r+o}),Wx=({x:e,y:r,x2:n,y2:o})=>({x:e,y:r,width:n-e,height:o-r}),Ku=(e,r=[0,0])=>{const{x:n,y:o}=D7(e)?e.internals.positionAbsolute:H1(e,r);return{x:n,y:o,width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}},Gx=(e,r=[0,0])=>{const{x:n,y:o}=D7(e)?e.internals.positionAbsolute:H1(e,r);return{x:n,y:o,x2:n+(e.measured?.width??e.width??e.initialWidth??0),y2:o+(e.measured?.height??e.height??e.initialHeight??0)}},TF=(e,r)=>Wx(Ux(N7(e),N7(r))),U1=(e,r)=>{const n=Math.max(0,Math.min(e.x+e.width,r.x+r.width)-Math.max(e.x,r.x)),o=Math.max(0,Math.min(e.y+e.height,r.y+r.height)-Math.max(e.y,r.y));return Math.ceil(n*o)},jF=e=>Ka(e.width)&&Ka(e.height)&&Ka(e.x)&&Ka(e.y),Ka=e=>!isNaN(e)&&isFinite(e),F7e=(e,r)=>{},W1=(e,r=[1,1])=>({x:r[0]*Math.round(e.x/r[0]),y:r[1]*Math.round(e.y/r[1])}),G1=({x:e,y:r},[n,o,i],a=!1,l=[1,1])=>{const s={x:(e-n)/i,y:(r-o)/i};return a?W1(s,l):s},Yx=({x:e,y:r},[n,o,i])=>({x:e*i+n,y:r*i+o});function af(e,r){if(typeof e=="number")return Math.floor((r-r/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(n)}if(typeof e=="string"&&e.endsWith("%")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(r*n*.01)}return console.error(`[React Flow] The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function V7e(e,r,n){if(typeof e=="string"||typeof e=="number"){const o=af(e,n),i=af(e,r);return{top:o,right:i,bottom:o,left:i,x:i*2,y:o*2}}if(typeof e=="object"){const o=af(e.top??e.y??0,n),i=af(e.bottom??e.y??0,n),a=af(e.left??e.x??0,r),l=af(e.right??e.x??0,r);return{top:o,right:l,bottom:i,left:a,x:a+l,y:o+i}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function q7e(e,r,n,o,i,a){const{x:l,y:s}=Yx(e,[r,n,o]),{x:c,y:d}=Yx({x:e.x+e.width,y:e.y+e.height},[r,n,o]),u=i-c,p=a-d;return{left:Math.floor(l),top:Math.floor(s),right:Math.floor(u),bottom:Math.floor(p)}}const Ws=(e,r,n,o,i,a)=>{const l=V7e(a,r,n),s=(r-l.x)/e.width,c=(n-l.y)/e.height,d=Math.min(s,c),u=of(d,o,i),p=e.x+e.width/2,f=e.y+e.height/2,g=r/2-p*u,v=n/2-f*u,w=q7e(e,g,v,u,r,n),x={left:Math.min(w.left-l.left,0),top:Math.min(w.top-l.top,0),right:Math.min(w.right-l.right,0),bottom:Math.min(w.bottom-l.bottom,0)};return{x:g-x.left+x.right,y:v-x.top+x.bottom,zoom:u}},lf=()=>typeof navigator<"u"&&navigator?.userAgent?.indexOf("Mac")>=0;function sf(e){return e!=null&&e!=="parent"}function _o(e){return{width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}}function AF(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function DF(e,r={width:0,height:0},n,o,i){const a={...e},l=o.get(n);if(l){const s=l.origin||i;a.x+=l.internals.positionAbsolute.x-(r.width??0)*s[0],a.y+=l.internals.positionAbsolute.y-(r.height??0)*s[1]}return a}function MF(e,r){if(e.size!==r.size)return!1;for(const n of e)if(!r.has(n))return!1;return!0}function H7e(){let e,r;return{promise:new Promise((n,o)=>{e=n,r=o}),resolve:e,reject:r}}function U7e(e){return{...xF,...e||{}}}function Y1(e,{snapGrid:r=[0,0],snapToGrid:n=!1,transform:o,containerBounds:i}){const{x:a,y:l}=Za(e),s=G1({x:a-(i?.left??0),y:l-(i?.top??0)},o),{x:c,y:d}=n?W1(s,r):s;return{xSnapped:c,ySnapped:d,...s}}const P7=e=>({width:e.offsetWidth,height:e.offsetHeight}),NF=e=>e?.getRootNode?.()||window?.document,W7e=["INPUT","SELECT","TEXTAREA"];function PF(e){const r=e.composedPath?.()?.[0]||e.target;return r?.nodeType!==1?!1:W7e.includes(r.nodeName)||r.hasAttribute("contenteditable")||!!r.closest(".nokey")}const BF=e=>"clientX"in e,Za=(e,r)=>{const n=BF(e),o=n?e.clientX:e.touches?.[0].clientX,i=n?e.clientY:e.touches?.[0].clientY;return{x:o-(r?.left??0),y:i-(r?.top??0)}},IF=(e,r,n,o,i)=>{const a=r.querySelectorAll(`.${e}`);return!a||!a.length?null:Array.from(a).map(l=>{const s=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:i,position:l.getAttribute("data-handlepos"),x:(s.left-n.left)/o,y:(s.top-n.top)/o,...P7(l)}})};function OF({sourceX:e,sourceY:r,targetX:n,targetY:o,sourceControlX:i,sourceControlY:a,targetControlX:l,targetControlY:s}){const c=e*.125+i*.375+l*.375+n*.125,d=r*.125+a*.375+s*.375+o*.125,u=Math.abs(c-e),p=Math.abs(d-r);return[c,d,u,p]}function Xx(e,r){return e>=0?.5*e:r*25*Math.sqrt(-e)}function LF({pos:e,x1:r,y1:n,x2:o,y2:i,c:a}){switch(e){case Ue.Left:return[r-Xx(r-o,a),n];case Ue.Right:return[r+Xx(o-r,a),n];case Ue.Top:return[r,n-Xx(n-i,a)];case Ue.Bottom:return[r,n+Xx(i-n,a)]}}function Kx({sourceX:e,sourceY:r,sourcePosition:n=Ue.Bottom,targetX:o,targetY:i,targetPosition:a=Ue.Top,curvature:l=.25}){const[s,c]=LF({pos:n,x1:e,y1:r,x2:o,y2:i,c:l}),[d,u]=LF({pos:a,x1:o,y1:i,x2:e,y2:r,c:l}),[p,f,g,v]=OF({sourceX:e,sourceY:r,targetX:o,targetY:i,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:u});return[`M${e},${r} C${s},${c} ${d},${u} ${o},${i}`,p,f,g,v]}function FF({sourceX:e,sourceY:r,targetX:n,targetY:o}){const i=Math.abs(n-e)/2,a=n0}const X7e=({source:e,sourceHandle:r,target:n,targetHandle:o})=>`xy-edge__${e}${r||""}-${n}${o||""}`,K7e=(e,r)=>r.some(n=>n.source===e.source&&n.target===e.target&&(n.sourceHandle===e.sourceHandle||!n.sourceHandle&&!e.sourceHandle)&&(n.targetHandle===e.targetHandle||!n.targetHandle&&!e.targetHandle)),Z7e=(e,r,n={})=>{if(!e.source||!e.target)return r;const o=n.getEdgeId||X7e;let i;return SF(e)?i={...e}:i={...e,id:o(e)},K7e(i,r)?r:(i.sourceHandle===null&&delete i.sourceHandle,i.targetHandle===null&&delete i.targetHandle,r.concat(i))};function VF({sourceX:e,sourceY:r,targetX:n,targetY:o}){const[i,a,l,s]=FF({sourceX:e,sourceY:r,targetX:n,targetY:o});return[`M ${e},${r}L ${n},${o}`,i,a,l,s]}const qF={[Ue.Left]:{x:-1,y:0},[Ue.Right]:{x:1,y:0},[Ue.Top]:{x:0,y:-1},[Ue.Bottom]:{x:0,y:1}},Q7e=({source:e,sourcePosition:r=Ue.Bottom,target:n})=>r===Ue.Left||r===Ue.Right?e.xMath.sqrt(Math.pow(r.x-e.x,2)+Math.pow(r.y-e.y,2));function J7e({source:e,sourcePosition:r=Ue.Bottom,target:n,targetPosition:o=Ue.Top,center:i,offset:a,stepPosition:l}){const s=qF[r],c=qF[o],d={x:e.x+s.x*a,y:e.y+s.y*a},u={x:n.x+c.x*a,y:n.y+c.y*a},p=Q7e({source:d,sourcePosition:r,target:u}),f=p.x!==0?"x":"y",g=p[f];let v=[],w,x;const k={x:0,y:0},C={x:0,y:0},[,,_,$]=FF({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[f]*c[f]===-1){f==="x"?(w=i.x??d.x+(u.x-d.x)*l,x=i.y??(d.y+u.y)/2):(w=i.x??(d.x+u.x)/2,x=i.y??d.y+(u.y-d.y)*l);const R=[{x:w,y:d.y},{x:w,y:u.y}],T=[{x:d.x,y:x},{x:u.x,y:x}];s[f]===g?v=f==="x"?R:T:v=f==="x"?T:R}else{const R=[{x:d.x,y:u.y}],T=[{x:u.x,y:d.y}];if(f==="x"?v=s.x===g?T:R:v=s.y===g?R:T,r===o){const P=Math.abs(e[f]-n[f]);if(P<=a){const L=Math.min(a-1,a-P);s[f]===g?k[f]=(d[f]>e[f]?-1:1)*L:C[f]=(u[f]>n[f]?-1:1)*L}}if(r!==o){const P=f==="x"?"y":"x",L=s[f]===c[P],H=d[P]>u[P],M=d[P]=I?(w=(A.x+z.x)/2,x=v[0].y):(w=v[0].x,x=(A.y+z.y)/2)}return[[e,{x:d.x+k.x,y:d.y+k.y},...v,{x:u.x+C.x,y:u.y+C.y},n],w,x,_,$]}function e9e(e,r,n,o){const i=Math.min(HF(e,r)/2,HF(r,n)/2,o),{x:a,y:l}=r;if(e.x===a&&a===n.x||e.y===l&&l===n.y)return`L${a} ${l}`;if(e.y===l){const d=e.x{let _="";return C>0&&Cn.id===r):e[0])||null}function B7(e,r){return e?typeof e=="string"?e:`${r?`${r}__`:""}${Object.keys(e).sort().map(n=>`${n}=${e[n]}`).join("&")}`:""}function t9e(e,{id:r,defaultColor:n,defaultMarkerStart:o,defaultMarkerEnd:i}){const a=new Set;return e.reduce((l,s)=>([s.markerStart||o,s.markerEnd||i].forEach(c=>{if(c&&typeof c=="object"){const d=B7(c,r);a.has(d)||(l.push({id:d,color:c.color||n,...c}),a.add(d))}}),l),[]).sort((l,s)=>l.id.localeCompare(s.id))}function r9e(e,r,n,o,i){let a=.5;i==="start"?a=0:i==="end"&&(a=1);let l=[(e.x+e.width*a)*r.zoom+r.x,e.y*r.zoom+r.y-o],s=[-100*a,-100];switch(n){case Ue.Right:l=[(e.x+e.width)*r.zoom+r.x+o,(e.y+e.height*a)*r.zoom+r.y],s=[0,-100*a];break;case Ue.Bottom:l[1]=(e.y+e.height)*r.zoom+r.y+o,s[1]=0;break;case Ue.Left:l=[e.x*r.zoom+r.x-o,(e.y+e.height*a)*r.zoom+r.y],s=[-100,-100*a];break}return`translate(${l[0]}px, ${l[1]}px) translate(${s[0]}%, ${s[1]}%)`}const XF=1e3,n9e=10,I7={nodeOrigin:[0,0],nodeExtent:V1,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},o9e={...I7,checkEquality:!0};function O7(e,r){const n={...e};for(const o in r)r[o]!==void 0&&(n[o]=r[o]);return n}function i9e(e,r,n){const o=O7(I7,n);for(const i of e.values())if(i.parentId)V7(i,e,r,o);else{const a=H1(i,o.nodeOrigin),l=sf(i.extent)?i.extent:o.nodeExtent,s=Xu(a,l,_o(i));i.internals.positionAbsolute=s}}function a9e(e,r){if(!e.handles)return e.measured?r?.internals.handleBounds:void 0;const n=[],o=[];for(const i of e.handles){const a={id:i.id,width:i.width??1,height:i.height??1,nodeId:e.id,x:i.x,y:i.y,position:i.position,type:i.type};i.type==="source"?n.push(a):i.type==="target"&&o.push(a)}return{source:n,target:o}}function L7(e){return e==="manual"}function F7(e,r,n,o={}){const i=O7(o9e,o),a={i:0},l=new Map(r),s=i?.elevateNodesOnSelect&&!L7(i.zIndexMode)?XF:0;let c=e.length>0;r.clear(),n.clear();for(const d of e){let u=l.get(d.id);if(i.checkEquality&&d===u?.internals.userNode)r.set(d.id,u);else{const p=H1(d,i.nodeOrigin),f=sf(d.extent)?d.extent:i.nodeExtent,g=Xu(p,f,_o(d));u={...i.defaults,...d,measured:{width:d.measured?.width,height:d.measured?.height},internals:{positionAbsolute:g,handleBounds:a9e(d,u),z:KF(d,s,i.zIndexMode),userNode:d}},r.set(d.id,u)}(u.measured===void 0||u.measured.width===void 0||u.measured.height===void 0)&&!u.hidden&&(c=!1),d.parentId&&V7(u,r,n,o,a)}return c}function l9e(e,r){if(!e.parentId)return;const n=r.get(e.parentId);n?n.set(e.id,e):r.set(e.parentId,new Map([[e.id,e]]))}function V7(e,r,n,o,i){const{elevateNodesOnSelect:a,nodeOrigin:l,nodeExtent:s,zIndexMode:c}=O7(I7,o),d=e.parentId,u=r.get(d);if(!u){console.warn(`Parent node ${d} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}l9e(e,n),i&&!u.parentId&&u.internals.rootParentIndex===void 0&&c==="auto"&&(u.internals.rootParentIndex=++i.i,u.internals.z=u.internals.z+i.i*n9e),i&&u.internals.rootParentIndex!==void 0&&(i.i=u.internals.rootParentIndex);const p=a&&!L7(c)?XF:0,{x:f,y:g,z:v}=s9e(e,u,l,s,p,c),{positionAbsolute:w}=e.internals,x=f!==w.x||g!==w.y;(x||v!==e.internals.z)&&r.set(e.id,{...e,internals:{...e.internals,positionAbsolute:x?{x:f,y:g}:w,z:v}})}function KF(e,r,n){const o=Ka(e.zIndex)?e.zIndex:0;return L7(n)?o:o+(e.selected?r:0)}function s9e(e,r,n,o,i,a){const{x:l,y:s}=r.internals.positionAbsolute,c=_o(e),d=H1(e,n),u=sf(e.extent)?Xu(d,e.extent,c):d;let p=Xu({x:l+u.x,y:s+u.y},o,c);e.extent==="parent"&&(p=$F(p,c,r));const f=KF(e,i,a),g=r.internals.z??0;return{x:p.x,y:p.y,z:g>=f?g+1:f}}function q7(e,r,n,o=[0,0]){const i=[],a=new Map;for(const l of e){const s=r.get(l.parentId);if(!s)continue;const c=a.get(l.parentId)?.expandedRect??Ku(s),d=TF(c,l.rect);a.set(l.parentId,{expandedRect:d,parent:s})}return a.size>0&&a.forEach(({expandedRect:l,parent:s},c)=>{const d=s.internals.positionAbsolute,u=_o(s),p=s.origin??o,f=l.x0||g>0||x||k)&&(i.push({id:c,type:"position",position:{x:s.position.x-f+x,y:s.position.y-g+k}}),n.get(c)?.forEach(C=>{e.some(_=>_.id===C.id)||i.push({id:C.id,type:"position",position:{x:C.position.x+f,y:C.position.y+g}})})),(u.width0){const g=q7(f,r,n,i);d.push(...g)}return{changes:d,updatedInternals:c}}async function d9e({delta:e,panZoom:r,transform:n,translateExtent:o,width:i,height:a}){if(!r||!e.x&&!e.y)return Promise.resolve(!1);const l=await r.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[i,a]],o),s=!!l&&(l.x!==n[0]||l.y!==n[1]||l.k!==n[2]);return Promise.resolve(s)}function ZF(e,r,n,o,i,a){let l=i;const s=o.get(l)||new Map;o.set(l,s.set(n,r)),l=`${i}-${e}`;const c=o.get(l)||new Map;if(o.set(l,c.set(n,r)),a){l=`${i}-${e}-${a}`;const d=o.get(l)||new Map;o.set(l,d.set(n,r))}}function QF(e,r,n){e.clear(),r.clear();for(const o of n){const{source:i,target:a,sourceHandle:l=null,targetHandle:s=null}=o,c={edgeId:o.id,source:i,target:a,sourceHandle:l,targetHandle:s},d=`${i}-${l}--${a}-${s}`,u=`${a}-${s}--${i}-${l}`;ZF("source",c,u,e,i,l),ZF("target",c,d,e,a,s),r.set(o.id,o)}}function JF(e,r){if(!e.parentId)return!1;const n=r.get(e.parentId);return n?n.selected?!0:JF(n,r):!1}function eV(e,r,n){let o=e;do{if(o?.matches?.(r))return!0;if(o===n)return!1;o=o?.parentElement}while(o);return!1}function u9e(e,r,n,o){const i=new Map;for(const[a,l]of e)if((l.selected||l.id===o)&&(!l.parentId||!JF(l,e))&&(l.draggable||r&&typeof l.draggable>"u")){const s=e.get(a);s&&i.set(a,{id:a,position:s.position||{x:0,y:0},distance:{x:n.x-s.internals.positionAbsolute.x,y:n.y-s.internals.positionAbsolute.y},extent:s.extent,parentId:s.parentId,origin:s.origin,expandParent:s.expandParent,internals:{positionAbsolute:s.internals.positionAbsolute||{x:0,y:0}},measured:{width:s.measured.width??0,height:s.measured.height??0}})}return i}function H7({nodeId:e,dragItems:r,nodeLookup:n,dragging:o=!0}){const i=[];for(const[l,s]of r){const c=n.get(l)?.internals.userNode;c&&i.push({...c,position:s.position,dragging:o})}if(!e)return[i[0],i];const a=n.get(e)?.internals.userNode;return[a?{...a,position:r.get(e)?.position||a.position,dragging:o}:i[0],i]}function p9e({dragItems:e,snapGrid:r,x:n,y:o}){const i=e.values().next().value;if(!i)return null;const a={x:n-i.distance.x,y:o-i.distance.y},l=W1(a,r);return{x:l.x-a.x,y:l.y-a.y}}function h9e({onNodeMouseDown:e,getStoreItems:r,onDragStart:n,onDrag:o,onDragStop:i}){let a={x:null,y:null},l=0,s=new Map,c=!1,d={x:0,y:0},u=null,p=!1,f=null,g=!1,v=!1,w=null;function x({noDragClassName:C,handleSelector:_,domNode:$,isSelectable:R,nodeId:T,nodeClickDistance:A=0}){f=Ei($);function z({x:L,y:H}){const{nodeLookup:M,nodeExtent:V,snapGrid:B,snapToGrid:F,nodeOrigin:q,onNodeDrag:G,onSelectionDrag:U,onError:Y,updateNodePositions:K}=r();a={x:L,y:H};let O=!1;const W=s.size>1,Z=W&&V?N7(nf(s)):null,Q=W&&F?p9e({dragItems:s,snapGrid:B,x:L,y:H}):null;for(const[ie,te]of s){if(!M.has(ie))continue;let re={x:L-te.distance.x,y:H-te.distance.y};F&&(re=Q?{x:Math.round(re.x+Q.x),y:Math.round(re.y+Q.y)}:W1(re,B));let ue=null;if(W&&V&&!te.extent&&Z){const{positionAbsolute:pe}=te.internals,xe=pe.x-Z.x+V[0][0],je=pe.x+te.measured.width-Z.x2+V[1][0],Be=pe.y-Z.y+V[0][1],Je=pe.y+te.measured.height-Z.y2+V[1][1];ue=[[xe,Be],[je,Je]]}const{position:_e,positionAbsolute:ce}=CF({nodeId:ie,nextPosition:re,nodeLookup:M,nodeExtent:ue||V,nodeOrigin:q,onError:Y});O=O||te.position.x!==_e.x||te.position.y!==_e.y,te.position=_e,te.internals.positionAbsolute=ce}if(v=v||O,!!O&&(K(s,!0),w&&(o||G||!T&&U))){const[ie,te]=H7({nodeId:T,dragItems:s,nodeLookup:M});o?.(w,s,ie,te),G?.(w,ie,te),T||U?.(w,te)}}async function j(){if(!u)return;const{transform:L,panBy:H,autoPanSpeed:M,autoPanOnNodeDrag:V}=r();if(!V){c=!1,cancelAnimationFrame(l);return}const[B,F]=zF(d,u,M);(B!==0||F!==0)&&(a.x=(a.x??0)-B/L[2],a.y=(a.y??0)-F/L[2],await H({x:B,y:F})&&z(a)),l=requestAnimationFrame(j)}function I(L){const{nodeLookup:H,multiSelectionActive:M,nodesDraggable:V,transform:B,snapGrid:F,snapToGrid:q,selectNodesOnDrag:G,onNodeDragStart:U,onSelectionDragStart:Y,unselectNodesAndEdges:K}=r();p=!0,(!G||!R)&&!M&&T&&(H.get(T)?.selected||K()),R&&G&&T&&e?.(T);const O=Y1(L.sourceEvent,{transform:B,snapGrid:F,snapToGrid:q,containerBounds:u});if(a=O,s=u9e(H,V,O,T),s.size>0&&(n||U||!T&&Y)){const[W,Z]=H7({nodeId:T,dragItems:s,nodeLookup:H});n?.(L.sourceEvent,s,W,Z),U?.(L.sourceEvent,W,Z),T||Y?.(L.sourceEvent,Z)}}const P=FL().clickDistance(A).on("start",L=>{const{domNode:H,nodeDragThreshold:M,transform:V,snapGrid:B,snapToGrid:F}=r();u=H?.getBoundingClientRect()||null,g=!1,v=!1,w=L.sourceEvent,M===0&&I(L),a=Y1(L.sourceEvent,{transform:V,snapGrid:B,snapToGrid:F,containerBounds:u}),d=Za(L.sourceEvent,u)}).on("drag",L=>{const{autoPanOnNodeDrag:H,transform:M,snapGrid:V,snapToGrid:B,nodeDragThreshold:F,nodeLookup:q}=r(),G=Y1(L.sourceEvent,{transform:M,snapGrid:V,snapToGrid:B,containerBounds:u});if(w=L.sourceEvent,(L.sourceEvent.type==="touchmove"&&L.sourceEvent.touches.length>1||T&&!q.has(T))&&(g=!0),!g){if(!c&&H&&p&&(c=!0,j()),!p){const U=Za(L.sourceEvent,u),Y=U.x-d.x,K=U.y-d.y;Math.sqrt(Y*Y+K*K)>F&&I(L)}(a.x!==G.xSnapped||a.y!==G.ySnapped)&&s&&p&&(d=Za(L.sourceEvent,u),z(G))}}).on("end",L=>{if(!(!p||g)&&(c=!1,p=!1,cancelAnimationFrame(l),s.size>0)){const{nodeLookup:H,updateNodePositions:M,onNodeDragStop:V,onSelectionDragStop:B}=r();if(v&&(M(s,!1),v=!1),i||V||!T&&B){const[F,q]=H7({nodeId:T,dragItems:s,nodeLookup:H,dragging:!1});i?.(L.sourceEvent,s,F,q),V?.(L.sourceEvent,F,q),T||B?.(L.sourceEvent,q)}}}).filter(L=>{const H=L.target;return!L.button&&(!C||!eV(H,`.${C}`,$))&&(!_||eV(H,_,$))});f.call(P)}function k(){f?.on(".drag",null)}return{update:x,destroy:k}}function f9e(e,r,n){const o=[],i={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const a of r.values())U1(i,Ku(a))>0&&o.push(a);return o}const m9e=250;function g9e(e,r,n,o){let i=[],a=1/0;const l=f9e(e,n,r+m9e);for(const s of l){const c=[...s.internals.handleBounds?.source??[],...s.internals.handleBounds?.target??[]];for(const d of c){if(o.nodeId===d.nodeId&&o.type===d.type&&o.id===d.id)continue;const{x:u,y:p}=Zu(s,d,d.position,!0),f=Math.sqrt(Math.pow(u-e.x,2)+Math.pow(p-e.y,2));f>r||(f1){const s=o.type==="source"?"target":"source";return i.find(c=>c.type===s)??i[0]}return i[0]}function tV(e,r,n,o,i,a=!1){const l=o.get(e);if(!l)return null;const s=i==="strict"?l.internals.handleBounds?.[r]:[...l.internals.handleBounds?.source??[],...l.internals.handleBounds?.target??[]],c=(n?s?.find(d=>d.id===n):s?.[0])??null;return c&&a?{...c,...Zu(l,c,c.position,!0)}:c}function rV(e,r){return e||(r?.classList.contains("target")?"target":r?.classList.contains("source")?"source":null)}function y9e(e,r){let n=null;return r?n=!0:e&&!r&&(n=!1),n}const nV=()=>!0;function v9e(e,{connectionMode:r,connectionRadius:n,handleId:o,nodeId:i,edgeUpdaterType:a,isTarget:l,domNode:s,nodeLookup:c,lib:d,autoPanOnConnect:u,flowId:p,panBy:f,cancelConnection:g,onConnectStart:v,onConnect:w,onConnectEnd:x,isValidConnection:k=nV,onReconnectEnd:C,updateConnection:_,getTransform:$,getFromHandle:R,autoPanSpeed:T,dragThreshold:A=1,handleDomNode:z}){const j=NF(e.target);let I=0,P;const{x:L,y:H}=Za(e),M=rV(a,z),V=s?.getBoundingClientRect();let B=!1;if(!V||!M)return;const F=tV(i,M,o,c,r);if(!F)return;let q=Za(e,V),G=!1,U=null,Y=!1,K=null;function O(){if(!u||!V)return;const[ue,_e]=zF(q,V,T);f({x:ue,y:_e}),I=requestAnimationFrame(O)}const W={...F,nodeId:i,type:M,position:F.position},Z=c.get(i);let Q={inProgress:!0,isValid:null,from:Zu(Z,W,Ue.Left,!0),fromHandle:W,fromPosition:W.position,fromNode:Z,to:q,toHandle:null,toPosition:kF[W.position],toNode:null,pointer:q};function ie(){B=!0,_(Q),v?.(e,{nodeId:i,handleId:o,handleType:M})}A===0&&ie();function te(ue){if(!B){const{x:Be,y:Je}=Za(ue),st=Be-L,Le=Je-H;if(!(st*st+Le*Le>A*A))return;ie()}if(!R()||!W){re(ue);return}const _e=$();q=Za(ue,V),P=g9e(G1(q,_e,!1,[1,1]),n,c,W),G||(O(),G=!0);const ce=oV(ue,{handle:P,connectionMode:r,fromNodeId:i,fromHandleId:o,fromType:l?"target":"source",isValidConnection:k,doc:j,lib:d,flowId:p,nodeLookup:c});K=ce.handleDomNode,U=ce.connection,Y=y9e(!!P,ce.isValid);const pe=c.get(i),xe=pe?Zu(pe,W,Ue.Left,!0):Q.from,je={...Q,from:xe,isValid:Y,to:ce.toHandle&&Y?Yx({x:ce.toHandle.x,y:ce.toHandle.y},_e):q,toHandle:ce.toHandle,toPosition:Y&&ce.toHandle?ce.toHandle.position:kF[W.position],toNode:ce.toHandle?c.get(ce.toHandle.nodeId):null,pointer:q};_(je),Q=je}function re(ue){if(!("touches"in ue&&ue.touches.length>0)){if(B){(P||K)&&U&&Y&&w?.(U);const{inProgress:_e,...ce}=Q,pe={...ce,toPosition:Q.toHandle?Q.toPosition:null};x?.(ue,pe),a&&C?.(ue,pe)}g(),cancelAnimationFrame(I),G=!1,Y=!1,U=null,K=null,j.removeEventListener("mousemove",te),j.removeEventListener("mouseup",re),j.removeEventListener("touchmove",te),j.removeEventListener("touchend",re)}}j.addEventListener("mousemove",te),j.addEventListener("mouseup",re),j.addEventListener("touchmove",te),j.addEventListener("touchend",re)}function oV(e,{handle:r,connectionMode:n,fromNodeId:o,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=nV,nodeLookup:u}){const p=a==="target",f=r?l.querySelector(`.${s}-flow__handle[data-id="${c}-${r?.nodeId}-${r?.id}-${r?.type}"]`):null,{x:g,y:v}=Za(e),w=l.elementFromPoint(g,v),x=w?.classList.contains(`${s}-flow__handle`)?w:f,k={handleDomNode:x,isValid:!1,connection:null,toHandle:null};if(x){const C=rV(void 0,x),_=x.getAttribute("data-nodeid"),$=x.getAttribute("data-handleid"),R=x.classList.contains("connectable"),T=x.classList.contains("connectableend");if(!_||!C)return k;const A={source:p?_:o,sourceHandle:p?$:i,target:p?o:_,targetHandle:p?i:$};k.connection=A;const z=R&&T&&(n===rf.Strict?p&&C==="source"||!p&&C==="target":_!==o||$!==i);k.isValid=z&&d(A),k.toHandle=tV(_,C,$,u,n,!0)}return k}const U7={onPointerDown:v9e,isValid:oV};function b9e({domNode:e,panZoom:r,getTransform:n,getViewScale:o}){const i=Ei(e);function a({translateExtent:s,width:c,height:d,zoomStep:u=1,pannable:p=!0,zoomable:f=!0,inversePan:g=!1}){const v=_=>{if(_.sourceEvent.type!=="wheel"||!r)return;const $=n(),R=_.sourceEvent.ctrlKey&&lf()?10:1,T=-_.sourceEvent.deltaY*(_.sourceEvent.deltaMode===1?.05:_.sourceEvent.deltaMode?1:.002)*u,A=$[2]*Math.pow(2,T*R);r.scaleTo(A)};let w=[0,0];const x=_=>{(_.sourceEvent.type==="mousedown"||_.sourceEvent.type==="touchstart")&&(w=[_.sourceEvent.clientX??_.sourceEvent.touches[0].clientX,_.sourceEvent.clientY??_.sourceEvent.touches[0].clientY])},k=_=>{const $=n();if(_.sourceEvent.type!=="mousemove"&&_.sourceEvent.type!=="touchmove"||!r)return;const R=[_.sourceEvent.clientX??_.sourceEvent.touches[0].clientX,_.sourceEvent.clientY??_.sourceEvent.touches[0].clientY],T=[R[0]-w[0],R[1]-w[1]];w=R;const A=o()*Math.max($[2],Math.log($[2]))*(g?-1:1),z={x:$[0]-T[0]*A,y:$[1]-T[1]*A},j=[[0,0],[c,d]];r.setViewportConstrained({x:z.x,y:z.y,zoom:$[2]},j,s)},C=vF().on("start",x).on("zoom",p?k:null).on("zoom.wheel",f?v:null);i.call(C,{})}function l(){i.on("zoom",null)}return{update:a,destroy:l,pointer:Ga}}const Qx=e=>({x:e.x,y:e.y,zoom:e.k}),W7=({x:e,y:r,zoom:n})=>qx.translate(e,r).scale(n),cf=(e,r)=>e.target.closest(`.${r}`),iV=(e,r)=>r===2&&Array.isArray(e)&&e.includes(2),x9e=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,G7=(e,r=0,n=x9e,o=()=>{})=>{const i=typeof r=="number"&&r>0;return i||o(),i?e.transition().duration(r).ease(n).on("end",o):e},aV=e=>{const r=e.ctrlKey&&lf()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*r};function w9e({zoomPanValues:e,noWheelClassName:r,d3Selection:n,d3Zoom:o,panOnScrollMode:i,panOnScrollSpeed:a,zoomOnPinch:l,onPanZoomStart:s,onPanZoom:c,onPanZoomEnd:d}){return u=>{if(cf(u,r))return u.ctrlKey&&u.preventDefault(),!1;u.preventDefault(),u.stopImmediatePropagation();const p=n.property("__zoom").k||1;if(u.ctrlKey&&l){const x=Ga(u),k=aV(u),C=p*Math.pow(2,k);o.scaleTo(n,C,x,u);return}const f=u.deltaMode===1?20:1;let g=i===Yu.Vertical?0:u.deltaX*f,v=i===Yu.Horizontal?0:u.deltaY*f;!lf()&&u.shiftKey&&i!==Yu.Vertical&&(g=u.deltaY*f,v=0),o.translateBy(n,-(g/p)*a,-(v/p)*a,{internal:!0});const w=Qx(n.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(c?.(u,w),e.panScrollTimeout=setTimeout(()=>{d?.(u,w),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,s?.(u,w))}}function k9e({noWheelClassName:e,preventScrolling:r,d3ZoomHandler:n}){return function(o,i){const a=o.type==="wheel",l=!r&&a&&!o.ctrlKey,s=cf(o,e);if(o.ctrlKey&&a&&s&&o.preventDefault(),l||s)return null;o.preventDefault(),n.call(this,o,i)}}function _9e({zoomPanValues:e,onDraggingChange:r,onPanZoomStart:n}){return o=>{if(o.sourceEvent?.internal)return;const i=Qx(o.transform);e.mouseButton=o.sourceEvent?.button||0,e.isZoomingOrPanning=!0,e.prevViewport=i,o.sourceEvent?.type==="mousedown"&&r(!0),n&&n?.(o.sourceEvent,i)}}function S9e({zoomPanValues:e,panOnDrag:r,onPaneContextMenu:n,onTransformChange:o,onPanZoom:i}){return a=>{e.usedRightMouseButton=!!(n&&iV(r,e.mouseButton??0)),a.sourceEvent?.sync||o([a.transform.x,a.transform.y,a.transform.k]),i&&!a.sourceEvent?.internal&&i?.(a.sourceEvent,Qx(a.transform))}}function E9e({zoomPanValues:e,panOnDrag:r,panOnScroll:n,onDraggingChange:o,onPanZoomEnd:i,onPaneContextMenu:a}){return l=>{if(!l.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,a&&iV(r,e.mouseButton??0)&&!e.usedRightMouseButton&&l.sourceEvent&&a(l.sourceEvent),e.usedRightMouseButton=!1,o(!1),i)){const s=Qx(l.transform);e.prevViewport=s,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{i?.(l.sourceEvent,s)},n?150:0)}}}function C9e({zoomActivationKeyPressed:e,zoomOnScroll:r,zoomOnPinch:n,panOnDrag:o,panOnScroll:i,zoomOnDoubleClick:a,userSelectionActive:l,noWheelClassName:s,noPanClassName:c,lib:d,connectionInProgress:u}){return p=>{const f=e||r,g=n&&p.ctrlKey,v=p.type==="wheel";if(p.button===1&&p.type==="mousedown"&&(cf(p,`${d}-flow__node`)||cf(p,`${d}-flow__edge`)))return!0;if(!o&&!f&&!i&&!a&&!n||l||u&&!v||cf(p,s)&&v||cf(p,c)&&(!v||i&&v&&!e)||!n&&p.ctrlKey&&v)return!1;if(!n&&p.type==="touchstart"&&p.touches?.length>1)return p.preventDefault(),!1;if(!f&&!i&&!g&&v||!o&&(p.type==="mousedown"||p.type==="touchstart")||Array.isArray(o)&&!o.includes(p.button)&&p.type==="mousedown")return!1;const w=Array.isArray(o)&&o.includes(p.button)||!p.button||p.button<=1;return(!p.ctrlKey||v)&&w}}function $9e({domNode:e,minZoom:r,maxZoom:n,translateExtent:o,viewport:i,onPanZoom:a,onPanZoomStart:l,onPanZoomEnd:s,onDraggingChange:c}){const d={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},u=e.getBoundingClientRect(),p=vF().scaleExtent([r,n]).translateExtent(o),f=Ei(e).call(p);C({x:i.x,y:i.y,zoom:of(i.zoom,r,n)},[[0,0],[u.width,u.height]],o);const g=f.on("wheel.zoom"),v=f.on("dblclick.zoom");p.wheelDelta(aV);function w(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?P1:Dx).transform(G7(f,L?.duration,L?.ease,()=>H(!0)),P)}):Promise.resolve(!1)}function x({noWheelClassName:P,noPanClassName:L,onPaneContextMenu:H,userSelectionActive:M,panOnScroll:V,panOnDrag:B,panOnScrollMode:F,panOnScrollSpeed:q,preventScrolling:G,zoomOnPinch:U,zoomOnScroll:Y,zoomOnDoubleClick:K,zoomActivationKeyPressed:O,lib:W,onTransformChange:Z,connectionInProgress:Q,paneClickDistance:ie,selectionOnDrag:te}){M&&!d.isZoomingOrPanning&&k();const re=V&&!O&&!M;p.clickDistance(te?1/0:!Ka(ie)||ie<0?0:ie);const ue=re?w9e({zoomPanValues:d,noWheelClassName:P,d3Selection:f,d3Zoom:p,panOnScrollMode:F,panOnScrollSpeed:q,zoomOnPinch:U,onPanZoomStart:l,onPanZoom:a,onPanZoomEnd:s}):k9e({noWheelClassName:P,preventScrolling:G,d3ZoomHandler:g});if(f.on("wheel.zoom",ue,{passive:!1}),!M){const ce=_9e({zoomPanValues:d,onDraggingChange:c,onPanZoomStart:l});p.on("start",ce);const pe=S9e({zoomPanValues:d,panOnDrag:B,onPaneContextMenu:!!H,onPanZoom:a,onTransformChange:Z});p.on("zoom",pe);const xe=E9e({zoomPanValues:d,panOnDrag:B,panOnScroll:V,onPaneContextMenu:H,onPanZoomEnd:s,onDraggingChange:c});p.on("end",xe)}const _e=C9e({zoomActivationKeyPressed:O,panOnDrag:B,zoomOnScroll:Y,panOnScroll:V,zoomOnDoubleClick:K,zoomOnPinch:U,userSelectionActive:M,noPanClassName:L,noWheelClassName:P,lib:W,connectionInProgress:Q});p.filter(_e),K?f.on("dblclick.zoom",v):f.on("dblclick.zoom",null)}function k(){p.on("zoom",null)}async function C(P,L,H){const M=W7(P),V=p?.constrain()(M,L,H);return V&&await w(V),new Promise(B=>B(V))}async function _(P,L){const H=W7(P);return await w(H,L),new Promise(M=>M(H))}function $(P){if(f){const L=W7(P),H=f.property("__zoom");(H.k!==P.zoom||H.x!==P.x||H.y!==P.y)&&p?.transform(f,L,null,{sync:!0})}}function R(){const P=f?gF(f.node()):{x:0,y:0,k:1};return{x:P.x,y:P.y,zoom:P.k}}function T(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?P1:Dx).scaleTo(G7(f,L?.duration,L?.ease,()=>H(!0)),P)}):Promise.resolve(!1)}function A(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?P1:Dx).scaleBy(G7(f,L?.duration,L?.ease,()=>H(!0)),P)}):Promise.resolve(!1)}function z(P){p?.scaleExtent(P)}function j(P){p?.translateExtent(P)}function I(P){const L=!Ka(P)||P<0?0:P;p?.clickDistance(L)}return{update:x,destroy:k,setViewport:_,setViewportConstrained:C,getViewport:R,scaleTo:T,scaleBy:A,setScaleExtent:z,setTranslateExtent:j,syncViewport:$,setClickDistance:I}}var df;(function(e){e.Line="line",e.Handle="handle"})(df||(df={}));function R9e({width:e,prevWidth:r,height:n,prevHeight:o,affectsX:i,affectsY:a}){const l=e-r,s=n-o,c=[l>0?1:l<0?-1:0,s>0?1:s<0?-1:0];return l&&i&&(c[0]=c[0]*-1),s&&a&&(c[1]=c[1]*-1),c}function lV(e){const r=e.includes("right")||e.includes("left"),n=e.includes("bottom")||e.includes("top"),o=e.includes("left"),i=e.includes("top");return{isHorizontal:r,isVertical:n,affectsX:o,affectsY:i}}function ad(e,r){return Math.max(0,r-e)}function ld(e,r){return Math.max(0,e-r)}function Jx(e,r,n){return Math.max(0,r-e,e-n)}function sV(e,r){return e?!r:r}function z9e(e,r,n,o,i,a,l,s){let{affectsX:c,affectsY:d}=r;const{isHorizontal:u,isVertical:p}=r,f=u&&p,{xSnapped:g,ySnapped:v}=n,{minWidth:w,maxWidth:x,minHeight:k,maxHeight:C}=o,{x:_,y:$,width:R,height:T,aspectRatio:A}=e;let z=Math.floor(u?g-e.pointerX:0),j=Math.floor(p?v-e.pointerY:0);const I=R+(c?-z:z),P=T+(d?-j:j),L=-a[0]*R,H=-a[1]*T;let M=Jx(I,w,x),V=Jx(P,k,C);if(l){let q=0,G=0;c&&z<0?q=ad(_+z+L,l[0][0]):!c&&z>0&&(q=ld(_+I+L,l[1][0])),d&&j<0?G=ad($+j+H,l[0][1]):!d&&j>0&&(G=ld($+P+H,l[1][1])),M=Math.max(M,q),V=Math.max(V,G)}if(s){let q=0,G=0;c&&z>0?q=ld(_+z,s[0][0]):!c&&z<0&&(q=ad(_+I,s[1][0])),d&&j>0?G=ld($+j,s[0][1]):!d&&j<0&&(G=ad($+P,s[1][1])),M=Math.max(M,q),V=Math.max(V,G)}if(i){if(u){const q=Jx(I/A,k,C)*A;if(M=Math.max(M,q),l){let G=0;!c&&!d||c&&!d&&f?G=ld($+H+I/A,l[1][1])*A:G=ad($+H+(c?z:-z)/A,l[0][1])*A,M=Math.max(M,G)}if(s){let G=0;!c&&!d||c&&!d&&f?G=ad($+I/A,s[1][1])*A:G=ld($+(c?z:-z)/A,s[0][1])*A,M=Math.max(M,G)}}if(p){const q=Jx(P*A,w,x)/A;if(V=Math.max(V,q),l){let G=0;!c&&!d||d&&!c&&f?G=ld(_+P*A+L,l[1][0])/A:G=ad(_+(d?j:-j)*A+L,l[0][0])/A,V=Math.max(V,G)}if(s){let G=0;!c&&!d||d&&!c&&f?G=ad(_+P*A,s[1][0])/A:G=ld(_+(d?j:-j)*A,s[0][0])/A,V=Math.max(V,G)}}}j=j+(j<0?V:-V),z=z+(z<0?M:-M),i&&(f?I>P*A?j=(sV(c,d)?-z:z)/A:z=(sV(c,d)?-j:j)*A:u?(j=z/A,d=c):(z=j*A,c=d));const B=c?_+z:_,F=d?$+j:$;return{width:R+(c?-z:z),height:T+(d?-j:j),x:a[0]*z*(c?-1:1)+B,y:a[1]*j*(d?-1:1)+F}}const cV={width:0,height:0,x:0,y:0},T9e={...cV,pointerX:0,pointerY:0,aspectRatio:1};function j9e(e){return[[0,0],[e.measured.width,e.measured.height]]}function A9e(e,r,n){const o=r.position.x+e.position.x,i=r.position.y+e.position.y,a=e.measured.width??0,l=e.measured.height??0,s=n[0]*a,c=n[1]*l;return[[o-s,i-c],[o+a-s,i+l-c]]}function D9e({domNode:e,nodeId:r,getStoreItems:n,onChange:o,onEnd:i}){const a=Ei(e);let l={controlDirection:lV("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function s({controlPosition:d,boundaries:u,keepAspectRatio:p,resizeDirection:f,onResizeStart:g,onResize:v,onResizeEnd:w,shouldResize:x}){let k={...cV},C={...T9e};l={boundaries:u,resizeDirection:f,keepAspectRatio:p,controlDirection:lV(d)};let _,$=null,R=[],T,A,z,j=!1;const I=FL().on("start",P=>{const{nodeLookup:L,transform:H,snapGrid:M,snapToGrid:V,nodeOrigin:B,paneDomNode:F}=n();if(_=L.get(r),!_)return;$=F?.getBoundingClientRect()??null;const{xSnapped:q,ySnapped:G}=Y1(P.sourceEvent,{transform:H,snapGrid:M,snapToGrid:V,containerBounds:$});k={width:_.measured.width??0,height:_.measured.height??0,x:_.position.x??0,y:_.position.y??0},C={...k,pointerX:q,pointerY:G,aspectRatio:k.width/k.height},T=void 0,_.parentId&&(_.extent==="parent"||_.expandParent)&&(T=L.get(_.parentId),A=T&&_.extent==="parent"?j9e(T):void 0),R=[],z=void 0;for(const[U,Y]of L)if(Y.parentId===r&&(R.push({id:U,position:{...Y.position},extent:Y.extent}),Y.extent==="parent"||Y.expandParent)){const K=A9e(Y,_,Y.origin??B);z?z=[[Math.min(K[0][0],z[0][0]),Math.min(K[0][1],z[0][1])],[Math.max(K[1][0],z[1][0]),Math.max(K[1][1],z[1][1])]]:z=K}g?.(P,{...k})}).on("drag",P=>{const{transform:L,snapGrid:H,snapToGrid:M,nodeOrigin:V}=n(),B=Y1(P.sourceEvent,{transform:L,snapGrid:H,snapToGrid:M,containerBounds:$}),F=[];if(!_)return;const{x:q,y:G,width:U,height:Y}=k,K={},O=_.origin??V,{width:W,height:Z,x:Q,y:ie}=z9e(C,l.controlDirection,B,l.boundaries,l.keepAspectRatio,O,A,z),te=W!==U,re=Z!==Y,ue=Q!==q&&te,_e=ie!==G&&re;if(!ue&&!_e&&!te&&!re)return;if((ue||_e||O[0]===1||O[1]===1)&&(K.x=ue?Q:k.x,K.y=_e?ie:k.y,k.x=K.x,k.y=K.y,R.length>0)){const xe=Q-q,je=ie-G;for(const Be of R)Be.position={x:Be.position.x-xe+O[0]*(W-U),y:Be.position.y-je+O[1]*(Z-Y)},F.push(Be)}if((te||re)&&(K.width=te&&(!l.resizeDirection||l.resizeDirection==="horizontal")?W:k.width,K.height=re&&(!l.resizeDirection||l.resizeDirection==="vertical")?Z:k.height,k.width=K.width,k.height=K.height),T&&_.expandParent){const xe=O[0]*(K.width??0);K.x&&K.x{j&&(w?.(P,{...k}),i?.({...k}),j=!1)});a.call(I)}function c(){a.on(".drag",null)}return{update:s,destroy:c}}function Y7(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var dV={exports:{}},X7={},uV={exports:{}},K7={},pV;function M9e(){if(pV)return K7;pV=1;var e=Zr;function r(p,f){return p===f&&(p!==0||1/p===1/f)||p!==p&&f!==f}var n=typeof Object.is=="function"?Object.is:r,o=e.useState,i=e.useEffect,a=e.useLayoutEffect,l=e.useDebugValue;function s(p,f){var g=f(),v=o({inst:{value:g,getSnapshot:f}}),w=v[0].inst,x=v[1];return a(function(){w.value=g,w.getSnapshot=f,c(w)&&x({inst:w})},[p,g,f]),i(function(){return c(w)&&x({inst:w}),p(function(){c(w)&&x({inst:w})})},[p]),l(g),g}function c(p){var f=p.getSnapshot;p=p.value;try{var g=f();return!n(p,g)}catch{return!0}}function d(p,f){return f()}var u=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?d:s;return K7.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:u,K7}var hV;function fV(){return hV||(hV=1,uV.exports=M9e()),uV.exports}var mV;function N9e(){if(mV)return X7;mV=1;var e=Zr,r=fV();function n(d,u){return d===u&&(d!==0||1/d===1/u)||d!==d&&u!==u}var o=typeof Object.is=="function"?Object.is:n,i=r.useSyncExternalStore,a=e.useRef,l=e.useEffect,s=e.useMemo,c=e.useDebugValue;return X7.useSyncExternalStoreWithSelector=function(d,u,p,f,g){var v=a(null);if(v.current===null){var w={hasValue:!1,value:null};v.current=w}else w=v.current;v=s(function(){function k(T){if(!C){if(C=!0,_=T,T=f(T),g!==void 0&&w.hasValue){var A=w.value;if(g(A,T))return $=A}return $=T}if(A=$,o(_,T))return A;var z=f(T);return g!==void 0&&g(A,z)?(_=T,A):(_=T,$=z)}var C=!1,_,$,R=p===void 0?null:p;return[function(){return k(u())},R===null?void 0:function(){return k(R())}]},[u,p,f,g]);var x=i(d,v[0],v[1]);return l(function(){w.hasValue=!0,w.value=x},[x]),c(x),x},X7}var gV;function P9e(){return gV||(gV=1,dV.exports=N9e()),dV.exports}var yV=P9e();const B9e=Y7(yV),I9e={},vV=e=>{let r;const n=new Set,o=(s,c)=>{const d=typeof s=="function"?s(r):s;if(!Object.is(d,r)){const u=r;r=c??(typeof d!="object"||d===null)?d:Object.assign({},r,d),n.forEach(p=>p(r,u))}},i=()=>r,a={setState:o,getState:i,getInitialState:()=>l,subscribe:s=>(n.add(s),()=>n.delete(s)),destroy:()=>{(I9e?"production":void 0)!=="production"&&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."),n.clear()}},l=r=e(o,i,a);return a},O9e=e=>e?vV(e):vV,{useDebugValue:L9e}=Zr,{useSyncExternalStoreWithSelector:F9e}=B9e,V9e=e=>e;function bV(e,r=V9e,n){const o=F9e(e.subscribe,e.getState,e.getServerState||e.getInitialState,r,n);return L9e(o),o}const xV=(e,r)=>{const n=O9e(e),o=(i,a=r)=>bV(n,i,a);return Object.assign(o,n),o},q9e=(e,r)=>e?xV(e,r):xV;function jr(e,r){if(Object.is(e,r))return!0;if(typeof e!="object"||e===null||typeof r!="object"||r===null)return!1;if(e instanceof Map&&r instanceof Map){if(e.size!==r.size)return!1;for(const[o,i]of e)if(!Object.is(i,r.get(o)))return!1;return!0}if(e instanceof Set&&r instanceof Set){if(e.size!==r.size)return!1;for(const o of e)if(!r.has(o))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(r).length)return!1;for(const o of n)if(!Object.prototype.hasOwnProperty.call(r,o)||!Object.is(e[o],r[o]))return!1;return!0}const ew=S.createContext(null),H9e=ew.Provider,wV=Gl.error001();function Dt(e,r){const n=S.useContext(ew);if(n===null)throw new Error(wV);return bV(n,e,r)}function vr(){const e=S.useContext(ew);if(e===null)throw new Error(wV);return S.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const kV={display:"none"},U9e={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},_V="react-flow__node-desc",SV="react-flow__edge-desc",W9e="react-flow__aria-live",G9e=e=>e.ariaLiveMessage,Y9e=e=>e.ariaLabelConfig;function X9e({rfId:e}){const r=Dt(G9e);return y.jsx("div",{id:`${W9e}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:U9e,children:r})}function K9e({rfId:e,disableKeyboardA11y:r}){const n=Dt(Y9e);return y.jsxs(y.Fragment,{children:[y.jsx("div",{id:`${_V}-${e}`,style:kV,children:r?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),y.jsx("div",{id:`${SV}-${e}`,style:kV,children:n["edge.a11yDescription.default"]}),!r&&y.jsx(X9e,{rfId:e})]})}const sd=S.forwardRef(({position:e="top-left",children:r,className:n,style:o,...i},a)=>{const l=`${e}`.split("-");return y.jsx("div",{className:dn(["react-flow__panel",n,...l]),style:o,ref:a,...i,children:r})});sd.displayName="Panel";function Z9e({proOptions:e,position:r="bottom-right"}){return e?.hideAttribution?null:y.jsx(sd,{position:r,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:y.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const Q9e=e=>{const r=[],n=[];for(const[,o]of e.nodeLookup)o.selected&&r.push(o.internals.userNode);for(const[,o]of e.edgeLookup)o.selected&&n.push(o);return{selectedNodes:r,selectedEdges:n}},tw=e=>e.id;function J9e(e,r){return jr(e.selectedNodes.map(tw),r.selectedNodes.map(tw))&&jr(e.selectedEdges.map(tw),r.selectedEdges.map(tw))}function eSe({onSelectionChange:e}){const r=vr(),{selectedNodes:n,selectedEdges:o}=Dt(Q9e,J9e);return S.useEffect(()=>{const i={nodes:n,edges:o};e?.(i),r.getState().onSelectionChangeHandlers.forEach(a=>a(i))},[n,o,e]),null}const tSe=e=>!!e.onSelectionChangeHandlers;function rSe({onSelectionChange:e}){const r=Dt(tSe);return e||r?y.jsx(eSe,{onSelectionChange:e}):null}const EV=[0,0],nSe={x:0,y:0,zoom:1},oSe=["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","ariaLabelConfig","zIndexMode"],CV=[...oSe,"rfId"],iSe=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),$V={translateExtent:V1,nodeOrigin:EV,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function aSe(e){const{setNodes:r,setEdges:n,setMinZoom:o,setMaxZoom:i,setTranslateExtent:a,setNodeExtent:l,reset:s,setDefaultNodesAndEdges:c}=Dt(iSe,jr),d=vr();S.useEffect(()=>(c(e.defaultNodes,e.defaultEdges),()=>{u.current=$V,s()}),[]);const u=S.useRef($V);return S.useEffect(()=>{for(const p of CV){const f=e[p],g=u.current[p];f!==g&&(typeof e[p]>"u"||(p==="nodes"?r(f):p==="edges"?n(f):p==="minZoom"?o(f):p==="maxZoom"?i(f):p==="translateExtent"?a(f):p==="nodeExtent"?l(f):p==="ariaLabelConfig"?d.setState({ariaLabelConfig:U7e(f)}):p==="fitView"?d.setState({fitViewQueued:f}):p==="fitViewOptions"?d.setState({fitViewOptions:f}):d.setState({[p]:f})))}u.current=e},CV.map(p=>e[p])),null}function RV(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function lSe(e){const[r,n]=S.useState(e==="system"?null:e);return S.useEffect(()=>{if(e!=="system"){n(e);return}const o=RV(),i=()=>n(o?.matches?"dark":"light");return i(),o?.addEventListener("change",i),()=>{o?.removeEventListener("change",i)}},[e]),r!==null?r:RV()?.matches?"dark":"light"}const zV=typeof document<"u"?document:null;function X1(e=null,r={target:zV,actInsideInputWithModifier:!0}){const[n,o]=S.useState(!1),i=S.useRef(!1),a=S.useRef(new Set([])),[l,s]=S.useMemo(()=>{if(e!==null){const c=(Array.isArray(e)?e:[e]).filter(u=>typeof u=="string").map(u=>u.replace("+",` +`},i),a}function I2e(e,r){return e&&"run"in e?async function(n,o){const i=eO(n,{file:o,...r});await e.run(i,o)}:function(n,o){return eO(n,{file:o,...e||r})}}function tO(e){if(e)throw e}var s8,rO;function O2e(){if(rO)return s8;rO=1;var e=Object.prototype.hasOwnProperty,r=Object.prototype.toString,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,i=function(d){return typeof Array.isArray=="function"?Array.isArray(d):r.call(d)==="[object Array]"},a=function(d){if(!d||r.call(d)!=="[object Object]")return!1;var u=e.call(d,"constructor"),p=d.constructor&&d.constructor.prototype&&e.call(d.constructor.prototype,"isPrototypeOf");if(d.constructor&&!u&&!p)return!1;var f;for(f in d);return typeof f>"u"||e.call(d,f)},l=function(d,u){n&&u.name==="__proto__"?n(d,u.name,{enumerable:!0,configurable:!0,value:u.newValue,writable:!0}):d[u.name]=u.newValue},s=function(d,u){if(u==="__proto__")if(e.call(d,u)){if(o)return o(d,u).value}else return;return d[u]};return s8=function c(){var d,u,p,f,m,v,w=arguments[0],x=1,k=arguments.length,C=!1;for(typeof w=="boolean"&&(C=w,w=arguments[1]||{},x=2),(w==null||typeof w!="object"&&typeof w!="function")&&(w={});xl.length;let c;s&&l.push(i);try{c=e.apply(this,l)}catch(d){const u=d;if(s&&n)throw u;return i(u)}s||(c&&c.then&&typeof c.then=="function"?c.then(a,i):c instanceof Error?i(c):a(c))}function i(l,...s){n||(n=!0,r(l,...s))}function a(l){i(null,l)}}class ti extends Error{constructor(r,n,o){super(),typeof n=="string"&&(o=n,n=void 0);let i="",a={},l=!1;if(n&&("line"in n&&"column"in n?a={place:n}:"start"in n&&"end"in n?a={place:n}:"type"in n?a={ancestors:[n],place:n.position}:a={...n}),typeof r=="string"?i=r:!a.cause&&r&&(l=!0,i=r.message,a.cause=r),!a.ruleId&&!a.source&&typeof o=="string"){const c=o.indexOf(":");c===-1?a.ruleId=o:(a.source=o.slice(0,c),a.ruleId=o.slice(c+1))}if(!a.place&&a.ancestors&&a.ancestors){const c=a.ancestors[a.ancestors.length-1];c&&(a.place=c.position)}const s=a.place&&"start"in a.place?a.place.start:a.place;this.ancestors=a.ancestors||void 0,this.cause=a.cause||void 0,this.column=s?s.column:void 0,this.fatal=void 0,this.file,this.message=i,this.line=s?s.line:void 0,this.name=u1(a.place)||"1:1",this.place=a.place||void 0,this.reason=this.message,this.ruleId=a.ruleId||void 0,this.source=a.source||void 0,this.stack=l&&a.cause&&typeof a.cause.stack=="string"?a.cause.stack:"",this.actual,this.expected,this.note,this.url}}ti.prototype.file="",ti.prototype.name="",ti.prototype.reason="",ti.prototype.message="",ti.prototype.stack="",ti.prototype.column=void 0,ti.prototype.line=void 0,ti.prototype.ancestors=void 0,ti.prototype.cause=void 0,ti.prototype.fatal=void 0,ti.prototype.place=void 0,ti.prototype.ruleId=void 0,ti.prototype.source=void 0;const ql={basename:q2e,dirname:H2e,extname:U2e,join:W2e,sep:"/"};function q2e(e,r){if(r!==void 0&&typeof r!="string")throw new TypeError('"ext" argument must be a string');p1(e);let n=0,o=-1,i=e.length,a;if(r===void 0||r.length===0||r.length>e.length){for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else o<0&&(a=!0,o=i+1);return o<0?"":e.slice(n,o)}if(r===e)return"";let l=-1,s=r.length-1;for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else l<0&&(a=!0,l=i+1),s>-1&&(e.codePointAt(i)===r.codePointAt(s--)?s<0&&(o=i):(s=-1,o=l));return n===o?o=l:o<0&&(o=e.length),e.slice(n,o)}function H2e(e){if(p1(e),e.length===0)return".";let r=-1,n=e.length,o;for(;--n;)if(e.codePointAt(n)===47){if(o){r=n;break}}else o||(o=!0);return r<0?e.codePointAt(0)===47?"/":".":r===1&&e.codePointAt(0)===47?"//":e.slice(0,r)}function U2e(e){p1(e);let r=e.length,n=-1,o=0,i=-1,a=0,l;for(;r--;){const s=e.codePointAt(r);if(s===47){if(l){o=r+1;break}continue}n<0&&(l=!0,n=r+1),s===46?i<0?i=r:a!==1&&(a=1):i>-1&&(a=-1)}return i<0||n<0||a===0||a===1&&i===n-1&&i===o+1?"":e.slice(i,n)}function W2e(...e){let r=-1,n;for(;++r0&&e.codePointAt(e.length-1)===47&&(n+="/"),r?"/"+n:n}function Y2e(e,r){let n="",o=0,i=-1,a=0,l=-1,s,c;for(;++l<=e.length;){if(l2){if(c=n.lastIndexOf("/"),c!==n.length-1){c<0?(n="",o=0):(n=n.slice(0,c),o=n.length-1-n.lastIndexOf("/")),i=l,a=0;continue}}else if(n.length>0){n="",o=0,i=l,a=0;continue}}r&&(n=n.length>0?n+"/..":"..",o=2)}else n.length>0?n+="/"+e.slice(i+1,l):n=e.slice(i+1,l),o=l-i-1;i=l,a=0}else s===46&&a>-1?a++:a=-1}return n}function p1(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const X2e={cwd:K2e};function K2e(){return"/"}function u8(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function Z2e(e){if(typeof e=="string")e=new URL(e);else if(!u8(e)){const r=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw r.code="ERR_INVALID_ARG_TYPE",r}if(e.protocol!=="file:"){const r=new TypeError("The URL must be of scheme file");throw r.code="ERR_INVALID_URL_SCHEME",r}return Q2e(e)}function Q2e(e){if(e.hostname!==""){const o=new TypeError('File URL host must be "localhost" or empty on darwin');throw o.code="ERR_INVALID_FILE_URL_HOST",o}const r=e.pathname;let n=-1;for(;++n0){let[m,...v]=u;const w=o[f][1];d8(w)&&d8(m)&&(m=c8(!0,w,m)),o[f]=[d,m,...v]}}}}const n4e=new g8().freeze();function m8(e,r){if(typeof r!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function y8(e,r){if(typeof r!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function v8(e,r){if(r)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function oO(e){if(!d8(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function iO(e,r,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+r+"` instead")}function Xb(e){return o4e(e)?e:new J2e(e)}function o4e(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function i4e(e){return typeof e=="string"||a4e(e)}function a4e(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}function l4e(){return n4e().use(r2e).use(T3e).use(D3e).use(I2e,{allowDangerousHtml:!0}).use(S0e,XM({attributes:{"*":["className"],svg:["width","height","viewBox","fill","ariaHidden"],path:["d","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin"]},tagNames:["svg","g","path","div"]},P_)).use(Fve,{allowDangerousHtml:!0})}function s4e(e){return(""+l4e().processSync(e)).trim()}function c4e(e){return Hb(UI(e),{includeHtml:!1,includeImageAlt:!1})}var b8,aO;function d4e(){if(aO)return b8;aO=1;var e=aB(),r=Ab();function n(){this.clear()}return n.prototype.clear=function(){this.items=[],this.offset=0,this.size=0},n.prototype.enqueue=function(o){return this.items.push(o),++this.size},n.prototype.dequeue=function(){if(this.size){var o=this.items[this.offset];return++this.offset*2>=this.items.length&&(this.items=this.items.slice(this.offset),this.offset=0),this.size--,o}},n.prototype.peek=function(){if(this.size)return this.items[this.offset]},n.prototype.forEach=function(o,i){i=arguments.length>1?i:this;for(var a=this.offset,l=0,s=this.items.length;a=o.length)return{done:!0};var a=o[i];return i++,{value:a,done:!1}})},n.prototype.entries=function(){var o=this.items,i=this.offset,a=0;return new e(function(){if(i>=o.length)return{done:!0};var l=o[i];return i++,{value:[a++,l],done:!1}})},typeof Symbol<"u"&&(n.prototype[Symbol.iterator]=n.prototype.values),n.prototype.toString=function(){return this.toArray().join(",")},n.prototype.toJSON=function(){return this.toArray()},n.prototype.inspect=function(){var o=this.toArray();return Object.defineProperty(o,"constructor",{value:n,enumerable:!1}),o},typeof Symbol<"u"&&(n.prototype[Symbol.for("nodejs.util.inspect.custom")]=n.prototype.inspect),n.from=function(o){var i=new n;return r(o,function(a){i.enqueue(a)}),i},n.of=function(){return n.from(arguments)},b8=n,b8}var u4e=d4e();const x8=Qm(u4e);var w8,lO;function p4e(){if(lO)return w8;lO=1;function e(r){if(typeof r!="function")throw new Error("mnemonist/DefaultMap.constructor: expecting a function.");this.items=new Map,this.factory=r,this.size=0}return e.prototype.clear=function(){this.items.clear(),this.size=0},e.prototype.get=function(r){var n=this.items.get(r);return typeof n>"u"&&(n=this.factory(r,this.size),this.items.set(r,n),this.size++),n},e.prototype.peek=function(r){return this.items.get(r)},e.prototype.set=function(r,n){return this.items.set(r,n),this.size=this.items.size,this},e.prototype.has=function(r){return this.items.has(r)},e.prototype.delete=function(r){var n=this.items.delete(r);return this.size=this.items.size,n},e.prototype.forEach=function(r,n){n=arguments.length>1?n:this,this.items.forEach(r,n)},e.prototype.entries=function(){return this.items.entries()},e.prototype.keys=function(){return this.items.keys()},e.prototype.values=function(){return this.items.values()},typeof Symbol<"u"&&(e.prototype[Symbol.iterator]=e.prototype.entries),e.prototype.inspect=function(){return this.items},typeof Symbol<"u"&&(e.prototype[Symbol.for("nodejs.util.inspect.custom")]=e.prototype.inspect),e.autoIncrement=function(){var r=0;return function(){return r++}},w8=e,w8}var h4e=p4e();const Ln=Qm(h4e);function Ji(e){return!!e}function sO(e){return r=>!e(r)}function f4e(...e){return ao(g4e,e)}const g4e=(e,r)=>r.every(n=>n(e));function m4e(...e){return ao(y4e,e)}const y4e=(e,r)=>r.some(n=>n(e));function Xn(e){return e==null}function cO(e,r){return e[Iu]===r}const Iu="_stage",h1="_type",k8="_layout";function v4e(e){return Ji(e.kind)&&!Ji(e.element)}function b4e(e){return"tag"in e}function x4e(e){return"kind"in e}function w4e(e){return"participant"in e}function k4e(e){return"not"in e}function _4e(e){return"and"in e}function S4e(e){return"or"in e}function Ou(e){switch(!0){case w4e(e):{const r=e.participant,n=Ou(e.operator);return E4e(r,n)}case b4e(e):{if(Qc(e.tag)||"eq"in e.tag){const n=Qc(e.tag)?e.tag:e.tag.eq;return o=>Array.isArray(o.tags)&&o.tags.includes(n)}const r=e.tag.neq;return n=>!Array.isArray(n.tags)||!n.tags.includes(r)}case x4e(e):{if(Qc(e.kind)||"eq"in e.kind){const n=Qc(e.kind)?e.kind:e.kind.eq;return o=>o.kind===n}const r=e.kind.neq;return n=>Xn(n.kind)||n.kind!==r}case k4e(e):{const r=Ou(e.not);return sO(r)}case _4e(e):{const r=e.and.map(Ou);return f4e(r)}case S4e(e):{const r=e.or.map(Ou);return m4e(r)}default:Qo(e)}}function E4e(e,r){return n=>{if(!n.source||!n.target)return!1;switch(e){case"source":return r(n.source);case"target":return r(n.target)}}}function C4e(e){return e._type==="dynamic"}function f1(...e){return ao(Object.entries,e)}function Lu(e,...r){return typeof e=="string"||typeof e=="number"||typeof e=="symbol"?n=>dO(n,e,...r):dO(e,...r)}function dO(e,...r){let n=e;for(let o of r){if(n==null)return;n=n[o]}return n}function Kb(...e){return ao($4e,e,R4e)}const $4e=(e,r)=>e.map(r),R4e=e=>(r,n,o)=>({done:!1,hasNext:!0,next:e(r,n,o)});function z4e(e,r){let n=r.length-e.length;if(n===1){let[o,...i]=r;return Ns(o,{lazy:e,lazyArgs:i})}if(n===0){let o={lazy:e,lazyArgs:r};return Object.assign(i=>Ns(i,o),o)}throw Error("Wrong number of arguments")}function Zb(...e){return z4e(T4e,e)}function T4e(){let e=new Set;return r=>e.has(r)?E_:(e.add(r),{done:!1,hasNext:!0,next:r})}var _8={},uO;function j4e(){return uO||(uO=1,(function(e){e.intersection=function(){if(arguments.length<2)throw new Error("mnemonist/Set.intersection: needs at least two arguments.");var r=new Set,n=1/0,o=null,i,a,l=arguments.length;for(a=0;an.size)return!1;for(;i=o.next(),!i.done;)if(!n.has(i.value))return!1;return!0},e.isSuperset=function(r,n){return e.isSubset(n,r)},e.add=function(r,n){for(var o=n.values(),i;i=o.next(),!i.done;)r.add(i.value)},e.subtract=function(r,n){for(var o=n.values(),i;i=o.next(),!i.done;)r.delete(i.value)},e.intersect=function(r,n){for(var o=r.values(),i;i=o.next(),!i.done;)n.has(i.value)||r.delete(i.value)},e.disjunct=function(r,n){for(var o=r.values(),i,a=[];i=o.next(),!i.done;)n.has(i.value)&&a.push(i.value);for(o=n.values();i=o.next(),!i.done;)r.has(i.value)||r.add(i.value);for(var l=0,s=a.length;ln.size&&(o=r,r=n,n=o),r.size===0)return 0;if(r===n)return r.size;for(var i=r.values(),a,l=0;a=i.next(),!a.done;)n.has(a.value)&&l++;return l},e.unionSize=function(r,n){var o=e.intersectionSize(r,n);return r.size+n.size-o},e.jaccard=function(r,n){var o=e.intersectionSize(r,n);if(o===0)return 0;var i=r.size+n.size-o;return o/i},e.overlap=function(r,n){var o=e.intersectionSize(r,n);return o===0?0:o/Math.min(r.size,n.size)}})(_8)),_8}var pO=j4e();function S8(...e){let r=new Set;for(const n of e)for(const o of n)r.add(o);return r}function Hh(e,...r){let n=new Set;if(e.size===0)return n;let o=Ll(r,2)?pO.intersection(...r):r[0];if(o.size===0)return n;for(const i of e)o.has(i)&&n.add(i);return n}function E8(e,r){if(e.size===0)return new Set;if(r.size===0)return new Set(e);let n=new Set;for(const o of e)r.has(o)||n.add(o);return n}function A4e(e,r){return e.size===r.size&&[...e].every(n=>r.has(n))}function D4e(e,r){return pO.symmetricDifference(e,r)}function g1(e){return e?hO(e):hO}function hO(e){const r=e[Symbol.iterator](),{value:n}=r.next();return n}const Qb=e=>typeof e=="function";function Is(e,r){const n=r??e;He(Qb(n));function*o(i){for(const a of i)n(a)&&(yield a)}return r?o(e):o}const fO={asc:(e,r)=>e>r,desc:(e,r)=>ee(a,i)}function C8(e,r,...n){let o=typeof e=="function"?e:e[0],i=typeof e=="function"?"asc":e[1],{[i]:a}=fO,l=r===void 0?void 0:C8(r,...n);return(s,c)=>{let d=o(s),u=o(c);return a(d,u)?1:a(u,d)?-1:l?.(s,c)??0}}function M4e(e){if(gO(e))return!0;if(typeof e!="object"||!Array.isArray(e))return!1;let[r,n,...o]=e;return gO(r)&&typeof n=="string"&&n in fO&&o.length===0}const gO=e=>typeof e=="function"&&e.length===1;function N4e(...e){return ao(B4e,e,I4e)}const B4e=(e,r)=>e.filter(r),I4e=e=>(r,n,o)=>e(r,n,o)?{done:!1,hasNext:!0,next:r}:E_;function mO(...e){return ao(O4e,e,L4e)}const O4e=(e,r)=>e.flatMap(r),L4e=e=>(r,n,o)=>{let i=e(r,n,o);return Array.isArray(i)?{done:!1,hasNext:!0,hasMany:!0,next:i}:{done:!1,hasNext:!0,next:i}};function $8(...e){return ao(F4e,e)}const F4e=(e,r)=>{let n=Object.create(null);for(let o=0;oNs(r,...e)}function vO(...e){return P4e(U4e,e)}const U4e=(e,r)=>[...e].sort(r);var bO=Symbol.for("immer-nothing"),xO=Symbol.for("immer-draftable"),Io=Symbol.for("immer-state");function Wa(e,...r){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var wi=Object,Uh=wi.getPrototypeOf,Jb="constructor",ex="prototype",T8="configurable",tx="enumerable",rx="writable",m1="value",nd=e=>!!e&&!!e[Io];function Os(e){return e?kO(e)||ox(e)||!!e[xO]||!!e[Jb]?.[xO]||ix(e)||ax(e):!1}var W4e=wi[ex][Jb].toString(),wO=new WeakMap;function kO(e){if(!e||!A8(e))return!1;const r=Uh(e);if(r===null||r===wi[ex])return!0;const n=wi.hasOwnProperty.call(r,Jb)&&r[Jb];if(n===Object)return!0;if(!Wh(n))return!1;let o=wO.get(n);return o===void 0&&(o=Function.toString.call(n),wO.set(n,o)),o===W4e}function y1(e,r,n=!0){v1(e)===0?(n?Reflect.ownKeys(e):wi.keys(e)).forEach(i=>{r(i,e[i],e)}):e.forEach((o,i)=>r(i,o,e))}function v1(e){const r=e[Io];return r?r.type_:ox(e)?1:ix(e)?2:ax(e)?3:0}var _O=(e,r,n=v1(e))=>n===2?e.has(r):wi[ex].hasOwnProperty.call(e,r),j8=(e,r,n=v1(e))=>n===2?e.get(r):e[r],nx=(e,r,n,o=v1(e))=>{o===2?e.set(r,n):o===3?e.add(n):e[r]=n};function G4e(e,r){return e===r?e!==0||1/e===1/r:e!==e&&r!==r}var ox=Array.isArray,ix=e=>e instanceof Map,ax=e=>e instanceof Set,A8=e=>typeof e=="object",Wh=e=>typeof e=="function",D8=e=>typeof e=="boolean",Ls=e=>e.copy_||e.base_,P8=e=>e.modified_?e.copy_:e.base_;function M8(e,r){if(ix(e))return new Map(e);if(ax(e))return new Set(e);if(ox(e))return Array[ex].slice.call(e);const n=kO(e);if(r===!0||r==="class_only"&&!n){const o=wi.getOwnPropertyDescriptors(e);delete o[Io];let i=Reflect.ownKeys(o);for(let a=0;a1&&wi.defineProperties(e,{set:lx,add:lx,clear:lx,delete:lx}),wi.freeze(e),r&&y1(e,(n,o)=>{N8(o,!0)},!1)),e}function Y4e(){Wa(2)}var lx={[m1]:Y4e};function sx(e){return e===null||!A8(e)?!0:wi.isFrozen(e)}var cx="MapSet",B8="Patches",SO={};function Gh(e){const r=SO[e];return r||Wa(0,e),r}var X4e=e=>!!SO[e],b1,EO=()=>b1,K4e=(e,r)=>({drafts_:[],parent_:e,immer_:r,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:X4e(cx)?Gh(cx):void 0});function CO(e,r){r&&(e.patchPlugin_=Gh(B8),e.patches_=[],e.inversePatches_=[],e.patchListener_=r)}function I8(e){O8(e),e.drafts_.forEach(Z4e),e.drafts_=null}function O8(e){e===b1&&(b1=e.parent_)}var $O=e=>b1=K4e(b1,e);function Z4e(e){const r=e[Io];r.type_===0||r.type_===1?r.revoke_():r.revoked_=!0}function RO(e,r){r.unfinalizedDrafts_=r.drafts_.length;const n=r.drafts_[0];if(e!==void 0&&e!==n){n[Io].modified_&&(I8(r),Wa(4)),Os(e)&&(e=zO(r,e));const{patchPlugin_:i}=r;i&&i.generateReplacementPatches_(n[Io].base_,e,r)}else e=zO(r,n);return Q4e(r,e,!0),I8(r),r.patches_&&r.patchListener_(r.patches_,r.inversePatches_),e!==bO?e:void 0}function zO(e,r){if(sx(r))return r;const n=r[Io];if(!n)return L8(r,e.handledSet_,e);if(!dx(n,e))return r;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:o}=n;if(o)for(;o.length>0;)o.pop()(e);AO(n,e)}return n.copy_}function Q4e(e,r,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&N8(r,n)}function TO(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var dx=(e,r)=>e.scope_===r,J4e=[];function jO(e,r,n,o){const i=Ls(e),a=e.type_;if(o!==void 0&&j8(i,o,a)===r){nx(i,o,n,a);return}if(!e.draftLocations_){const s=e.draftLocations_=new Map;y1(i,(c,d)=>{if(nd(d)){const u=s.get(d)||[];u.push(c),s.set(d,u)}})}const l=e.draftLocations_.get(r)??J4e;for(const s of l)nx(i,s,n,a)}function e5e(e,r,n){e.callbacks_.push(function(i){const a=r;if(!a||!dx(a,i))return;i.mapSetPlugin_?.fixSetContents(a);const l=P8(a);jO(e,a.draft_??a,l,n),AO(a,i)})}function AO(e,r){if(e.modified_&&!e.finalized_&&(e.type_===3||(e.assigned_?.size??0)>0)){const{patchPlugin_:o}=r;if(o){const i=o.getPath(e);i&&o.generatePatches_(e,i,r)}TO(e)}}function t5e(e,r,n){const{scope_:o}=e;if(nd(n)){const i=n[Io];dx(i,o)&&i.callbacks_.push(function(){ux(e);const l=P8(i);jO(e,n,l,r)})}else Os(n)&&e.callbacks_.push(function(){const a=Ls(e);j8(a,r,e.type_)===n&&o.drafts_.length>1&&(e.assigned_.get(r)??!1)===!0&&e.copy_&&L8(j8(e.copy_,r,e.type_),o.handledSet_,o)})}function L8(e,r,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||nd(e)||r.has(e)||!Os(e)||sx(e)||(r.add(e),y1(e,(o,i)=>{if(nd(i)){const a=i[Io];if(dx(a,n)){const l=P8(a);nx(e,o,l,e.type_),TO(a)}}else Os(i)&&L8(i,r,n)})),e}function r5e(e,r){const n=ox(e),o={type_:n?1:0,scope_:r?r.scope_:EO(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:r,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let i=o,a=F8;n&&(i=[o],a=x1);const{revoke:l,proxy:s}=Proxy.revocable(i,a);return o.draft_=s,o.revoke_=l,[s,o]}var F8={get(e,r){if(r===Io)return e;const n=Ls(e);if(!_O(n,r,e.type_))return n5e(e,n,r);const o=n[r];if(e.finalized_||!Os(o))return o;if(o===V8(e.base_,r)){ux(e);const i=e.type_===1?+r:r,a=H8(e.scope_,o,e,i);return e.copy_[i]=a}return o},has(e,r){return r in Ls(e)},ownKeys(e){return Reflect.ownKeys(Ls(e))},set(e,r,n){const o=DO(Ls(e),r);if(o?.set)return o.set.call(e.draft_,n),!0;if(!e.modified_){const i=V8(Ls(e),r),a=i?.[Io];if(a&&a.base_===n)return e.copy_[r]=n,e.assigned_.set(r,!1),!0;if(G4e(n,i)&&(n!==void 0||_O(e.base_,r,e.type_)))return!0;ux(e),q8(e)}return e.copy_[r]===n&&(n!==void 0||r in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[r])||(e.copy_[r]=n,e.assigned_.set(r,!0),t5e(e,r,n)),!0},deleteProperty(e,r){return ux(e),V8(e.base_,r)!==void 0||r in e.base_?(e.assigned_.set(r,!1),q8(e)):e.assigned_.delete(r),e.copy_&&delete e.copy_[r],!0},getOwnPropertyDescriptor(e,r){const n=Ls(e),o=Reflect.getOwnPropertyDescriptor(n,r);return o&&{[rx]:!0,[T8]:e.type_!==1||r!=="length",[tx]:o[tx],[m1]:n[r]}},defineProperty(){Wa(11)},getPrototypeOf(e){return Uh(e.base_)},setPrototypeOf(){Wa(12)}},x1={};y1(F8,(e,r)=>{x1[e]=function(){const n=arguments;return n[0]=n[0][0],r.apply(this,n)}}),x1.deleteProperty=function(e,r){return x1.set.call(this,e,r,void 0)},x1.set=function(e,r,n){return F8.set.call(this,e[0],r,n,e[0])};function V8(e,r){const n=e[Io];return(n?Ls(n):e)[r]}function n5e(e,r,n){const o=DO(r,n);return o?m1 in o?o[m1]:o.get?.call(e.draft_):void 0}function DO(e,r){if(!(r in e))return;let n=Uh(e);for(;n;){const o=Object.getOwnPropertyDescriptor(n,r);if(o)return o;n=Uh(n)}}function q8(e){e.modified_||(e.modified_=!0,e.parent_&&q8(e.parent_))}function ux(e){e.copy_||(e.assigned_=new Map,e.copy_=M8(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var o5e=class{constructor(r){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,o,i)=>{if(Wh(n)&&!Wh(o)){const l=o;o=n;const s=this;return function(d=l,...u){return s.produce(d,p=>o.call(this,p,...u))}}Wh(o)||Wa(6),i!==void 0&&!Wh(i)&&Wa(7);let a;if(Os(n)){const l=$O(this),s=H8(l,n,void 0);let c=!0;try{a=o(s),c=!1}finally{c?I8(l):O8(l)}return CO(l,i),RO(a,l)}else if(!n||!A8(n)){if(a=o(n),a===void 0&&(a=n),a===bO&&(a=void 0),this.autoFreeze_&&N8(a,!0),i){const l=[],s=[];Gh(B8).generateReplacementPatches_(n,a,{patches_:l,inversePatches_:s}),i(l,s)}return a}else Wa(1,n)},this.produceWithPatches=(n,o)=>{if(Wh(n))return(s,...c)=>this.produceWithPatches(s,d=>n(d,...c));let i,a;return[this.produce(n,o,(s,c)=>{i=s,a=c}),i,a]},D8(r?.autoFreeze)&&this.setAutoFreeze(r.autoFreeze),D8(r?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(r.useStrictShallowCopy),D8(r?.useStrictIteration)&&this.setUseStrictIteration(r.useStrictIteration)}createDraft(r){Os(r)||Wa(8),nd(r)&&(r=i5e(r));const n=$O(this),o=H8(n,r,void 0);return o[Io].isManual_=!0,O8(n),o}finishDraft(r,n){const o=r&&r[Io];(!o||!o.isManual_)&&Wa(9);const{scope_:i}=o;return CO(i,n),RO(void 0,i)}setAutoFreeze(r){this.autoFreeze_=r}setUseStrictShallowCopy(r){this.useStrictShallowCopy_=r}setUseStrictIteration(r){this.useStrictIteration_=r}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(r,n){let o;for(o=n.length-1;o>=0;o--){const a=n[o];if(a.path.length===0&&a.op==="replace"){r=a.value;break}}o>-1&&(n=n.slice(o+1));const i=Gh(B8).applyPatches_;return nd(r)?i(r,n):this.produce(r,a=>i(a,n))}};function H8(e,r,n,o){const[i,a]=ix(r)?Gh(cx).proxyMap_(r,n):ax(r)?Gh(cx).proxySet_(r,n):r5e(r,n);return(n?.scope_??EO()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=o,n&&o!==void 0?e5e(n,a,o):a.callbacks_.push(function(c){c.mapSetPlugin_?.fixSetContents(a);const{patchPlugin_:d}=c;a.modified_&&d&&d.generatePatches_(a,[],c)}),i}function i5e(e){return nd(e)||Wa(10,e),PO(e)}function PO(e){if(!Os(e)||sx(e))return e;const r=e[Io];let n,o=!0;if(r){if(!r.modified_)return r.base_;r.finalized_=!0,n=M8(e,r.scope_.immer_.useStrictShallowCopy_),o=r.scope_.immer_.shouldUseStrictIteration()}else n=M8(e,!0);return y1(n,(i,a)=>{nx(n,i,PO(a))},o),r&&(r.finalized_=!1),n}var a5e=new o5e,Yh=a5e.produce,MO=e=>e;function l5e(e){return Ns(e,N4e(r=>!!r.notation),$8(Lu("notation")),R8(z8($8(Lu("shape")),R8(z8($8(Lu("color")),R8(z8(Kb(Lu("kind")),Zb())),f1(),Kb(([r,n])=>({kinds:n,color:r})))),f1(),mO(([r,n])=>n.map(({color:o,kinds:i})=>({shape:r,color:o,kinds:i}))))),f1(),mO(([r,n])=>n.map(({shape:o,color:i,kinds:a})=>({title:r,shape:o,color:i,kinds:a}))),vO(Lu("shape"),Lu("title"),[r=>r.kinds.length,"desc"]))}const wo=(e,r)=>e===r||Xn(e)&&Xn(r)?!1:!yb(e,r),px=5;function s5e(e,r){e.color=r.color,e.kind=r.kind,e.navigateTo=r.navigateTo??null,e.links=r.links?[...r.links]:null,e.tags=[...r.tags],Xn(r.style.border)?delete e.style.border:e.style.border=r.style.border,V4e(r.style.opacity)?e.style.opacity=r.style.opacity:delete e.style.opacity,Xn(r.style.multiple)?delete e.style.multiple:e.style.multiple=r.style.multiple}function c5e(e,r,n){if(wo(r.icon??"none",e.icon??"none")){const o=Ji(e.icon)&&e.icon!=="none";switch(!0){case(o&&Ji(r.icon)&&r.icon!=="none"):return e.icon=r.icon,!0;case(o&&(Xn(r.icon)||r.icon==="none")):return e.icon="none",!0;case(!o&&Ji(r.icon)&&r.icon!=="none"):return n?(e.icon=r.icon,!0):!1}}return!0}function U8(e,r){return e?"md"in r?(e.md=r.md,delete e.txt,e):("txt"in r&&(e.txt=r.txt,delete e.md),e):r}function d5e(e,r,n){let o=!0;return wo(e.title,r.title)&&(n?e.title=r.title:o=!1),wo(e.description,r.description)&&(Xn(r.description)?delete e.description:n?e.description=U8(e.description,r.description):o=!1),wo(e.technology,r.technology)&&(Xn(r.technology)?delete e.technology:n?e.technology=r.technology:o=!1),o}function u5e(e,r,n){return e.title=r.title,Xn(r.description)?delete e.description:e.description=U8(e.description,r.description),Xn(r.technology)?delete e.technology:e.technology=r.technology,!0}function NO(e,r){He(e.id===r.id,"applyManualLayout: view ids do not match"),He(e._stage==="layouted","applyManualLayout: expected layouted view"),He(r._stage==="layouted","applyManualLayout: expected layouted snapshot"),He(e._layout!=="manual","applyManualLayout: expected auto-layouted view");const n=new Set;e._type!==r._type&&n.add("type-changed");const o=new Map(e.nodes.map(u=>[u.id,u])),i=new Map(e.edges.map(u=>[u.id,u])),a=p5e(r.nodes,o,n),l=h5e(r.edges,i,n),s=l5e(a),c=Object.assign({...r},{title:e.title??r.title,description:e.description??r.description,tags:e.tags?[...e.tags]:null,links:e.links?[...e.links]:null,[k8]:"manual",...s&&s.length>0?{notation:{nodes:s}}:{},nodes:a,edges:l});C4e(e)&&c._type==="dynamic"&&(c.variant=e.variant);const d=[...n];return Ll(d,1)?c.drifts=d:"drifts"in c&&delete c.drifts,c}function p5e(e,r,n){const o=e.map(i=>{const a=r.get(i.id);return a&&r.delete(a.id),Yh(i,l=>{if(!a){l.drifts=["removed"],n.add("nodes-removed");return}s5e(l,a);const s=new Set,c=i.children.length>0,d=a.children.length>0;(wo(l.modelRef,a.modelRef)||wo(l.deploymentRef,a.deploymentRef))&&s.add("modelRef-changed"),d&&!c&&s.add("became-compound"),!d&&c&&s.add("became-leaf"),wo(l.parent,a.parent)&&s.add("parent-changed");const u=l.width+px>=a.width&&l.height+px>=a.height;wo(l.shape,a.shape)&&(u?l.shape=a.shape:s.add("shape-changed")),c5e(l,a,u&&d===c)||s.add("label-changed"),(c?u5e:d5e)(l,a,u)||s.add("label-changed"),wo(i.notation,a.notation)&&(l.notation=a.notation??null),c&&d&&D4e(new Set(i.children),new Set(a.children)).size>0&&s.add("children-changed");const f=[...s];Ll(f,1)?(n.add("nodes-drift"),l.drifts=f):delete l.drifts})});return r.size>0&&n.add("nodes-added"),o}function h5e(e,r,n){const o=e.map(i=>{let a=r.get(i.id)??Ns(r.values(),Is(l=>l.source===i.source&&l.target===i.target),g1());return a&&r.delete(a.id),Yh(i,l=>{if(!a){l.drifts=["removed"],n.add("edges-removed");return}const s=new Set,c=i.id===a.id;switch(!0){case(c&&i.source==a.source&&i.target==a.target):{wo(l.dir??"forward",a.dir??"forward")&&s.add("direction-changed");break}case(c&&i.source==a.target&&i.target==a.source):{i.source!==i.target&&s.add("direction-changed");break}case c:{i.source!=a.source&&s.add("source-changed"),i.target!=a.target&&s.add("target-changed");break}default:{He(i.id!=a.id,"Unexpected case in edge drift detection, ids should not match"),He(i.source==a.source,"Unexpected case in edge drift detection, sources should match"),He(i.target==a.target,"Unexpected case in edge drift detection, targets should match"),wo(l.dir??"forward",a.dir??"forward")&&s.add("direction-changed");break}}l.color=a.color,l.line=a.line,l.navigateTo=a.navigateTo??null,l.tags=a.tags?[...a.tags]:null,wo(i.notes,a.notes)&&(Xn(i.notes)!==Xn(a.notes)&&s.add("notes-changed"),l.notes=a.notes??i.notes),a.astPath?l.astPath=a.astPath:delete l.astPath;const d=yO(i,["label","description","technology","labelBBox"]),u=yO(a,["label","description","technology","labelBBox"]);if(wo(d,u))switch(!0){case(a.labelBBox&&!i.labelBBox):{s.add("label-added");break}case(i.labelBBox&&!a.labelBBox):{s.add("label-removed");break}case(!!i.labelBBox&&!!a.labelBBox):{a.labelBBox.width*a.labelBBox.height>(i.labelBBox.width+px)*(i.labelBBox.height+px)&&(l.labelBBox.width=Math.round(a.labelBBox.width),l.labelBBox.height=Math.round(a.labelBBox.height)),wo(i.label,a.label)&&(Xn(a.label)!==Xn(i.label)&&s.add("label-changed"),l.label=a.label??i.label),wo(i.description,a.description)&&(Xn(a.description)!==Xn(i.description)&&s.add("label-changed"),a.description&&(l.description=U8(i.description,a.description))),wo(i.technology,a.technology)&&(Xn(a.technology)!==Xn(i.technology)&&s.add("label-changed"),l.technology=a.technology??i.technology??null);break}default:He(!i.labelBBox,"Unexpected case in edge labelBBox drift detection"),He(!a.labelBBox,"Unexpected case in next labelBBox drift detection");break}const p=[...s];Ll(p,1)?(n.add("edges-drift"),l.drifts=p):delete l.drifts})});return r.size>0&&n.add("edges-added"),o}function f5e(e,r){const{drifts:n,...o}=NO(e,r);if(n){const i=new Set;n.includes("type-changed")&&i.add("type-changed");const a=new Map(o.nodes.map(u=>[u.id,u])),l=new Map(o.edges.map(u=>[u.id,u])),s=e.nodes.map(u=>{const p=a.get(u.id);return p&&a.delete(p.id),Yh(u,f=>{if(!p){i.add("nodes-added"),f.drifts=["added"];return}p.drifts?(i.add("nodes-drift"),f.drifts=[...p.drifts]):delete f.drifts})});a.size>0&&i.add("nodes-removed");const c=e.edges.map(u=>{const p=l.get(u.id)??Ns(l.values(),Is(f=>f.source===u.source&&f.target===u.target),g1());return p&&l.delete(p.id),Yh(u,f=>{if(!p){i.add("edges-added"),f.drifts=["added"];return}p.drifts?(i.add("edges-drift"),f.drifts=[...p.drifts]):delete f.drifts})});l.size>0&&i.add("edges-removed");const d=[...i];return Yh(e,u=>{Ll(d,1)?u.drifts=d:delete u.drifts,u.nodes=MO(s),u.edges=MO(c),u[k8]="auto"})}return Yh(e,i=>{delete i.drifts,i[k8]="auto"})}function Fs(e){return e.summary??e.description}function Xh(e){return e.description??e.summary}const w1="@group";function g5e(e){return e.kind===w1}function BO(e,r){return He(typeof e=="string"&&e!=""),"@"+e+"."+r}function m5e(e){return e.startsWith("@")}function y5e(e){if(!e.startsWith("@"))return[null,e];const r=e.indexOf(".");if(r<2)throw new Error("Invalid global FQN");const n=e.slice(1,r),o=e.slice(r+1);return[n,o]}function k1(e){return e.startsWith("step-")}function IO(e){if(!k1(e))throw new Error(`Invalid step edge id: ${e}`);return parseFloat(e.slice(5))}function v5e(...e){return ao(b5e,e)}function b5e(e,r){let n={...e};for(let[o,i]of Object.entries(n))r(i,o,e)&&delete n[o];return n}var W8={},OO;function G8(){return OO||(OO=1,(function(e){var r=Math.pow(2,8)-1,n=Math.pow(2,16)-1,o=Math.pow(2,32)-1,i=Math.pow(2,7)-1,a=Math.pow(2,15)-1,l=Math.pow(2,31)-1;e.getPointerArray=function(c){var d=c-1;if(d<=r)return Uint8Array;if(d<=n)return Uint16Array;if(d<=o)return Uint32Array;throw new Error("mnemonist: Pointer Array of size > 4294967295 is not supported.")},e.getSignedPointerArray=function(c){var d=c-1;return d<=i?Int8Array:d<=a?Int16Array:d<=l?Int32Array:Float64Array},e.getNumberType=function(c){return c===(c|0)?Math.sign(c)===-1?c<=127&&c>=-128?Int8Array:c<=32767&&c>=-32768?Int16Array:Int32Array:c<=255?Uint8Array:c<=65535?Uint16Array:Uint32Array:Float64Array};var s={Uint8Array:1,Int8Array:2,Uint16Array:3,Int16Array:4,Uint32Array:5,Int32Array:6,Float32Array:7,Float64Array:8};e.getMinimalRepresentation=function(c,d){var u=null,p=0,f,m,v,w,x;for(w=0,x=c.length;wp&&(p=f,u=m);return u},e.isTypedArray=function(c){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView(c)},e.concat=function(){var c=0,d,u,p;for(d=0,p=arguments.length;d"u"))return this.splayOnTop(l),this.V[l]},i.prototype.peek=function(a){var l=this.items[a];if(!(typeof l>"u"))return this.V[l]},i.prototype.forEach=function(a,l){l=arguments.length>1?l:this;for(var s=0,c=this.size,d=this.head,u=this.K,p=this.V,f=this.forward;s=l)return{done:!0};var u=c[s];return a++,a=l)return{done:!0};var u=c[s];return a++,a=l)return{done:!0};var p=c[s],f=d[s];return a++,a"u"))return this.splayOnTop(l),this.V[l]},i.prototype.peek=function(a){var l=this.items.get(a);if(!(typeof l>"u"))return this.V[l]},i.prototype.splayOnTop=e.prototype.splayOnTop,i.prototype.forEach=e.prototype.forEach,i.prototype.keys=e.prototype.keys,i.prototype.values=e.prototype.values,i.prototype.entries=e.prototype.entries,typeof Symbol<"u"&&(i.prototype[Symbol.iterator]=i.prototype.entries),i.prototype.inspect=e.prototype.inspect,i.from=function(a,l,s,c){if(arguments.length<2){if(c=o.guessLength(a),typeof c!="number")throw new Error("mnemonist/lru-cache.from: could not guess iterable length. Please provide desired capacity as last argument.")}else arguments.length===2&&(c=l,l=null,s=null);var d=new i(l,s,c);return r(a,function(u,p){d.set(p,u)}),d},X8=i,X8}var k5e=w5e();const HO=Qm(k5e);function _1(e){return v5e(e,r=>r===void 0)}const _5e=Symbol.for("text"),S5e=Symbol.for("html"),Vs="",UO=new HO(500),WO=new HO(500);class ur{static getOrCreateFromText(r){if(r.trim()===Vs)return ur.EMPTY;let n=WO.get(r);return n||(n=new ur({txt:r}),WO.set(r,n),n)}static getOrCreateFromMarkdown(r){if(r.trim()===Vs)return ur.EMPTY;let n=UO.get(r);return n||(n=new ur({md:r}),UO.set(r,n),n)}static memoize(r,n,o){return ar(r,n,()=>ur.from(o))}static from(r){return r==null||r===ur.EMPTY?ur.EMPTY:r instanceof ur?r:typeof r=="string"?this.getOrCreateFromText(r):"isEmpty"in r&&r.isEmpty?ur.EMPTY:"md"in r?this.getOrCreateFromMarkdown(r.md):this.getOrCreateFromText(r.txt)}static EMPTY=new class extends ur{isEmpty=!0;nonEmpty=!1;isMarkdown=!1;$source=null;constructor(){super({txt:Vs})}get text(){return null}get md(){return null}get html(){return null}};$source;isEmpty;nonEmpty;isMarkdown;constructor(r){this.isMarkdown=!1,typeof r=="string"?(this.$source={txt:r},this.isEmpty=r.trim()===Vs):(this.$source=r,this.isEmpty=!0,"md"in r?(this.isEmpty=r.md===Vs,this.isMarkdown=!0):this.isEmpty=r.txt===Vs),this.nonEmpty=!this.isEmpty}get text(){if(this.isEmpty||this.$source===null)return Vs;const r=this.$source;return"txt"in r?r.txt:ar(this,_5e,()=>c4e(r.md))}get md(){if(this.isEmpty||this.$source===null)return Vs;const r=this.$source;if("md"in r)return r.md;if("txt"in r)return r.txt;Qo(r)}get html(){if(this.isEmpty||this.$source===null)return Vs;const r=this.$source;return"txt"in r?r.txt:ar(this,S5e,()=>s4e(r.md))}equals(r){return this===r?!0:r instanceof ur?this.isEmpty&&r.isEmpty?!0:this.isEmpty!==r.isEmpty||this.isMarkdown!==r.isMarkdown?!1:this.isMarkdown?this.$source?.md===r.$source?.md:this.$source?.txt===r.$source?.txt:!1}}var S1;(e=>{function r(c){return"model"in c&&!("project"in c)}e.isElementRef=r;function n(c){return"project"in c&&"model"in c}e.isImportRef=n;function o(c){if(Qc(c))throw new Error(`Expected FqnRef, got: "${c}"`);if(n(c))return BO(c.project,c.model);if(r(c))return c.model;throw new Error("Expected FqnRef.ModelRef or FqnRef.ImportRef")}e.flatten=o;function i(c){return r(c)||n(c)}e.isModelRef=i;function a(c){return"deployment"in c&&"element"in c}e.isInsideInstanceRef=a;function l(c){return"deployment"in c&&!("element"in c)}e.isDeploymentElementRef=l;function s(c){return l(c)||a(c)}e.isDeploymentRef=s})(S1||(S1={}));var ko;(e=>{function r({x:u,y:p,width:f,height:m}){return{x:u+f/2,y:p+m/2}}e.center=r;function n({x:u,y:p,width:f,height:m}){return[{x:u,y:p},{x:u+f,y:p},{x:u+f,y:p+m},{x:u,y:p+m}]}e.toPoints=n;function o(u){const{x1:p,y1:f,x2:m,y2:v}=K8.fromPoints(u);return{x:p,y:f,width:m-p,height:v-f}}e.fromPoints=o;function i(...u){if(He(Ll(u,1),"No boxes provided"),u.length===1)return u[0];let p=u[0].x,f=u[0].y,m=u[0].x+u[0].width,v=u[0].y+u[0].height;for(let w=1;w=p.x+p.width&&u.y+u.height>=p.y+p.height}e.includes=d})(ko||(ko={}));var K8;(e=>{function r({x1:l,y1:s,x2:c,y2:d}){return{x:(l+c)/2,y:(s+d)/2}}e.center=r;function n(l){He(l.length>0,"At least one point is required");let s=1/0,c=1/0,d=-1/0,u=-1/0;for(const[p,f]of l)s=Math.min(s,p),c=Math.min(c,f),d=Math.max(d,p),u=Math.max(u,f);return{x1:s,y1:c,x2:d,y2:u}}e.fromPoints=n;function o(...l){He(l.length>0,"No boxes provided");let s=1/0,c=1/0,d=-1/0,u=-1/0;for(const p of l)s=Math.min(s,p.x1),c=Math.min(c,p.y1),d=Math.max(d,p.x2),u=Math.max(u,p.y2);return{x1:s,y1:c,x2:d,y2:u}}e.merge=o;function i(l){return{x:l.x1,y:l.y1,width:l.x2-l.x1,height:l.y2-l.y1}}e.toBBox=i;function a(l,s){return l===s?!0:l.x1<=s.x1&&l.y1<=s.y1&&l.x2>=s.x2&&l.y2>=s.y2}e.includes=a})(K8||(K8={}));class ki{constructor(r,n){this.x=r,this.y=n}static create(...r){return r.length===2?new ki(r[0],r[1]):new ki(r[0].x,r[0].y)}static add(r,n){return{x:r.x+n.x,y:r.y+n.y}}static subtract(r,n){return{x:r.x-n.x,y:r.y-n.y}}static multiply(r,n){return{x:r.x*n,y:r.y*n}}static divide(r,n){return{x:r.x/n,y:r.y/n}}static dot(r,n){return r.x*n.x+r.y*n.y}add(r){return new ki(this.x+r.x,this.y+r.y)}subtract(r){return new ki(this.x-r.x,this.y-r.y)}multiply(r){return new ki(this.x*r,this.y*r)}divide(r){return new ki(this.x/r,this.y/r)}dot(r){return this.x*r.x+this.y*r.y}cross(r){return this.x*r.y-this.y*r.x}length(){return this.x===0&&this.y===0?0:Math.sqrt(this.x**2+this.y**2)}normalize(){const r=this.length();return r===0?new ki(0,0):new ki(this.x/r,this.y/r)}round(){return new ki(Math.round(this.x),Math.round(this.y))}toObject(){return{x:this.x,y:this.y}}}function Qr(...e){return e.length===1&&e[0]instanceof ki?e[0]:e.length===2?new ki(e[0],e[1]):new ki(e[0].x,e[0].y)}function Z8(e){return k1(e)&&e.includes(".")?e.slice(0,e.indexOf(".")+1):null}function GO(e){const r=typeof e=="string"?e:e.color;return r.startsWith("#")||r.startsWith("rgb")}function Q8(...e){return ao(E5e,e)}function E5e(e,r){let n=[...e];return n.sort(r),n}const C5e=["tomato","grass","blue","ruby","orange","indigo","pink","teal","purple","amber","crimson","red","lime","yellow","violet"];function $5e(e,r,n){let o=e.get(r);return o||(o=n(r),e.set(r,o)),o}function R5e(e){let r=5381;const n=e.length;He(n>0,"stringHash: empty string");for(let o=0;o>>0).toString(36)}function E1(e,r){const n=r??e;He(Qb(n));function o(i){for(const a of i)if(n(a))return a}return r?o(e):o}function z5e(e,r){const n=e;He(Qb(n));function*o(i){for(const a of i)yield n(a)}return o}function C1(e){return e?Array.from(e):r=>Array.from(r)}function T5e(e){return e?new Set(e):r=>new Set(r)}function YO(e,r){const n=r??e;He(Qb(n));function o(i){for(const a of i)if(n(a))return!0;return!1}return r?o(e):o}function j5e(e,r){const n=e;He(n>=0,"Count must be a non-negative number");function*o(i){let a=0;for(const l of i){if(a>=n)break;yield l,a++}}return i=>o(i)}function A5e(e,r){let n=Math.ceil(e),o=Math.floor(r);if(o{setTimeout(()=>{n(D5e)},r??100)})}function hx(e){const r=Jc([...e]),n=new Set(r),o=new Map(r.map(l=>[l._literalId,l])),i=new Ln(()=>null),a=r.reduce((l,s,c,d)=>(l.set(s,d.slice(c+1).filter(tB(s)).map(u=>(n.delete(u),u)).reduce((u,p)=>(u.some(Yn(p))||(u.push(p),i.set(p,s)),u),[])),l),new Ln(()=>[]));return{sorted:r,byId:l=>gt(o.get(l),`Element not found by id: ${l}`),root:n,parent:l=>i.get(l),children:l=>a.get(l),flatten:()=>new Set([...n,...r.reduce((l,s)=>{const c=a.get(s);return c.length===0?(l.push(s),l):(c.length>1&&l.push(...c),l)},[])])}}const J8=(e,r)=>e.size>2&&r.size!==e.size?new Set(Jc([...hx(e).flatten(),...r])):e.size>1?new Set(Jc([...e])):e;function KO(e,r,n){const o=c=>r.has(c);let i=new Set([e]);const a={incomers:new Set,subjects:new Set([e]),outgoers:new Set};let l=new Set(n.incoming.flatMap(c=>{if(a.subjects.add(c.target),a.incomers.add(c.source),i.add(c.target),c.target!==e){let p=c.target.parent;for(;p&&p!==e;)i.add(p),p=p.parent}let d=c.source;const u=[];for(;u.push(d),!(o(d)||!d.parent);)d=d.parent;return u})),s=new Set(n.outgoing.flatMap(c=>{if(a.subjects.add(c.source),a.outgoers.add(c.target),i.add(c.source),c.source!==e){let p=c.source.parent;for(;p&&p!==e;)i.add(p),p=p.parent}let d=c.target;const u=[];for(;u.push(d),!(o(d)||!d.parent);)d=d.parent;return u}));return{incomers:J8(l,a.incomers),incoming:new Set(n.incoming),subjects:J8(i,a.subjects),outgoing:new Set(n.outgoing),outgoers:J8(s,a.outgoers)}}function ZO(e,r,n,o="global"){const i=n?r.findView(n):null;if(o==="view")return He(i,'Scope view id is required when scope is "view"'),P5e(e,i,r);const a=r.element(e),l=T5e(a.ascendingSiblings());return KO(a,l,{incoming:[...a.incoming()],outgoing:[...a.outgoing()]})}function P5e(e,r,n){const o=n.element(e);let i={incoming:C1(Is(o.incoming(),s=>r.includesRelation(s.id))),outgoing:C1(Is(o.outgoing(),s=>r.includesRelation(s.id)))};const a=tB(o),l=new Set([...o.ascendingSiblings(),...Ns(r.elements(),z5e(s=>s.element),Is(s=>s!==o&&a(s)))]);return KO(o,l,i)}var QO;(e=>{e.isInside=r=>n=>Yn(r,n.source.id)&&Yn(r,n.target.id),e.isDirectedBetween=(r,n)=>o=>(o.source.id===r||Yn(r,o.source.id))&&(o.target.id===n||Yn(n,o.target.id)),e.isAnyBetween=(r,n)=>{const o=(0,e.isDirectedBetween)(r,n),i=(0,e.isDirectedBetween)(n,r);return a=>o(a)||i(a)},e.isIncoming=r=>n=>(n.target.id===r||Yn(r,n.target.id))&&!Yn(r,n.source.id),e.isOutgoing=r=>n=>(n.source.id===r||Yn(r,n.source.id))&&!Yn(r,n.target.id),e.isAnyInOut=r=>{const n=(0,e.isIncoming)(r),o=(0,e.isOutgoing)(r);return i=>n(i)||o(i)}})(QO||(QO={}));const M5e=Symbol.for("nodejs.util.inspect.custom");function $1(e){return e===""||e===void 0?!0:Array.isArray(e)?e.length===0:Object.keys(e).length===0}function e7(...e){return ao(N5e,e)}function N5e(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||!e||typeof r!="object"||!r)return!1;if(e instanceof Map&&r instanceof Map)return B5e(e,r);if(e instanceof Set&&r instanceof Set)return I5e(e,r);let n=Object.keys(e);if(n.length!==Object.keys(r).length)return!1;for(let o of n){if(!Object.hasOwn(r,o))return!1;let{[o]:i}=e,{[o]:a}=r;if(i!==a||!Object.is(i,a))return!1}return!0}function B5e(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e){let i=r.get(n);if(o!==i||!Object.is(o,i))return!1}return!0}function I5e(e,r){if(e.size!==r.size)return!1;for(let n of e)if(!r.has(n))return!1;return!0}class JO{Aux;get style(){return ar(this,"style",()=>_1({shape:this.$model.$styles.defaults.shape,color:this.$model.$styles.defaults.color,border:this.$model.$styles.defaults.border,opacity:this.$model.$styles.defaults.opacity,size:this.$model.$styles.defaults.size,padding:this.$model.$styles.defaults.padding,textSize:this.$model.$styles.defaults.text,...this.$node.style}))}get name(){return Jm(this.id)}get shape(){return this.style.shape}get color(){return this.style.color}get icon(){return this.style.icon??null}get summary(){return ur.memoize(this,"summary",Fs(this.$node))}get description(){return ur.memoize(this,"description",Xh(this.$node))}get technology(){return this.$node.technology??null}get links(){return this.$node.links??[]}ancestors(){return this.$model.ancestors(this)}commonAncestor(r){const n=t1(this.id,r.id);return n?this.$model.node(n):null}siblings(){return this.$model.siblings(this)}isSibling(r){return this.parent===r.parent}*ascendingSiblings(){yield*this.siblings();for(const r of this.ancestors())yield*r.siblings()}*descendingSiblings(){for(const r of[...this.ancestors()].reverse())yield*r.siblings();yield*this.siblings()}incoming(r="all"){return this.$model.incoming(this,r)}outgoing(r="all"){return this.$model.outgoing(this,r)}*incomers(r="all"){const n=new Set;for(const o of this.incoming(r))n.has(o.source.id)||(n.add(o.source.id),yield o.source)}*outgoers(r="all"){const n=new Set;for(const o of this.outgoing(r))n.has(o.target.id)||(n.add(o.target.id),yield o.target)}*views(){for(const r of this.$model.views())r._type==="deployment"&&r.includesDeployment(this.id)&&(yield r)}isDeploymentNode(){return!1}isInstance(){return!1}get allOutgoing(){return ar(this,Symbol.for("allOutgoing"),()=>od.from(new Set(this.outgoingModelRelationships()),new Set(this.outgoing())))}get allIncoming(){return ar(this,Symbol.for("allIncoming"),()=>od.from(new Set(this.incomingModelRelationships()),new Set(this.incoming())))}hasMetadata(){return!!this.$node.metadata&&!$1(this.$node.metadata)}getMetadata(r){return r?this.$node.metadata?.[r]:this.$node.metadata??{}}isTagged(r){return this.tags.includes(r)}}class eL extends JO{constructor(r,n){super(),this.$model=r,this.$node=n,this.id=n.id,this._literalId=n.id,this.title=n.title,this.hierarchyLevel=Tb(n.id)}id;_literalId;title;hierarchyLevel;get parent(){return this.$model.parent(this)}get kind(){return this.$node.kind}get tags(){return ar(this,Symbol.for("tags"),()=>Zb([...this.$node.tags??[],...this.$model.$model.specification.deployments[this.kind]?.tags??[]]))}children(){return this.$model.children(this)}descendants(r="desc"){return this.$model.descendants(this,r)}isDeploymentNode(){return!0}*instances(){for(const r of this.descendants("desc"))r.isInstance()&&(yield r)}onlyOneInstance(){const r=this.children();if(r.size!==1)return null;const n=g1(r);return n?n.isInstance()?n:n.onlyOneInstance():null}_relationshipsFromInstances=null;relationshipsFromInstances(){if(this._relationshipsFromInstances)return this._relationshipsFromInstances;const{outgoing:r,incoming:n}=this._relationshipsFromInstances={outgoing:new Set,incoming:new Set};for(const o of this.instances()){for(const i of o.element.outgoing())r.add(i);for(const i of o.element.incoming())n.add(i)}return this._relationshipsFromInstances}outgoingModelRelationships(){return this.relationshipsFromInstances().outgoing.values()}incomingModelRelationships(){return this.relationshipsFromInstances().incoming.values()}internalModelRelationships(){const{outgoing:r,incoming:n}=this.relationshipsFromInstances();return Hh(n,r)}}class tL extends JO{constructor(r,n,o){super(),this.$model=r,this.$instance=n,this.element=o,this.id=n.id,this._literalId=n.id,this.title=n.title??o.title,this.hierarchyLevel=Tb(n.id)}id;_literalId;title;hierarchyLevel;get $node(){return this.$instance}get parent(){return gt(this.$model.parent(this),`Parent of ${this.id} not found`)}get style(){return ar(this,"style",()=>_1({shape:this.$model.$styles.defaults.shape,color:this.$model.$styles.defaults.color,border:this.$model.$styles.defaults.border,opacity:this.$model.$styles.defaults.opacity,size:this.$model.$styles.defaults.size,padding:this.$model.$styles.defaults.padding,textSize:this.$model.$styles.defaults.text,...this.element.$element.style,...this.$instance.style}))}get tags(){return ar(this,Symbol.for("tags"),()=>Zb([...this.$instance.tags??[],...this.element.tags]))}get kind(){return this.element.kind}get summary(){return ur.memoize(this,"summary",Fs(this.$instance)??Fs(this.element.$element))}get description(){return ur.memoize(this,"description",Xh(this.$instance)??Xh(this.element.$element))}get technology(){return this.$instance.technology??this.element.technology??null}get links(){return this.$instance.links??this.element.links}isInstance(){return!0}outgoingModelRelationships(){return this.element.outgoing()}incomingModelRelationships(){return this.element.incoming()}*views(){for(const r of this.$model.views())if(r._type==="deployment"){if(r.includesDeployment(this.id)){yield r;continue}r.includesDeployment(this.parent.id)&&this.parent.onlyOneInstance()&&(yield r)}}}class O5e{constructor(r,n){this.instance=r,this.element=n}get id(){return this.instance.id}get _literalId(){return this.instance.id}get style(){return ar(this,"style ",()=>({shape:this.element.shape,color:this.element.color,...this.element.$element.style}))}get shape(){return this.element.shape}get color(){return this.element.color}get title(){return this.element.title}get summary(){return this.element.summary}get description(){return this.element.description}get technology(){return this.element.technology}isDeploymentNode(){return!1}isInstance(){return!1}}class L5e{constructor(r,n){this.$model=r,this.$relationship=n,this.source=r.deploymentRef(n.source),this.target=r.deploymentRef(n.target);const o=t1(this.source.id,this.target.id);this.boundary=o?this.$model.node(o):null}boundary;source;target;get id(){return this.$relationship.id}get expression(){return`${this.source.id} -> ${this.target.id}`}get title(){return Ji(this.$relationship.title)?this.$relationship.title:null}get technology(){return this.$relationship.technology??null}get hasSummary(){return!!this.$relationship.summary&&!!this.$relationship.description&&!e7(this.$relationship.summary,this.$relationship.description)}get summary(){return ur.memoize(this,"summary",Fs(this.$relationship))}get description(){return ur.memoize(this,"description",Xh(this.$relationship))}get tags(){return this.$relationship.tags??[]}get kind(){return this.$relationship.kind??null}get navigateTo(){return this.$relationship.navigateTo?this.$model.$model.view(this.$relationship.navigateTo):null}get links(){return this.$relationship.links??[]}get color(){return this.$relationship.color??this.$model.$styles.defaults.relationship.color}get line(){return this.$relationship.line??this.$model.$styles.defaults.relationship.line}get head(){return this.$relationship.head??this.$model.$styles.defaults.relationship.arrow}get tail(){return this.$relationship.tail}*views(){for(const r of this.$model.views())r.includesRelation(this.id)&&(yield r)}isDeploymentRelation(){return!0}isModelRelation(){return!1}hasMetadata(){return!!this.$relationship.metadata&&!$1(this.$relationship.metadata)}getMetadata(r){return r?this.$relationship.metadata?.[r]:this.$relationship.metadata??{}}isTagged(r){return this.tags.includes(r)}}class od{constructor(r=new Set,n=new Set){this.model=r,this.deployment=n}static empty(){return new od}static from(r,n){return new od(new Set(r),new Set(n))}get isEmpty(){return this.model.size===0&&this.deployment.size===0}get nonEmpty(){return this.model.size>0||this.deployment.size>0}get size(){return this.model.size+this.deployment.size}intersect(r){return od.from(Hh(this.model,r.model),Hh(this.deployment,r.deployment))}difference(r){return od.from(E8(this.model,r.model),E8(this.deployment,r.deployment))}union(r){return od.from(S8(this.model,r.model),S8(this.deployment,r.deployment))}}function rL(e,r){return n=>e.source===n.source&&e.target===n.target}function t7(e,r,n="directed"){if(e===r)return[];if(eB(e,r))return[];const o=Hh(e.allOutgoing,r.allIncoming),i=o.size>0?new ea(e,r,o):null;if(n==="directed")return i?[i]:[];const a=Hh(e.allIncoming,r.allOutgoing),l=a.size>0?new ea(r,e,a):null;return i&&l?[i,l]:i?[i]:l?[l]:[]}function nL(e,r,n="both"){if(e.allIncoming.size===0&&e.allOutgoing.size===0)return[];const o=[],i=[];for(const a of r)if(e!==a)for(const l of t7(e,a,n))l.source===e?o.push(l):i.push(l);return[...o,...i]}function F5e(e){return[...e].reduce((r,n,o,i)=>(o===i.length-1||r.push(...nL(n,i.slice(o+1),"both")),r),[])}const V5e={__proto__:null,findConnection:t7,findConnectionsBetween:nL,findConnectionsWithin:F5e};class ea{constructor(r,n,o=new Set){this.source=r,this.target=n,this.relations=o,this.id=R5e(`model:${r.id}:${n.id}`)}id;_boundary;get boundary(){return this._boundary??=this.source.commonAncestor(this.target)}get expression(){return`${this.source.id} -> ${this.target.id}`}get isDirect(){return this.nonEmpty()&&!this.isImplicit}get isImplicit(){return this.nonEmpty()&&YO(this.relations,sO(rL(this)))}get directRelations(){return new Set(Is(this.relations,rL(this)))}nonEmpty(){return this.relations.size>0}mergeWith(r){return He(this.source.id===r.source.id,"Cannot merge connections with different sources"),He(this.target.id===r.target.id,"Cannot merge connections with different targets"),new ea(this.source,this.target,S8(this.relations,r.relations))}difference(r){return new ea(this.source,this.target,E8(this.relations,r.relations))}intersect(r){return He(r instanceof ea,"Cannot intersect connection with different type"),new ea(this.source,this.target,Hh(this.relations,r.relations))}equals(r){He(r instanceof ea,"Cannot merge connection with different type");const n=r;return this.id===n.id&&this.source.id===n.source.id&&this.target.id===n.target.id&&A4e(this.relations,n.relations)}update(r){return new ea(this.source,this.target,r)}[M5e](r,n,o){const i=this.toString();return Object.defineProperty(i,"constructor",{value:ea,enumerable:!1}),i}toString(){return[this.expression,this.relations.size?" relations:":" relations: [ ]",...[...this.relations].map(r=>" "+r.expression)].join(` +`)}reversed(r=!1){if(!r)return new ea(this.target,this.source);const[n]=t7(this.target,this.source,"directed");return n??new ea(this.target,this.source,new Set)}}function q5e(e){if(e==null||e==="")return!0;if(typeof e!="object")return!1;if("length"in e&&typeof e.length=="number")return e.length===0;if("size"in e&&typeof e.size=="number")return e.size===0;for(let r in e)return!1;return Object.getOwnPropertySymbols(e).length===0}function H5e(...e){return ao(U5e,e)}const U5e=e=>e.at(-1);function oL(e,r,n){return typeof r=="number"||r===void 0?o=>o.split(e,r):e.split(r,n)}function fx(...e){return ao(Object.values,e)}class gx{constructor(r,n){this.$model=r,this.$element=n,this.id=this.$element.id,this._literalId=this.$element.id;const[o,i]=y5e(this.id);o?(this.imported={from:o,fqn:i},this.hierarchyLevel=Tb(i)):(this.imported=null,this.hierarchyLevel=Tb(this.id))}Aux;id;_literalId;hierarchyLevel;imported;get name(){return Jm(this.id)}get parent(){return this.$model.parent(this)}get kind(){return this.$element.kind}get shape(){return this.style.shape}get color(){return this.style.color}get icon(){return this.style.icon??null}get tags(){return ar(this,Symbol.for("tags"),()=>Zb([...this.$element.tags??[],...this.$model.specification.elements[this.$element.kind]?.tags??[]]))}get title(){return this.$element.title}get hasSummary(){return!!this.$element.summary&&!!this.$element.description&&!e7(this.$element.summary,this.$element.description)}get summary(){return ur.memoize(this,"summary",Fs(this.$element))}get description(){return ur.memoize(this,"description",Xh(this.$element))}get technology(){return this.$element.technology??null}get links(){return this.$element.links??[]}get defaultView(){return ar(this,Symbol.for("defaultView"),()=>g1(this.scopedViews())??null)}get isRoot(){return this.parent===null}get style(){return ar(this,"style",()=>_1({shape:this.$model.$styles.defaults.shape,color:this.$model.$styles.defaults.color,border:this.$model.$styles.defaults.border,opacity:this.$model.$styles.defaults.opacity,size:this.$model.$styles.defaults.size,padding:this.$model.$styles.defaults.padding,textSize:this.$model.$styles.defaults.text,...this.$element.style}))}isAncestorOf(r){return Yn(this,r)}isDescendantOf(r){return Yn(r,this)}ancestors(){return this.$model.ancestors(this)}commonAncestor(r){const n=t1(this.id,r.id);return n?this.$model.element(n):null}children(){return this.$model.children(this)}descendants(r){return r?rB([...this.$model.descendants(this)],r)[Symbol.iterator]():this.$model.descendants(this)}siblings(){return this.$model.siblings(this)}*ascendingSiblings(){yield*this.siblings();for(const r of this.ancestors())yield*r.siblings()}*descendingSiblings(){for(const r of[...this.ancestors()].reverse())yield*r.siblings();yield*this.siblings()}incoming(r="all"){return this.$model.incoming(this,r)}*incomers(r="all"){const n=new Set;for(const o of this.incoming(r))n.has(o.source.id)||(n.add(o.source.id),yield o.source)}outgoing(r="all"){return this.$model.outgoing(this,r)}*outgoers(r="all"){const n=new Set;for(const o of this.outgoing(r))n.has(o.target.id)||(n.add(o.target.id),yield o.target)}get allOutgoing(){return ar(this,Symbol.for("allOutgoing"),()=>new Set(this.outgoing()))}get allIncoming(){return ar(this,Symbol.for("allIncoming"),()=>new Set(this.incoming()))}views(){return ar(this,Symbol.for("views"),()=>{const r=new Set;for(const n of this.$model.views())n.includesElement(this.id)&&r.add(n);return r})}scopedViews(){return ar(this,Symbol.for("scopedViews"),()=>{const r=new Set;for(const n of this.$model.views())n.isScopedElementView()&&n.viewOf.id===this.id&&r.add(n);return r})}isDeployed(){return Ji(g1(this.deployments()))}deployments(){return this.$model.deployment.instancesOf(this)}hasMetadata(){return!!this.$element.metadata&&!$1(this.$element.metadata)}getMetadata(r){return r?this.$element.metadata?.[r]:this.$element.metadata??{}}isTagged(r){return this.tags.includes(r)}}const yr=e=>typeof e=="string"?e:e.id,_i="/",r7=e=>{if(He(!e.includes(` +`),"View title cannot contain newlines"),e.includes(_i)){const r=e.split(_i).map(n=>n.trim()).filter(n=>n.length>0);return Ll(r,1)?r:[""]}return[e.trim()]},mx=e=>r7(e).join(_i),W5e=e=>{const r=r7(e);return Ll(r,2)?r.slice(0,-1).join(_i):null},n7=e=>e.includes(_i)?r7(e).pop()??e:e.trim();class G5e{constructor(r){this.$model=r;const n=this.$deployments=r.$data.deployments,o=fx(n.elements);for(const i of Jc(o)){const a=this.addElement(i);for(const l of a.tags)this.#c.get(l).add(a);a.isInstance()&&this.#r.get(a.element.id).add(a)}for(const i of fx(n.relations)){const a=this.addRelation(i);for(const l of a.tags)this.#c.get(l).add(a)}}#e=new Map;#a=new Map;#t=new Ln(()=>new Set);#r=new Ln(()=>new Set);#l=new Set;#n=new Map;#s=new Ln(()=>new Set);#i=new Ln(()=>new Set);#o=new Ln(()=>new Set);#c=new Ln(()=>new Set);#d=new Map;$deployments;get $styles(){return this.$model.$styles}element(r){if(r instanceof eL||r instanceof tL)return r;const n=yr(r);return gt(this.#e.get(n),`Element ${n} not found`)}findElement(r){return this.#e.get(r)??null}node(r){const n=this.element(r);return He(n.isDeploymentNode(),`Element ${n.id} is not a deployment node`),n}findNode(r){const n=this.findElement(r);return n?(He(n.isDeploymentNode(),`Element ${n?.id} is not a deployment node`),n):null}instance(r){const n=this.element(r);return He(n.isInstance(),`Element ${n.id} is not a deployed instance`),n}findInstance(r){const n=this.findElement(r);return n?(He(n.isInstance(),`Element ${n?.id} is not a deployed instance`),n):null}roots(){return this.#l.values()}elements(){return this.#e.values()}*nodes(){for(const r of this.#e.values())r.isDeploymentNode()&&(yield r)}*nodesOfKind(r){for(const n of this.#e.values())n.isDeploymentNode()&&n.kind===r&&(yield n)}*instances(){for(const r of this.#e.values())r.isInstance()&&(yield r)}*instancesOf(r){const n=yr(r),o=this.#r.get(n);o&&(yield*o)}deploymentRef(r){if(S1.isInsideInstanceRef(r)){const{deployment:n,element:o}=r;return $5e(this.#d,`${n}@${o}`,()=>new O5e(this.instance(n),this.$model.element(o)))}return this.element(r.deployment)}relationships(){return this.#n.values()}relationship(r){const n=yr(r);return gt(this.#n.get(n),`DeploymentRelationModel ${n} not found`)}findRelationship(r){return this.#n.get(r)??null}*views(){for(const r of this.$model.views())r.isDeploymentView()&&(yield r)}parent(r){const n=yr(r);return this.#a.get(n)||null}children(r){const n=yr(r);return this.#t.get(n)}*siblings(r){const n=yr(r),o=this.parent(r)?.children()??this.roots();for(const i of o)i.id!==n&&(yield i)}*ancestors(r){let n=yr(r),o;for(;o=this.#a.get(n);)yield o,n=o.id}*descendants(r,n="desc"){for(const o of this.children(r))n==="asc"?(yield o,yield*this.descendants(o.id)):(yield*this.descendants(o.id),yield o)}*incoming(r,n="all"){const o=yr(r);for(const i of this.#s.get(o))switch(!0){case n==="all":case(n==="direct"&&i.target.id===o):case(n==="to-descendants"&&i.target.id!==o):yield i;break}}*outgoing(r,n="all"){const o=yr(r);for(const i of this.#i.get(o))switch(!0){case n==="all":case(n==="direct"&&i.source.id===o):case(n==="from-descendants"&&i.source.id!==o):yield i;break}}addElement(r){if(this.#e.has(r.id))throw new Error(`Element ${r.id} already exists`);const n=v4e(r)?new eL(this,Object.freeze(r)):new tL(this,Object.freeze(r),this.$model.element(r.element));this.#e.set(n.id,n);const o=zb(n.id);return o?(He(this.#e.has(o),`Parent ${o} of ${n.id} not found`),this.#a.set(n.id,this.node(o)),this.#t.get(o).add(n)):(He(n.isDeploymentNode(),`Root element ${n.id} is not a deployment node`),this.#l.add(n)),n}addRelation(r){if(this.#n.has(r.id))throw new Error(`Relation ${r.id} already exists`);const n=new L5e(this,Object.freeze(r));this.#n.set(n.id,n),this.#s.get(n.target.id).add(n),this.#i.get(n.source.id).add(n);const o=n.boundary?.id??null;if(o)for(const i of[o,...Du(o)])this.#o.get(i).add(n);for(const i of Du(n.source.id)){if(i===o)break;this.#i.get(i).add(n)}for(const i of Du(n.target.id)){if(i===o)break;this.#s.get(i).add(n)}return n}}class iL{constructor(r,n){this.model=r,this.$relationship=n,this.source=r.element(S1.flatten(n.source)),this.target=r.element(S1.flatten(n.target));const o=t1(this.source.id,this.target.id);this.boundary=o?this.model.element(o):null}source;target;boundary;get id(){return this.$relationship.id}get expression(){return`${this.source.id} -> ${this.target.id}`}get title(){return Ji(this.$relationship.title)?this.$relationship.title:null}get technology(){return Ji(this.$relationship.technology)?this.$relationship.technology:null}get hasSummary(){return!!this.$relationship.summary&&!!this.$relationship.description&&!e7(this.$relationship.summary,this.$relationship.description)}get summary(){return ur.memoize(this,"summary",Fs(this.$relationship))}get description(){return ur.memoize(this,"description",Xh(this.$relationship))}get navigateTo(){return this.$relationship.navigateTo?this.model.view(this.$relationship.navigateTo):null}get tags(){return this.$relationship.tags??[]}get kind(){return this.$relationship.kind??null}get links(){return this.$relationship.links??[]}get color(){return this.$relationship.color??this.model.$styles.defaults.relationship.color}get line(){return this.$relationship.line??this.model.$styles.defaults.relationship.line}get head(){return this.$relationship.head??this.model.$styles.defaults.relationship.arrow}get tail(){return this.$relationship.tail}*views(){for(const r of this.model.views())r.includesRelation(this.id)&&(yield r)}isDeploymentRelation(){return!1}isModelRelation(){return!0}hasMetadata(){return!!this.$relationship.metadata&&!$1(this.$relationship.metadata)}getMetadata(r){return r?this.$relationship.metadata?.[r]:this.$relationship.metadata??{}}isTagged(r){return this.tags.includes(r)}}class Y5e{constructor(r,n,o,i){this.source=o,this.target=i,this.$viewModel=r,this.$view=r.$view,this.$edge=n}Aux;$viewModel;$view;$edge;get id(){return this.$edge.id}get parent(){return this.$edge.parent?this.$viewModel.node(this.$edge.parent):null}get label(){return this.$edge.label??null}get description(){return ur.memoize(this,"description",this.$edge.description)}get technology(){return this.$edge.technology??null}hasParent(){return this.$edge.parent!==null}get tags(){return this.$edge.tags??[]}get stepNumber(){return this.isStep()?IO(this.id):null}get navigateTo(){return this.$edge.navigateTo?this.$viewModel.$model.view(this.$edge.navigateTo):null}get color(){return this.$edge.color}get line(){return this.$edge.line??this.$viewModel.$styles.defaults.relationship.line}get head(){return this.$edge.head??this.$viewModel.$styles.defaults.relationship.arrow}get tail(){return this.$edge.tail}isStep(){return k1(this.id)}*relationships(r){for(const n of this.$edge.relations)if(r){const o=this.$viewModel.$model.findRelationship(n,r);o&&(yield o)}else yield this.$viewModel.$model.relationship(n)}includesRelation(r){const n=typeof r=="string"?r:r.id;return this.$edge.relations.includes(n)}isTagged(r){return this.tags.includes(r)}}class X5e{Aux;$viewModel;$view;$node;constructor(r,n){this.$viewModel=r,this.$view=r.$view,this.$node=n}get id(){return this.$node.id}get title(){return this.$node.title}get kind(){return this.$node.kind}get description(){return ur.memoize(this,"description",this.$node.description)}get technology(){return this.$node.technology??null}get parent(){return this.$node.parent?this.$viewModel.node(this.$node.parent):null}get element(){const r=this.$node.modelRef;return r?this.$viewModel.$model.element(r):null}get deployment(){const r=this.$node.deploymentRef;return r?this.$viewModel.$model.deployment.element(r):null}get shape(){return this.$node.shape}get color(){return this.$node.color}get icon(){return this.$node.icon??null}get tags(){return this.$node.tags}get links(){return this.$node.links??[]}get navigateTo(){return this.$node.navigateTo?this.$viewModel.$model.view(this.$node.navigateTo):null}get style(){return this.$node.style}get x(){return"x"in this.$node?this.$node.x:void 0}get y(){return"y"in this.$node?this.$node.y:void 0}get width(){return"width"in this.$node?this.$node.width:void 0}get height(){return"height"in this.$node?this.$node.height:void 0}children(){return ar(this,"children",()=>new Set(this.$node.children.map(r=>this.$viewModel.node(r))))}*ancestors(){let r=this.parent;for(;r;)yield r,r=r.parent}*siblings(){const r=this.parent?.children()??this.$viewModel.roots();for(const n of r)n.id!==this.id&&(yield n)}*incoming(r="all"){for(const n of this.$node.inEdges){const o=this.$viewModel.edge(n);switch(!0){case r==="all":case(r==="direct"&&o.target.id===this.id):case(r==="to-descendants"&&o.target.id!==this.id):yield o;break}}}*incomers(r="all"){const n=new Set;for(const o of this.incoming(r))n.has(o.source.id)||(n.add(o.source.id),yield o.source)}*outgoing(r="all"){for(const n of this.$node.outEdges){const o=this.$viewModel.edge(n);switch(!0){case r==="all":case(r==="direct"&&o.source.id===this.id):case(r==="from-descendants"&&o.source.id!==this.id):yield o;break}}}*outgoers(r="all"){const n=new Set;for(const o of this.outgoing(r))n.has(o.target.id)||(n.add(o.target.id),yield o.target)}isLayouted(){return"width"in this.$node&&"height"in this.$node}hasChildren(){return this.$node.children.length>0}hasParent(){return this.$node.parent!==null}hasElement(){return Ji(this.$node.modelRef)}hasDeployment(){return Ji(this.$node.deploymentRef)}hasDeployedInstance(){return this.hasElement()&&this.hasDeployment()}isGroup(){return g5e(this.$node)}isTagged(r){return this.tags.includes(r)}}class o7{Aux;#e;#a=new Set;#t=new Map;#r=new Map;#l=new Set;#n=new Set;#s=new Set;#i=new Ln(r=>new Set);#o;id;$model;title;folder;viewPath;constructor(r,n,o,i){this.$model=r,this.#e=o,this.id=o.id,this.folder=n,this.#o=i;for(const a of this.#e.nodes){const l=new X5e(this,Object.freeze(a));this.#t.set(a.id,l),a.parent||this.#a.add(l),a.deploymentRef&&this.#n.add(a.deploymentRef),a.modelRef&&this.#l.add(a.modelRef);for(const s of l.tags)this.#i.get(s).add(l)}for(const a of this.#e.edges){const l=new Y5e(this,Object.freeze(a),this.node(a.source),this.node(a.target));for(const s of l.tags)this.#i.get(s).add(l);for(const s of a.relations)this.#s.add(s);this.#r.set(a.id,l)}this.title=o.title?n7(o.title):null,this.viewPath=o.title?mx(o.title):o.id}get $styles(){return this.$model.$styles}get _type(){return this.#e[h1]}get stage(){return this.#e[Iu]}get bounds(){if("bounds"in this.#e)return this.#e.bounds;if(this.#o)return this.#o.bounds;throw new Error("View is not layouted")}get titleOrId(){return this.title??this.viewOf?.title??this.id}get titleOrUntitled(){return this.title??"Untitled"}get breadcrumbs(){return ar(this,"breadcrumbs",()=>this.folder.isRoot?[this]:[...this.folder.breadcrumbs,this])}get description(){return ur.memoize(this,"description",this.#e.description)}get tags(){return this.#e.tags??[]}get links(){return this.#e.links??[]}get viewOf(){if(this.isElementView()){const r=this.#e.viewOf;return r?this.$model.element(r):null}return null}get mode(){return this.isDynamicView()?this.#e.variant??"diagram":null}get includedTags(){return[...this.#i.keys()]}get $view(){if(!this.isLayouted()||"drifts"in this.#e)return this.#e;const r=this.#o;return r?ar(this,"withDriftReasons",()=>f5e(this.#e,r)):this.#e}get $layouted(){if(!this.isLayouted())throw new Error("View is not layouted");return this.$manual??this.#e}get hasManualLayout(){return this.#o!==void 0}get hasLayoutDrifts(){if(!this.isLayouted())return!1;const r=this.$manual;return!!r?.drifts&&r.drifts.length>0}get $manual(){if(!this.isLayouted())return null;const r=this.#o;return r?ar(this,"snapshotWithManualLayout",()=>NO(this.#e,r)):null}roots(){return this.#a.values()}*compounds(){for(const r of this.#t.values())r.hasChildren()&&(yield r)}node(r){const n=yr(r);return gt(this.#t.get(n),`Node ${n} not found in view ${this.#e.id}`)}findNode(r){return this.#t.get(yr(r))??null}findNodeWithElement(r){const n=yr(r);return this.#l.has(n)?E1(this.#t.values(),o=>o.hasElement()&&o.element.id===n)??null:null}nodes(){return this.#t.values()}edge(r){const n=yr(r);return gt(this.#r.get(n),`Edge ${n} not found in view ${this.#e.id}`)}findEdge(r){return this.#r.get(yr(r))??null}edges(){return this.#r.values()}*edgesWithRelation(r){for(const n of this.#r.values())n.includesRelation(r)&&(yield n)}*elements(){for(const r of this.#t.values())r.hasElement()&&(yield r)}isTagged(r){return this.tags.includes(r)}includesElement(r){return this.#l.has(yr(r))}includesDeployment(r){return this.#n.has(yr(r))}includesRelation(r){return this.#s.has(yr(r))}isComputed(){return this.#e[Iu]==="computed"}isLayouted(){return this.#e[Iu]==="layouted"}isDiagram(){return this.#e[Iu]==="layouted"}isElementView(){return this.#e[h1]==="element"}isScopedElementView(){return this.#e[h1]==="element"&&Ji(this.#e.viewOf)}isDeploymentView(){return this.#e[h1]==="deployment"}isDynamicView(){return this.#e[h1]==="dynamic"}}class yx{$model;path;title;isRoot;parentPath;defaultViewId;constructor(r,n,o){this.$model=r,this.path=n.join("/"),this.isRoot=this.path==="",this.title=H5e(n),this.isRoot?this.parentPath=void 0:this.parentPath=n.slice(0,-1).join("/"),this.defaultViewId=o}get defaultView(){return this.defaultViewId?this.$model.view(this.defaultViewId):null}get breadcrumbs(){return He(!this.isRoot,"Root view folder has no breadcrumbs"),ar(this,"breadcrumbs",()=>{const r=this.parent;return r?r.isRoot?[r,this]:[...r.breadcrumbs,this]:[this]})}get parent(){return He(!this.isRoot,"Root view folder has no parent"),q5e(this.parentPath)?null:this.$model.viewFolder(this.parentPath)}get children(){return this.$model.viewFolderItems(this.path)}get folders(){return ar(this,"folders",()=>{const r=[];for(const n of this.children)n instanceof yx&&r.push(n);return r})}get views(){return ar(this,"views",()=>{const r=[];for(const n of this.children)n instanceof o7&&r.push(n);return r})}}class Fu{Aux;_elements=new Map;_parents=new Map;_children=new Ln(()=>new Set);_rootElements=new Set;_relations=new Map;_incoming=new Ln(()=>new Set);_outgoing=new Ln(()=>new Set);_internal=new Ln(()=>new Set);_views=new Map;_rootViewFolder;_viewFolders=new Map;_viewFolderItems=new Ln(()=>new Set);_allTags=new Ln(()=>new Set);static fromParsed(r){return new Fu(r)}static create(r){return new Fu(r)}static fromDump(r){const{_stage:n="layouted",projectId:o="unknown",project:i,globals:a,imports:l,deployments:s,views:c,relations:d,elements:u,specification:p}=r;return new Fu({[Iu]:n,projectId:o,project:i,globals:{predicates:a?.predicates??{},dynamicPredicates:a?.dynamicPredicates??{},styles:a?.styles??{}},imports:l??{},deployments:{elements:s?.elements??{},relations:s?.relations??{}},views:c??{},relations:d??{},elements:u??{},specification:p})}deployment;$data;constructor(r){this.$data=r;for(const[,n]of f1(r.elements)){const o=this.addElement(n);for(const i of o.tags)this._allTags.get(i).add(o)}for(const[n,o]of f1(r.imports??{}))for(const i of Jc(o)){const a=this.addImportedElement(n,i);for(const l of a.tags)this._allTags.get(l).add(a)}for(const n of fx(r.relations)){const o=this.addRelation(n);for(const i of o.tags)this._allTags.get(i).add(o)}if(this.deployment=new G5e(this),cO(r,"computed")||cO(r,"layouted")){const n=JN(_i),o=Ns(fx(r.views),Kb(a=>({view:a,path:mx(a.title??a.id),folderPath:a.title&&W5e(a.title)||""})),Q8((a,l)=>n(a.folderPath,l.folderPath))),i=a=>{let l=this._viewFolders.get(a);if(!l){const s=oL(a,_i);He(Ll(s,1),`View group path "${a}" must have at least one element`);let c;a===""?c=o.find(d=>d.view.id==="index"):c=o.find(d=>d.path===a),l=new yx(this,s,c?.view.id),this._viewFolders.set(a,l)}return l};this._rootViewFolder=i("");for(const{folderPath:a}of o)this._viewFolders.has(a)||oL(a,_i).reduce((l,s)=>{const c=l.join(_i),d=$1(c)?s:c+_i+s,u=i(d);return this._viewFolderItems.get(c).add(u),l.push(s),l},[]);for(const{view:a,folderPath:l}of o){const s=new o7(this,i(l),a,r.manualLayouts?.[a.id]);this._viewFolderItems.get(l).add(s),this._views.set(a.id,s);for(const c of s.tags)this._allTags.get(c).add(s)}}else this._rootViewFolder=new yx(this,[""],void 0),this._viewFolders.set(this._rootViewFolder.path,this._rootViewFolder)}get asParsed(){return this}get asComputed(){return this}get asLayouted(){return this}get $styles(){return ar(this,"styles",()=>XN.from(this.$data.project.styles,this.$data.specification.customColors?{theme:{colors:this.$data.specification.customColors}}:void 0))}isParsed(){return this.stage==="parsed"}isLayouted(){return this.stage==="layouted"}isComputed(){return this.stage==="computed"}get $model(){return this.$data}get stage(){return this.$data[Iu]}get projectId(){return this.$data.projectId??"default"}get project(){return this.$data.project??ar(this,Symbol.for("project"),()=>({id:this.projectId}))}get specification(){return this.$data.specification}get globals(){return ar(this,Symbol.for("globals"),()=>({predicates:{...this.$data.globals?.predicates},dynamicPredicates:{...this.$data.globals?.dynamicPredicates},styles:{...this.$data.globals?.styles}}))}element(r){if(r instanceof gx)return r;const n=yr(r);return gt(this._elements.get(n),`Element ${n} not found`)}findElement(r){return this._elements.get(yr(r))??null}roots(){return this._rootElements.values()}elements(){return this._elements.values()}relationships(){return this._relations.values()}relationship(r,n){if(n==="deployment")return this.deployment.relationship(r);const o=yr(r);let i=this._relations.get(o)??null;return i||n==="model"?gt(i,`Model relation ${o} not found`):gt(this.deployment.findRelationship(o),`No model/deployment relation ${o} not found`)}findRelationship(r,n){if(n==="deployment")return this.deployment.findRelationship(r);let o=this._relations.get(yr(r))??null;return o||n==="model"?o:this.deployment.findRelationship(r)}views(){return this._views.values()}view(r){const n=yr(r);return gt(this._views.get(n),`View ${n} not found`)}findView(r){return this._views.get(r)??null}findManualLayout(r){return"manualLayouts"in this.$data?this.$data.manualLayouts?.[r]??null:null}viewFolder(r){return gt(this._viewFolders.get(r),`View folder ${r} not found`)}get rootViewFolder(){return this._rootViewFolder}get hasViewFolders(){return this._viewFolders.size>1}viewFolderItems(r){return He(this._viewFolders.has(r),`View folder ${r} not found`),this._viewFolderItems.get(r)}parent(r){const n=yr(r);return this._parents.get(n)||null}children(r){const n=yr(r);return this._children.get(n)}*siblings(r){const n=yr(r),o=this._parents.get(n),i=o?this._children.get(o.id).values():this.roots();for(const a of i)a.id!==n&&(yield a)}*ancestors(r){let n=yr(r),o;for(;o=this._parents.get(n);)yield o,n=o.id}*descendants(r){for(const n of this.children(r))yield n,yield*this.descendants(n.id)}*incoming(r,n="all"){const o=yr(r);for(const i of this._incoming.get(o))switch(!0){case n==="all":case(n==="direct"&&i.target.id===o):case(n==="to-descendants"&&i.target.id!==o):yield i;break}}*outgoing(r,n="all"){const o=yr(r);for(const i of this._outgoing.get(o))switch(!0){case n==="all":case(n==="direct"&&i.source.id===o):case(n==="from-descendants"&&i.source.id!==o):yield i;break}}get tags(){return ar(this,"tags",()=>Q8([...this._allTags.keys()],Rb))}get tagsSortedByUsage(){return ar(this,"tagsSortedByUsage",()=>Ns([...this._allTags.entries()],Kb(([r,n])=>({tag:r,count:n.size,tagged:n})),Q8((r,n)=>Rb(r.tag,n.tag)),vO([Lu("count"),"desc"])))}findByTag(r,n){return Is(this._allTags.get(r),o=>n==="elements"?o instanceof gx:n==="views"?o instanceof o7:n==="relationships"?o instanceof iL:!0)}*elementsOfKind(r){for(const n of this._elements.values())n.kind===r&&(yield n)}*elementsWhere(r){const n=Ou(r);for(const o of this._elements.values())n(o)&&(yield o)}*relationshipsWhere(r){const n=Ou(r);for(const o of this._relations.values())n(o)&&(yield o)}addElement(r){if(this._elements.has(r.id))throw new Error(`Element ${r.id} already exists`);const n=new gx(this,Object.freeze(r));this._elements.set(n.id,n);const o=zb(n.id);return o?(He(this._elements.has(o),`Parent ${o} of ${n.id} not found`),this._parents.set(n.id,this.element(o)),this._children.get(o).add(n)):this._rootElements.add(n),n}addImportedElement(r,n){He(!m5e(n.id),"Imported element already has global FQN");const o=BO(r,n.id);if(this._elements.has(o))throw new Error(`Element ${o} already exists`);const i=new gx(this,Object.freeze({...n,id:o}));this._elements.set(i.id,i);let a=zb(i.id);for(;a;){if(a.includes(".")&&this._elements.has(a))return this._parents.set(i.id,this.element(a)),this._children.get(a).add(i),i;a=zb(a)}return this._rootElements.add(i),i}addRelation(r){if(this._relations.has(r.id))throw new Error(`Relation ${r.id} already exists`);const n=new iL(this,Object.freeze(r)),{source:o,target:i}=n;this._relations.set(n.id,n),this._incoming.get(i.id).add(n),this._outgoing.get(o.id).add(n);const a=t1(o.id,i.id);if(a)for(const l of[a,...Du(a)])this._internal.get(l).add(n);for(const l of Du(o.id)){if(l===a)break;this._outgoing.get(l).add(n)}for(const l of Du(i.id)){if(l===a)break;this._incoming.get(l).add(n)}return n}}(e=>{e.EMPTY=e.create({_stage:"computed",projectId:"default",project:{id:"default"},specification:{elements:{},relationships:{},deployments:{},tags:{}},globals:{predicates:{},dynamicPredicates:{},styles:{}},deployments:{elements:{},relations:{}},elements:{},relations:{},views:{},imports:{}})})(Fu||(Fu={}));function vx(e){return typeof e=="object"&&e!=null&&!Array.isArray(e)}var K5e=e=>typeof e=="object"&&e!==null;function Vu(e){return Object.fromEntries(Object.entries(e??{}).filter(([r,n])=>n!==void 0))}var Z5e=e=>e==="base";function Q5e(e){return e.slice().filter(r=>!Z5e(r))}function aL(e){return String.fromCharCode(e+(e>25?39:97))}function J5e(e){let r="",n;for(n=Math.abs(e);n>52;n=n/52|0)r=aL(n%52)+r;return aL(n%52)+r}function eke(e,r){let n=r.length;for(;n;)e=e*33^r.charCodeAt(--n);return e}function tke(e){return J5e(eke(5381,e)>>>0)}var lL=/\s*!(important)?/i;function rke(e){return typeof e=="string"?lL.test(e):!1}function nke(e){return typeof e=="string"?e.replace(lL,"").trim():e}function i7(e){return typeof e=="string"?e.replaceAll(" ","_"):e}var Kn=e=>{const r=new Map;return(...n)=>{const o=JSON.stringify(n);if(r.has(o))return r.get(o);const i=e(...n);return r.set(o,i),i}},oke=new Set(["__proto__","constructor","prototype"]);function a7(...e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{if(oke.has(o))return;const i=r[o],a=n[o];vx(i)&&vx(a)?r[o]=a7(i,a):r[o]=a}),r),{})}var ike=e=>e!=null;function l7(e,r,n={}){const{stop:o,getKey:i}=n;function a(l,s=[]){if(K5e(l)){const c={};for(const[d,u]of Object.entries(l)){const p=i?.(d,u)??d,f=[...s,p];if(o?.(l,f))return r(l,s);const m=a(u,f);ike(m)&&(c[p]=m)}return c}return r(l,s)}return a(e)}function ake(e,r){return Array.isArray(e)?e.map(n=>r(n)):vx(e)?l7(e,n=>r(n)):r(e)}function lke(e,r){return e.reduce((n,o,i)=>{const a=r[i];return o!=null&&(n[a]=o),n},{})}function sL(e,r,n=!0){const{utility:o,conditions:i}=r,{hasShorthand:a,resolveShorthand:l}=o;return l7(e,s=>Array.isArray(s)?lke(s,i.breakpoints.keys):s,{stop:s=>Array.isArray(s),getKey:n?s=>a?l(s):s:void 0})}var ske={shift:e=>e,finalize:e=>e,breakpoints:{keys:[]}},cke=e=>typeof e=="string"?e.replaceAll(/[\n\s]+/g," "):e;function cL(e){const{utility:r,hash:n,conditions:o=ske}=e,i=l=>[r.prefix,l].filter(Boolean).join("-"),a=(l,s)=>{let c;if(n){const d=[...o.finalize(l),s];c=i(r.toHash(d,tke))}else c=[...o.finalize(l),i(s)].join(":");return c};return Kn(({base:l,...s}={})=>{const c=Object.assign(s,l),d=sL(c,e),u=new Set;return l7(d,(p,f)=>{if(p==null)return;const m=rke(p),[v,...w]=o.shift(f),x=Q5e(w),k=r.transform(v,nke(cke(p)));let C=a(x,k.className);m&&(C=`${C}!`),u.add(C)}),Array.from(u).join(" ")})}function dke(...e){return e.flat().filter(r=>vx(r)&&Object.keys(Vu(r)).length>0)}function uke(e){function r(i){const a=dke(...i);return a.length===1?a:a.map(l=>sL(l,e))}function n(...i){return a7(...r(i))}function o(...i){return Object.assign({},...r(i))}return{mergeCss:Kn(n),assignCss:o}}var pke=/([A-Z])/g,hke=/^ms-/,fke=Kn(e=>e.startsWith("--")?e:e.replace(pke,"-$1").replace(hke,"-ms-").toLowerCase()),gke=["min","max","clamp","calc"],mke=new RegExp(`^(${gke.join("|")})\\(.*\\)`),yke=e=>typeof e=="string"&&mke.test(e),vke="cm,mm,Q,in,pc,pt,px,em,ex,ch,rem,lh,rlh,vw,vh,vmin,vmax,vb,vi,svw,svh,lvw,lvh,dvw,dvh,cqw,cqh,cqi,cqb,cqmin,cqmax,%",bke=`(?:${vke.split(",").join("|")})`,xke=new RegExp(`^[+-]?[0-9]*.?[0-9]+(?:[eE][+-]?[0-9]+)?${bke}$`),wke=e=>typeof e=="string"&&xke.test(e),kke=e=>typeof e=="string"&&/^var\(--.+\)$/.test(e),R1={map:ake,isCssFunction:yke,isCssVar:kke,isCssUnit:wke},z1=(e,r)=>{if(!e?.defaultValues)return r;const n=typeof e.defaultValues=="function"?e.defaultValues(r):e.defaultValues;return Object.assign({},n,Vu(r))},_ke=(e={})=>{const r=o=>({className:[e.className,o].filter(Boolean).join("__"),base:e.base?.[o]??{},variants:{},defaultVariants:e.defaultVariants??{},compoundVariants:e.compoundVariants?s7(e.compoundVariants,o):[]}),n=(e.slots??[]).map(o=>[o,r(o)]);for(const[o,i]of Object.entries(e.variants??{}))for(const[a,l]of Object.entries(i))n.forEach(([s,c])=>{c.variants[o]??={},c.variants[o][a]=l[s]??{}});return Object.fromEntries(n)},s7=(e,r)=>e.filter(n=>n.css[r]).map(n=>({...n,css:n.css[r]}));function Fn(e,...r){const n=Object.getOwnPropertyDescriptors(e),o=Object.keys(n),i=l=>{const s={};for(let c=0;ci(Array.isArray(l)?l:o.filter(l));return r.map(a).concat(i(o))}var c7=(...e)=>{const r=e.reduce((n,o)=>(o&&o.forEach(i=>n.add(i)),n),new Set([]));return Array.from(r)},dL=["htmlSize","htmlTranslate","htmlWidth","htmlHeight"];function Ske(e){return dL.includes(e)?e.replace("html","").toLowerCase():e}function d7(e){return Object.fromEntries(Object.entries(e).map(([r,n])=>[Ske(r),n]))}d7.keys=dL;const Eke="_hover,_focus,_focusWithin,_focusVisible,_disabled,_active,_visited,_target,_readOnly,_readWrite,_empty,_checked,_enabled,_expanded,_highlighted,_complete,_incomplete,_dragging,_before,_after,_firstLetter,_firstLine,_marker,_selection,_file,_backdrop,_first,_last,_only,_even,_odd,_firstOfType,_lastOfType,_onlyOfType,_peerFocus,_peerHover,_peerActive,_peerFocusWithin,_peerFocusVisible,_peerDisabled,_peerChecked,_peerInvalid,_peerExpanded,_peerPlaceholderShown,_groupFocus,_groupHover,_groupActive,_groupFocusWithin,_groupFocusVisible,_groupDisabled,_groupChecked,_groupExpanded,_groupInvalid,_indeterminate,_required,_valid,_invalid,_autofill,_inRange,_outOfRange,_placeholder,_placeholderShown,_pressed,_selected,_grabbed,_underValue,_overValue,_atValue,_default,_optional,_open,_closed,_fullscreen,_loading,_hidden,_current,_currentPage,_currentStep,_today,_unavailable,_rangeStart,_rangeEnd,_now,_topmost,_motionReduce,_motionSafe,_print,_landscape,_portrait,_dark,_light,_osDark,_osLight,_highContrast,_lessContrast,_moreContrast,_ltr,_rtl,_scrollbar,_scrollbarThumb,_scrollbarTrack,_horizontal,_vertical,_icon,_starting,_noscript,_invertedColors,_shapeSizeXs,_shapeSizeSm,_shapeSizeMd,_shapeSizeLg,_shapeSizeXl,_shapeRectangle,_shapePerson,_shapeBrowser,_shapeMobile,_shapeCylinder,_shapeStorage,_shapeQueue,_notDisabled,_reduceGraphics,_reduceGraphicsOnPan,_noReduceGraphics,_whenPanning,_smallZoom,_compoundTransparent,_edgeActive,_whenHovered,_whenSelectable,_whenSelected,_whenDimmed,_whenFocused,_p3,_srgb,_rec2020,xs,xsOnly,xsDown,sm,smOnly,smDown,md,mdOnly,mdDown,lg,lgOnly,lgDown,xl,xlOnly,xlDown,xsToSm,xsToMd,xsToLg,xsToXl,smToMd,smToLg,smToXl,mdToLg,mdToXl,lgToXl,@/xs,@/sm,@/md,@/lg,@likec4-root/xs,@likec4-root/sm,@likec4-root/md,@likec4-root/lg,@likec4-dialog/xs,@likec4-dialog/sm,@likec4-dialog/md,@likec4-dialog/lg,base",uL=new Set(Eke.split(",")),Cke=/^@|&|&$/;function pL(e){return uL.has(e)||Cke.test(e)}const $ke=/^_/,Rke=/&|@/;function hL(e){return e.map(r=>uL.has(r)?r.replace($ke,""):Rke.test(r)?`[${i7(r.trim())}]`:r)}function fL(e){return e.sort((r,n)=>{const o=pL(r),i=pL(n);return o&&!i?1:!o&&i?-1:0})}const zke="aspectRatio:asp,boxDecorationBreak:bx-db,zIndex:z,boxSizing:bx-s,objectPosition:obj-p,objectFit:obj-f,overscrollBehavior:ovs-b,overscrollBehaviorX:ovs-bx,overscrollBehaviorY:ovs-by,position:pos/1,top:top,left:left,inset:inset,insetInline:inset-x/insetX,insetBlock:inset-y/insetY,insetBlockEnd:inset-be,insetBlockStart:inset-bs,insetInlineEnd:inset-e/insetEnd/end,insetInlineStart:inset-s/insetStart/start,right:right,bottom:bottom,float:float,visibility:vis,display:d,hideFrom:hide,hideBelow:show,flexBasis:flex-b,flex:flex,flexDirection:flex-d/flexDir,flexGrow:flex-g,flexShrink:flex-sh,gridTemplateColumns:grid-tc,gridTemplateRows:grid-tr,gridColumn:grid-c,gridRow:grid-r,gridColumnStart:grid-cs,gridColumnEnd:grid-ce,gridAutoFlow:grid-af,gridAutoColumns:grid-ac,gridAutoRows:grid-ar,gap:gap,gridGap:grid-g,gridRowGap:grid-rg,gridColumnGap:grid-cg,rowGap:rg,columnGap:cg,justifyContent:jc,alignContent:ac,alignItems:ai,alignSelf:as,padding:p/1,paddingLeft:pl/1,paddingRight:pr/1,paddingTop:pt/1,paddingBottom:pb/1,paddingBlock:py/1/paddingY,paddingBlockEnd:pbe,paddingBlockStart:pbs,paddingInline:px/paddingX/1,paddingInlineEnd:pe/1/paddingEnd,paddingInlineStart:ps/1/paddingStart,marginLeft:ml/1,marginRight:mr/1,marginTop:mt/1,marginBottom:mb/1,margin:m/1,marginBlock:my/1/marginY,marginBlockEnd:mbe,marginBlockStart:mbs,marginInline:mx/1/marginX,marginInlineEnd:me/1/marginEnd,marginInlineStart:ms/1/marginStart,spaceX:sx,spaceY:sy,outlineWidth:ring-w/ringWidth,outlineColor:ring-c/ringColor,outline:ring/1,outlineOffset:ring-o/ringOffset,focusRing:focus-ring,focusVisibleRing:focus-v-ring,focusRingColor:focus-ring-c,focusRingOffset:focus-ring-o,focusRingWidth:focus-ring-w,focusRingStyle:focus-ring-s,divideX:dvd-x,divideY:dvd-y,divideColor:dvd-c,divideStyle:dvd-s,width:w/1,inlineSize:w-is,minWidth:min-w/minW,minInlineSize:min-w-is,maxWidth:max-w/maxW,maxInlineSize:max-w-is,height:h/1,blockSize:h-bs,minHeight:min-h/minH,minBlockSize:min-h-bs,maxHeight:max-h/maxH,maxBlockSize:max-b,boxSize:size,color:c,fontFamily:ff,fontSize:fs,fontSizeAdjust:fs-a,fontPalette:fp,fontKerning:fk,fontFeatureSettings:ff-s,fontWeight:fw,fontSmoothing:fsmt,fontVariant:fv,fontVariantAlternates:fv-alt,fontVariantCaps:fv-caps,fontVariationSettings:fv-s,fontVariantNumeric:fv-num,letterSpacing:ls,lineHeight:lh,textAlign:ta,textDecoration:td,textDecorationColor:td-c,textEmphasisColor:te-c,textDecorationStyle:td-s,textDecorationThickness:td-t,textUnderlineOffset:tu-o,textTransform:tt,textIndent:ti,textShadow:tsh,textShadowColor:tsh-c/textShadowColor,WebkitTextFillColor:wktf-c,textOverflow:tov,verticalAlign:va,wordBreak:wb,textWrap:tw,truncate:trunc,lineClamp:lc,listStyleType:li-t,listStylePosition:li-pos,listStyleImage:li-img,listStyle:li-s,backgroundPosition:bg-p/bgPosition,backgroundPositionX:bg-p-x/bgPositionX,backgroundPositionY:bg-p-y/bgPositionY,backgroundAttachment:bg-a/bgAttachment,backgroundClip:bg-cp/bgClip,background:bg/1,backgroundColor:bg-c/bgColor,backgroundOrigin:bg-o/bgOrigin,backgroundImage:bg-i/bgImage,backgroundRepeat:bg-r/bgRepeat,backgroundBlendMode:bg-bm/bgBlendMode,backgroundSize:bg-s/bgSize,backgroundGradient:bg-grad/bgGradient,backgroundLinear:bg-linear/bgLinear,backgroundRadial:bg-radial/bgRadial,backgroundConic:bg-conic/bgConic,textGradient:txt-grad,gradientFromPosition:grad-from-pos,gradientToPosition:grad-to-pos,gradientFrom:grad-from,gradientTo:grad-to,gradientVia:grad-via,gradientViaPosition:grad-via-pos,borderRadius:bdr/rounded,borderTopLeftRadius:bdr-tl/roundedTopLeft,borderTopRightRadius:bdr-tr/roundedTopRight,borderBottomRightRadius:bdr-br/roundedBottomRight,borderBottomLeftRadius:bdr-bl/roundedBottomLeft,borderTopRadius:bdr-t/roundedTop,borderRightRadius:bdr-r/roundedRight,borderBottomRadius:bdr-b/roundedBottom,borderLeftRadius:bdr-l/roundedLeft,borderStartStartRadius:bdr-ss/roundedStartStart,borderStartEndRadius:bdr-se/roundedStartEnd,borderStartRadius:bdr-s/roundedStart,borderEndStartRadius:bdr-es/roundedEndStart,borderEndEndRadius:bdr-ee/roundedEndEnd,borderEndRadius:bdr-e/roundedEnd,border:bd,borderWidth:bd-w,borderTopWidth:bd-t-w,borderLeftWidth:bd-l-w,borderRightWidth:bd-r-w,borderBottomWidth:bd-b-w,borderBlockStartWidth:bd-bs-w,borderBlockEndWidth:bd-be-w,borderColor:bd-c,borderInline:bd-x/borderX,borderInlineWidth:bd-x-w/borderXWidth,borderInlineColor:bd-x-c/borderXColor,borderBlock:bd-y/borderY,borderBlockWidth:bd-y-w/borderYWidth,borderBlockColor:bd-y-c/borderYColor,borderLeft:bd-l,borderLeftColor:bd-l-c,borderInlineStart:bd-s/borderStart,borderInlineStartWidth:bd-s-w/borderStartWidth,borderInlineStartColor:bd-s-c/borderStartColor,borderRight:bd-r,borderRightColor:bd-r-c,borderInlineEnd:bd-e/borderEnd,borderInlineEndWidth:bd-e-w/borderEndWidth,borderInlineEndColor:bd-e-c/borderEndColor,borderTop:bd-t,borderTopColor:bd-t-c,borderBottom:bd-b,borderBottomColor:bd-b-c,borderBlockEnd:bd-be,borderBlockEndColor:bd-be-c,borderBlockStart:bd-bs,borderBlockStartColor:bd-bs-c,opacity:op,boxShadow:bx-sh/shadow,boxShadowColor:bx-sh-c/shadowColor,mixBlendMode:mix-bm,filter:filter,brightness:brightness,contrast:contrast,grayscale:grayscale,hueRotate:hue-rotate,invert:invert,saturate:saturate,sepia:sepia,dropShadow:drop-shadow,blur:blur,backdropFilter:bkdp,backdropBlur:bkdp-blur,backdropBrightness:bkdp-brightness,backdropContrast:bkdp-contrast,backdropGrayscale:bkdp-grayscale,backdropHueRotate:bkdp-hue-rotate,backdropInvert:bkdp-invert,backdropOpacity:bkdp-opacity,backdropSaturate:bkdp-saturate,backdropSepia:bkdp-sepia,borderCollapse:bd-cl,borderSpacing:bd-sp,borderSpacingX:bd-sx,borderSpacingY:bd-sy,tableLayout:tbl,transitionTimingFunction:trs-tmf,transitionDelay:trs-dly,transitionDuration:trs-dur,transitionProperty:trs-prop,transition:transition,animation:anim,animationName:anim-n,animationTimingFunction:anim-tmf,animationDuration:anim-dur,animationDelay:anim-dly,animationPlayState:anim-ps,animationComposition:anim-comp,animationFillMode:anim-fm,animationDirection:anim-dir,animationIterationCount:anim-ic,animationRange:anim-r,animationState:anim-s,animationRangeStart:anim-rs,animationRangeEnd:anim-re,animationTimeline:anim-tl,transformOrigin:trf-o,transformBox:trf-b,transformStyle:trf-s,transform:trf,rotate:rotate,rotateX:rotate-x,rotateY:rotate-y,rotateZ:rotate-z,scale:scale,scaleX:scale-x,scaleY:scale-y,translate:translate,translateX:translate-x/x,translateY:translate-y/y,translateZ:translate-z/z,accentColor:ac-c,caretColor:ca-c,scrollBehavior:scr-bhv,scrollbar:scr-bar,scrollbarColor:scr-bar-c,scrollbarGutter:scr-bar-g,scrollbarWidth:scr-bar-w,scrollMargin:scr-m,scrollMarginLeft:scr-ml,scrollMarginRight:scr-mr,scrollMarginTop:scr-mt,scrollMarginBottom:scr-mb,scrollMarginBlock:scr-my/scrollMarginY,scrollMarginBlockEnd:scr-mbe,scrollMarginBlockStart:scr-mbt,scrollMarginInline:scr-mx/scrollMarginX,scrollMarginInlineEnd:scr-me,scrollMarginInlineStart:scr-ms,scrollPadding:scr-p,scrollPaddingBlock:scr-py/scrollPaddingY,scrollPaddingBlockStart:scr-pbs,scrollPaddingBlockEnd:scr-pbe,scrollPaddingInline:scr-px/scrollPaddingX,scrollPaddingInlineEnd:scr-pe,scrollPaddingInlineStart:scr-ps,scrollPaddingLeft:scr-pl,scrollPaddingRight:scr-pr,scrollPaddingTop:scr-pt,scrollPaddingBottom:scr-pb,scrollSnapAlign:scr-sa,scrollSnapStop:scrs-s,scrollSnapType:scrs-t,scrollSnapStrictness:scrs-strt,scrollSnapMargin:scrs-m,scrollSnapMarginTop:scrs-mt,scrollSnapMarginBottom:scrs-mb,scrollSnapMarginLeft:scrs-ml,scrollSnapMarginRight:scrs-mr,scrollSnapCoordinate:scrs-c,scrollSnapDestination:scrs-d,scrollSnapPointsX:scrs-px,scrollSnapPointsY:scrs-py,scrollSnapTypeX:scrs-tx,scrollSnapTypeY:scrs-ty,scrollTimeline:scrtl,scrollTimelineAxis:scrtl-a,scrollTimelineName:scrtl-n,touchAction:tch-a,userSelect:us,overflow:ov,overflowWrap:ov-wrap,overflowX:ov-x,overflowY:ov-y,overflowAnchor:ov-a,overflowBlock:ov-b,overflowInline:ov-i,overflowClipBox:ovcp-bx,overflowClipMargin:ovcp-m,overscrollBehaviorBlock:ovs-bb,overscrollBehaviorInline:ovs-bi,fill:fill,stroke:stk,strokeWidth:stk-w,strokeDasharray:stk-dsh,strokeDashoffset:stk-do,strokeLinecap:stk-lc,strokeLinejoin:stk-lj,strokeMiterlimit:stk-ml,strokeOpacity:stk-op,srOnly:sr,debug:debug,appearance:ap,backfaceVisibility:bfv,clipPath:cp-path,hyphens:hy,mask:msk,maskImage:msk-i,maskSize:msk-s,textSizeAdjust:txt-adj,container:cq,containerName:cq-n,containerType:cq-t,cursor:cursor,textStyle:textStyle,layerStyle:layerStyle,animationStyle:animationStyle",gL=new Map,mL=new Map;zke.split(",").forEach(e=>{const[r,n]=e.split(":"),[o,...i]=n.split("/");gL.set(r,o),i.length&&i.forEach(a=>{mL.set(a==="1"?o:a,r)})});const yL=e=>mL.get(e)||e,vL={conditions:{shift:fL,finalize:hL,breakpoints:{keys:["base","xs","sm","md","lg","xl"]}},utility:{transform:(e,r)=>{const n=yL(e);return{className:`${gL.get(n)||fke(n)}_${i7(r)}`}},hasShorthand:!0,toHash:(e,r)=>r(e.join(":")),resolveShorthand:yL}},Tke=cL(vL),fe=(...e)=>Tke(qu(...e));fe.raw=(...e)=>qu(...e);const{mergeCss:qu}=uke(vL);function Ge(){let e="",r=0,n;for(;r({base:{},variants:{},defaultVariants:{},compoundVariants:[],...e});function T1(e){const{base:r,variants:n,defaultVariants:o,compoundVariants:i}=bL(e),a=f=>({...o,...Vu(f)});function l(f={}){const m=a(f);let v={...r};for(const[x,k]of Object.entries(m))n[x]?.[k]&&(v=qu(v,n[x][k]));const w=u7(i,m);return qu(v,w)}function s(f){const m=bL(f.config),v=c7(f.variantKeys,Object.keys(n));return T1({base:qu(r,m.base),variants:Object.fromEntries(v.map(w=>[w,qu(n[w],m.variants[w])])),defaultVariants:a7(o,m.defaultVariants),compoundVariants:[...i,...m.compoundVariants]})}function c(f){return fe(l(f))}const d=Object.keys(n);function u(f){return Fn(f,d)}const p=Object.fromEntries(Object.entries(n).map(([f,m])=>[f,Object.keys(m)]));return Object.assign(Kn(c),{__cva__:!0,variantMap:p,variantKeys:d,raw:l,config:e,merge:s,splitVariantProps:u,getVariantProps:a})}function u7(e,r){let n={};return e.forEach(o=>{Object.entries(o).every(([i,a])=>i==="css"?!0:(Array.isArray(a)?a:[a]).some(l=>r[i]===l))&&(n=qu(n,o.css))}),n}function jke(e,r,n,o){if(r.length>0&&typeof n?.[o]=="object")throw new Error(`[recipe:${e}:${o}] Conditions are not supported when using compound variants.`)}function Ake(e){const r=Object.entries(_ke(e)).map(([p,f])=>[p,T1(f)]),n=e.defaultVariants??{},o=r.reduce((p,[f,m])=>(e.className&&(p[f]=m.config.className),p),{});function i(p){const f=r.map(([m,v])=>[m,Ge(v(p),o[m])]);return Object.fromEntries(f)}function a(p){const f=r.map(([m,v])=>[m,v.raw(p)]);return Object.fromEntries(f)}const l=e.variants??{},s=Object.keys(l);function c(p){return Fn(p,s)}const d=p=>({...n,...Vu(p)}),u=Object.fromEntries(Object.entries(l).map(([p,f])=>[p,Object.keys(f)]));return Object.assign(Kn(i),{__cva__:!1,raw:a,config:e,variantMap:u,variantKeys:s,classNameMap:o,splitVariantProps:c,getVariantProps:d})}var Dke={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};const wt=(e,r,n,o)=>{const i=S.forwardRef(({color:a="currentColor",size:l=24,stroke:s=2,title:c,className:d,children:u,...p},f)=>S.createElement("svg",{ref:f,...Dke[e],width:l,height:l,className:["tabler-icon",`tabler-icon-${r}`,d].join(" "),...e==="filled"?{fill:a}:{strokeWidth:s,stroke:a},...p},[c&&S.createElement("title",{key:"svg-title"},c),...o.map(([m,v])=>S.createElement(m,v)),...Array.isArray(u)?u:[u]]));return i.displayName=`${n}`,i},Pke=[["path",{d:"M12 6m-7 0a7 3 0 1 0 14 0a7 3 0 1 0 -14 0",key:"svg-0"}],["path",{d:"M5 6v12c0 1.657 3.134 3 7 3s7 -1.343 7 -3v-12",key:"svg-1"}]],xL=wt("outline","cylinder","Cylinder",Pke),Mke=[["path",{d:"M21 14.008v-5.018a1.98 1.98 0 0 0 -1 -1.717l-4 -2.008a2.016 2.016 0 0 0 -2 0l-10 5.008c-.619 .355 -1 1.01 -1 1.718v5.018c0 .709 .381 1.363 1 1.717l4 2.008a2.016 2.016 0 0 0 2 0l10 -5.008c.619 -.355 1 -1.01 1 -1.718z",key:"svg-0"}],["path",{d:"M9 21v-7.5",key:"svg-1"}],["path",{d:"M9 13.5l11.5 -5.5",key:"svg-2"}],["path",{d:"M3.5 11l5.5 2.5",key:"svg-3"}]],Nke=wt("outline","rectangular-prism","RectangularPrism",Mke),Bke=[["path",{d:"M3 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-0"}],["path",{d:"M10 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-1"}],["path",{d:"M17 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-2"}],["path",{d:"M5 11v-3a3 3 0 0 1 3 -3h8a3 3 0 0 1 3 3v3",key:"svg-3"}],["path",{d:"M16.5 8.5l2.5 2.5l2.5 -2.5",key:"svg-4"}]],Ike=wt("outline","reorder","Reorder",Bke),Oke=[["path",{d:"M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0",key:"svg-0"}],["path",{d:"M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2",key:"svg-1"}]],Lke=wt("outline","user","User",Oke),Fke=[["path",{d:"M6 5a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2v-14z",key:"svg-0"}],["path",{d:"M11 4h2",key:"svg-1"}],["path",{d:"M12 17v.01",key:"svg-2"}]],Vke=wt("outline","device-mobile","DeviceMobile",Fke),qke=[["path",{d:"M4 8h16",key:"svg-0"}],["path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z",key:"svg-1"}],["path",{d:"M8 4v4",key:"svg-2"}]],Hke=wt("outline","browser","Browser",qke),p7=S.createContext(null);function Uke({value:e,children:r}){return S.useContext(p7)?y.jsx(y.Fragment,{children:r}):y.jsx(p7.Provider,{value:e,children:r})}function bx({element:e,className:r,style:n}){const o=S.useContext(p7);if(!e||!e.icon||e.icon==="none")return null;let i;return e.icon.startsWith("http://")||e.icon.startsWith("https://")?i=y.jsx("img",{src:e.icon,alt:e.title}):o&&(i=y.jsx(o,{node:e})),i?y.jsx("div",{className:Ge(r,"likec4-element-icon"),"data-likec4-icon":e.icon,style:n,children:i}):null}const Wke={browser:Hke,cylinder:xL,mobile:Vke,person:Lke,queue:Ike,rectangle:Nke,storage:xL};function Gke({element:e,className:r}){const n=y.jsx(bx,{element:e,className:r});if(n)return n;const o=Wke[e.shape];return y.jsx("div",{className:Ge(r,"likec4-shape-icon"),children:y.jsx(o,{})})}function Zh(e){const r=S.useRef(e);return r.current=e,S.useMemo(()=>Object.freeze({get current(){return r.current}}),[])}function wL(e){const r=Zh(e);S.useEffect(()=>()=>{r.current()},[])}function h7(e,r,n,o=0){const i=S.useRef(void 0),a=S.useRef(void 0),l=S.useRef(e),s=S.useRef(void 0),c=()=>{i.current&&(clearTimeout(i.current),i.current=void 0),a.current&&(clearTimeout(a.current),a.current=void 0)};return wL(c),S.useEffect(()=>{l.current=e},r),S.useMemo(()=>{const d=()=>{if(c(),!s.current)return;const p=s.current;s.current=void 0,l.current.apply(p.this,p.args)},u=function(...p){i.current&&clearTimeout(i.current),s.current={args:p,this:this},i.current=setTimeout(d,n),o>0&&!a.current&&(a.current=setTimeout(d,o))};return Object.defineProperties(u,{length:{value:e.length},name:{value:`${e.name||"anonymous"}__debounced__${n}`}}),u},[n,o,...r])}const Yke=()=>{},xx=typeof globalThis<"u"&&typeof navigator<"u"&&typeof document<"u";function Xke(e){const r=Zh(e),n=S.useRef(0),o=S.useCallback(()=>{xx&&n.current&&(cancelAnimationFrame(n.current),n.current=0)},[]);return wL(o),[S.useMemo(()=>{const i=(...a)=>{xx&&(o(),n.current=requestAnimationFrame(()=>{r.current(...a),n.current=0}))};return Object.defineProperties(i,{length:{value:e.length},name:{value:`${e.name||"anonymous"}__raf`}}),i},[]),o]}const Kke=(e,r)=>{if(e===r)return!0;if(e.length!==r.length)return!1;for(const[n,o]of e.entries())if(o!==r[n])return!1;return!0};function Zke(e,r,n=Kke,o=S.useEffect,...i){const a=S.useRef(void 0);(a.current===void 0||xx&&!n(a.current,r))&&(a.current=r),o(e,a.current,...i)}function kL(){const e=S.useRef(!0);return S.useEffect(()=>{e.current=!1},[]),e.current}const f7=xx?S.useLayoutEffect:S.useEffect;function Qke(e){S.useEffect(()=>{e()},[])}function _L(e,r){const[n,o]=Xke(e);S.useEffect(()=>(n(),o),r)}const Jke=e=>(e+1)%Number.MAX_SAFE_INTEGER;function e6e(){const[,e]=S.useState(0);return S.useCallback(()=>{e(Jke)},[])}function t6e(e,r){const n=kL();S.useEffect(n?Yke:e,r)}const r6e=e=>{e&&clearTimeout(e)};function wx(e,r){const n=Zh(e),o=Zh(r),i=S.useRef(null),a=S.useCallback(()=>{r6e(i.current)},[]),l=S.useCallback(()=>{o.current!==void 0&&(a(),i.current=setTimeout(()=>{n.current()},o.current))},[]);return S.useEffect(()=>(l(),a),[r]),[a,l]}const SL=(e,r,n)=>{const o=S.useRef(void 0);return(o.current===void 0||!n(o.current,r))&&(o.current=r),S.useMemo(e,o.current)};function dn(e){if(typeof e=="string"||typeof e=="number")return""+e;let r="";if(Array.isArray(e))for(let n=0,o;n{}};function kx(){for(var e=0,r=arguments.length,n={},o;e=0&&(o=n.slice(i+1),n=n.slice(0,i)),n&&!r.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:o}})}_x.prototype=kx.prototype={constructor:_x,on:function(e,r){var n=this._,o=o6e(e+"",n),i,a=-1,l=o.length;if(arguments.length<2){for(;++a0)for(var n=new Array(i),o=0,i,a;o=0&&(r=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),CL.hasOwnProperty(r)?{space:CL[r],local:e}:e}function a6e(e){return function(){var r=this.ownerDocument,n=this.namespaceURI;return n===g7&&r.documentElement.namespaceURI===g7?r.createElement(e):r.createElementNS(n,e)}}function l6e(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function $L(e){var r=Sx(e);return(r.local?l6e:a6e)(r)}function s6e(){}function m7(e){return e==null?s6e:function(){return this.querySelector(e)}}function c6e(e){typeof e!="function"&&(e=m7(e));for(var r=this._groups,n=r.length,o=new Array(n),i=0;i=_&&(_=C+1);!(R=x[_])&&++_=0;)(l=o[i])&&(a&&l.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(l,a),a=l);return this}function P6e(e){e||(e=M6e);function r(p,f){return p&&f?e(p.__data__,f.__data__):!p-!f}for(var n=this._groups,o=n.length,i=new Array(o),a=0;ar?1:e>=r?0:NaN}function N6e(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function B6e(){return Array.from(this)}function I6e(){for(var e=this._groups,r=0,n=e.length;r1?this.each((r==null?X6e:typeof r=="function"?Z6e:K6e)(e,r,n??"")):Qh(this.node(),e)}function Qh(e,r){return e.style.getPropertyValue(r)||AL(e).getComputedStyle(e,null).getPropertyValue(r)}function J6e(e){return function(){delete this[e]}}function e_e(e,r){return function(){this[e]=r}}function t_e(e,r){return function(){var n=r.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function r_e(e,r){return arguments.length>1?this.each((r==null?J6e:typeof r=="function"?t_e:e_e)(e,r)):this.node()[e]}function DL(e){return e.trim().split(/^|\s+/)}function y7(e){return e.classList||new PL(e)}function PL(e){this._node=e,this._names=DL(e.getAttribute("class")||"")}PL.prototype={add:function(e){var r=this._names.indexOf(e);r<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var r=this._names.indexOf(e);r>=0&&(this._names.splice(r,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function ML(e,r){for(var n=y7(e),o=-1,i=r.length;++o=0&&(n=r.slice(o+1),r=r.slice(0,o)),{type:r,name:n}})}function T_e(e){return function(){var r=this.__on;if(r){for(var n=0,o=-1,i=r.length,a;n()=>e;function b7(e,{sourceEvent:r,subject:n,target:o,identifier:i,active:a,x:l,y:s,dx:c,dy:d,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:r,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:d,enumerable:!0,configurable:!0},_:{value:u}})}b7.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function L_e(e){return!e.ctrlKey&&!e.button}function F_e(){return this.parentNode}function V_e(e,r){return r??{x:e.x,y:e.y}}function q_e(){return navigator.maxTouchPoints||"ontouchstart"in this}function FL(){var e=L_e,r=F_e,n=V_e,o=q_e,i={},a=kx("start","drag","end"),l=0,s,c,d,u,p=0;function f($){$.on("mousedown.drag",m).filter(o).on("touchstart.drag",x).on("touchmove.drag",k,O_e).on("touchend.drag touchcancel.drag",C).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m($,R){if(!(u||!e.call(this,$,R))){var T=_(this,r.call(this,$,R),$,R,"mouse");T&&(Ei($.view).on("mousemove.drag",v,A1).on("mouseup.drag",w,A1),OL($.view),v7($),d=!1,s=$.clientX,c=$.clientY,T("start",$))}}function v($){if(Jh($),!d){var R=$.clientX-s,T=$.clientY-c;d=R*R+T*T>p}i.mouse("drag",$)}function w($){Ei($.view).on("mousemove.drag mouseup.drag",null),LL($.view,d),Jh($),i.mouse("end",$)}function x($,R){if(e.call(this,$,R)){var T=$.changedTouches,A=r.call(this,$,R),z=T.length,j,I;for(j=0;j>8&15|r>>4&240,r>>4&15|r&240,(r&15)<<4|r&15,1):n===8?Rx(r>>24&255,r>>16&255,r>>8&255,(r&255)/255):n===4?Rx(r>>12&15|r>>8&240,r>>8&15|r>>4&240,r>>4&15|r&240,((r&15)<<4|r&15)/255):null):(r=U_e.exec(e))?new ri(r[1],r[2],r[3],1):(r=W_e.exec(e))?new ri(r[1]*255/100,r[2]*255/100,r[3]*255/100,1):(r=G_e.exec(e))?Rx(r[1],r[2],r[3],r[4]):(r=Y_e.exec(e))?Rx(r[1]*255/100,r[2]*255/100,r[3]*255/100,r[4]):(r=X_e.exec(e))?XL(r[1],r[2]/100,r[3]/100,1):(r=K_e.exec(e))?XL(r[1],r[2]/100,r[3]/100,r[4]):qL.hasOwnProperty(e)?WL(qL[e]):e==="transparent"?new ri(NaN,NaN,NaN,0):null}function WL(e){return new ri(e>>16&255,e>>8&255,e&255,1)}function Rx(e,r,n,o){return o<=0&&(e=r=n=NaN),new ri(e,r,n,o)}function J_e(e){return e instanceof D1||(e=Hu(e)),e?(e=e.rgb(),new ri(e.r,e.g,e.b,e.opacity)):new ri}function w7(e,r,n,o){return arguments.length===1?J_e(e):new ri(e,r,n,o??1)}function ri(e,r,n,o){this.r=+e,this.g=+r,this.b=+n,this.opacity=+o}x7(ri,w7,VL(D1,{brighter(e){return e=e==null?$x:Math.pow($x,e),new ri(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?P1:Math.pow(P1,e),new ri(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new ri(Uu(this.r),Uu(this.g),Uu(this.b),zx(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:GL,formatHex:GL,formatHex8:e8e,formatRgb:YL,toString:YL}));function GL(){return`#${Wu(this.r)}${Wu(this.g)}${Wu(this.b)}`}function e8e(){return`#${Wu(this.r)}${Wu(this.g)}${Wu(this.b)}${Wu((isNaN(this.opacity)?1:this.opacity)*255)}`}function YL(){const e=zx(this.opacity);return`${e===1?"rgb(":"rgba("}${Uu(this.r)}, ${Uu(this.g)}, ${Uu(this.b)}${e===1?")":`, ${e})`}`}function zx(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Uu(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Wu(e){return e=Uu(e),(e<16?"0":"")+e.toString(16)}function XL(e,r,n,o){return o<=0?e=r=n=NaN:n<=0||n>=1?e=r=NaN:r<=0&&(e=NaN),new Ya(e,r,n,o)}function KL(e){if(e instanceof Ya)return new Ya(e.h,e.s,e.l,e.opacity);if(e instanceof D1||(e=Hu(e)),!e)return new Ya;if(e instanceof Ya)return e;e=e.rgb();var r=e.r/255,n=e.g/255,o=e.b/255,i=Math.min(r,n,o),a=Math.max(r,n,o),l=NaN,s=a-i,c=(a+i)/2;return s?(r===a?l=(n-o)/s+(n0&&c<1?0:l,new Ya(l,s,c,e.opacity)}function t8e(e,r,n,o){return arguments.length===1?KL(e):new Ya(e,r,n,o??1)}function Ya(e,r,n,o){this.h=+e,this.s=+r,this.l=+n,this.opacity=+o}x7(Ya,t8e,VL(D1,{brighter(e){return e=e==null?$x:Math.pow($x,e),new Ya(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?P1:Math.pow(P1,e),new Ya(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,r=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,o=n+(n<.5?n:1-n)*r,i=2*n-o;return new ri(k7(e>=240?e-240:e+120,i,o),k7(e,i,o),k7(e<120?e+240:e-120,i,o),this.opacity)},clamp(){return new Ya(ZL(this.h),Tx(this.s),Tx(this.l),zx(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 e=zx(this.opacity);return`${e===1?"hsl(":"hsla("}${ZL(this.h)}, ${Tx(this.s)*100}%, ${Tx(this.l)*100}%${e===1?")":`, ${e})`}`}}));function ZL(e){return e=(e||0)%360,e<0?e+360:e}function Tx(e){return Math.max(0,Math.min(1,e||0))}function k7(e,r,n){return(e<60?r+(n-r)*e/60:e<180?n:e<240?r+(n-r)*(240-e)/60:r)*255}const _7=e=>()=>e;function r8e(e,r){return function(n){return e+n*r}}function n8e(e,r,n){return e=Math.pow(e,n),r=Math.pow(r,n)-e,n=1/n,function(o){return Math.pow(e+o*r,n)}}function o8e(e){return(e=+e)==1?QL:function(r,n){return n-r?n8e(r,n,e):_7(isNaN(r)?n:r)}}function QL(e,r){var n=r-e;return n?r8e(e,n):_7(isNaN(e)?r:e)}const jx=(function e(r){var n=o8e(r);function o(i,a){var l=n((i=w7(i)).r,(a=w7(a)).r),s=n(i.g,a.g),c=n(i.b,a.b),d=QL(i.opacity,a.opacity);return function(u){return i.r=l(u),i.g=s(u),i.b=c(u),i.opacity=d(u),i+""}}return o.gamma=e,o})(1);function i8e(e,r){r||(r=[]);var n=e?Math.min(r.length,e.length):0,o=r.slice(),i;return function(a){for(i=0;in&&(a=r.slice(n,a),s[l]?s[l]+=a:s[++l]=a),(o=o[0])===(i=i[0])?s[l]?s[l]+=i:s[++l]=i:(s[++l]=null,c.push({i:l,x:Ul(o,i)})),n=E7.lastIndex;return n180?u+=360:u-d>180&&(d+=360),f.push({i:p.push(i(p)+"rotate(",null,o)-2,x:Ul(d,u)})):u&&p.push(i(p)+"rotate("+u+o)}function s(d,u,p,f){d!==u?f.push({i:p.push(i(p)+"skewX(",null,o)-2,x:Ul(d,u)}):u&&p.push(i(p)+"skewX("+u+o)}function c(d,u,p,f,m,v){if(d!==p||u!==f){var w=m.push(i(m)+"scale(",null,",",null,")");v.push({i:w-4,x:Ul(d,p)},{i:w-2,x:Ul(u,f)})}else(p!==1||f!==1)&&m.push(i(m)+"scale("+p+","+f+")")}return function(d,u){var p=[],f=[];return d=e(d),u=e(u),a(d.translateX,d.translateY,u.translateX,u.translateY,p,f),l(d.rotate,u.rotate,p,f),s(d.skewX,u.skewX,p,f),c(d.scaleX,d.scaleY,u.scaleX,u.scaleY,p,f),d=u=null,function(m){for(var v=-1,w=f.length,x;++v=0&&e._call.call(void 0,r),e=e._next;--tf}function sF(){Gu=(Mx=L1.now())+Nx,tf=B1=0;try{x8e()}finally{tf=0,k8e(),Gu=0}}function w8e(){var e=L1.now(),r=e-Mx;r>iF&&(Nx-=r,Mx=e)}function k8e(){for(var e,r=Px,n,o=1/0;r;)r._call?(o>r._time&&(o=r._time),e=r,r=r._next):(n=r._next,r._next=null,r=e?e._next=n:Px=n);O1=e,$7(o)}function $7(e){if(!tf){B1&&(B1=clearTimeout(B1));var r=e-Gu;r>24?(e<1/0&&(B1=setTimeout(sF,e-L1.now()-Nx)),I1&&(I1=clearInterval(I1))):(I1||(Mx=L1.now(),I1=setInterval(w8e,iF)),tf=1,aF(sF))}}function cF(e,r,n){var o=new Bx;return r=r==null?0:+r,o.restart(i=>{o.stop(),e(i+r)},r,n),o}var _8e=kx("start","end","cancel","interrupt"),S8e=[],dF=0,uF=1,R7=2,Ix=3,pF=4,z7=5,Ox=6;function Lx(e,r,n,o,i,a){var l=e.__transition;if(!l)e.__transition={};else if(n in l)return;E8e(e,n,{name:r,index:o,group:i,on:_8e,tween:S8e,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:dF})}function T7(e,r){var n=Xa(e,r);if(n.state>dF)throw new Error("too late; already scheduled");return n}function Wl(e,r){var n=Xa(e,r);if(n.state>Ix)throw new Error("too late; already running");return n}function Xa(e,r){var n=e.__transition;if(!n||!(n=n[r]))throw new Error("transition not found");return n}function E8e(e,r,n){var o=e.__transition,i;o[r]=n,n.timer=lF(a,0,n.time);function a(d){n.state=uF,n.timer.restart(l,n.delay,n.time),n.delay<=d&&l(d-n.delay)}function l(d){var u,p,f,m;if(n.state!==uF)return c();for(u in o)if(m=o[u],m.name===n.name){if(m.state===Ix)return cF(l);m.state===pF?(m.state=Ox,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete o[u]):+uR7&&o.state=0&&(r=r.slice(0,n)),!r||r==="start"})}function t7e(e,r,n){var o,i,a=e7e(r)?T7:Wl;return function(){var l=a(this,e),s=l.on;s!==o&&(i=(o=s).copy()).on(r,n),l.on=i}}function r7e(e,r){var n=this._id;return arguments.length<2?Xa(this.node(),n).on.on(e):this.each(t7e(n,e,r))}function n7e(e){return function(){var r=this.parentNode;for(var n in this.__transition)if(+n!==e)return;r&&r.removeChild(this)}}function o7e(){return this.on("end.remove",n7e(this._id))}function i7e(e){var r=this._name,n=this._id;typeof e!="function"&&(e=m7(e));for(var o=this._groups,i=o.length,a=new Array(i),l=0;l()=>e;function T7e(e,{sourceEvent:r,target:n,transform:o,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:r,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:o,enumerable:!0,configurable:!0},_:{value:i}})}function Us(e,r,n){this.k=e,this.x=r,this.y=n}Us.prototype={constructor:Us,scale:function(e){return e===1?this:new Us(this.k*e,this.x,this.y)},translate:function(e,r){return e===0&r===0?this:new Us(this.k,this.x+this.k*e,this.y+this.k*r)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var qx=new Us(1,0,0);mF.prototype=Us.prototype;function mF(e){for(;!e.__zoom;)if(!(e=e.parentNode))return qx;return e.__zoom}function A7(e){e.stopImmediatePropagation()}function F1(e){e.preventDefault(),e.stopImmediatePropagation()}function j7e(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function A7e(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function yF(){return this.__zoom||qx}function D7e(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function P7e(){return navigator.maxTouchPoints||"ontouchstart"in this}function M7e(e,r,n){var o=e.invertX(r[0][0])-n[0][0],i=e.invertX(r[1][0])-n[1][0],a=e.invertY(r[0][1])-n[0][1],l=e.invertY(r[1][1])-n[1][1];return e.translate(i>o?(o+i)/2:Math.min(0,o)||Math.max(0,i),l>a?(a+l)/2:Math.min(0,a)||Math.max(0,l))}function vF(){var e=j7e,r=A7e,n=M7e,o=D7e,i=P7e,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Dx,d=kx("start","zoom","end"),u,p,f,m=500,v=150,w=0,x=10;function k(P){P.property("__zoom",yF).on("wheel.zoom",z,{passive:!1}).on("mousedown.zoom",j).on("dblclick.zoom",I).filter(i).on("touchstart.zoom",N).on("touchmove.zoom",L).on("touchend.zoom touchcancel.zoom",H).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}k.transform=function(P,V,B,F){var q=P.selection?P.selection():P;q.property("__zoom",yF),P!==q?R(P,V,B,F):q.interrupt().each(function(){T(this,arguments).event(F).start().zoom(null,typeof V=="function"?V.apply(this,arguments):V).end()})},k.scaleBy=function(P,V,B,F){k.scaleTo(P,function(){var q=this.__zoom.k,G=typeof V=="function"?V.apply(this,arguments):V;return q*G},B,F)},k.scaleTo=function(P,V,B,F){k.transform(P,function(){var q=r.apply(this,arguments),G=this.__zoom,U=B==null?$(q):typeof B=="function"?B.apply(this,arguments):B,Y=G.invert(U),K=typeof V=="function"?V.apply(this,arguments):V;return n(_(C(G,K),U,Y),q,l)},B,F)},k.translateBy=function(P,V,B,F){k.transform(P,function(){return n(this.__zoom.translate(typeof V=="function"?V.apply(this,arguments):V,typeof B=="function"?B.apply(this,arguments):B),r.apply(this,arguments),l)},null,F)},k.translateTo=function(P,V,B,F,q){k.transform(P,function(){var G=r.apply(this,arguments),U=this.__zoom,Y=F==null?$(G):typeof F=="function"?F.apply(this,arguments):F;return n(qx.translate(Y[0],Y[1]).scale(U.k).translate(typeof V=="function"?-V.apply(this,arguments):-V,typeof B=="function"?-B.apply(this,arguments):-B),G,l)},F,q)};function C(P,V){return V=Math.max(a[0],Math.min(a[1],V)),V===P.k?P:new Us(V,P.x,P.y)}function _(P,V,B){var F=V[0]-B[0]*P.k,q=V[1]-B[1]*P.k;return F===P.x&&q===P.y?P:new Us(P.k,F,q)}function $(P){return[(+P[0][0]+ +P[1][0])/2,(+P[0][1]+ +P[1][1])/2]}function R(P,V,B,F){P.on("start.zoom",function(){T(this,arguments).event(F).start()}).on("interrupt.zoom end.zoom",function(){T(this,arguments).event(F).end()}).tween("zoom",function(){var q=this,G=arguments,U=T(q,G).event(F),Y=r.apply(q,G),K=B==null?$(Y):typeof B=="function"?B.apply(q,G):B,O=Math.max(Y[1][0]-Y[0][0],Y[1][1]-Y[0][1]),W=q.__zoom,Z=typeof V=="function"?V.apply(q,G):V,Q=c(W.invert(K).concat(O/W.k),Z.invert(K).concat(O/Z.k));return function(ie){if(ie===1)ie=Z;else{var te=Q(ie),re=O/te[2];ie=new Us(re,K[0]-te[0]*re,K[1]-te[1]*re)}U.zoom(null,ie)}})}function T(P,V,B){return!B&&P.__zooming||new A(P,V)}function A(P,V){this.that=P,this.args=V,this.active=0,this.sourceEvent=null,this.extent=r.apply(P,V),this.taps=0}A.prototype={event:function(P){return P&&(this.sourceEvent=P),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(P,V){return this.mouse&&P!=="mouse"&&(this.mouse[1]=V.invert(this.mouse[0])),this.touch0&&P!=="touch"&&(this.touch0[1]=V.invert(this.touch0[0])),this.touch1&&P!=="touch"&&(this.touch1[1]=V.invert(this.touch1[0])),this.that.__zoom=V,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(P){var V=Ei(this.that).datum();d.call(P,this.that,new T7e(P,{sourceEvent:this.sourceEvent,target:k,transform:this.that.__zoom,dispatch:d}),V)}};function z(P,...V){if(!e.apply(this,arguments))return;var B=T(this,V).event(P),F=this.__zoom,q=Math.max(a[0],Math.min(a[1],F.k*Math.pow(2,o.apply(this,arguments)))),G=Ga(P);if(B.wheel)(B.mouse[0][0]!==G[0]||B.mouse[0][1]!==G[1])&&(B.mouse[1]=F.invert(B.mouse[0]=G)),clearTimeout(B.wheel);else{if(F.k===q)return;B.mouse=[G,F.invert(G)],Fx(this),B.start()}F1(P),B.wheel=setTimeout(U,v),B.zoom("mouse",n(_(C(F,q),B.mouse[0],B.mouse[1]),B.extent,l));function U(){B.wheel=null,B.end()}}function j(P,...V){if(f||!e.apply(this,arguments))return;var B=P.currentTarget,F=T(this,V,!0).event(P),q=Ei(P.view).on("mousemove.zoom",K,!0).on("mouseup.zoom",O,!0),G=Ga(P,B),U=P.clientX,Y=P.clientY;OL(P.view),A7(P),F.mouse=[G,this.__zoom.invert(G)],Fx(this),F.start();function K(W){if(F1(W),!F.moved){var Z=W.clientX-U,Q=W.clientY-Y;F.moved=Z*Z+Q*Q>w}F.event(W).zoom("mouse",n(_(F.that.__zoom,F.mouse[0]=Ga(W,B),F.mouse[1]),F.extent,l))}function O(W){q.on("mousemove.zoom mouseup.zoom",null),LL(W.view,F.moved),F1(W),F.event(W).end()}}function I(P,...V){if(e.apply(this,arguments)){var B=this.__zoom,F=Ga(P.changedTouches?P.changedTouches[0]:P,this),q=B.invert(F),G=B.k*(P.shiftKey?.5:2),U=n(_(C(B,G),F,q),r.apply(this,V),l);F1(P),s>0?Ei(this).transition().duration(s).call(R,U,F,P):Ei(this).call(k.transform,U,F,P)}}function N(P,...V){if(e.apply(this,arguments)){var B=P.touches,F=B.length,q=T(this,V,P.changedTouches.length===F).event(P),G,U,Y,K;for(A7(P),U=0;U"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"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.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:r,sourceHandle:n,targetHandle:o})=>`Couldn't create edge for ${e} handle id: "${e==="source"?n:o}", edge id: ${r}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},V1=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],bF=["Enter"," ","Escape"],xF={"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:e,x:r,y:n})=>`Moved selected node ${e}. New position, x: ${r}, y: ${n}`,"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 rf;(function(e){e.Strict="strict",e.Loose="loose"})(rf||(rf={}));var Yu;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(Yu||(Yu={}));var q1;(function(e){e.Partial="partial",e.Full="full"})(q1||(q1={}));const wF={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var id;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(id||(id={}));var Hx;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(Hx||(Hx={}));var Ue;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(Ue||(Ue={}));const kF={[Ue.Left]:Ue.Right,[Ue.Right]:Ue.Left,[Ue.Top]:Ue.Bottom,[Ue.Bottom]:Ue.Top};function _F(e){return e===null?null:e?"valid":"invalid"}const SF=e=>"id"in e&&"source"in e&&"target"in e,N7e=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),D7=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),H1=(e,r=[0,0])=>{const{width:n,height:o}=_o(e),i=e.origin??r,a=n*i[0],l=o*i[1];return{x:e.position.x-a,y:e.position.y-l}},EF=(e,r={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((o,i)=>{const a=typeof i=="string";let l=!r.nodeLookup&&!a?i:void 0;r.nodeLookup&&(l=a?r.nodeLookup.get(i):D7(i)?i:r.nodeLookup.get(i.id));const s=l?Gx(l,r.nodeOrigin):{x:0,y:0,x2:0,y2:0};return Ux(o,s)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return Wx(n)},nf=(e,r={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},o=!1;return e.forEach(i=>{(r.filter===void 0||r.filter(i))&&(n=Ux(n,Gx(i)),o=!0)}),o?Wx(n):{x:0,y:0,width:0,height:0}},P7=(e,r,[n,o,i]=[0,0,1],a=!1,l=!1)=>{const s={...G1(r,[n,o,i]),width:r.width/i,height:r.height/i},c=[];for(const d of e.values()){const{measured:u,selectable:p=!0,hidden:f=!1}=d;if(l&&!p||f)continue;const m=u.width??d.width??d.initialWidth??null,v=u.height??d.height??d.initialHeight??null,w=U1(s,Ku(d)),x=(m??0)*(v??0),k=a&&w>0;(!d.internals.handleBounds||k||w>=x||d.dragging)&&c.push(d)}return c},B7e=(e,r)=>{const n=new Set;return e.forEach(o=>{n.add(o.id)}),r.filter(o=>n.has(o.source)||n.has(o.target))};function I7e(e,r){const n=new Map,o=r?.nodes?new Set(r.nodes.map(i=>i.id)):null;return e.forEach(i=>{i.measured.width&&i.measured.height&&(r?.includeHiddenNodes||!i.hidden)&&(!o||o.has(i.id))&&n.set(i.id,i)}),n}async function O7e({nodes:e,width:r,height:n,panZoom:o,minZoom:i,maxZoom:a},l){if(e.size===0)return Promise.resolve(!0);const s=I7e(e,l),c=nf(s),d=Ws(c,r,n,l?.minZoom??i,l?.maxZoom??a,l?.padding??.1);return await o.setViewport(d,{duration:l?.duration,ease:l?.ease,interpolate:l?.interpolate}),Promise.resolve(!0)}function CF({nodeId:e,nextPosition:r,nodeLookup:n,nodeOrigin:o=[0,0],nodeExtent:i,onError:a}){const l=n.get(e),s=l.parentId?n.get(l.parentId):void 0,{x:c,y:d}=s?s.internals.positionAbsolute:{x:0,y:0},u=l.origin??o;let p=l.extent||i;if(l.extent==="parent"&&!l.expandParent)if(!s)a?.("005",Gl.error005());else{const m=s.measured.width,v=s.measured.height;m&&v&&(p=[[c,d],[c+m,d+v]])}else s&&sf(l.extent)&&(p=[[l.extent[0][0]+c,l.extent[0][1]+d],[l.extent[1][0]+c,l.extent[1][1]+d]]);const f=sf(p)?Xu(r,p,l.measured):r;return(l.measured.width===void 0||l.measured.height===void 0)&&a?.("015",Gl.error015()),{position:{x:f.x-c+(l.measured.width??0)*u[0],y:f.y-d+(l.measured.height??0)*u[1]},positionAbsolute:f}}async function L7e({nodesToRemove:e=[],edgesToRemove:r=[],nodes:n,edges:o,onBeforeDelete:i}){const a=new Set(e.map(p=>p.id)),l=[];for(const p of n){if(p.deletable===!1)continue;const f=a.has(p.id),m=!f&&p.parentId&&l.find(v=>v.id===p.parentId);(f||m)&&l.push(p)}const s=new Set(r.map(p=>p.id)),c=o.filter(p=>p.deletable!==!1),d=B7e(l,c);for(const p of c)s.has(p.id)&&!d.find(f=>f.id===p.id)&&d.push(p);if(!i)return{edges:d,nodes:l};const u=await i({nodes:l,edges:d});return typeof u=="boolean"?u?{edges:d,nodes:l}:{edges:[],nodes:[]}:u}const of=(e,r=0,n=1)=>Math.min(Math.max(e,r),n),Xu=(e={x:0,y:0},r,n)=>({x:of(e.x,r[0][0],r[1][0]-(n?.width??0)),y:of(e.y,r[0][1],r[1][1]-(n?.height??0))});function $F(e,r,n){const{width:o,height:i}=_o(n),{x:a,y:l}=n.internals.positionAbsolute;return Xu(e,[[a,l],[a+o,l+i]],r)}const RF=(e,r,n)=>en?-of(Math.abs(e-n),1,r)/r:0,zF=(e,r,n=15,o=40)=>{const i=RF(e.x,o,r.width-o)*n,a=RF(e.y,o,r.height-o)*n;return[i,a]},Ux=(e,r)=>({x:Math.min(e.x,r.x),y:Math.min(e.y,r.y),x2:Math.max(e.x2,r.x2),y2:Math.max(e.y2,r.y2)}),M7=({x:e,y:r,width:n,height:o})=>({x:e,y:r,x2:e+n,y2:r+o}),Wx=({x:e,y:r,x2:n,y2:o})=>({x:e,y:r,width:n-e,height:o-r}),Ku=(e,r=[0,0])=>{const{x:n,y:o}=D7(e)?e.internals.positionAbsolute:H1(e,r);return{x:n,y:o,width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}},Gx=(e,r=[0,0])=>{const{x:n,y:o}=D7(e)?e.internals.positionAbsolute:H1(e,r);return{x:n,y:o,x2:n+(e.measured?.width??e.width??e.initialWidth??0),y2:o+(e.measured?.height??e.height??e.initialHeight??0)}},TF=(e,r)=>Wx(Ux(M7(e),M7(r))),U1=(e,r)=>{const n=Math.max(0,Math.min(e.x+e.width,r.x+r.width)-Math.max(e.x,r.x)),o=Math.max(0,Math.min(e.y+e.height,r.y+r.height)-Math.max(e.y,r.y));return Math.ceil(n*o)},jF=e=>Ka(e.width)&&Ka(e.height)&&Ka(e.x)&&Ka(e.y),Ka=e=>!isNaN(e)&&isFinite(e),F7e=(e,r)=>{},W1=(e,r=[1,1])=>({x:r[0]*Math.round(e.x/r[0]),y:r[1]*Math.round(e.y/r[1])}),G1=({x:e,y:r},[n,o,i],a=!1,l=[1,1])=>{const s={x:(e-n)/i,y:(r-o)/i};return a?W1(s,l):s},Yx=({x:e,y:r},[n,o,i])=>({x:e*i+n,y:r*i+o});function af(e,r){if(typeof e=="number")return Math.floor((r-r/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(n)}if(typeof e=="string"&&e.endsWith("%")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(r*n*.01)}return console.error(`[React Flow] The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function V7e(e,r,n){if(typeof e=="string"||typeof e=="number"){const o=af(e,n),i=af(e,r);return{top:o,right:i,bottom:o,left:i,x:i*2,y:o*2}}if(typeof e=="object"){const o=af(e.top??e.y??0,n),i=af(e.bottom??e.y??0,n),a=af(e.left??e.x??0,r),l=af(e.right??e.x??0,r);return{top:o,right:l,bottom:i,left:a,x:a+l,y:o+i}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function q7e(e,r,n,o,i,a){const{x:l,y:s}=Yx(e,[r,n,o]),{x:c,y:d}=Yx({x:e.x+e.width,y:e.y+e.height},[r,n,o]),u=i-c,p=a-d;return{left:Math.floor(l),top:Math.floor(s),right:Math.floor(u),bottom:Math.floor(p)}}const Ws=(e,r,n,o,i,a)=>{const l=V7e(a,r,n),s=(r-l.x)/e.width,c=(n-l.y)/e.height,d=Math.min(s,c),u=of(d,o,i),p=e.x+e.width/2,f=e.y+e.height/2,m=r/2-p*u,v=n/2-f*u,w=q7e(e,m,v,u,r,n),x={left:Math.min(w.left-l.left,0),top:Math.min(w.top-l.top,0),right:Math.min(w.right-l.right,0),bottom:Math.min(w.bottom-l.bottom,0)};return{x:m-x.left+x.right,y:v-x.top+x.bottom,zoom:u}},lf=()=>typeof navigator<"u"&&navigator?.userAgent?.indexOf("Mac")>=0;function sf(e){return e!=null&&e!=="parent"}function _o(e){return{width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}}function AF(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function DF(e,r={width:0,height:0},n,o,i){const a={...e},l=o.get(n);if(l){const s=l.origin||i;a.x+=l.internals.positionAbsolute.x-(r.width??0)*s[0],a.y+=l.internals.positionAbsolute.y-(r.height??0)*s[1]}return a}function PF(e,r){if(e.size!==r.size)return!1;for(const n of e)if(!r.has(n))return!1;return!0}function H7e(){let e,r;return{promise:new Promise((n,o)=>{e=n,r=o}),resolve:e,reject:r}}function U7e(e){return{...xF,...e||{}}}function Y1(e,{snapGrid:r=[0,0],snapToGrid:n=!1,transform:o,containerBounds:i}){const{x:a,y:l}=Za(e),s=G1({x:a-(i?.left??0),y:l-(i?.top??0)},o),{x:c,y:d}=n?W1(s,r):s;return{xSnapped:c,ySnapped:d,...s}}const N7=e=>({width:e.offsetWidth,height:e.offsetHeight}),MF=e=>e?.getRootNode?.()||window?.document,W7e=["INPUT","SELECT","TEXTAREA"];function NF(e){const r=e.composedPath?.()?.[0]||e.target;return r?.nodeType!==1?!1:W7e.includes(r.nodeName)||r.hasAttribute("contenteditable")||!!r.closest(".nokey")}const BF=e=>"clientX"in e,Za=(e,r)=>{const n=BF(e),o=n?e.clientX:e.touches?.[0].clientX,i=n?e.clientY:e.touches?.[0].clientY;return{x:o-(r?.left??0),y:i-(r?.top??0)}},IF=(e,r,n,o,i)=>{const a=r.querySelectorAll(`.${e}`);return!a||!a.length?null:Array.from(a).map(l=>{const s=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:i,position:l.getAttribute("data-handlepos"),x:(s.left-n.left)/o,y:(s.top-n.top)/o,...N7(l)}})};function OF({sourceX:e,sourceY:r,targetX:n,targetY:o,sourceControlX:i,sourceControlY:a,targetControlX:l,targetControlY:s}){const c=e*.125+i*.375+l*.375+n*.125,d=r*.125+a*.375+s*.375+o*.125,u=Math.abs(c-e),p=Math.abs(d-r);return[c,d,u,p]}function Xx(e,r){return e>=0?.5*e:r*25*Math.sqrt(-e)}function LF({pos:e,x1:r,y1:n,x2:o,y2:i,c:a}){switch(e){case Ue.Left:return[r-Xx(r-o,a),n];case Ue.Right:return[r+Xx(o-r,a),n];case Ue.Top:return[r,n-Xx(n-i,a)];case Ue.Bottom:return[r,n+Xx(i-n,a)]}}function Kx({sourceX:e,sourceY:r,sourcePosition:n=Ue.Bottom,targetX:o,targetY:i,targetPosition:a=Ue.Top,curvature:l=.25}){const[s,c]=LF({pos:n,x1:e,y1:r,x2:o,y2:i,c:l}),[d,u]=LF({pos:a,x1:o,y1:i,x2:e,y2:r,c:l}),[p,f,m,v]=OF({sourceX:e,sourceY:r,targetX:o,targetY:i,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:u});return[`M${e},${r} C${s},${c} ${d},${u} ${o},${i}`,p,f,m,v]}function FF({sourceX:e,sourceY:r,targetX:n,targetY:o}){const i=Math.abs(n-e)/2,a=n0}const X7e=({source:e,sourceHandle:r,target:n,targetHandle:o})=>`xy-edge__${e}${r||""}-${n}${o||""}`,K7e=(e,r)=>r.some(n=>n.source===e.source&&n.target===e.target&&(n.sourceHandle===e.sourceHandle||!n.sourceHandle&&!e.sourceHandle)&&(n.targetHandle===e.targetHandle||!n.targetHandle&&!e.targetHandle)),Z7e=(e,r,n={})=>{if(!e.source||!e.target)return r;const o=n.getEdgeId||X7e;let i;return SF(e)?i={...e}:i={...e,id:o(e)},K7e(i,r)?r:(i.sourceHandle===null&&delete i.sourceHandle,i.targetHandle===null&&delete i.targetHandle,r.concat(i))};function VF({sourceX:e,sourceY:r,targetX:n,targetY:o}){const[i,a,l,s]=FF({sourceX:e,sourceY:r,targetX:n,targetY:o});return[`M ${e},${r}L ${n},${o}`,i,a,l,s]}const qF={[Ue.Left]:{x:-1,y:0},[Ue.Right]:{x:1,y:0},[Ue.Top]:{x:0,y:-1},[Ue.Bottom]:{x:0,y:1}},Q7e=({source:e,sourcePosition:r=Ue.Bottom,target:n})=>r===Ue.Left||r===Ue.Right?e.xMath.sqrt(Math.pow(r.x-e.x,2)+Math.pow(r.y-e.y,2));function J7e({source:e,sourcePosition:r=Ue.Bottom,target:n,targetPosition:o=Ue.Top,center:i,offset:a,stepPosition:l}){const s=qF[r],c=qF[o],d={x:e.x+s.x*a,y:e.y+s.y*a},u={x:n.x+c.x*a,y:n.y+c.y*a},p=Q7e({source:d,sourcePosition:r,target:u}),f=p.x!==0?"x":"y",m=p[f];let v=[],w,x;const k={x:0,y:0},C={x:0,y:0},[,,_,$]=FF({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[f]*c[f]===-1){f==="x"?(w=i.x??d.x+(u.x-d.x)*l,x=i.y??(d.y+u.y)/2):(w=i.x??(d.x+u.x)/2,x=i.y??d.y+(u.y-d.y)*l);const R=[{x:w,y:d.y},{x:w,y:u.y}],T=[{x:d.x,y:x},{x:u.x,y:x}];s[f]===m?v=f==="x"?R:T:v=f==="x"?T:R}else{const R=[{x:d.x,y:u.y}],T=[{x:u.x,y:d.y}];if(f==="x"?v=s.x===m?T:R:v=s.y===m?R:T,r===o){const N=Math.abs(e[f]-n[f]);if(N<=a){const L=Math.min(a-1,a-N);s[f]===m?k[f]=(d[f]>e[f]?-1:1)*L:C[f]=(u[f]>n[f]?-1:1)*L}}if(r!==o){const N=f==="x"?"y":"x",L=s[f]===c[N],H=d[N]>u[N],P=d[N]=I?(w=(A.x+z.x)/2,x=v[0].y):(w=v[0].x,x=(A.y+z.y)/2)}return[[e,{x:d.x+k.x,y:d.y+k.y},...v,{x:u.x+C.x,y:u.y+C.y},n],w,x,_,$]}function e9e(e,r,n,o){const i=Math.min(HF(e,r)/2,HF(r,n)/2,o),{x:a,y:l}=r;if(e.x===a&&a===n.x||e.y===l&&l===n.y)return`L${a} ${l}`;if(e.y===l){const d=e.x{let _="";return C>0&&Cn.id===r):e[0])||null}function B7(e,r){return e?typeof e=="string"?e:`${r?`${r}__`:""}${Object.keys(e).sort().map(n=>`${n}=${e[n]}`).join("&")}`:""}function t9e(e,{id:r,defaultColor:n,defaultMarkerStart:o,defaultMarkerEnd:i}){const a=new Set;return e.reduce((l,s)=>([s.markerStart||o,s.markerEnd||i].forEach(c=>{if(c&&typeof c=="object"){const d=B7(c,r);a.has(d)||(l.push({id:d,color:c.color||n,...c}),a.add(d))}}),l),[]).sort((l,s)=>l.id.localeCompare(s.id))}function r9e(e,r,n,o,i){let a=.5;i==="start"?a=0:i==="end"&&(a=1);let l=[(e.x+e.width*a)*r.zoom+r.x,e.y*r.zoom+r.y-o],s=[-100*a,-100];switch(n){case Ue.Right:l=[(e.x+e.width)*r.zoom+r.x+o,(e.y+e.height*a)*r.zoom+r.y],s=[0,-100*a];break;case Ue.Bottom:l[1]=(e.y+e.height)*r.zoom+r.y+o,s[1]=0;break;case Ue.Left:l=[e.x*r.zoom+r.x-o,(e.y+e.height*a)*r.zoom+r.y],s=[-100,-100*a];break}return`translate(${l[0]}px, ${l[1]}px) translate(${s[0]}%, ${s[1]}%)`}const XF=1e3,n9e=10,I7={nodeOrigin:[0,0],nodeExtent:V1,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},o9e={...I7,checkEquality:!0};function O7(e,r){const n={...e};for(const o in r)r[o]!==void 0&&(n[o]=r[o]);return n}function i9e(e,r,n){const o=O7(I7,n);for(const i of e.values())if(i.parentId)V7(i,e,r,o);else{const a=H1(i,o.nodeOrigin),l=sf(i.extent)?i.extent:o.nodeExtent,s=Xu(a,l,_o(i));i.internals.positionAbsolute=s}}function a9e(e,r){if(!e.handles)return e.measured?r?.internals.handleBounds:void 0;const n=[],o=[];for(const i of e.handles){const a={id:i.id,width:i.width??1,height:i.height??1,nodeId:e.id,x:i.x,y:i.y,position:i.position,type:i.type};i.type==="source"?n.push(a):i.type==="target"&&o.push(a)}return{source:n,target:o}}function L7(e){return e==="manual"}function F7(e,r,n,o={}){const i=O7(o9e,o),a={i:0},l=new Map(r),s=i?.elevateNodesOnSelect&&!L7(i.zIndexMode)?XF:0;let c=e.length>0;r.clear(),n.clear();for(const d of e){let u=l.get(d.id);if(i.checkEquality&&d===u?.internals.userNode)r.set(d.id,u);else{const p=H1(d,i.nodeOrigin),f=sf(d.extent)?d.extent:i.nodeExtent,m=Xu(p,f,_o(d));u={...i.defaults,...d,measured:{width:d.measured?.width,height:d.measured?.height},internals:{positionAbsolute:m,handleBounds:a9e(d,u),z:KF(d,s,i.zIndexMode),userNode:d}},r.set(d.id,u)}(u.measured===void 0||u.measured.width===void 0||u.measured.height===void 0)&&!u.hidden&&(c=!1),d.parentId&&V7(u,r,n,o,a)}return c}function l9e(e,r){if(!e.parentId)return;const n=r.get(e.parentId);n?n.set(e.id,e):r.set(e.parentId,new Map([[e.id,e]]))}function V7(e,r,n,o,i){const{elevateNodesOnSelect:a,nodeOrigin:l,nodeExtent:s,zIndexMode:c}=O7(I7,o),d=e.parentId,u=r.get(d);if(!u){console.warn(`Parent node ${d} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}l9e(e,n),i&&!u.parentId&&u.internals.rootParentIndex===void 0&&c==="auto"&&(u.internals.rootParentIndex=++i.i,u.internals.z=u.internals.z+i.i*n9e),i&&u.internals.rootParentIndex!==void 0&&(i.i=u.internals.rootParentIndex);const p=a&&!L7(c)?XF:0,{x:f,y:m,z:v}=s9e(e,u,l,s,p,c),{positionAbsolute:w}=e.internals,x=f!==w.x||m!==w.y;(x||v!==e.internals.z)&&r.set(e.id,{...e,internals:{...e.internals,positionAbsolute:x?{x:f,y:m}:w,z:v}})}function KF(e,r,n){const o=Ka(e.zIndex)?e.zIndex:0;return L7(n)?o:o+(e.selected?r:0)}function s9e(e,r,n,o,i,a){const{x:l,y:s}=r.internals.positionAbsolute,c=_o(e),d=H1(e,n),u=sf(e.extent)?Xu(d,e.extent,c):d;let p=Xu({x:l+u.x,y:s+u.y},o,c);e.extent==="parent"&&(p=$F(p,c,r));const f=KF(e,i,a),m=r.internals.z??0;return{x:p.x,y:p.y,z:m>=f?m+1:f}}function q7(e,r,n,o=[0,0]){const i=[],a=new Map;for(const l of e){const s=r.get(l.parentId);if(!s)continue;const c=a.get(l.parentId)?.expandedRect??Ku(s),d=TF(c,l.rect);a.set(l.parentId,{expandedRect:d,parent:s})}return a.size>0&&a.forEach(({expandedRect:l,parent:s},c)=>{const d=s.internals.positionAbsolute,u=_o(s),p=s.origin??o,f=l.x0||m>0||x||k)&&(i.push({id:c,type:"position",position:{x:s.position.x-f+x,y:s.position.y-m+k}}),n.get(c)?.forEach(C=>{e.some(_=>_.id===C.id)||i.push({id:C.id,type:"position",position:{x:C.position.x+f,y:C.position.y+m}})})),(u.width0){const m=q7(f,r,n,i);d.push(...m)}return{changes:d,updatedInternals:c}}async function d9e({delta:e,panZoom:r,transform:n,translateExtent:o,width:i,height:a}){if(!r||!e.x&&!e.y)return Promise.resolve(!1);const l=await r.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[i,a]],o),s=!!l&&(l.x!==n[0]||l.y!==n[1]||l.k!==n[2]);return Promise.resolve(s)}function ZF(e,r,n,o,i,a){let l=i;const s=o.get(l)||new Map;o.set(l,s.set(n,r)),l=`${i}-${e}`;const c=o.get(l)||new Map;if(o.set(l,c.set(n,r)),a){l=`${i}-${e}-${a}`;const d=o.get(l)||new Map;o.set(l,d.set(n,r))}}function QF(e,r,n){e.clear(),r.clear();for(const o of n){const{source:i,target:a,sourceHandle:l=null,targetHandle:s=null}=o,c={edgeId:o.id,source:i,target:a,sourceHandle:l,targetHandle:s},d=`${i}-${l}--${a}-${s}`,u=`${a}-${s}--${i}-${l}`;ZF("source",c,u,e,i,l),ZF("target",c,d,e,a,s),r.set(o.id,o)}}function JF(e,r){if(!e.parentId)return!1;const n=r.get(e.parentId);return n?n.selected?!0:JF(n,r):!1}function eV(e,r,n){let o=e;do{if(o?.matches?.(r))return!0;if(o===n)return!1;o=o?.parentElement}while(o);return!1}function u9e(e,r,n,o){const i=new Map;for(const[a,l]of e)if((l.selected||l.id===o)&&(!l.parentId||!JF(l,e))&&(l.draggable||r&&typeof l.draggable>"u")){const s=e.get(a);s&&i.set(a,{id:a,position:s.position||{x:0,y:0},distance:{x:n.x-s.internals.positionAbsolute.x,y:n.y-s.internals.positionAbsolute.y},extent:s.extent,parentId:s.parentId,origin:s.origin,expandParent:s.expandParent,internals:{positionAbsolute:s.internals.positionAbsolute||{x:0,y:0}},measured:{width:s.measured.width??0,height:s.measured.height??0}})}return i}function H7({nodeId:e,dragItems:r,nodeLookup:n,dragging:o=!0}){const i=[];for(const[l,s]of r){const c=n.get(l)?.internals.userNode;c&&i.push({...c,position:s.position,dragging:o})}if(!e)return[i[0],i];const a=n.get(e)?.internals.userNode;return[a?{...a,position:r.get(e)?.position||a.position,dragging:o}:i[0],i]}function p9e({dragItems:e,snapGrid:r,x:n,y:o}){const i=e.values().next().value;if(!i)return null;const a={x:n-i.distance.x,y:o-i.distance.y},l=W1(a,r);return{x:l.x-a.x,y:l.y-a.y}}function h9e({onNodeMouseDown:e,getStoreItems:r,onDragStart:n,onDrag:o,onDragStop:i}){let a={x:null,y:null},l=0,s=new Map,c=!1,d={x:0,y:0},u=null,p=!1,f=null,m=!1,v=!1,w=null;function x({noDragClassName:C,handleSelector:_,domNode:$,isSelectable:R,nodeId:T,nodeClickDistance:A=0}){f=Ei($);function z({x:L,y:H}){const{nodeLookup:P,nodeExtent:V,snapGrid:B,snapToGrid:F,nodeOrigin:q,onNodeDrag:G,onSelectionDrag:U,onError:Y,updateNodePositions:K}=r();a={x:L,y:H};let O=!1;const W=s.size>1,Z=W&&V?M7(nf(s)):null,Q=W&&F?p9e({dragItems:s,snapGrid:B,x:L,y:H}):null;for(const[ie,te]of s){if(!P.has(ie))continue;let re={x:L-te.distance.x,y:H-te.distance.y};F&&(re=Q?{x:Math.round(re.x+Q.x),y:Math.round(re.y+Q.y)}:W1(re,B));let ue=null;if(W&&V&&!te.extent&&Z){const{positionAbsolute:pe}=te.internals,xe=pe.x-Z.x+V[0][0],je=pe.x+te.measured.width-Z.x2+V[1][0],Be=pe.y-Z.y+V[0][1],Je=pe.y+te.measured.height-Z.y2+V[1][1];ue=[[xe,Be],[je,Je]]}const{position:_e,positionAbsolute:ce}=CF({nodeId:ie,nextPosition:re,nodeLookup:P,nodeExtent:ue||V,nodeOrigin:q,onError:Y});O=O||te.position.x!==_e.x||te.position.y!==_e.y,te.position=_e,te.internals.positionAbsolute=ce}if(v=v||O,!!O&&(K(s,!0),w&&(o||G||!T&&U))){const[ie,te]=H7({nodeId:T,dragItems:s,nodeLookup:P});o?.(w,s,ie,te),G?.(w,ie,te),T||U?.(w,te)}}async function j(){if(!u)return;const{transform:L,panBy:H,autoPanSpeed:P,autoPanOnNodeDrag:V}=r();if(!V){c=!1,cancelAnimationFrame(l);return}const[B,F]=zF(d,u,P);(B!==0||F!==0)&&(a.x=(a.x??0)-B/L[2],a.y=(a.y??0)-F/L[2],await H({x:B,y:F})&&z(a)),l=requestAnimationFrame(j)}function I(L){const{nodeLookup:H,multiSelectionActive:P,nodesDraggable:V,transform:B,snapGrid:F,snapToGrid:q,selectNodesOnDrag:G,onNodeDragStart:U,onSelectionDragStart:Y,unselectNodesAndEdges:K}=r();p=!0,(!G||!R)&&!P&&T&&(H.get(T)?.selected||K()),R&&G&&T&&e?.(T);const O=Y1(L.sourceEvent,{transform:B,snapGrid:F,snapToGrid:q,containerBounds:u});if(a=O,s=u9e(H,V,O,T),s.size>0&&(n||U||!T&&Y)){const[W,Z]=H7({nodeId:T,dragItems:s,nodeLookup:H});n?.(L.sourceEvent,s,W,Z),U?.(L.sourceEvent,W,Z),T||Y?.(L.sourceEvent,Z)}}const N=FL().clickDistance(A).on("start",L=>{const{domNode:H,nodeDragThreshold:P,transform:V,snapGrid:B,snapToGrid:F}=r();u=H?.getBoundingClientRect()||null,m=!1,v=!1,w=L.sourceEvent,P===0&&I(L),a=Y1(L.sourceEvent,{transform:V,snapGrid:B,snapToGrid:F,containerBounds:u}),d=Za(L.sourceEvent,u)}).on("drag",L=>{const{autoPanOnNodeDrag:H,transform:P,snapGrid:V,snapToGrid:B,nodeDragThreshold:F,nodeLookup:q}=r(),G=Y1(L.sourceEvent,{transform:P,snapGrid:V,snapToGrid:B,containerBounds:u});if(w=L.sourceEvent,(L.sourceEvent.type==="touchmove"&&L.sourceEvent.touches.length>1||T&&!q.has(T))&&(m=!0),!m){if(!c&&H&&p&&(c=!0,j()),!p){const U=Za(L.sourceEvent,u),Y=U.x-d.x,K=U.y-d.y;Math.sqrt(Y*Y+K*K)>F&&I(L)}(a.x!==G.xSnapped||a.y!==G.ySnapped)&&s&&p&&(d=Za(L.sourceEvent,u),z(G))}}).on("end",L=>{if(!(!p||m)&&(c=!1,p=!1,cancelAnimationFrame(l),s.size>0)){const{nodeLookup:H,updateNodePositions:P,onNodeDragStop:V,onSelectionDragStop:B}=r();if(v&&(P(s,!1),v=!1),i||V||!T&&B){const[F,q]=H7({nodeId:T,dragItems:s,nodeLookup:H,dragging:!1});i?.(L.sourceEvent,s,F,q),V?.(L.sourceEvent,F,q),T||B?.(L.sourceEvent,q)}}}).filter(L=>{const H=L.target;return!L.button&&(!C||!eV(H,`.${C}`,$))&&(!_||eV(H,_,$))});f.call(N)}function k(){f?.on(".drag",null)}return{update:x,destroy:k}}function f9e(e,r,n){const o=[],i={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const a of r.values())U1(i,Ku(a))>0&&o.push(a);return o}const g9e=250;function m9e(e,r,n,o){let i=[],a=1/0;const l=f9e(e,n,r+g9e);for(const s of l){const c=[...s.internals.handleBounds?.source??[],...s.internals.handleBounds?.target??[]];for(const d of c){if(o.nodeId===d.nodeId&&o.type===d.type&&o.id===d.id)continue;const{x:u,y:p}=Zu(s,d,d.position,!0),f=Math.sqrt(Math.pow(u-e.x,2)+Math.pow(p-e.y,2));f>r||(f1){const s=o.type==="source"?"target":"source";return i.find(c=>c.type===s)??i[0]}return i[0]}function tV(e,r,n,o,i,a=!1){const l=o.get(e);if(!l)return null;const s=i==="strict"?l.internals.handleBounds?.[r]:[...l.internals.handleBounds?.source??[],...l.internals.handleBounds?.target??[]],c=(n?s?.find(d=>d.id===n):s?.[0])??null;return c&&a?{...c,...Zu(l,c,c.position,!0)}:c}function rV(e,r){return e||(r?.classList.contains("target")?"target":r?.classList.contains("source")?"source":null)}function y9e(e,r){let n=null;return r?n=!0:e&&!r&&(n=!1),n}const nV=()=>!0;function v9e(e,{connectionMode:r,connectionRadius:n,handleId:o,nodeId:i,edgeUpdaterType:a,isTarget:l,domNode:s,nodeLookup:c,lib:d,autoPanOnConnect:u,flowId:p,panBy:f,cancelConnection:m,onConnectStart:v,onConnect:w,onConnectEnd:x,isValidConnection:k=nV,onReconnectEnd:C,updateConnection:_,getTransform:$,getFromHandle:R,autoPanSpeed:T,dragThreshold:A=1,handleDomNode:z}){const j=MF(e.target);let I=0,N;const{x:L,y:H}=Za(e),P=rV(a,z),V=s?.getBoundingClientRect();let B=!1;if(!V||!P)return;const F=tV(i,P,o,c,r);if(!F)return;let q=Za(e,V),G=!1,U=null,Y=!1,K=null;function O(){if(!u||!V)return;const[ue,_e]=zF(q,V,T);f({x:ue,y:_e}),I=requestAnimationFrame(O)}const W={...F,nodeId:i,type:P,position:F.position},Z=c.get(i);let Q={inProgress:!0,isValid:null,from:Zu(Z,W,Ue.Left,!0),fromHandle:W,fromPosition:W.position,fromNode:Z,to:q,toHandle:null,toPosition:kF[W.position],toNode:null,pointer:q};function ie(){B=!0,_(Q),v?.(e,{nodeId:i,handleId:o,handleType:P})}A===0&&ie();function te(ue){if(!B){const{x:Be,y:Je}=Za(ue),st=Be-L,Le=Je-H;if(!(st*st+Le*Le>A*A))return;ie()}if(!R()||!W){re(ue);return}const _e=$();q=Za(ue,V),N=m9e(G1(q,_e,!1,[1,1]),n,c,W),G||(O(),G=!0);const ce=oV(ue,{handle:N,connectionMode:r,fromNodeId:i,fromHandleId:o,fromType:l?"target":"source",isValidConnection:k,doc:j,lib:d,flowId:p,nodeLookup:c});K=ce.handleDomNode,U=ce.connection,Y=y9e(!!N,ce.isValid);const pe=c.get(i),xe=pe?Zu(pe,W,Ue.Left,!0):Q.from,je={...Q,from:xe,isValid:Y,to:ce.toHandle&&Y?Yx({x:ce.toHandle.x,y:ce.toHandle.y},_e):q,toHandle:ce.toHandle,toPosition:Y&&ce.toHandle?ce.toHandle.position:kF[W.position],toNode:ce.toHandle?c.get(ce.toHandle.nodeId):null,pointer:q};_(je),Q=je}function re(ue){if(!("touches"in ue&&ue.touches.length>0)){if(B){(N||K)&&U&&Y&&w?.(U);const{inProgress:_e,...ce}=Q,pe={...ce,toPosition:Q.toHandle?Q.toPosition:null};x?.(ue,pe),a&&C?.(ue,pe)}m(),cancelAnimationFrame(I),G=!1,Y=!1,U=null,K=null,j.removeEventListener("mousemove",te),j.removeEventListener("mouseup",re),j.removeEventListener("touchmove",te),j.removeEventListener("touchend",re)}}j.addEventListener("mousemove",te),j.addEventListener("mouseup",re),j.addEventListener("touchmove",te),j.addEventListener("touchend",re)}function oV(e,{handle:r,connectionMode:n,fromNodeId:o,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=nV,nodeLookup:u}){const p=a==="target",f=r?l.querySelector(`.${s}-flow__handle[data-id="${c}-${r?.nodeId}-${r?.id}-${r?.type}"]`):null,{x:m,y:v}=Za(e),w=l.elementFromPoint(m,v),x=w?.classList.contains(`${s}-flow__handle`)?w:f,k={handleDomNode:x,isValid:!1,connection:null,toHandle:null};if(x){const C=rV(void 0,x),_=x.getAttribute("data-nodeid"),$=x.getAttribute("data-handleid"),R=x.classList.contains("connectable"),T=x.classList.contains("connectableend");if(!_||!C)return k;const A={source:p?_:o,sourceHandle:p?$:i,target:p?o:_,targetHandle:p?i:$};k.connection=A;const z=R&&T&&(n===rf.Strict?p&&C==="source"||!p&&C==="target":_!==o||$!==i);k.isValid=z&&d(A),k.toHandle=tV(_,C,$,u,n,!0)}return k}const U7={onPointerDown:v9e,isValid:oV};function b9e({domNode:e,panZoom:r,getTransform:n,getViewScale:o}){const i=Ei(e);function a({translateExtent:s,width:c,height:d,zoomStep:u=1,pannable:p=!0,zoomable:f=!0,inversePan:m=!1}){const v=_=>{if(_.sourceEvent.type!=="wheel"||!r)return;const $=n(),R=_.sourceEvent.ctrlKey&&lf()?10:1,T=-_.sourceEvent.deltaY*(_.sourceEvent.deltaMode===1?.05:_.sourceEvent.deltaMode?1:.002)*u,A=$[2]*Math.pow(2,T*R);r.scaleTo(A)};let w=[0,0];const x=_=>{(_.sourceEvent.type==="mousedown"||_.sourceEvent.type==="touchstart")&&(w=[_.sourceEvent.clientX??_.sourceEvent.touches[0].clientX,_.sourceEvent.clientY??_.sourceEvent.touches[0].clientY])},k=_=>{const $=n();if(_.sourceEvent.type!=="mousemove"&&_.sourceEvent.type!=="touchmove"||!r)return;const R=[_.sourceEvent.clientX??_.sourceEvent.touches[0].clientX,_.sourceEvent.clientY??_.sourceEvent.touches[0].clientY],T=[R[0]-w[0],R[1]-w[1]];w=R;const A=o()*Math.max($[2],Math.log($[2]))*(m?-1:1),z={x:$[0]-T[0]*A,y:$[1]-T[1]*A},j=[[0,0],[c,d]];r.setViewportConstrained({x:z.x,y:z.y,zoom:$[2]},j,s)},C=vF().on("start",x).on("zoom",p?k:null).on("zoom.wheel",f?v:null);i.call(C,{})}function l(){i.on("zoom",null)}return{update:a,destroy:l,pointer:Ga}}const Qx=e=>({x:e.x,y:e.y,zoom:e.k}),W7=({x:e,y:r,zoom:n})=>qx.translate(e,r).scale(n),cf=(e,r)=>e.target.closest(`.${r}`),iV=(e,r)=>r===2&&Array.isArray(e)&&e.includes(2),x9e=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,G7=(e,r=0,n=x9e,o=()=>{})=>{const i=typeof r=="number"&&r>0;return i||o(),i?e.transition().duration(r).ease(n).on("end",o):e},aV=e=>{const r=e.ctrlKey&&lf()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*r};function w9e({zoomPanValues:e,noWheelClassName:r,d3Selection:n,d3Zoom:o,panOnScrollMode:i,panOnScrollSpeed:a,zoomOnPinch:l,onPanZoomStart:s,onPanZoom:c,onPanZoomEnd:d}){return u=>{if(cf(u,r))return u.ctrlKey&&u.preventDefault(),!1;u.preventDefault(),u.stopImmediatePropagation();const p=n.property("__zoom").k||1;if(u.ctrlKey&&l){const x=Ga(u),k=aV(u),C=p*Math.pow(2,k);o.scaleTo(n,C,x,u);return}const f=u.deltaMode===1?20:1;let m=i===Yu.Vertical?0:u.deltaX*f,v=i===Yu.Horizontal?0:u.deltaY*f;!lf()&&u.shiftKey&&i!==Yu.Vertical&&(m=u.deltaY*f,v=0),o.translateBy(n,-(m/p)*a,-(v/p)*a,{internal:!0});const w=Qx(n.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(c?.(u,w),e.panScrollTimeout=setTimeout(()=>{d?.(u,w),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,s?.(u,w))}}function k9e({noWheelClassName:e,preventScrolling:r,d3ZoomHandler:n}){return function(o,i){const a=o.type==="wheel",l=!r&&a&&!o.ctrlKey,s=cf(o,e);if(o.ctrlKey&&a&&s&&o.preventDefault(),l||s)return null;o.preventDefault(),n.call(this,o,i)}}function _9e({zoomPanValues:e,onDraggingChange:r,onPanZoomStart:n}){return o=>{if(o.sourceEvent?.internal)return;const i=Qx(o.transform);e.mouseButton=o.sourceEvent?.button||0,e.isZoomingOrPanning=!0,e.prevViewport=i,o.sourceEvent?.type==="mousedown"&&r(!0),n&&n?.(o.sourceEvent,i)}}function S9e({zoomPanValues:e,panOnDrag:r,onPaneContextMenu:n,onTransformChange:o,onPanZoom:i}){return a=>{e.usedRightMouseButton=!!(n&&iV(r,e.mouseButton??0)),a.sourceEvent?.sync||o([a.transform.x,a.transform.y,a.transform.k]),i&&!a.sourceEvent?.internal&&i?.(a.sourceEvent,Qx(a.transform))}}function E9e({zoomPanValues:e,panOnDrag:r,panOnScroll:n,onDraggingChange:o,onPanZoomEnd:i,onPaneContextMenu:a}){return l=>{if(!l.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,a&&iV(r,e.mouseButton??0)&&!e.usedRightMouseButton&&l.sourceEvent&&a(l.sourceEvent),e.usedRightMouseButton=!1,o(!1),i)){const s=Qx(l.transform);e.prevViewport=s,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{i?.(l.sourceEvent,s)},n?150:0)}}}function C9e({zoomActivationKeyPressed:e,zoomOnScroll:r,zoomOnPinch:n,panOnDrag:o,panOnScroll:i,zoomOnDoubleClick:a,userSelectionActive:l,noWheelClassName:s,noPanClassName:c,lib:d,connectionInProgress:u}){return p=>{const f=e||r,m=n&&p.ctrlKey,v=p.type==="wheel";if(p.button===1&&p.type==="mousedown"&&(cf(p,`${d}-flow__node`)||cf(p,`${d}-flow__edge`)))return!0;if(!o&&!f&&!i&&!a&&!n||l||u&&!v||cf(p,s)&&v||cf(p,c)&&(!v||i&&v&&!e)||!n&&p.ctrlKey&&v)return!1;if(!n&&p.type==="touchstart"&&p.touches?.length>1)return p.preventDefault(),!1;if(!f&&!i&&!m&&v||!o&&(p.type==="mousedown"||p.type==="touchstart")||Array.isArray(o)&&!o.includes(p.button)&&p.type==="mousedown")return!1;const w=Array.isArray(o)&&o.includes(p.button)||!p.button||p.button<=1;return(!p.ctrlKey||v)&&w}}function $9e({domNode:e,minZoom:r,maxZoom:n,translateExtent:o,viewport:i,onPanZoom:a,onPanZoomStart:l,onPanZoomEnd:s,onDraggingChange:c}){const d={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},u=e.getBoundingClientRect(),p=vF().scaleExtent([r,n]).translateExtent(o),f=Ei(e).call(p);C({x:i.x,y:i.y,zoom:of(i.zoom,r,n)},[[0,0],[u.width,u.height]],o);const m=f.on("wheel.zoom"),v=f.on("dblclick.zoom");p.wheelDelta(aV);function w(N,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?N1:Dx).transform(G7(f,L?.duration,L?.ease,()=>H(!0)),N)}):Promise.resolve(!1)}function x({noWheelClassName:N,noPanClassName:L,onPaneContextMenu:H,userSelectionActive:P,panOnScroll:V,panOnDrag:B,panOnScrollMode:F,panOnScrollSpeed:q,preventScrolling:G,zoomOnPinch:U,zoomOnScroll:Y,zoomOnDoubleClick:K,zoomActivationKeyPressed:O,lib:W,onTransformChange:Z,connectionInProgress:Q,paneClickDistance:ie,selectionOnDrag:te}){P&&!d.isZoomingOrPanning&&k();const re=V&&!O&&!P;p.clickDistance(te?1/0:!Ka(ie)||ie<0?0:ie);const ue=re?w9e({zoomPanValues:d,noWheelClassName:N,d3Selection:f,d3Zoom:p,panOnScrollMode:F,panOnScrollSpeed:q,zoomOnPinch:U,onPanZoomStart:l,onPanZoom:a,onPanZoomEnd:s}):k9e({noWheelClassName:N,preventScrolling:G,d3ZoomHandler:m});if(f.on("wheel.zoom",ue,{passive:!1}),!P){const ce=_9e({zoomPanValues:d,onDraggingChange:c,onPanZoomStart:l});p.on("start",ce);const pe=S9e({zoomPanValues:d,panOnDrag:B,onPaneContextMenu:!!H,onPanZoom:a,onTransformChange:Z});p.on("zoom",pe);const xe=E9e({zoomPanValues:d,panOnDrag:B,panOnScroll:V,onPaneContextMenu:H,onPanZoomEnd:s,onDraggingChange:c});p.on("end",xe)}const _e=C9e({zoomActivationKeyPressed:O,panOnDrag:B,zoomOnScroll:Y,panOnScroll:V,zoomOnDoubleClick:K,zoomOnPinch:U,userSelectionActive:P,noPanClassName:L,noWheelClassName:N,lib:W,connectionInProgress:Q});p.filter(_e),K?f.on("dblclick.zoom",v):f.on("dblclick.zoom",null)}function k(){p.on("zoom",null)}async function C(N,L,H){const P=W7(N),V=p?.constrain()(P,L,H);return V&&await w(V),new Promise(B=>B(V))}async function _(N,L){const H=W7(N);return await w(H,L),new Promise(P=>P(H))}function $(N){if(f){const L=W7(N),H=f.property("__zoom");(H.k!==N.zoom||H.x!==N.x||H.y!==N.y)&&p?.transform(f,L,null,{sync:!0})}}function R(){const N=f?mF(f.node()):{x:0,y:0,k:1};return{x:N.x,y:N.y,zoom:N.k}}function T(N,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?N1:Dx).scaleTo(G7(f,L?.duration,L?.ease,()=>H(!0)),N)}):Promise.resolve(!1)}function A(N,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?N1:Dx).scaleBy(G7(f,L?.duration,L?.ease,()=>H(!0)),N)}):Promise.resolve(!1)}function z(N){p?.scaleExtent(N)}function j(N){p?.translateExtent(N)}function I(N){const L=!Ka(N)||N<0?0:N;p?.clickDistance(L)}return{update:x,destroy:k,setViewport:_,setViewportConstrained:C,getViewport:R,scaleTo:T,scaleBy:A,setScaleExtent:z,setTranslateExtent:j,syncViewport:$,setClickDistance:I}}var df;(function(e){e.Line="line",e.Handle="handle"})(df||(df={}));function R9e({width:e,prevWidth:r,height:n,prevHeight:o,affectsX:i,affectsY:a}){const l=e-r,s=n-o,c=[l>0?1:l<0?-1:0,s>0?1:s<0?-1:0];return l&&i&&(c[0]=c[0]*-1),s&&a&&(c[1]=c[1]*-1),c}function lV(e){const r=e.includes("right")||e.includes("left"),n=e.includes("bottom")||e.includes("top"),o=e.includes("left"),i=e.includes("top");return{isHorizontal:r,isVertical:n,affectsX:o,affectsY:i}}function ad(e,r){return Math.max(0,r-e)}function ld(e,r){return Math.max(0,e-r)}function Jx(e,r,n){return Math.max(0,r-e,e-n)}function sV(e,r){return e?!r:r}function z9e(e,r,n,o,i,a,l,s){let{affectsX:c,affectsY:d}=r;const{isHorizontal:u,isVertical:p}=r,f=u&&p,{xSnapped:m,ySnapped:v}=n,{minWidth:w,maxWidth:x,minHeight:k,maxHeight:C}=o,{x:_,y:$,width:R,height:T,aspectRatio:A}=e;let z=Math.floor(u?m-e.pointerX:0),j=Math.floor(p?v-e.pointerY:0);const I=R+(c?-z:z),N=T+(d?-j:j),L=-a[0]*R,H=-a[1]*T;let P=Jx(I,w,x),V=Jx(N,k,C);if(l){let q=0,G=0;c&&z<0?q=ad(_+z+L,l[0][0]):!c&&z>0&&(q=ld(_+I+L,l[1][0])),d&&j<0?G=ad($+j+H,l[0][1]):!d&&j>0&&(G=ld($+N+H,l[1][1])),P=Math.max(P,q),V=Math.max(V,G)}if(s){let q=0,G=0;c&&z>0?q=ld(_+z,s[0][0]):!c&&z<0&&(q=ad(_+I,s[1][0])),d&&j>0?G=ld($+j,s[0][1]):!d&&j<0&&(G=ad($+N,s[1][1])),P=Math.max(P,q),V=Math.max(V,G)}if(i){if(u){const q=Jx(I/A,k,C)*A;if(P=Math.max(P,q),l){let G=0;!c&&!d||c&&!d&&f?G=ld($+H+I/A,l[1][1])*A:G=ad($+H+(c?z:-z)/A,l[0][1])*A,P=Math.max(P,G)}if(s){let G=0;!c&&!d||c&&!d&&f?G=ad($+I/A,s[1][1])*A:G=ld($+(c?z:-z)/A,s[0][1])*A,P=Math.max(P,G)}}if(p){const q=Jx(N*A,w,x)/A;if(V=Math.max(V,q),l){let G=0;!c&&!d||d&&!c&&f?G=ld(_+N*A+L,l[1][0])/A:G=ad(_+(d?j:-j)*A+L,l[0][0])/A,V=Math.max(V,G)}if(s){let G=0;!c&&!d||d&&!c&&f?G=ad(_+N*A,s[1][0])/A:G=ld(_+(d?j:-j)*A,s[0][0])/A,V=Math.max(V,G)}}}j=j+(j<0?V:-V),z=z+(z<0?P:-P),i&&(f?I>N*A?j=(sV(c,d)?-z:z)/A:z=(sV(c,d)?-j:j)*A:u?(j=z/A,d=c):(z=j*A,c=d));const B=c?_+z:_,F=d?$+j:$;return{width:R+(c?-z:z),height:T+(d?-j:j),x:a[0]*z*(c?-1:1)+B,y:a[1]*j*(d?-1:1)+F}}const cV={width:0,height:0,x:0,y:0},T9e={...cV,pointerX:0,pointerY:0,aspectRatio:1};function j9e(e){return[[0,0],[e.measured.width,e.measured.height]]}function A9e(e,r,n){const o=r.position.x+e.position.x,i=r.position.y+e.position.y,a=e.measured.width??0,l=e.measured.height??0,s=n[0]*a,c=n[1]*l;return[[o-s,i-c],[o+a-s,i+l-c]]}function D9e({domNode:e,nodeId:r,getStoreItems:n,onChange:o,onEnd:i}){const a=Ei(e);let l={controlDirection:lV("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function s({controlPosition:d,boundaries:u,keepAspectRatio:p,resizeDirection:f,onResizeStart:m,onResize:v,onResizeEnd:w,shouldResize:x}){let k={...cV},C={...T9e};l={boundaries:u,resizeDirection:f,keepAspectRatio:p,controlDirection:lV(d)};let _,$=null,R=[],T,A,z,j=!1;const I=FL().on("start",N=>{const{nodeLookup:L,transform:H,snapGrid:P,snapToGrid:V,nodeOrigin:B,paneDomNode:F}=n();if(_=L.get(r),!_)return;$=F?.getBoundingClientRect()??null;const{xSnapped:q,ySnapped:G}=Y1(N.sourceEvent,{transform:H,snapGrid:P,snapToGrid:V,containerBounds:$});k={width:_.measured.width??0,height:_.measured.height??0,x:_.position.x??0,y:_.position.y??0},C={...k,pointerX:q,pointerY:G,aspectRatio:k.width/k.height},T=void 0,_.parentId&&(_.extent==="parent"||_.expandParent)&&(T=L.get(_.parentId),A=T&&_.extent==="parent"?j9e(T):void 0),R=[],z=void 0;for(const[U,Y]of L)if(Y.parentId===r&&(R.push({id:U,position:{...Y.position},extent:Y.extent}),Y.extent==="parent"||Y.expandParent)){const K=A9e(Y,_,Y.origin??B);z?z=[[Math.min(K[0][0],z[0][0]),Math.min(K[0][1],z[0][1])],[Math.max(K[1][0],z[1][0]),Math.max(K[1][1],z[1][1])]]:z=K}m?.(N,{...k})}).on("drag",N=>{const{transform:L,snapGrid:H,snapToGrid:P,nodeOrigin:V}=n(),B=Y1(N.sourceEvent,{transform:L,snapGrid:H,snapToGrid:P,containerBounds:$}),F=[];if(!_)return;const{x:q,y:G,width:U,height:Y}=k,K={},O=_.origin??V,{width:W,height:Z,x:Q,y:ie}=z9e(C,l.controlDirection,B,l.boundaries,l.keepAspectRatio,O,A,z),te=W!==U,re=Z!==Y,ue=Q!==q&&te,_e=ie!==G&&re;if(!ue&&!_e&&!te&&!re)return;if((ue||_e||O[0]===1||O[1]===1)&&(K.x=ue?Q:k.x,K.y=_e?ie:k.y,k.x=K.x,k.y=K.y,R.length>0)){const xe=Q-q,je=ie-G;for(const Be of R)Be.position={x:Be.position.x-xe+O[0]*(W-U),y:Be.position.y-je+O[1]*(Z-Y)},F.push(Be)}if((te||re)&&(K.width=te&&(!l.resizeDirection||l.resizeDirection==="horizontal")?W:k.width,K.height=re&&(!l.resizeDirection||l.resizeDirection==="vertical")?Z:k.height,k.width=K.width,k.height=K.height),T&&_.expandParent){const xe=O[0]*(K.width??0);K.x&&K.x{j&&(w?.(N,{...k}),i?.({...k}),j=!1)});a.call(I)}function c(){a.on(".drag",null)}return{update:s,destroy:c}}function Y7(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var dV={exports:{}},X7={},uV={exports:{}},K7={},pV;function P9e(){if(pV)return K7;pV=1;var e=Zr;function r(p,f){return p===f&&(p!==0||1/p===1/f)||p!==p&&f!==f}var n=typeof Object.is=="function"?Object.is:r,o=e.useState,i=e.useEffect,a=e.useLayoutEffect,l=e.useDebugValue;function s(p,f){var m=f(),v=o({inst:{value:m,getSnapshot:f}}),w=v[0].inst,x=v[1];return a(function(){w.value=m,w.getSnapshot=f,c(w)&&x({inst:w})},[p,m,f]),i(function(){return c(w)&&x({inst:w}),p(function(){c(w)&&x({inst:w})})},[p]),l(m),m}function c(p){var f=p.getSnapshot;p=p.value;try{var m=f();return!n(p,m)}catch{return!0}}function d(p,f){return f()}var u=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?d:s;return K7.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:u,K7}var hV;function fV(){return hV||(hV=1,uV.exports=P9e()),uV.exports}var gV;function M9e(){if(gV)return X7;gV=1;var e=Zr,r=fV();function n(d,u){return d===u&&(d!==0||1/d===1/u)||d!==d&&u!==u}var o=typeof Object.is=="function"?Object.is:n,i=r.useSyncExternalStore,a=e.useRef,l=e.useEffect,s=e.useMemo,c=e.useDebugValue;return X7.useSyncExternalStoreWithSelector=function(d,u,p,f,m){var v=a(null);if(v.current===null){var w={hasValue:!1,value:null};v.current=w}else w=v.current;v=s(function(){function k(T){if(!C){if(C=!0,_=T,T=f(T),m!==void 0&&w.hasValue){var A=w.value;if(m(A,T))return $=A}return $=T}if(A=$,o(_,T))return A;var z=f(T);return m!==void 0&&m(A,z)?(_=T,A):(_=T,$=z)}var C=!1,_,$,R=p===void 0?null:p;return[function(){return k(u())},R===null?void 0:function(){return k(R())}]},[u,p,f,m]);var x=i(d,v[0],v[1]);return l(function(){w.hasValue=!0,w.value=x},[x]),c(x),x},X7}var mV;function N9e(){return mV||(mV=1,dV.exports=M9e()),dV.exports}var yV=N9e();const B9e=Y7(yV),I9e={},vV=e=>{let r;const n=new Set,o=(s,c)=>{const d=typeof s=="function"?s(r):s;if(!Object.is(d,r)){const u=r;r=c??(typeof d!="object"||d===null)?d:Object.assign({},r,d),n.forEach(p=>p(r,u))}},i=()=>r,a={setState:o,getState:i,getInitialState:()=>l,subscribe:s=>(n.add(s),()=>n.delete(s)),destroy:()=>{(I9e?"production":void 0)!=="production"&&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."),n.clear()}},l=r=e(o,i,a);return a},O9e=e=>e?vV(e):vV,{useDebugValue:L9e}=Zr,{useSyncExternalStoreWithSelector:F9e}=B9e,V9e=e=>e;function bV(e,r=V9e,n){const o=F9e(e.subscribe,e.getState,e.getServerState||e.getInitialState,r,n);return L9e(o),o}const xV=(e,r)=>{const n=O9e(e),o=(i,a=r)=>bV(n,i,a);return Object.assign(o,n),o},q9e=(e,r)=>e?xV(e,r):xV;function jr(e,r){if(Object.is(e,r))return!0;if(typeof e!="object"||e===null||typeof r!="object"||r===null)return!1;if(e instanceof Map&&r instanceof Map){if(e.size!==r.size)return!1;for(const[o,i]of e)if(!Object.is(i,r.get(o)))return!1;return!0}if(e instanceof Set&&r instanceof Set){if(e.size!==r.size)return!1;for(const o of e)if(!r.has(o))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(r).length)return!1;for(const o of n)if(!Object.prototype.hasOwnProperty.call(r,o)||!Object.is(e[o],r[o]))return!1;return!0}const ew=S.createContext(null),H9e=ew.Provider,wV=Gl.error001();function Dt(e,r){const n=S.useContext(ew);if(n===null)throw new Error(wV);return bV(n,e,r)}function vr(){const e=S.useContext(ew);if(e===null)throw new Error(wV);return S.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const kV={display:"none"},U9e={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},_V="react-flow__node-desc",SV="react-flow__edge-desc",W9e="react-flow__aria-live",G9e=e=>e.ariaLiveMessage,Y9e=e=>e.ariaLabelConfig;function X9e({rfId:e}){const r=Dt(G9e);return y.jsx("div",{id:`${W9e}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:U9e,children:r})}function K9e({rfId:e,disableKeyboardA11y:r}){const n=Dt(Y9e);return y.jsxs(y.Fragment,{children:[y.jsx("div",{id:`${_V}-${e}`,style:kV,children:r?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),y.jsx("div",{id:`${SV}-${e}`,style:kV,children:n["edge.a11yDescription.default"]}),!r&&y.jsx(X9e,{rfId:e})]})}const sd=S.forwardRef(({position:e="top-left",children:r,className:n,style:o,...i},a)=>{const l=`${e}`.split("-");return y.jsx("div",{className:dn(["react-flow__panel",n,...l]),style:o,ref:a,...i,children:r})});sd.displayName="Panel";function Z9e({proOptions:e,position:r="bottom-right"}){return e?.hideAttribution?null:y.jsx(sd,{position:r,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:y.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const Q9e=e=>{const r=[],n=[];for(const[,o]of e.nodeLookup)o.selected&&r.push(o.internals.userNode);for(const[,o]of e.edgeLookup)o.selected&&n.push(o);return{selectedNodes:r,selectedEdges:n}},tw=e=>e.id;function J9e(e,r){return jr(e.selectedNodes.map(tw),r.selectedNodes.map(tw))&&jr(e.selectedEdges.map(tw),r.selectedEdges.map(tw))}function eSe({onSelectionChange:e}){const r=vr(),{selectedNodes:n,selectedEdges:o}=Dt(Q9e,J9e);return S.useEffect(()=>{const i={nodes:n,edges:o};e?.(i),r.getState().onSelectionChangeHandlers.forEach(a=>a(i))},[n,o,e]),null}const tSe=e=>!!e.onSelectionChangeHandlers;function rSe({onSelectionChange:e}){const r=Dt(tSe);return e||r?y.jsx(eSe,{onSelectionChange:e}):null}const EV=[0,0],nSe={x:0,y:0,zoom:1},oSe=["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","ariaLabelConfig","zIndexMode"],CV=[...oSe,"rfId"],iSe=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),$V={translateExtent:V1,nodeOrigin:EV,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function aSe(e){const{setNodes:r,setEdges:n,setMinZoom:o,setMaxZoom:i,setTranslateExtent:a,setNodeExtent:l,reset:s,setDefaultNodesAndEdges:c}=Dt(iSe,jr),d=vr();S.useEffect(()=>(c(e.defaultNodes,e.defaultEdges),()=>{u.current=$V,s()}),[]);const u=S.useRef($V);return S.useEffect(()=>{for(const p of CV){const f=e[p],m=u.current[p];f!==m&&(typeof e[p]>"u"||(p==="nodes"?r(f):p==="edges"?n(f):p==="minZoom"?o(f):p==="maxZoom"?i(f):p==="translateExtent"?a(f):p==="nodeExtent"?l(f):p==="ariaLabelConfig"?d.setState({ariaLabelConfig:U7e(f)}):p==="fitView"?d.setState({fitViewQueued:f}):p==="fitViewOptions"?d.setState({fitViewOptions:f}):d.setState({[p]:f})))}u.current=e},CV.map(p=>e[p])),null}function RV(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function lSe(e){const[r,n]=S.useState(e==="system"?null:e);return S.useEffect(()=>{if(e!=="system"){n(e);return}const o=RV(),i=()=>n(o?.matches?"dark":"light");return i(),o?.addEventListener("change",i),()=>{o?.removeEventListener("change",i)}},[e]),r!==null?r:RV()?.matches?"dark":"light"}const zV=typeof document<"u"?document:null;function X1(e=null,r={target:zV,actInsideInputWithModifier:!0}){const[n,o]=S.useState(!1),i=S.useRef(!1),a=S.useRef(new Set([])),[l,s]=S.useMemo(()=>{if(e!==null){const c=(Array.isArray(e)?e:[e]).filter(u=>typeof u=="string").map(u=>u.replace("+",` `).replace(` `,` +`).split(` -`)),d=c.reduce((u,p)=>u.concat(...p),[]);return[c,d]}return[[],[]]},[e]);return S.useEffect(()=>{const c=r?.target??zV,d=r?.actInsideInputWithModifier??!0;if(e!==null){const u=g=>{if(i.current=g.ctrlKey||g.metaKey||g.shiftKey||g.altKey,(!i.current||i.current&&!d)&&PF(g))return!1;const v=jV(g.code,s);if(a.current.add(g[v]),TV(l,a.current,!1)){const w=g.composedPath?.()?.[0]||g.target,x=w?.nodeName==="BUTTON"||w?.nodeName==="A";r.preventDefault!==!1&&(i.current||!x)&&g.preventDefault(),o(!0)}},p=g=>{const v=jV(g.code,s);TV(l,a.current,!0)?(o(!1),a.current.clear()):a.current.delete(g[v]),g.key==="Meta"&&a.current.clear(),i.current=!1},f=()=>{a.current.clear(),o(!1)};return c?.addEventListener("keydown",u),c?.addEventListener("keyup",p),window.addEventListener("blur",f),window.addEventListener("contextmenu",f),()=>{c?.removeEventListener("keydown",u),c?.removeEventListener("keyup",p),window.removeEventListener("blur",f),window.removeEventListener("contextmenu",f)}}},[e,o]),n}function TV(e,r,n){return e.filter(o=>n||o.length===r.size).some(o=>o.every(i=>r.has(i)))}function jV(e,r){return r.includes(e)?"code":"key"}const sSe=()=>{const e=vr();return S.useMemo(()=>({zoomIn:r=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1.2,{duration:r?.duration}):Promise.resolve(!1)},zoomOut:r=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,{duration:r?.duration}):Promise.resolve(!1)},zoomTo:(r,n)=>{const{panZoom:o}=e.getState();return o?o.scaleTo(r,{duration:n?.duration}):Promise.resolve(!1)},getZoom:()=>e.getState().transform[2],setViewport:async(r,n)=>{const{transform:[o,i,a],panZoom:l}=e.getState();return l?(await l.setViewport({x:r.x??o,y:r.y??i,zoom:r.zoom??a},n),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[r,n,o]=e.getState().transform;return{x:r,y:n,zoom:o}},setCenter:async(r,n,o)=>e.getState().setCenter(r,n,o),fitBounds:async(r,n)=>{const{width:o,height:i,minZoom:a,maxZoom:l,panZoom:s}=e.getState(),c=Ws(r,o,i,a,l,n?.padding??.1);return s?(await s.setViewport(c,{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(r,n={})=>{const{transform:o,snapGrid:i,snapToGrid:a,domNode:l}=e.getState();if(!l)return r;const{x:s,y:c}=l.getBoundingClientRect(),d={x:r.x-s,y:r.y-c},u=n.snapGrid??i,p=n.snapToGrid??a;return G1(d,o,p,u)},flowToScreenPosition:r=>{const{transform:n,domNode:o}=e.getState();if(!o)return r;const{x:i,y:a}=o.getBoundingClientRect(),l=Yx(r,n);return{x:l.x+i,y:l.y+a}}}),[])};function AV(e,r){const n=[],o=new Map,i=[];for(const a of e)if(a.type==="add"){i.push(a);continue}else if(a.type==="remove"||a.type==="replace")o.set(a.id,[a]);else{const l=o.get(a.id);l?l.push(a):o.set(a.id,[a])}for(const a of r){const l=o.get(a.id);if(!l){n.push(a);continue}if(l[0].type==="remove")continue;if(l[0].type==="replace"){n.push({...l[0].item});continue}const s={...a};for(const c of l)cSe(c,s);n.push(s)}return i.length&&i.forEach(a=>{a.index!==void 0?n.splice(a.index,0,{...a.item}):n.push({...a.item})}),n}function cSe(e,r){switch(e.type){case"select":{r.selected=e.selected;break}case"position":{typeof e.position<"u"&&(r.position=e.position),typeof e.dragging<"u"&&(r.dragging=e.dragging);break}case"dimensions":{typeof e.dimensions<"u"&&(r.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes==="width")&&(r.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes==="height")&&(r.height=e.dimensions.height))),typeof e.resizing=="boolean"&&(r.resizing=e.resizing);break}}}function rw(e,r){return AV(e,r)}function nw(e,r){return AV(e,r)}function Qu(e,r){return{id:e,type:"select",selected:r}}function uf(e,r=new Set,n=!1){const o=[];for(const[i,a]of e){const l=r.has(i);!(a.selected===void 0&&!l)&&a.selected!==l&&(n&&(a.selected=l),o.push(Qu(a.id,l)))}return o}function DV({items:e=[],lookup:r}){const n=[],o=new Map(e.map(i=>[i.id,i]));for(const[i,a]of e.entries()){const l=r.get(a.id),s=l?.internals?.userNode??l;s!==void 0&&s!==a&&n.push({id:a.id,item:a,type:"replace"}),s===void 0&&n.push({item:a,type:"add",index:i})}for(const[i]of r)o.get(i)===void 0&&n.push({id:i,type:"remove"});return n}function MV(e){return{id:e.id,type:"remove"}}const NV=e=>P7e(e),dSe=e=>SF(e);function PV(e){return S.forwardRef(e)}const uSe=typeof window<"u"?S.useLayoutEffect:S.useEffect;function BV(e){const[r,n]=S.useState(BigInt(0)),[o]=S.useState(()=>pSe(()=>n(i=>i+BigInt(1))));return uSe(()=>{const i=o.get();i.length&&(e(i),o.reset())},[r]),o}function pSe(e){let r=[];return{get:()=>r,reset:()=>{r=[]},push:n=>{r.push(n),e()}}}const IV=S.createContext(null);function hSe({children:e}){const r=vr(),n=S.useCallback(s=>{const{nodes:c=[],setNodes:d,hasDefaultNodes:u,onNodesChange:p,nodeLookup:f,fitViewQueued:g,onNodesChangeMiddlewareMap:v}=r.getState();let w=c;for(const k of s)w=typeof k=="function"?k(w):k;let x=DV({items:w,lookup:f});for(const k of v.values())x=k(x);u&&d(w),x.length>0?p?.(x):g&&window.requestAnimationFrame(()=>{const{fitViewQueued:k,nodes:C,setNodes:_}=r.getState();k&&_(C)})},[]),o=BV(n),i=S.useCallback(s=>{const{edges:c=[],setEdges:d,hasDefaultEdges:u,onEdgesChange:p,edgeLookup:f}=r.getState();let g=c;for(const v of s)g=typeof v=="function"?v(g):v;u?d(g):p&&p(DV({items:g,lookup:f}))},[]),a=BV(i),l=S.useMemo(()=>({nodeQueue:o,edgeQueue:a}),[]);return y.jsx(IV.Provider,{value:l,children:e})}function fSe(){const e=S.useContext(IV);if(!e)throw new Error("useBatchContext must be used within a BatchProvider");return e}const mSe=e=>!!e.panZoom;function pf(){const e=sSe(),r=vr(),n=fSe(),o=Dt(mSe),i=S.useMemo(()=>{const a=p=>r.getState().nodeLookup.get(p),l=p=>{n.nodeQueue.push(p)},s=p=>{n.edgeQueue.push(p)},c=p=>{const{nodeLookup:f,nodeOrigin:g}=r.getState(),v=NV(p)?p:f.get(p.id),w=v.parentId?DF(v.position,v.measured,v.parentId,f,g):v.position,x={...v,position:w,width:v.measured?.width??v.width,height:v.measured?.height??v.height};return Ku(x)},d=(p,f,g={replace:!1})=>{l(v=>v.map(w=>{if(w.id===p){const x=typeof f=="function"?f(w):f;return g.replace&&NV(x)?x:{...w,...x}}return w}))},u=(p,f,g={replace:!1})=>{s(v=>v.map(w=>{if(w.id===p){const x=typeof f=="function"?f(w):f;return g.replace&&dSe(x)?x:{...w,...x}}return w}))};return{getNodes:()=>r.getState().nodes.map(p=>({...p})),getNode:p=>a(p)?.internals.userNode,getInternalNode:a,getEdges:()=>{const{edges:p=[]}=r.getState();return p.map(f=>({...f}))},getEdge:p=>r.getState().edgeLookup.get(p),setNodes:l,setEdges:s,addNodes:p=>{const f=Array.isArray(p)?p:[p];n.nodeQueue.push(g=>[...g,...f])},addEdges:p=>{const f=Array.isArray(p)?p:[p];n.edgeQueue.push(g=>[...g,...f])},toObject:()=>{const{nodes:p=[],edges:f=[],transform:g}=r.getState(),[v,w,x]=g;return{nodes:p.map(k=>({...k})),edges:f.map(k=>({...k})),viewport:{x:v,y:w,zoom:x}}},deleteElements:async({nodes:p=[],edges:f=[]})=>{const{nodes:g,edges:v,onNodesDelete:w,onEdgesDelete:x,triggerNodeChanges:k,triggerEdgeChanges:C,onDelete:_,onBeforeDelete:$}=r.getState(),{nodes:R,edges:T}=await L7e({nodesToRemove:p,edgesToRemove:f,nodes:g,edges:v,onBeforeDelete:$}),A=T.length>0,z=R.length>0;if(A){const j=T.map(MV);x?.(T),C(j)}if(z){const j=R.map(MV);w?.(R),k(j)}return(z||A)&&_?.({nodes:R,edges:T}),{deletedNodes:R,deletedEdges:T}},getIntersectingNodes:(p,f=!0,g)=>{const v=jF(p),w=v?p:c(p),x=g!==void 0;return w?(g||r.getState().nodes).filter(k=>{const C=r.getState().nodeLookup.get(k.id);if(C&&!v&&(k.id===p.id||!C.internals.positionAbsolute))return!1;const _=Ku(x?k:C),$=U1(_,w);return f&&$>0||$>=_.width*_.height||$>=w.width*w.height}):[]},isNodeIntersecting:(p,f,g=!0)=>{const v=jF(p)?p:c(p);if(!v)return!1;const w=U1(v,f);return g&&w>0||w>=f.width*f.height||w>=v.width*v.height},updateNode:d,updateNodeData:(p,f,g={replace:!1})=>{d(p,v=>{const w=typeof f=="function"?f(v):f;return g.replace?{...v,data:w}:{...v,data:{...v.data,...w}}},g)},updateEdge:u,updateEdgeData:(p,f,g={replace:!1})=>{u(p,v=>{const w=typeof f=="function"?f(v):f;return g.replace?{...v,data:w}:{...v,data:{...v.data,...w}}},g)},getNodesBounds:p=>{const{nodeLookup:f,nodeOrigin:g}=r.getState();return EF(p,{nodeLookup:f,nodeOrigin:g})},getHandleConnections:({type:p,id:f,nodeId:g})=>Array.from(r.getState().connectionLookup.get(`${g}-${p}${f?`-${f}`:""}`)?.values()??[]),getNodeConnections:({type:p,handleId:f,nodeId:g})=>Array.from(r.getState().connectionLookup.get(`${g}${p?f?`-${p}-${f}`:`-${p}`:""}`)?.values()??[]),fitView:async p=>{const f=r.getState().fitViewResolver??H7e();return r.setState({fitViewQueued:!0,fitViewOptions:p,fitViewResolver:f}),n.nodeQueue.push(g=>[...g]),f.promise}}},[]);return S.useMemo(()=>({...i,...e,viewportInitialized:o}),[o])}const OV=e=>e.selected,gSe=typeof window<"u"?window:void 0;function ySe({deleteKeyCode:e,multiSelectionKeyCode:r}){const n=vr(),{deleteElements:o}=pf(),i=X1(e,{actInsideInputWithModifier:!1}),a=X1(r,{target:gSe});S.useEffect(()=>{if(i){const{edges:l,nodes:s}=n.getState();o({nodes:s.filter(OV),edges:l.filter(OV)}),n.setState({nodesSelectionActive:!1})}},[i]),S.useEffect(()=>{n.setState({multiSelectionActive:a})},[a])}function vSe(e){const r=vr();S.useEffect(()=>{const n=()=>{if(!e.current||!(e.current.checkVisibility?.()??!0))return!1;const o=P7(e.current);(o.height===0||o.width===0)&&r.getState().onError?.("004",Gl.error004()),r.setState({width:o.width||500,height:o.height||500})};if(e.current){n(),window.addEventListener("resize",n);const o=new ResizeObserver(()=>n());return o.observe(e.current),()=>{window.removeEventListener("resize",n),o&&e.current&&o.unobserve(e.current)}}},[])}const ow={position:"absolute",width:"100%",height:"100%",top:0,left:0},bSe=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function xSe({onPaneContextMenu:e,zoomOnScroll:r=!0,zoomOnPinch:n=!0,panOnScroll:o=!1,panOnScrollSpeed:i=.5,panOnScrollMode:a=Yu.Free,zoomOnDoubleClick:l=!0,panOnDrag:s=!0,defaultViewport:c,translateExtent:d,minZoom:u,maxZoom:p,zoomActivationKeyCode:f,preventScrolling:g=!0,children:v,noWheelClassName:w,noPanClassName:x,onViewportChange:k,isControlledViewport:C,paneClickDistance:_,selectionOnDrag:$}){const R=vr(),T=S.useRef(null),{userSelectionActive:A,lib:z,connectionInProgress:j}=Dt(bSe,jr),I=X1(f),P=S.useRef();vSe(T);const L=S.useCallback(H=>{k?.({x:H[0],y:H[1],zoom:H[2]}),C||R.setState({transform:H})},[k,C]);return S.useEffect(()=>{if(T.current){P.current=$9e({domNode:T.current,minZoom:u,maxZoom:p,translateExtent:d,viewport:c,onDraggingChange:B=>R.setState({paneDragging:B}),onPanZoomStart:(B,F)=>{const{onViewportChangeStart:q,onMoveStart:G}=R.getState();G?.(B,F),q?.(F)},onPanZoom:(B,F)=>{const{onViewportChange:q,onMove:G}=R.getState();G?.(B,F),q?.(F)},onPanZoomEnd:(B,F)=>{const{onViewportChangeEnd:q,onMoveEnd:G}=R.getState();G?.(B,F),q?.(F)}});const{x:H,y:M,zoom:V}=P.current.getViewport();return R.setState({panZoom:P.current,transform:[H,M,V],domNode:T.current.closest(".react-flow")}),()=>{P.current?.destroy()}}},[]),S.useEffect(()=>{P.current?.update({onPaneContextMenu:e,zoomOnScroll:r,zoomOnPinch:n,panOnScroll:o,panOnScrollSpeed:i,panOnScrollMode:a,zoomOnDoubleClick:l,panOnDrag:s,zoomActivationKeyPressed:I,preventScrolling:g,noPanClassName:x,userSelectionActive:A,noWheelClassName:w,lib:z,onTransformChange:L,connectionInProgress:j,selectionOnDrag:$,paneClickDistance:_})},[e,r,n,o,i,a,l,s,I,g,x,A,w,z,L,j,$,_]),y.jsx("div",{className:"react-flow__renderer",ref:T,style:ow,children:v})}const wSe=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function kSe(){const{userSelectionActive:e,userSelectionRect:r}=Dt(wSe,jr);return e&&r?y.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:r.width,height:r.height,transform:`translate(${r.x}px, ${r.y}px)`}}):null}const Z7=(e,r)=>n=>{n.target===r.current&&e?.(n)},_Se=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging});function SSe({isSelecting:e,selectionKeyPressed:r,selectionMode:n=q1.Full,panOnDrag:o,paneClickDistance:i,selectionOnDrag:a,onSelectionStart:l,onSelectionEnd:s,onPaneClick:c,onPaneContextMenu:d,onPaneScroll:u,onPaneMouseEnter:p,onPaneMouseMove:f,onPaneMouseLeave:g,children:v}){const w=vr(),{userSelectionActive:x,elementsSelectable:k,dragging:C,connectionInProgress:_}=Dt(_Se,jr),$=k&&(e||x),R=S.useRef(null),T=S.useRef(),A=S.useRef(new Set),z=S.useRef(new Set),j=S.useRef(!1),I=q=>{if(j.current||_){j.current=!1;return}c?.(q),w.getState().resetSelectedElements(),w.setState({nodesSelectionActive:!1})},P=q=>{if(Array.isArray(o)&&o?.includes(2)){q.preventDefault();return}d?.(q)},L=u?q=>u(q):void 0,H=q=>{j.current&&(q.stopPropagation(),j.current=!1)},M=q=>{const{domNode:G}=w.getState();if(T.current=G?.getBoundingClientRect(),!T.current)return;const U=q.target===R.current;if(!U&&q.target.closest(".nokey")||!e||!(a&&U||r)||q.button!==0||!q.isPrimary)return;q.target?.setPointerCapture?.(q.pointerId),j.current=!1;const{x:Y,y:K}=Za(q.nativeEvent,T.current);w.setState({userSelectionRect:{width:0,height:0,startX:Y,startY:K,x:Y,y:K}}),U||(q.stopPropagation(),q.preventDefault())},V=q=>{const{userSelectionRect:G,transform:U,nodeLookup:Y,edgeLookup:K,connectionLookup:O,triggerNodeChanges:W,triggerEdgeChanges:Z,defaultEdgeOptions:Q,resetSelectedElements:ie}=w.getState();if(!T.current||!G)return;const{x:te,y:re}=Za(q.nativeEvent,T.current),{startX:ue,startY:_e}=G;if(!j.current){const Be=r?0:i;if(Math.hypot(te-ue,re-_e)<=Be)return;ie(),l?.(q)}j.current=!0;const ce={startX:ue,startY:_e,x:teBe.id)),z.current=new Set;const je=Q?.selectable??!0;for(const Be of A.current){const Je=O.get(Be);if(Je)for(const{edgeId:st}of Je.values()){const Le=K.get(st);Le&&(Le.selectable??je)&&z.current.add(st)}}if(!MF(pe,A.current)){const Be=uf(Y,A.current,!0);W(Be)}if(!MF(xe,z.current)){const Be=uf(K,z.current);Z(Be)}w.setState({userSelectionRect:ce,userSelectionActive:!0,nodesSelectionActive:!1})},B=q=>{q.button===0&&(q.target?.releasePointerCapture?.(q.pointerId),!x&&q.target===R.current&&w.getState().userSelectionRect&&I?.(q),w.setState({userSelectionActive:!1,userSelectionRect:null}),j.current&&(s?.(q),w.setState({nodesSelectionActive:A.current.size>0})))},F=o===!0||Array.isArray(o)&&o.includes(0);return y.jsxs("div",{className:dn(["react-flow__pane",{draggable:F,dragging:C,selection:e}]),onClick:$?void 0:Z7(I,R),onContextMenu:Z7(P,R),onWheel:Z7(L,R),onPointerEnter:$?void 0:p,onPointerMove:$?V:f,onPointerUp:$?B:void 0,onPointerDownCapture:$?M:void 0,onClickCapture:$?H:void 0,onPointerLeave:g,ref:R,style:ow,children:[v,y.jsx(kSe,{})]})}function Q7({id:e,store:r,unselect:n=!1,nodeRef:o}){const{addSelectedNodes:i,unselectNodesAndEdges:a,multiSelectionActive:l,nodeLookup:s,onError:c}=r.getState(),d=s.get(e);if(!d){c?.("012",Gl.error012(e));return}r.setState({nodesSelectionActive:!1}),d.selected?(n||d.selected&&l)&&(a({nodes:[d],edges:[]}),requestAnimationFrame(()=>o?.current?.blur())):i([e])}function LV({nodeRef:e,disabled:r=!1,noDragClassName:n,handleSelector:o,nodeId:i,isSelectable:a,nodeClickDistance:l}){const s=vr(),[c,d]=S.useState(!1),u=S.useRef();return S.useEffect(()=>{u.current=h9e({getStoreItems:()=>s.getState(),onNodeMouseDown:p=>{Q7({id:p,store:s,nodeRef:e})},onDragStart:()=>{d(!0)},onDragStop:()=>{d(!1)}})},[]),S.useEffect(()=>{if(r)u.current?.destroy();else if(e.current)return u.current?.update({noDragClassName:n,handleSelector:o,domNode:e.current,isSelectable:a,nodeId:i,nodeClickDistance:l}),()=>{u.current?.destroy()}},[n,o,r,a,e,i]),c}const ESe=e=>r=>r.selected&&(r.draggable||e&&typeof r.draggable>"u");function FV(){const e=vr();return S.useCallback(r=>{const{nodeExtent:n,snapToGrid:o,snapGrid:i,nodesDraggable:a,onError:l,updateNodePositions:s,nodeLookup:c,nodeOrigin:d}=e.getState(),u=new Map,p=ESe(a),f=o?i[0]:5,g=o?i[1]:5,v=r.direction.x*f*r.factor,w=r.direction.y*g*r.factor;for(const[,x]of c){if(!p(x))continue;let k={x:x.internals.positionAbsolute.x+v,y:x.internals.positionAbsolute.y+w};o&&(k=W1(k,i));const{position:C,positionAbsolute:_}=CF({nodeId:x.id,nextPosition:k,nodeLookup:c,nodeExtent:n,nodeOrigin:d,onError:l});x.position=C,x.internals.positionAbsolute=_,u.set(x.id,x)}s(u)},[])}const J7=S.createContext(null),CSe=J7.Provider;J7.Consumer;const e9=()=>S.useContext(J7),$Se=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),RSe=(e,r,n)=>o=>{const{connectionClickStartHandle:i,connectionMode:a,connection:l}=o,{fromHandle:s,toHandle:c,isValid:d}=l,u=c?.nodeId===e&&c?.id===r&&c?.type===n;return{connectingFrom:s?.nodeId===e&&s?.id===r&&s?.type===n,connectingTo:u,clickConnecting:i?.nodeId===e&&i?.id===r&&i?.type===n,isPossibleEndHandle:a===rf.Strict?s?.type!==n:e!==s?.nodeId||r!==s?.id,connectionInProcess:!!s,clickConnectionInProcess:!!i,valid:u&&d}};function zSe({type:e="source",position:r=Ue.Top,isValidConnection:n,isConnectable:o=!0,isConnectableStart:i=!0,isConnectableEnd:a=!0,id:l,onConnect:s,children:c,className:d,onMouseDown:u,onTouchStart:p,...f},g){const v=l||null,w=e==="target",x=vr(),k=e9(),{connectOnClick:C,noPanClassName:_,rfId:$}=Dt($Se,jr),{connectingFrom:R,connectingTo:T,clickConnecting:A,isPossibleEndHandle:z,connectionInProcess:j,clickConnectionInProcess:I,valid:P}=Dt(RSe(k,v,e),jr);k||x.getState().onError?.("010",Gl.error010());const L=V=>{const{defaultEdgeOptions:B,onConnect:F,hasDefaultEdges:q}=x.getState(),G={...B,...V};if(q){const{edges:U,setEdges:Y}=x.getState();Y(Z7e(G,U))}F?.(G),s?.(G)},H=V=>{if(!k)return;const B=BF(V.nativeEvent);if(i&&(B&&V.button===0||!B)){const F=x.getState();U7.onPointerDown(V.nativeEvent,{handleDomNode:V.currentTarget,autoPanOnConnect:F.autoPanOnConnect,connectionMode:F.connectionMode,connectionRadius:F.connectionRadius,domNode:F.domNode,nodeLookup:F.nodeLookup,lib:F.lib,isTarget:w,handleId:v,nodeId:k,flowId:F.rfId,panBy:F.panBy,cancelConnection:F.cancelConnection,onConnectStart:F.onConnectStart,onConnectEnd:F.onConnectEnd,updateConnection:F.updateConnection,onConnect:L,isValidConnection:n||F.isValidConnection,getTransform:()=>x.getState().transform,getFromHandle:()=>x.getState().connection.fromHandle,autoPanSpeed:F.autoPanSpeed,dragThreshold:F.connectionDragThreshold})}B?u?.(V):p?.(V)},M=V=>{const{onClickConnectStart:B,onClickConnectEnd:F,connectionClickStartHandle:q,connectionMode:G,isValidConnection:U,lib:Y,rfId:K,nodeLookup:O,connection:W}=x.getState();if(!k||!q&&!i)return;if(!q){B?.(V.nativeEvent,{nodeId:k,handleId:v,handleType:e}),x.setState({connectionClickStartHandle:{nodeId:k,type:e,id:v}});return}const Z=NF(V.target),Q=n||U,{connection:ie,isValid:te}=U7.isValid(V.nativeEvent,{handle:{nodeId:k,id:v,type:e},connectionMode:G,fromNodeId:q.nodeId,fromHandleId:q.id||null,fromType:q.type,isValidConnection:Q,flowId:K,doc:Z,lib:Y,nodeLookup:O});te&&ie&&L(ie);const re=structuredClone(W);delete re.inProgress,re.toPosition=re.toHandle?re.toHandle.position:null,F?.(V,re),x.setState({connectionClickStartHandle:null})};return y.jsx("div",{"data-handleid":v,"data-nodeid":k,"data-handlepos":r,"data-id":`${$}-${k}-${v}-${e}`,className:dn(["react-flow__handle",`react-flow__handle-${r}`,"nodrag",_,d,{source:!w,target:w,connectable:o,connectablestart:i,connectableend:a,clickconnecting:A,connectingfrom:R,connectingto:T,valid:P,connectionindicator:o&&(!j||z)&&(j||I?a:i)}]),onMouseDown:H,onTouchStart:H,onClick:C?M:void 0,ref:g,...f,children:c})}const Oo=S.memo(PV(zSe));function TSe({data:e,isConnectable:r,sourcePosition:n=Ue.Bottom}){return y.jsxs(y.Fragment,{children:[e?.label,y.jsx(Oo,{type:"source",position:n,isConnectable:r})]})}function jSe({data:e,isConnectable:r,targetPosition:n=Ue.Top,sourcePosition:o=Ue.Bottom}){return y.jsxs(y.Fragment,{children:[y.jsx(Oo,{type:"target",position:n,isConnectable:r}),e?.label,y.jsx(Oo,{type:"source",position:o,isConnectable:r})]})}function ASe(){return null}function DSe({data:e,isConnectable:r,targetPosition:n=Ue.Top}){return y.jsxs(y.Fragment,{children:[y.jsx(Oo,{type:"target",position:n,isConnectable:r}),e?.label]})}const iw={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},VV={input:TSe,default:jSe,output:DSe,group:ASe};function MSe(e){return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??e.style?.width,height:e.height??e.initialHeight??e.style?.height}:{width:e.width??e.style?.width,height:e.height??e.style?.height}}const NSe=e=>{const{width:r,height:n,x:o,y:i}=nf(e.nodeLookup,{filter:a=>!!a.selected});return{width:Ka(r)?r:null,height:Ka(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${o}px,${i}px)`}};function PSe({onSelectionContextMenu:e,noPanClassName:r,disableKeyboardA11y:n}){const o=vr(),{width:i,height:a,transformString:l,userSelectionActive:s}=Dt(NSe,jr),c=FV(),d=S.useRef(null);if(S.useEffect(()=>{n||d.current?.focus({preventScroll:!0})},[n]),LV({nodeRef:d}),s||!i||!a)return null;const u=e?f=>{const g=o.getState().nodes.filter(v=>v.selected);e(f,g)}:void 0,p=f=>{Object.prototype.hasOwnProperty.call(iw,f.key)&&(f.preventDefault(),c({direction:iw[f.key],factor:f.shiftKey?4:1}))};return y.jsx("div",{className:dn(["react-flow__nodesselection","react-flow__container",r]),style:{transform:l},children:y.jsx("div",{ref:d,className:"react-flow__nodesselection-rect",onContextMenu:u,tabIndex:n?void 0:-1,onKeyDown:n?void 0:p,style:{width:i,height:a}})})}const qV=typeof window<"u"?window:void 0,BSe=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function HV({children:e,onPaneClick:r,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:l,paneClickDistance:s,deleteKeyCode:c,selectionKeyCode:d,selectionOnDrag:u,selectionMode:p,onSelectionStart:f,onSelectionEnd:g,multiSelectionKeyCode:v,panActivationKeyCode:w,zoomActivationKeyCode:x,elementsSelectable:k,zoomOnScroll:C,zoomOnPinch:_,panOnScroll:$,panOnScrollSpeed:R,panOnScrollMode:T,zoomOnDoubleClick:A,panOnDrag:z,defaultViewport:j,translateExtent:I,minZoom:P,maxZoom:L,preventScrolling:H,onSelectionContextMenu:M,noWheelClassName:V,noPanClassName:B,disableKeyboardA11y:F,onViewportChange:q,isControlledViewport:G}){const{nodesSelectionActive:U,userSelectionActive:Y}=Dt(BSe,jr),K=X1(d,{target:qV}),O=X1(w,{target:qV}),W=O||z,Z=O||$,Q=u&&W!==!0,ie=K||Y||Q;return ySe({deleteKeyCode:c,multiSelectionKeyCode:v}),y.jsx(xSe,{onPaneContextMenu:a,elementsSelectable:k,zoomOnScroll:C,zoomOnPinch:_,panOnScroll:Z,panOnScrollSpeed:R,panOnScrollMode:T,zoomOnDoubleClick:A,panOnDrag:!K&&W,defaultViewport:j,translateExtent:I,minZoom:P,maxZoom:L,zoomActivationKeyCode:x,preventScrolling:H,noWheelClassName:V,noPanClassName:B,onViewportChange:q,isControlledViewport:G,paneClickDistance:s,selectionOnDrag:Q,children:y.jsxs(SSe,{onSelectionStart:f,onSelectionEnd:g,onPaneClick:r,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:l,panOnDrag:W,isSelecting:!!ie,selectionMode:p,selectionKeyPressed:K,paneClickDistance:s,selectionOnDrag:Q,children:[e,U&&y.jsx(PSe,{onSelectionContextMenu:M,noPanClassName:B,disableKeyboardA11y:F})]})})}HV.displayName="FlowRenderer";const ISe=S.memo(HV),OSe=e=>r=>e?M7(r.nodeLookup,{x:0,y:0,width:r.width,height:r.height},r.transform,!0).map(n=>n.id):Array.from(r.nodeLookup.keys());function LSe(e){return Dt(S.useCallback(OSe(e),[e]),jr)}const FSe=e=>e.updateNodeInternals;function VSe(){const e=Dt(FSe),[r]=S.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(n=>{const o=new Map;n.forEach(i=>{const a=i.target.getAttribute("data-id");o.set(a,{id:a,nodeElement:i.target,force:!0})}),e(o)}));return S.useEffect(()=>()=>{r?.disconnect()},[r]),r}function qSe({node:e,nodeType:r,hasDimensions:n,resizeObserver:o}){const i=vr(),a=S.useRef(null),l=S.useRef(null),s=S.useRef(e.sourcePosition),c=S.useRef(e.targetPosition),d=S.useRef(r),u=n&&!!e.internals.handleBounds;return S.useEffect(()=>{a.current&&!e.hidden&&(!u||l.current!==a.current)&&(l.current&&o?.unobserve(l.current),o?.observe(a.current),l.current=a.current)},[u,e.hidden]),S.useEffect(()=>()=>{l.current&&(o?.unobserve(l.current),l.current=null)},[]),S.useEffect(()=>{if(a.current){const p=d.current!==r,f=s.current!==e.sourcePosition,g=c.current!==e.targetPosition;(p||f||g)&&(d.current=r,s.current=e.sourcePosition,c.current=e.targetPosition,i.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:a.current,force:!0}]])))}},[e.id,r,e.sourcePosition,e.targetPosition]),a}function HSe({id:e,onClick:r,onMouseEnter:n,onMouseMove:o,onMouseLeave:i,onContextMenu:a,onDoubleClick:l,nodesDraggable:s,elementsSelectable:c,nodesConnectable:d,nodesFocusable:u,resizeObserver:p,noDragClassName:f,noPanClassName:g,disableKeyboardA11y:v,rfId:w,nodeTypes:x,nodeClickDistance:k,onError:C}){const{node:_,internals:$,isParent:R}=Dt(te=>{const re=te.nodeLookup.get(e),ue=te.parentLookup.has(e);return{node:re,internals:re.internals,isParent:ue}},jr);let T=_.type||"default",A=x?.[T]||VV[T];A===void 0&&(C?.("003",Gl.error003(T)),T="default",A=x?.default||VV.default);const z=!!(_.draggable||s&&typeof _.draggable>"u"),j=!!(_.selectable||c&&typeof _.selectable>"u"),I=!!(_.connectable||d&&typeof _.connectable>"u"),P=!!(_.focusable||u&&typeof _.focusable>"u"),L=vr(),H=AF(_),M=qSe({node:_,nodeType:T,hasDimensions:H,resizeObserver:p}),V=LV({nodeRef:M,disabled:_.hidden||!z,noDragClassName:f,handleSelector:_.dragHandle,nodeId:e,isSelectable:j,nodeClickDistance:k}),B=FV();if(_.hidden)return null;const F=_o(_),q=MSe(_),G=j||z||r||n||o||i,U=n?te=>n(te,{...$.userNode}):void 0,Y=o?te=>o(te,{...$.userNode}):void 0,K=i?te=>i(te,{...$.userNode}):void 0,O=a?te=>a(te,{...$.userNode}):void 0,W=l?te=>l(te,{...$.userNode}):void 0,Z=te=>{const{selectNodesOnDrag:re,nodeDragThreshold:ue}=L.getState();j&&(!re||!z||ue>0)&&Q7({id:e,store:L,nodeRef:M}),r&&r(te,{...$.userNode})},Q=te=>{if(!(PF(te.nativeEvent)||v)){if(bF.includes(te.key)&&j){const re=te.key==="Escape";Q7({id:e,store:L,unselect:re,nodeRef:M})}else if(z&&_.selected&&Object.prototype.hasOwnProperty.call(iw,te.key)){te.preventDefault();const{ariaLabelConfig:re}=L.getState();L.setState({ariaLiveMessage:re["node.a11yDescription.ariaLiveMessage"]({direction:te.key.replace("Arrow","").toLowerCase(),x:~~$.positionAbsolute.x,y:~~$.positionAbsolute.y})}),B({direction:iw[te.key],factor:te.shiftKey?4:1})}}},ie=()=>{if(v||!M.current?.matches(":focus-visible"))return;const{transform:te,width:re,height:ue,autoPanOnNodeFocus:_e,setCenter:ce}=L.getState();_e&&(M7(new Map([[e,_]]),{x:0,y:0,width:re,height:ue},te,!0).length>0||ce(_.position.x+F.width/2,_.position.y+F.height/2,{zoom:te[2]}))};return y.jsx("div",{className:dn(["react-flow__node",`react-flow__node-${T}`,{[g]:z},_.className,{selected:_.selected,selectable:j,parent:R,draggable:z,dragging:V}]),ref:M,style:{zIndex:$.z,transform:`translate(${$.positionAbsolute.x}px,${$.positionAbsolute.y}px)`,pointerEvents:G?"all":"none",visibility:H?"visible":"hidden",..._.style,...q},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:U,onMouseMove:Y,onMouseLeave:K,onContextMenu:O,onClick:Z,onDoubleClick:W,onKeyDown:P?Q:void 0,tabIndex:P?0:void 0,onFocus:P?ie:void 0,role:_.ariaRole??(P?"group":void 0),"aria-roledescription":"node","aria-describedby":v?void 0:`${_V}-${w}`,"aria-label":_.ariaLabel,..._.domAttributes,children:y.jsx(CSe,{value:e,children:y.jsx(A,{id:e,data:_.data,type:T,positionAbsoluteX:$.positionAbsolute.x,positionAbsoluteY:$.positionAbsolute.y,selected:_.selected??!1,selectable:j,draggable:z,deletable:_.deletable??!0,isConnectable:I,sourcePosition:_.sourcePosition,targetPosition:_.targetPosition,dragging:V,dragHandle:_.dragHandle,zIndex:$.z,parentId:_.parentId,...F})})})}var USe=S.memo(HSe);const WSe=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function UV(e){const{nodesDraggable:r,nodesConnectable:n,nodesFocusable:o,elementsSelectable:i,onError:a}=Dt(WSe,jr),l=LSe(e.onlyRenderVisibleElements),s=VSe();return y.jsx("div",{className:"react-flow__nodes",style:ow,children:l.map(c=>y.jsx(USe,{id:c,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:s,nodesDraggable:r,nodesConnectable:n,nodesFocusable:o,elementsSelectable:i,nodeClickDistance:e.nodeClickDistance,onError:a},c))})}UV.displayName="NodeRenderer";const GSe=S.memo(UV);function YSe(e){return Dt(S.useCallback(r=>{if(!e)return r.edges.map(o=>o.id);const n=[];if(r.width&&r.height)for(const o of r.edges){const i=r.nodeLookup.get(o.source),a=r.nodeLookup.get(o.target);i&&a&&Y7e({sourceNode:i,targetNode:a,width:r.width,height:r.height,transform:r.transform})&&n.push(o.id)}return n},[e]),jr)}const XSe=({color:e="none",strokeWidth:r=1})=>{const n={strokeWidth:r,...e&&{stroke:e}};return y.jsx("polyline",{className:"arrow",style:n,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},KSe=({color:e="none",strokeWidth:r=1})=>{const n={strokeWidth:r,...e&&{stroke:e,fill:e}};return y.jsx("polyline",{className:"arrowclosed",style:n,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},WV={[Hx.Arrow]:XSe,[Hx.ArrowClosed]:KSe};function ZSe(e){const r=vr();return S.useMemo(()=>Object.prototype.hasOwnProperty.call(WV,e)?WV[e]:(r.getState().onError?.("009",Gl.error009(e)),null),[e])}const QSe=({id:e,type:r,color:n,width:o=12.5,height:i=12.5,markerUnits:a="strokeWidth",strokeWidth:l,orient:s="auto-start-reverse"})=>{const c=ZSe(r);return c?y.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${o}`,markerHeight:`${i}`,viewBox:"-10 -10 20 20",markerUnits:a,orient:s,refX:"0",refY:"0",children:y.jsx(c,{color:n,strokeWidth:l})}):null},GV=({defaultColor:e,rfId:r})=>{const n=Dt(a=>a.edges),o=Dt(a=>a.defaultEdgeOptions),i=S.useMemo(()=>t9e(n,{id:r,defaultColor:e,defaultMarkerStart:o?.markerStart,defaultMarkerEnd:o?.markerEnd}),[n,o,r,e]);return i.length?y.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:y.jsx("defs",{children:i.map(a=>y.jsx(QSe,{id:a.id,type:a.type,color:a.color,width:a.width,height:a.height,markerUnits:a.markerUnits,strokeWidth:a.strokeWidth,orient:a.orient},a.id))})}):null};GV.displayName="MarkerDefinitions";var JSe=S.memo(GV);function YV({x:e,y:r,label:n,labelStyle:o,labelShowBg:i=!0,labelBgStyle:a,labelBgPadding:l=[2,4],labelBgBorderRadius:s=2,children:c,className:d,...u}){const[p,f]=S.useState({x:1,y:0,width:0,height:0}),g=dn(["react-flow__edge-textwrapper",d]),v=S.useRef(null);return S.useEffect(()=>{if(v.current){const w=v.current.getBBox();f({x:w.x,y:w.y,width:w.width,height:w.height})}},[n]),n?y.jsxs("g",{transform:`translate(${e-p.width/2} ${r-p.height/2})`,className:g,visibility:p.width?"visible":"hidden",...u,children:[i&&y.jsx("rect",{width:p.width+2*l[0],x:-l[0],y:-l[1],height:p.height+2*l[1],className:"react-flow__edge-textbg",style:a,rx:s,ry:s}),y.jsx("text",{className:"react-flow__edge-text",y:p.height/2,dy:"0.3em",ref:v,style:o,children:n}),c]}):null}YV.displayName="EdgeText";const eEe=S.memo(YV);function aw({path:e,labelX:r,labelY:n,label:o,labelStyle:i,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,interactionWidth:d=20,...u}){return y.jsxs(y.Fragment,{children:[y.jsx("path",{...u,d:e,fill:"none",className:dn(["react-flow__edge-path",u.className])}),d?y.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:d,className:"react-flow__edge-interaction"}):null,o&&Ka(r)&&Ka(n)?y.jsx(eEe,{x:r,y:n,label:o,labelStyle:i,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c}):null]})}function XV({pos:e,x1:r,y1:n,x2:o,y2:i}){return e===Ue.Left||e===Ue.Right?[.5*(r+o),n]:[r,.5*(n+i)]}function KV({sourceX:e,sourceY:r,sourcePosition:n=Ue.Bottom,targetX:o,targetY:i,targetPosition:a=Ue.Top}){const[l,s]=XV({pos:n,x1:e,y1:r,x2:o,y2:i}),[c,d]=XV({pos:a,x1:o,y1:i,x2:e,y2:r}),[u,p,f,g]=OF({sourceX:e,sourceY:r,targetX:o,targetY:i,sourceControlX:l,sourceControlY:s,targetControlX:c,targetControlY:d});return[`M${e},${r} C${l},${s} ${c},${d} ${o},${i}`,u,p,f,g]}function ZV(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:i,targetY:a,sourcePosition:l,targetPosition:s,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:g,style:v,markerEnd:w,markerStart:x,interactionWidth:k})=>{const[C,_,$]=KV({sourceX:n,sourceY:o,sourcePosition:l,targetX:i,targetY:a,targetPosition:s}),R=e.isInternal?void 0:r;return y.jsx(aw,{id:R,path:C,labelX:_,labelY:$,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:g,style:v,markerEnd:w,markerStart:x,interactionWidth:k})})}const tEe=ZV({isInternal:!1}),QV=ZV({isInternal:!0});tEe.displayName="SimpleBezierEdge",QV.displayName="SimpleBezierEdgeInternal";function JV(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:i,targetY:a,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,sourcePosition:g=Ue.Bottom,targetPosition:v=Ue.Top,markerEnd:w,markerStart:x,pathOptions:k,interactionWidth:C})=>{const[_,$,R]=Zx({sourceX:n,sourceY:o,sourcePosition:g,targetX:i,targetY:a,targetPosition:v,borderRadius:k?.borderRadius,offset:k?.offset,stepPosition:k?.stepPosition}),T=e.isInternal?void 0:r;return y.jsx(aw,{id:T,path:_,labelX:$,labelY:R,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,markerEnd:w,markerStart:x,interactionWidth:C})})}const eq=JV({isInternal:!1}),tq=JV({isInternal:!0});eq.displayName="SmoothStepEdge",tq.displayName="SmoothStepEdgeInternal";function rq(e){return S.memo(({id:r,...n})=>{const o=e.isInternal?void 0:r;return y.jsx(eq,{...n,id:o,pathOptions:S.useMemo(()=>({borderRadius:0,offset:n.pathOptions?.offset}),[n.pathOptions?.offset])})})}const rEe=rq({isInternal:!1}),nq=rq({isInternal:!0});rEe.displayName="StepEdge",nq.displayName="StepEdgeInternal";function oq(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:i,targetY:a,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,markerEnd:g,markerStart:v,interactionWidth:w})=>{const[x,k,C]=VF({sourceX:n,sourceY:o,targetX:i,targetY:a}),_=e.isInternal?void 0:r;return y.jsx(aw,{id:_,path:x,labelX:k,labelY:C,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,markerEnd:g,markerStart:v,interactionWidth:w})})}const nEe=oq({isInternal:!1}),iq=oq({isInternal:!0});nEe.displayName="StraightEdge",iq.displayName="StraightEdgeInternal";function aq(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:i,targetY:a,sourcePosition:l=Ue.Bottom,targetPosition:s=Ue.Top,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:g,style:v,markerEnd:w,markerStart:x,pathOptions:k,interactionWidth:C})=>{const[_,$,R]=Kx({sourceX:n,sourceY:o,sourcePosition:l,targetX:i,targetY:a,targetPosition:s,curvature:k?.curvature}),T=e.isInternal?void 0:r;return y.jsx(aw,{id:T,path:_,labelX:$,labelY:R,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:g,style:v,markerEnd:w,markerStart:x,interactionWidth:C})})}const oEe=aq({isInternal:!1}),lq=aq({isInternal:!0});oEe.displayName="BezierEdge",lq.displayName="BezierEdgeInternal";const sq={default:lq,straight:iq,step:nq,smoothstep:tq,simplebezier:QV},cq={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},iEe=(e,r,n)=>n===Ue.Left?e-r:n===Ue.Right?e+r:e,aEe=(e,r,n)=>n===Ue.Top?e-r:n===Ue.Bottom?e+r:e,dq="react-flow__edgeupdater";function uq({position:e,centerX:r,centerY:n,radius:o=10,onMouseDown:i,onMouseEnter:a,onMouseOut:l,type:s}){return y.jsx("circle",{onMouseDown:i,onMouseEnter:a,onMouseOut:l,className:dn([dq,`${dq}-${s}`]),cx:iEe(r,o,e),cy:aEe(n,o,e),r:o,stroke:"transparent",fill:"transparent"})}function lEe({isReconnectable:e,reconnectRadius:r,edge:n,sourceX:o,sourceY:i,targetX:a,targetY:l,sourcePosition:s,targetPosition:c,onReconnect:d,onReconnectStart:u,onReconnectEnd:p,setReconnecting:f,setUpdateHover:g}){const v=vr(),w=($,R)=>{if($.button!==0)return;const{autoPanOnConnect:T,domNode:A,isValidConnection:z,connectionMode:j,connectionRadius:I,lib:P,onConnectStart:L,onConnectEnd:H,cancelConnection:M,nodeLookup:V,rfId:B,panBy:F,updateConnection:q}=v.getState(),G=R.type==="target",U=(O,W)=>{f(!1),p?.(O,n,R.type,W)},Y=O=>d?.(n,O),K=(O,W)=>{f(!0),u?.($,n,R.type),L?.(O,W)};U7.onPointerDown($.nativeEvent,{autoPanOnConnect:T,connectionMode:j,connectionRadius:I,domNode:A,handleId:R.id,nodeId:R.nodeId,nodeLookup:V,isTarget:G,edgeUpdaterType:R.type,lib:P,flowId:B,cancelConnection:M,panBy:F,isValidConnection:z,onConnect:Y,onConnectStart:K,onConnectEnd:H,onReconnectEnd:U,updateConnection:q,getTransform:()=>v.getState().transform,getFromHandle:()=>v.getState().connection.fromHandle,dragThreshold:v.getState().connectionDragThreshold,handleDomNode:$.currentTarget})},x=$=>w($,{nodeId:n.target,id:n.targetHandle??null,type:"target"}),k=$=>w($,{nodeId:n.source,id:n.sourceHandle??null,type:"source"}),C=()=>g(!0),_=()=>g(!1);return y.jsxs(y.Fragment,{children:[(e===!0||e==="source")&&y.jsx(uq,{position:s,centerX:o,centerY:i,radius:r,onMouseDown:x,onMouseEnter:C,onMouseOut:_,type:"source"}),(e===!0||e==="target")&&y.jsx(uq,{position:c,centerX:a,centerY:l,radius:r,onMouseDown:k,onMouseEnter:C,onMouseOut:_,type:"target"})]})}function sEe({id:e,edgesFocusable:r,edgesReconnectable:n,elementsSelectable:o,onClick:i,onDoubleClick:a,onContextMenu:l,onMouseEnter:s,onMouseMove:c,onMouseLeave:d,reconnectRadius:u,onReconnect:p,onReconnectStart:f,onReconnectEnd:g,rfId:v,edgeTypes:w,noPanClassName:x,onError:k,disableKeyboardA11y:C}){let _=Dt(ce=>ce.edgeLookup.get(e));const $=Dt(ce=>ce.defaultEdgeOptions);_=$?{...$,..._}:_;let R=_.type||"default",T=w?.[R]||sq[R];T===void 0&&(k?.("011",Gl.error011(R)),R="default",T=w?.default||sq.default);const A=!!(_.focusable||r&&typeof _.focusable>"u"),z=typeof p<"u"&&(_.reconnectable||n&&typeof _.reconnectable>"u"),j=!!(_.selectable||o&&typeof _.selectable>"u"),I=S.useRef(null),[P,L]=S.useState(!1),[H,M]=S.useState(!1),V=vr(),{zIndex:B,sourceX:F,sourceY:q,targetX:G,targetY:U,sourcePosition:Y,targetPosition:K}=Dt(S.useCallback(ce=>{const pe=ce.nodeLookup.get(_.source),xe=ce.nodeLookup.get(_.target);if(!pe||!xe)return{zIndex:_.zIndex,...cq};const je=WF({id:e,sourceNode:pe,targetNode:xe,sourceHandle:_.sourceHandle||null,targetHandle:_.targetHandle||null,connectionMode:ce.connectionMode,onError:k});return{zIndex:G7e({selected:_.selected,zIndex:_.zIndex,sourceNode:pe,targetNode:xe,elevateOnSelect:ce.elevateEdgesOnSelect,zIndexMode:ce.zIndexMode}),...je||cq}},[_.source,_.target,_.sourceHandle,_.targetHandle,_.selected,_.zIndex]),jr),O=S.useMemo(()=>_.markerStart?`url('#${B7(_.markerStart,v)}')`:void 0,[_.markerStart,v]),W=S.useMemo(()=>_.markerEnd?`url('#${B7(_.markerEnd,v)}')`:void 0,[_.markerEnd,v]);if(_.hidden||F===null||q===null||G===null||U===null)return null;const Z=ce=>{const{addSelectedEdges:pe,unselectNodesAndEdges:xe,multiSelectionActive:je}=V.getState();j&&(V.setState({nodesSelectionActive:!1}),_.selected&&je?(xe({nodes:[],edges:[_]}),I.current?.blur()):pe([e])),i&&i(ce,_)},Q=a?ce=>{a(ce,{..._})}:void 0,ie=l?ce=>{l(ce,{..._})}:void 0,te=s?ce=>{s(ce,{..._})}:void 0,re=c?ce=>{c(ce,{..._})}:void 0,ue=d?ce=>{d(ce,{..._})}:void 0,_e=ce=>{if(!C&&bF.includes(ce.key)&&j){const{unselectNodesAndEdges:pe,addSelectedEdges:xe}=V.getState();ce.key==="Escape"?(I.current?.blur(),pe({edges:[_]})):xe([e])}};return y.jsx("svg",{style:{zIndex:B},children:y.jsxs("g",{className:dn(["react-flow__edge",`react-flow__edge-${R}`,_.className,x,{selected:_.selected,animated:_.animated,inactive:!j&&!i,updating:P,selectable:j}]),onClick:Z,onDoubleClick:Q,onContextMenu:ie,onMouseEnter:te,onMouseMove:re,onMouseLeave:ue,onKeyDown:A?_e:void 0,tabIndex:A?0:void 0,role:_.ariaRole??(A?"group":"img"),"aria-roledescription":"edge","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":_.ariaLabel===null?void 0:_.ariaLabel||`Edge from ${_.source} to ${_.target}`,"aria-describedby":A?`${SV}-${v}`:void 0,ref:I,..._.domAttributes,children:[!H&&y.jsx(T,{id:e,source:_.source,target:_.target,type:_.type,selected:_.selected,animated:_.animated,selectable:j,deletable:_.deletable??!0,label:_.label,labelStyle:_.labelStyle,labelShowBg:_.labelShowBg,labelBgStyle:_.labelBgStyle,labelBgPadding:_.labelBgPadding,labelBgBorderRadius:_.labelBgBorderRadius,sourceX:F,sourceY:q,targetX:G,targetY:U,sourcePosition:Y,targetPosition:K,data:_.data,style:_.style,sourceHandleId:_.sourceHandle,targetHandleId:_.targetHandle,markerStart:O,markerEnd:W,pathOptions:"pathOptions"in _?_.pathOptions:void 0,interactionWidth:_.interactionWidth}),z&&y.jsx(lEe,{edge:_,isReconnectable:z,reconnectRadius:u,onReconnect:p,onReconnectStart:f,onReconnectEnd:g,sourceX:F,sourceY:q,targetX:G,targetY:U,sourcePosition:Y,targetPosition:K,setUpdateHover:L,setReconnecting:M})]})})}var cEe=S.memo(sEe);const dEe=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function pq({defaultMarkerColor:e,onlyRenderVisibleElements:r,rfId:n,edgeTypes:o,noPanClassName:i,onReconnect:a,onEdgeContextMenu:l,onEdgeMouseEnter:s,onEdgeMouseMove:c,onEdgeMouseLeave:d,onEdgeClick:u,reconnectRadius:p,onEdgeDoubleClick:f,onReconnectStart:g,onReconnectEnd:v,disableKeyboardA11y:w}){const{edgesFocusable:x,edgesReconnectable:k,elementsSelectable:C,onError:_}=Dt(dEe,jr),$=YSe(r);return y.jsxs("div",{className:"react-flow__edges",children:[y.jsx(JSe,{defaultColor:e,rfId:n}),$.map(R=>y.jsx(cEe,{id:R,edgesFocusable:x,edgesReconnectable:k,elementsSelectable:C,noPanClassName:i,onReconnect:a,onContextMenu:l,onMouseEnter:s,onMouseMove:c,onMouseLeave:d,onClick:u,reconnectRadius:p,onDoubleClick:f,onReconnectStart:g,onReconnectEnd:v,rfId:n,onError:_,edgeTypes:o,disableKeyboardA11y:w},R))]})}pq.displayName="EdgeRenderer";const uEe=S.memo(pq),pEe=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function hEe({children:e}){const r=Dt(pEe);return y.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:r},children:e})}function fEe(e){const r=pf(),n=S.useRef(!1);S.useEffect(()=>{!n.current&&r.viewportInitialized&&e&&(setTimeout(()=>e(r),1),n.current=!0)},[e,r.viewportInitialized])}const mEe=e=>e.panZoom?.syncViewport;function gEe(e){const r=Dt(mEe),n=vr();return S.useEffect(()=>{e&&(r?.(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,r]),null}function yEe(e){return e.connection.inProgress?{...e.connection,to:G1(e.connection.to,e.transform)}:{...e.connection}}function vEe(e){return yEe}function bEe(e){const r=vEe();return Dt(r,jr)}const xEe=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function wEe({containerStyle:e,style:r,type:n,component:o}){const{nodesConnectable:i,width:a,height:l,isValid:s,inProgress:c}=Dt(xEe,jr);return a&&i&&c?y.jsx("svg",{style:e,width:a,height:l,className:"react-flow__connectionline react-flow__container",children:y.jsx("g",{className:dn(["react-flow__connection",_F(s)]),children:y.jsx(hq,{style:r,type:n,CustomComponent:o,isValid:s})})}):null}const hq=({style:e,type:r=id.Bezier,CustomComponent:n,isValid:o})=>{const{inProgress:i,from:a,fromNode:l,fromHandle:s,fromPosition:c,to:d,toNode:u,toHandle:p,toPosition:f,pointer:g}=bEe();if(!i)return;if(n)return y.jsx(n,{connectionLineType:r,connectionLineStyle:e,fromNode:l,fromHandle:s,fromX:a.x,fromY:a.y,toX:d.x,toY:d.y,fromPosition:c,toPosition:f,connectionStatus:_F(o),toNode:u,toHandle:p,pointer:g});let v="";const w={sourceX:a.x,sourceY:a.y,sourcePosition:c,targetX:d.x,targetY:d.y,targetPosition:f};switch(r){case id.Bezier:[v]=Kx(w);break;case id.SimpleBezier:[v]=KV(w);break;case id.Step:[v]=Zx({...w,borderRadius:0});break;case id.SmoothStep:[v]=Zx(w);break;default:[v]=VF(w)}return y.jsx("path",{d:v,fill:"none",className:"react-flow__connection-path",style:e})};hq.displayName="ConnectionLine";const kEe={};function fq(e=kEe){S.useRef(e),vr(),S.useEffect(()=>{},[e])}function _Ee(){vr(),S.useRef(!1),S.useEffect(()=>{},[])}function mq({nodeTypes:e,edgeTypes:r,onInit:n,onNodeClick:o,onEdgeClick:i,onNodeDoubleClick:a,onEdgeDoubleClick:l,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:d,onNodeContextMenu:u,onSelectionContextMenu:p,onSelectionStart:f,onSelectionEnd:g,connectionLineType:v,connectionLineStyle:w,connectionLineComponent:x,connectionLineContainerStyle:k,selectionKeyCode:C,selectionOnDrag:_,selectionMode:$,multiSelectionKeyCode:R,panActivationKeyCode:T,zoomActivationKeyCode:A,deleteKeyCode:z,onlyRenderVisibleElements:j,elementsSelectable:I,defaultViewport:P,translateExtent:L,minZoom:H,maxZoom:M,preventScrolling:V,defaultMarkerColor:B,zoomOnScroll:F,zoomOnPinch:q,panOnScroll:G,panOnScrollSpeed:U,panOnScrollMode:Y,zoomOnDoubleClick:K,panOnDrag:O,onPaneClick:W,onPaneMouseEnter:Z,onPaneMouseMove:Q,onPaneMouseLeave:ie,onPaneScroll:te,onPaneContextMenu:re,paneClickDistance:ue,nodeClickDistance:_e,onEdgeContextMenu:ce,onEdgeMouseEnter:pe,onEdgeMouseMove:xe,onEdgeMouseLeave:je,reconnectRadius:Be,onReconnect:Je,onReconnectStart:st,onReconnectEnd:Le,noDragClassName:St,noWheelClassName:Ve,noPanClassName:qe,disableKeyboardA11y:Xe,nodeExtent:It,rfId:Et,viewport:be,onViewportChange:ke}){return fq(e),fq(r),_Ee(),fEe(n),gEe(be),y.jsx(ISe,{onPaneClick:W,onPaneMouseEnter:Z,onPaneMouseMove:Q,onPaneMouseLeave:ie,onPaneContextMenu:re,onPaneScroll:te,paneClickDistance:ue,deleteKeyCode:z,selectionKeyCode:C,selectionOnDrag:_,selectionMode:$,onSelectionStart:f,onSelectionEnd:g,multiSelectionKeyCode:R,panActivationKeyCode:T,zoomActivationKeyCode:A,elementsSelectable:I,zoomOnScroll:F,zoomOnPinch:q,zoomOnDoubleClick:K,panOnScroll:G,panOnScrollSpeed:U,panOnScrollMode:Y,panOnDrag:O,defaultViewport:P,translateExtent:L,minZoom:H,maxZoom:M,onSelectionContextMenu:p,preventScrolling:V,noDragClassName:St,noWheelClassName:Ve,noPanClassName:qe,disableKeyboardA11y:Xe,onViewportChange:ke,isControlledViewport:!!be,children:y.jsxs(hEe,{children:[y.jsx(uEe,{edgeTypes:r,onEdgeClick:i,onEdgeDoubleClick:l,onReconnect:Je,onReconnectStart:st,onReconnectEnd:Le,onlyRenderVisibleElements:j,onEdgeContextMenu:ce,onEdgeMouseEnter:pe,onEdgeMouseMove:xe,onEdgeMouseLeave:je,reconnectRadius:Be,defaultMarkerColor:B,noPanClassName:qe,disableKeyboardA11y:Xe,rfId:Et}),y.jsx(wEe,{style:w,type:v,component:x,containerStyle:k}),y.jsx("div",{className:"react-flow__edgelabel-renderer"}),y.jsx(GSe,{nodeTypes:e,onNodeClick:o,onNodeDoubleClick:a,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:d,onNodeContextMenu:u,nodeClickDistance:_e,onlyRenderVisibleElements:j,noPanClassName:qe,noDragClassName:St,disableKeyboardA11y:Xe,nodeExtent:It,rfId:Et}),y.jsx("div",{className:"react-flow__viewport-portal"})]})})}mq.displayName="GraphView";const SEe=S.memo(mq),gq=({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,width:i,height:a,fitView:l,fitViewOptions:s,minZoom:c=.5,maxZoom:d=2,nodeOrigin:u,nodeExtent:p,zIndexMode:f="basic"}={})=>{const g=new Map,v=new Map,w=new Map,x=new Map,k=o??r??[],C=n??e??[],_=u??[0,0],$=p??V1;QF(w,x,k);const R=F7(C,g,v,{nodeOrigin:_,nodeExtent:$,zIndexMode:f});let T=[0,0,1];if(l&&i&&a){const A=nf(g,{filter:P=>!!((P.width||P.initialWidth)&&(P.height||P.initialHeight))}),{x:z,y:j,zoom:I}=Ws(A,i,a,c,d,s?.padding??.1);T=[z,j,I]}return{rfId:"1",width:i??0,height:a??0,transform:T,nodes:C,nodesInitialized:R,nodeLookup:g,parentLookup:v,edges:k,edgeLookup:x,connectionLookup:w,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:o!==void 0,panZoom:null,minZoom:c,maxZoom:d,translateExtent:V1,nodeExtent:$,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:rf.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:_,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:l??!1,fitViewOptions:s,fitViewResolver:null,connection:{...wF},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:F7e,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:xF,zIndexMode:f,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},EEe=({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,width:i,height:a,fitView:l,fitViewOptions:s,minZoom:c,maxZoom:d,nodeOrigin:u,nodeExtent:p,zIndexMode:f})=>q9e((g,v)=>{async function w(){const{nodeLookup:x,panZoom:k,fitViewOptions:C,fitViewResolver:_,width:$,height:R,minZoom:T,maxZoom:A}=v();k&&(await O7e({nodes:x,width:$,height:R,panZoom:k,minZoom:T,maxZoom:A},C),_?.resolve(!0),g({fitViewResolver:null}))}return{...gq({nodes:e,edges:r,width:i,height:a,fitView:l,fitViewOptions:s,minZoom:c,maxZoom:d,nodeOrigin:u,nodeExtent:p,defaultNodes:n,defaultEdges:o,zIndexMode:f}),setNodes:x=>{const{nodeLookup:k,parentLookup:C,nodeOrigin:_,elevateNodesOnSelect:$,fitViewQueued:R,zIndexMode:T}=v(),A=F7(x,k,C,{nodeOrigin:_,nodeExtent:p,elevateNodesOnSelect:$,checkEquality:!0,zIndexMode:T});R&&A?(w(),g({nodes:x,nodesInitialized:A,fitViewQueued:!1,fitViewOptions:void 0})):g({nodes:x,nodesInitialized:A})},setEdges:x=>{const{connectionLookup:k,edgeLookup:C}=v();QF(k,C,x),g({edges:x})},setDefaultNodesAndEdges:(x,k)=>{if(x){const{setNodes:C}=v();C(x),g({hasDefaultNodes:!0})}if(k){const{setEdges:C}=v();C(k),g({hasDefaultEdges:!0})}},updateNodeInternals:x=>{const{triggerNodeChanges:k,nodeLookup:C,parentLookup:_,domNode:$,nodeOrigin:R,nodeExtent:T,debug:A,fitViewQueued:z,zIndexMode:j}=v(),{changes:I,updatedInternals:P}=c9e(x,C,_,$,R,T,j);P&&(i9e(C,_,{nodeOrigin:R,nodeExtent:T,zIndexMode:j}),z?(w(),g({fitViewQueued:!1,fitViewOptions:void 0})):g({}),I?.length>0&&(A&&console.log("React Flow: trigger node changes",I),k?.(I)))},updateNodePositions:(x,k=!1)=>{const C=[];let _=[];const{nodeLookup:$,triggerNodeChanges:R,connection:T,updateConnection:A,onNodesChangeMiddlewareMap:z}=v();for(const[j,I]of x){const P=$.get(j),L=!!(P?.expandParent&&P?.parentId&&I?.position),H={id:j,type:"position",position:L?{x:Math.max(0,I.position.x),y:Math.max(0,I.position.y)}:I.position,dragging:k};if(P&&T.inProgress&&T.fromNode.id===P.id){const M=Zu(P,T.fromHandle,Ue.Left,!0);A({...T,from:M})}L&&P.parentId&&C.push({id:j,parentId:P.parentId,rect:{...I.internals.positionAbsolute,width:I.measured.width??0,height:I.measured.height??0}}),_.push(H)}if(C.length>0){const{parentLookup:j,nodeOrigin:I}=v(),P=q7(C,$,j,I);_.push(...P)}for(const j of z.values())_=j(_);R(_)},triggerNodeChanges:x=>{const{onNodesChange:k,setNodes:C,nodes:_,hasDefaultNodes:$,debug:R}=v();if(x?.length){if($){const T=rw(x,_);C(T)}R&&console.log("React Flow: trigger node changes",x),k?.(x)}},triggerEdgeChanges:x=>{const{onEdgesChange:k,setEdges:C,edges:_,hasDefaultEdges:$,debug:R}=v();if(x?.length){if($){const T=nw(x,_);C(T)}R&&console.log("React Flow: trigger edge changes",x),k?.(x)}},addSelectedNodes:x=>{const{multiSelectionActive:k,edgeLookup:C,nodeLookup:_,triggerNodeChanges:$,triggerEdgeChanges:R}=v();if(k){const T=x.map(A=>Qu(A,!0));$(T);return}$(uf(_,new Set([...x]),!0)),R(uf(C))},addSelectedEdges:x=>{const{multiSelectionActive:k,edgeLookup:C,nodeLookup:_,triggerNodeChanges:$,triggerEdgeChanges:R}=v();if(k){const T=x.map(A=>Qu(A,!0));R(T);return}R(uf(C,new Set([...x]))),$(uf(_,new Set,!0))},unselectNodesAndEdges:({nodes:x,edges:k}={})=>{const{edges:C,nodes:_,nodeLookup:$,triggerNodeChanges:R,triggerEdgeChanges:T}=v(),A=x||_,z=k||C,j=A.map(P=>{const L=$.get(P.id);return L&&(L.selected=!1),Qu(P.id,!1)}),I=z.map(P=>Qu(P.id,!1));R(j),T(I)},setMinZoom:x=>{const{panZoom:k,maxZoom:C}=v();k?.setScaleExtent([x,C]),g({minZoom:x})},setMaxZoom:x=>{const{panZoom:k,minZoom:C}=v();k?.setScaleExtent([C,x]),g({maxZoom:x})},setTranslateExtent:x=>{v().panZoom?.setTranslateExtent(x),g({translateExtent:x})},resetSelectedElements:()=>{const{edges:x,nodes:k,triggerNodeChanges:C,triggerEdgeChanges:_,elementsSelectable:$}=v();if(!$)return;const R=k.reduce((A,z)=>z.selected?[...A,Qu(z.id,!1)]:A,[]),T=x.reduce((A,z)=>z.selected?[...A,Qu(z.id,!1)]:A,[]);C(R),_(T)},setNodeExtent:x=>{const{nodes:k,nodeLookup:C,parentLookup:_,nodeOrigin:$,elevateNodesOnSelect:R,nodeExtent:T,zIndexMode:A}=v();x[0][0]===T[0][0]&&x[0][1]===T[0][1]&&x[1][0]===T[1][0]&&x[1][1]===T[1][1]||(F7(k,C,_,{nodeOrigin:$,nodeExtent:x,elevateNodesOnSelect:R,checkEquality:!1,zIndexMode:A}),g({nodeExtent:x}))},panBy:x=>{const{transform:k,width:C,height:_,panZoom:$,translateExtent:R}=v();return d9e({delta:x,panZoom:$,transform:k,translateExtent:R,width:C,height:_})},setCenter:async(x,k,C)=>{const{width:_,height:$,maxZoom:R,panZoom:T}=v();if(!T)return Promise.resolve(!1);const A=typeof C?.zoom<"u"?C.zoom:R;return await T.setViewport({x:_/2-x*A,y:$/2-k*A,zoom:A},{duration:C?.duration,ease:C?.ease,interpolate:C?.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{g({connection:{...wF}})},updateConnection:x=>{g({connection:x})},reset:()=>g({...gq()})}},Object.is);function lw({initialNodes:e,initialEdges:r,defaultNodes:n,defaultEdges:o,initialWidth:i,initialHeight:a,initialMinZoom:l,initialMaxZoom:s,initialFitViewOptions:c,fitView:d,nodeOrigin:u,nodeExtent:p,zIndexMode:f,children:g}){const[v]=S.useState(()=>EEe({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,width:i,height:a,fitView:d,minZoom:l,maxZoom:s,fitViewOptions:c,nodeOrigin:u,nodeExtent:p,zIndexMode:f}));return y.jsx(H9e,{value:v,children:y.jsx(hSe,{children:g})})}function CEe({children:e,nodes:r,edges:n,defaultNodes:o,defaultEdges:i,width:a,height:l,fitView:s,fitViewOptions:c,minZoom:d,maxZoom:u,nodeOrigin:p,nodeExtent:f,zIndexMode:g}){return S.useContext(ew)?y.jsx(y.Fragment,{children:e}):y.jsx(lw,{initialNodes:r,initialEdges:n,defaultNodes:o,defaultEdges:i,initialWidth:a,initialHeight:l,fitView:s,initialFitViewOptions:c,initialMinZoom:d,initialMaxZoom:u,nodeOrigin:p,nodeExtent:f,zIndexMode:g,children:e})}const $Ee={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function REe({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,className:i,nodeTypes:a,edgeTypes:l,onNodeClick:s,onEdgeClick:c,onInit:d,onMove:u,onMoveStart:p,onMoveEnd:f,onConnect:g,onConnectStart:v,onConnectEnd:w,onClickConnectStart:x,onClickConnectEnd:k,onNodeMouseEnter:C,onNodeMouseMove:_,onNodeMouseLeave:$,onNodeContextMenu:R,onNodeDoubleClick:T,onNodeDragStart:A,onNodeDrag:z,onNodeDragStop:j,onNodesDelete:I,onEdgesDelete:P,onDelete:L,onSelectionChange:H,onSelectionDragStart:M,onSelectionDrag:V,onSelectionDragStop:B,onSelectionContextMenu:F,onSelectionStart:q,onSelectionEnd:G,onBeforeDelete:U,connectionMode:Y,connectionLineType:K=id.Bezier,connectionLineStyle:O,connectionLineComponent:W,connectionLineContainerStyle:Z,deleteKeyCode:Q="Backspace",selectionKeyCode:ie="Shift",selectionOnDrag:te=!1,selectionMode:re=q1.Full,panActivationKeyCode:ue="Space",multiSelectionKeyCode:_e=lf()?"Meta":"Control",zoomActivationKeyCode:ce=lf()?"Meta":"Control",snapToGrid:pe,snapGrid:xe,onlyRenderVisibleElements:je=!1,selectNodesOnDrag:Be,nodesDraggable:Je,autoPanOnNodeFocus:st,nodesConnectable:Le,nodesFocusable:St,nodeOrigin:Ve=EV,edgesFocusable:qe,edgesReconnectable:Xe,elementsSelectable:It=!0,defaultViewport:Et=nSe,minZoom:be=.5,maxZoom:ke=2,translateExtent:Ye=V1,preventScrolling:yt=!0,nodeExtent:xt,defaultMarkerColor:Tr="#b1b1b7",zoomOnScroll:er=!0,zoomOnPinch:qt=!0,panOnScroll:Ht=!1,panOnScrollSpeed:Kr=.5,panOnScrollMode:Gt=Yu.Free,zoomOnDoubleClick:ln=!0,panOnDrag:Wn=!0,onPaneClick:fn,onPaneMouseEnter:oo,onPaneMouseMove:Yo,onPaneMouseLeave:jo,onPaneScroll:ui,onPaneContextMenu:Dl,paneClickDistance:Ao=1,nodeClickDistance:xs=0,children:ws,onReconnect:zc,onReconnectStart:Ml,onReconnectEnd:lh,onEdgeContextMenu:ks,onEdgeDoubleClick:tu,onEdgeMouseEnter:Xo,onEdgeMouseMove:Tc,onEdgeMouseLeave:_s,reconnectRadius:ru=10,onNodesChange:Ss,onEdgesChange:Ko,noDragClassName:Nr="nodrag",noWheelClassName:Mn="nowheel",noPanClassName:Do="nopan",fitView:Nl,fitViewOptions:jc,connectOnClick:sh,attributionPosition:Li,proOptions:Ra,defaultEdgeOptions:Pl,elevateNodesOnSelect:za=!0,elevateEdgesOnSelect:Ta=!1,disableKeyboardA11y:pi=!1,autoPanOnConnect:ho,autoPanOnNodeDrag:Wr,autoPanSpeed:Ac,connectionRadius:Dc,isValidConnection:Fi,onError:ja,style:nu,id:Es,nodeDragThreshold:ou,connectionDragThreshold:ch,viewport:Cs,onViewportChange:$s,width:Mo,height:Gr,colorMode:iu="light",debug:dh,onScroll:Aa,ariaLabelConfig:au,zIndexMode:Da="basic",...lu},J){const ee=Es||"1",oe=lSe(iu),ae=S.useCallback(le=>{le.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),Aa?.(le)},[Aa]);return y.jsx("div",{"data-testid":"rf__wrapper",...lu,onScroll:ae,style:{...nu,...$Ee},ref:J,className:dn(["react-flow",i,oe]),id:Es,role:"application",children:y.jsxs(CEe,{nodes:e,edges:r,width:Mo,height:Gr,fitView:Nl,fitViewOptions:jc,minZoom:be,maxZoom:ke,nodeOrigin:Ve,nodeExtent:xt,zIndexMode:Da,children:[y.jsx(SEe,{onInit:d,onNodeClick:s,onEdgeClick:c,onNodeMouseEnter:C,onNodeMouseMove:_,onNodeMouseLeave:$,onNodeContextMenu:R,onNodeDoubleClick:T,nodeTypes:a,edgeTypes:l,connectionLineType:K,connectionLineStyle:O,connectionLineComponent:W,connectionLineContainerStyle:Z,selectionKeyCode:ie,selectionOnDrag:te,selectionMode:re,deleteKeyCode:Q,multiSelectionKeyCode:_e,panActivationKeyCode:ue,zoomActivationKeyCode:ce,onlyRenderVisibleElements:je,defaultViewport:Et,translateExtent:Ye,minZoom:be,maxZoom:ke,preventScrolling:yt,zoomOnScroll:er,zoomOnPinch:qt,zoomOnDoubleClick:ln,panOnScroll:Ht,panOnScrollSpeed:Kr,panOnScrollMode:Gt,panOnDrag:Wn,onPaneClick:fn,onPaneMouseEnter:oo,onPaneMouseMove:Yo,onPaneMouseLeave:jo,onPaneScroll:ui,onPaneContextMenu:Dl,paneClickDistance:Ao,nodeClickDistance:xs,onSelectionContextMenu:F,onSelectionStart:q,onSelectionEnd:G,onReconnect:zc,onReconnectStart:Ml,onReconnectEnd:lh,onEdgeContextMenu:ks,onEdgeDoubleClick:tu,onEdgeMouseEnter:Xo,onEdgeMouseMove:Tc,onEdgeMouseLeave:_s,reconnectRadius:ru,defaultMarkerColor:Tr,noDragClassName:Nr,noWheelClassName:Mn,noPanClassName:Do,rfId:ee,disableKeyboardA11y:pi,nodeExtent:xt,viewport:Cs,onViewportChange:$s}),y.jsx(aSe,{nodes:e,edges:r,defaultNodes:n,defaultEdges:o,onConnect:g,onConnectStart:v,onConnectEnd:w,onClickConnectStart:x,onClickConnectEnd:k,nodesDraggable:Je,autoPanOnNodeFocus:st,nodesConnectable:Le,nodesFocusable:St,edgesFocusable:qe,edgesReconnectable:Xe,elementsSelectable:It,elevateNodesOnSelect:za,elevateEdgesOnSelect:Ta,minZoom:be,maxZoom:ke,nodeExtent:xt,onNodesChange:Ss,onEdgesChange:Ko,snapToGrid:pe,snapGrid:xe,connectionMode:Y,translateExtent:Ye,connectOnClick:sh,defaultEdgeOptions:Pl,fitView:Nl,fitViewOptions:jc,onNodesDelete:I,onEdgesDelete:P,onDelete:L,onNodeDragStart:A,onNodeDrag:z,onNodeDragStop:j,onSelectionDrag:V,onSelectionDragStart:M,onSelectionDragStop:B,onMove:u,onMoveStart:p,onMoveEnd:f,noPanClassName:Do,nodeOrigin:Ve,rfId:ee,autoPanOnConnect:ho,autoPanOnNodeDrag:Wr,autoPanSpeed:Ac,onError:ja,connectionRadius:Dc,isValidConnection:Fi,selectNodesOnDrag:Be,nodeDragThreshold:ou,connectionDragThreshold:ch,onBeforeDelete:U,debug:dh,ariaLabelConfig:au,zIndexMode:Da}),y.jsx(rSe,{onSelectionChange:H}),ws,y.jsx(Z9e,{proOptions:Ra,position:Li}),y.jsx(K9e,{rfId:ee,disableKeyboardA11y:pi})]})})}var zEe=PV(REe);const TEe=e=>e.domNode?.querySelector(".react-flow__edgelabel-renderer");function yq({children:e}){const r=Dt(TEe);return r?Va.createPortal(e,r):null}function jEe({dimensions:e,lineWidth:r,variant:n,className:o}){return y.jsx("path",{strokeWidth:r,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:dn(["react-flow__background-pattern",n,o])})}function AEe({radius:e,className:r}){return y.jsx("circle",{cx:e,cy:e,r:e,className:dn(["react-flow__background-pattern","dots",r])})}var Qa;(function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"})(Qa||(Qa={}));const DEe={[Qa.Dots]:1,[Qa.Lines]:1,[Qa.Cross]:6},MEe=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function vq({id:e,variant:r=Qa.Dots,gap:n=20,size:o,lineWidth:i=1,offset:a=0,color:l,bgColor:s,style:c,className:d,patternClassName:u}){const p=S.useRef(null),{transform:f,patternId:g}=Dt(MEe,jr),v=o||DEe[r],w=r===Qa.Dots,x=r===Qa.Cross,k=Array.isArray(n)?n:[n,n],C=[k[0]*f[2]||1,k[1]*f[2]||1],_=v*f[2],$=Array.isArray(a)?a:[a,a],R=x?[_,_]:C,T=[$[0]*f[2]||1+R[0]/2,$[1]*f[2]||1+R[1]/2],A=`${g}${e||""}`;return y.jsxs("svg",{className:dn(["react-flow__background",d]),style:{...c,...ow,"--xy-background-color-props":s,"--xy-background-pattern-color-props":l},ref:p,"data-testid":"rf__background",children:[y.jsx("pattern",{id:A,x:f[0]%C[0],y:f[1]%C[1],width:C[0],height:C[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${T[0]},-${T[1]})`,children:w?y.jsx(AEe,{radius:_/2,className:u}):y.jsx(jEe,{dimensions:R,lineWidth:i,variant:r,className:u})}),y.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${A})`})]})}vq.displayName="Background";const bq=S.memo(vq);function NEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:y.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function PEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:y.jsx("path",{d:"M0 0h32v4.2H0z"})})}function BEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:y.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 IEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:y.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 OEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:y.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 sw({children:e,className:r,...n}){return y.jsx("button",{type:"button",className:dn(["react-flow__controls-button",r]),...n,children:e})}const LEe=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function xq({style:e,showZoom:r=!0,showFitView:n=!0,showInteractive:o=!0,fitViewOptions:i,onZoomIn:a,onZoomOut:l,onFitView:s,onInteractiveChange:c,className:d,children:u,position:p="bottom-left",orientation:f="vertical","aria-label":g}){const v=vr(),{isInteractive:w,minZoomReached:x,maxZoomReached:k,ariaLabelConfig:C}=Dt(LEe,jr),{zoomIn:_,zoomOut:$,fitView:R}=pf(),T=()=>{_(),a?.()},A=()=>{$(),l?.()},z=()=>{R(i),s?.()},j=()=>{v.setState({nodesDraggable:!w,nodesConnectable:!w,elementsSelectable:!w}),c?.(!w)};return y.jsxs(sd,{className:dn(["react-flow__controls",f==="horizontal"?"horizontal":"vertical",d]),position:p,style:e,"data-testid":"rf__controls","aria-label":g??C["controls.ariaLabel"],children:[r&&y.jsxs(y.Fragment,{children:[y.jsx(sw,{onClick:T,className:"react-flow__controls-zoomin",title:C["controls.zoomIn.ariaLabel"],"aria-label":C["controls.zoomIn.ariaLabel"],disabled:k,children:y.jsx(NEe,{})}),y.jsx(sw,{onClick:A,className:"react-flow__controls-zoomout",title:C["controls.zoomOut.ariaLabel"],"aria-label":C["controls.zoomOut.ariaLabel"],disabled:x,children:y.jsx(PEe,{})})]}),n&&y.jsx(sw,{className:"react-flow__controls-fitview",onClick:z,title:C["controls.fitView.ariaLabel"],"aria-label":C["controls.fitView.ariaLabel"],children:y.jsx(BEe,{})}),o&&y.jsx(sw,{className:"react-flow__controls-interactive",onClick:j,title:C["controls.interactive.ariaLabel"],"aria-label":C["controls.interactive.ariaLabel"],children:w?y.jsx(OEe,{}):y.jsx(IEe,{})}),u]})}xq.displayName="Controls",S.memo(xq);function FEe({id:e,x:r,y:n,width:o,height:i,style:a,color:l,strokeColor:s,strokeWidth:c,className:d,borderRadius:u,shapeRendering:p,selected:f,onClick:g}){const{background:v,backgroundColor:w}=a||{},x=l||v||w;return y.jsx("rect",{className:dn(["react-flow__minimap-node",{selected:f},d]),x:r,y:n,rx:u,ry:u,width:o,height:i,style:{fill:x,stroke:s,strokeWidth:c},shapeRendering:p,onClick:g?k=>g(k,e):void 0})}const VEe=S.memo(FEe),qEe=e=>e.nodes.map(r=>r.id),t9=e=>e instanceof Function?e:()=>e;function HEe({nodeStrokeColor:e,nodeColor:r,nodeClassName:n="",nodeBorderRadius:o=5,nodeStrokeWidth:i,nodeComponent:a=VEe,onClick:l}){const s=Dt(qEe,jr),c=t9(r),d=t9(e),u=t9(n),p=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return y.jsx(y.Fragment,{children:s.map(f=>y.jsx(WEe,{id:f,nodeColorFunc:c,nodeStrokeColorFunc:d,nodeClassNameFunc:u,nodeBorderRadius:o,nodeStrokeWidth:i,NodeComponent:a,onClick:l,shapeRendering:p},f))})}function UEe({id:e,nodeColorFunc:r,nodeStrokeColorFunc:n,nodeClassNameFunc:o,nodeBorderRadius:i,nodeStrokeWidth:a,shapeRendering:l,NodeComponent:s,onClick:c}){const{node:d,x:u,y:p,width:f,height:g}=Dt(v=>{const{internals:w}=v.nodeLookup.get(e),x=w.userNode,{x:k,y:C}=w.positionAbsolute,{width:_,height:$}=_o(x);return{node:x,x:k,y:C,width:_,height:$}},jr);return!d||d.hidden||!AF(d)?null:y.jsx(s,{x:u,y:p,width:f,height:g,style:d.style,selected:!!d.selected,className:o(d),color:r(d),borderRadius:i,strokeColor:n(d),strokeWidth:a,shapeRendering:l,onClick:c,id:d.id})}const WEe=S.memo(UEe);var GEe=S.memo(HEe);const YEe=200,XEe=150,KEe=e=>!e.hidden,ZEe=e=>{const r={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:r,boundingRect:e.nodeLookup.size>0?TF(nf(e.nodeLookup,{filter:KEe}),r):r,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},QEe="react-flow__minimap-desc";function wq({style:e,className:r,nodeStrokeColor:n,nodeColor:o,nodeClassName:i="",nodeBorderRadius:a=5,nodeStrokeWidth:l,nodeComponent:s,bgColor:c,maskColor:d,maskStrokeColor:u,maskStrokeWidth:p,position:f="bottom-right",onClick:g,onNodeClick:v,pannable:w=!1,zoomable:x=!1,ariaLabel:k,inversePan:C,zoomStep:_=1,offsetScale:$=5}){const R=vr(),T=S.useRef(null),{boundingRect:A,viewBB:z,rfId:j,panZoom:I,translateExtent:P,flowWidth:L,flowHeight:H,ariaLabelConfig:M}=Dt(ZEe,jr),V=e?.width??YEe,B=e?.height??XEe,F=A.width/V,q=A.height/B,G=Math.max(F,q),U=G*V,Y=G*B,K=$*G,O=A.x-(U-A.width)/2-K,W=A.y-(Y-A.height)/2-K,Z=U+K*2,Q=Y+K*2,ie=`${QEe}-${j}`,te=S.useRef(0),re=S.useRef();te.current=G,S.useEffect(()=>{if(T.current&&I)return re.current=b9e({domNode:T.current,panZoom:I,getTransform:()=>R.getState().transform,getViewScale:()=>te.current}),()=>{re.current?.destroy()}},[I]),S.useEffect(()=>{re.current?.update({translateExtent:P,width:L,height:H,inversePan:C,pannable:w,zoomStep:_,zoomable:x})},[w,x,C,_,P,L,H]);const ue=g?pe=>{const[xe,je]=re.current?.pointer(pe)||[0,0];g(pe,{x:xe,y:je})}:void 0,_e=v?S.useCallback((pe,xe)=>{const je=R.getState().nodeLookup.get(xe).internals.userNode;v(pe,je)},[]):void 0,ce=k??M["minimap.ariaLabel"];return y.jsx(sd,{position:f,style:{...e,"--xy-minimap-background-color-props":typeof c=="string"?c:void 0,"--xy-minimap-mask-background-color-props":typeof d=="string"?d:void 0,"--xy-minimap-mask-stroke-color-props":typeof u=="string"?u:void 0,"--xy-minimap-mask-stroke-width-props":typeof p=="number"?p*G:void 0,"--xy-minimap-node-background-color-props":typeof o=="string"?o:void 0,"--xy-minimap-node-stroke-color-props":typeof n=="string"?n:void 0,"--xy-minimap-node-stroke-width-props":typeof l=="number"?l:void 0},className:dn(["react-flow__minimap",r]),"data-testid":"rf__minimap",children:y.jsxs("svg",{width:V,height:B,viewBox:`${O} ${W} ${Z} ${Q}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":ie,ref:T,onClick:ue,children:[ce&&y.jsx("title",{id:ie,children:ce}),y.jsx(GEe,{onClick:_e,nodeColor:o,nodeStrokeColor:n,nodeBorderRadius:a,nodeClassName:i,nodeStrokeWidth:l,nodeComponent:s}),y.jsx("path",{className:"react-flow__minimap-mask",d:`M${O-K},${W-K}h${Z+K*2}v${Q+K*2}h${-Z-K*2}z - M${z.x},${z.y}h${z.width}v${z.height}h${-z.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}wq.displayName="MiniMap",S.memo(wq);const JEe=e=>r=>e?`${Math.max(1/r.transform[2],1)}`:void 0,eCe={[df.Line]:"right",[df.Handle]:"bottom-right"};function tCe({nodeId:e,position:r,variant:n=df.Handle,className:o,style:i=void 0,children:a,color:l,minWidth:s=10,minHeight:c=10,maxWidth:d=Number.MAX_VALUE,maxHeight:u=Number.MAX_VALUE,keepAspectRatio:p=!1,resizeDirection:f,autoScale:g=!0,shouldResize:v,onResizeStart:w,onResize:x,onResizeEnd:k}){const C=e9(),_=typeof e=="string"?e:C,$=vr(),R=S.useRef(null),T=n===df.Handle,A=Dt(S.useCallback(JEe(T&&g),[T,g]),jr),z=S.useRef(null),j=r??eCe[n];S.useEffect(()=>{if(!(!R.current||!_))return z.current||(z.current=D9e({domNode:R.current,nodeId:_,getStoreItems:()=>{const{nodeLookup:P,transform:L,snapGrid:H,snapToGrid:M,nodeOrigin:V,domNode:B}=$.getState();return{nodeLookup:P,transform:L,snapGrid:H,snapToGrid:M,nodeOrigin:V,paneDomNode:B}},onChange:(P,L)=>{const{triggerNodeChanges:H,nodeLookup:M,parentLookup:V,nodeOrigin:B}=$.getState(),F=[],q={x:P.x,y:P.y},G=M.get(_);if(G&&G.expandParent&&G.parentId){const U=G.origin??B,Y=P.width??G.measured.width??0,K=P.height??G.measured.height??0,O={id:G.id,parentId:G.parentId,rect:{width:Y,height:K,...DF({x:P.x??G.position.x,y:P.y??G.position.y},{width:Y,height:K},G.parentId,M,U)}},W=q7([O],M,V,B);F.push(...W),q.x=P.x?Math.max(U[0]*Y,P.x):void 0,q.y=P.y?Math.max(U[1]*K,P.y):void 0}if(q.x!==void 0&&q.y!==void 0){const U={id:_,type:"position",position:{...q}};F.push(U)}if(P.width!==void 0&&P.height!==void 0){const U={id:_,type:"dimensions",resizing:!0,setAttributes:f?f==="horizontal"?"width":"height":!0,dimensions:{width:P.width,height:P.height}};F.push(U)}for(const U of L){const Y={...U,type:"position"};F.push(Y)}H(F)},onEnd:({width:P,height:L})=>{const H={id:_,type:"dimensions",resizing:!1,dimensions:{width:P,height:L}};$.getState().triggerNodeChanges([H])}})),z.current.update({controlPosition:j,boundaries:{minWidth:s,minHeight:c,maxWidth:d,maxHeight:u},keepAspectRatio:p,resizeDirection:f,onResizeStart:w,onResize:x,onResizeEnd:k,shouldResize:v}),()=>{z.current?.destroy()}},[j,s,c,d,u,p,w,x,k,v]);const I=j.split("-");return y.jsx("div",{className:dn(["react-flow__resize-control","nodrag",...I,n,o]),ref:R,style:{...i,scale:A,...l&&{[T?"backgroundColor":"borderColor"]:l}},children:a})}S.memo(tCe);const rCe=e=>e.domNode?.querySelector(".react-flow__renderer");function nCe({children:e}){const r=Dt(rCe);return r?Va.createPortal(e,r):null}const oCe=(e,r)=>e?.internals.positionAbsolute.x!==r?.internals.positionAbsolute.x||e?.internals.positionAbsolute.y!==r?.internals.positionAbsolute.y||e?.measured.width!==r?.measured.width||e?.measured.height!==r?.measured.height||e?.selected!==r?.selected||e?.internals.z!==r?.internals.z,iCe=(e,r)=>{if(e.size!==r.size)return!1;for(const[n,o]of e)if(oCe(o,r.get(n)))return!1;return!0},aCe=e=>({x:e.transform[0],y:e.transform[1],zoom:e.transform[2],selectedNodesCount:e.nodes.filter(r=>r.selected).length});function r9({nodeId:e,children:r,className:n,style:o,isVisible:i,position:a=Ue.Top,offset:l=10,align:s="center",...c}){const d=e9(),u=S.useCallback($=>(Array.isArray(e)?e:[e||d||""]).reduce((R,T)=>{const A=$.nodeLookup.get(T);return A&&R.set(A.id,A),R},new Map),[e,d]),p=Dt(u,iCe),{x:f,y:g,zoom:v,selectedNodesCount:w}=Dt(aCe,jr);if(!(typeof i=="boolean"?i:p.size===1&&p.values().next().value?.selected&&w===1)||!p.size)return null;const x=nf(p),k=Array.from(p.values()),C=Math.max(...k.map($=>$.internals.z+1)),_={position:"absolute",transform:r9e(x,{x:f,y:g,zoom:v},a,l,s),zIndex:C,...o};return y.jsx(nCe,{children:y.jsx("div",{style:_,className:dn(["react-flow__node-toolbar",n]),...c,"data-id":k.reduce(($,R)=>`${$}${R.id} `,"").trim(),children:r})})}const{getOwnPropertyNames:lCe,getOwnPropertySymbols:sCe}=Object,{hasOwnProperty:cCe}=Object.prototype;function n9(e,r){return function(n,o,i){return e(n,o,i)&&r(n,o,i)}}function cw(e){return function(r,n,o){if(!r||!n||typeof r!="object"||typeof n!="object")return e(r,n,o);const{cache:i}=o,a=i.get(r),l=i.get(n);if(a&&l)return a===n&&l===r;i.set(r,n),i.set(n,r);const s=e(r,n,o);return i.delete(r),i.delete(n),s}}function dCe(e){return e?.[Symbol.toStringTag]}function kq(e){return lCe(e).concat(sCe(e))}const uCe=Object.hasOwn||((e,r)=>cCe.call(e,r));function Ju(e,r){return e===r||!e&&!r&&e!==e&&r!==r}const pCe="__v",hCe="__o",fCe="_owner",{getOwnPropertyDescriptor:_q,keys:Sq}=Object;function mCe(e,r){return e.byteLength===r.byteLength&&dw(new Uint8Array(e),new Uint8Array(r))}function gCe(e,r,n){let o=e.length;if(r.length!==o)return!1;for(;o-- >0;)if(!n.equals(e[o],r[o],o,o,e,r,n))return!1;return!0}function yCe(e,r){return e.byteLength===r.byteLength&&dw(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(r.buffer,r.byteOffset,r.byteLength))}function vCe(e,r){return Ju(e.getTime(),r.getTime())}function bCe(e,r){return e.name===r.name&&e.message===r.message&&e.cause===r.cause&&e.stack===r.stack}function xCe(e,r){return e===r}function Eq(e,r,n){const o=e.size;if(o!==r.size)return!1;if(!o)return!0;const i=new Array(o),a=e.entries();let l,s,c=0;for(;(l=a.next())&&!l.done;){const d=r.entries();let u=!1,p=0;for(;(s=d.next())&&!s.done;){if(i[p]){p++;continue}const f=l.value,g=s.value;if(n.equals(f[0],g[0],c,p,e,r,n)&&n.equals(f[1],g[1],f[0],g[0],e,r,n)){u=i[p]=!0;break}p++}if(!u)return!1;c++}return!0}const wCe=Ju;function kCe(e,r,n){const o=Sq(e);let i=o.length;if(Sq(r).length!==i)return!1;for(;i-- >0;)if(!$q(e,r,n,o[i]))return!1;return!0}function K1(e,r,n){const o=kq(e);let i=o.length;if(kq(r).length!==i)return!1;let a,l,s;for(;i-- >0;)if(a=o[i],!$q(e,r,n,a)||(l=_q(e,a),s=_q(r,a),(l||s)&&(!l||!s||l.configurable!==s.configurable||l.enumerable!==s.enumerable||l.writable!==s.writable)))return!1;return!0}function _Ce(e,r){return Ju(e.valueOf(),r.valueOf())}function SCe(e,r){return e.source===r.source&&e.flags===r.flags}function Cq(e,r,n){const o=e.size;if(o!==r.size)return!1;if(!o)return!0;const i=new Array(o),a=e.values();let l,s;for(;(l=a.next())&&!l.done;){const c=r.values();let d=!1,u=0;for(;(s=c.next())&&!s.done;){if(!i[u]&&n.equals(l.value,s.value,l.value,s.value,e,r,n)){d=i[u]=!0;break}u++}if(!d)return!1}return!0}function dw(e,r){let n=e.byteLength;if(r.byteLength!==n||e.byteOffset!==r.byteOffset)return!1;for(;n-- >0;)if(e[n]!==r[n])return!1;return!0}function ECe(e,r){return e.hostname===r.hostname&&e.pathname===r.pathname&&e.protocol===r.protocol&&e.port===r.port&&e.hash===r.hash&&e.username===r.username&&e.password===r.password}function $q(e,r,n,o){return(o===fCe||o===hCe||o===pCe)&&(e.$$typeof||r.$$typeof)?!0:uCe(r,o)&&n.equals(e[o],r[o],o,o,e,r,n)}const CCe="[object ArrayBuffer]",$Ce="[object Arguments]",RCe="[object Boolean]",zCe="[object DataView]",TCe="[object Date]",jCe="[object Error]",ACe="[object Map]",DCe="[object Number]",MCe="[object Object]",NCe="[object RegExp]",PCe="[object Set]",BCe="[object String]",ICe={"[object Int8Array]":!0,"[object Uint8Array]":!0,"[object Uint8ClampedArray]":!0,"[object Int16Array]":!0,"[object Uint16Array]":!0,"[object Int32Array]":!0,"[object Uint32Array]":!0,"[object Float16Array]":!0,"[object Float32Array]":!0,"[object Float64Array]":!0,"[object BigInt64Array]":!0,"[object BigUint64Array]":!0},OCe="[object URL]",LCe=Object.prototype.toString;function FCe({areArrayBuffersEqual:e,areArraysEqual:r,areDataViewsEqual:n,areDatesEqual:o,areErrorsEqual:i,areFunctionsEqual:a,areMapsEqual:l,areNumbersEqual:s,areObjectsEqual:c,arePrimitiveWrappersEqual:d,areRegExpsEqual:u,areSetsEqual:p,areTypedArraysEqual:f,areUrlsEqual:g,unknownTagComparators:v}){return function(w,x,k){if(w===x)return!0;if(w==null||x==null)return!1;const C=typeof w;if(C!==typeof x)return!1;if(C!=="object")return C==="number"?s(w,x,k):C==="function"?a(w,x,k):!1;const _=w.constructor;if(_!==x.constructor)return!1;if(_===Object)return c(w,x,k);if(Array.isArray(w))return r(w,x,k);if(_===Date)return o(w,x,k);if(_===RegExp)return u(w,x,k);if(_===Map)return l(w,x,k);if(_===Set)return p(w,x,k);const $=LCe.call(w);if($===TCe)return o(w,x,k);if($===NCe)return u(w,x,k);if($===ACe)return l(w,x,k);if($===PCe)return p(w,x,k);if($===MCe)return typeof w.then!="function"&&typeof x.then!="function"&&c(w,x,k);if($===OCe)return g(w,x,k);if($===jCe)return i(w,x,k);if($===$Ce)return c(w,x,k);if(ICe[$])return f(w,x,k);if($===CCe)return e(w,x,k);if($===zCe)return n(w,x,k);if($===RCe||$===DCe||$===BCe)return d(w,x,k);if(v){let R=v[$];if(!R){const T=dCe(w);T&&(R=v[T])}if(R)return R(w,x,k)}return!1}}function VCe({circular:e,createCustomConfig:r,strict:n}){let o={areArrayBuffersEqual:mCe,areArraysEqual:n?K1:gCe,areDataViewsEqual:yCe,areDatesEqual:vCe,areErrorsEqual:bCe,areFunctionsEqual:xCe,areMapsEqual:n?n9(Eq,K1):Eq,areNumbersEqual:wCe,areObjectsEqual:n?K1:kCe,arePrimitiveWrappersEqual:_Ce,areRegExpsEqual:SCe,areSetsEqual:n?n9(Cq,K1):Cq,areTypedArraysEqual:n?n9(dw,K1):dw,areUrlsEqual:ECe,unknownTagComparators:void 0};if(r&&(o=Object.assign({},o,r(o))),e){const i=cw(o.areArraysEqual),a=cw(o.areMapsEqual),l=cw(o.areObjectsEqual),s=cw(o.areSetsEqual);o=Object.assign({},o,{areArraysEqual:i,areMapsEqual:a,areObjectsEqual:l,areSetsEqual:s})}return o}function qCe(e){return function(r,n,o,i,a,l,s){return e(r,n,s)}}function HCe({circular:e,comparator:r,createState:n,equals:o,strict:i}){if(n)return function(l,s){const{cache:c=e?new WeakMap:void 0,meta:d}=n();return r(l,s,{cache:c,equals:o,meta:d,strict:i})};if(e)return function(l,s){return r(l,s,{cache:new WeakMap,equals:o,meta:void 0,strict:i})};const a={cache:void 0,equals:o,meta:void 0,strict:i};return function(l,s){return r(l,s,a)}}const tt=cd();cd({strict:!0}),cd({circular:!0}),cd({circular:!0,strict:!0});const Ir=cd({createInternalComparator:()=>Ju});cd({strict:!0,createInternalComparator:()=>Ju}),cd({circular:!0,createInternalComparator:()=>Ju}),cd({circular:!0,createInternalComparator:()=>Ju,strict:!0});function cd(e={}){const{circular:r=!1,createInternalComparator:n,createState:o,strict:i=!1}=e,a=VCe(e),l=FCe(a),s=n?n(l):qCe(l);return HCe({circular:r,comparator:l,createState:o,equals:s,strict:i})}function UCe(e,r,n){let o=i=>e(i,...r);return n===void 0?o:Object.assign(o,{lazy:n,lazyArgs:r})}function nr(e,r,n){let o=e.length-r.length;if(o===0)return e(...r);if(o===1)return UCe(e,r,n);throw Error("Wrong number of arguments")}const WCe=e=>(r,n)=>{if(n===0)return e(r);if(!Number.isInteger(n))throw TypeError(`precision must be an integer: ${n.toString()}`);if(n>15||n<-15)throw RangeError("precision must be between -15 and 15");if(Number.isNaN(r)||!Number.isFinite(r))return e(r);let o=Rq(r,n),i=e(o);return Rq(i,-n)};function Rq(e,r){let[n,o]=e.toString().split("e"),i=(o===void 0?0:Number.parseInt(o,10))+r,a=`${n}e${i.toString()}`;return Number.parseFloat(a)}function GCe(...e){return nr(WCe(Math.ceil),e)}function ta(...e){return nr(YCe,e)}const YCe=(e,{min:r,max:n})=>r!==void 0&&en?n:e;function XCe(...e){return nr(KCe,e)}const KCe=(e,r)=>[...e,...r],Z1={done:!1,hasNext:!1},ZCe=e=>({hasNext:!0,next:e,done:!1});function Jr(e,...r){let n=e,o=r.map(a=>"lazy"in a?QCe(a):void 0),i=0;for(;iJr(i,o),o)}throw Error("Wrong number of arguments")}function e$e(...e){return Tq(t$e,e)}function t$e(e){if(e.length===0)return ZCe;let r=new Map;for(let n of e)r.set(n,(r.get(n)??0)+1);return n=>{let o=r.get(n);return o===void 0||o===0?{done:!1,hasNext:!0,next:n}:(r.set(n,o-1),Z1)}}function xn(...e){return nr(r$e,e)}const r$e=(e,r)=>e.length>=r,jq={asc:(e,r)=>e>r,desc:(e,r)=>ee(a,i)}function o9(e,r,...n){let o=typeof e=="function"?e:e[0],i=typeof e=="function"?"asc":e[1],{[i]:a}=jq,l=r===void 0?void 0:o9(r,...n);return(s,c)=>{let d=o(s),u=o(c);return a(d,u)?1:a(u,d)?-1:l?.(s,c)??0}}function o$e(e){if(Aq(e))return!0;if(typeof e!="object"||!Array.isArray(e))return!1;let[r,n,...o]=e;return Aq(r)&&typeof n=="string"&&n in jq&&o.length===0}const Aq=e=>typeof e=="function"&&e.length===1;function uw(...e){return nr(Object.entries,e)}function ep(...e){return nr(i$e,e,a$e)}const i$e=(e,r)=>e.filter(r),a$e=e=>(r,n,o)=>e(r,n,o)?{done:!1,hasNext:!0,next:r}:Z1,Dq=e=>Object.assign(e,{single:!0});function Q1(...e){return nr(l$e,e,Dq(s$e))}const l$e=(e,r)=>e.find(r),s$e=e=>(r,n,o)=>e(r,n,o)?{done:!0,hasNext:!0,next:r}:Z1;function hf(...e){return nr(c$e,e,Dq(d$e))}const c$e=([e])=>e,d$e=()=>u$e,u$e=e=>({hasNext:!0,next:e,done:!0});function Mq(...e){return nr(p$e,e,h$e)}const p$e=(e,r)=>e.flatMap(r),h$e=e=>(r,n,o)=>{let i=e(r,n,o);return Array.isArray(i)?{done:!1,hasNext:!0,hasMany:!0,next:i}:{done:!1,hasNext:!0,next:i}};function f$e(...e){return nr(m$e,e)}function m$e(e,r){for(let[n,o]of Object.entries(e))r(o,n,e);return e}function g$e(...e){return nr(y$e,e)}const y$e=(e,r)=>{let n=Object.create(null);for(let o=0;otypeof e=="function";function _$e(e){return e!==null}function Bq(e){return e!=null}function S$e(e){return r=>!e(r)}function ty(e){return e==null}function Iq(e){return typeof e=="number"&&!Number.isNaN(e)}function a9(e){if(typeof e!="object"||!e)return!1;let r=Object.getPrototypeOf(e);return r===null||r===Object.prototype}function Oq(...e){return nr(E$e,e)}function E$e(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||!e||typeof r!="object"||!r)return!1;if(e instanceof Map&&r instanceof Map)return C$e(e,r);if(e instanceof Set&&r instanceof Set)return $$e(e,r);let n=Object.keys(e);if(n.length!==Object.keys(r).length)return!1;for(let o of n){if(!Object.hasOwn(r,o))return!1;let{[o]:i}=e,{[o]:a}=r;if(i!==a||!Object.is(i,a))return!1}return!0}function C$e(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e){let i=r.get(n);if(o!==i||!Object.is(o,i))return!1}return!0}function $$e(e,r){if(e.size!==r.size)return!1;for(let n of e)if(!r.has(n))return!1;return!0}function pw(e){return typeof e=="string"}function Zn(e){return!!e}function Lq(...e){return nr(R$e,e)}const R$e=(e,r)=>e.join(r);function l9(...e){return nr(Object.keys,e)}function dd(...e){return nr(z$e,e)}const z$e=e=>e.at(-1);function un(...e){return nr(T$e,e,j$e)}const T$e=(e,r)=>e.map(r),j$e=e=>(r,n,o)=>({done:!1,hasNext:!0,next:e(r,n,o)});function hw(...e){return nr(A$e,e)}function A$e(e,r){let n={};for(let[o,i]of e.entries()){let[a,l]=r(i,o,e);n[a]=l}return n}function D$e(...e){return nr(M$e,e)}function M$e(e,r){let n={};for(let[o,i]of Object.entries(e))n[o]=r(i,o,e);return n}function Fq(...e){return nr(Vq,e)}function Vq(e,r){let n={...e,...r};for(let o in r){if(!(o in e))continue;let{[o]:i}=e;if(!a9(i))continue;let{[o]:a}=r;a9(a)&&(n[o]=Vq(i,a))}return n}function ud(...e){return nr(N$e,e)}function N$e(e,r){if(!xn(r,1))return{...e};if(!xn(r,2)){let{[r[0]]:o,...i}=e;return i}let n={...e};for(let o of r)delete n[o];return n}function P$e(...e){return nr(B$e,e)}function B$e(e,r){let n={...e};for(let[o,i]of Object.entries(n))r(i,o,e)&&delete n[o];return n}function fw(...e){return nr(I$e,e)}const I$e=e=>e.length===1?e[0]:void 0;function qq(...e){return nr(O$e,e)}const O$e=(e,r)=>{let n=[[],[]];for(let[o,i]of e.entries())r(i,o,e)?n[0].push(i):n[1].push(i);return n};function Hq(...e){return nr(L$e,e)}function L$e(e,r){let n={};for(let o of r)o in e&&(n[o]=e[o]);return n}function ry(...e){return nr(F$e,e)}function F$e(e,r){let n={};for(let[o,i]of Object.entries(e))r(i,o,e)&&(n[o]=i);return n}function rp(e,...r){return typeof e=="string"||typeof e=="number"||typeof e=="symbol"?n=>Uq(n,e,...r):Uq(e,...r)}function Uq(e,...r){let n=e;for(let o of r){if(n==null)return;n=n[o]}return n}function V$e(...e){return nr(q$e,e)}function q$e(e,r){let n=[];for(let o=e;oe.reduce(r,n);function U$e(...e){return nr(W$e,e)}function W$e(e){return[...e].reverse()}function G$e(...e){return nr(Y$e,e)}function Y$e(e,r){let n=[...e];return n.sort(r),n}function gw(...e){return n$e(X$e,e)}const X$e=(e,r)=>[...e].sort(r);function Wq(...e){return nr(K$e,e)}function K$e(e,r){return r(e),e}function yw(...e){return Tq(Z$e,e)}function Z$e(){let e=new Set;return r=>e.has(r)?Z1:(e.add(r),{done:!1,hasNext:!0,next:r})}let Ja=[],pd=0;const vw=4,Q$e=e=>{let r=[],n={get(){return n.lc||n.listen(()=>{})(),n.value},lc:0,listen(o){return n.lc=r.push(o),()=>{for(let a=pd+vw;a"u")return mRe;var r=gRe(e),n=document.documentElement.clientWidth,o=window.innerWidth;return{left:r[0],top:r[1],right:r[2],gap:Math.max(0,o-n+r[2]-r[0])}},vRe=Zq(),ff="data-scroll-locked",bRe=function(e,r,n,o){var i=e.left,a=e.top,l=e.right,s=e.gap;return n===void 0&&(n="margin"),` +`)),d=c.reduce((u,p)=>u.concat(...p),[]);return[c,d]}return[[],[]]},[e]);return S.useEffect(()=>{const c=r?.target??zV,d=r?.actInsideInputWithModifier??!0;if(e!==null){const u=m=>{if(i.current=m.ctrlKey||m.metaKey||m.shiftKey||m.altKey,(!i.current||i.current&&!d)&&NF(m))return!1;const v=jV(m.code,s);if(a.current.add(m[v]),TV(l,a.current,!1)){const w=m.composedPath?.()?.[0]||m.target,x=w?.nodeName==="BUTTON"||w?.nodeName==="A";r.preventDefault!==!1&&(i.current||!x)&&m.preventDefault(),o(!0)}},p=m=>{const v=jV(m.code,s);TV(l,a.current,!0)?(o(!1),a.current.clear()):a.current.delete(m[v]),m.key==="Meta"&&a.current.clear(),i.current=!1},f=()=>{a.current.clear(),o(!1)};return c?.addEventListener("keydown",u),c?.addEventListener("keyup",p),window.addEventListener("blur",f),window.addEventListener("contextmenu",f),()=>{c?.removeEventListener("keydown",u),c?.removeEventListener("keyup",p),window.removeEventListener("blur",f),window.removeEventListener("contextmenu",f)}}},[e,o]),n}function TV(e,r,n){return e.filter(o=>n||o.length===r.size).some(o=>o.every(i=>r.has(i)))}function jV(e,r){return r.includes(e)?"code":"key"}const sSe=()=>{const e=vr();return S.useMemo(()=>({zoomIn:r=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1.2,{duration:r?.duration}):Promise.resolve(!1)},zoomOut:r=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,{duration:r?.duration}):Promise.resolve(!1)},zoomTo:(r,n)=>{const{panZoom:o}=e.getState();return o?o.scaleTo(r,{duration:n?.duration}):Promise.resolve(!1)},getZoom:()=>e.getState().transform[2],setViewport:async(r,n)=>{const{transform:[o,i,a],panZoom:l}=e.getState();return l?(await l.setViewport({x:r.x??o,y:r.y??i,zoom:r.zoom??a},n),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[r,n,o]=e.getState().transform;return{x:r,y:n,zoom:o}},setCenter:async(r,n,o)=>e.getState().setCenter(r,n,o),fitBounds:async(r,n)=>{const{width:o,height:i,minZoom:a,maxZoom:l,panZoom:s}=e.getState(),c=Ws(r,o,i,a,l,n?.padding??.1);return s?(await s.setViewport(c,{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(r,n={})=>{const{transform:o,snapGrid:i,snapToGrid:a,domNode:l}=e.getState();if(!l)return r;const{x:s,y:c}=l.getBoundingClientRect(),d={x:r.x-s,y:r.y-c},u=n.snapGrid??i,p=n.snapToGrid??a;return G1(d,o,p,u)},flowToScreenPosition:r=>{const{transform:n,domNode:o}=e.getState();if(!o)return r;const{x:i,y:a}=o.getBoundingClientRect(),l=Yx(r,n);return{x:l.x+i,y:l.y+a}}}),[])};function AV(e,r){const n=[],o=new Map,i=[];for(const a of e)if(a.type==="add"){i.push(a);continue}else if(a.type==="remove"||a.type==="replace")o.set(a.id,[a]);else{const l=o.get(a.id);l?l.push(a):o.set(a.id,[a])}for(const a of r){const l=o.get(a.id);if(!l){n.push(a);continue}if(l[0].type==="remove")continue;if(l[0].type==="replace"){n.push({...l[0].item});continue}const s={...a};for(const c of l)cSe(c,s);n.push(s)}return i.length&&i.forEach(a=>{a.index!==void 0?n.splice(a.index,0,{...a.item}):n.push({...a.item})}),n}function cSe(e,r){switch(e.type){case"select":{r.selected=e.selected;break}case"position":{typeof e.position<"u"&&(r.position=e.position),typeof e.dragging<"u"&&(r.dragging=e.dragging);break}case"dimensions":{typeof e.dimensions<"u"&&(r.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes==="width")&&(r.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes==="height")&&(r.height=e.dimensions.height))),typeof e.resizing=="boolean"&&(r.resizing=e.resizing);break}}}function rw(e,r){return AV(e,r)}function nw(e,r){return AV(e,r)}function Qu(e,r){return{id:e,type:"select",selected:r}}function uf(e,r=new Set,n=!1){const o=[];for(const[i,a]of e){const l=r.has(i);!(a.selected===void 0&&!l)&&a.selected!==l&&(n&&(a.selected=l),o.push(Qu(a.id,l)))}return o}function DV({items:e=[],lookup:r}){const n=[],o=new Map(e.map(i=>[i.id,i]));for(const[i,a]of e.entries()){const l=r.get(a.id),s=l?.internals?.userNode??l;s!==void 0&&s!==a&&n.push({id:a.id,item:a,type:"replace"}),s===void 0&&n.push({item:a,type:"add",index:i})}for(const[i]of r)o.get(i)===void 0&&n.push({id:i,type:"remove"});return n}function PV(e){return{id:e.id,type:"remove"}}const MV=e=>N7e(e),dSe=e=>SF(e);function NV(e){return S.forwardRef(e)}const uSe=typeof window<"u"?S.useLayoutEffect:S.useEffect;function BV(e){const[r,n]=S.useState(BigInt(0)),[o]=S.useState(()=>pSe(()=>n(i=>i+BigInt(1))));return uSe(()=>{const i=o.get();i.length&&(e(i),o.reset())},[r]),o}function pSe(e){let r=[];return{get:()=>r,reset:()=>{r=[]},push:n=>{r.push(n),e()}}}const IV=S.createContext(null);function hSe({children:e}){const r=vr(),n=S.useCallback(s=>{const{nodes:c=[],setNodes:d,hasDefaultNodes:u,onNodesChange:p,nodeLookup:f,fitViewQueued:m,onNodesChangeMiddlewareMap:v}=r.getState();let w=c;for(const k of s)w=typeof k=="function"?k(w):k;let x=DV({items:w,lookup:f});for(const k of v.values())x=k(x);u&&d(w),x.length>0?p?.(x):m&&window.requestAnimationFrame(()=>{const{fitViewQueued:k,nodes:C,setNodes:_}=r.getState();k&&_(C)})},[]),o=BV(n),i=S.useCallback(s=>{const{edges:c=[],setEdges:d,hasDefaultEdges:u,onEdgesChange:p,edgeLookup:f}=r.getState();let m=c;for(const v of s)m=typeof v=="function"?v(m):v;u?d(m):p&&p(DV({items:m,lookup:f}))},[]),a=BV(i),l=S.useMemo(()=>({nodeQueue:o,edgeQueue:a}),[]);return y.jsx(IV.Provider,{value:l,children:e})}function fSe(){const e=S.useContext(IV);if(!e)throw new Error("useBatchContext must be used within a BatchProvider");return e}const gSe=e=>!!e.panZoom;function pf(){const e=sSe(),r=vr(),n=fSe(),o=Dt(gSe),i=S.useMemo(()=>{const a=p=>r.getState().nodeLookup.get(p),l=p=>{n.nodeQueue.push(p)},s=p=>{n.edgeQueue.push(p)},c=p=>{const{nodeLookup:f,nodeOrigin:m}=r.getState(),v=MV(p)?p:f.get(p.id),w=v.parentId?DF(v.position,v.measured,v.parentId,f,m):v.position,x={...v,position:w,width:v.measured?.width??v.width,height:v.measured?.height??v.height};return Ku(x)},d=(p,f,m={replace:!1})=>{l(v=>v.map(w=>{if(w.id===p){const x=typeof f=="function"?f(w):f;return m.replace&&MV(x)?x:{...w,...x}}return w}))},u=(p,f,m={replace:!1})=>{s(v=>v.map(w=>{if(w.id===p){const x=typeof f=="function"?f(w):f;return m.replace&&dSe(x)?x:{...w,...x}}return w}))};return{getNodes:()=>r.getState().nodes.map(p=>({...p})),getNode:p=>a(p)?.internals.userNode,getInternalNode:a,getEdges:()=>{const{edges:p=[]}=r.getState();return p.map(f=>({...f}))},getEdge:p=>r.getState().edgeLookup.get(p),setNodes:l,setEdges:s,addNodes:p=>{const f=Array.isArray(p)?p:[p];n.nodeQueue.push(m=>[...m,...f])},addEdges:p=>{const f=Array.isArray(p)?p:[p];n.edgeQueue.push(m=>[...m,...f])},toObject:()=>{const{nodes:p=[],edges:f=[],transform:m}=r.getState(),[v,w,x]=m;return{nodes:p.map(k=>({...k})),edges:f.map(k=>({...k})),viewport:{x:v,y:w,zoom:x}}},deleteElements:async({nodes:p=[],edges:f=[]})=>{const{nodes:m,edges:v,onNodesDelete:w,onEdgesDelete:x,triggerNodeChanges:k,triggerEdgeChanges:C,onDelete:_,onBeforeDelete:$}=r.getState(),{nodes:R,edges:T}=await L7e({nodesToRemove:p,edgesToRemove:f,nodes:m,edges:v,onBeforeDelete:$}),A=T.length>0,z=R.length>0;if(A){const j=T.map(PV);x?.(T),C(j)}if(z){const j=R.map(PV);w?.(R),k(j)}return(z||A)&&_?.({nodes:R,edges:T}),{deletedNodes:R,deletedEdges:T}},getIntersectingNodes:(p,f=!0,m)=>{const v=jF(p),w=v?p:c(p),x=m!==void 0;return w?(m||r.getState().nodes).filter(k=>{const C=r.getState().nodeLookup.get(k.id);if(C&&!v&&(k.id===p.id||!C.internals.positionAbsolute))return!1;const _=Ku(x?k:C),$=U1(_,w);return f&&$>0||$>=_.width*_.height||$>=w.width*w.height}):[]},isNodeIntersecting:(p,f,m=!0)=>{const v=jF(p)?p:c(p);if(!v)return!1;const w=U1(v,f);return m&&w>0||w>=f.width*f.height||w>=v.width*v.height},updateNode:d,updateNodeData:(p,f,m={replace:!1})=>{d(p,v=>{const w=typeof f=="function"?f(v):f;return m.replace?{...v,data:w}:{...v,data:{...v.data,...w}}},m)},updateEdge:u,updateEdgeData:(p,f,m={replace:!1})=>{u(p,v=>{const w=typeof f=="function"?f(v):f;return m.replace?{...v,data:w}:{...v,data:{...v.data,...w}}},m)},getNodesBounds:p=>{const{nodeLookup:f,nodeOrigin:m}=r.getState();return EF(p,{nodeLookup:f,nodeOrigin:m})},getHandleConnections:({type:p,id:f,nodeId:m})=>Array.from(r.getState().connectionLookup.get(`${m}-${p}${f?`-${f}`:""}`)?.values()??[]),getNodeConnections:({type:p,handleId:f,nodeId:m})=>Array.from(r.getState().connectionLookup.get(`${m}${p?f?`-${p}-${f}`:`-${p}`:""}`)?.values()??[]),fitView:async p=>{const f=r.getState().fitViewResolver??H7e();return r.setState({fitViewQueued:!0,fitViewOptions:p,fitViewResolver:f}),n.nodeQueue.push(m=>[...m]),f.promise}}},[]);return S.useMemo(()=>({...i,...e,viewportInitialized:o}),[o])}const OV=e=>e.selected,mSe=typeof window<"u"?window:void 0;function ySe({deleteKeyCode:e,multiSelectionKeyCode:r}){const n=vr(),{deleteElements:o}=pf(),i=X1(e,{actInsideInputWithModifier:!1}),a=X1(r,{target:mSe});S.useEffect(()=>{if(i){const{edges:l,nodes:s}=n.getState();o({nodes:s.filter(OV),edges:l.filter(OV)}),n.setState({nodesSelectionActive:!1})}},[i]),S.useEffect(()=>{n.setState({multiSelectionActive:a})},[a])}function vSe(e){const r=vr();S.useEffect(()=>{const n=()=>{if(!e.current||!(e.current.checkVisibility?.()??!0))return!1;const o=N7(e.current);(o.height===0||o.width===0)&&r.getState().onError?.("004",Gl.error004()),r.setState({width:o.width||500,height:o.height||500})};if(e.current){n(),window.addEventListener("resize",n);const o=new ResizeObserver(()=>n());return o.observe(e.current),()=>{window.removeEventListener("resize",n),o&&e.current&&o.unobserve(e.current)}}},[])}const ow={position:"absolute",width:"100%",height:"100%",top:0,left:0},bSe=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function xSe({onPaneContextMenu:e,zoomOnScroll:r=!0,zoomOnPinch:n=!0,panOnScroll:o=!1,panOnScrollSpeed:i=.5,panOnScrollMode:a=Yu.Free,zoomOnDoubleClick:l=!0,panOnDrag:s=!0,defaultViewport:c,translateExtent:d,minZoom:u,maxZoom:p,zoomActivationKeyCode:f,preventScrolling:m=!0,children:v,noWheelClassName:w,noPanClassName:x,onViewportChange:k,isControlledViewport:C,paneClickDistance:_,selectionOnDrag:$}){const R=vr(),T=S.useRef(null),{userSelectionActive:A,lib:z,connectionInProgress:j}=Dt(bSe,jr),I=X1(f),N=S.useRef();vSe(T);const L=S.useCallback(H=>{k?.({x:H[0],y:H[1],zoom:H[2]}),C||R.setState({transform:H})},[k,C]);return S.useEffect(()=>{if(T.current){N.current=$9e({domNode:T.current,minZoom:u,maxZoom:p,translateExtent:d,viewport:c,onDraggingChange:B=>R.setState({paneDragging:B}),onPanZoomStart:(B,F)=>{const{onViewportChangeStart:q,onMoveStart:G}=R.getState();G?.(B,F),q?.(F)},onPanZoom:(B,F)=>{const{onViewportChange:q,onMove:G}=R.getState();G?.(B,F),q?.(F)},onPanZoomEnd:(B,F)=>{const{onViewportChangeEnd:q,onMoveEnd:G}=R.getState();G?.(B,F),q?.(F)}});const{x:H,y:P,zoom:V}=N.current.getViewport();return R.setState({panZoom:N.current,transform:[H,P,V],domNode:T.current.closest(".react-flow")}),()=>{N.current?.destroy()}}},[]),S.useEffect(()=>{N.current?.update({onPaneContextMenu:e,zoomOnScroll:r,zoomOnPinch:n,panOnScroll:o,panOnScrollSpeed:i,panOnScrollMode:a,zoomOnDoubleClick:l,panOnDrag:s,zoomActivationKeyPressed:I,preventScrolling:m,noPanClassName:x,userSelectionActive:A,noWheelClassName:w,lib:z,onTransformChange:L,connectionInProgress:j,selectionOnDrag:$,paneClickDistance:_})},[e,r,n,o,i,a,l,s,I,m,x,A,w,z,L,j,$,_]),y.jsx("div",{className:"react-flow__renderer",ref:T,style:ow,children:v})}const wSe=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function kSe(){const{userSelectionActive:e,userSelectionRect:r}=Dt(wSe,jr);return e&&r?y.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:r.width,height:r.height,transform:`translate(${r.x}px, ${r.y}px)`}}):null}const Z7=(e,r)=>n=>{n.target===r.current&&e?.(n)},_Se=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging});function SSe({isSelecting:e,selectionKeyPressed:r,selectionMode:n=q1.Full,panOnDrag:o,paneClickDistance:i,selectionOnDrag:a,onSelectionStart:l,onSelectionEnd:s,onPaneClick:c,onPaneContextMenu:d,onPaneScroll:u,onPaneMouseEnter:p,onPaneMouseMove:f,onPaneMouseLeave:m,children:v}){const w=vr(),{userSelectionActive:x,elementsSelectable:k,dragging:C,connectionInProgress:_}=Dt(_Se,jr),$=k&&(e||x),R=S.useRef(null),T=S.useRef(),A=S.useRef(new Set),z=S.useRef(new Set),j=S.useRef(!1),I=q=>{if(j.current||_){j.current=!1;return}c?.(q),w.getState().resetSelectedElements(),w.setState({nodesSelectionActive:!1})},N=q=>{if(Array.isArray(o)&&o?.includes(2)){q.preventDefault();return}d?.(q)},L=u?q=>u(q):void 0,H=q=>{j.current&&(q.stopPropagation(),j.current=!1)},P=q=>{const{domNode:G}=w.getState();if(T.current=G?.getBoundingClientRect(),!T.current)return;const U=q.target===R.current;if(!U&&q.target.closest(".nokey")||!e||!(a&&U||r)||q.button!==0||!q.isPrimary)return;q.target?.setPointerCapture?.(q.pointerId),j.current=!1;const{x:Y,y:K}=Za(q.nativeEvent,T.current);w.setState({userSelectionRect:{width:0,height:0,startX:Y,startY:K,x:Y,y:K}}),U||(q.stopPropagation(),q.preventDefault())},V=q=>{const{userSelectionRect:G,transform:U,nodeLookup:Y,edgeLookup:K,connectionLookup:O,triggerNodeChanges:W,triggerEdgeChanges:Z,defaultEdgeOptions:Q,resetSelectedElements:ie}=w.getState();if(!T.current||!G)return;const{x:te,y:re}=Za(q.nativeEvent,T.current),{startX:ue,startY:_e}=G;if(!j.current){const Be=r?0:i;if(Math.hypot(te-ue,re-_e)<=Be)return;ie(),l?.(q)}j.current=!0;const ce={startX:ue,startY:_e,x:teBe.id)),z.current=new Set;const je=Q?.selectable??!0;for(const Be of A.current){const Je=O.get(Be);if(Je)for(const{edgeId:st}of Je.values()){const Le=K.get(st);Le&&(Le.selectable??je)&&z.current.add(st)}}if(!PF(pe,A.current)){const Be=uf(Y,A.current,!0);W(Be)}if(!PF(xe,z.current)){const Be=uf(K,z.current);Z(Be)}w.setState({userSelectionRect:ce,userSelectionActive:!0,nodesSelectionActive:!1})},B=q=>{q.button===0&&(q.target?.releasePointerCapture?.(q.pointerId),!x&&q.target===R.current&&w.getState().userSelectionRect&&I?.(q),w.setState({userSelectionActive:!1,userSelectionRect:null}),j.current&&(s?.(q),w.setState({nodesSelectionActive:A.current.size>0})))},F=o===!0||Array.isArray(o)&&o.includes(0);return y.jsxs("div",{className:dn(["react-flow__pane",{draggable:F,dragging:C,selection:e}]),onClick:$?void 0:Z7(I,R),onContextMenu:Z7(N,R),onWheel:Z7(L,R),onPointerEnter:$?void 0:p,onPointerMove:$?V:f,onPointerUp:$?B:void 0,onPointerDownCapture:$?P:void 0,onClickCapture:$?H:void 0,onPointerLeave:m,ref:R,style:ow,children:[v,y.jsx(kSe,{})]})}function Q7({id:e,store:r,unselect:n=!1,nodeRef:o}){const{addSelectedNodes:i,unselectNodesAndEdges:a,multiSelectionActive:l,nodeLookup:s,onError:c}=r.getState(),d=s.get(e);if(!d){c?.("012",Gl.error012(e));return}r.setState({nodesSelectionActive:!1}),d.selected?(n||d.selected&&l)&&(a({nodes:[d],edges:[]}),requestAnimationFrame(()=>o?.current?.blur())):i([e])}function LV({nodeRef:e,disabled:r=!1,noDragClassName:n,handleSelector:o,nodeId:i,isSelectable:a,nodeClickDistance:l}){const s=vr(),[c,d]=S.useState(!1),u=S.useRef();return S.useEffect(()=>{u.current=h9e({getStoreItems:()=>s.getState(),onNodeMouseDown:p=>{Q7({id:p,store:s,nodeRef:e})},onDragStart:()=>{d(!0)},onDragStop:()=>{d(!1)}})},[]),S.useEffect(()=>{if(r)u.current?.destroy();else if(e.current)return u.current?.update({noDragClassName:n,handleSelector:o,domNode:e.current,isSelectable:a,nodeId:i,nodeClickDistance:l}),()=>{u.current?.destroy()}},[n,o,r,a,e,i]),c}const ESe=e=>r=>r.selected&&(r.draggable||e&&typeof r.draggable>"u");function FV(){const e=vr();return S.useCallback(r=>{const{nodeExtent:n,snapToGrid:o,snapGrid:i,nodesDraggable:a,onError:l,updateNodePositions:s,nodeLookup:c,nodeOrigin:d}=e.getState(),u=new Map,p=ESe(a),f=o?i[0]:5,m=o?i[1]:5,v=r.direction.x*f*r.factor,w=r.direction.y*m*r.factor;for(const[,x]of c){if(!p(x))continue;let k={x:x.internals.positionAbsolute.x+v,y:x.internals.positionAbsolute.y+w};o&&(k=W1(k,i));const{position:C,positionAbsolute:_}=CF({nodeId:x.id,nextPosition:k,nodeLookup:c,nodeExtent:n,nodeOrigin:d,onError:l});x.position=C,x.internals.positionAbsolute=_,u.set(x.id,x)}s(u)},[])}const J7=S.createContext(null),CSe=J7.Provider;J7.Consumer;const e9=()=>S.useContext(J7),$Se=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),RSe=(e,r,n)=>o=>{const{connectionClickStartHandle:i,connectionMode:a,connection:l}=o,{fromHandle:s,toHandle:c,isValid:d}=l,u=c?.nodeId===e&&c?.id===r&&c?.type===n;return{connectingFrom:s?.nodeId===e&&s?.id===r&&s?.type===n,connectingTo:u,clickConnecting:i?.nodeId===e&&i?.id===r&&i?.type===n,isPossibleEndHandle:a===rf.Strict?s?.type!==n:e!==s?.nodeId||r!==s?.id,connectionInProcess:!!s,clickConnectionInProcess:!!i,valid:u&&d}};function zSe({type:e="source",position:r=Ue.Top,isValidConnection:n,isConnectable:o=!0,isConnectableStart:i=!0,isConnectableEnd:a=!0,id:l,onConnect:s,children:c,className:d,onMouseDown:u,onTouchStart:p,...f},m){const v=l||null,w=e==="target",x=vr(),k=e9(),{connectOnClick:C,noPanClassName:_,rfId:$}=Dt($Se,jr),{connectingFrom:R,connectingTo:T,clickConnecting:A,isPossibleEndHandle:z,connectionInProcess:j,clickConnectionInProcess:I,valid:N}=Dt(RSe(k,v,e),jr);k||x.getState().onError?.("010",Gl.error010());const L=V=>{const{defaultEdgeOptions:B,onConnect:F,hasDefaultEdges:q}=x.getState(),G={...B,...V};if(q){const{edges:U,setEdges:Y}=x.getState();Y(Z7e(G,U))}F?.(G),s?.(G)},H=V=>{if(!k)return;const B=BF(V.nativeEvent);if(i&&(B&&V.button===0||!B)){const F=x.getState();U7.onPointerDown(V.nativeEvent,{handleDomNode:V.currentTarget,autoPanOnConnect:F.autoPanOnConnect,connectionMode:F.connectionMode,connectionRadius:F.connectionRadius,domNode:F.domNode,nodeLookup:F.nodeLookup,lib:F.lib,isTarget:w,handleId:v,nodeId:k,flowId:F.rfId,panBy:F.panBy,cancelConnection:F.cancelConnection,onConnectStart:F.onConnectStart,onConnectEnd:F.onConnectEnd,updateConnection:F.updateConnection,onConnect:L,isValidConnection:n||F.isValidConnection,getTransform:()=>x.getState().transform,getFromHandle:()=>x.getState().connection.fromHandle,autoPanSpeed:F.autoPanSpeed,dragThreshold:F.connectionDragThreshold})}B?u?.(V):p?.(V)},P=V=>{const{onClickConnectStart:B,onClickConnectEnd:F,connectionClickStartHandle:q,connectionMode:G,isValidConnection:U,lib:Y,rfId:K,nodeLookup:O,connection:W}=x.getState();if(!k||!q&&!i)return;if(!q){B?.(V.nativeEvent,{nodeId:k,handleId:v,handleType:e}),x.setState({connectionClickStartHandle:{nodeId:k,type:e,id:v}});return}const Z=MF(V.target),Q=n||U,{connection:ie,isValid:te}=U7.isValid(V.nativeEvent,{handle:{nodeId:k,id:v,type:e},connectionMode:G,fromNodeId:q.nodeId,fromHandleId:q.id||null,fromType:q.type,isValidConnection:Q,flowId:K,doc:Z,lib:Y,nodeLookup:O});te&&ie&&L(ie);const re=structuredClone(W);delete re.inProgress,re.toPosition=re.toHandle?re.toHandle.position:null,F?.(V,re),x.setState({connectionClickStartHandle:null})};return y.jsx("div",{"data-handleid":v,"data-nodeid":k,"data-handlepos":r,"data-id":`${$}-${k}-${v}-${e}`,className:dn(["react-flow__handle",`react-flow__handle-${r}`,"nodrag",_,d,{source:!w,target:w,connectable:o,connectablestart:i,connectableend:a,clickconnecting:A,connectingfrom:R,connectingto:T,valid:N,connectionindicator:o&&(!j||z)&&(j||I?a:i)}]),onMouseDown:H,onTouchStart:H,onClick:C?P:void 0,ref:m,...f,children:c})}const Oo=S.memo(NV(zSe));function TSe({data:e,isConnectable:r,sourcePosition:n=Ue.Bottom}){return y.jsxs(y.Fragment,{children:[e?.label,y.jsx(Oo,{type:"source",position:n,isConnectable:r})]})}function jSe({data:e,isConnectable:r,targetPosition:n=Ue.Top,sourcePosition:o=Ue.Bottom}){return y.jsxs(y.Fragment,{children:[y.jsx(Oo,{type:"target",position:n,isConnectable:r}),e?.label,y.jsx(Oo,{type:"source",position:o,isConnectable:r})]})}function ASe(){return null}function DSe({data:e,isConnectable:r,targetPosition:n=Ue.Top}){return y.jsxs(y.Fragment,{children:[y.jsx(Oo,{type:"target",position:n,isConnectable:r}),e?.label]})}const iw={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},VV={input:TSe,default:jSe,output:DSe,group:ASe};function PSe(e){return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??e.style?.width,height:e.height??e.initialHeight??e.style?.height}:{width:e.width??e.style?.width,height:e.height??e.style?.height}}const MSe=e=>{const{width:r,height:n,x:o,y:i}=nf(e.nodeLookup,{filter:a=>!!a.selected});return{width:Ka(r)?r:null,height:Ka(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${o}px,${i}px)`}};function NSe({onSelectionContextMenu:e,noPanClassName:r,disableKeyboardA11y:n}){const o=vr(),{width:i,height:a,transformString:l,userSelectionActive:s}=Dt(MSe,jr),c=FV(),d=S.useRef(null);if(S.useEffect(()=>{n||d.current?.focus({preventScroll:!0})},[n]),LV({nodeRef:d}),s||!i||!a)return null;const u=e?f=>{const m=o.getState().nodes.filter(v=>v.selected);e(f,m)}:void 0,p=f=>{Object.prototype.hasOwnProperty.call(iw,f.key)&&(f.preventDefault(),c({direction:iw[f.key],factor:f.shiftKey?4:1}))};return y.jsx("div",{className:dn(["react-flow__nodesselection","react-flow__container",r]),style:{transform:l},children:y.jsx("div",{ref:d,className:"react-flow__nodesselection-rect",onContextMenu:u,tabIndex:n?void 0:-1,onKeyDown:n?void 0:p,style:{width:i,height:a}})})}const qV=typeof window<"u"?window:void 0,BSe=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function HV({children:e,onPaneClick:r,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:l,paneClickDistance:s,deleteKeyCode:c,selectionKeyCode:d,selectionOnDrag:u,selectionMode:p,onSelectionStart:f,onSelectionEnd:m,multiSelectionKeyCode:v,panActivationKeyCode:w,zoomActivationKeyCode:x,elementsSelectable:k,zoomOnScroll:C,zoomOnPinch:_,panOnScroll:$,panOnScrollSpeed:R,panOnScrollMode:T,zoomOnDoubleClick:A,panOnDrag:z,defaultViewport:j,translateExtent:I,minZoom:N,maxZoom:L,preventScrolling:H,onSelectionContextMenu:P,noWheelClassName:V,noPanClassName:B,disableKeyboardA11y:F,onViewportChange:q,isControlledViewport:G}){const{nodesSelectionActive:U,userSelectionActive:Y}=Dt(BSe,jr),K=X1(d,{target:qV}),O=X1(w,{target:qV}),W=O||z,Z=O||$,Q=u&&W!==!0,ie=K||Y||Q;return ySe({deleteKeyCode:c,multiSelectionKeyCode:v}),y.jsx(xSe,{onPaneContextMenu:a,elementsSelectable:k,zoomOnScroll:C,zoomOnPinch:_,panOnScroll:Z,panOnScrollSpeed:R,panOnScrollMode:T,zoomOnDoubleClick:A,panOnDrag:!K&&W,defaultViewport:j,translateExtent:I,minZoom:N,maxZoom:L,zoomActivationKeyCode:x,preventScrolling:H,noWheelClassName:V,noPanClassName:B,onViewportChange:q,isControlledViewport:G,paneClickDistance:s,selectionOnDrag:Q,children:y.jsxs(SSe,{onSelectionStart:f,onSelectionEnd:m,onPaneClick:r,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:l,panOnDrag:W,isSelecting:!!ie,selectionMode:p,selectionKeyPressed:K,paneClickDistance:s,selectionOnDrag:Q,children:[e,U&&y.jsx(NSe,{onSelectionContextMenu:P,noPanClassName:B,disableKeyboardA11y:F})]})})}HV.displayName="FlowRenderer";const ISe=S.memo(HV),OSe=e=>r=>e?P7(r.nodeLookup,{x:0,y:0,width:r.width,height:r.height},r.transform,!0).map(n=>n.id):Array.from(r.nodeLookup.keys());function LSe(e){return Dt(S.useCallback(OSe(e),[e]),jr)}const FSe=e=>e.updateNodeInternals;function VSe(){const e=Dt(FSe),[r]=S.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(n=>{const o=new Map;n.forEach(i=>{const a=i.target.getAttribute("data-id");o.set(a,{id:a,nodeElement:i.target,force:!0})}),e(o)}));return S.useEffect(()=>()=>{r?.disconnect()},[r]),r}function qSe({node:e,nodeType:r,hasDimensions:n,resizeObserver:o}){const i=vr(),a=S.useRef(null),l=S.useRef(null),s=S.useRef(e.sourcePosition),c=S.useRef(e.targetPosition),d=S.useRef(r),u=n&&!!e.internals.handleBounds;return S.useEffect(()=>{a.current&&!e.hidden&&(!u||l.current!==a.current)&&(l.current&&o?.unobserve(l.current),o?.observe(a.current),l.current=a.current)},[u,e.hidden]),S.useEffect(()=>()=>{l.current&&(o?.unobserve(l.current),l.current=null)},[]),S.useEffect(()=>{if(a.current){const p=d.current!==r,f=s.current!==e.sourcePosition,m=c.current!==e.targetPosition;(p||f||m)&&(d.current=r,s.current=e.sourcePosition,c.current=e.targetPosition,i.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:a.current,force:!0}]])))}},[e.id,r,e.sourcePosition,e.targetPosition]),a}function HSe({id:e,onClick:r,onMouseEnter:n,onMouseMove:o,onMouseLeave:i,onContextMenu:a,onDoubleClick:l,nodesDraggable:s,elementsSelectable:c,nodesConnectable:d,nodesFocusable:u,resizeObserver:p,noDragClassName:f,noPanClassName:m,disableKeyboardA11y:v,rfId:w,nodeTypes:x,nodeClickDistance:k,onError:C}){const{node:_,internals:$,isParent:R}=Dt(te=>{const re=te.nodeLookup.get(e),ue=te.parentLookup.has(e);return{node:re,internals:re.internals,isParent:ue}},jr);let T=_.type||"default",A=x?.[T]||VV[T];A===void 0&&(C?.("003",Gl.error003(T)),T="default",A=x?.default||VV.default);const z=!!(_.draggable||s&&typeof _.draggable>"u"),j=!!(_.selectable||c&&typeof _.selectable>"u"),I=!!(_.connectable||d&&typeof _.connectable>"u"),N=!!(_.focusable||u&&typeof _.focusable>"u"),L=vr(),H=AF(_),P=qSe({node:_,nodeType:T,hasDimensions:H,resizeObserver:p}),V=LV({nodeRef:P,disabled:_.hidden||!z,noDragClassName:f,handleSelector:_.dragHandle,nodeId:e,isSelectable:j,nodeClickDistance:k}),B=FV();if(_.hidden)return null;const F=_o(_),q=PSe(_),G=j||z||r||n||o||i,U=n?te=>n(te,{...$.userNode}):void 0,Y=o?te=>o(te,{...$.userNode}):void 0,K=i?te=>i(te,{...$.userNode}):void 0,O=a?te=>a(te,{...$.userNode}):void 0,W=l?te=>l(te,{...$.userNode}):void 0,Z=te=>{const{selectNodesOnDrag:re,nodeDragThreshold:ue}=L.getState();j&&(!re||!z||ue>0)&&Q7({id:e,store:L,nodeRef:P}),r&&r(te,{...$.userNode})},Q=te=>{if(!(NF(te.nativeEvent)||v)){if(bF.includes(te.key)&&j){const re=te.key==="Escape";Q7({id:e,store:L,unselect:re,nodeRef:P})}else if(z&&_.selected&&Object.prototype.hasOwnProperty.call(iw,te.key)){te.preventDefault();const{ariaLabelConfig:re}=L.getState();L.setState({ariaLiveMessage:re["node.a11yDescription.ariaLiveMessage"]({direction:te.key.replace("Arrow","").toLowerCase(),x:~~$.positionAbsolute.x,y:~~$.positionAbsolute.y})}),B({direction:iw[te.key],factor:te.shiftKey?4:1})}}},ie=()=>{if(v||!P.current?.matches(":focus-visible"))return;const{transform:te,width:re,height:ue,autoPanOnNodeFocus:_e,setCenter:ce}=L.getState();_e&&(P7(new Map([[e,_]]),{x:0,y:0,width:re,height:ue},te,!0).length>0||ce(_.position.x+F.width/2,_.position.y+F.height/2,{zoom:te[2]}))};return y.jsx("div",{className:dn(["react-flow__node",`react-flow__node-${T}`,{[m]:z},_.className,{selected:_.selected,selectable:j,parent:R,draggable:z,dragging:V}]),ref:P,style:{zIndex:$.z,transform:`translate(${$.positionAbsolute.x}px,${$.positionAbsolute.y}px)`,pointerEvents:G?"all":"none",visibility:H?"visible":"hidden",..._.style,...q},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:U,onMouseMove:Y,onMouseLeave:K,onContextMenu:O,onClick:Z,onDoubleClick:W,onKeyDown:N?Q:void 0,tabIndex:N?0:void 0,onFocus:N?ie:void 0,role:_.ariaRole??(N?"group":void 0),"aria-roledescription":"node","aria-describedby":v?void 0:`${_V}-${w}`,"aria-label":_.ariaLabel,..._.domAttributes,children:y.jsx(CSe,{value:e,children:y.jsx(A,{id:e,data:_.data,type:T,positionAbsoluteX:$.positionAbsolute.x,positionAbsoluteY:$.positionAbsolute.y,selected:_.selected??!1,selectable:j,draggable:z,deletable:_.deletable??!0,isConnectable:I,sourcePosition:_.sourcePosition,targetPosition:_.targetPosition,dragging:V,dragHandle:_.dragHandle,zIndex:$.z,parentId:_.parentId,...F})})})}var USe=S.memo(HSe);const WSe=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function UV(e){const{nodesDraggable:r,nodesConnectable:n,nodesFocusable:o,elementsSelectable:i,onError:a}=Dt(WSe,jr),l=LSe(e.onlyRenderVisibleElements),s=VSe();return y.jsx("div",{className:"react-flow__nodes",style:ow,children:l.map(c=>y.jsx(USe,{id:c,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:s,nodesDraggable:r,nodesConnectable:n,nodesFocusable:o,elementsSelectable:i,nodeClickDistance:e.nodeClickDistance,onError:a},c))})}UV.displayName="NodeRenderer";const GSe=S.memo(UV);function YSe(e){return Dt(S.useCallback(r=>{if(!e)return r.edges.map(o=>o.id);const n=[];if(r.width&&r.height)for(const o of r.edges){const i=r.nodeLookup.get(o.source),a=r.nodeLookup.get(o.target);i&&a&&Y7e({sourceNode:i,targetNode:a,width:r.width,height:r.height,transform:r.transform})&&n.push(o.id)}return n},[e]),jr)}const XSe=({color:e="none",strokeWidth:r=1})=>{const n={strokeWidth:r,...e&&{stroke:e}};return y.jsx("polyline",{className:"arrow",style:n,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},KSe=({color:e="none",strokeWidth:r=1})=>{const n={strokeWidth:r,...e&&{stroke:e,fill:e}};return y.jsx("polyline",{className:"arrowclosed",style:n,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},WV={[Hx.Arrow]:XSe,[Hx.ArrowClosed]:KSe};function ZSe(e){const r=vr();return S.useMemo(()=>Object.prototype.hasOwnProperty.call(WV,e)?WV[e]:(r.getState().onError?.("009",Gl.error009(e)),null),[e])}const QSe=({id:e,type:r,color:n,width:o=12.5,height:i=12.5,markerUnits:a="strokeWidth",strokeWidth:l,orient:s="auto-start-reverse"})=>{const c=ZSe(r);return c?y.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${o}`,markerHeight:`${i}`,viewBox:"-10 -10 20 20",markerUnits:a,orient:s,refX:"0",refY:"0",children:y.jsx(c,{color:n,strokeWidth:l})}):null},GV=({defaultColor:e,rfId:r})=>{const n=Dt(a=>a.edges),o=Dt(a=>a.defaultEdgeOptions),i=S.useMemo(()=>t9e(n,{id:r,defaultColor:e,defaultMarkerStart:o?.markerStart,defaultMarkerEnd:o?.markerEnd}),[n,o,r,e]);return i.length?y.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:y.jsx("defs",{children:i.map(a=>y.jsx(QSe,{id:a.id,type:a.type,color:a.color,width:a.width,height:a.height,markerUnits:a.markerUnits,strokeWidth:a.strokeWidth,orient:a.orient},a.id))})}):null};GV.displayName="MarkerDefinitions";var JSe=S.memo(GV);function YV({x:e,y:r,label:n,labelStyle:o,labelShowBg:i=!0,labelBgStyle:a,labelBgPadding:l=[2,4],labelBgBorderRadius:s=2,children:c,className:d,...u}){const[p,f]=S.useState({x:1,y:0,width:0,height:0}),m=dn(["react-flow__edge-textwrapper",d]),v=S.useRef(null);return S.useEffect(()=>{if(v.current){const w=v.current.getBBox();f({x:w.x,y:w.y,width:w.width,height:w.height})}},[n]),n?y.jsxs("g",{transform:`translate(${e-p.width/2} ${r-p.height/2})`,className:m,visibility:p.width?"visible":"hidden",...u,children:[i&&y.jsx("rect",{width:p.width+2*l[0],x:-l[0],y:-l[1],height:p.height+2*l[1],className:"react-flow__edge-textbg",style:a,rx:s,ry:s}),y.jsx("text",{className:"react-flow__edge-text",y:p.height/2,dy:"0.3em",ref:v,style:o,children:n}),c]}):null}YV.displayName="EdgeText";const eEe=S.memo(YV);function aw({path:e,labelX:r,labelY:n,label:o,labelStyle:i,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,interactionWidth:d=20,...u}){return y.jsxs(y.Fragment,{children:[y.jsx("path",{...u,d:e,fill:"none",className:dn(["react-flow__edge-path",u.className])}),d?y.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:d,className:"react-flow__edge-interaction"}):null,o&&Ka(r)&&Ka(n)?y.jsx(eEe,{x:r,y:n,label:o,labelStyle:i,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c}):null]})}function XV({pos:e,x1:r,y1:n,x2:o,y2:i}){return e===Ue.Left||e===Ue.Right?[.5*(r+o),n]:[r,.5*(n+i)]}function KV({sourceX:e,sourceY:r,sourcePosition:n=Ue.Bottom,targetX:o,targetY:i,targetPosition:a=Ue.Top}){const[l,s]=XV({pos:n,x1:e,y1:r,x2:o,y2:i}),[c,d]=XV({pos:a,x1:o,y1:i,x2:e,y2:r}),[u,p,f,m]=OF({sourceX:e,sourceY:r,targetX:o,targetY:i,sourceControlX:l,sourceControlY:s,targetControlX:c,targetControlY:d});return[`M${e},${r} C${l},${s} ${c},${d} ${o},${i}`,u,p,f,m]}function ZV(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:i,targetY:a,sourcePosition:l,targetPosition:s,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:m,style:v,markerEnd:w,markerStart:x,interactionWidth:k})=>{const[C,_,$]=KV({sourceX:n,sourceY:o,sourcePosition:l,targetX:i,targetY:a,targetPosition:s}),R=e.isInternal?void 0:r;return y.jsx(aw,{id:R,path:C,labelX:_,labelY:$,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:m,style:v,markerEnd:w,markerStart:x,interactionWidth:k})})}const tEe=ZV({isInternal:!1}),QV=ZV({isInternal:!0});tEe.displayName="SimpleBezierEdge",QV.displayName="SimpleBezierEdgeInternal";function JV(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:i,targetY:a,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,sourcePosition:m=Ue.Bottom,targetPosition:v=Ue.Top,markerEnd:w,markerStart:x,pathOptions:k,interactionWidth:C})=>{const[_,$,R]=Zx({sourceX:n,sourceY:o,sourcePosition:m,targetX:i,targetY:a,targetPosition:v,borderRadius:k?.borderRadius,offset:k?.offset,stepPosition:k?.stepPosition}),T=e.isInternal?void 0:r;return y.jsx(aw,{id:T,path:_,labelX:$,labelY:R,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,markerEnd:w,markerStart:x,interactionWidth:C})})}const eq=JV({isInternal:!1}),tq=JV({isInternal:!0});eq.displayName="SmoothStepEdge",tq.displayName="SmoothStepEdgeInternal";function rq(e){return S.memo(({id:r,...n})=>{const o=e.isInternal?void 0:r;return y.jsx(eq,{...n,id:o,pathOptions:S.useMemo(()=>({borderRadius:0,offset:n.pathOptions?.offset}),[n.pathOptions?.offset])})})}const rEe=rq({isInternal:!1}),nq=rq({isInternal:!0});rEe.displayName="StepEdge",nq.displayName="StepEdgeInternal";function oq(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:i,targetY:a,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,markerEnd:m,markerStart:v,interactionWidth:w})=>{const[x,k,C]=VF({sourceX:n,sourceY:o,targetX:i,targetY:a}),_=e.isInternal?void 0:r;return y.jsx(aw,{id:_,path:x,labelX:k,labelY:C,label:l,labelStyle:s,labelShowBg:c,labelBgStyle:d,labelBgPadding:u,labelBgBorderRadius:p,style:f,markerEnd:m,markerStart:v,interactionWidth:w})})}const nEe=oq({isInternal:!1}),iq=oq({isInternal:!0});nEe.displayName="StraightEdge",iq.displayName="StraightEdgeInternal";function aq(e){return S.memo(({id:r,sourceX:n,sourceY:o,targetX:i,targetY:a,sourcePosition:l=Ue.Bottom,targetPosition:s=Ue.Top,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:m,style:v,markerEnd:w,markerStart:x,pathOptions:k,interactionWidth:C})=>{const[_,$,R]=Kx({sourceX:n,sourceY:o,sourcePosition:l,targetX:i,targetY:a,targetPosition:s,curvature:k?.curvature}),T=e.isInternal?void 0:r;return y.jsx(aw,{id:T,path:_,labelX:$,labelY:R,label:c,labelStyle:d,labelShowBg:u,labelBgStyle:p,labelBgPadding:f,labelBgBorderRadius:m,style:v,markerEnd:w,markerStart:x,interactionWidth:C})})}const oEe=aq({isInternal:!1}),lq=aq({isInternal:!0});oEe.displayName="BezierEdge",lq.displayName="BezierEdgeInternal";const sq={default:lq,straight:iq,step:nq,smoothstep:tq,simplebezier:QV},cq={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},iEe=(e,r,n)=>n===Ue.Left?e-r:n===Ue.Right?e+r:e,aEe=(e,r,n)=>n===Ue.Top?e-r:n===Ue.Bottom?e+r:e,dq="react-flow__edgeupdater";function uq({position:e,centerX:r,centerY:n,radius:o=10,onMouseDown:i,onMouseEnter:a,onMouseOut:l,type:s}){return y.jsx("circle",{onMouseDown:i,onMouseEnter:a,onMouseOut:l,className:dn([dq,`${dq}-${s}`]),cx:iEe(r,o,e),cy:aEe(n,o,e),r:o,stroke:"transparent",fill:"transparent"})}function lEe({isReconnectable:e,reconnectRadius:r,edge:n,sourceX:o,sourceY:i,targetX:a,targetY:l,sourcePosition:s,targetPosition:c,onReconnect:d,onReconnectStart:u,onReconnectEnd:p,setReconnecting:f,setUpdateHover:m}){const v=vr(),w=($,R)=>{if($.button!==0)return;const{autoPanOnConnect:T,domNode:A,isValidConnection:z,connectionMode:j,connectionRadius:I,lib:N,onConnectStart:L,onConnectEnd:H,cancelConnection:P,nodeLookup:V,rfId:B,panBy:F,updateConnection:q}=v.getState(),G=R.type==="target",U=(O,W)=>{f(!1),p?.(O,n,R.type,W)},Y=O=>d?.(n,O),K=(O,W)=>{f(!0),u?.($,n,R.type),L?.(O,W)};U7.onPointerDown($.nativeEvent,{autoPanOnConnect:T,connectionMode:j,connectionRadius:I,domNode:A,handleId:R.id,nodeId:R.nodeId,nodeLookup:V,isTarget:G,edgeUpdaterType:R.type,lib:N,flowId:B,cancelConnection:P,panBy:F,isValidConnection:z,onConnect:Y,onConnectStart:K,onConnectEnd:H,onReconnectEnd:U,updateConnection:q,getTransform:()=>v.getState().transform,getFromHandle:()=>v.getState().connection.fromHandle,dragThreshold:v.getState().connectionDragThreshold,handleDomNode:$.currentTarget})},x=$=>w($,{nodeId:n.target,id:n.targetHandle??null,type:"target"}),k=$=>w($,{nodeId:n.source,id:n.sourceHandle??null,type:"source"}),C=()=>m(!0),_=()=>m(!1);return y.jsxs(y.Fragment,{children:[(e===!0||e==="source")&&y.jsx(uq,{position:s,centerX:o,centerY:i,radius:r,onMouseDown:x,onMouseEnter:C,onMouseOut:_,type:"source"}),(e===!0||e==="target")&&y.jsx(uq,{position:c,centerX:a,centerY:l,radius:r,onMouseDown:k,onMouseEnter:C,onMouseOut:_,type:"target"})]})}function sEe({id:e,edgesFocusable:r,edgesReconnectable:n,elementsSelectable:o,onClick:i,onDoubleClick:a,onContextMenu:l,onMouseEnter:s,onMouseMove:c,onMouseLeave:d,reconnectRadius:u,onReconnect:p,onReconnectStart:f,onReconnectEnd:m,rfId:v,edgeTypes:w,noPanClassName:x,onError:k,disableKeyboardA11y:C}){let _=Dt(ce=>ce.edgeLookup.get(e));const $=Dt(ce=>ce.defaultEdgeOptions);_=$?{...$,..._}:_;let R=_.type||"default",T=w?.[R]||sq[R];T===void 0&&(k?.("011",Gl.error011(R)),R="default",T=w?.default||sq.default);const A=!!(_.focusable||r&&typeof _.focusable>"u"),z=typeof p<"u"&&(_.reconnectable||n&&typeof _.reconnectable>"u"),j=!!(_.selectable||o&&typeof _.selectable>"u"),I=S.useRef(null),[N,L]=S.useState(!1),[H,P]=S.useState(!1),V=vr(),{zIndex:B,sourceX:F,sourceY:q,targetX:G,targetY:U,sourcePosition:Y,targetPosition:K}=Dt(S.useCallback(ce=>{const pe=ce.nodeLookup.get(_.source),xe=ce.nodeLookup.get(_.target);if(!pe||!xe)return{zIndex:_.zIndex,...cq};const je=WF({id:e,sourceNode:pe,targetNode:xe,sourceHandle:_.sourceHandle||null,targetHandle:_.targetHandle||null,connectionMode:ce.connectionMode,onError:k});return{zIndex:G7e({selected:_.selected,zIndex:_.zIndex,sourceNode:pe,targetNode:xe,elevateOnSelect:ce.elevateEdgesOnSelect,zIndexMode:ce.zIndexMode}),...je||cq}},[_.source,_.target,_.sourceHandle,_.targetHandle,_.selected,_.zIndex]),jr),O=S.useMemo(()=>_.markerStart?`url('#${B7(_.markerStart,v)}')`:void 0,[_.markerStart,v]),W=S.useMemo(()=>_.markerEnd?`url('#${B7(_.markerEnd,v)}')`:void 0,[_.markerEnd,v]);if(_.hidden||F===null||q===null||G===null||U===null)return null;const Z=ce=>{const{addSelectedEdges:pe,unselectNodesAndEdges:xe,multiSelectionActive:je}=V.getState();j&&(V.setState({nodesSelectionActive:!1}),_.selected&&je?(xe({nodes:[],edges:[_]}),I.current?.blur()):pe([e])),i&&i(ce,_)},Q=a?ce=>{a(ce,{..._})}:void 0,ie=l?ce=>{l(ce,{..._})}:void 0,te=s?ce=>{s(ce,{..._})}:void 0,re=c?ce=>{c(ce,{..._})}:void 0,ue=d?ce=>{d(ce,{..._})}:void 0,_e=ce=>{if(!C&&bF.includes(ce.key)&&j){const{unselectNodesAndEdges:pe,addSelectedEdges:xe}=V.getState();ce.key==="Escape"?(I.current?.blur(),pe({edges:[_]})):xe([e])}};return y.jsx("svg",{style:{zIndex:B},children:y.jsxs("g",{className:dn(["react-flow__edge",`react-flow__edge-${R}`,_.className,x,{selected:_.selected,animated:_.animated,inactive:!j&&!i,updating:N,selectable:j}]),onClick:Z,onDoubleClick:Q,onContextMenu:ie,onMouseEnter:te,onMouseMove:re,onMouseLeave:ue,onKeyDown:A?_e:void 0,tabIndex:A?0:void 0,role:_.ariaRole??(A?"group":"img"),"aria-roledescription":"edge","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":_.ariaLabel===null?void 0:_.ariaLabel||`Edge from ${_.source} to ${_.target}`,"aria-describedby":A?`${SV}-${v}`:void 0,ref:I,..._.domAttributes,children:[!H&&y.jsx(T,{id:e,source:_.source,target:_.target,type:_.type,selected:_.selected,animated:_.animated,selectable:j,deletable:_.deletable??!0,label:_.label,labelStyle:_.labelStyle,labelShowBg:_.labelShowBg,labelBgStyle:_.labelBgStyle,labelBgPadding:_.labelBgPadding,labelBgBorderRadius:_.labelBgBorderRadius,sourceX:F,sourceY:q,targetX:G,targetY:U,sourcePosition:Y,targetPosition:K,data:_.data,style:_.style,sourceHandleId:_.sourceHandle,targetHandleId:_.targetHandle,markerStart:O,markerEnd:W,pathOptions:"pathOptions"in _?_.pathOptions:void 0,interactionWidth:_.interactionWidth}),z&&y.jsx(lEe,{edge:_,isReconnectable:z,reconnectRadius:u,onReconnect:p,onReconnectStart:f,onReconnectEnd:m,sourceX:F,sourceY:q,targetX:G,targetY:U,sourcePosition:Y,targetPosition:K,setUpdateHover:L,setReconnecting:P})]})})}var cEe=S.memo(sEe);const dEe=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function pq({defaultMarkerColor:e,onlyRenderVisibleElements:r,rfId:n,edgeTypes:o,noPanClassName:i,onReconnect:a,onEdgeContextMenu:l,onEdgeMouseEnter:s,onEdgeMouseMove:c,onEdgeMouseLeave:d,onEdgeClick:u,reconnectRadius:p,onEdgeDoubleClick:f,onReconnectStart:m,onReconnectEnd:v,disableKeyboardA11y:w}){const{edgesFocusable:x,edgesReconnectable:k,elementsSelectable:C,onError:_}=Dt(dEe,jr),$=YSe(r);return y.jsxs("div",{className:"react-flow__edges",children:[y.jsx(JSe,{defaultColor:e,rfId:n}),$.map(R=>y.jsx(cEe,{id:R,edgesFocusable:x,edgesReconnectable:k,elementsSelectable:C,noPanClassName:i,onReconnect:a,onContextMenu:l,onMouseEnter:s,onMouseMove:c,onMouseLeave:d,onClick:u,reconnectRadius:p,onDoubleClick:f,onReconnectStart:m,onReconnectEnd:v,rfId:n,onError:_,edgeTypes:o,disableKeyboardA11y:w},R))]})}pq.displayName="EdgeRenderer";const uEe=S.memo(pq),pEe=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function hEe({children:e}){const r=Dt(pEe);return y.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:r},children:e})}function fEe(e){const r=pf(),n=S.useRef(!1);S.useEffect(()=>{!n.current&&r.viewportInitialized&&e&&(setTimeout(()=>e(r),1),n.current=!0)},[e,r.viewportInitialized])}const gEe=e=>e.panZoom?.syncViewport;function mEe(e){const r=Dt(gEe),n=vr();return S.useEffect(()=>{e&&(r?.(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,r]),null}function yEe(e){return e.connection.inProgress?{...e.connection,to:G1(e.connection.to,e.transform)}:{...e.connection}}function vEe(e){return yEe}function bEe(e){const r=vEe();return Dt(r,jr)}const xEe=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function wEe({containerStyle:e,style:r,type:n,component:o}){const{nodesConnectable:i,width:a,height:l,isValid:s,inProgress:c}=Dt(xEe,jr);return a&&i&&c?y.jsx("svg",{style:e,width:a,height:l,className:"react-flow__connectionline react-flow__container",children:y.jsx("g",{className:dn(["react-flow__connection",_F(s)]),children:y.jsx(hq,{style:r,type:n,CustomComponent:o,isValid:s})})}):null}const hq=({style:e,type:r=id.Bezier,CustomComponent:n,isValid:o})=>{const{inProgress:i,from:a,fromNode:l,fromHandle:s,fromPosition:c,to:d,toNode:u,toHandle:p,toPosition:f,pointer:m}=bEe();if(!i)return;if(n)return y.jsx(n,{connectionLineType:r,connectionLineStyle:e,fromNode:l,fromHandle:s,fromX:a.x,fromY:a.y,toX:d.x,toY:d.y,fromPosition:c,toPosition:f,connectionStatus:_F(o),toNode:u,toHandle:p,pointer:m});let v="";const w={sourceX:a.x,sourceY:a.y,sourcePosition:c,targetX:d.x,targetY:d.y,targetPosition:f};switch(r){case id.Bezier:[v]=Kx(w);break;case id.SimpleBezier:[v]=KV(w);break;case id.Step:[v]=Zx({...w,borderRadius:0});break;case id.SmoothStep:[v]=Zx(w);break;default:[v]=VF(w)}return y.jsx("path",{d:v,fill:"none",className:"react-flow__connection-path",style:e})};hq.displayName="ConnectionLine";const kEe={};function fq(e=kEe){S.useRef(e),vr(),S.useEffect(()=>{},[e])}function _Ee(){vr(),S.useRef(!1),S.useEffect(()=>{},[])}function gq({nodeTypes:e,edgeTypes:r,onInit:n,onNodeClick:o,onEdgeClick:i,onNodeDoubleClick:a,onEdgeDoubleClick:l,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:d,onNodeContextMenu:u,onSelectionContextMenu:p,onSelectionStart:f,onSelectionEnd:m,connectionLineType:v,connectionLineStyle:w,connectionLineComponent:x,connectionLineContainerStyle:k,selectionKeyCode:C,selectionOnDrag:_,selectionMode:$,multiSelectionKeyCode:R,panActivationKeyCode:T,zoomActivationKeyCode:A,deleteKeyCode:z,onlyRenderVisibleElements:j,elementsSelectable:I,defaultViewport:N,translateExtent:L,minZoom:H,maxZoom:P,preventScrolling:V,defaultMarkerColor:B,zoomOnScroll:F,zoomOnPinch:q,panOnScroll:G,panOnScrollSpeed:U,panOnScrollMode:Y,zoomOnDoubleClick:K,panOnDrag:O,onPaneClick:W,onPaneMouseEnter:Z,onPaneMouseMove:Q,onPaneMouseLeave:ie,onPaneScroll:te,onPaneContextMenu:re,paneClickDistance:ue,nodeClickDistance:_e,onEdgeContextMenu:ce,onEdgeMouseEnter:pe,onEdgeMouseMove:xe,onEdgeMouseLeave:je,reconnectRadius:Be,onReconnect:Je,onReconnectStart:st,onReconnectEnd:Le,noDragClassName:St,noWheelClassName:Ve,noPanClassName:qe,disableKeyboardA11y:Xe,nodeExtent:It,rfId:Et,viewport:be,onViewportChange:ke}){return fq(e),fq(r),_Ee(),fEe(n),mEe(be),y.jsx(ISe,{onPaneClick:W,onPaneMouseEnter:Z,onPaneMouseMove:Q,onPaneMouseLeave:ie,onPaneContextMenu:re,onPaneScroll:te,paneClickDistance:ue,deleteKeyCode:z,selectionKeyCode:C,selectionOnDrag:_,selectionMode:$,onSelectionStart:f,onSelectionEnd:m,multiSelectionKeyCode:R,panActivationKeyCode:T,zoomActivationKeyCode:A,elementsSelectable:I,zoomOnScroll:F,zoomOnPinch:q,zoomOnDoubleClick:K,panOnScroll:G,panOnScrollSpeed:U,panOnScrollMode:Y,panOnDrag:O,defaultViewport:N,translateExtent:L,minZoom:H,maxZoom:P,onSelectionContextMenu:p,preventScrolling:V,noDragClassName:St,noWheelClassName:Ve,noPanClassName:qe,disableKeyboardA11y:Xe,onViewportChange:ke,isControlledViewport:!!be,children:y.jsxs(hEe,{children:[y.jsx(uEe,{edgeTypes:r,onEdgeClick:i,onEdgeDoubleClick:l,onReconnect:Je,onReconnectStart:st,onReconnectEnd:Le,onlyRenderVisibleElements:j,onEdgeContextMenu:ce,onEdgeMouseEnter:pe,onEdgeMouseMove:xe,onEdgeMouseLeave:je,reconnectRadius:Be,defaultMarkerColor:B,noPanClassName:qe,disableKeyboardA11y:Xe,rfId:Et}),y.jsx(wEe,{style:w,type:v,component:x,containerStyle:k}),y.jsx("div",{className:"react-flow__edgelabel-renderer"}),y.jsx(GSe,{nodeTypes:e,onNodeClick:o,onNodeDoubleClick:a,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:d,onNodeContextMenu:u,nodeClickDistance:_e,onlyRenderVisibleElements:j,noPanClassName:qe,noDragClassName:St,disableKeyboardA11y:Xe,nodeExtent:It,rfId:Et}),y.jsx("div",{className:"react-flow__viewport-portal"})]})})}gq.displayName="GraphView";const SEe=S.memo(gq),mq=({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,width:i,height:a,fitView:l,fitViewOptions:s,minZoom:c=.5,maxZoom:d=2,nodeOrigin:u,nodeExtent:p,zIndexMode:f="basic"}={})=>{const m=new Map,v=new Map,w=new Map,x=new Map,k=o??r??[],C=n??e??[],_=u??[0,0],$=p??V1;QF(w,x,k);const R=F7(C,m,v,{nodeOrigin:_,nodeExtent:$,zIndexMode:f});let T=[0,0,1];if(l&&i&&a){const A=nf(m,{filter:N=>!!((N.width||N.initialWidth)&&(N.height||N.initialHeight))}),{x:z,y:j,zoom:I}=Ws(A,i,a,c,d,s?.padding??.1);T=[z,j,I]}return{rfId:"1",width:i??0,height:a??0,transform:T,nodes:C,nodesInitialized:R,nodeLookup:m,parentLookup:v,edges:k,edgeLookup:x,connectionLookup:w,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:o!==void 0,panZoom:null,minZoom:c,maxZoom:d,translateExtent:V1,nodeExtent:$,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:rf.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:_,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:l??!1,fitViewOptions:s,fitViewResolver:null,connection:{...wF},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:F7e,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:xF,zIndexMode:f,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},EEe=({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,width:i,height:a,fitView:l,fitViewOptions:s,minZoom:c,maxZoom:d,nodeOrigin:u,nodeExtent:p,zIndexMode:f})=>q9e((m,v)=>{async function w(){const{nodeLookup:x,panZoom:k,fitViewOptions:C,fitViewResolver:_,width:$,height:R,minZoom:T,maxZoom:A}=v();k&&(await O7e({nodes:x,width:$,height:R,panZoom:k,minZoom:T,maxZoom:A},C),_?.resolve(!0),m({fitViewResolver:null}))}return{...mq({nodes:e,edges:r,width:i,height:a,fitView:l,fitViewOptions:s,minZoom:c,maxZoom:d,nodeOrigin:u,nodeExtent:p,defaultNodes:n,defaultEdges:o,zIndexMode:f}),setNodes:x=>{const{nodeLookup:k,parentLookup:C,nodeOrigin:_,elevateNodesOnSelect:$,fitViewQueued:R,zIndexMode:T}=v(),A=F7(x,k,C,{nodeOrigin:_,nodeExtent:p,elevateNodesOnSelect:$,checkEquality:!0,zIndexMode:T});R&&A?(w(),m({nodes:x,nodesInitialized:A,fitViewQueued:!1,fitViewOptions:void 0})):m({nodes:x,nodesInitialized:A})},setEdges:x=>{const{connectionLookup:k,edgeLookup:C}=v();QF(k,C,x),m({edges:x})},setDefaultNodesAndEdges:(x,k)=>{if(x){const{setNodes:C}=v();C(x),m({hasDefaultNodes:!0})}if(k){const{setEdges:C}=v();C(k),m({hasDefaultEdges:!0})}},updateNodeInternals:x=>{const{triggerNodeChanges:k,nodeLookup:C,parentLookup:_,domNode:$,nodeOrigin:R,nodeExtent:T,debug:A,fitViewQueued:z,zIndexMode:j}=v(),{changes:I,updatedInternals:N}=c9e(x,C,_,$,R,T,j);N&&(i9e(C,_,{nodeOrigin:R,nodeExtent:T,zIndexMode:j}),z?(w(),m({fitViewQueued:!1,fitViewOptions:void 0})):m({}),I?.length>0&&(A&&console.log("React Flow: trigger node changes",I),k?.(I)))},updateNodePositions:(x,k=!1)=>{const C=[];let _=[];const{nodeLookup:$,triggerNodeChanges:R,connection:T,updateConnection:A,onNodesChangeMiddlewareMap:z}=v();for(const[j,I]of x){const N=$.get(j),L=!!(N?.expandParent&&N?.parentId&&I?.position),H={id:j,type:"position",position:L?{x:Math.max(0,I.position.x),y:Math.max(0,I.position.y)}:I.position,dragging:k};if(N&&T.inProgress&&T.fromNode.id===N.id){const P=Zu(N,T.fromHandle,Ue.Left,!0);A({...T,from:P})}L&&N.parentId&&C.push({id:j,parentId:N.parentId,rect:{...I.internals.positionAbsolute,width:I.measured.width??0,height:I.measured.height??0}}),_.push(H)}if(C.length>0){const{parentLookup:j,nodeOrigin:I}=v(),N=q7(C,$,j,I);_.push(...N)}for(const j of z.values())_=j(_);R(_)},triggerNodeChanges:x=>{const{onNodesChange:k,setNodes:C,nodes:_,hasDefaultNodes:$,debug:R}=v();if(x?.length){if($){const T=rw(x,_);C(T)}R&&console.log("React Flow: trigger node changes",x),k?.(x)}},triggerEdgeChanges:x=>{const{onEdgesChange:k,setEdges:C,edges:_,hasDefaultEdges:$,debug:R}=v();if(x?.length){if($){const T=nw(x,_);C(T)}R&&console.log("React Flow: trigger edge changes",x),k?.(x)}},addSelectedNodes:x=>{const{multiSelectionActive:k,edgeLookup:C,nodeLookup:_,triggerNodeChanges:$,triggerEdgeChanges:R}=v();if(k){const T=x.map(A=>Qu(A,!0));$(T);return}$(uf(_,new Set([...x]),!0)),R(uf(C))},addSelectedEdges:x=>{const{multiSelectionActive:k,edgeLookup:C,nodeLookup:_,triggerNodeChanges:$,triggerEdgeChanges:R}=v();if(k){const T=x.map(A=>Qu(A,!0));R(T);return}R(uf(C,new Set([...x]))),$(uf(_,new Set,!0))},unselectNodesAndEdges:({nodes:x,edges:k}={})=>{const{edges:C,nodes:_,nodeLookup:$,triggerNodeChanges:R,triggerEdgeChanges:T}=v(),A=x||_,z=k||C,j=A.map(N=>{const L=$.get(N.id);return L&&(L.selected=!1),Qu(N.id,!1)}),I=z.map(N=>Qu(N.id,!1));R(j),T(I)},setMinZoom:x=>{const{panZoom:k,maxZoom:C}=v();k?.setScaleExtent([x,C]),m({minZoom:x})},setMaxZoom:x=>{const{panZoom:k,minZoom:C}=v();k?.setScaleExtent([C,x]),m({maxZoom:x})},setTranslateExtent:x=>{v().panZoom?.setTranslateExtent(x),m({translateExtent:x})},resetSelectedElements:()=>{const{edges:x,nodes:k,triggerNodeChanges:C,triggerEdgeChanges:_,elementsSelectable:$}=v();if(!$)return;const R=k.reduce((A,z)=>z.selected?[...A,Qu(z.id,!1)]:A,[]),T=x.reduce((A,z)=>z.selected?[...A,Qu(z.id,!1)]:A,[]);C(R),_(T)},setNodeExtent:x=>{const{nodes:k,nodeLookup:C,parentLookup:_,nodeOrigin:$,elevateNodesOnSelect:R,nodeExtent:T,zIndexMode:A}=v();x[0][0]===T[0][0]&&x[0][1]===T[0][1]&&x[1][0]===T[1][0]&&x[1][1]===T[1][1]||(F7(k,C,_,{nodeOrigin:$,nodeExtent:x,elevateNodesOnSelect:R,checkEquality:!1,zIndexMode:A}),m({nodeExtent:x}))},panBy:x=>{const{transform:k,width:C,height:_,panZoom:$,translateExtent:R}=v();return d9e({delta:x,panZoom:$,transform:k,translateExtent:R,width:C,height:_})},setCenter:async(x,k,C)=>{const{width:_,height:$,maxZoom:R,panZoom:T}=v();if(!T)return Promise.resolve(!1);const A=typeof C?.zoom<"u"?C.zoom:R;return await T.setViewport({x:_/2-x*A,y:$/2-k*A,zoom:A},{duration:C?.duration,ease:C?.ease,interpolate:C?.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{m({connection:{...wF}})},updateConnection:x=>{m({connection:x})},reset:()=>m({...mq()})}},Object.is);function lw({initialNodes:e,initialEdges:r,defaultNodes:n,defaultEdges:o,initialWidth:i,initialHeight:a,initialMinZoom:l,initialMaxZoom:s,initialFitViewOptions:c,fitView:d,nodeOrigin:u,nodeExtent:p,zIndexMode:f,children:m}){const[v]=S.useState(()=>EEe({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,width:i,height:a,fitView:d,minZoom:l,maxZoom:s,fitViewOptions:c,nodeOrigin:u,nodeExtent:p,zIndexMode:f}));return y.jsx(H9e,{value:v,children:y.jsx(hSe,{children:m})})}function CEe({children:e,nodes:r,edges:n,defaultNodes:o,defaultEdges:i,width:a,height:l,fitView:s,fitViewOptions:c,minZoom:d,maxZoom:u,nodeOrigin:p,nodeExtent:f,zIndexMode:m}){return S.useContext(ew)?y.jsx(y.Fragment,{children:e}):y.jsx(lw,{initialNodes:r,initialEdges:n,defaultNodes:o,defaultEdges:i,initialWidth:a,initialHeight:l,fitView:s,initialFitViewOptions:c,initialMinZoom:d,initialMaxZoom:u,nodeOrigin:p,nodeExtent:f,zIndexMode:m,children:e})}const $Ee={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function REe({nodes:e,edges:r,defaultNodes:n,defaultEdges:o,className:i,nodeTypes:a,edgeTypes:l,onNodeClick:s,onEdgeClick:c,onInit:d,onMove:u,onMoveStart:p,onMoveEnd:f,onConnect:m,onConnectStart:v,onConnectEnd:w,onClickConnectStart:x,onClickConnectEnd:k,onNodeMouseEnter:C,onNodeMouseMove:_,onNodeMouseLeave:$,onNodeContextMenu:R,onNodeDoubleClick:T,onNodeDragStart:A,onNodeDrag:z,onNodeDragStop:j,onNodesDelete:I,onEdgesDelete:N,onDelete:L,onSelectionChange:H,onSelectionDragStart:P,onSelectionDrag:V,onSelectionDragStop:B,onSelectionContextMenu:F,onSelectionStart:q,onSelectionEnd:G,onBeforeDelete:U,connectionMode:Y,connectionLineType:K=id.Bezier,connectionLineStyle:O,connectionLineComponent:W,connectionLineContainerStyle:Z,deleteKeyCode:Q="Backspace",selectionKeyCode:ie="Shift",selectionOnDrag:te=!1,selectionMode:re=q1.Full,panActivationKeyCode:ue="Space",multiSelectionKeyCode:_e=lf()?"Meta":"Control",zoomActivationKeyCode:ce=lf()?"Meta":"Control",snapToGrid:pe,snapGrid:xe,onlyRenderVisibleElements:je=!1,selectNodesOnDrag:Be,nodesDraggable:Je,autoPanOnNodeFocus:st,nodesConnectable:Le,nodesFocusable:St,nodeOrigin:Ve=EV,edgesFocusable:qe,edgesReconnectable:Xe,elementsSelectable:It=!0,defaultViewport:Et=nSe,minZoom:be=.5,maxZoom:ke=2,translateExtent:Ye=V1,preventScrolling:yt=!0,nodeExtent:xt,defaultMarkerColor:Tr="#b1b1b7",zoomOnScroll:er=!0,zoomOnPinch:qt=!0,panOnScroll:Ht=!1,panOnScrollSpeed:Kr=.5,panOnScrollMode:Gt=Yu.Free,zoomOnDoubleClick:ln=!0,panOnDrag:Wn=!0,onPaneClick:fn,onPaneMouseEnter:oo,onPaneMouseMove:Yo,onPaneMouseLeave:jo,onPaneScroll:ui,onPaneContextMenu:Dl,paneClickDistance:Ao=1,nodeClickDistance:xs=0,children:ws,onReconnect:zc,onReconnectStart:Pl,onReconnectEnd:lh,onEdgeContextMenu:ks,onEdgeDoubleClick:tu,onEdgeMouseEnter:Xo,onEdgeMouseMove:Tc,onEdgeMouseLeave:_s,reconnectRadius:ru=10,onNodesChange:Ss,onEdgesChange:Ko,noDragClassName:Mr="nodrag",noWheelClassName:Pn="nowheel",noPanClassName:Do="nopan",fitView:Ml,fitViewOptions:jc,connectOnClick:sh,attributionPosition:Li,proOptions:Ra,defaultEdgeOptions:Nl,elevateNodesOnSelect:za=!0,elevateEdgesOnSelect:Ta=!1,disableKeyboardA11y:pi=!1,autoPanOnConnect:ho,autoPanOnNodeDrag:Wr,autoPanSpeed:Ac,connectionRadius:Dc,isValidConnection:Fi,onError:ja,style:nu,id:Es,nodeDragThreshold:ou,connectionDragThreshold:ch,viewport:Cs,onViewportChange:$s,width:Po,height:Gr,colorMode:iu="light",debug:dh,onScroll:Aa,ariaLabelConfig:au,zIndexMode:Da="basic",...lu},J){const ee=Es||"1",oe=lSe(iu),ae=S.useCallback(le=>{le.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),Aa?.(le)},[Aa]);return y.jsx("div",{"data-testid":"rf__wrapper",...lu,onScroll:ae,style:{...nu,...$Ee},ref:J,className:dn(["react-flow",i,oe]),id:Es,role:"application",children:y.jsxs(CEe,{nodes:e,edges:r,width:Po,height:Gr,fitView:Ml,fitViewOptions:jc,minZoom:be,maxZoom:ke,nodeOrigin:Ve,nodeExtent:xt,zIndexMode:Da,children:[y.jsx(SEe,{onInit:d,onNodeClick:s,onEdgeClick:c,onNodeMouseEnter:C,onNodeMouseMove:_,onNodeMouseLeave:$,onNodeContextMenu:R,onNodeDoubleClick:T,nodeTypes:a,edgeTypes:l,connectionLineType:K,connectionLineStyle:O,connectionLineComponent:W,connectionLineContainerStyle:Z,selectionKeyCode:ie,selectionOnDrag:te,selectionMode:re,deleteKeyCode:Q,multiSelectionKeyCode:_e,panActivationKeyCode:ue,zoomActivationKeyCode:ce,onlyRenderVisibleElements:je,defaultViewport:Et,translateExtent:Ye,minZoom:be,maxZoom:ke,preventScrolling:yt,zoomOnScroll:er,zoomOnPinch:qt,zoomOnDoubleClick:ln,panOnScroll:Ht,panOnScrollSpeed:Kr,panOnScrollMode:Gt,panOnDrag:Wn,onPaneClick:fn,onPaneMouseEnter:oo,onPaneMouseMove:Yo,onPaneMouseLeave:jo,onPaneScroll:ui,onPaneContextMenu:Dl,paneClickDistance:Ao,nodeClickDistance:xs,onSelectionContextMenu:F,onSelectionStart:q,onSelectionEnd:G,onReconnect:zc,onReconnectStart:Pl,onReconnectEnd:lh,onEdgeContextMenu:ks,onEdgeDoubleClick:tu,onEdgeMouseEnter:Xo,onEdgeMouseMove:Tc,onEdgeMouseLeave:_s,reconnectRadius:ru,defaultMarkerColor:Tr,noDragClassName:Mr,noWheelClassName:Pn,noPanClassName:Do,rfId:ee,disableKeyboardA11y:pi,nodeExtent:xt,viewport:Cs,onViewportChange:$s}),y.jsx(aSe,{nodes:e,edges:r,defaultNodes:n,defaultEdges:o,onConnect:m,onConnectStart:v,onConnectEnd:w,onClickConnectStart:x,onClickConnectEnd:k,nodesDraggable:Je,autoPanOnNodeFocus:st,nodesConnectable:Le,nodesFocusable:St,edgesFocusable:qe,edgesReconnectable:Xe,elementsSelectable:It,elevateNodesOnSelect:za,elevateEdgesOnSelect:Ta,minZoom:be,maxZoom:ke,nodeExtent:xt,onNodesChange:Ss,onEdgesChange:Ko,snapToGrid:pe,snapGrid:xe,connectionMode:Y,translateExtent:Ye,connectOnClick:sh,defaultEdgeOptions:Nl,fitView:Ml,fitViewOptions:jc,onNodesDelete:I,onEdgesDelete:N,onDelete:L,onNodeDragStart:A,onNodeDrag:z,onNodeDragStop:j,onSelectionDrag:V,onSelectionDragStart:P,onSelectionDragStop:B,onMove:u,onMoveStart:p,onMoveEnd:f,noPanClassName:Do,nodeOrigin:Ve,rfId:ee,autoPanOnConnect:ho,autoPanOnNodeDrag:Wr,autoPanSpeed:Ac,onError:ja,connectionRadius:Dc,isValidConnection:Fi,selectNodesOnDrag:Be,nodeDragThreshold:ou,connectionDragThreshold:ch,onBeforeDelete:U,debug:dh,ariaLabelConfig:au,zIndexMode:Da}),y.jsx(rSe,{onSelectionChange:H}),ws,y.jsx(Z9e,{proOptions:Ra,position:Li}),y.jsx(K9e,{rfId:ee,disableKeyboardA11y:pi})]})})}var zEe=NV(REe);const TEe=e=>e.domNode?.querySelector(".react-flow__edgelabel-renderer");function yq({children:e}){const r=Dt(TEe);return r?Va.createPortal(e,r):null}function jEe({dimensions:e,lineWidth:r,variant:n,className:o}){return y.jsx("path",{strokeWidth:r,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:dn(["react-flow__background-pattern",n,o])})}function AEe({radius:e,className:r}){return y.jsx("circle",{cx:e,cy:e,r:e,className:dn(["react-flow__background-pattern","dots",r])})}var Qa;(function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"})(Qa||(Qa={}));const DEe={[Qa.Dots]:1,[Qa.Lines]:1,[Qa.Cross]:6},PEe=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function vq({id:e,variant:r=Qa.Dots,gap:n=20,size:o,lineWidth:i=1,offset:a=0,color:l,bgColor:s,style:c,className:d,patternClassName:u}){const p=S.useRef(null),{transform:f,patternId:m}=Dt(PEe,jr),v=o||DEe[r],w=r===Qa.Dots,x=r===Qa.Cross,k=Array.isArray(n)?n:[n,n],C=[k[0]*f[2]||1,k[1]*f[2]||1],_=v*f[2],$=Array.isArray(a)?a:[a,a],R=x?[_,_]:C,T=[$[0]*f[2]||1+R[0]/2,$[1]*f[2]||1+R[1]/2],A=`${m}${e||""}`;return y.jsxs("svg",{className:dn(["react-flow__background",d]),style:{...c,...ow,"--xy-background-color-props":s,"--xy-background-pattern-color-props":l},ref:p,"data-testid":"rf__background",children:[y.jsx("pattern",{id:A,x:f[0]%C[0],y:f[1]%C[1],width:C[0],height:C[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${T[0]},-${T[1]})`,children:w?y.jsx(AEe,{radius:_/2,className:u}):y.jsx(jEe,{dimensions:R,lineWidth:i,variant:r,className:u})}),y.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${A})`})]})}vq.displayName="Background";const bq=S.memo(vq);function MEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:y.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function NEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:y.jsx("path",{d:"M0 0h32v4.2H0z"})})}function BEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:y.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 IEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:y.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 OEe(){return y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:y.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 sw({children:e,className:r,...n}){return y.jsx("button",{type:"button",className:dn(["react-flow__controls-button",r]),...n,children:e})}const LEe=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function xq({style:e,showZoom:r=!0,showFitView:n=!0,showInteractive:o=!0,fitViewOptions:i,onZoomIn:a,onZoomOut:l,onFitView:s,onInteractiveChange:c,className:d,children:u,position:p="bottom-left",orientation:f="vertical","aria-label":m}){const v=vr(),{isInteractive:w,minZoomReached:x,maxZoomReached:k,ariaLabelConfig:C}=Dt(LEe,jr),{zoomIn:_,zoomOut:$,fitView:R}=pf(),T=()=>{_(),a?.()},A=()=>{$(),l?.()},z=()=>{R(i),s?.()},j=()=>{v.setState({nodesDraggable:!w,nodesConnectable:!w,elementsSelectable:!w}),c?.(!w)};return y.jsxs(sd,{className:dn(["react-flow__controls",f==="horizontal"?"horizontal":"vertical",d]),position:p,style:e,"data-testid":"rf__controls","aria-label":m??C["controls.ariaLabel"],children:[r&&y.jsxs(y.Fragment,{children:[y.jsx(sw,{onClick:T,className:"react-flow__controls-zoomin",title:C["controls.zoomIn.ariaLabel"],"aria-label":C["controls.zoomIn.ariaLabel"],disabled:k,children:y.jsx(MEe,{})}),y.jsx(sw,{onClick:A,className:"react-flow__controls-zoomout",title:C["controls.zoomOut.ariaLabel"],"aria-label":C["controls.zoomOut.ariaLabel"],disabled:x,children:y.jsx(NEe,{})})]}),n&&y.jsx(sw,{className:"react-flow__controls-fitview",onClick:z,title:C["controls.fitView.ariaLabel"],"aria-label":C["controls.fitView.ariaLabel"],children:y.jsx(BEe,{})}),o&&y.jsx(sw,{className:"react-flow__controls-interactive",onClick:j,title:C["controls.interactive.ariaLabel"],"aria-label":C["controls.interactive.ariaLabel"],children:w?y.jsx(OEe,{}):y.jsx(IEe,{})}),u]})}xq.displayName="Controls",S.memo(xq);function FEe({id:e,x:r,y:n,width:o,height:i,style:a,color:l,strokeColor:s,strokeWidth:c,className:d,borderRadius:u,shapeRendering:p,selected:f,onClick:m}){const{background:v,backgroundColor:w}=a||{},x=l||v||w;return y.jsx("rect",{className:dn(["react-flow__minimap-node",{selected:f},d]),x:r,y:n,rx:u,ry:u,width:o,height:i,style:{fill:x,stroke:s,strokeWidth:c},shapeRendering:p,onClick:m?k=>m(k,e):void 0})}const VEe=S.memo(FEe),qEe=e=>e.nodes.map(r=>r.id),t9=e=>e instanceof Function?e:()=>e;function HEe({nodeStrokeColor:e,nodeColor:r,nodeClassName:n="",nodeBorderRadius:o=5,nodeStrokeWidth:i,nodeComponent:a=VEe,onClick:l}){const s=Dt(qEe,jr),c=t9(r),d=t9(e),u=t9(n),p=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return y.jsx(y.Fragment,{children:s.map(f=>y.jsx(WEe,{id:f,nodeColorFunc:c,nodeStrokeColorFunc:d,nodeClassNameFunc:u,nodeBorderRadius:o,nodeStrokeWidth:i,NodeComponent:a,onClick:l,shapeRendering:p},f))})}function UEe({id:e,nodeColorFunc:r,nodeStrokeColorFunc:n,nodeClassNameFunc:o,nodeBorderRadius:i,nodeStrokeWidth:a,shapeRendering:l,NodeComponent:s,onClick:c}){const{node:d,x:u,y:p,width:f,height:m}=Dt(v=>{const{internals:w}=v.nodeLookup.get(e),x=w.userNode,{x:k,y:C}=w.positionAbsolute,{width:_,height:$}=_o(x);return{node:x,x:k,y:C,width:_,height:$}},jr);return!d||d.hidden||!AF(d)?null:y.jsx(s,{x:u,y:p,width:f,height:m,style:d.style,selected:!!d.selected,className:o(d),color:r(d),borderRadius:i,strokeColor:n(d),strokeWidth:a,shapeRendering:l,onClick:c,id:d.id})}const WEe=S.memo(UEe);var GEe=S.memo(HEe);const YEe=200,XEe=150,KEe=e=>!e.hidden,ZEe=e=>{const r={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:r,boundingRect:e.nodeLookup.size>0?TF(nf(e.nodeLookup,{filter:KEe}),r):r,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},QEe="react-flow__minimap-desc";function wq({style:e,className:r,nodeStrokeColor:n,nodeColor:o,nodeClassName:i="",nodeBorderRadius:a=5,nodeStrokeWidth:l,nodeComponent:s,bgColor:c,maskColor:d,maskStrokeColor:u,maskStrokeWidth:p,position:f="bottom-right",onClick:m,onNodeClick:v,pannable:w=!1,zoomable:x=!1,ariaLabel:k,inversePan:C,zoomStep:_=1,offsetScale:$=5}){const R=vr(),T=S.useRef(null),{boundingRect:A,viewBB:z,rfId:j,panZoom:I,translateExtent:N,flowWidth:L,flowHeight:H,ariaLabelConfig:P}=Dt(ZEe,jr),V=e?.width??YEe,B=e?.height??XEe,F=A.width/V,q=A.height/B,G=Math.max(F,q),U=G*V,Y=G*B,K=$*G,O=A.x-(U-A.width)/2-K,W=A.y-(Y-A.height)/2-K,Z=U+K*2,Q=Y+K*2,ie=`${QEe}-${j}`,te=S.useRef(0),re=S.useRef();te.current=G,S.useEffect(()=>{if(T.current&&I)return re.current=b9e({domNode:T.current,panZoom:I,getTransform:()=>R.getState().transform,getViewScale:()=>te.current}),()=>{re.current?.destroy()}},[I]),S.useEffect(()=>{re.current?.update({translateExtent:N,width:L,height:H,inversePan:C,pannable:w,zoomStep:_,zoomable:x})},[w,x,C,_,N,L,H]);const ue=m?pe=>{const[xe,je]=re.current?.pointer(pe)||[0,0];m(pe,{x:xe,y:je})}:void 0,_e=v?S.useCallback((pe,xe)=>{const je=R.getState().nodeLookup.get(xe).internals.userNode;v(pe,je)},[]):void 0,ce=k??P["minimap.ariaLabel"];return y.jsx(sd,{position:f,style:{...e,"--xy-minimap-background-color-props":typeof c=="string"?c:void 0,"--xy-minimap-mask-background-color-props":typeof d=="string"?d:void 0,"--xy-minimap-mask-stroke-color-props":typeof u=="string"?u:void 0,"--xy-minimap-mask-stroke-width-props":typeof p=="number"?p*G:void 0,"--xy-minimap-node-background-color-props":typeof o=="string"?o:void 0,"--xy-minimap-node-stroke-color-props":typeof n=="string"?n:void 0,"--xy-minimap-node-stroke-width-props":typeof l=="number"?l:void 0},className:dn(["react-flow__minimap",r]),"data-testid":"rf__minimap",children:y.jsxs("svg",{width:V,height:B,viewBox:`${O} ${W} ${Z} ${Q}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":ie,ref:T,onClick:ue,children:[ce&&y.jsx("title",{id:ie,children:ce}),y.jsx(GEe,{onClick:_e,nodeColor:o,nodeStrokeColor:n,nodeBorderRadius:a,nodeClassName:i,nodeStrokeWidth:l,nodeComponent:s}),y.jsx("path",{className:"react-flow__minimap-mask",d:`M${O-K},${W-K}h${Z+K*2}v${Q+K*2}h${-Z-K*2}z + M${z.x},${z.y}h${z.width}v${z.height}h${-z.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}wq.displayName="MiniMap",S.memo(wq);const JEe=e=>r=>e?`${Math.max(1/r.transform[2],1)}`:void 0,eCe={[df.Line]:"right",[df.Handle]:"bottom-right"};function tCe({nodeId:e,position:r,variant:n=df.Handle,className:o,style:i=void 0,children:a,color:l,minWidth:s=10,minHeight:c=10,maxWidth:d=Number.MAX_VALUE,maxHeight:u=Number.MAX_VALUE,keepAspectRatio:p=!1,resizeDirection:f,autoScale:m=!0,shouldResize:v,onResizeStart:w,onResize:x,onResizeEnd:k}){const C=e9(),_=typeof e=="string"?e:C,$=vr(),R=S.useRef(null),T=n===df.Handle,A=Dt(S.useCallback(JEe(T&&m),[T,m]),jr),z=S.useRef(null),j=r??eCe[n];S.useEffect(()=>{if(!(!R.current||!_))return z.current||(z.current=D9e({domNode:R.current,nodeId:_,getStoreItems:()=>{const{nodeLookup:N,transform:L,snapGrid:H,snapToGrid:P,nodeOrigin:V,domNode:B}=$.getState();return{nodeLookup:N,transform:L,snapGrid:H,snapToGrid:P,nodeOrigin:V,paneDomNode:B}},onChange:(N,L)=>{const{triggerNodeChanges:H,nodeLookup:P,parentLookup:V,nodeOrigin:B}=$.getState(),F=[],q={x:N.x,y:N.y},G=P.get(_);if(G&&G.expandParent&&G.parentId){const U=G.origin??B,Y=N.width??G.measured.width??0,K=N.height??G.measured.height??0,O={id:G.id,parentId:G.parentId,rect:{width:Y,height:K,...DF({x:N.x??G.position.x,y:N.y??G.position.y},{width:Y,height:K},G.parentId,P,U)}},W=q7([O],P,V,B);F.push(...W),q.x=N.x?Math.max(U[0]*Y,N.x):void 0,q.y=N.y?Math.max(U[1]*K,N.y):void 0}if(q.x!==void 0&&q.y!==void 0){const U={id:_,type:"position",position:{...q}};F.push(U)}if(N.width!==void 0&&N.height!==void 0){const U={id:_,type:"dimensions",resizing:!0,setAttributes:f?f==="horizontal"?"width":"height":!0,dimensions:{width:N.width,height:N.height}};F.push(U)}for(const U of L){const Y={...U,type:"position"};F.push(Y)}H(F)},onEnd:({width:N,height:L})=>{const H={id:_,type:"dimensions",resizing:!1,dimensions:{width:N,height:L}};$.getState().triggerNodeChanges([H])}})),z.current.update({controlPosition:j,boundaries:{minWidth:s,minHeight:c,maxWidth:d,maxHeight:u},keepAspectRatio:p,resizeDirection:f,onResizeStart:w,onResize:x,onResizeEnd:k,shouldResize:v}),()=>{z.current?.destroy()}},[j,s,c,d,u,p,w,x,k,v]);const I=j.split("-");return y.jsx("div",{className:dn(["react-flow__resize-control","nodrag",...I,n,o]),ref:R,style:{...i,scale:A,...l&&{[T?"backgroundColor":"borderColor"]:l}},children:a})}S.memo(tCe);const rCe=e=>e.domNode?.querySelector(".react-flow__renderer");function nCe({children:e}){const r=Dt(rCe);return r?Va.createPortal(e,r):null}const oCe=(e,r)=>e?.internals.positionAbsolute.x!==r?.internals.positionAbsolute.x||e?.internals.positionAbsolute.y!==r?.internals.positionAbsolute.y||e?.measured.width!==r?.measured.width||e?.measured.height!==r?.measured.height||e?.selected!==r?.selected||e?.internals.z!==r?.internals.z,iCe=(e,r)=>{if(e.size!==r.size)return!1;for(const[n,o]of e)if(oCe(o,r.get(n)))return!1;return!0},aCe=e=>({x:e.transform[0],y:e.transform[1],zoom:e.transform[2],selectedNodesCount:e.nodes.filter(r=>r.selected).length});function r9({nodeId:e,children:r,className:n,style:o,isVisible:i,position:a=Ue.Top,offset:l=10,align:s="center",...c}){const d=e9(),u=S.useCallback($=>(Array.isArray(e)?e:[e||d||""]).reduce((R,T)=>{const A=$.nodeLookup.get(T);return A&&R.set(A.id,A),R},new Map),[e,d]),p=Dt(u,iCe),{x:f,y:m,zoom:v,selectedNodesCount:w}=Dt(aCe,jr);if(!(typeof i=="boolean"?i:p.size===1&&p.values().next().value?.selected&&w===1)||!p.size)return null;const x=nf(p),k=Array.from(p.values()),C=Math.max(...k.map($=>$.internals.z+1)),_={position:"absolute",transform:r9e(x,{x:f,y:m,zoom:v},a,l,s),zIndex:C,...o};return y.jsx(nCe,{children:y.jsx("div",{style:_,className:dn(["react-flow__node-toolbar",n]),...c,"data-id":k.reduce(($,R)=>`${$}${R.id} `,"").trim(),children:r})})}const{getOwnPropertyNames:lCe,getOwnPropertySymbols:sCe}=Object,{hasOwnProperty:cCe}=Object.prototype;function n9(e,r){return function(n,o,i){return e(n,o,i)&&r(n,o,i)}}function cw(e){return function(r,n,o){if(!r||!n||typeof r!="object"||typeof n!="object")return e(r,n,o);const{cache:i}=o,a=i.get(r),l=i.get(n);if(a&&l)return a===n&&l===r;i.set(r,n),i.set(n,r);const s=e(r,n,o);return i.delete(r),i.delete(n),s}}function dCe(e){return e?.[Symbol.toStringTag]}function kq(e){return lCe(e).concat(sCe(e))}const uCe=Object.hasOwn||((e,r)=>cCe.call(e,r));function Ju(e,r){return e===r||!e&&!r&&e!==e&&r!==r}const pCe="__v",hCe="__o",fCe="_owner",{getOwnPropertyDescriptor:_q,keys:Sq}=Object;function gCe(e,r){return e.byteLength===r.byteLength&&dw(new Uint8Array(e),new Uint8Array(r))}function mCe(e,r,n){let o=e.length;if(r.length!==o)return!1;for(;o-- >0;)if(!n.equals(e[o],r[o],o,o,e,r,n))return!1;return!0}function yCe(e,r){return e.byteLength===r.byteLength&&dw(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(r.buffer,r.byteOffset,r.byteLength))}function vCe(e,r){return Ju(e.getTime(),r.getTime())}function bCe(e,r){return e.name===r.name&&e.message===r.message&&e.cause===r.cause&&e.stack===r.stack}function xCe(e,r){return e===r}function Eq(e,r,n){const o=e.size;if(o!==r.size)return!1;if(!o)return!0;const i=new Array(o),a=e.entries();let l,s,c=0;for(;(l=a.next())&&!l.done;){const d=r.entries();let u=!1,p=0;for(;(s=d.next())&&!s.done;){if(i[p]){p++;continue}const f=l.value,m=s.value;if(n.equals(f[0],m[0],c,p,e,r,n)&&n.equals(f[1],m[1],f[0],m[0],e,r,n)){u=i[p]=!0;break}p++}if(!u)return!1;c++}return!0}const wCe=Ju;function kCe(e,r,n){const o=Sq(e);let i=o.length;if(Sq(r).length!==i)return!1;for(;i-- >0;)if(!$q(e,r,n,o[i]))return!1;return!0}function K1(e,r,n){const o=kq(e);let i=o.length;if(kq(r).length!==i)return!1;let a,l,s;for(;i-- >0;)if(a=o[i],!$q(e,r,n,a)||(l=_q(e,a),s=_q(r,a),(l||s)&&(!l||!s||l.configurable!==s.configurable||l.enumerable!==s.enumerable||l.writable!==s.writable)))return!1;return!0}function _Ce(e,r){return Ju(e.valueOf(),r.valueOf())}function SCe(e,r){return e.source===r.source&&e.flags===r.flags}function Cq(e,r,n){const o=e.size;if(o!==r.size)return!1;if(!o)return!0;const i=new Array(o),a=e.values();let l,s;for(;(l=a.next())&&!l.done;){const c=r.values();let d=!1,u=0;for(;(s=c.next())&&!s.done;){if(!i[u]&&n.equals(l.value,s.value,l.value,s.value,e,r,n)){d=i[u]=!0;break}u++}if(!d)return!1}return!0}function dw(e,r){let n=e.byteLength;if(r.byteLength!==n||e.byteOffset!==r.byteOffset)return!1;for(;n-- >0;)if(e[n]!==r[n])return!1;return!0}function ECe(e,r){return e.hostname===r.hostname&&e.pathname===r.pathname&&e.protocol===r.protocol&&e.port===r.port&&e.hash===r.hash&&e.username===r.username&&e.password===r.password}function $q(e,r,n,o){return(o===fCe||o===hCe||o===pCe)&&(e.$$typeof||r.$$typeof)?!0:uCe(r,o)&&n.equals(e[o],r[o],o,o,e,r,n)}const CCe="[object ArrayBuffer]",$Ce="[object Arguments]",RCe="[object Boolean]",zCe="[object DataView]",TCe="[object Date]",jCe="[object Error]",ACe="[object Map]",DCe="[object Number]",PCe="[object Object]",MCe="[object RegExp]",NCe="[object Set]",BCe="[object String]",ICe={"[object Int8Array]":!0,"[object Uint8Array]":!0,"[object Uint8ClampedArray]":!0,"[object Int16Array]":!0,"[object Uint16Array]":!0,"[object Int32Array]":!0,"[object Uint32Array]":!0,"[object Float16Array]":!0,"[object Float32Array]":!0,"[object Float64Array]":!0,"[object BigInt64Array]":!0,"[object BigUint64Array]":!0},OCe="[object URL]",LCe=Object.prototype.toString;function FCe({areArrayBuffersEqual:e,areArraysEqual:r,areDataViewsEqual:n,areDatesEqual:o,areErrorsEqual:i,areFunctionsEqual:a,areMapsEqual:l,areNumbersEqual:s,areObjectsEqual:c,arePrimitiveWrappersEqual:d,areRegExpsEqual:u,areSetsEqual:p,areTypedArraysEqual:f,areUrlsEqual:m,unknownTagComparators:v}){return function(w,x,k){if(w===x)return!0;if(w==null||x==null)return!1;const C=typeof w;if(C!==typeof x)return!1;if(C!=="object")return C==="number"?s(w,x,k):C==="function"?a(w,x,k):!1;const _=w.constructor;if(_!==x.constructor)return!1;if(_===Object)return c(w,x,k);if(Array.isArray(w))return r(w,x,k);if(_===Date)return o(w,x,k);if(_===RegExp)return u(w,x,k);if(_===Map)return l(w,x,k);if(_===Set)return p(w,x,k);const $=LCe.call(w);if($===TCe)return o(w,x,k);if($===MCe)return u(w,x,k);if($===ACe)return l(w,x,k);if($===NCe)return p(w,x,k);if($===PCe)return typeof w.then!="function"&&typeof x.then!="function"&&c(w,x,k);if($===OCe)return m(w,x,k);if($===jCe)return i(w,x,k);if($===$Ce)return c(w,x,k);if(ICe[$])return f(w,x,k);if($===CCe)return e(w,x,k);if($===zCe)return n(w,x,k);if($===RCe||$===DCe||$===BCe)return d(w,x,k);if(v){let R=v[$];if(!R){const T=dCe(w);T&&(R=v[T])}if(R)return R(w,x,k)}return!1}}function VCe({circular:e,createCustomConfig:r,strict:n}){let o={areArrayBuffersEqual:gCe,areArraysEqual:n?K1:mCe,areDataViewsEqual:yCe,areDatesEqual:vCe,areErrorsEqual:bCe,areFunctionsEqual:xCe,areMapsEqual:n?n9(Eq,K1):Eq,areNumbersEqual:wCe,areObjectsEqual:n?K1:kCe,arePrimitiveWrappersEqual:_Ce,areRegExpsEqual:SCe,areSetsEqual:n?n9(Cq,K1):Cq,areTypedArraysEqual:n?n9(dw,K1):dw,areUrlsEqual:ECe,unknownTagComparators:void 0};if(r&&(o=Object.assign({},o,r(o))),e){const i=cw(o.areArraysEqual),a=cw(o.areMapsEqual),l=cw(o.areObjectsEqual),s=cw(o.areSetsEqual);o=Object.assign({},o,{areArraysEqual:i,areMapsEqual:a,areObjectsEqual:l,areSetsEqual:s})}return o}function qCe(e){return function(r,n,o,i,a,l,s){return e(r,n,s)}}function HCe({circular:e,comparator:r,createState:n,equals:o,strict:i}){if(n)return function(l,s){const{cache:c=e?new WeakMap:void 0,meta:d}=n();return r(l,s,{cache:c,equals:o,meta:d,strict:i})};if(e)return function(l,s){return r(l,s,{cache:new WeakMap,equals:o,meta:void 0,strict:i})};const a={cache:void 0,equals:o,meta:void 0,strict:i};return function(l,s){return r(l,s,a)}}const tt=cd();cd({strict:!0}),cd({circular:!0}),cd({circular:!0,strict:!0});const Ir=cd({createInternalComparator:()=>Ju});cd({strict:!0,createInternalComparator:()=>Ju}),cd({circular:!0,createInternalComparator:()=>Ju}),cd({circular:!0,createInternalComparator:()=>Ju,strict:!0});function cd(e={}){const{circular:r=!1,createInternalComparator:n,createState:o,strict:i=!1}=e,a=VCe(e),l=FCe(a),s=n?n(l):qCe(l);return HCe({circular:r,comparator:l,createState:o,equals:s,strict:i})}function UCe(e,r,n){let o=i=>e(i,...r);return n===void 0?o:Object.assign(o,{lazy:n,lazyArgs:r})}function nr(e,r,n){let o=e.length-r.length;if(o===0)return e(...r);if(o===1)return UCe(e,r,n);throw Error("Wrong number of arguments")}const WCe=e=>(r,n)=>{if(n===0)return e(r);if(!Number.isInteger(n))throw TypeError(`precision must be an integer: ${n.toString()}`);if(n>15||n<-15)throw RangeError("precision must be between -15 and 15");if(Number.isNaN(r)||!Number.isFinite(r))return e(r);let o=Rq(r,n),i=e(o);return Rq(i,-n)};function Rq(e,r){let[n,o]=e.toString().split("e"),i=(o===void 0?0:Number.parseInt(o,10))+r,a=`${n}e${i.toString()}`;return Number.parseFloat(a)}function GCe(...e){return nr(WCe(Math.ceil),e)}function ta(...e){return nr(YCe,e)}const YCe=(e,{min:r,max:n})=>r!==void 0&&en?n:e;function XCe(...e){return nr(KCe,e)}const KCe=(e,r)=>[...e,...r],Z1={done:!1,hasNext:!1},ZCe=e=>({hasNext:!0,next:e,done:!1});function Jr(e,...r){let n=e,o=r.map(a=>"lazy"in a?QCe(a):void 0),i=0;for(;iJr(i,o),o)}throw Error("Wrong number of arguments")}function e$e(...e){return Tq(t$e,e)}function t$e(e){if(e.length===0)return ZCe;let r=new Map;for(let n of e)r.set(n,(r.get(n)??0)+1);return n=>{let o=r.get(n);return o===void 0||o===0?{done:!1,hasNext:!0,next:n}:(r.set(n,o-1),Z1)}}function xn(...e){return nr(r$e,e)}const r$e=(e,r)=>e.length>=r,jq={asc:(e,r)=>e>r,desc:(e,r)=>ee(a,i)}function o9(e,r,...n){let o=typeof e=="function"?e:e[0],i=typeof e=="function"?"asc":e[1],{[i]:a}=jq,l=r===void 0?void 0:o9(r,...n);return(s,c)=>{let d=o(s),u=o(c);return a(d,u)?1:a(u,d)?-1:l?.(s,c)??0}}function o$e(e){if(Aq(e))return!0;if(typeof e!="object"||!Array.isArray(e))return!1;let[r,n,...o]=e;return Aq(r)&&typeof n=="string"&&n in jq&&o.length===0}const Aq=e=>typeof e=="function"&&e.length===1;function uw(...e){return nr(Object.entries,e)}function ep(...e){return nr(i$e,e,a$e)}const i$e=(e,r)=>e.filter(r),a$e=e=>(r,n,o)=>e(r,n,o)?{done:!1,hasNext:!0,next:r}:Z1,Dq=e=>Object.assign(e,{single:!0});function Q1(...e){return nr(l$e,e,Dq(s$e))}const l$e=(e,r)=>e.find(r),s$e=e=>(r,n,o)=>e(r,n,o)?{done:!0,hasNext:!0,next:r}:Z1;function hf(...e){return nr(c$e,e,Dq(d$e))}const c$e=([e])=>e,d$e=()=>u$e,u$e=e=>({hasNext:!0,next:e,done:!0});function Pq(...e){return nr(p$e,e,h$e)}const p$e=(e,r)=>e.flatMap(r),h$e=e=>(r,n,o)=>{let i=e(r,n,o);return Array.isArray(i)?{done:!1,hasNext:!0,hasMany:!0,next:i}:{done:!1,hasNext:!0,next:i}};function f$e(...e){return nr(g$e,e)}function g$e(e,r){for(let[n,o]of Object.entries(e))r(o,n,e);return e}function m$e(...e){return nr(y$e,e)}const y$e=(e,r)=>{let n=Object.create(null);for(let o=0;otypeof e=="function";function _$e(e){return e!==null}function Bq(e){return e!=null}function S$e(e){return r=>!e(r)}function ty(e){return e==null}function Iq(e){return typeof e=="number"&&!Number.isNaN(e)}function a9(e){if(typeof e!="object"||!e)return!1;let r=Object.getPrototypeOf(e);return r===null||r===Object.prototype}function Oq(...e){return nr(E$e,e)}function E$e(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||!e||typeof r!="object"||!r)return!1;if(e instanceof Map&&r instanceof Map)return C$e(e,r);if(e instanceof Set&&r instanceof Set)return $$e(e,r);let n=Object.keys(e);if(n.length!==Object.keys(r).length)return!1;for(let o of n){if(!Object.hasOwn(r,o))return!1;let{[o]:i}=e,{[o]:a}=r;if(i!==a||!Object.is(i,a))return!1}return!0}function C$e(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e){let i=r.get(n);if(o!==i||!Object.is(o,i))return!1}return!0}function $$e(e,r){if(e.size!==r.size)return!1;for(let n of e)if(!r.has(n))return!1;return!0}function pw(e){return typeof e=="string"}function Zn(e){return!!e}function Lq(...e){return nr(R$e,e)}const R$e=(e,r)=>e.join(r);function l9(...e){return nr(Object.keys,e)}function dd(...e){return nr(z$e,e)}const z$e=e=>e.at(-1);function un(...e){return nr(T$e,e,j$e)}const T$e=(e,r)=>e.map(r),j$e=e=>(r,n,o)=>({done:!1,hasNext:!0,next:e(r,n,o)});function hw(...e){return nr(A$e,e)}function A$e(e,r){let n={};for(let[o,i]of e.entries()){let[a,l]=r(i,o,e);n[a]=l}return n}function D$e(...e){return nr(P$e,e)}function P$e(e,r){let n={};for(let[o,i]of Object.entries(e))n[o]=r(i,o,e);return n}function Fq(...e){return nr(Vq,e)}function Vq(e,r){let n={...e,...r};for(let o in r){if(!(o in e))continue;let{[o]:i}=e;if(!a9(i))continue;let{[o]:a}=r;a9(a)&&(n[o]=Vq(i,a))}return n}function ud(...e){return nr(M$e,e)}function M$e(e,r){if(!xn(r,1))return{...e};if(!xn(r,2)){let{[r[0]]:o,...i}=e;return i}let n={...e};for(let o of r)delete n[o];return n}function N$e(...e){return nr(B$e,e)}function B$e(e,r){let n={...e};for(let[o,i]of Object.entries(n))r(i,o,e)&&delete n[o];return n}function fw(...e){return nr(I$e,e)}const I$e=e=>e.length===1?e[0]:void 0;function qq(...e){return nr(O$e,e)}const O$e=(e,r)=>{let n=[[],[]];for(let[o,i]of e.entries())r(i,o,e)?n[0].push(i):n[1].push(i);return n};function Hq(...e){return nr(L$e,e)}function L$e(e,r){let n={};for(let o of r)o in e&&(n[o]=e[o]);return n}function ry(...e){return nr(F$e,e)}function F$e(e,r){let n={};for(let[o,i]of Object.entries(e))r(i,o,e)&&(n[o]=i);return n}function rp(e,...r){return typeof e=="string"||typeof e=="number"||typeof e=="symbol"?n=>Uq(n,e,...r):Uq(e,...r)}function Uq(e,...r){let n=e;for(let o of r){if(n==null)return;n=n[o]}return n}function V$e(...e){return nr(q$e,e)}function q$e(e,r){let n=[];for(let o=e;oe.reduce(r,n);function U$e(...e){return nr(W$e,e)}function W$e(e){return[...e].reverse()}function G$e(...e){return nr(Y$e,e)}function Y$e(e,r){let n=[...e];return n.sort(r),n}function mw(...e){return n$e(X$e,e)}const X$e=(e,r)=>[...e].sort(r);function Wq(...e){return nr(K$e,e)}function K$e(e,r){return r(e),e}function yw(...e){return Tq(Z$e,e)}function Z$e(){let e=new Set;return r=>e.has(r)?Z1:(e.add(r),{done:!1,hasNext:!0,next:r})}let Ja=[],pd=0;const vw=4,Q$e=e=>{let r=[],n={get(){return n.lc||n.listen(()=>{})(),n.value},lc:0,listen(o){return n.lc=r.push(o),()=>{for(let a=pd+vw;a"u")return gRe;var r=mRe(e),n=document.documentElement.clientWidth,o=window.innerWidth;return{left:r[0],top:r[1],right:r[2],gap:Math.max(0,o-n+r[2]-r[0])}},vRe=Zq(),ff="data-scroll-locked",bRe=function(e,r,n,o){var i=e.left,a=e.top,l=e.right,s=e.gap;return n===void 0&&(n="margin"),` .`.concat(eRe,` { overflow: hidden `).concat(o,`; padding-right: `).concat(s,"px ").concat(o,`; @@ -90,25 +90,25 @@ function Lge(e,r){for(var n=0;ns)return!0}o=o.parentNode}while(o&&o!==n.body);return!1},ERe=function(e){var r=e.scrollTop,n=e.scrollHeight,o=e.clientHeight;return[r,n,o]},CRe=function(e){var r=e.scrollLeft,n=e.scrollWidth,o=e.clientWidth;return[r,n,o]},tH=function(e,r){return e==="v"?_Re(r):SRe(r)},rH=function(e,r){return e==="v"?ERe(r):CRe(r)},$Re=function(e,r){return e==="h"&&r==="rtl"?-1:1},RRe=function(e,r,n,o,i){var a=$Re(e,window.getComputedStyle(r).direction),l=a*o,s=n.target,c=r.contains(s),d=!1,u=l>0,p=0,f=0;do{if(!s)break;var g=rH(e,s),v=g[0],w=g[1],x=g[2],k=w-x-a*v;(v||k)&&tH(e,s)&&(p+=k,f+=v);var C=s.parentNode;s=C&&C.nodeType===Node.DOCUMENT_FRAGMENT_NODE?C.host:C}while(!c&&s!==document.body||c&&(r.contains(s)||r===s));return(u&&Math.abs(p)<1||!u&&Math.abs(f)<1)&&(d=!0),d},_w=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},nH=function(e){return[e.deltaX,e.deltaY]},oH=function(e){return e&&"current"in e?e.current:e},zRe=function(e,r){return e[0]===r[0]&&e[1]===r[1]},TRe=function(e){return` +`)},Qq=function(){var e=parseInt(document.body.getAttribute(ff)||"0",10);return isFinite(e)?e:0},xRe=function(){S.useEffect(function(){return document.body.setAttribute(ff,(Qq()+1).toString()),function(){var e=Qq()-1;e<=0?document.body.removeAttribute(ff):document.body.setAttribute(ff,e.toString())}},[])},wRe=function(e){var r=e.noRelative,n=e.noImportant,o=e.gapMode,i=o===void 0?"margin":o;xRe();var a=S.useMemo(function(){return yRe(i)},[i]);return S.createElement(vRe,{styles:bRe(a,!r,i,n?"":"!important")})},u9=!1;if(typeof window<"u")try{var kw=Object.defineProperty({},"passive",{get:function(){return u9=!0,!0}});window.addEventListener("test",kw,kw),window.removeEventListener("test",kw,kw)}catch{u9=!1}var gf=u9?{passive:!1}:!1,kRe=function(e){return e.tagName==="TEXTAREA"},Jq=function(e,r){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[r]!=="hidden"&&!(n.overflowY===n.overflowX&&!kRe(e)&&n[r]==="visible")},_Re=function(e){return Jq(e,"overflowY")},SRe=function(e){return Jq(e,"overflowX")},eH=function(e,r){var n=r.ownerDocument,o=r;do{typeof ShadowRoot<"u"&&o instanceof ShadowRoot&&(o=o.host);var i=tH(e,o);if(i){var a=rH(e,o),l=a[1],s=a[2];if(l>s)return!0}o=o.parentNode}while(o&&o!==n.body);return!1},ERe=function(e){var r=e.scrollTop,n=e.scrollHeight,o=e.clientHeight;return[r,n,o]},CRe=function(e){var r=e.scrollLeft,n=e.scrollWidth,o=e.clientWidth;return[r,n,o]},tH=function(e,r){return e==="v"?_Re(r):SRe(r)},rH=function(e,r){return e==="v"?ERe(r):CRe(r)},$Re=function(e,r){return e==="h"&&r==="rtl"?-1:1},RRe=function(e,r,n,o,i){var a=$Re(e,window.getComputedStyle(r).direction),l=a*o,s=n.target,c=r.contains(s),d=!1,u=l>0,p=0,f=0;do{if(!s)break;var m=rH(e,s),v=m[0],w=m[1],x=m[2],k=w-x-a*v;(v||k)&&tH(e,s)&&(p+=k,f+=v);var C=s.parentNode;s=C&&C.nodeType===Node.DOCUMENT_FRAGMENT_NODE?C.host:C}while(!c&&s!==document.body||c&&(r.contains(s)||r===s));return(u&&Math.abs(p)<1||!u&&Math.abs(f)<1)&&(d=!0),d},_w=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},nH=function(e){return[e.deltaX,e.deltaY]},oH=function(e){return e&&"current"in e?e.current:e},zRe=function(e,r){return e[0]===r[0]&&e[1]===r[1]},TRe=function(e){return` .block-interactivity-`.concat(e,` {pointer-events: none;} .allow-interactivity-`).concat(e,` {pointer-events: all;} -`)},jRe=0,gf=[];function ARe(e){var r=S.useRef([]),n=S.useRef([0,0]),o=S.useRef(),i=S.useState(jRe++)[0],a=S.useState(Zq)[0],l=S.useRef(e);S.useEffect(function(){l.current=e},[e]),S.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(i));var w=J$e([e.lockRef.current],(e.shards||[]).map(oH)).filter(Boolean);return w.forEach(function(x){return x.classList.add("allow-interactivity-".concat(i))}),function(){document.body.classList.remove("block-interactivity-".concat(i)),w.forEach(function(x){return x.classList.remove("allow-interactivity-".concat(i))})}}},[e.inert,e.lockRef.current,e.shards]);var s=S.useCallback(function(w,x){if("touches"in w&&w.touches.length===2||w.type==="wheel"&&w.ctrlKey)return!l.current.allowPinchZoom;var k=_w(w),C=n.current,_="deltaX"in w?w.deltaX:C[0]-k[0],$="deltaY"in w?w.deltaY:C[1]-k[1],R,T=w.target,A=Math.abs(_)>Math.abs($)?"h":"v";if("touches"in w&&A==="h"&&T.type==="range")return!1;var z=eH(A,T);if(!z)return!0;if(z?R=A:(R=A==="v"?"h":"v",z=eH(A,T)),!z)return!1;if(!o.current&&"changedTouches"in w&&(_||$)&&(o.current=R),!R)return!0;var j=o.current||R;return RRe(j,x,w,j==="h"?_:$)},[]),c=S.useCallback(function(w){var x=w;if(!(!gf.length||gf[gf.length-1]!==a)){var k="deltaY"in x?nH(x):_w(x),C=r.current.filter(function(R){return R.name===x.type&&(R.target===x.target||x.target===R.shadowParent)&&zRe(R.delta,k)})[0];if(C&&C.should){x.cancelable&&x.preventDefault();return}if(!C){var _=(l.current.shards||[]).map(oH).filter(Boolean).filter(function(R){return R.contains(x.target)}),$=_.length>0?s(x,_[0]):!l.current.noIsolation;$&&x.cancelable&&x.preventDefault()}}},[]),d=S.useCallback(function(w,x,k,C){var _={name:w,delta:x,target:k,should:C,shadowParent:DRe(k)};r.current.push(_),setTimeout(function(){r.current=r.current.filter(function($){return $!==_})},1)},[]),u=S.useCallback(function(w){n.current=_w(w),o.current=void 0},[]),p=S.useCallback(function(w){d(w.type,nH(w),w.target,s(w,e.lockRef.current))},[]),f=S.useCallback(function(w){d(w.type,_w(w),w.target,s(w,e.lockRef.current))},[]);S.useEffect(function(){return gf.push(a),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:f}),document.addEventListener("wheel",c,mf),document.addEventListener("touchmove",c,mf),document.addEventListener("touchstart",u,mf),function(){gf=gf.filter(function(w){return w!==a}),document.removeEventListener("wheel",c,mf),document.removeEventListener("touchmove",c,mf),document.removeEventListener("touchstart",u,mf)}},[]);var g=e.removeScrollBar,v=e.inert;return S.createElement(S.Fragment,null,v?S.createElement(a,{styles:TRe(i)}):null,g?S.createElement(wRe,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function DRe(e){for(var r=null;e!==null;)e instanceof ShadowRoot&&(r=e.host,e=e.host),e=e.parentNode;return r}const MRe=sRe(Kq,ARe);var ny=S.forwardRef(function(e,r){return S.createElement(ww,Yl({},e,{ref:r,sideCar:MRe}))});ny.classNames=ww.classNames;function So(e){return Object.keys(e)}function p9(e){return e&&typeof e=="object"&&!Array.isArray(e)}function h9(e,r){const n={...e},o=r;return p9(e)&&p9(r)&&Object.keys(r).forEach(i=>{p9(o[i])&&i in e?n[i]=h9(n[i],o[i]):n[i]=o[i]}),n}function NRe(e){return e.replace(/[A-Z]/g,r=>`-${r.toLowerCase()}`)}function PRe(e){return typeof e!="string"||!e.includes("var(--mantine-scale)")?e:e.match(/^calc\((.*?)\)$/)?.[1].split("*")[0].trim()}function f9(e){const r=PRe(e);return typeof r=="number"?r:typeof r=="string"?r.includes("calc")||r.includes("var")?r:r.includes("px")?Number(r.replace("px","")):r.includes("rem")?Number(r.replace("rem",""))*16:r.includes("em")?Number(r.replace("em",""))*16:Number(r):NaN}function iH(e){return e==="0rem"?"0rem":`calc(${e} * var(--mantine-scale))`}function aH(e,{shouldScale:r=!1}={}){function n(o){if(o===0||o==="0")return`0${e}`;if(typeof o=="number"){const i=`${o/16}${e}`;return r?iH(i):i}if(typeof o=="string"){if(o===""||o.startsWith("calc(")||o.startsWith("clamp(")||o.includes("rgba("))return o;if(o.includes(","))return o.split(",").map(a=>n(a)).join(",");if(o.includes(" "))return o.split(" ").map(a=>n(a)).join(" ");const i=o.replace("px","");if(!Number.isNaN(Number(i))){const a=`${Number(i)/16}${e}`;return r?iH(a):a}}return o}return n}const $e=aH("rem",{shouldScale:!0}),lH=aH("em");function yf(e){return Object.keys(e).reduce((r,n)=>(e[n]!==void 0&&(r[n]=e[n]),r),{})}function sH(e){if(typeof e=="number")return!0;if(typeof e=="string"){if(e.startsWith("calc(")||e.startsWith("var(")||e.includes(" ")&&e.trim()!=="")return!0;const r=/^[+-]?[0-9]+(\.[0-9]+)?(px|em|rem|ex|ch|lh|rlh|vw|vh|vmin|vmax|vb|vi|svw|svh|lvw|lvh|dvw|dvh|cm|mm|in|pt|pc|q|cqw|cqh|cqi|cqb|cqmin|cqmax|%)?$/;return e.trim().split(/\s+/).every(n=>r.test(n))}return!1}function Sw(e){return Array.isArray(e)||e===null?!1:typeof e=="object"?e.type!==S.Fragment:!1}function na(e){const r=S.createContext(null);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>{const n=S.useContext(r);if(n===null)throw new Error(e);return n}]}function oy(e=null){const r=S.createContext(e);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>S.useContext(r)]}function cH(e,r){return n=>{if(typeof n!="string"||n.trim().length===0)throw new Error(r);return`${e}-${n}`}}function vf(e,r){let n=e;for(;(n=n.parentElement)&&!n.matches(r););return n}function BRe(e,r,n){for(let o=e-1;o>=0;o-=1)if(!r[o].disabled)return o;if(n){for(let o=r.length-1;o>-1;o-=1)if(!r[o].disabled)return o}return e}function IRe(e,r,n){for(let o=e+1;o{n?.(s);const c=Array.from(vf(s.currentTarget,e)?.querySelectorAll(r)||[]).filter(v=>ORe(s.currentTarget,v,e)),d=c.findIndex(v=>s.currentTarget===v),u=IRe(d,c,o),p=BRe(d,c,o),f=a==="rtl"?p:u,g=a==="rtl"?u:p;switch(s.key){case"ArrowRight":{l==="horizontal"&&(s.stopPropagation(),s.preventDefault(),c[f].focus(),i&&c[f].click());break}case"ArrowLeft":{l==="horizontal"&&(s.stopPropagation(),s.preventDefault(),c[g].focus(),i&&c[g].click());break}case"ArrowUp":{l==="vertical"&&(s.stopPropagation(),s.preventDefault(),c[p].focus(),i&&c[p].click());break}case"ArrowDown":{l==="vertical"&&(s.stopPropagation(),s.preventDefault(),c[u].focus(),i&&c[u].click());break}case"Home":{s.stopPropagation(),s.preventDefault(),!c[0].disabled&&c[0].focus();break}case"End":{s.stopPropagation(),s.preventDefault();const v=c.length-1;!c[v].disabled&&c[v].focus();break}}}}const LRe={app:100,modal:200,popover:300,overlay:400,max:9999};function Ew(e){return LRe[e]}const dH=()=>{};function FRe(e,r={active:!0}){return typeof e!="function"||!r.active?r.onKeyDown||dH:n=>{n.key==="Escape"&&(e(n),r.onTrigger?.())}}function dr(e,r="size",n=!0){if(e!==void 0)return sH(e)?n?$e(e):e:`var(--${r}-${e})`}function Gs(e){return dr(e,"mantine-spacing")}function wn(e){return e===void 0?"var(--mantine-radius-default)":dr(e,"mantine-radius")}function Eo(e){return dr(e,"mantine-font-size")}function VRe(e){return dr(e,"mantine-line-height",!1)}function uH(e){if(e)return dr(e,"mantine-shadow",!1)}function kn(e,r){return n=>{e?.(n),r?.(n)}}function qRe(e,r){return e in r?f9(r[e]):f9(e)}function pH(e,r){const n=e.map(o=>({value:o,px:qRe(o,r)}));return n.sort((o,i)=>o.px-i.px),n}function ay(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function HRe(e,r,n){return n?Array.from(vf(n,r)?.querySelectorAll(e)||[]).findIndex(o=>o===n):null}function hd(e,r,n){return r===void 0&&n===void 0?e:r!==void 0&&n===void 0?Math.max(e,r):Math.min(r===void 0&&n!==void 0?e:Math.max(e,r),n)}function m9(e="mantine-"){return`${e}${Math.random().toString(36).slice(2,11)}`}function URe(e,r){if(e===r||Number.isNaN(e)&&Number.isNaN(r))return!0;if(!(e instanceof Object)||!(r instanceof Object))return!1;const n=Object.keys(e),{length:o}=n;if(o!==Object.keys(r).length)return!1;for(let i=0;i{r.current=e}),S.useMemo(()=>((...n)=>r.current?.(...n)),[])}function bf(e,r){const{delay:n,flushOnUnmount:o,leading:i}=typeof r=="number"?{delay:r,flushOnUnmount:!1,leading:!1}:r,a=Qn(e),l=S.useRef(0),s=S.useMemo(()=>{const c=Object.assign((...d)=>{window.clearTimeout(l.current);const u=c._isFirstCall;c._isFirstCall=!1;function p(){window.clearTimeout(l.current),l.current=0,c._isFirstCall=!0}if(i&&u){a(...d);const v=()=>{p()},w=()=>{l.current!==0&&(p(),a(...d))},x=()=>{p()};c.flush=w,c.cancel=x,l.current=window.setTimeout(v,n);return}if(i&&!u){const v=()=>{l.current!==0&&(p(),a(...d))},w=()=>{p()};c.flush=v,c.cancel=w;const x=()=>{p()};l.current=window.setTimeout(x,n);return}const f=()=>{l.current!==0&&(p(),a(...d))},g=()=>{p()};c.flush=f,c.cancel=g,l.current=window.setTimeout(f,n)},{flush:()=>{},cancel:()=>{},_isFirstCall:!0});return c},[a,n,i]);return S.useEffect(()=>()=>{o?s.flush():s.cancel()},[s,o]),s}const WRe=["mousedown","touchstart"];function hH(e,r,n){const o=S.useRef(null),i=r||WRe;return S.useEffect(()=>{const a=l=>{const{target:s}=l??{};if(Array.isArray(n)){const c=!document.body.contains(s)&&s?.tagName!=="HTML";n.every(d=>!!d&&!l.composedPath().includes(d))&&!c&&e(l)}else o.current&&!o.current.contains(s)&&e(l)};return i.forEach(l=>document.addEventListener(l,a)),()=>{i.forEach(l=>document.removeEventListener(l,a))}},[o,e,n]),o}function GRe(e={timeout:2e3}){const[r,n]=S.useState(null),[o,i]=S.useState(!1),[a,l]=S.useState(null),s=c=>{window.clearTimeout(a),l(window.setTimeout(()=>i(!1),e.timeout)),i(c)};return{copy:c=>{"clipboard"in navigator?navigator.clipboard.writeText(c).then(()=>s(!0)).catch(d=>n(d)):n(new Error("useClipboard: navigator.clipboard is not supported"))},reset:()=>{i(!1),n(null),window.clearTimeout(a)},error:r,copied:o}}function YRe(e,r){try{return e.addEventListener("change",r),()=>e.removeEventListener("change",r)}catch{return e.addListener(r),()=>e.removeListener(r)}}function XRe(e,r){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(e).matches:!1}function fH(e,r,{getInitialValueInEffect:n}={getInitialValueInEffect:!0}){const[o,i]=S.useState(n?r:XRe(e));return S.useEffect(()=>{try{const a=window.matchMedia(e);return i(a.matches),YRe(a,l=>i(l.matches))}catch{return}},[e]),o||!1}function mH(e,r){return fH("(prefers-color-scheme: dark)",e==="dark",r)?"dark":"light"}function KRe(e,r,n={leading:!1}){const[o,i]=S.useState(e),a=S.useRef(null),l=S.useRef(!0),s=()=>window.clearTimeout(a.current);S.useEffect(()=>s,[]);const c=S.useCallback(d=>{s(),l.current&&n.leading?i(d):a.current=window.setTimeout(()=>{l.current=!0,i(d)},r),l.current=!1},[n.leading]);return[o,c]}function g9(e,r,n={leading:!1}){const[o,i]=S.useState(e),a=S.useRef(!1),l=S.useRef(null),s=S.useRef(!1),c=S.useCallback(()=>window.clearTimeout(l.current),[]);return S.useEffect(()=>{a.current&&(!s.current&&n.leading?(s.current=!0,i(e)):(c(),l.current=window.setTimeout(()=>{s.current=!1,i(e)},r)))},[e,n.leading,r]),S.useEffect(()=>(a.current=!0,c),[]),[o,c]}const xf=typeof document<"u"?S.useLayoutEffect:S.useEffect;function wf(e,r){const n=S.useRef(!1);S.useEffect(()=>()=>{n.current=!1},[]),S.useEffect(()=>{if(n.current)return e();n.current=!0},r)}function ZRe({opened:e,shouldReturnFocus:r=!0}){const n=S.useRef(null),o=()=>{n.current&&"focus"in n.current&&typeof n.current.focus=="function"&&n.current?.focus({preventScroll:!0})};return wf(()=>{let i=-1;const a=l=>{l.key==="Tab"&&window.clearTimeout(i)};return document.addEventListener("keydown",a),e?n.current=document.activeElement:r&&(i=window.setTimeout(o,10)),()=>{window.clearTimeout(i),document.removeEventListener("keydown",a)}},[e,r]),o}const QRe=/input|select|textarea|button|object/,gH="a, input, select, textarea, button, object, [tabindex]";function JRe(e){return e.style.display==="none"}function eze(e){if(e.getAttribute("aria-hidden")||e.getAttribute("hidden")||e.getAttribute("type")==="hidden")return!1;let r=e;for(;r&&!(r===document.body||r.nodeType===11);){if(JRe(r))return!1;r=r.parentNode}return!0}function yH(e){let r=e.getAttribute("tabindex");return r===null&&(r=void 0),parseInt(r,10)}function y9(e){const r=e.nodeName.toLowerCase(),n=!Number.isNaN(yH(e));return(QRe.test(r)&&!e.disabled||e instanceof HTMLAnchorElement&&e.href||n)&&eze(e)}function vH(e){const r=yH(e);return(Number.isNaN(r)||r>=0)&&y9(e)}function tze(e){return Array.from(e.querySelectorAll(gH)).filter(vH)}function rze(e,r){const n=tze(e);if(!n.length){r.preventDefault();return}const o=n[r.shiftKey?0:n.length-1],i=e.getRootNode();let a=o===i.activeElement||e===i.activeElement;const l=i.activeElement;if(l.tagName==="INPUT"&&l.getAttribute("type")==="radio"&&(a=n.filter(c=>c.getAttribute("type")==="radio"&&c.getAttribute("name")===l.getAttribute("name")).includes(o)),!a)return;r.preventDefault();const s=n[r.shiftKey?n.length-1:0];s&&s.focus()}function bH(e=!0){const r=S.useRef(null),n=i=>{let a=i.querySelector("[data-autofocus]");if(!a){const l=Array.from(i.querySelectorAll(gH));a=l.find(vH)||l.find(y9)||null,!a&&y9(i)&&(a=i)}a&&a.focus({preventScroll:!0})},o=S.useCallback(i=>{e&&i!==null&&r.current!==i&&(i?(setTimeout(()=>{i.getRootNode()&&n(i)}),r.current=i):r.current=null)},[e]);return S.useEffect(()=>{if(!e)return;r.current&&setTimeout(()=>n(r.current));const i=a=>{a.key==="Tab"&&r.current&&rze(r.current,a)};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[e]),o}const nze=Zr.useId||(()=>{});function oze(){const e=nze();return e?`mantine-${e.replace(/:/g,"")}`:""}function oa(e){const r=oze(),[n,o]=S.useState(r);return xf(()=>{o(m9())},[]),typeof e=="string"?e:typeof window>"u"?r:n}function kf(e,r,n){S.useEffect(()=>(window.addEventListener(e,r,n),()=>window.removeEventListener(e,r,n)),[e,r])}function ize(e,r="use-local-storage"){try{return JSON.stringify(e)}catch{throw new Error(`@mantine/hooks ${r}: Failed to serialize the value`)}}function aze(e){try{return e&&JSON.parse(e)}catch{return e}}function lze(e){return{getItem:r=>{try{return window[e].getItem(r)}catch{return console.warn("use-local-storage: Failed to get value from storage, localStorage is blocked"),null}},setItem:(r,n)=>{try{window[e].setItem(r,n)}catch{console.warn("use-local-storage: Failed to set value to storage, localStorage is blocked")}},removeItem:r=>{try{window[e].removeItem(r)}catch{console.warn("use-local-storage: Failed to remove value from storage, localStorage is blocked")}}}}function xH(e,r){const n=e==="localStorage"?"mantine-local-storage":"mantine-session-storage",{getItem:o,setItem:i,removeItem:a}=lze(e);return function({key:l,defaultValue:s,getInitialValueInEffect:c=!0,sync:d=!0,deserialize:u=aze,serialize:p=f=>ize(f,r)}){const f=S.useCallback(k=>{let C;try{C=typeof window>"u"||!(e in window)||window[e]===null||!!k}catch{C=!0}if(C)return s;const _=o(l);return _!==null?u(_):s},[l,s]),[g,v]=S.useState(f(c)),w=S.useCallback(k=>{k instanceof Function?v(C=>{const _=k(C);return i(l,p(_)),queueMicrotask(()=>{window.dispatchEvent(new CustomEvent(n,{detail:{key:l,value:k(C)}}))}),_}):(i(l,p(k)),window.dispatchEvent(new CustomEvent(n,{detail:{key:l,value:k}})),v(k))},[l]),x=S.useCallback(()=>{a(l),v(s),window.dispatchEvent(new CustomEvent(n,{detail:{key:l,value:s}}))},[l,s]);return kf("storage",k=>{d&&k.storageArea===window[e]&&k.key===l&&v(u(k.newValue??void 0))}),kf(n,k=>{d&&k.detail.key===l&&v(k.detail.value)}),S.useEffect(()=>{s!==void 0&&g===void 0&&w(s)},[s,g,w]),S.useEffect(()=>{const k=f();k!==void 0&&w(k)},[l]),[g===void 0?s:g,w,x]}}function sze(e){return xH("localStorage","use-local-storage")(e)}function cze(e){return xH("sessionStorage","use-session-storage")(e)}function v9(e,r){if(typeof e=="function")return e(r);typeof e=="object"&&e!==null&&"current"in e&&(e.current=r)}function wH(...e){const r=new Map;return n=>{if(e.forEach(o=>{const i=v9(o,n);i&&r.set(o,i)}),r.size>0)return()=>{e.forEach(o=>{const i=r.get(o);i&&typeof i=="function"?i():v9(o,null)}),r.clear()}}}function $r(...e){return S.useCallback(wH(...e),e)}function dze(e){return{x:hd(e.x,0,1),y:hd(e.y,0,1)}}function kH(e,r,n="ltr"){const o=S.useRef(!1),i=S.useRef(!1),a=S.useRef(0),[l,s]=S.useState(!1),c=S.useRef(null);return S.useEffect(()=>{o.current=!0},[]),{ref:S.useCallback(d=>{if(c.current&&(c.current(),c.current=null),!d)return;const u=({x:_,y:$})=>{cancelAnimationFrame(a.current),a.current=requestAnimationFrame(()=>{if(o.current&&d){d.style.userSelect="none";const R=d.getBoundingClientRect();if(R.width&&R.height){const T=hd((_-R.left)/R.width,0,1);e({x:n==="ltr"?T:1-T,y:hd(($-R.top)/R.height,0,1)})}}})},p=()=>{document.addEventListener("mousemove",x),document.addEventListener("mouseup",v),document.addEventListener("touchmove",C,{passive:!1}),document.addEventListener("touchend",v)},f=()=>{document.removeEventListener("mousemove",x),document.removeEventListener("mouseup",v),document.removeEventListener("touchmove",C),document.removeEventListener("touchend",v)},g=()=>{!i.current&&o.current&&(i.current=!0,typeof r?.onScrubStart=="function"&&r.onScrubStart(),s(!0),p())},v=()=>{i.current&&o.current&&(i.current=!1,s(!1),f(),setTimeout(()=>{typeof r?.onScrubEnd=="function"&&r.onScrubEnd()},0))},w=_=>{g(),_.preventDefault(),x(_)},x=_=>u({x:_.clientX,y:_.clientY}),k=_=>{_.cancelable&&_.preventDefault(),g(),C(_)},C=_=>{_.cancelable&&_.preventDefault(),u({x:_.changedTouches[0].clientX,y:_.changedTouches[0].clientY})};d.addEventListener("mousedown",w),d.addEventListener("touchstart",k,{passive:!1}),c.current=()=>{d.removeEventListener("mousedown",w),d.removeEventListener("touchstart",k)}},[n,e]),active:l}}function Ys({value:e,defaultValue:r,finalValue:n,onChange:o=()=>{}}){const[i,a]=S.useState(r!==void 0?r:n);return e!==void 0?[e,o,!0]:[i,(s,...c)=>{a(s),o?.(s,...c)},!1]}function _H(e,r){return fH("(prefers-reduced-motion: reduce)",e,r)}function uze(e,r){if(!e||!r)return!1;if(e===r)return!0;if(e.length!==r.length)return!1;for(let n=0;n{r({width:window.innerWidth||0,height:window.innerHeight||0})},[]);return kf("resize",n,SH),kf("orientationchange",n,SH),S.useEffect(n,[]),e}const mze={" ":"space",ArrowLeft:"arrowleft",ArrowRight:"arrowright",ArrowUp:"arrowup",ArrowDown:"arrowdown",Escape:"escape",Esc:"escape",esc:"escape",Enter:"enter",Tab:"tab",Backspace:"backspace",Delete:"delete",Insert:"insert",Home:"home",End:"end",PageUp:"pageup",PageDown:"pagedown","+":"plus","-":"minus","*":"asterisk","/":"slash"};function Cw(e){const r=e.replace("Key","").toLowerCase();return mze[e]||r}function gze(e){const r=e.toLowerCase().split("+").map(a=>a.trim()),n={alt:r.includes("alt"),ctrl:r.includes("ctrl"),meta:r.includes("meta"),mod:r.includes("mod"),shift:r.includes("shift"),plus:r.includes("[plus]")},o=["alt","ctrl","meta","shift","mod"],i=r.find(a=>!o.includes(a));return{...n,key:i==="[plus]"?"+":i}}function yze(e,r,n){const{alt:o,ctrl:i,meta:a,mod:l,shift:s,key:c}=e,{altKey:d,ctrlKey:u,metaKey:p,shiftKey:f,key:g,code:v}=r;if(o!==d)return!1;if(l){if(!u&&!p)return!1}else if(i!==u||a!==p)return!1;return s!==f?!1:!!(c&&(n?Cw(v)===Cw(c):Cw(g??v)===Cw(c)))}function EH(e,r){return n=>yze(gze(e),n,r)}function $w(e){return r=>{const n="nativeEvent"in r?r.nativeEvent:r;e.forEach(([o,i,a={preventDefault:!0,usePhysicalKeys:!1}])=>{EH(o,a.usePhysicalKeys)(n)&&(a.preventDefault&&r.preventDefault(),i(n))})}}function vze(e,r,n=!1){return e.target instanceof HTMLElement?(n||!e.target.isContentEditable)&&!r.includes(e.target.tagName):!0}function bze(e,r=["INPUT","TEXTAREA","SELECT"],n=!1){S.useEffect(()=>{const o=i=>{e.forEach(([a,l,s={preventDefault:!0,usePhysicalKeys:!1}])=>{EH(a,s.usePhysicalKeys)(i)&&vze(i,r,n)&&(s.preventDefault&&i.preventDefault(),l(i))})};return document.documentElement.addEventListener("keydown",o),()=>document.documentElement.removeEventListener("keydown",o)},[e])}function b9(){const[e,r]=S.useState(!1),n=S.useRef(null),o=S.useCallback(()=>{r(!0)},[]),i=S.useCallback(()=>{r(!1)},[]);return{ref:S.useCallback(a=>{n.current&&(n.current.removeEventListener("mouseenter",o),n.current.removeEventListener("mouseleave",i)),a&&(a.addEventListener("mouseenter",o),a.addEventListener("mouseleave",i)),n.current=a},[o,i]),hovered:e}}function xze(e=!1,r={}){const[n,o]=S.useState(e),i=S.useCallback(()=>{o(s=>s||(r.onOpen?.(),!0))},[r.onOpen]),a=S.useCallback(()=>{o(s=>s&&(r.onClose?.(),!1))},[r.onClose]),l=S.useCallback(()=>{n?a():i()},[a,i,n]);return[n,{open:i,close:a,toggle:l}]}function wze(e){return e.currentTarget instanceof HTMLElement&&e.relatedTarget instanceof HTMLElement?e.currentTarget.contains(e.relatedTarget):!1}function kze({onBlur:e,onFocus:r}={}){const[n,o]=S.useState(!1),i=S.useRef(!1),a=S.useRef(null),l=S.useCallback(u=>{o(u),i.current=u},[]),s=S.useCallback(u=>{i.current||(l(!0),r?.(u))},[r]),c=S.useCallback(u=>{i.current&&!wze(u)&&(l(!1),e?.(u))},[e]),d=S.useCallback(u=>{u&&(a.current&&(a.current.removeEventListener("focusin",s),a.current.removeEventListener("focusout",c)),u.addEventListener("focusin",s),u.addEventListener("focusout",c),a.current=u)},[s,c]);return S.useEffect(()=>()=>{a.current&&(a.current.removeEventListener("focusin",s),a.current.removeEventListener("focusout",c))},[]),{ref:d,focused:n}}function CH(e,r,n={autoInvoke:!1}){const o=S.useRef(null),i=S.useCallback((...l)=>{o.current||(o.current=window.setTimeout(()=>{e(l),o.current=null},r))},[r]),a=S.useCallback(()=>{o.current&&(window.clearTimeout(o.current),o.current=null)},[]);return S.useEffect(()=>(n.autoInvoke&&i(),a),[a,i]),{start:i,clear:a}}function $H(e,r,n){const o=S.useRef(null),i=S.useRef(null);return S.useEffect(()=>{const a=typeof n=="function"?n():n;return(a||i.current)&&(o.current=new MutationObserver(e),o.current.observe(a||i.current,r)),()=>{o.current?.disconnect()}},[e,r]),i}function _ze(){const[e,r]=S.useState(!1);return S.useEffect(()=>r(!0),[]),e}function RH(e){const[r,n]=S.useState({history:[e],current:0}),o=S.useCallback(c=>n(d=>{const u=[...d.history.slice(0,d.current+1),c];return{history:u,current:u.length-1}}),[]),i=S.useCallback((c=1)=>n(d=>({history:d.history,current:Math.max(0,d.current-c)})),[]),a=S.useCallback((c=1)=>n(d=>({history:d.history,current:Math.min(d.history.length-1,d.current+c)})),[]),l=S.useCallback(()=>{n({history:[e],current:0})},[e]),s=S.useMemo(()=>({back:i,forward:a,reset:l,set:o}),[i,a,l,o]);return[r.history[r.current],s,r]}function Sze(e,r){const n=Qn(e),o=S.useRef(null),i=S.useRef(null),a=S.useRef(!0),l=S.useRef(r),s=S.useRef(-1),c=()=>window.clearTimeout(s.current),d=S.useCallback((...f)=>{n(...f),o.current=f,i.current=f,a.current=!1},[n]),u=S.useCallback(()=>{o.current&&o.current!==i.current?(d(...o.current),s.current=window.setTimeout(u,l.current)):a.current=!0},[d]),p=S.useCallback((...f)=>{a.current?(d(...f),s.current=window.setTimeout(u,l.current)):o.current=f},[d,u]);return S.useEffect(()=>{l.current=r},[r]),[p,c]}function Eze(e,r){return Sze(e,r)[0]}function Cze(){return typeof process<"u"&&process.env?"production":"development"}function zH(e){const r=new Map;return(...n)=>{const o=JSON.stringify(n);if(r.has(o))return r.get(o);const i=e(...n);return r.set(o,i),i}}function TH(e,r){return r.length===0?e:r.reduce((n,o)=>Math.abs(o-e){Object.entries(n).forEach(([o,i])=>{r[o]?r[o]=el(r[o],i):r[o]=i})}),r}function Tw({theme:e,classNames:r,props:n,stylesCtx:o}){const i=(Array.isArray(r)?r:[r]).map(a=>typeof a=="function"?a(e,n,o):a||$ze);return Rze(i)}function jw({theme:e,styles:r,props:n,stylesCtx:o}){return(Array.isArray(r)?r:[r]).reduce((i,a)=>typeof a=="function"?{...i,...a(e,n,o)}:{...i,...a},{})}const Aw=S.createContext(null);function yd(){const e=S.useContext(Aw);if(!e)throw new Error("[@mantine/core] MantineProvider was not found in tree");return e}function zze(){return yd().cssVariablesResolver}function Tze(){return yd().classNamesPrefix}function np(){return yd().getStyleNonce}function jze(){return yd().withStaticClasses}function Aze(){return yd().headless}function Dze(){return yd().stylesTransform?.sx}function Mze(){return yd().stylesTransform?.styles}function Dw(){return yd().env||"default"}function Nze(e){return/^#?([0-9A-F]{3}){1,2}([0-9A-F]{2})?$/i.test(e)}function Pze(e){let r=e.replace("#","");if(r.length===3){const l=r.split("");r=[l[0],l[0],l[1],l[1],l[2],l[2]].join("")}if(r.length===8){const l=parseInt(r.slice(6,8),16)/255;return{r:parseInt(r.slice(0,2),16),g:parseInt(r.slice(2,4),16),b:parseInt(r.slice(4,6),16),a:l}}const n=parseInt(r,16),o=n>>16&255,i=n>>8&255,a=n&255;return{r:o,g:i,b:a,a:1}}function Bze(e){const[r,n,o,i]=e.replace(/[^0-9,./]/g,"").split(/[/,]/).map(Number);return{r,g:n,b:o,a:i===void 0?1:i}}function Ize(e){const r=/^hsla?\(\s*(\d+)\s*,\s*(\d+%)\s*,\s*(\d+%)\s*(,\s*(0?\.\d+|\d+(\.\d+)?))?\s*\)$/i,n=e.match(r);if(!n)return{r:0,g:0,b:0,a:1};const o=parseInt(n[1],10),i=parseInt(n[2],10)/100,a=parseInt(n[3],10)/100,l=n[5]?parseFloat(n[5]):void 0,s=(1-Math.abs(2*a-1))*i,c=o/60,d=s*(1-Math.abs(c%2-1)),u=a-s/2;let p,f,g;return c>=0&&c<1?(p=s,f=d,g=0):c>=1&&c<2?(p=d,f=s,g=0):c>=2&&c<3?(p=0,f=s,g=d):c>=3&&c<4?(p=0,f=d,g=s):c>=4&&c<5?(p=d,f=0,g=s):(p=s,f=0,g=d),{r:Math.round((p+u)*255),g:Math.round((f+u)*255),b:Math.round((g+u)*255),a:l||1}}function x9(e){return Nze(e)?Pze(e):e.startsWith("rgb")?Bze(e):e.startsWith("hsl")?Ize(e):{r:0,g:0,b:0,a:1}}function Mw(e,r){if(e.startsWith("var("))return`color-mix(in srgb, ${e}, black ${r*100}%)`;const{r:n,g:o,b:i,a}=x9(e),l=1-r,s=c=>Math.round(c*l);return`rgba(${s(n)}, ${s(o)}, ${s(i)}, ${a})`}function ly(e,r){return typeof e.primaryShade=="number"?e.primaryShade:r==="dark"?e.primaryShade.dark:e.primaryShade.light}function w9(e){return e<=.03928?e/12.92:((e+.055)/1.055)**2.4}function Oze(e){const r=e.match(/oklch\((.*?)%\s/);return r?parseFloat(r[1]):null}function Lze(e){if(e.startsWith("oklch("))return(Oze(e)||0)/100;const{r,g:n,b:o}=x9(e),i=r/255,a=n/255,l=o/255,s=w9(i),c=w9(a),d=w9(l);return .2126*s+.7152*c+.0722*d}function sy(e,r=.179){return e.startsWith("var(")?!1:Lze(e)>r}function vd({color:e,theme:r,colorScheme:n}){if(typeof e!="string")throw new Error(`[@mantine/core] Failed to parse color. Expected color to be a string, instead got ${typeof e}`);if(e==="bright")return{color:e,value:n==="dark"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:sy(n==="dark"?r.white:r.black,r.luminanceThreshold),variable:"--mantine-color-bright"};if(e==="dimmed")return{color:e,value:n==="dark"?r.colors.dark[2]:r.colors.gray[7],shade:void 0,isThemeColor:!1,isLight:sy(n==="dark"?r.colors.dark[2]:r.colors.gray[6],r.luminanceThreshold),variable:"--mantine-color-dimmed"};if(e==="white"||e==="black")return{color:e,value:e==="white"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:sy(e==="white"?r.white:r.black,r.luminanceThreshold),variable:`--mantine-color-${e}`};const[o,i]=e.split("."),a=i?Number(i):void 0,l=o in r.colors;if(l){const s=a!==void 0?r.colors[o][a]:r.colors[o][ly(r,n||"light")];return{color:o,value:s,shade:a,isThemeColor:l,isLight:sy(s,r.luminanceThreshold),variable:i?`--mantine-color-${o}-${a}`:`--mantine-color-${o}-filled`}}return{color:e,value:e,isThemeColor:l,isLight:sy(e,r.luminanceThreshold),shade:a,variable:void 0}}function Ci(e,r){const n=vd({color:e||r.primaryColor,theme:r});return n.variable?`var(${n.variable})`:e}function k9(e,r){const n={from:e?.from||r.defaultGradient.from,to:e?.to||r.defaultGradient.to,deg:e?.deg??r.defaultGradient.deg??0},o=Ci(n.from,r),i=Ci(n.to,r);return`linear-gradient(${n.deg}deg, ${o} 0%, ${i} 100%)`}function Xl(e,r){if(typeof e!="string"||r>1||r<0)return"rgba(0, 0, 0, 1)";if(e.startsWith("var(")){const a=(1-r)*100;return`color-mix(in srgb, ${e}, transparent ${a}%)`}if(e.startsWith("oklch"))return e.includes("/")?e.replace(/\/\s*[\d.]+\s*\)/,`/ ${r})`):e.replace(")",` / ${r})`);const{r:n,g:o,b:i}=x9(e);return`rgba(${n}, ${o}, ${i}, ${r})`}const _f=Xl,Fze=({color:e,theme:r,variant:n,gradient:o,autoContrast:i})=>{const a=vd({color:e,theme:r}),l=typeof i=="boolean"?i:r.autoContrast;if(n==="none")return{background:"transparent",hover:"transparent",color:"inherit",border:"none"};if(n==="filled"){const s=l&&a.isLight?"var(--mantine-color-black)":"var(--mantine-color-white)";return a.isThemeColor?a.shade===void 0?{background:`var(--mantine-color-${e}-filled)`,hover:`var(--mantine-color-${e}-filled-hover)`,color:s,border:`${$e(1)} solid transparent`}:{background:`var(--mantine-color-${a.color}-${a.shade})`,hover:`var(--mantine-color-${a.color}-${a.shade===9?8:a.shade+1})`,color:s,border:`${$e(1)} solid transparent`}:{background:e,hover:Mw(e,.1),color:s,border:`${$e(1)} solid transparent`}}if(n==="light"){if(a.isThemeColor){if(a.shade===void 0)return{background:`var(--mantine-color-${e}-light)`,hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${$e(1)} solid transparent`};const s=r.colors[a.color][a.shade];return{background:Xl(s,.1),hover:Xl(s,.12),color:`var(--mantine-color-${a.color}-${Math.min(a.shade,6)})`,border:`${$e(1)} solid transparent`}}return{background:Xl(e,.1),hover:Xl(e,.12),color:e,border:`${$e(1)} solid transparent`}}if(n==="outline")return a.isThemeColor?a.shade===void 0?{background:"transparent",hover:`var(--mantine-color-${e}-outline-hover)`,color:`var(--mantine-color-${e}-outline)`,border:`${$e(1)} solid var(--mantine-color-${e}-outline)`}:{background:"transparent",hover:Xl(r.colors[a.color][a.shade],.05),color:`var(--mantine-color-${a.color}-${a.shade})`,border:`${$e(1)} solid var(--mantine-color-${a.color}-${a.shade})`}:{background:"transparent",hover:Xl(e,.05),color:e,border:`${$e(1)} solid ${e}`};if(n==="subtle"){if(a.isThemeColor){if(a.shade===void 0)return{background:"transparent",hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${$e(1)} solid transparent`};const s=r.colors[a.color][a.shade];return{background:"transparent",hover:Xl(s,.12),color:`var(--mantine-color-${a.color}-${Math.min(a.shade,6)})`,border:`${$e(1)} solid transparent`}}return{background:"transparent",hover:Xl(e,.12),color:e,border:`${$e(1)} solid transparent`}}return n==="transparent"?a.isThemeColor?a.shade===void 0?{background:"transparent",hover:"transparent",color:`var(--mantine-color-${e}-light-color)`,border:`${$e(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:`var(--mantine-color-${a.color}-${Math.min(a.shade,6)})`,border:`${$e(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:e,border:`${$e(1)} solid transparent`}:n==="white"?a.isThemeColor?a.shade===void 0?{background:"var(--mantine-color-white)",hover:Mw(r.white,.01),color:`var(--mantine-color-${e}-filled)`,border:`${$e(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:Mw(r.white,.01),color:`var(--mantine-color-${a.color}-${a.shade})`,border:`${$e(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:Mw(r.white,.01),color:e,border:`${$e(1)} solid transparent`}:n==="gradient"?{background:k9(o,r),hover:k9(o,r),color:"var(--mantine-color-white)",border:"none"}:n==="default"?{background:"var(--mantine-color-default)",hover:"var(--mantine-color-default-hover)",color:"var(--mantine-color-default-color)",border:`${$e(1)} solid var(--mantine-color-default-border)`}:{}},Vze={dark:["#C9C9C9","#b8b8b8","#828282","#696969","#424242","#3b3b3b","#2e2e2e","#242424","#1f1f1f","#141414"],gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]},AH="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji",_9={scale:1,fontSmoothing:!0,focusRing:"auto",white:"#fff",black:"#000",colors:Vze,primaryShade:{light:6,dark:8},primaryColor:"blue",variantColorResolver:Fze,autoContrast:!1,luminanceThreshold:.3,fontFamily:AH,fontFamilyMonospace:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace",respectReducedMotion:!1,cursorType:"default",defaultGradient:{from:"blue",to:"cyan",deg:45},defaultRadius:"sm",activeClassName:"mantine-active",focusClassName:"",headings:{fontFamily:AH,fontWeight:"700",textWrap:"wrap",sizes:{h1:{fontSize:$e(34),lineHeight:"1.3"},h2:{fontSize:$e(26),lineHeight:"1.35"},h3:{fontSize:$e(22),lineHeight:"1.4"},h4:{fontSize:$e(18),lineHeight:"1.45"},h5:{fontSize:$e(16),lineHeight:"1.5"},h6:{fontSize:$e(14),lineHeight:"1.5"}}},fontSizes:{xs:$e(12),sm:$e(14),md:$e(16),lg:$e(18),xl:$e(20)},lineHeights:{xs:"1.4",sm:"1.45",md:"1.55",lg:"1.6",xl:"1.65"},radius:{xs:$e(2),sm:$e(4),md:$e(8),lg:$e(16),xl:$e(32)},spacing:{xs:$e(10),sm:$e(12),md:$e(16),lg:$e(20),xl:$e(32)},breakpoints:{xs:"36em",sm:"48em",md:"62em",lg:"75em",xl:"88em"},shadows:{xs:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), 0 ${$e(1)} ${$e(2)} rgba(0, 0, 0, 0.1)`,sm:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(10)} ${$e(15)} ${$e(-5)}, rgba(0, 0, 0, 0.04) 0 ${$e(7)} ${$e(7)} ${$e(-5)}`,md:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(20)} ${$e(25)} ${$e(-5)}, rgba(0, 0, 0, 0.04) 0 ${$e(10)} ${$e(10)} ${$e(-5)}`,lg:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(28)} ${$e(23)} ${$e(-7)}, rgba(0, 0, 0, 0.04) 0 ${$e(12)} ${$e(12)} ${$e(-7)}`,xl:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(36)} ${$e(28)} ${$e(-7)}, rgba(0, 0, 0, 0.04) 0 ${$e(17)} ${$e(17)} ${$e(-7)}`},other:{},components:{}};function DH(e){return e==="auto"||e==="dark"||e==="light"}function qze({key:e="mantine-color-scheme-value"}={}){let r;return{get:n=>{if(typeof window>"u")return n;try{const o=window.localStorage.getItem(e);return DH(o)?o:n}catch{return n}},set:n=>{try{window.localStorage.setItem(e,n)}catch(o){console.warn("[@mantine/core] Local storage color scheme manager was unable to save color scheme.",o)}},subscribe:n=>{r=o=>{o.storageArea===window.localStorage&&o.key===e&&DH(o.newValue)&&n(o.newValue)},window.addEventListener("storage",r)},unsubscribe:()=>{window.removeEventListener("storage",r)},clear:()=>{window.localStorage.removeItem(e)}}}const Hze="[@mantine/core] MantineProvider: Invalid theme.primaryColor, it accepts only key of theme.colors, learn more – https://mantine.dev/theming/colors/#primary-color",MH="[@mantine/core] MantineProvider: Invalid theme.primaryShade, it accepts only 0-9 integers or an object { light: 0-9, dark: 0-9 }";function S9(e){return e<0||e>9?!1:parseInt(e.toString(),10)===e}function NH(e){if(!(e.primaryColor in e.colors))throw new Error(Hze);if(typeof e.primaryShade=="object"&&(!S9(e.primaryShade.dark)||!S9(e.primaryShade.light)))throw new Error(MH);if(typeof e.primaryShade=="number"&&!S9(e.primaryShade))throw new Error(MH)}function Uze(e,r){if(!r)return NH(e),e;const n=h9(e,r);return r.fontFamily&&!r.headings?.fontFamily&&(n.headings.fontFamily=r.fontFamily),NH(n),n}const E9=S.createContext(null),Wze=()=>S.useContext(E9)||_9;function lo(){const e=S.useContext(E9);if(!e)throw new Error("@mantine/core: MantineProvider was not found in component tree, make sure you have it in your app");return e}function PH({theme:e,children:r,inherit:n=!0}){const o=Wze(),i=S.useMemo(()=>Uze(n?o:_9,e),[e,o,n]);return y.jsx(E9.Provider,{value:i,children:r})}PH.displayName="@mantine/core/MantineThemeProvider";function Gze(){const e=lo(),r=np(),n=So(e.breakpoints).reduce((o,i)=>{const a=e.breakpoints[i].includes("px"),l=f9(e.breakpoints[i]),s=a?`${l-.1}px`:lH(l-.1),c=a?`${l}px`:lH(l);return`${o}@media (max-width: ${s}) {.mantine-visible-from-${i} {display: none !important;}}@media (min-width: ${c}) {.mantine-hidden-from-${i} {display: none !important;}}`},"");return y.jsx("style",{"data-mantine-styles":"classes",nonce:r?.(),dangerouslySetInnerHTML:{__html:n}})}function C9(e){return Object.entries(e).map(([r,n])=>`${r}: ${n};`).join("")}function BH(e,r){const n=r?[r]:[":root",":host"],o=C9(e.variables),i=o?`${n.join(", ")}{${o}}`:"",a=C9(e.dark),l=C9(e.light),s=u=>n.map(p=>p===":host"?`${p}([data-mantine-color-scheme="${u}"])`:`${p}[data-mantine-color-scheme="${u}"]`).join(", "),c=a?`${s("dark")}{${a}}`:"",d=l?`${s("light")}{${l}}`:"";return`${i} +`)},jRe=0,mf=[];function ARe(e){var r=S.useRef([]),n=S.useRef([0,0]),o=S.useRef(),i=S.useState(jRe++)[0],a=S.useState(Zq)[0],l=S.useRef(e);S.useEffect(function(){l.current=e},[e]),S.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(i));var w=J$e([e.lockRef.current],(e.shards||[]).map(oH)).filter(Boolean);return w.forEach(function(x){return x.classList.add("allow-interactivity-".concat(i))}),function(){document.body.classList.remove("block-interactivity-".concat(i)),w.forEach(function(x){return x.classList.remove("allow-interactivity-".concat(i))})}}},[e.inert,e.lockRef.current,e.shards]);var s=S.useCallback(function(w,x){if("touches"in w&&w.touches.length===2||w.type==="wheel"&&w.ctrlKey)return!l.current.allowPinchZoom;var k=_w(w),C=n.current,_="deltaX"in w?w.deltaX:C[0]-k[0],$="deltaY"in w?w.deltaY:C[1]-k[1],R,T=w.target,A=Math.abs(_)>Math.abs($)?"h":"v";if("touches"in w&&A==="h"&&T.type==="range")return!1;var z=eH(A,T);if(!z)return!0;if(z?R=A:(R=A==="v"?"h":"v",z=eH(A,T)),!z)return!1;if(!o.current&&"changedTouches"in w&&(_||$)&&(o.current=R),!R)return!0;var j=o.current||R;return RRe(j,x,w,j==="h"?_:$)},[]),c=S.useCallback(function(w){var x=w;if(!(!mf.length||mf[mf.length-1]!==a)){var k="deltaY"in x?nH(x):_w(x),C=r.current.filter(function(R){return R.name===x.type&&(R.target===x.target||x.target===R.shadowParent)&&zRe(R.delta,k)})[0];if(C&&C.should){x.cancelable&&x.preventDefault();return}if(!C){var _=(l.current.shards||[]).map(oH).filter(Boolean).filter(function(R){return R.contains(x.target)}),$=_.length>0?s(x,_[0]):!l.current.noIsolation;$&&x.cancelable&&x.preventDefault()}}},[]),d=S.useCallback(function(w,x,k,C){var _={name:w,delta:x,target:k,should:C,shadowParent:DRe(k)};r.current.push(_),setTimeout(function(){r.current=r.current.filter(function($){return $!==_})},1)},[]),u=S.useCallback(function(w){n.current=_w(w),o.current=void 0},[]),p=S.useCallback(function(w){d(w.type,nH(w),w.target,s(w,e.lockRef.current))},[]),f=S.useCallback(function(w){d(w.type,_w(w),w.target,s(w,e.lockRef.current))},[]);S.useEffect(function(){return mf.push(a),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:f}),document.addEventListener("wheel",c,gf),document.addEventListener("touchmove",c,gf),document.addEventListener("touchstart",u,gf),function(){mf=mf.filter(function(w){return w!==a}),document.removeEventListener("wheel",c,gf),document.removeEventListener("touchmove",c,gf),document.removeEventListener("touchstart",u,gf)}},[]);var m=e.removeScrollBar,v=e.inert;return S.createElement(S.Fragment,null,v?S.createElement(a,{styles:TRe(i)}):null,m?S.createElement(wRe,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function DRe(e){for(var r=null;e!==null;)e instanceof ShadowRoot&&(r=e.host,e=e.host),e=e.parentNode;return r}const PRe=sRe(Kq,ARe);var ny=S.forwardRef(function(e,r){return S.createElement(ww,Yl({},e,{ref:r,sideCar:PRe}))});ny.classNames=ww.classNames;function So(e){return Object.keys(e)}function p9(e){return e&&typeof e=="object"&&!Array.isArray(e)}function h9(e,r){const n={...e},o=r;return p9(e)&&p9(r)&&Object.keys(r).forEach(i=>{p9(o[i])&&i in e?n[i]=h9(n[i],o[i]):n[i]=o[i]}),n}function MRe(e){return e.replace(/[A-Z]/g,r=>`-${r.toLowerCase()}`)}function NRe(e){return typeof e!="string"||!e.includes("var(--mantine-scale)")?e:e.match(/^calc\((.*?)\)$/)?.[1].split("*")[0].trim()}function f9(e){const r=NRe(e);return typeof r=="number"?r:typeof r=="string"?r.includes("calc")||r.includes("var")?r:r.includes("px")?Number(r.replace("px","")):r.includes("rem")?Number(r.replace("rem",""))*16:r.includes("em")?Number(r.replace("em",""))*16:Number(r):NaN}function iH(e){return e==="0rem"?"0rem":`calc(${e} * var(--mantine-scale))`}function aH(e,{shouldScale:r=!1}={}){function n(o){if(o===0||o==="0")return`0${e}`;if(typeof o=="number"){const i=`${o/16}${e}`;return r?iH(i):i}if(typeof o=="string"){if(o===""||o.startsWith("calc(")||o.startsWith("clamp(")||o.includes("rgba("))return o;if(o.includes(","))return o.split(",").map(a=>n(a)).join(",");if(o.includes(" "))return o.split(" ").map(a=>n(a)).join(" ");const i=o.replace("px","");if(!Number.isNaN(Number(i))){const a=`${Number(i)/16}${e}`;return r?iH(a):a}}return o}return n}const $e=aH("rem",{shouldScale:!0}),lH=aH("em");function yf(e){return Object.keys(e).reduce((r,n)=>(e[n]!==void 0&&(r[n]=e[n]),r),{})}function sH(e){if(typeof e=="number")return!0;if(typeof e=="string"){if(e.startsWith("calc(")||e.startsWith("var(")||e.includes(" ")&&e.trim()!=="")return!0;const r=/^[+-]?[0-9]+(\.[0-9]+)?(px|em|rem|ex|ch|lh|rlh|vw|vh|vmin|vmax|vb|vi|svw|svh|lvw|lvh|dvw|dvh|cm|mm|in|pt|pc|q|cqw|cqh|cqi|cqb|cqmin|cqmax|%)?$/;return e.trim().split(/\s+/).every(n=>r.test(n))}return!1}function Sw(e){return Array.isArray(e)||e===null?!1:typeof e=="object"?e.type!==S.Fragment:!1}function na(e){const r=S.createContext(null);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>{const n=S.useContext(r);if(n===null)throw new Error(e);return n}]}function oy(e=null){const r=S.createContext(e);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>S.useContext(r)]}function cH(e,r){return n=>{if(typeof n!="string"||n.trim().length===0)throw new Error(r);return`${e}-${n}`}}function vf(e,r){let n=e;for(;(n=n.parentElement)&&!n.matches(r););return n}function BRe(e,r,n){for(let o=e-1;o>=0;o-=1)if(!r[o].disabled)return o;if(n){for(let o=r.length-1;o>-1;o-=1)if(!r[o].disabled)return o}return e}function IRe(e,r,n){for(let o=e+1;o{n?.(s);const c=Array.from(vf(s.currentTarget,e)?.querySelectorAll(r)||[]).filter(v=>ORe(s.currentTarget,v,e)),d=c.findIndex(v=>s.currentTarget===v),u=IRe(d,c,o),p=BRe(d,c,o),f=a==="rtl"?p:u,m=a==="rtl"?u:p;switch(s.key){case"ArrowRight":{l==="horizontal"&&(s.stopPropagation(),s.preventDefault(),c[f].focus(),i&&c[f].click());break}case"ArrowLeft":{l==="horizontal"&&(s.stopPropagation(),s.preventDefault(),c[m].focus(),i&&c[m].click());break}case"ArrowUp":{l==="vertical"&&(s.stopPropagation(),s.preventDefault(),c[p].focus(),i&&c[p].click());break}case"ArrowDown":{l==="vertical"&&(s.stopPropagation(),s.preventDefault(),c[u].focus(),i&&c[u].click());break}case"Home":{s.stopPropagation(),s.preventDefault(),!c[0].disabled&&c[0].focus();break}case"End":{s.stopPropagation(),s.preventDefault();const v=c.length-1;!c[v].disabled&&c[v].focus();break}}}}const LRe={app:100,modal:200,popover:300,overlay:400,max:9999};function Ew(e){return LRe[e]}const dH=()=>{};function FRe(e,r={active:!0}){return typeof e!="function"||!r.active?r.onKeyDown||dH:n=>{n.key==="Escape"&&(e(n),r.onTrigger?.())}}function dr(e,r="size",n=!0){if(e!==void 0)return sH(e)?n?$e(e):e:`var(--${r}-${e})`}function Gs(e){return dr(e,"mantine-spacing")}function wn(e){return e===void 0?"var(--mantine-radius-default)":dr(e,"mantine-radius")}function Eo(e){return dr(e,"mantine-font-size")}function VRe(e){return dr(e,"mantine-line-height",!1)}function uH(e){if(e)return dr(e,"mantine-shadow",!1)}function kn(e,r){return n=>{e?.(n),r?.(n)}}function qRe(e,r){return e in r?f9(r[e]):f9(e)}function pH(e,r){const n=e.map(o=>({value:o,px:qRe(o,r)}));return n.sort((o,i)=>o.px-i.px),n}function ay(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function HRe(e,r,n){return n?Array.from(vf(n,r)?.querySelectorAll(e)||[]).findIndex(o=>o===n):null}function hd(e,r,n){return r===void 0&&n===void 0?e:r!==void 0&&n===void 0?Math.max(e,r):Math.min(r===void 0&&n!==void 0?e:Math.max(e,r),n)}function g9(e="mantine-"){return`${e}${Math.random().toString(36).slice(2,11)}`}function URe(e,r){if(e===r||Number.isNaN(e)&&Number.isNaN(r))return!0;if(!(e instanceof Object)||!(r instanceof Object))return!1;const n=Object.keys(e),{length:o}=n;if(o!==Object.keys(r).length)return!1;for(let i=0;i{r.current=e}),S.useMemo(()=>((...n)=>r.current?.(...n)),[])}function bf(e,r){const{delay:n,flushOnUnmount:o,leading:i}=typeof r=="number"?{delay:r,flushOnUnmount:!1,leading:!1}:r,a=Qn(e),l=S.useRef(0),s=S.useMemo(()=>{const c=Object.assign((...d)=>{window.clearTimeout(l.current);const u=c._isFirstCall;c._isFirstCall=!1;function p(){window.clearTimeout(l.current),l.current=0,c._isFirstCall=!0}if(i&&u){a(...d);const v=()=>{p()},w=()=>{l.current!==0&&(p(),a(...d))},x=()=>{p()};c.flush=w,c.cancel=x,l.current=window.setTimeout(v,n);return}if(i&&!u){const v=()=>{l.current!==0&&(p(),a(...d))},w=()=>{p()};c.flush=v,c.cancel=w;const x=()=>{p()};l.current=window.setTimeout(x,n);return}const f=()=>{l.current!==0&&(p(),a(...d))},m=()=>{p()};c.flush=f,c.cancel=m,l.current=window.setTimeout(f,n)},{flush:()=>{},cancel:()=>{},_isFirstCall:!0});return c},[a,n,i]);return S.useEffect(()=>()=>{o?s.flush():s.cancel()},[s,o]),s}const WRe=["mousedown","touchstart"];function hH(e,r,n){const o=S.useRef(null),i=r||WRe;return S.useEffect(()=>{const a=l=>{const{target:s}=l??{};if(Array.isArray(n)){const c=!document.body.contains(s)&&s?.tagName!=="HTML";n.every(d=>!!d&&!l.composedPath().includes(d))&&!c&&e(l)}else o.current&&!o.current.contains(s)&&e(l)};return i.forEach(l=>document.addEventListener(l,a)),()=>{i.forEach(l=>document.removeEventListener(l,a))}},[o,e,n]),o}function GRe(e={timeout:2e3}){const[r,n]=S.useState(null),[o,i]=S.useState(!1),[a,l]=S.useState(null),s=c=>{window.clearTimeout(a),l(window.setTimeout(()=>i(!1),e.timeout)),i(c)};return{copy:c=>{"clipboard"in navigator?navigator.clipboard.writeText(c).then(()=>s(!0)).catch(d=>n(d)):n(new Error("useClipboard: navigator.clipboard is not supported"))},reset:()=>{i(!1),n(null),window.clearTimeout(a)},error:r,copied:o}}function YRe(e,r){try{return e.addEventListener("change",r),()=>e.removeEventListener("change",r)}catch{return e.addListener(r),()=>e.removeListener(r)}}function XRe(e,r){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(e).matches:!1}function fH(e,r,{getInitialValueInEffect:n}={getInitialValueInEffect:!0}){const[o,i]=S.useState(n?r:XRe(e));return S.useEffect(()=>{try{const a=window.matchMedia(e);return i(a.matches),YRe(a,l=>i(l.matches))}catch{return}},[e]),o||!1}function gH(e,r){return fH("(prefers-color-scheme: dark)",e==="dark",r)?"dark":"light"}function KRe(e,r,n={leading:!1}){const[o,i]=S.useState(e),a=S.useRef(null),l=S.useRef(!0),s=()=>window.clearTimeout(a.current);S.useEffect(()=>s,[]);const c=S.useCallback(d=>{s(),l.current&&n.leading?i(d):a.current=window.setTimeout(()=>{l.current=!0,i(d)},r),l.current=!1},[n.leading]);return[o,c]}function m9(e,r,n={leading:!1}){const[o,i]=S.useState(e),a=S.useRef(!1),l=S.useRef(null),s=S.useRef(!1),c=S.useCallback(()=>window.clearTimeout(l.current),[]);return S.useEffect(()=>{a.current&&(!s.current&&n.leading?(s.current=!0,i(e)):(c(),l.current=window.setTimeout(()=>{s.current=!1,i(e)},r)))},[e,n.leading,r]),S.useEffect(()=>(a.current=!0,c),[]),[o,c]}const xf=typeof document<"u"?S.useLayoutEffect:S.useEffect;function wf(e,r){const n=S.useRef(!1);S.useEffect(()=>()=>{n.current=!1},[]),S.useEffect(()=>{if(n.current)return e();n.current=!0},r)}function ZRe({opened:e,shouldReturnFocus:r=!0}){const n=S.useRef(null),o=()=>{n.current&&"focus"in n.current&&typeof n.current.focus=="function"&&n.current?.focus({preventScroll:!0})};return wf(()=>{let i=-1;const a=l=>{l.key==="Tab"&&window.clearTimeout(i)};return document.addEventListener("keydown",a),e?n.current=document.activeElement:r&&(i=window.setTimeout(o,10)),()=>{window.clearTimeout(i),document.removeEventListener("keydown",a)}},[e,r]),o}const QRe=/input|select|textarea|button|object/,mH="a, input, select, textarea, button, object, [tabindex]";function JRe(e){return e.style.display==="none"}function eze(e){if(e.getAttribute("aria-hidden")||e.getAttribute("hidden")||e.getAttribute("type")==="hidden")return!1;let r=e;for(;r&&!(r===document.body||r.nodeType===11);){if(JRe(r))return!1;r=r.parentNode}return!0}function yH(e){let r=e.getAttribute("tabindex");return r===null&&(r=void 0),parseInt(r,10)}function y9(e){const r=e.nodeName.toLowerCase(),n=!Number.isNaN(yH(e));return(QRe.test(r)&&!e.disabled||e instanceof HTMLAnchorElement&&e.href||n)&&eze(e)}function vH(e){const r=yH(e);return(Number.isNaN(r)||r>=0)&&y9(e)}function tze(e){return Array.from(e.querySelectorAll(mH)).filter(vH)}function rze(e,r){const n=tze(e);if(!n.length){r.preventDefault();return}const o=n[r.shiftKey?0:n.length-1],i=e.getRootNode();let a=o===i.activeElement||e===i.activeElement;const l=i.activeElement;if(l.tagName==="INPUT"&&l.getAttribute("type")==="radio"&&(a=n.filter(c=>c.getAttribute("type")==="radio"&&c.getAttribute("name")===l.getAttribute("name")).includes(o)),!a)return;r.preventDefault();const s=n[r.shiftKey?n.length-1:0];s&&s.focus()}function bH(e=!0){const r=S.useRef(null),n=i=>{let a=i.querySelector("[data-autofocus]");if(!a){const l=Array.from(i.querySelectorAll(mH));a=l.find(vH)||l.find(y9)||null,!a&&y9(i)&&(a=i)}a&&a.focus({preventScroll:!0})},o=S.useCallback(i=>{e&&i!==null&&r.current!==i&&(i?(setTimeout(()=>{i.getRootNode()&&n(i)}),r.current=i):r.current=null)},[e]);return S.useEffect(()=>{if(!e)return;r.current&&setTimeout(()=>n(r.current));const i=a=>{a.key==="Tab"&&r.current&&rze(r.current,a)};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[e]),o}const nze=Zr.useId||(()=>{});function oze(){const e=nze();return e?`mantine-${e.replace(/:/g,"")}`:""}function oa(e){const r=oze(),[n,o]=S.useState(r);return xf(()=>{o(g9())},[]),typeof e=="string"?e:typeof window>"u"?r:n}function kf(e,r,n){S.useEffect(()=>(window.addEventListener(e,r,n),()=>window.removeEventListener(e,r,n)),[e,r])}function ize(e,r="use-local-storage"){try{return JSON.stringify(e)}catch{throw new Error(`@mantine/hooks ${r}: Failed to serialize the value`)}}function aze(e){try{return e&&JSON.parse(e)}catch{return e}}function lze(e){return{getItem:r=>{try{return window[e].getItem(r)}catch{return console.warn("use-local-storage: Failed to get value from storage, localStorage is blocked"),null}},setItem:(r,n)=>{try{window[e].setItem(r,n)}catch{console.warn("use-local-storage: Failed to set value to storage, localStorage is blocked")}},removeItem:r=>{try{window[e].removeItem(r)}catch{console.warn("use-local-storage: Failed to remove value from storage, localStorage is blocked")}}}}function xH(e,r){const n=e==="localStorage"?"mantine-local-storage":"mantine-session-storage",{getItem:o,setItem:i,removeItem:a}=lze(e);return function({key:l,defaultValue:s,getInitialValueInEffect:c=!0,sync:d=!0,deserialize:u=aze,serialize:p=f=>ize(f,r)}){const f=S.useCallback(k=>{let C;try{C=typeof window>"u"||!(e in window)||window[e]===null||!!k}catch{C=!0}if(C)return s;const _=o(l);return _!==null?u(_):s},[l,s]),[m,v]=S.useState(f(c)),w=S.useCallback(k=>{k instanceof Function?v(C=>{const _=k(C);return i(l,p(_)),queueMicrotask(()=>{window.dispatchEvent(new CustomEvent(n,{detail:{key:l,value:k(C)}}))}),_}):(i(l,p(k)),window.dispatchEvent(new CustomEvent(n,{detail:{key:l,value:k}})),v(k))},[l]),x=S.useCallback(()=>{a(l),v(s),window.dispatchEvent(new CustomEvent(n,{detail:{key:l,value:s}}))},[l,s]);return kf("storage",k=>{d&&k.storageArea===window[e]&&k.key===l&&v(u(k.newValue??void 0))}),kf(n,k=>{d&&k.detail.key===l&&v(k.detail.value)}),S.useEffect(()=>{s!==void 0&&m===void 0&&w(s)},[s,m,w]),S.useEffect(()=>{const k=f();k!==void 0&&w(k)},[l]),[m===void 0?s:m,w,x]}}function sze(e){return xH("localStorage","use-local-storage")(e)}function cze(e){return xH("sessionStorage","use-session-storage")(e)}function v9(e,r){if(typeof e=="function")return e(r);typeof e=="object"&&e!==null&&"current"in e&&(e.current=r)}function wH(...e){const r=new Map;return n=>{if(e.forEach(o=>{const i=v9(o,n);i&&r.set(o,i)}),r.size>0)return()=>{e.forEach(o=>{const i=r.get(o);i&&typeof i=="function"?i():v9(o,null)}),r.clear()}}}function $r(...e){return S.useCallback(wH(...e),e)}function dze(e){return{x:hd(e.x,0,1),y:hd(e.y,0,1)}}function kH(e,r,n="ltr"){const o=S.useRef(!1),i=S.useRef(!1),a=S.useRef(0),[l,s]=S.useState(!1),c=S.useRef(null);return S.useEffect(()=>{o.current=!0},[]),{ref:S.useCallback(d=>{if(c.current&&(c.current(),c.current=null),!d)return;const u=({x:_,y:$})=>{cancelAnimationFrame(a.current),a.current=requestAnimationFrame(()=>{if(o.current&&d){d.style.userSelect="none";const R=d.getBoundingClientRect();if(R.width&&R.height){const T=hd((_-R.left)/R.width,0,1);e({x:n==="ltr"?T:1-T,y:hd(($-R.top)/R.height,0,1)})}}})},p=()=>{document.addEventListener("mousemove",x),document.addEventListener("mouseup",v),document.addEventListener("touchmove",C,{passive:!1}),document.addEventListener("touchend",v)},f=()=>{document.removeEventListener("mousemove",x),document.removeEventListener("mouseup",v),document.removeEventListener("touchmove",C),document.removeEventListener("touchend",v)},m=()=>{!i.current&&o.current&&(i.current=!0,typeof r?.onScrubStart=="function"&&r.onScrubStart(),s(!0),p())},v=()=>{i.current&&o.current&&(i.current=!1,s(!1),f(),setTimeout(()=>{typeof r?.onScrubEnd=="function"&&r.onScrubEnd()},0))},w=_=>{m(),_.preventDefault(),x(_)},x=_=>u({x:_.clientX,y:_.clientY}),k=_=>{_.cancelable&&_.preventDefault(),m(),C(_)},C=_=>{_.cancelable&&_.preventDefault(),u({x:_.changedTouches[0].clientX,y:_.changedTouches[0].clientY})};d.addEventListener("mousedown",w),d.addEventListener("touchstart",k,{passive:!1}),c.current=()=>{d.removeEventListener("mousedown",w),d.removeEventListener("touchstart",k)}},[n,e]),active:l}}function Ys({value:e,defaultValue:r,finalValue:n,onChange:o=()=>{}}){const[i,a]=S.useState(r!==void 0?r:n);return e!==void 0?[e,o,!0]:[i,(s,...c)=>{a(s),o?.(s,...c)},!1]}function _H(e,r){return fH("(prefers-reduced-motion: reduce)",e,r)}function uze(e,r){if(!e||!r)return!1;if(e===r)return!0;if(e.length!==r.length)return!1;for(let n=0;n{r({width:window.innerWidth||0,height:window.innerHeight||0})},[]);return kf("resize",n,SH),kf("orientationchange",n,SH),S.useEffect(n,[]),e}const gze={" ":"space",ArrowLeft:"arrowleft",ArrowRight:"arrowright",ArrowUp:"arrowup",ArrowDown:"arrowdown",Escape:"escape",Esc:"escape",esc:"escape",Enter:"enter",Tab:"tab",Backspace:"backspace",Delete:"delete",Insert:"insert",Home:"home",End:"end",PageUp:"pageup",PageDown:"pagedown","+":"plus","-":"minus","*":"asterisk","/":"slash"};function Cw(e){const r=e.replace("Key","").toLowerCase();return gze[e]||r}function mze(e){const r=e.toLowerCase().split("+").map(a=>a.trim()),n={alt:r.includes("alt"),ctrl:r.includes("ctrl"),meta:r.includes("meta"),mod:r.includes("mod"),shift:r.includes("shift"),plus:r.includes("[plus]")},o=["alt","ctrl","meta","shift","mod"],i=r.find(a=>!o.includes(a));return{...n,key:i==="[plus]"?"+":i}}function yze(e,r,n){const{alt:o,ctrl:i,meta:a,mod:l,shift:s,key:c}=e,{altKey:d,ctrlKey:u,metaKey:p,shiftKey:f,key:m,code:v}=r;if(o!==d)return!1;if(l){if(!u&&!p)return!1}else if(i!==u||a!==p)return!1;return s!==f?!1:!!(c&&(n?Cw(v)===Cw(c):Cw(m??v)===Cw(c)))}function EH(e,r){return n=>yze(mze(e),n,r)}function $w(e){return r=>{const n="nativeEvent"in r?r.nativeEvent:r;e.forEach(([o,i,a={preventDefault:!0,usePhysicalKeys:!1}])=>{EH(o,a.usePhysicalKeys)(n)&&(a.preventDefault&&r.preventDefault(),i(n))})}}function vze(e,r,n=!1){return e.target instanceof HTMLElement?(n||!e.target.isContentEditable)&&!r.includes(e.target.tagName):!0}function bze(e,r=["INPUT","TEXTAREA","SELECT"],n=!1){S.useEffect(()=>{const o=i=>{e.forEach(([a,l,s={preventDefault:!0,usePhysicalKeys:!1}])=>{EH(a,s.usePhysicalKeys)(i)&&vze(i,r,n)&&(s.preventDefault&&i.preventDefault(),l(i))})};return document.documentElement.addEventListener("keydown",o),()=>document.documentElement.removeEventListener("keydown",o)},[e])}function b9(){const[e,r]=S.useState(!1),n=S.useRef(null),o=S.useCallback(()=>{r(!0)},[]),i=S.useCallback(()=>{r(!1)},[]);return{ref:S.useCallback(a=>{n.current&&(n.current.removeEventListener("mouseenter",o),n.current.removeEventListener("mouseleave",i)),a&&(a.addEventListener("mouseenter",o),a.addEventListener("mouseleave",i)),n.current=a},[o,i]),hovered:e}}function xze(e=!1,r={}){const[n,o]=S.useState(e),i=S.useCallback(()=>{o(s=>s||(r.onOpen?.(),!0))},[r.onOpen]),a=S.useCallback(()=>{o(s=>s&&(r.onClose?.(),!1))},[r.onClose]),l=S.useCallback(()=>{n?a():i()},[a,i,n]);return[n,{open:i,close:a,toggle:l}]}function wze(e){return e.currentTarget instanceof HTMLElement&&e.relatedTarget instanceof HTMLElement?e.currentTarget.contains(e.relatedTarget):!1}function kze({onBlur:e,onFocus:r}={}){const[n,o]=S.useState(!1),i=S.useRef(!1),a=S.useRef(null),l=S.useCallback(u=>{o(u),i.current=u},[]),s=S.useCallback(u=>{i.current||(l(!0),r?.(u))},[r]),c=S.useCallback(u=>{i.current&&!wze(u)&&(l(!1),e?.(u))},[e]),d=S.useCallback(u=>{u&&(a.current&&(a.current.removeEventListener("focusin",s),a.current.removeEventListener("focusout",c)),u.addEventListener("focusin",s),u.addEventListener("focusout",c),a.current=u)},[s,c]);return S.useEffect(()=>()=>{a.current&&(a.current.removeEventListener("focusin",s),a.current.removeEventListener("focusout",c))},[]),{ref:d,focused:n}}function CH(e,r,n={autoInvoke:!1}){const o=S.useRef(null),i=S.useCallback((...l)=>{o.current||(o.current=window.setTimeout(()=>{e(l),o.current=null},r))},[r]),a=S.useCallback(()=>{o.current&&(window.clearTimeout(o.current),o.current=null)},[]);return S.useEffect(()=>(n.autoInvoke&&i(),a),[a,i]),{start:i,clear:a}}function $H(e,r,n){const o=S.useRef(null),i=S.useRef(null);return S.useEffect(()=>{const a=typeof n=="function"?n():n;return(a||i.current)&&(o.current=new MutationObserver(e),o.current.observe(a||i.current,r)),()=>{o.current?.disconnect()}},[e,r]),i}function _ze(){const[e,r]=S.useState(!1);return S.useEffect(()=>r(!0),[]),e}function RH(e){const[r,n]=S.useState({history:[e],current:0}),o=S.useCallback(c=>n(d=>{const u=[...d.history.slice(0,d.current+1),c];return{history:u,current:u.length-1}}),[]),i=S.useCallback((c=1)=>n(d=>({history:d.history,current:Math.max(0,d.current-c)})),[]),a=S.useCallback((c=1)=>n(d=>({history:d.history,current:Math.min(d.history.length-1,d.current+c)})),[]),l=S.useCallback(()=>{n({history:[e],current:0})},[e]),s=S.useMemo(()=>({back:i,forward:a,reset:l,set:o}),[i,a,l,o]);return[r.history[r.current],s,r]}function Sze(e,r){const n=Qn(e),o=S.useRef(null),i=S.useRef(null),a=S.useRef(!0),l=S.useRef(r),s=S.useRef(-1),c=()=>window.clearTimeout(s.current),d=S.useCallback((...f)=>{n(...f),o.current=f,i.current=f,a.current=!1},[n]),u=S.useCallback(()=>{o.current&&o.current!==i.current?(d(...o.current),s.current=window.setTimeout(u,l.current)):a.current=!0},[d]),p=S.useCallback((...f)=>{a.current?(d(...f),s.current=window.setTimeout(u,l.current)):o.current=f},[d,u]);return S.useEffect(()=>{l.current=r},[r]),[p,c]}function Eze(e,r){return Sze(e,r)[0]}function Cze(){return typeof process<"u"&&process.env?"production":"development"}function zH(e){const r=new Map;return(...n)=>{const o=JSON.stringify(n);if(r.has(o))return r.get(o);const i=e(...n);return r.set(o,i),i}}function TH(e,r){return r.length===0?e:r.reduce((n,o)=>Math.abs(o-e){Object.entries(n).forEach(([o,i])=>{r[o]?r[o]=el(r[o],i):r[o]=i})}),r}function Tw({theme:e,classNames:r,props:n,stylesCtx:o}){const i=(Array.isArray(r)?r:[r]).map(a=>typeof a=="function"?a(e,n,o):a||$ze);return Rze(i)}function jw({theme:e,styles:r,props:n,stylesCtx:o}){return(Array.isArray(r)?r:[r]).reduce((i,a)=>typeof a=="function"?{...i,...a(e,n,o)}:{...i,...a},{})}const Aw=S.createContext(null);function yd(){const e=S.useContext(Aw);if(!e)throw new Error("[@mantine/core] MantineProvider was not found in tree");return e}function zze(){return yd().cssVariablesResolver}function Tze(){return yd().classNamesPrefix}function np(){return yd().getStyleNonce}function jze(){return yd().withStaticClasses}function Aze(){return yd().headless}function Dze(){return yd().stylesTransform?.sx}function Pze(){return yd().stylesTransform?.styles}function Dw(){return yd().env||"default"}function Mze(e){return/^#?([0-9A-F]{3}){1,2}([0-9A-F]{2})?$/i.test(e)}function Nze(e){let r=e.replace("#","");if(r.length===3){const l=r.split("");r=[l[0],l[0],l[1],l[1],l[2],l[2]].join("")}if(r.length===8){const l=parseInt(r.slice(6,8),16)/255;return{r:parseInt(r.slice(0,2),16),g:parseInt(r.slice(2,4),16),b:parseInt(r.slice(4,6),16),a:l}}const n=parseInt(r,16),o=n>>16&255,i=n>>8&255,a=n&255;return{r:o,g:i,b:a,a:1}}function Bze(e){const[r,n,o,i]=e.replace(/[^0-9,./]/g,"").split(/[/,]/).map(Number);return{r,g:n,b:o,a:i===void 0?1:i}}function Ize(e){const r=/^hsla?\(\s*(\d+)\s*,\s*(\d+%)\s*,\s*(\d+%)\s*(,\s*(0?\.\d+|\d+(\.\d+)?))?\s*\)$/i,n=e.match(r);if(!n)return{r:0,g:0,b:0,a:1};const o=parseInt(n[1],10),i=parseInt(n[2],10)/100,a=parseInt(n[3],10)/100,l=n[5]?parseFloat(n[5]):void 0,s=(1-Math.abs(2*a-1))*i,c=o/60,d=s*(1-Math.abs(c%2-1)),u=a-s/2;let p,f,m;return c>=0&&c<1?(p=s,f=d,m=0):c>=1&&c<2?(p=d,f=s,m=0):c>=2&&c<3?(p=0,f=s,m=d):c>=3&&c<4?(p=0,f=d,m=s):c>=4&&c<5?(p=d,f=0,m=s):(p=s,f=0,m=d),{r:Math.round((p+u)*255),g:Math.round((f+u)*255),b:Math.round((m+u)*255),a:l||1}}function x9(e){return Mze(e)?Nze(e):e.startsWith("rgb")?Bze(e):e.startsWith("hsl")?Ize(e):{r:0,g:0,b:0,a:1}}function Pw(e,r){if(e.startsWith("var("))return`color-mix(in srgb, ${e}, black ${r*100}%)`;const{r:n,g:o,b:i,a}=x9(e),l=1-r,s=c=>Math.round(c*l);return`rgba(${s(n)}, ${s(o)}, ${s(i)}, ${a})`}function ly(e,r){return typeof e.primaryShade=="number"?e.primaryShade:r==="dark"?e.primaryShade.dark:e.primaryShade.light}function w9(e){return e<=.03928?e/12.92:((e+.055)/1.055)**2.4}function Oze(e){const r=e.match(/oklch\((.*?)%\s/);return r?parseFloat(r[1]):null}function Lze(e){if(e.startsWith("oklch("))return(Oze(e)||0)/100;const{r,g:n,b:o}=x9(e),i=r/255,a=n/255,l=o/255,s=w9(i),c=w9(a),d=w9(l);return .2126*s+.7152*c+.0722*d}function sy(e,r=.179){return e.startsWith("var(")?!1:Lze(e)>r}function vd({color:e,theme:r,colorScheme:n}){if(typeof e!="string")throw new Error(`[@mantine/core] Failed to parse color. Expected color to be a string, instead got ${typeof e}`);if(e==="bright")return{color:e,value:n==="dark"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:sy(n==="dark"?r.white:r.black,r.luminanceThreshold),variable:"--mantine-color-bright"};if(e==="dimmed")return{color:e,value:n==="dark"?r.colors.dark[2]:r.colors.gray[7],shade:void 0,isThemeColor:!1,isLight:sy(n==="dark"?r.colors.dark[2]:r.colors.gray[6],r.luminanceThreshold),variable:"--mantine-color-dimmed"};if(e==="white"||e==="black")return{color:e,value:e==="white"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:sy(e==="white"?r.white:r.black,r.luminanceThreshold),variable:`--mantine-color-${e}`};const[o,i]=e.split("."),a=i?Number(i):void 0,l=o in r.colors;if(l){const s=a!==void 0?r.colors[o][a]:r.colors[o][ly(r,n||"light")];return{color:o,value:s,shade:a,isThemeColor:l,isLight:sy(s,r.luminanceThreshold),variable:i?`--mantine-color-${o}-${a}`:`--mantine-color-${o}-filled`}}return{color:e,value:e,isThemeColor:l,isLight:sy(e,r.luminanceThreshold),shade:a,variable:void 0}}function Ci(e,r){const n=vd({color:e||r.primaryColor,theme:r});return n.variable?`var(${n.variable})`:e}function k9(e,r){const n={from:e?.from||r.defaultGradient.from,to:e?.to||r.defaultGradient.to,deg:e?.deg??r.defaultGradient.deg??0},o=Ci(n.from,r),i=Ci(n.to,r);return`linear-gradient(${n.deg}deg, ${o} 0%, ${i} 100%)`}function Xl(e,r){if(typeof e!="string"||r>1||r<0)return"rgba(0, 0, 0, 1)";if(e.startsWith("var(")){const a=(1-r)*100;return`color-mix(in srgb, ${e}, transparent ${a}%)`}if(e.startsWith("oklch"))return e.includes("/")?e.replace(/\/\s*[\d.]+\s*\)/,`/ ${r})`):e.replace(")",` / ${r})`);const{r:n,g:o,b:i}=x9(e);return`rgba(${n}, ${o}, ${i}, ${r})`}const _f=Xl,Fze=({color:e,theme:r,variant:n,gradient:o,autoContrast:i})=>{const a=vd({color:e,theme:r}),l=typeof i=="boolean"?i:r.autoContrast;if(n==="none")return{background:"transparent",hover:"transparent",color:"inherit",border:"none"};if(n==="filled"){const s=l&&a.isLight?"var(--mantine-color-black)":"var(--mantine-color-white)";return a.isThemeColor?a.shade===void 0?{background:`var(--mantine-color-${e}-filled)`,hover:`var(--mantine-color-${e}-filled-hover)`,color:s,border:`${$e(1)} solid transparent`}:{background:`var(--mantine-color-${a.color}-${a.shade})`,hover:`var(--mantine-color-${a.color}-${a.shade===9?8:a.shade+1})`,color:s,border:`${$e(1)} solid transparent`}:{background:e,hover:Pw(e,.1),color:s,border:`${$e(1)} solid transparent`}}if(n==="light"){if(a.isThemeColor){if(a.shade===void 0)return{background:`var(--mantine-color-${e}-light)`,hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${$e(1)} solid transparent`};const s=r.colors[a.color][a.shade];return{background:Xl(s,.1),hover:Xl(s,.12),color:`var(--mantine-color-${a.color}-${Math.min(a.shade,6)})`,border:`${$e(1)} solid transparent`}}return{background:Xl(e,.1),hover:Xl(e,.12),color:e,border:`${$e(1)} solid transparent`}}if(n==="outline")return a.isThemeColor?a.shade===void 0?{background:"transparent",hover:`var(--mantine-color-${e}-outline-hover)`,color:`var(--mantine-color-${e}-outline)`,border:`${$e(1)} solid var(--mantine-color-${e}-outline)`}:{background:"transparent",hover:Xl(r.colors[a.color][a.shade],.05),color:`var(--mantine-color-${a.color}-${a.shade})`,border:`${$e(1)} solid var(--mantine-color-${a.color}-${a.shade})`}:{background:"transparent",hover:Xl(e,.05),color:e,border:`${$e(1)} solid ${e}`};if(n==="subtle"){if(a.isThemeColor){if(a.shade===void 0)return{background:"transparent",hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${$e(1)} solid transparent`};const s=r.colors[a.color][a.shade];return{background:"transparent",hover:Xl(s,.12),color:`var(--mantine-color-${a.color}-${Math.min(a.shade,6)})`,border:`${$e(1)} solid transparent`}}return{background:"transparent",hover:Xl(e,.12),color:e,border:`${$e(1)} solid transparent`}}return n==="transparent"?a.isThemeColor?a.shade===void 0?{background:"transparent",hover:"transparent",color:`var(--mantine-color-${e}-light-color)`,border:`${$e(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:`var(--mantine-color-${a.color}-${Math.min(a.shade,6)})`,border:`${$e(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:e,border:`${$e(1)} solid transparent`}:n==="white"?a.isThemeColor?a.shade===void 0?{background:"var(--mantine-color-white)",hover:Pw(r.white,.01),color:`var(--mantine-color-${e}-filled)`,border:`${$e(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:Pw(r.white,.01),color:`var(--mantine-color-${a.color}-${a.shade})`,border:`${$e(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:Pw(r.white,.01),color:e,border:`${$e(1)} solid transparent`}:n==="gradient"?{background:k9(o,r),hover:k9(o,r),color:"var(--mantine-color-white)",border:"none"}:n==="default"?{background:"var(--mantine-color-default)",hover:"var(--mantine-color-default-hover)",color:"var(--mantine-color-default-color)",border:`${$e(1)} solid var(--mantine-color-default-border)`}:{}},Vze={dark:["#C9C9C9","#b8b8b8","#828282","#696969","#424242","#3b3b3b","#2e2e2e","#242424","#1f1f1f","#141414"],gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]},AH="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji",_9={scale:1,fontSmoothing:!0,focusRing:"auto",white:"#fff",black:"#000",colors:Vze,primaryShade:{light:6,dark:8},primaryColor:"blue",variantColorResolver:Fze,autoContrast:!1,luminanceThreshold:.3,fontFamily:AH,fontFamilyMonospace:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace",respectReducedMotion:!1,cursorType:"default",defaultGradient:{from:"blue",to:"cyan",deg:45},defaultRadius:"sm",activeClassName:"mantine-active",focusClassName:"",headings:{fontFamily:AH,fontWeight:"700",textWrap:"wrap",sizes:{h1:{fontSize:$e(34),lineHeight:"1.3"},h2:{fontSize:$e(26),lineHeight:"1.35"},h3:{fontSize:$e(22),lineHeight:"1.4"},h4:{fontSize:$e(18),lineHeight:"1.45"},h5:{fontSize:$e(16),lineHeight:"1.5"},h6:{fontSize:$e(14),lineHeight:"1.5"}}},fontSizes:{xs:$e(12),sm:$e(14),md:$e(16),lg:$e(18),xl:$e(20)},lineHeights:{xs:"1.4",sm:"1.45",md:"1.55",lg:"1.6",xl:"1.65"},radius:{xs:$e(2),sm:$e(4),md:$e(8),lg:$e(16),xl:$e(32)},spacing:{xs:$e(10),sm:$e(12),md:$e(16),lg:$e(20),xl:$e(32)},breakpoints:{xs:"36em",sm:"48em",md:"62em",lg:"75em",xl:"88em"},shadows:{xs:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), 0 ${$e(1)} ${$e(2)} rgba(0, 0, 0, 0.1)`,sm:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(10)} ${$e(15)} ${$e(-5)}, rgba(0, 0, 0, 0.04) 0 ${$e(7)} ${$e(7)} ${$e(-5)}`,md:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(20)} ${$e(25)} ${$e(-5)}, rgba(0, 0, 0, 0.04) 0 ${$e(10)} ${$e(10)} ${$e(-5)}`,lg:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(28)} ${$e(23)} ${$e(-7)}, rgba(0, 0, 0, 0.04) 0 ${$e(12)} ${$e(12)} ${$e(-7)}`,xl:`0 ${$e(1)} ${$e(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${$e(36)} ${$e(28)} ${$e(-7)}, rgba(0, 0, 0, 0.04) 0 ${$e(17)} ${$e(17)} ${$e(-7)}`},other:{},components:{}};function DH(e){return e==="auto"||e==="dark"||e==="light"}function qze({key:e="mantine-color-scheme-value"}={}){let r;return{get:n=>{if(typeof window>"u")return n;try{const o=window.localStorage.getItem(e);return DH(o)?o:n}catch{return n}},set:n=>{try{window.localStorage.setItem(e,n)}catch(o){console.warn("[@mantine/core] Local storage color scheme manager was unable to save color scheme.",o)}},subscribe:n=>{r=o=>{o.storageArea===window.localStorage&&o.key===e&&DH(o.newValue)&&n(o.newValue)},window.addEventListener("storage",r)},unsubscribe:()=>{window.removeEventListener("storage",r)},clear:()=>{window.localStorage.removeItem(e)}}}const Hze="[@mantine/core] MantineProvider: Invalid theme.primaryColor, it accepts only key of theme.colors, learn more – https://mantine.dev/theming/colors/#primary-color",PH="[@mantine/core] MantineProvider: Invalid theme.primaryShade, it accepts only 0-9 integers or an object { light: 0-9, dark: 0-9 }";function S9(e){return e<0||e>9?!1:parseInt(e.toString(),10)===e}function MH(e){if(!(e.primaryColor in e.colors))throw new Error(Hze);if(typeof e.primaryShade=="object"&&(!S9(e.primaryShade.dark)||!S9(e.primaryShade.light)))throw new Error(PH);if(typeof e.primaryShade=="number"&&!S9(e.primaryShade))throw new Error(PH)}function Uze(e,r){if(!r)return MH(e),e;const n=h9(e,r);return r.fontFamily&&!r.headings?.fontFamily&&(n.headings.fontFamily=r.fontFamily),MH(n),n}const E9=S.createContext(null),Wze=()=>S.useContext(E9)||_9;function lo(){const e=S.useContext(E9);if(!e)throw new Error("@mantine/core: MantineProvider was not found in component tree, make sure you have it in your app");return e}function NH({theme:e,children:r,inherit:n=!0}){const o=Wze(),i=S.useMemo(()=>Uze(n?o:_9,e),[e,o,n]);return y.jsx(E9.Provider,{value:i,children:r})}NH.displayName="@mantine/core/MantineThemeProvider";function Gze(){const e=lo(),r=np(),n=So(e.breakpoints).reduce((o,i)=>{const a=e.breakpoints[i].includes("px"),l=f9(e.breakpoints[i]),s=a?`${l-.1}px`:lH(l-.1),c=a?`${l}px`:lH(l);return`${o}@media (max-width: ${s}) {.mantine-visible-from-${i} {display: none !important;}}@media (min-width: ${c}) {.mantine-hidden-from-${i} {display: none !important;}}`},"");return y.jsx("style",{"data-mantine-styles":"classes",nonce:r?.(),dangerouslySetInnerHTML:{__html:n}})}function C9(e){return Object.entries(e).map(([r,n])=>`${r}: ${n};`).join("")}function BH(e,r){const n=r?[r]:[":root",":host"],o=C9(e.variables),i=o?`${n.join(", ")}{${o}}`:"",a=C9(e.dark),l=C9(e.light),s=u=>n.map(p=>p===":host"?`${p}([data-mantine-color-scheme="${u}"])`:`${p}[data-mantine-color-scheme="${u}"]`).join(", "),c=a?`${s("dark")}{${a}}`:"",d=l?`${s("light")}{${l}}`:"";return`${i} ${c} -${d}`}function $9({color:e,theme:r,autoContrast:n}){return(typeof n=="boolean"?n:r.autoContrast)&&vd({color:e||r.primaryColor,theme:r}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function IH(e,r){return $9({color:e.colors[e.primaryColor][ly(e,r)],theme:e,autoContrast:null})}function Nw({theme:e,color:r,colorScheme:n,name:o=r,withColorValues:i=!0}){if(!e.colors[r])return{};if(n==="light"){const s=ly(e,"light"),c={[`--mantine-color-${o}-text`]:`var(--mantine-color-${o}-filled)`,[`--mantine-color-${o}-filled`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-filled-hover`]:`var(--mantine-color-${o}-${s===9?8:s+1})`,[`--mantine-color-${o}-light`]:_f(e.colors[r][s],.1),[`--mantine-color-${o}-light-hover`]:_f(e.colors[r][s],.12),[`--mantine-color-${o}-light-color`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-outline`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-outline-hover`]:_f(e.colors[r][s],.05)};return i?{[`--mantine-color-${o}-0`]:e.colors[r][0],[`--mantine-color-${o}-1`]:e.colors[r][1],[`--mantine-color-${o}-2`]:e.colors[r][2],[`--mantine-color-${o}-3`]:e.colors[r][3],[`--mantine-color-${o}-4`]:e.colors[r][4],[`--mantine-color-${o}-5`]:e.colors[r][5],[`--mantine-color-${o}-6`]:e.colors[r][6],[`--mantine-color-${o}-7`]:e.colors[r][7],[`--mantine-color-${o}-8`]:e.colors[r][8],[`--mantine-color-${o}-9`]:e.colors[r][9],...c}:c}const a=ly(e,"dark"),l={[`--mantine-color-${o}-text`]:`var(--mantine-color-${o}-4)`,[`--mantine-color-${o}-filled`]:`var(--mantine-color-${o}-${a})`,[`--mantine-color-${o}-filled-hover`]:`var(--mantine-color-${o}-${a===9?8:a+1})`,[`--mantine-color-${o}-light`]:_f(e.colors[r][Math.max(0,a-2)],.15),[`--mantine-color-${o}-light-hover`]:_f(e.colors[r][Math.max(0,a-2)],.2),[`--mantine-color-${o}-light-color`]:`var(--mantine-color-${o}-${Math.max(a-5,0)})`,[`--mantine-color-${o}-outline`]:`var(--mantine-color-${o}-${Math.max(a-4,0)})`,[`--mantine-color-${o}-outline-hover`]:_f(e.colors[r][Math.max(a-4,0)],.05)};return i?{[`--mantine-color-${o}-0`]:e.colors[r][0],[`--mantine-color-${o}-1`]:e.colors[r][1],[`--mantine-color-${o}-2`]:e.colors[r][2],[`--mantine-color-${o}-3`]:e.colors[r][3],[`--mantine-color-${o}-4`]:e.colors[r][4],[`--mantine-color-${o}-5`]:e.colors[r][5],[`--mantine-color-${o}-6`]:e.colors[r][6],[`--mantine-color-${o}-7`]:e.colors[r][7],[`--mantine-color-${o}-8`]:e.colors[r][8],[`--mantine-color-${o}-9`]:e.colors[r][9],...l}:l}function Yze(e){return!!e&&typeof e=="object"&&"mantine-virtual-color"in e}function Sf(e,r,n){So(r).forEach(o=>Object.assign(e,{[`--mantine-${n}-${o}`]:r[o]}))}const OH=e=>{const r=ly(e,"light"),n=e.defaultRadius in e.radius?e.radius[e.defaultRadius]:$e(e.defaultRadius),o={variables:{"--mantine-z-index-app":"100","--mantine-z-index-modal":"200","--mantine-z-index-popover":"300","--mantine-z-index-overlay":"400","--mantine-z-index-max":"9999","--mantine-scale":e.scale.toString(),"--mantine-cursor-type":e.cursorType,"--mantine-webkit-font-smoothing":e.fontSmoothing?"antialiased":"unset","--mantine-moz-font-smoothing":e.fontSmoothing?"grayscale":"unset","--mantine-color-white":e.white,"--mantine-color-black":e.black,"--mantine-line-height":e.lineHeights.md,"--mantine-font-family":e.fontFamily,"--mantine-font-family-monospace":e.fontFamilyMonospace,"--mantine-font-family-headings":e.headings.fontFamily,"--mantine-heading-font-weight":e.headings.fontWeight,"--mantine-heading-text-wrap":e.headings.textWrap,"--mantine-radius-default":n,"--mantine-primary-color-filled":`var(--mantine-color-${e.primaryColor}-filled)`,"--mantine-primary-color-filled-hover":`var(--mantine-color-${e.primaryColor}-filled-hover)`,"--mantine-primary-color-light":`var(--mantine-color-${e.primaryColor}-light)`,"--mantine-primary-color-light-hover":`var(--mantine-color-${e.primaryColor}-light-hover)`,"--mantine-primary-color-light-color":`var(--mantine-color-${e.primaryColor}-light-color)`},light:{"--mantine-color-scheme":"light","--mantine-primary-color-contrast":IH(e,"light"),"--mantine-color-bright":"var(--mantine-color-black)","--mantine-color-text":e.black,"--mantine-color-body":e.white,"--mantine-color-error":"var(--mantine-color-red-6)","--mantine-color-placeholder":"var(--mantine-color-gray-5)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-${r})`,"--mantine-color-default":"var(--mantine-color-white)","--mantine-color-default-hover":"var(--mantine-color-gray-0)","--mantine-color-default-color":"var(--mantine-color-black)","--mantine-color-default-border":"var(--mantine-color-gray-4)","--mantine-color-dimmed":"var(--mantine-color-gray-6)","--mantine-color-disabled":"var(--mantine-color-gray-2)","--mantine-color-disabled-color":"var(--mantine-color-gray-5)","--mantine-color-disabled-border":"var(--mantine-color-gray-3)"},dark:{"--mantine-color-scheme":"dark","--mantine-primary-color-contrast":IH(e,"dark"),"--mantine-color-bright":"var(--mantine-color-white)","--mantine-color-text":"var(--mantine-color-dark-0)","--mantine-color-body":"var(--mantine-color-dark-7)","--mantine-color-error":"var(--mantine-color-red-8)","--mantine-color-placeholder":"var(--mantine-color-dark-3)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-4)`,"--mantine-color-default":"var(--mantine-color-dark-6)","--mantine-color-default-hover":"var(--mantine-color-dark-5)","--mantine-color-default-color":"var(--mantine-color-white)","--mantine-color-default-border":"var(--mantine-color-dark-4)","--mantine-color-dimmed":"var(--mantine-color-dark-2)","--mantine-color-disabled":"var(--mantine-color-dark-6)","--mantine-color-disabled-color":"var(--mantine-color-dark-3)","--mantine-color-disabled-border":"var(--mantine-color-dark-4)"}};Sf(o.variables,e.breakpoints,"breakpoint"),Sf(o.variables,e.spacing,"spacing"),Sf(o.variables,e.fontSizes,"font-size"),Sf(o.variables,e.lineHeights,"line-height"),Sf(o.variables,e.shadows,"shadow"),Sf(o.variables,e.radius,"radius"),e.colors[e.primaryColor].forEach((a,l)=>{o.variables[`--mantine-primary-color-${l}`]=`var(--mantine-color-${e.primaryColor}-${l})`}),So(e.colors).forEach(a=>{const l=e.colors[a];if(Yze(l)){Object.assign(o.light,Nw({theme:e,name:l.name,color:l.light,colorScheme:"light",withColorValues:!0})),Object.assign(o.dark,Nw({theme:e,name:l.name,color:l.dark,colorScheme:"dark",withColorValues:!0}));return}l.forEach((s,c)=>{o.variables[`--mantine-color-${a}-${c}`]=s}),Object.assign(o.light,Nw({theme:e,color:a,colorScheme:"light",withColorValues:!1})),Object.assign(o.dark,Nw({theme:e,color:a,colorScheme:"dark",withColorValues:!1}))});const i=e.headings.sizes;return So(i).forEach(a=>{o.variables[`--mantine-${a}-font-size`]=i[a].fontSize,o.variables[`--mantine-${a}-line-height`]=i[a].lineHeight,o.variables[`--mantine-${a}-font-weight`]=i[a].fontWeight||e.headings.fontWeight}),o};function Xze({theme:e,generator:r}){const n=OH(e),o=r?.(e);return o?h9(n,o):n}const R9=OH(_9);function Kze(e){const r={variables:{},light:{},dark:{}};return So(e.variables).forEach(n=>{R9.variables[n]!==e.variables[n]&&(r.variables[n]=e.variables[n])}),So(e.light).forEach(n=>{R9.light[n]!==e.light[n]&&(r.light[n]=e.light[n])}),So(e.dark).forEach(n=>{R9.dark[n]!==e.dark[n]&&(r.dark[n]=e.dark[n])}),r}function Zze(e){return BH({variables:{},dark:{"--mantine-color-scheme":"dark"},light:{"--mantine-color-scheme":"light"}},e)}function LH({cssVariablesSelector:e,deduplicateCssVariables:r}){const n=lo(),o=np(),i=zze(),a=Xze({theme:n,generator:i}),l=(e===void 0||e===":root"||e===":host")&&r,s=l?Kze(a):a,c=BH(s,e);return c?y.jsx("style",{"data-mantine-styles":!0,nonce:o?.(),dangerouslySetInnerHTML:{__html:`${c}${l?"":Zze(e)}`}}):null}LH.displayName="@mantine/CssVariables";function Ef(e,r){const n=typeof window<"u"&&"matchMedia"in window&&window.matchMedia("(prefers-color-scheme: dark)")?.matches,o=e!=="auto"?e:n?"dark":"light";r()?.setAttribute("data-mantine-color-scheme",o)}function Qze({manager:e,defaultColorScheme:r,getRootElement:n,forceColorScheme:o}){const i=S.useRef(null),[a,l]=S.useState(()=>e.get(r)),s=o||a,c=S.useCallback(u=>{o||(Ef(u,n),l(u),e.set(u))},[e.set,s,o]),d=S.useCallback(()=>{l(r),Ef(r,n),e.clear()},[e.clear,r]);return S.useEffect(()=>(e.subscribe(c),e.unsubscribe),[e.subscribe,e.unsubscribe]),xf(()=>{Ef(e.get(r),n)},[]),S.useEffect(()=>{if(o)return Ef(o,n),()=>{};o===void 0&&Ef(a,n),typeof window<"u"&&"matchMedia"in window&&(i.current=window.matchMedia("(prefers-color-scheme: dark)"));const u=p=>{a==="auto"&&Ef(p.matches?"dark":"light",n)};return i.current?.addEventListener("change",u),()=>i.current?.removeEventListener("change",u)},[a,o]),{colorScheme:s,setColorScheme:c,clearColorScheme:d}}function Jze({respectReducedMotion:e,getRootElement:r}){xf(()=>{e&&r()?.setAttribute("data-respect-reduced-motion","true")},[e])}function z9({theme:e,children:r,getStyleNonce:n,withStaticClasses:o=!0,withGlobalClasses:i=!0,deduplicateCssVariables:a=!0,withCssVariables:l=!0,cssVariablesSelector:s,classNamesPrefix:c="mantine",colorSchemeManager:d=qze(),defaultColorScheme:u="light",getRootElement:p=()=>document.documentElement,cssVariablesResolver:f,forceColorScheme:g,stylesTransform:v,env:w}){const{colorScheme:x,setColorScheme:k,clearColorScheme:C}=Qze({defaultColorScheme:u,forceColorScheme:g,manager:d,getRootElement:p});return Jze({respectReducedMotion:e?.respectReducedMotion||!1,getRootElement:p}),y.jsx(Aw.Provider,{value:{colorScheme:x,setColorScheme:k,clearColorScheme:C,getRootElement:p,classNamesPrefix:c,getStyleNonce:n,cssVariablesResolver:f,cssVariablesSelector:s??":root",withStaticClasses:o,stylesTransform:v,env:w},children:y.jsxs(PH,{theme:e,children:[l&&y.jsx(LH,{cssVariablesSelector:s,deduplicateCssVariables:a}),i&&y.jsx(Gze,{}),r]})})}z9.displayName="@mantine/core/MantineProvider";function T9({classNames:e,styles:r,props:n,stylesCtx:o}){const i=lo();return{resolvedClassNames:Tw({theme:i,classNames:e,props:n,stylesCtx:o||void 0}),resolvedStyles:jw({theme:i,styles:r,props:n,stylesCtx:o||void 0})}}const eTe={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function tTe({theme:e,options:r,unstyled:n}){return el(r?.focusable&&!n&&(e.focusClassName||eTe[e.focusRing]),r?.active&&!n&&e.activeClassName)}function rTe({selector:e,stylesCtx:r,options:n,props:o,theme:i}){return Tw({theme:i,classNames:n?.classNames,props:n?.props||o,stylesCtx:r})[e]}function FH({selector:e,stylesCtx:r,theme:n,classNames:o,props:i}){return Tw({theme:n,classNames:o,props:i,stylesCtx:r})[e]}function nTe({rootSelector:e,selector:r,className:n}){return e===r?n:void 0}function oTe({selector:e,classes:r,unstyled:n}){return n?void 0:r[e]}function iTe({themeName:e,classNamesPrefix:r,selector:n,withStaticClass:o}){return o===!1?[]:e.map(i=>`${r}-${i}-${n}`)}function aTe({themeName:e,theme:r,selector:n,props:o,stylesCtx:i}){return e.map(a=>Tw({theme:r,classNames:r.components[a]?.classNames,props:o,stylesCtx:i})?.[n])}function lTe({options:e,classes:r,selector:n,unstyled:o}){return e?.variant&&!o?r[`${n}--${e.variant}`]:void 0}function sTe({theme:e,options:r,themeName:n,selector:o,classNamesPrefix:i,classNames:a,classes:l,unstyled:s,className:c,rootSelector:d,props:u,stylesCtx:p,withStaticClasses:f,headless:g,transformedStyles:v}){return el(tTe({theme:e,options:r,unstyled:s||g}),aTe({theme:e,themeName:n,selector:o,props:u,stylesCtx:p}),lTe({options:r,classes:l,selector:o,unstyled:s}),FH({selector:o,stylesCtx:p,theme:e,classNames:a,props:u}),FH({selector:o,stylesCtx:p,theme:e,classNames:v,props:u}),rTe({selector:o,stylesCtx:p,options:r,props:u,theme:e}),nTe({rootSelector:d,selector:o,className:c}),oTe({selector:o,classes:l,unstyled:s||g}),f&&!g&&iTe({themeName:n,classNamesPrefix:i,selector:o,withStaticClass:r?.withStaticClass}),r?.className)}function cTe({theme:e,themeName:r,props:n,stylesCtx:o,selector:i}){return r.map(a=>jw({theme:e,styles:e.components[a]?.styles,props:n,stylesCtx:o})[i]).reduce((a,l)=>({...a,...l}),{})}function j9({style:e,theme:r}){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...j9({style:o,theme:r})}),{}):typeof e=="function"?e(r):e??{}}function dTe(e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{r[o]={...r[o],...yf(n[o])}}),r),{})}function uTe({vars:e,varsResolver:r,theme:n,props:o,stylesCtx:i,selector:a,themeName:l,headless:s}){return dTe([s?{}:r?.(n,o,i),...l.map(c=>n.components?.[c]?.vars?.(n,o,i)),e?.(n,o,i)])?.[a]}function pTe({theme:e,themeName:r,selector:n,options:o,props:i,stylesCtx:a,rootSelector:l,styles:s,style:c,vars:d,varsResolver:u,headless:p,withStylesTransform:f}){return{...!f&&cTe({theme:e,themeName:r,props:i,stylesCtx:a,selector:n}),...!f&&jw({theme:e,styles:s,props:i,stylesCtx:a})[n],...!f&&jw({theme:e,styles:o?.styles,props:o?.props||i,stylesCtx:a})[n],...uTe({theme:e,props:i,stylesCtx:a,vars:d,varsResolver:u,selector:n,themeName:r,headless:p}),...l===n?j9({style:c,theme:e}):null,...j9({style:o?.style,theme:e})}}function hTe({props:e,stylesCtx:r,themeName:n}){const o=lo(),i=Mze()?.();return{getTransformedStyles:a=>i?[...a.map(l=>i(l,{props:e,theme:o,ctx:r})),...n.map(l=>i(o.components[l]?.styles,{props:e,theme:o,ctx:r}))].filter(Boolean):[],withStylesTransform:!!i}}function kt({name:e,classes:r,props:n,stylesCtx:o,className:i,style:a,rootSelector:l="root",unstyled:s,classNames:c,styles:d,vars:u,varsResolver:p,attributes:f}){const g=lo(),v=Tze(),w=jze(),x=Aze(),k=(Array.isArray(e)?e:[e]).filter($=>$),{withStylesTransform:C,getTransformedStyles:_}=hTe({props:n,stylesCtx:o,themeName:k});return($,R)=>({className:sTe({theme:g,options:R,themeName:k,selector:$,classNamesPrefix:v,classNames:c,classes:r,unstyled:s,className:i,rootSelector:l,props:n,stylesCtx:o,withStaticClasses:w,headless:x,transformedStyles:_([R?.styles,d])}),style:pTe({theme:g,themeName:k,selector:$,options:R,props:n,stylesCtx:o,rootSelector:l,styles:d,style:a,vars:u,varsResolver:p,headless:x,withStylesTransform:C}),...f?.[$]})}function fTe(e,r){return typeof e=="boolean"?e:r.autoContrast}function VH(e){const r=document.createElement("style");return r.setAttribute("data-mantine-styles","inline"),r.innerHTML="*, *::before, *::after {transition: none !important;}",r.setAttribute("data-mantine-disable-transition","true"),e&&r.setAttribute("nonce",e),document.head.appendChild(r),()=>document.querySelectorAll("[data-mantine-disable-transition]").forEach(n=>n.remove())}function mTe({keepTransitions:e}={}){const r=S.useRef(dH),n=S.useRef(-1),o=S.useContext(Aw),i=np(),a=S.useRef(i?.());if(!o)throw new Error("[@mantine/core] MantineProvider was not found in tree");const l=p=>{o.setColorScheme(p),r.current=e?()=>{}:VH(a.current),window.clearTimeout(n.current),n.current=window.setTimeout(()=>{r.current?.()},10)},s=()=>{o.clearColorScheme(),r.current=e?()=>{}:VH(a.current),window.clearTimeout(n.current),n.current=window.setTimeout(()=>{r.current?.()},10)},c=mH("light",{getInitialValueInEffect:!1}),d=o.colorScheme==="auto"?c:o.colorScheme,u=S.useCallback(()=>l(d==="light"?"dark":"light"),[l,d]);return S.useEffect(()=>()=>{r.current?.(),window.clearTimeout(n.current)},[]),{colorScheme:o.colorScheme,setColorScheme:l,clearColorScheme:s,toggleColorScheme:u}}function Me(e,r,n){const o=lo(),i=o.components[e]?.defaultProps,a=typeof i=="function"?i(o):i;return{...r,...a,...yf(n)}}function A9(e){return So(e).reduce((r,n)=>e[n]!==void 0?`${r}${NRe(n)}:${e[n]};`:r,"").trim()}function gTe({selector:e,styles:r,media:n,container:o}){const i=r?A9(r):"",a=Array.isArray(n)?n.map(s=>`@media${s.query}{${e}{${A9(s.styles)}}}`):[],l=Array.isArray(o)?o.map(s=>`@container ${s.query}{${e}{${A9(s.styles)}}}`):[];return`${i?`${e}{${i}}`:""}${a.join("")}${l.join("")}`.trim()}function Pw(e){const r=np();return y.jsx("style",{"data-mantine-styles":"inline",nonce:r?.(),dangerouslySetInnerHTML:{__html:gTe(e)}})}function qH(e){const{m:r,mx:n,my:o,mt:i,mb:a,ml:l,mr:s,me:c,ms:d,p:u,px:p,py:f,pt:g,pb:v,pl:w,pr:x,pe:k,ps:C,bd:_,bdrs:$,bg:R,c:T,opacity:A,ff:z,fz:j,fw:I,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:K,bgsz:O,bgp:W,bgr:Z,bga:Q,pos:ie,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,hiddenFrom:je,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le,...St}=e;return{styleProps:yf({m:r,mx:n,my:o,mt:i,mb:a,ml:l,mr:s,me:c,ms:d,p:u,px:p,py:f,pt:g,pb:v,pl:w,pr:x,pe:k,ps:C,bd:_,bg:R,c:T,opacity:A,ff:z,fz:j,fw:I,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:K,bgsz:O,bgp:W,bgr:Z,bga:Q,pos:ie,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,bdrs:$,hiddenFrom:je,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le}),rest:St}}const yTe={m:{type:"spacing",property:"margin"},mt:{type:"spacing",property:"marginTop"},mb:{type:"spacing",property:"marginBottom"},ml:{type:"spacing",property:"marginLeft"},mr:{type:"spacing",property:"marginRight"},ms:{type:"spacing",property:"marginInlineStart"},me:{type:"spacing",property:"marginInlineEnd"},mx:{type:"spacing",property:"marginInline"},my:{type:"spacing",property:"marginBlock"},p:{type:"spacing",property:"padding"},pt:{type:"spacing",property:"paddingTop"},pb:{type:"spacing",property:"paddingBottom"},pl:{type:"spacing",property:"paddingLeft"},pr:{type:"spacing",property:"paddingRight"},ps:{type:"spacing",property:"paddingInlineStart"},pe:{type:"spacing",property:"paddingInlineEnd"},px:{type:"spacing",property:"paddingInline"},py:{type:"spacing",property:"paddingBlock"},bd:{type:"border",property:"border"},bdrs:{type:"radius",property:"borderRadius"},bg:{type:"color",property:"background"},c:{type:"textColor",property:"color"},opacity:{type:"identity",property:"opacity"},ff:{type:"fontFamily",property:"fontFamily"},fz:{type:"fontSize",property:"fontSize"},fw:{type:"identity",property:"fontWeight"},lts:{type:"size",property:"letterSpacing"},ta:{type:"identity",property:"textAlign"},lh:{type:"lineHeight",property:"lineHeight"},fs:{type:"identity",property:"fontStyle"},tt:{type:"identity",property:"textTransform"},td:{type:"identity",property:"textDecoration"},w:{type:"spacing",property:"width"},miw:{type:"spacing",property:"minWidth"},maw:{type:"spacing",property:"maxWidth"},h:{type:"spacing",property:"height"},mih:{type:"spacing",property:"minHeight"},mah:{type:"spacing",property:"maxHeight"},bgsz:{type:"size",property:"backgroundSize"},bgp:{type:"identity",property:"backgroundPosition"},bgr:{type:"identity",property:"backgroundRepeat"},bga:{type:"identity",property:"backgroundAttachment"},pos:{type:"identity",property:"position"},top:{type:"size",property:"top"},left:{type:"size",property:"left"},bottom:{type:"size",property:"bottom"},right:{type:"size",property:"right"},inset:{type:"size",property:"inset"},display:{type:"identity",property:"display"},flex:{type:"identity",property:"flex"}};function D9(e,r){const n=vd({color:e,theme:r});return n.color==="dimmed"?"var(--mantine-color-dimmed)":n.color==="bright"?"var(--mantine-color-bright)":n.variable?`var(${n.variable})`:n.color}function vTe(e,r){const n=vd({color:e,theme:r});return n.isThemeColor&&n.shade===void 0?`var(--mantine-color-${n.color}-text)`:D9(e,r)}function bTe(e,r){if(typeof e=="number")return $e(e);if(typeof e=="string"){const[n,o,...i]=e.split(" ").filter(l=>l.trim()!=="");let a=`${$e(n)}`;return o&&(a+=` ${o}`),i.length>0&&(a+=` ${D9(i.join(" "),r)}`),a.trim()}return e}const HH={text:"var(--mantine-font-family)",mono:"var(--mantine-font-family-monospace)",monospace:"var(--mantine-font-family-monospace)",heading:"var(--mantine-font-family-headings)",headings:"var(--mantine-font-family-headings)"};function xTe(e){return typeof e=="string"&&e in HH?HH[e]:e}const wTe=["h1","h2","h3","h4","h5","h6"];function kTe(e,r){return typeof e=="string"&&e in r.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&wTe.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?$e(e):e}function _Te(e){return e}const STe=["h1","h2","h3","h4","h5","h6"];function ETe(e,r){return typeof e=="string"&&e in r.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&STe.includes(e)?`var(--mantine-${e}-line-height)`:e}function CTe(e,r){return typeof e=="string"&&e in r.radius?`var(--mantine-radius-${e})`:typeof e=="number"||typeof e=="string"?$e(e):e}function $Te(e){return typeof e=="number"?$e(e):e}function RTe(e,r){if(typeof e=="number")return $e(e);if(typeof e=="string"){const n=e.replace("-","");if(!(n in r.spacing))return $e(e);const o=`--mantine-spacing-${n}`;return e.startsWith("-")?`calc(var(${o}) * -1)`:`var(${o})`}return e}const M9={color:D9,textColor:vTe,fontSize:kTe,spacing:RTe,radius:CTe,identity:_Te,size:$Te,lineHeight:ETe,fontFamily:xTe,border:bTe};function UH(e){return e.replace("(min-width: ","").replace("em)","")}function zTe({media:e,...r}){const n=Object.keys(e).sort((o,i)=>Number(UH(o))-Number(UH(i))).map(o=>({query:o,styles:e[o]}));return{...r,media:n}}function TTe(e){if(typeof e!="object"||e===null)return!1;const r=Object.keys(e);return!(r.length===1&&r[0]==="base")}function jTe(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function ATe(e){return typeof e=="object"&&e!==null?So(e).filter(r=>r!=="base"):[]}function DTe(e,r){return typeof e=="object"&&e!==null&&r in e?e[r]:e}function WH({styleProps:e,data:r,theme:n}){return zTe(So(e).reduce((o,i)=>{if(i==="hiddenFrom"||i==="visibleFrom"||i==="sx")return o;const a=r[i],l=Array.isArray(a.property)?a.property:[a.property],s=jTe(e[i]);if(!TTe(e[i]))return l.forEach(d=>{o.inlineStyles[d]=M9[a.type](s,n)}),o;o.hasResponsiveStyles=!0;const c=ATe(e[i]);return l.forEach(d=>{s!=null&&(o.styles[d]=M9[a.type](s,n)),c.forEach(u=>{const p=`(min-width: ${n.breakpoints[u]})`;o.media[p]={...o.media[p],[d]:M9[a.type](DTe(e[i],u),n)}})}),o},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function Bw(){return`__m__-${S.useId().replace(/[:«»]/g,"")}`}function N9(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...N9(o,r)}),{}):typeof e=="function"?e(r):e??{}}function GH(e){return e.startsWith("data-")?e:`data-${e}`}function MTe(e){return Object.keys(e).reduce((r,n)=>{const o=e[n];return o===void 0||o===""||o===!1||o===null||(r[GH(n)]=e[n]),r},{})}function YH(e){return e?typeof e=="string"?{[GH(e)]:!0}:Array.isArray(e)?[...e].reduce((r,n)=>({...r,...YH(n)}),{}):MTe(e):null}function P9(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...P9(o,r)}),{}):typeof e=="function"?e(r):e??{}}function NTe({theme:e,style:r,vars:n,styleProps:o}){const i=P9(r,e),a=P9(n,e);return{...i,...a,...o}}const XH=S.forwardRef(({component:e,style:r,__vars:n,className:o,variant:i,mod:a,size:l,hiddenFrom:s,visibleFrom:c,lightHidden:d,darkHidden:u,renderRoot:p,__size:f,...g},v)=>{const w=lo(),x=e||"div",{styleProps:k,rest:C}=qH(g),_=Dze()?.()?.(k.sx),$=Bw(),R=WH({styleProps:k,theme:w,data:yTe}),T={ref:v,style:NTe({theme:w,style:r,vars:n,styleProps:R.inlineStyles}),className:el(o,_,{[$]:R.hasResponsiveStyles,"mantine-light-hidden":d,"mantine-dark-hidden":u,[`mantine-hidden-from-${s}`]:s,[`mantine-visible-from-${c}`]:c}),"data-variant":i,"data-size":sH(l)?void 0:l||void 0,size:f,...YH(a),...C};return y.jsxs(y.Fragment,{children:[R.hasResponsiveStyles&&y.jsx(Pw,{selector:`.${$}`,styles:R.styles,media:R.media}),typeof p=="function"?p(T):y.jsx(x,{...T})]})});XH.displayName="@mantine/core/Box";const Se=XH;function KH(e){return e}function PTe(e){const r=e;return n=>{const o=S.forwardRef((i,a)=>y.jsx(r,{...n,...i,ref:a}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o}}function ot(e){const r=S.forwardRef(e);return r.extend=KH,r.withProps=n=>{const o=S.forwardRef((i,a)=>y.jsx(r,{...n,...i,ref:a}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o},r}function Jn(e){const r=S.forwardRef(e);return r.withProps=n=>{const o=S.forwardRef((i,a)=>y.jsx(r,{...n,...i,ref:a}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o},r.extend=KH,r}const BTe=S.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function bd(){return S.useContext(BTe)}function ITe(e){if(!e||typeof e=="string")return 0;const r=e/36;return Math.round((4+15*r**.25+r/5)*10)}function B9(e){return e?.current?e.current.scrollHeight:"auto"}const Iw=typeof window<"u"&&window.requestAnimationFrame,ZH=0,OTe=e=>({height:0,overflow:"hidden",...e?{}:{display:"none"}});function LTe({transitionDuration:e,transitionTimingFunction:r="ease",onTransitionEnd:n=()=>{},opened:o,keepMounted:i=!1}){const a=S.useRef(null),l=OTe(i),[s,c]=S.useState(o?{}:l),d=v=>{Va.flushSync(()=>c(v))},u=v=>{d(w=>({...w,...v}))};function p(v){const w=e||ITe(v);return{transition:`height ${w}ms ${r}, opacity ${w}ms ${r}`}}wf(()=>{typeof Iw=="function"&&Iw(o?()=>{u({willChange:"height",display:"block",overflow:"hidden"}),Iw(()=>{const v=B9(a);u({...p(v),height:v})})}:()=>{const v=B9(a);u({...p(v),willChange:"height",height:v}),Iw(()=>u({height:ZH,overflow:"hidden"}))})},[o]);const f=v=>{if(!(v.target!==a.current||v.propertyName!=="height"))if(o){const w=B9(a);w===s.height?d({}):u({height:w}),n()}else s.height===ZH&&(d(l),n())};function g({style:v={},refKey:w="ref",...x}={}){const k=x[w],C={"aria-hidden":!o,...x,[w]:wH(a,k),onTransitionEnd:f,style:{boxSizing:"border-box",...v,...s}};return Zr.version.startsWith("18")?o||(C.inert=""):C.inert=!o,C}return g}const FTe={transitionDuration:200,transitionTimingFunction:"ease",animateOpacity:!0},QH=ot((e,r)=>{const{children:n,in:o,transitionDuration:i,transitionTimingFunction:a,style:l,onTransitionEnd:s,animateOpacity:c,keepMounted:d,...u}=Me("Collapse",FTe,e),p=lo(),f=_H(),g=p.respectReducedMotion&&f?0:i,v=LTe({opened:o,transitionDuration:g,transitionTimingFunction:a,onTransitionEnd:s,keepMounted:d});return g===0?o?y.jsx(Se,{...u,children:n}):null:y.jsx(Se,{...v({style:{opacity:o||!c?1:0,transition:c?`opacity ${g}ms ${a}`:"none",...N9(l,p)},ref:r,...u}),children:n})});QH.displayName="@mantine/core/Collapse";function Ow(){return typeof window<"u"}function Cf(e){return JH(e)?(e.nodeName||"").toLowerCase():"#document"}function ni(e){var r;return(e==null||(r=e.ownerDocument)==null?void 0:r.defaultView)||window}function Kl(e){var r;return(r=(JH(e)?e.ownerDocument:e.document)||window.document)==null?void 0:r.documentElement}function JH(e){return Ow()?e instanceof Node||e instanceof ni(e).Node:!1}function Ar(e){return Ow()?e instanceof Element||e instanceof ni(e).Element:!1}function $i(e){return Ow()?e instanceof HTMLElement||e instanceof ni(e).HTMLElement:!1}function I9(e){return!Ow()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof ni(e).ShadowRoot}const VTe=new Set(["inline","contents"]);function cy(e){const{overflow:r,overflowX:n,overflowY:o,display:i}=ia(e);return/auto|scroll|overlay|hidden|clip/.test(r+o+n)&&!VTe.has(i)}const qTe=new Set(["table","td","th"]);function HTe(e){return qTe.has(Cf(e))}const UTe=[":popover-open",":modal"];function Lw(e){return UTe.some(r=>{try{return e.matches(r)}catch{return!1}})}const WTe=["transform","translate","scale","rotate","perspective"],GTe=["transform","translate","scale","rotate","perspective","filter"],YTe=["paint","layout","strict","content"];function O9(e){const r=Fw(),n=Ar(e)?ia(e):e;return WTe.some(o=>n[o]?n[o]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!r&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!r&&(n.filter?n.filter!=="none":!1)||GTe.some(o=>(n.willChange||"").includes(o))||YTe.some(o=>(n.contain||"").includes(o))}function XTe(e){let r=Ks(e);for(;$i(r)&&!Xs(r);){if(O9(r))return r;if(Lw(r))return null;r=Ks(r)}return null}function Fw(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const KTe=new Set(["html","body","#document"]);function Xs(e){return KTe.has(Cf(e))}function ia(e){return ni(e).getComputedStyle(e)}function Vw(e){return Ar(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Ks(e){if(Cf(e)==="html")return e;const r=e.assignedSlot||e.parentNode||I9(e)&&e.host||Kl(e);return I9(r)?r.host:r}function eU(e){const r=Ks(e);return Xs(r)?e.ownerDocument?e.ownerDocument.body:e.body:$i(r)&&cy(r)?r:eU(r)}function Zs(e,r,n){var o;r===void 0&&(r=[]),n===void 0&&(n=!0);const i=eU(e),a=i===((o=e.ownerDocument)==null?void 0:o.body),l=ni(i);if(a){const s=L9(l);return r.concat(l,l.visualViewport||[],cy(i)?i:[],s&&n?Zs(s):[])}return r.concat(i,Zs(i,[],n))}function L9(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}const tU=["top","right","bottom","left"],rU=["start","end"],nU=tU.reduce((e,r)=>e.concat(r,r+"-"+rU[0],r+"-"+rU[1]),[]),tl=Math.min,Co=Math.max,qw=Math.round,Hw=Math.floor,Zl=e=>({x:e,y:e}),ZTe={left:"right",right:"left",bottom:"top",top:"bottom"},QTe={start:"end",end:"start"};function F9(e,r,n){return Co(e,tl(r,n))}function rl(e,r){return typeof e=="function"?e(r):e}function Ri(e){return e.split("-")[0]}function nl(e){return e.split("-")[1]}function V9(e){return e==="x"?"y":"x"}function q9(e){return e==="y"?"height":"width"}const JTe=new Set(["top","bottom"]);function ol(e){return JTe.has(Ri(e))?"y":"x"}function H9(e){return V9(ol(e))}function oU(e,r,n){n===void 0&&(n=!1);const o=nl(e),i=H9(e),a=q9(i);let l=i==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return r.reference[a]>r.floating[a]&&(l=Ww(l)),[l,Ww(l)]}function eje(e){const r=Ww(e);return[Uw(e),r,Uw(r)]}function Uw(e){return e.replace(/start|end/g,r=>QTe[r])}const iU=["left","right"],aU=["right","left"],tje=["top","bottom"],rje=["bottom","top"];function nje(e,r,n){switch(e){case"top":case"bottom":return n?r?aU:iU:r?iU:aU;case"left":case"right":return r?tje:rje;default:return[]}}function oje(e,r,n,o){const i=nl(e);let a=nje(Ri(e),n==="start",o);return i&&(a=a.map(l=>l+"-"+i),r&&(a=a.concat(a.map(Uw)))),a}function Ww(e){return e.replace(/left|right|bottom|top/g,r=>ZTe[r])}function ije(e){return{top:0,right:0,bottom:0,left:0,...e}}function U9(e){return typeof e!="number"?ije(e):{top:e,right:e,bottom:e,left:e}}function $f(e){const{x:r,y:n,width:o,height:i}=e;return{width:o,height:i,top:n,left:r,right:r+o,bottom:n+i,x:r,y:n}}function aje(){const e=navigator.userAgentData;return e!=null&&e.platform?e.platform:navigator.platform}function lje(){const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?e.brands.map(r=>{let{brand:n,version:o}=r;return n+"/"+o}).join(" "):navigator.userAgent}function sje(){return/apple/i.test(navigator.vendor)}function cje(){return aje().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function dje(){return lje().includes("jsdom/")}const lU="data-floating-ui-focusable",uje="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function sU(e){let r=e.activeElement;for(;((n=r)==null||(n=n.shadowRoot)==null?void 0:n.activeElement)!=null;){var n;r=r.shadowRoot.activeElement}return r}function dy(e,r){if(!e||!r)return!1;const n=r.getRootNode==null?void 0:r.getRootNode();if(e.contains(r))return!0;if(n&&I9(n)){let o=r;for(;o;){if(e===o)return!0;o=o.parentNode||o.host}}return!1}function Rf(e){return"composedPath"in e?e.composedPath()[0]:e.target}function W9(e,r){if(r==null)return!1;if("composedPath"in e)return e.composedPath().includes(r);const n=e;return n.target!=null&&r.contains(n.target)}function pje(e){return e.matches("html,body")}function op(e){return e?.ownerDocument||document}function hje(e){return $i(e)&&e.matches(uje)}function fje(e){if(!e||dje())return!0;try{return e.matches(":focus-visible")}catch{return!0}}function mje(e){return e?e.hasAttribute(lU)?e:e.querySelector("["+lU+"]")||e:null}function Gw(e,r,n){return n===void 0&&(n=!0),e.filter(o=>{var i;return o.parentId===r&&(!n||((i=o.context)==null?void 0:i.open))}).flatMap(o=>[o,...Gw(e,o.id,n)])}function gje(e){return"nativeEvent"in e}function G9(e,r){const n=["mouse","pen"];return n.push("",void 0),n.includes(e)}var yje=typeof document<"u",vje=function(){},Ql=yje?S.useLayoutEffect:vje;const bje={...gb};function Yw(e){const r=S.useRef(e);return Ql(()=>{r.current=e}),r}const xje=bje.useInsertionEffect,wje=xje||(e=>e());function Jl(e){const r=S.useRef(()=>{});return wje(()=>{r.current=e}),S.useCallback(function(){for(var n=arguments.length,o=new Array(n),i=0;i{const{placement:o="bottom",strategy:i="absolute",middleware:a=[],platform:l}=n,s=a.filter(Boolean),c=await(l.isRTL==null?void 0:l.isRTL(r));let d=await l.getElementRects({reference:e,floating:r,strategy:i}),{x:u,y:p}=cU(d,o,c),f=o,g={},v=0;for(let w=0;w({name:"arrow",options:e,async fn(r){const{x:n,y:o,placement:i,rects:a,platform:l,elements:s,middlewareData:c}=r,{element:d,padding:u=0}=rl(e,r)||{};if(d==null)return{};const p=U9(u),f={x:n,y:o},g=H9(i),v=q9(g),w=await l.getDimensions(d),x=g==="y",k=x?"top":"left",C=x?"bottom":"right",_=x?"clientHeight":"clientWidth",$=a.reference[v]+a.reference[g]-f[g]-a.floating[v],R=f[g]-a.reference[g],T=await(l.getOffsetParent==null?void 0:l.getOffsetParent(d));let A=T?T[_]:0;(!A||!await(l.isElement==null?void 0:l.isElement(T)))&&(A=s.floating[_]||a.floating[v]);const z=$/2-R/2,j=A/2-w[v]/2-1,I=tl(p[k],j),P=tl(p[C],j),L=I,H=A-w[v]-P,M=A/2-w[v]/2+z,V=F9(L,M,H),B=!c.arrow&&nl(i)!=null&&M!==V&&a.reference[v]/2-(Mnl(o)===e),...n.filter(o=>nl(o)!==e)]:n.filter(o=>Ri(o)===o)).filter(o=>e?nl(o)===e||(r?Uw(o)!==o:!1):!0)}const Eje=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(r){var n,o,i;const{rects:a,middlewareData:l,placement:s,platform:c,elements:d}=r,{crossAxis:u=!1,alignment:p,allowedPlacements:f=nU,autoAlignment:g=!0,...v}=rl(e,r),w=p!==void 0||f===nU?Sje(p||null,g,f):f,x=await zf(r,v),k=((n=l.autoPlacement)==null?void 0:n.index)||0,C=w[k];if(C==null)return{};const _=oU(C,a,await(c.isRTL==null?void 0:c.isRTL(d.floating)));if(s!==C)return{reset:{placement:w[0]}};const $=[x[Ri(C)],x[_[0]],x[_[1]]],R=[...((o=l.autoPlacement)==null?void 0:o.overflows)||[],{placement:C,overflows:$}],T=w[k+1];if(T)return{data:{index:k+1,overflows:R},reset:{placement:T}};const A=R.map(j=>{const I=nl(j.placement);return[j.placement,I&&u?j.overflows.slice(0,2).reduce((P,L)=>P+L,0):j.overflows[0],j.overflows]}).sort((j,I)=>j[1]-I[1]),z=((i=A.filter(j=>j[2].slice(0,nl(j[0])?2:3).every(I=>I<=0))[0])==null?void 0:i[0])||A[0][0];return z!==s?{data:{index:k+1,overflows:R},reset:{placement:z}}:{}}}},Cje=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(r){var n,o;const{placement:i,middlewareData:a,rects:l,initialPlacement:s,platform:c,elements:d}=r,{mainAxis:u=!0,crossAxis:p=!0,fallbackPlacements:f,fallbackStrategy:g="bestFit",fallbackAxisSideDirection:v="none",flipAlignment:w=!0,...x}=rl(e,r);if((n=a.arrow)!=null&&n.alignmentOffset)return{};const k=Ri(i),C=ol(s),_=Ri(s)===s,$=await(c.isRTL==null?void 0:c.isRTL(d.floating)),R=f||(_||!w?[Ww(s)]:eje(s)),T=v!=="none";!f&&T&&R.push(...oje(s,w,v,$));const A=[s,...R],z=await zf(r,x),j=[];let I=((o=a.flip)==null?void 0:o.overflows)||[];if(u&&j.push(z[k]),p){const M=oU(i,l,$);j.push(z[M[0]],z[M[1]])}if(I=[...I,{placement:i,overflows:j}],!j.every(M=>M<=0)){var P,L;const M=(((P=a.flip)==null?void 0:P.index)||0)+1,V=A[M];if(V&&(!(p==="alignment"&&C!==ol(V))||I.every(F=>ol(F.placement)===C?F.overflows[0]>0:!0)))return{data:{index:M,overflows:I},reset:{placement:V}};let B=(L=I.filter(F=>F.overflows[0]<=0).sort((F,q)=>F.overflows[1]-q.overflows[1])[0])==null?void 0:L.placement;if(!B)switch(g){case"bestFit":{var H;const F=(H=I.filter(q=>{if(T){const G=ol(q.placement);return G===C||G==="y"}return!0}).map(q=>[q.placement,q.overflows.filter(G=>G>0).reduce((G,U)=>G+U,0)]).sort((q,G)=>q[1]-G[1])[0])==null?void 0:H[0];F&&(B=F);break}case"initialPlacement":B=s;break}if(i!==B)return{reset:{placement:B}}}return{}}}};function dU(e,r){return{top:e.top-r.height,right:e.right-r.width,bottom:e.bottom-r.height,left:e.left-r.width}}function uU(e){return tU.some(r=>e[r]>=0)}const $je=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(r){const{rects:n}=r,{strategy:o="referenceHidden",...i}=rl(e,r);switch(o){case"referenceHidden":{const a=await zf(r,{...i,elementContext:"reference"}),l=dU(a,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:uU(l)}}}case"escaped":{const a=await zf(r,{...i,altBoundary:!0}),l=dU(a,n.floating);return{data:{escapedOffsets:l,escaped:uU(l)}}}default:return{}}}}};function pU(e){const r=tl(...e.map(a=>a.left)),n=tl(...e.map(a=>a.top)),o=Co(...e.map(a=>a.right)),i=Co(...e.map(a=>a.bottom));return{x:r,y:n,width:o-r,height:i-n}}function Rje(e){const r=e.slice().sort((i,a)=>i.y-a.y),n=[];let o=null;for(let i=0;io.height/2?n.push([a]):n[n.length-1].push(a),o=a}return n.map(i=>$f(pU(i)))}const zje=function(e){return e===void 0&&(e={}),{name:"inline",options:e,async fn(r){const{placement:n,elements:o,rects:i,platform:a,strategy:l}=r,{padding:s=2,x:c,y:d}=rl(e,r),u=Array.from(await(a.getClientRects==null?void 0:a.getClientRects(o.reference))||[]),p=Rje(u),f=$f(pU(u)),g=U9(s);function v(){if(p.length===2&&p[0].left>p[1].right&&c!=null&&d!=null)return p.find(x=>c>x.left-g.left&&cx.top-g.top&&d=2){if(ol(n)==="y"){const I=p[0],P=p[p.length-1],L=Ri(n)==="top",H=I.top,M=P.bottom,V=L?I.left:P.left,B=L?I.right:P.right,F=B-V,q=M-H;return{top:H,bottom:M,left:V,right:B,width:F,height:q,x:V,y:H}}const x=Ri(n)==="left",k=Co(...p.map(I=>I.right)),C=tl(...p.map(I=>I.left)),_=p.filter(I=>x?I.left===C:I.right===k),$=_[0].top,R=_[_.length-1].bottom,T=C,A=k,z=A-T,j=R-$;return{top:$,bottom:R,left:T,right:A,width:z,height:j,x:T,y:$}}return f}const w=await a.getElementRects({reference:{getBoundingClientRect:v},floating:o.floating,strategy:l});return i.reference.x!==w.reference.x||i.reference.y!==w.reference.y||i.reference.width!==w.reference.width||i.reference.height!==w.reference.height?{reset:{rects:w}}:{}}}},hU=new Set(["left","top"]);async function Tje(e,r){const{placement:n,platform:o,elements:i}=e,a=await(o.isRTL==null?void 0:o.isRTL(i.floating)),l=Ri(n),s=nl(n),c=ol(n)==="y",d=hU.has(l)?-1:1,u=a&&c?-1:1,p=rl(r,e);let{mainAxis:f,crossAxis:g,alignmentAxis:v}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return s&&typeof v=="number"&&(g=s==="end"?v*-1:v),c?{x:g*u,y:f*d}:{x:f*d,y:g*u}}const jje=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(r){var n,o;const{x:i,y:a,placement:l,middlewareData:s}=r,c=await Tje(r,e);return l===((n=s.offset)==null?void 0:n.placement)&&(o=s.arrow)!=null&&o.alignmentOffset?{}:{x:i+c.x,y:a+c.y,data:{...c,placement:l}}}}},Aje=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(r){const{x:n,y:o,placement:i}=r,{mainAxis:a=!0,crossAxis:l=!1,limiter:s={fn:x=>{let{x:k,y:C}=x;return{x:k,y:C}}},...c}=rl(e,r),d={x:n,y:o},u=await zf(r,c),p=ol(Ri(i)),f=V9(p);let g=d[f],v=d[p];if(a){const x=f==="y"?"top":"left",k=f==="y"?"bottom":"right",C=g+u[x],_=g-u[k];g=F9(C,g,_)}if(l){const x=p==="y"?"top":"left",k=p==="y"?"bottom":"right",C=v+u[x],_=v-u[k];v=F9(C,v,_)}const w=s.fn({...r,[f]:g,[p]:v});return{...w,data:{x:w.x-n,y:w.y-o,enabled:{[f]:a,[p]:l}}}}}},Dje=function(e){return e===void 0&&(e={}),{options:e,fn(r){const{x:n,y:o,placement:i,rects:a,middlewareData:l}=r,{offset:s=0,mainAxis:c=!0,crossAxis:d=!0}=rl(e,r),u={x:n,y:o},p=ol(i),f=V9(p);let g=u[f],v=u[p];const w=rl(s,r),x=typeof w=="number"?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(c){const _=f==="y"?"height":"width",$=a.reference[f]-a.floating[_]+x.mainAxis,R=a.reference[f]+a.reference[_]-x.mainAxis;g<$?g=$:g>R&&(g=R)}if(d){var k,C;const _=f==="y"?"width":"height",$=hU.has(Ri(i)),R=a.reference[p]-a.floating[_]+($&&((k=l.offset)==null?void 0:k[p])||0)+($?0:x.crossAxis),T=a.reference[p]+a.reference[_]+($?0:((C=l.offset)==null?void 0:C[p])||0)-($?x.crossAxis:0);vT&&(v=T)}return{[f]:g,[p]:v}}}},Mje=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(r){var n,o;const{placement:i,rects:a,platform:l,elements:s}=r,{apply:c=()=>{},...d}=rl(e,r),u=await zf(r,d),p=Ri(i),f=nl(i),g=ol(i)==="y",{width:v,height:w}=a.floating;let x,k;p==="top"||p==="bottom"?(x=p,k=f===(await(l.isRTL==null?void 0:l.isRTL(s.floating))?"start":"end")?"left":"right"):(k=p,x=f==="end"?"top":"bottom");const C=w-u.top-u.bottom,_=v-u.left-u.right,$=tl(w-u[x],C),R=tl(v-u[k],_),T=!r.middlewareData.shift;let A=$,z=R;if((n=r.middlewareData.shift)!=null&&n.enabled.x&&(z=_),(o=r.middlewareData.shift)!=null&&o.enabled.y&&(A=C),T&&!f){const I=Co(u.left,0),P=Co(u.right,0),L=Co(u.top,0),H=Co(u.bottom,0);g?z=v-2*(I!==0||P!==0?I+P:Co(u.left,u.right)):A=w-2*(L!==0||H!==0?L+H:Co(u.top,u.bottom))}await c({...r,availableWidth:z,availableHeight:A});const j=await l.getDimensions(s.floating);return v!==j.width||w!==j.height?{reset:{rects:!0}}:{}}}};function fU(e){const r=ia(e);let n=parseFloat(r.width)||0,o=parseFloat(r.height)||0;const i=$i(e),a=i?e.offsetWidth:n,l=i?e.offsetHeight:o,s=qw(n)!==a||qw(o)!==l;return s&&(n=a,o=l),{width:n,height:o,$:s}}function Y9(e){return Ar(e)?e:e.contextElement}function Tf(e){const r=Y9(e);if(!$i(r))return Zl(1);const n=r.getBoundingClientRect(),{width:o,height:i,$:a}=fU(r);let l=(a?qw(n.width):n.width)/o,s=(a?qw(n.height):n.height)/i;return(!l||!Number.isFinite(l))&&(l=1),(!s||!Number.isFinite(s))&&(s=1),{x:l,y:s}}const Nje=Zl(0);function mU(e){const r=ni(e);return!Fw()||!r.visualViewport?Nje:{x:r.visualViewport.offsetLeft,y:r.visualViewport.offsetTop}}function Pje(e,r,n){return r===void 0&&(r=!1),!n||r&&n!==ni(e)?!1:r}function ip(e,r,n,o){r===void 0&&(r=!1),n===void 0&&(n=!1);const i=e.getBoundingClientRect(),a=Y9(e);let l=Zl(1);r&&(o?Ar(o)&&(l=Tf(o)):l=Tf(e));const s=Pje(a,n,o)?mU(a):Zl(0);let c=(i.left+s.x)/l.x,d=(i.top+s.y)/l.y,u=i.width/l.x,p=i.height/l.y;if(a){const f=ni(a),g=o&&Ar(o)?ni(o):o;let v=f,w=L9(v);for(;w&&o&&g!==v;){const x=Tf(w),k=w.getBoundingClientRect(),C=ia(w),_=k.left+(w.clientLeft+parseFloat(C.paddingLeft))*x.x,$=k.top+(w.clientTop+parseFloat(C.paddingTop))*x.y;c*=x.x,d*=x.y,u*=x.x,p*=x.y,c+=_,d+=$,v=ni(w),w=L9(v)}}return $f({width:u,height:p,x:c,y:d})}function Xw(e,r){const n=Vw(e).scrollLeft;return r?r.left+n:ip(Kl(e)).left+n}function gU(e,r){const n=e.getBoundingClientRect(),o=n.left+r.scrollLeft-Xw(e,n),i=n.top+r.scrollTop;return{x:o,y:i}}function Bje(e){let{elements:r,rect:n,offsetParent:o,strategy:i}=e;const a=i==="fixed",l=Kl(o),s=r?Lw(r.floating):!1;if(o===l||s&&a)return n;let c={scrollLeft:0,scrollTop:0},d=Zl(1);const u=Zl(0),p=$i(o);if((p||!p&&!a)&&((Cf(o)!=="body"||cy(l))&&(c=Vw(o)),$i(o))){const g=ip(o);d=Tf(o),u.x=g.x+o.clientLeft,u.y=g.y+o.clientTop}const f=l&&!p&&!a?gU(l,c):Zl(0);return{width:n.width*d.x,height:n.height*d.y,x:n.x*d.x-c.scrollLeft*d.x+u.x+f.x,y:n.y*d.y-c.scrollTop*d.y+u.y+f.y}}function Ije(e){return Array.from(e.getClientRects())}function Oje(e){const r=Kl(e),n=Vw(e),o=e.ownerDocument.body,i=Co(r.scrollWidth,r.clientWidth,o.scrollWidth,o.clientWidth),a=Co(r.scrollHeight,r.clientHeight,o.scrollHeight,o.clientHeight);let l=-n.scrollLeft+Xw(e);const s=-n.scrollTop;return ia(o).direction==="rtl"&&(l+=Co(r.clientWidth,o.clientWidth)-i),{width:i,height:a,x:l,y:s}}const yU=25;function Lje(e,r){const n=ni(e),o=Kl(e),i=n.visualViewport;let a=o.clientWidth,l=o.clientHeight,s=0,c=0;if(i){a=i.width,l=i.height;const u=Fw();(!u||u&&r==="fixed")&&(s=i.offsetLeft,c=i.offsetTop)}const d=Xw(o);if(d<=0){const u=o.ownerDocument,p=u.body,f=getComputedStyle(p),g=u.compatMode==="CSS1Compat"&&parseFloat(f.marginLeft)+parseFloat(f.marginRight)||0,v=Math.abs(o.clientWidth-p.clientWidth-g);v<=yU&&(a-=v)}else d<=yU&&(a+=d);return{width:a,height:l,x:s,y:c}}const Fje=new Set(["absolute","fixed"]);function Vje(e,r){const n=ip(e,!0,r==="fixed"),o=n.top+e.clientTop,i=n.left+e.clientLeft,a=$i(e)?Tf(e):Zl(1),l=e.clientWidth*a.x,s=e.clientHeight*a.y,c=i*a.x,d=o*a.y;return{width:l,height:s,x:c,y:d}}function vU(e,r,n){let o;if(r==="viewport")o=Lje(e,n);else if(r==="document")o=Oje(Kl(e));else if(Ar(r))o=Vje(r,n);else{const i=mU(e);o={x:r.x-i.x,y:r.y-i.y,width:r.width,height:r.height}}return $f(o)}function bU(e,r){const n=Ks(e);return n===r||!Ar(n)||Xs(n)?!1:ia(n).position==="fixed"||bU(n,r)}function qje(e,r){const n=r.get(e);if(n)return n;let o=Zs(e,[],!1).filter(s=>Ar(s)&&Cf(s)!=="body"),i=null;const a=ia(e).position==="fixed";let l=a?Ks(e):e;for(;Ar(l)&&!Xs(l);){const s=ia(l),c=O9(l);!c&&s.position==="fixed"&&(i=null),(a?!c&&!i:!c&&s.position==="static"&&i&&Fje.has(i.position)||cy(l)&&!c&&bU(e,l))?o=o.filter(d=>d!==l):i=s,l=Ks(l)}return r.set(e,o),o}function Hje(e){let{element:r,boundary:n,rootBoundary:o,strategy:i}=e;const a=[...n==="clippingAncestors"?Lw(r)?[]:qje(r,this._c):[].concat(n),o],l=a[0],s=a.reduce((c,d)=>{const u=vU(r,d,i);return c.top=Co(u.top,c.top),c.right=tl(u.right,c.right),c.bottom=tl(u.bottom,c.bottom),c.left=Co(u.left,c.left),c},vU(r,l,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function Uje(e){const{width:r,height:n}=fU(e);return{width:r,height:n}}function Wje(e,r,n){const o=$i(r),i=Kl(r),a=n==="fixed",l=ip(e,!0,a,r);let s={scrollLeft:0,scrollTop:0};const c=Zl(0);function d(){c.x=Xw(i)}if(o||!o&&!a)if((Cf(r)!=="body"||cy(i))&&(s=Vw(r)),o){const g=ip(r,!0,a,r);c.x=g.x+r.clientLeft,c.y=g.y+r.clientTop}else i&&d();a&&!o&&i&&d();const u=i&&!o&&!a?gU(i,s):Zl(0),p=l.left+s.scrollLeft-c.x-u.x,f=l.top+s.scrollTop-c.y-u.y;return{x:p,y:f,width:l.width,height:l.height}}function X9(e){return ia(e).position==="static"}function xU(e,r){if(!$i(e)||ia(e).position==="fixed")return null;if(r)return r(e);let n=e.offsetParent;return Kl(e)===n&&(n=n.ownerDocument.body),n}function wU(e,r){const n=ni(e);if(Lw(e))return n;if(!$i(e)){let i=Ks(e);for(;i&&!Xs(i);){if(Ar(i)&&!X9(i))return i;i=Ks(i)}return n}let o=xU(e,r);for(;o&&HTe(o)&&X9(o);)o=xU(o,r);return o&&Xs(o)&&X9(o)&&!O9(o)?n:o||XTe(e)||n}const Gje=async function(e){const r=this.getOffsetParent||wU,n=this.getDimensions,o=await n(e.floating);return{reference:Wje(e.reference,await r(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function Yje(e){return ia(e).direction==="rtl"}const Xje={convertOffsetParentRelativeRectToViewportRelativeRect:Bje,getDocumentElement:Kl,getClippingRect:Hje,getOffsetParent:wU,getElementRects:Gje,getClientRects:Ije,getDimensions:Uje,getScale:Tf,isElement:Ar,isRTL:Yje};function kU(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}function Kje(e,r){let n=null,o;const i=Kl(e);function a(){var s;clearTimeout(o),(s=n)==null||s.disconnect(),n=null}function l(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();const d=e.getBoundingClientRect(),{left:u,top:p,width:f,height:g}=d;if(s||r(),!f||!g)return;const v=Hw(p),w=Hw(i.clientWidth-(u+f)),x=Hw(i.clientHeight-(p+g)),k=Hw(u),C={rootMargin:-v+"px "+-w+"px "+-x+"px "+-k+"px",threshold:Co(0,tl(1,c))||1};let _=!0;function $(R){const T=R[0].intersectionRatio;if(T!==c){if(!_)return l();T?l(!1,T):o=setTimeout(()=>{l(!1,1e-7)},1e3)}T===1&&!kU(d,e.getBoundingClientRect())&&l(),_=!1}try{n=new IntersectionObserver($,{...C,root:i.ownerDocument})}catch{n=new IntersectionObserver($,C)}n.observe(e)}return l(!0),a}function Kw(e,r,n,o){o===void 0&&(o={});const{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:l=typeof ResizeObserver=="function",layoutShift:s=typeof IntersectionObserver=="function",animationFrame:c=!1}=o,d=Y9(e),u=i||a?[...d?Zs(d):[],...Zs(r)]:[];u.forEach(k=>{i&&k.addEventListener("scroll",n,{passive:!0}),a&&k.addEventListener("resize",n)});const p=d&&s?Kje(d,n):null;let f=-1,g=null;l&&(g=new ResizeObserver(k=>{let[C]=k;C&&C.target===d&&g&&(g.unobserve(r),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var _;(_=g)==null||_.observe(r)})),n()}),d&&!c&&g.observe(d),g.observe(r));let v,w=c?ip(e):null;c&&x();function x(){const k=ip(e);w&&!kU(w,k)&&n(),w=k,v=requestAnimationFrame(x)}return n(),()=>{var k;u.forEach(C=>{i&&C.removeEventListener("scroll",n),a&&C.removeEventListener("resize",n)}),p?.(),(k=g)==null||k.disconnect(),g=null,c&&cancelAnimationFrame(v)}}const _U=jje,Zje=Eje,Qje=Aje,Jje=Cje,SU=Mje,EU=$je,CU=_je,eAe=zje,tAe=Dje,$U=(e,r,n)=>{const o=new Map,i={platform:Xje,...n},a={...i.platform,_c:o};return kje(e,r,{...i,platform:a})};var rAe=typeof document<"u",nAe=function(){},Zw=rAe?S.useLayoutEffect:nAe;function Qw(e,r){if(e===r)return!0;if(typeof e!=typeof r)return!1;if(typeof e=="function"&&e.toString()===r.toString())return!0;let n,o,i;if(e&&r&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==r.length)return!1;for(o=n;o--!==0;)if(!Qw(e[o],r[o]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!{}.hasOwnProperty.call(r,i[o]))return!1;for(o=n;o--!==0;){const a=i[o];if(!(a==="_owner"&&e.$$typeof)&&!Qw(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}function RU(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function zU(e,r){const n=RU(e);return Math.round(r*n)/n}function K9(e){const r=S.useRef(e);return Zw(()=>{r.current=e}),r}function oAe(e){e===void 0&&(e={});const{placement:r="bottom",strategy:n="absolute",middleware:o=[],platform:i,elements:{reference:a,floating:l}={},transform:s=!0,whileElementsMounted:c,open:d}=e,[u,p]=S.useState({x:0,y:0,strategy:n,placement:r,middlewareData:{},isPositioned:!1}),[f,g]=S.useState(o);Qw(f,o)||g(o);const[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(q=>{q!==T.current&&(T.current=q,w(q))},[]),_=S.useCallback(q=>{q!==A.current&&(A.current=q,k(q))},[]),$=a||v,R=l||x,T=S.useRef(null),A=S.useRef(null),z=S.useRef(u),j=c!=null,I=K9(c),P=K9(i),L=K9(d),H=S.useCallback(()=>{if(!T.current||!A.current)return;const q={placement:r,strategy:n,middleware:f};P.current&&(q.platform=P.current),$U(T.current,A.current,q).then(G=>{const U={...G,isPositioned:L.current!==!1};M.current&&!Qw(z.current,U)&&(z.current=U,Va.flushSync(()=>{p(U)}))})},[f,r,n,P,L]);Zw(()=>{d===!1&&z.current.isPositioned&&(z.current.isPositioned=!1,p(q=>({...q,isPositioned:!1})))},[d]);const M=S.useRef(!1);Zw(()=>(M.current=!0,()=>{M.current=!1}),[]),Zw(()=>{if($&&(T.current=$),R&&(A.current=R),$&&R){if(I.current)return I.current($,R,H);H()}},[$,R,H,I,j]);const V=S.useMemo(()=>({reference:T,floating:A,setReference:C,setFloating:_}),[C,_]),B=S.useMemo(()=>({reference:$,floating:R}),[$,R]),F=S.useMemo(()=>{const q={position:n,left:0,top:0};if(!B.floating)return q;const G=zU(B.floating,u.x),U=zU(B.floating,u.y);return s?{...q,transform:"translate("+G+"px, "+U+"px)",...RU(B.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:G,top:U}},[n,s,B.floating,u.x,u.y]);return S.useMemo(()=>({...u,update:H,refs:V,elements:B,floatingStyles:F}),[u,H,V,B,F])}const iAe=e=>{function r(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:o,padding:i}=typeof e=="function"?e(n):e;return o&&r(o)?o.current!=null?CU({element:o.current,padding:i}).fn(n):{}:o?CU({element:o,padding:i}).fn(n):{}}}},TU=(e,r)=>({..._U(e),options:[e,r]}),Z9=(e,r)=>({...Qje(e),options:[e,r]}),jU=(e,r)=>({...tAe(e),options:[e,r]}),Jw=(e,r)=>({...Jje(e),options:[e,r]}),aAe=(e,r)=>({...SU(e),options:[e,r]}),lAe=(e,r)=>({...EU(e),options:[e,r]}),uy=(e,r)=>({...eAe(e),options:[e,r]}),AU=(e,r)=>({...iAe(e),options:[e,r]});function DU(e){const r=S.useRef(void 0),n=S.useCallback(o=>{const i=e.map(a=>{if(a!=null){if(typeof a=="function"){const l=a,s=l(o);return typeof s=="function"?s:()=>{l(null)}}return a.current=o,()=>{a.current=null}}});return()=>{i.forEach(a=>a?.())}},e);return S.useMemo(()=>e.every(o=>o==null)?null:o=>{r.current&&(r.current(),r.current=void 0),o!=null&&(r.current=n(o))},e)}const sAe="data-floating-ui-focusable",MU="active",NU="selected",cAe={...gb};let PU=!1,dAe=0;const BU=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+dAe++;function uAe(){const[e,r]=S.useState(()=>PU?BU():void 0);return Ql(()=>{e==null&&r(BU())},[]),S.useEffect(()=>{PU=!0},[]),e}const pAe=cAe.useId,IU=pAe||uAe;function hAe(){const e=new Map;return{emit(r,n){var o;(o=e.get(r))==null||o.forEach(i=>i(n))},on(r,n){e.has(r)||e.set(r,new Set),e.get(r).add(n)},off(r,n){var o;(o=e.get(r))==null||o.delete(n)}}}const fAe=S.createContext(null),mAe=S.createContext(null),Q9=()=>{var e;return((e=S.useContext(fAe))==null?void 0:e.id)||null},J9=()=>S.useContext(mAe);function eS(e){return"data-floating-ui-"+e}function aa(e){e.current!==-1&&(clearTimeout(e.current),e.current=-1)}const OU=eS("safe-polygon");function e3(e,r,n){if(n&&!G9(n))return 0;if(typeof e=="number")return e;if(typeof e=="function"){const o=e();return typeof o=="number"?o:o?.[r]}return e?.[r]}function tS(e){return typeof e=="function"?e():e}function LU(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,dataRef:i,events:a,elements:l}=e,{enabled:s=!0,delay:c=0,handleClose:d=null,mouseOnly:u=!1,restMs:p=0,move:f=!0}=r,g=J9(),v=Q9(),w=Yw(d),x=Yw(c),k=Yw(n),C=Yw(p),_=S.useRef(),$=S.useRef(-1),R=S.useRef(),T=S.useRef(-1),A=S.useRef(!0),z=S.useRef(!1),j=S.useRef(()=>{}),I=S.useRef(!1),P=Jl(()=>{var F;const q=(F=i.current.openEvent)==null?void 0:F.type;return q?.includes("mouse")&&q!=="mousedown"});S.useEffect(()=>{if(!s)return;function F(q){let{open:G}=q;G||(aa($),aa(T),A.current=!0,I.current=!1)}return a.on("openchange",F),()=>{a.off("openchange",F)}},[s,a]),S.useEffect(()=>{if(!s||!w.current||!n)return;function F(G){P()&&o(!1,G,"hover")}const q=op(l.floating).documentElement;return q.addEventListener("mouseleave",F),()=>{q.removeEventListener("mouseleave",F)}},[l.floating,n,o,s,w,P]);const L=S.useCallback(function(F,q,G){q===void 0&&(q=!0),G===void 0&&(G="hover");const U=e3(x.current,"close",_.current);U&&!R.current?(aa($),$.current=window.setTimeout(()=>o(!1,F,G),U)):q&&(aa($),o(!1,F,G))},[x,o]),H=Jl(()=>{j.current(),R.current=void 0}),M=Jl(()=>{if(z.current){const F=op(l.floating).body;F.style.pointerEvents="",F.removeAttribute(OU),z.current=!1}}),V=Jl(()=>i.current.openEvent?["click","mousedown"].includes(i.current.openEvent.type):!1);S.useEffect(()=>{if(!s)return;function F(K){if(aa($),A.current=!1,u&&!G9(_.current)||tS(C.current)>0&&!e3(x.current,"open"))return;const O=e3(x.current,"open",_.current);O?$.current=window.setTimeout(()=>{k.current||o(!0,K,"hover")},O):n||o(!0,K,"hover")}function q(K){if(V()){M();return}j.current();const O=op(l.floating);if(aa(T),I.current=!1,w.current&&i.current.floatingContext){n||aa($),R.current=w.current({...i.current.floatingContext,tree:g,x:K.clientX,y:K.clientY,onClose(){M(),H(),V()||L(K,!0,"safe-polygon")}});const W=R.current;O.addEventListener("mousemove",W),j.current=()=>{O.removeEventListener("mousemove",W)};return}(_.current!=="touch"||!dy(l.floating,K.relatedTarget))&&L(K)}function G(K){V()||i.current.floatingContext&&(w.current==null||w.current({...i.current.floatingContext,tree:g,x:K.clientX,y:K.clientY,onClose(){M(),H(),V()||L(K)}})(K))}function U(){aa($)}function Y(K){V()||L(K,!1)}if(Ar(l.domReference)){const K=l.domReference,O=l.floating;return n&&K.addEventListener("mouseleave",G),f&&K.addEventListener("mousemove",F,{once:!0}),K.addEventListener("mouseenter",F),K.addEventListener("mouseleave",q),O&&(O.addEventListener("mouseleave",G),O.addEventListener("mouseenter",U),O.addEventListener("mouseleave",Y)),()=>{n&&K.removeEventListener("mouseleave",G),f&&K.removeEventListener("mousemove",F),K.removeEventListener("mouseenter",F),K.removeEventListener("mouseleave",q),O&&(O.removeEventListener("mouseleave",G),O.removeEventListener("mouseenter",U),O.removeEventListener("mouseleave",Y))}}},[l,s,e,u,f,L,H,M,o,n,k,g,x,w,i,V,C]),Ql(()=>{var F;if(s&&n&&(F=w.current)!=null&&(F=F.__options)!=null&&F.blockPointerEvents&&P()){z.current=!0;const G=l.floating;if(Ar(l.domReference)&&G){var q;const U=op(l.floating).body;U.setAttribute(OU,"");const Y=l.domReference,K=g==null||(q=g.nodesRef.current.find(O=>O.id===v))==null||(q=q.context)==null?void 0:q.elements.floating;return K&&(K.style.pointerEvents=""),U.style.pointerEvents="none",Y.style.pointerEvents="auto",G.style.pointerEvents="auto",()=>{U.style.pointerEvents="",Y.style.pointerEvents="",G.style.pointerEvents=""}}}},[s,n,v,l,g,w,P]),Ql(()=>{n||(_.current=void 0,I.current=!1,H(),M())},[n,H,M]),S.useEffect(()=>()=>{H(),aa($),aa(T),M()},[s,l.domReference,H,M]);const B=S.useMemo(()=>{function F(q){_.current=q.pointerType}return{onPointerDown:F,onPointerEnter:F,onMouseMove(q){const{nativeEvent:G}=q;function U(){!A.current&&!k.current&&o(!0,G,"hover")}u&&!G9(_.current)||n||tS(C.current)===0||I.current&&q.movementX**2+q.movementY**2<2||(aa(T),_.current==="touch"?U():(I.current=!0,T.current=window.setTimeout(U,tS(C.current))))}}},[u,o,n,k,C]);return S.useMemo(()=>s?{reference:B}:{},[s,B])}const rS=()=>{},FU=S.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:rS,setState:rS,isInstantPhase:!1}),gAe=()=>S.useContext(FU);function VU(e){const{children:r,delay:n,timeoutMs:o=0}=e,[i,a]=S.useReducer((c,d)=>({...c,...d}),{delay:n,timeoutMs:o,initialDelay:n,currentId:null,isInstantPhase:!1}),l=S.useRef(null),s=S.useCallback(c=>{a({currentId:c})},[]);return Ql(()=>{i.currentId?l.current===null?l.current=i.currentId:i.isInstantPhase||a({isInstantPhase:!0}):(i.isInstantPhase&&a({isInstantPhase:!1}),l.current=null)},[i.currentId,i.isInstantPhase]),y.jsx(FU.Provider,{value:S.useMemo(()=>({...i,setState:a,setCurrentId:s}),[i,s]),children:r})}function qU(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,floatingId:i}=e,{id:a,enabled:l=!0}=r,s=a??i,c=gAe(),{currentId:d,setCurrentId:u,initialDelay:p,setState:f,timeoutMs:g}=c;return Ql(()=>{l&&d&&(f({delay:{open:1,close:e3(p,"close")}}),d!==s&&o(!1))},[l,s,o,f,d,p]),Ql(()=>{function v(){o(!1),f({delay:p,currentId:null})}if(l&&d&&!n&&d===s){if(g){const w=window.setTimeout(v,g);return()=>{clearTimeout(w)}}v()}},[l,n,f,d,s,o,p,g]),Ql(()=>{l&&(u===rS||!n||u(s))},[l,n,u,s]),c}const yAe={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},vAe={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},HU=e=>{var r,n;return{escapeKey:typeof e=="boolean"?e:(r=e?.escapeKey)!=null?r:!1,outsidePress:typeof e=="boolean"?e:(n=e?.outsidePress)!=null?n:!0}};function UU(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,elements:i,dataRef:a}=e,{enabled:l=!0,escapeKey:s=!0,outsidePress:c=!0,outsidePressEvent:d="pointerdown",referencePress:u=!1,referencePressEvent:p="pointerdown",ancestorScroll:f=!1,bubbles:g,capture:v}=r,w=J9(),x=Jl(typeof c=="function"?c:()=>!1),k=typeof c=="function"?x:c,C=S.useRef(!1),{escapeKey:_,outsidePress:$}=HU(g),{escapeKey:R,outsidePress:T}=HU(v),A=S.useRef(!1),z=Jl(M=>{var V;if(!n||!l||!s||M.key!=="Escape"||A.current)return;const B=(V=a.current.floatingContext)==null?void 0:V.nodeId,F=w?Gw(w.nodesRef.current,B):[];if(!_&&(M.stopPropagation(),F.length>0)){let q=!0;if(F.forEach(G=>{var U;if((U=G.context)!=null&&U.open&&!G.context.dataRef.current.__escapeKeyBubbles){q=!1;return}}),!q)return}o(!1,gje(M)?M.nativeEvent:M,"escape-key")}),j=Jl(M=>{var V;const B=()=>{var F;z(M),(F=Rf(M))==null||F.removeEventListener("keydown",B)};(V=Rf(M))==null||V.addEventListener("keydown",B)}),I=Jl(M=>{var V;const B=a.current.insideReactTree;a.current.insideReactTree=!1;const F=C.current;if(C.current=!1,d==="click"&&F||B||typeof k=="function"&&!k(M))return;const q=Rf(M),G="["+eS("inert")+"]",U=op(i.floating).querySelectorAll(G);let Y=Ar(q)?q:null;for(;Y&&!Xs(Y);){const Z=Ks(Y);if(Xs(Z)||!Ar(Z))break;Y=Z}if(U.length&&Ar(q)&&!pje(q)&&!dy(q,i.floating)&&Array.from(U).every(Z=>!dy(Y,Z)))return;if($i(q)&&H){const Z=Xs(q),Q=ia(q),ie=/auto|scroll/,te=Z||ie.test(Q.overflowX),re=Z||ie.test(Q.overflowY),ue=te&&q.clientWidth>0&&q.scrollWidth>q.clientWidth,_e=re&&q.clientHeight>0&&q.scrollHeight>q.clientHeight,ce=Q.direction==="rtl",pe=_e&&(ce?M.offsetX<=q.offsetWidth-q.clientWidth:M.offsetX>q.clientWidth),xe=ue&&M.offsetY>q.clientHeight;if(pe||xe)return}const K=(V=a.current.floatingContext)==null?void 0:V.nodeId,O=w&&Gw(w.nodesRef.current,K).some(Z=>{var Q;return W9(M,(Q=Z.context)==null?void 0:Q.elements.floating)});if(W9(M,i.floating)||W9(M,i.domReference)||O)return;const W=w?Gw(w.nodesRef.current,K):[];if(W.length>0){let Z=!0;if(W.forEach(Q=>{var ie;if((ie=Q.context)!=null&&ie.open&&!Q.context.dataRef.current.__outsidePressBubbles){Z=!1;return}}),!Z)return}o(!1,M,"outside-press")}),P=Jl(M=>{var V;const B=()=>{var F;I(M),(F=Rf(M))==null||F.removeEventListener(d,B)};(V=Rf(M))==null||V.addEventListener(d,B)});S.useEffect(()=>{if(!n||!l)return;a.current.__escapeKeyBubbles=_,a.current.__outsidePressBubbles=$;let M=-1;function V(U){o(!1,U,"ancestor-scroll")}function B(){window.clearTimeout(M),A.current=!0}function F(){M=window.setTimeout(()=>{A.current=!1},Fw()?5:0)}const q=op(i.floating);s&&(q.addEventListener("keydown",R?j:z,R),q.addEventListener("compositionstart",B),q.addEventListener("compositionend",F)),k&&q.addEventListener(d,T?P:I,T);let G=[];return f&&(Ar(i.domReference)&&(G=Zs(i.domReference)),Ar(i.floating)&&(G=G.concat(Zs(i.floating))),!Ar(i.reference)&&i.reference&&i.reference.contextElement&&(G=G.concat(Zs(i.reference.contextElement)))),G=G.filter(U=>{var Y;return U!==((Y=q.defaultView)==null?void 0:Y.visualViewport)}),G.forEach(U=>{U.addEventListener("scroll",V,{passive:!0})}),()=>{s&&(q.removeEventListener("keydown",R?j:z,R),q.removeEventListener("compositionstart",B),q.removeEventListener("compositionend",F)),k&&q.removeEventListener(d,T?P:I,T),G.forEach(U=>{U.removeEventListener("scroll",V)}),window.clearTimeout(M)}},[a,i,s,k,d,n,o,f,l,_,$,z,R,j,I,T,P]),S.useEffect(()=>{a.current.insideReactTree=!1},[a,k,d]);const L=S.useMemo(()=>({onKeyDown:z,...u&&{[yAe[p]]:M=>{o(!1,M.nativeEvent,"reference-press")},...p!=="click"&&{onClick(M){o(!1,M.nativeEvent,"reference-press")}}}}),[z,o,u,p]),H=S.useMemo(()=>({onKeyDown:z,onMouseDown(){C.current=!0},onMouseUp(){C.current=!0},[vAe[d]]:()=>{a.current.insideReactTree=!0}}),[z,d,a]);return S.useMemo(()=>l?{reference:L,floating:H}:{},[l,L,H])}function bAe(e){const{open:r=!1,onOpenChange:n,elements:o}=e,i=IU(),a=S.useRef({}),[l]=S.useState(()=>hAe()),s=Q9()!=null,[c,d]=S.useState(o.reference),u=Jl((g,v,w)=>{a.current.openEvent=g?v:void 0,l.emit("openchange",{open:g,event:v,reason:w,nested:s}),n?.(g,v,w)}),p=S.useMemo(()=>({setPositionReference:d}),[]),f=S.useMemo(()=>({reference:c||o.reference||null,floating:o.floating||null,domReference:o.reference}),[c,o.reference,o.floating]);return S.useMemo(()=>({dataRef:a,open:r,onOpenChange:u,elements:f,events:l,floatingId:i,refs:p}),[r,u,f,l,i,p])}function t3(e){e===void 0&&(e={});const{nodeId:r}=e,n=bAe({...e,elements:{reference:null,floating:null,...e.elements}}),o=e.rootContext||n,i=o.elements,[a,l]=S.useState(null),[s,c]=S.useState(null),d=i?.domReference||a,u=S.useRef(null),p=J9();Ql(()=>{d&&(u.current=d)},[d]);const f=oAe({...e,elements:{...i,...s&&{reference:s}}}),g=S.useCallback(C=>{const _=Ar(C)?{getBoundingClientRect:()=>C.getBoundingClientRect(),getClientRects:()=>C.getClientRects(),contextElement:C}:C;c(_),f.refs.setReference(_)},[f.refs]),v=S.useCallback(C=>{(Ar(C)||C===null)&&(u.current=C,l(C)),(Ar(f.refs.reference.current)||f.refs.reference.current===null||C!==null&&!Ar(C))&&f.refs.setReference(C)},[f.refs]),w=S.useMemo(()=>({...f.refs,setReference:v,setPositionReference:g,domReference:u}),[f.refs,v,g]),x=S.useMemo(()=>({...f.elements,domReference:d}),[f.elements,d]),k=S.useMemo(()=>({...f,...o,refs:w,elements:x,nodeId:r}),[f,w,x,r,o]);return Ql(()=>{o.dataRef.current.floatingContext=k;const C=p?.nodesRef.current.find(_=>_.id===r);C&&(C.context=k)}),S.useMemo(()=>({...f,context:k,refs:w,elements:x}),[f,w,x,k])}function nS(){return cje()&&sje()}function xAe(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,events:i,dataRef:a,elements:l}=e,{enabled:s=!0,visibleOnly:c=!0}=r,d=S.useRef(!1),u=S.useRef(-1),p=S.useRef(!0);S.useEffect(()=>{if(!s)return;const g=ni(l.domReference);function v(){!n&&$i(l.domReference)&&l.domReference===sU(op(l.domReference))&&(d.current=!0)}function w(){p.current=!0}function x(){p.current=!1}return g.addEventListener("blur",v),nS()&&(g.addEventListener("keydown",w,!0),g.addEventListener("pointerdown",x,!0)),()=>{g.removeEventListener("blur",v),nS()&&(g.removeEventListener("keydown",w,!0),g.removeEventListener("pointerdown",x,!0))}},[l.domReference,n,s]),S.useEffect(()=>{if(!s)return;function g(v){let{reason:w}=v;(w==="reference-press"||w==="escape-key")&&(d.current=!0)}return i.on("openchange",g),()=>{i.off("openchange",g)}},[i,s]),S.useEffect(()=>()=>{aa(u)},[]);const f=S.useMemo(()=>({onMouseLeave(){d.current=!1},onFocus(g){if(d.current)return;const v=Rf(g.nativeEvent);if(c&&Ar(v)){if(nS()&&!g.relatedTarget){if(!p.current&&!hje(v))return}else if(!fje(v))return}o(!0,g.nativeEvent,"focus")},onBlur(g){d.current=!1;const v=g.relatedTarget,w=g.nativeEvent,x=Ar(v)&&v.hasAttribute(eS("focus-guard"))&&v.getAttribute("data-type")==="outside";u.current=window.setTimeout(()=>{var k;const C=sU(l.domReference?l.domReference.ownerDocument:document);!v&&C===l.domReference||dy((k=a.current.floatingContext)==null?void 0:k.refs.floating.current,C)||dy(l.domReference,C)||x||o(!1,w,"focus")})}}),[a,l.domReference,o,c]);return S.useMemo(()=>s?{reference:f}:{},[s,f])}function oS(e,r,n){const o=new Map,i=n==="item";let a=e;if(i&&e){const{[MU]:l,[NU]:s,...c}=e;a=c}return{...n==="floating"&&{tabIndex:-1,[sAe]:""},...a,...r.map(l=>{const s=l?l[n]:null;return typeof s=="function"?e?s(e):null:s}).concat(e).reduce((l,s)=>(s&&Object.entries(s).forEach(c=>{let[d,u]=c;if(!(i&&[MU,NU].includes(d)))if(d.indexOf("on")===0){if(o.has(d)||o.set(d,[]),typeof u=="function"){var p;(p=o.get(d))==null||p.push(u),l[d]=function(){for(var f,g=arguments.length,v=new Array(g),w=0;wx(...v)).find(x=>x!==void 0)}}}else l[d]=u}),l),{})}}function WU(e){e===void 0&&(e=[]);const r=e.map(s=>s?.reference),n=e.map(s=>s?.floating),o=e.map(s=>s?.item),i=S.useCallback(s=>oS(s,e,"reference"),r),a=S.useCallback(s=>oS(s,e,"floating"),n),l=S.useCallback(s=>oS(s,e,"item"),o);return S.useMemo(()=>({getReferenceProps:i,getFloatingProps:a,getItemProps:l}),[i,a,l])}const wAe=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function GU(e,r){var n,o;r===void 0&&(r={});const{open:i,elements:a,floatingId:l}=e,{enabled:s=!0,role:c="dialog"}=r,d=IU(),u=((n=a.domReference)==null?void 0:n.id)||d,p=S.useMemo(()=>{var k;return((k=mje(a.floating))==null?void 0:k.id)||l},[a.floating,l]),f=(o=wAe.get(c))!=null?o:c,g=Q9()!=null,v=S.useMemo(()=>f==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]:i?p:void 0}:{"aria-expanded":i?"true":"false","aria-haspopup":f==="alertdialog"?"dialog":f,"aria-controls":i?p:void 0,...f==="listbox"&&{role:"combobox"},...f==="menu"&&{id:u},...f==="menu"&&g&&{role:"menuitem"},...c==="select"&&{"aria-autocomplete":"none"},...c==="combobox"&&{"aria-autocomplete":"list"}},[f,p,g,i,u,c]),w=S.useMemo(()=>{const k={id:p,...f&&{role:f}};return f==="tooltip"||c==="label"?k:{...k,...f==="menu"&&{"aria-labelledby":u}}},[f,p,u,c]),x=S.useCallback(k=>{let{active:C,selected:_}=k;const $={role:"option",...C&&{id:p+"-fui-option"}};switch(c){case"select":case"combobox":return{...$,"aria-selected":_}}return{}},[p,c]);return S.useMemo(()=>s?{reference:v,floating:w,item:x}:{},[s,v,w,x])}const[kAe,la]=na("ScrollArea.Root component was not found in tree");function jf(e,r){const n=Qn(r);xf(()=>{let o=0;if(e){const i=new ResizeObserver(()=>{cancelAnimationFrame(o),o=window.requestAnimationFrame(n)});return i.observe(e),()=>{window.cancelAnimationFrame(o),i.unobserve(e)}}},[e,n])}const _Ae=S.forwardRef((e,r)=>{const{style:n,...o}=e,i=la(),[a,l]=S.useState(0),[s,c]=S.useState(0),d=!!(a&&s);return jf(i.scrollbarX,()=>{const u=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(u),c(u)}),jf(i.scrollbarY,()=>{const u=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(u),l(u)}),d?y.jsx("div",{...o,ref:r,style:{...n,width:a,height:s}}):null}),SAe=S.forwardRef((e,r)=>{const n=la(),o=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&o?y.jsx(_Ae,{...e,ref:r}):null}),EAe={scrollHideDelay:1e3,type:"hover"},YU=S.forwardRef((e,r)=>{const{type:n,scrollHideDelay:o,scrollbars:i,getStyles:a,...l}=Me("ScrollAreaRoot",EAe,e),[s,c]=S.useState(null),[d,u]=S.useState(null),[p,f]=S.useState(null),[g,v]=S.useState(null),[w,x]=S.useState(null),[k,C]=S.useState(0),[_,$]=S.useState(0),[R,T]=S.useState(!1),[A,z]=S.useState(!1),j=$r(r,I=>c(I));return y.jsx(kAe,{value:{type:n,scrollHideDelay:o,scrollArea:s,viewport:d,onViewportChange:u,content:p,onContentChange:f,scrollbarX:g,onScrollbarXChange:v,scrollbarXEnabled:R,onScrollbarXEnabledChange:T,scrollbarY:w,onScrollbarYChange:x,scrollbarYEnabled:A,onScrollbarYEnabledChange:z,onCornerWidthChange:C,onCornerHeightChange:$,getStyles:a},children:y.jsx(Se,{...l,ref:j,__vars:{"--sa-corner-width":i!=="xy"?"0px":`${k}px`,"--sa-corner-height":i!=="xy"?"0px":`${_}px`}})})});YU.displayName="@mantine/core/ScrollAreaRoot";function XU(e,r){const n=e/r;return Number.isNaN(n)?0:n}function r3(e){const r=XU(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=(e.scrollbar.size-n)*r;return Math.max(o,18)}function KU(e,r){return n=>{if(e[0]===e[1]||r[0]===r[1])return r[0];const o=(r[1]-r[0])/(e[1]-e[0]);return r[0]+o*(n-e[0])}}function CAe(e,[r,n]){return Math.min(n,Math.max(r,e))}function ZU(e,r,n="ltr"){const o=r3(r),i=r.scrollbar.paddingStart+r.scrollbar.paddingEnd,a=r.scrollbar.size-i,l=r.content-r.viewport,s=a-o,c=n==="ltr"?[0,l]:[l*-1,0],d=CAe(e,c);return KU([0,l],[0,s])(d)}function $Ae(e,r,n,o="ltr"){const i=r3(n),a=i/2,l=r||a,s=i-l,c=n.scrollbar.paddingStart+l,d=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,p=o==="ltr"?[0,u]:[u*-1,0];return KU([c,d],p)(e)}function QU(e,r){return e>0&&e{e?.(o),(n===!1||!o.defaultPrevented)&&r?.(o)}}const[RAe,JU]=na("ScrollAreaScrollbar was not found in tree"),eW=S.forwardRef((e,r)=>{const{sizes:n,hasThumb:o,onThumbChange:i,onThumbPointerUp:a,onThumbPointerDown:l,onThumbPositionChange:s,onDragScroll:c,onWheelScroll:d,onResize:u,...p}=e,f=la(),[g,v]=S.useState(null),w=$r(r,z=>v(z)),x=S.useRef(null),k=S.useRef(""),{viewport:C}=f,_=n.content-n.viewport,$=Qn(d),R=Qn(s),T=bf(u,10),A=z=>{if(x.current){const j=z.clientX-x.current.left,I=z.clientY-x.current.top;c({x:j,y:I})}};return S.useEffect(()=>{const z=j=>{const I=j.target;g?.contains(I)&&$(j,_)};return document.addEventListener("wheel",z,{passive:!1}),()=>document.removeEventListener("wheel",z,{passive:!1})},[C,g,_,$]),S.useEffect(R,[n,R]),jf(g,T),jf(f.content,T),y.jsx(RAe,{value:{scrollbar:g,hasThumb:o,onThumbChange:Qn(i),onThumbPointerUp:Qn(a),onThumbPositionChange:R,onThumbPointerDown:Qn(l)},children:y.jsx("div",{...p,ref:w,"data-mantine-scrollbar":!0,style:{position:"absolute",...p.style},onPointerDown:ap(e.onPointerDown,z=>{z.preventDefault(),z.button===0&&(z.target.setPointerCapture(z.pointerId),x.current=g.getBoundingClientRect(),k.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",A(z))}),onPointerMove:ap(e.onPointerMove,A),onPointerUp:ap(e.onPointerUp,z=>{const j=z.target;j.hasPointerCapture(z.pointerId)&&(z.preventDefault(),j.releasePointerCapture(z.pointerId))}),onLostPointerCapture:()=>{document.body.style.webkitUserSelect=k.current,x.current=null}})})}),tW=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:i,...a}=e,l=la(),[s,c]=S.useState(),d=S.useRef(null),u=$r(r,d,l.onScrollbarXChange);return S.useEffect(()=>{d.current&&c(getComputedStyle(d.current))},[d]),y.jsx(eW,{"data-orientation":"horizontal",...a,ref:u,sizes:n,style:{...i,"--sa-thumb-width":`${r3(n)}px`},onThumbPointerDown:p=>e.onThumbPointerDown(p.x),onDragScroll:p=>e.onDragScroll(p.x),onWheelScroll:(p,f)=>{if(l.viewport){const g=l.viewport.scrollLeft+p.deltaX;e.onWheelScroll(g),QU(g,f)&&p.preventDefault()}},onResize:()=>{d.current&&l.viewport&&s&&o({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:d.current.clientWidth,paddingStart:xd(s.paddingLeft),paddingEnd:xd(s.paddingRight)}})}})});tW.displayName="@mantine/core/ScrollAreaScrollbarX";const rW=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:i,...a}=e,l=la(),[s,c]=S.useState(),d=S.useRef(null),u=$r(r,d,l.onScrollbarYChange);return S.useEffect(()=>{d.current&&c(window.getComputedStyle(d.current))},[]),y.jsx(eW,{...a,"data-orientation":"vertical",ref:u,sizes:n,style:{"--sa-thumb-height":`${r3(n)}px`,...i},onThumbPointerDown:p=>e.onThumbPointerDown(p.y),onDragScroll:p=>e.onDragScroll(p.y),onWheelScroll:(p,f)=>{if(l.viewport){const g=l.viewport.scrollTop+p.deltaY;e.onWheelScroll(g),QU(g,f)&&p.preventDefault()}},onResize:()=>{d.current&&l.viewport&&s&&o({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:d.current.clientHeight,paddingStart:xd(s.paddingTop),paddingEnd:xd(s.paddingBottom)}})}})});rW.displayName="@mantine/core/ScrollAreaScrollbarY";const n3=S.forwardRef((e,r)=>{const{orientation:n="vertical",...o}=e,{dir:i}=bd(),a=la(),l=S.useRef(null),s=S.useRef(0),[c,d]=S.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=XU(c.viewport,c.content),p={...o,sizes:c,onSizesChange:d,hasThumb:u>0&&u<1,onThumbChange:g=>{l.current=g},onThumbPointerUp:()=>{s.current=0},onThumbPointerDown:g=>{s.current=g}},f=(g,v)=>$Ae(g,s.current,c,v);return n==="horizontal"?y.jsx(tW,{...p,ref:r,onThumbPositionChange:()=>{if(a.viewport&&l.current){const g=a.viewport.scrollLeft,v=ZU(g,c,i);l.current.style.transform=`translate3d(${v}px, 0, 0)`}},onWheelScroll:g=>{a.viewport&&(a.viewport.scrollLeft=g)},onDragScroll:g=>{a.viewport&&(a.viewport.scrollLeft=f(g,i))}}):n==="vertical"?y.jsx(rW,{...p,ref:r,onThumbPositionChange:()=>{if(a.viewport&&l.current){const g=a.viewport.scrollTop,v=ZU(g,c);c.scrollbar.size===0?l.current.style.setProperty("--thumb-opacity","0"):l.current.style.setProperty("--thumb-opacity","1"),l.current.style.transform=`translate3d(0, ${v}px, 0)`}},onWheelScroll:g=>{a.viewport&&(a.viewport.scrollTop=g)},onDragScroll:g=>{a.viewport&&(a.viewport.scrollTop=f(g))}}):null});n3.displayName="@mantine/core/ScrollAreaScrollbarVisible";const iS=S.forwardRef((e,r)=>{const n=la(),{forceMount:o,...i}=e,[a,l]=S.useState(!1),s=e.orientation==="horizontal",c=bf(()=>{if(n.viewport){const d=n.viewport.offsetWidth{const{forceMount:n,...o}=e,i=la(),[a,l]=S.useState(!1);return S.useEffect(()=>{const{scrollArea:s}=i;let c=0;if(s){const d=()=>{window.clearTimeout(c),l(!0)},u=()=>{c=window.setTimeout(()=>l(!1),i.scrollHideDelay)};return s.addEventListener("pointerenter",d),s.addEventListener("pointerleave",u),()=>{window.clearTimeout(c),s.removeEventListener("pointerenter",d),s.removeEventListener("pointerleave",u)}}},[i.scrollArea,i.scrollHideDelay]),n||a?y.jsx(iS,{"data-state":a?"visible":"hidden",...o,ref:r}):null});nW.displayName="@mantine/core/ScrollAreaScrollbarHover";const zAe=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,i=la(),a=e.orientation==="horizontal",[l,s]=S.useState("hidden"),c=bf(()=>s("idle"),100);return S.useEffect(()=>{if(l==="idle"){const d=window.setTimeout(()=>s("hidden"),i.scrollHideDelay);return()=>window.clearTimeout(d)}},[l,i.scrollHideDelay]),S.useEffect(()=>{const{viewport:d}=i,u=a?"scrollLeft":"scrollTop";if(d){let p=d[u];const f=()=>{const g=d[u];p!==g&&(s("scrolling"),c()),p=g};return d.addEventListener("scroll",f),()=>d.removeEventListener("scroll",f)}},[i.viewport,a,c]),n||l!=="hidden"?y.jsx(n3,{"data-state":l==="hidden"?"hidden":"visible",...o,ref:r,onPointerEnter:ap(e.onPointerEnter,()=>s("interacting")),onPointerLeave:ap(e.onPointerLeave,()=>s("idle"))}):null}),aS=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,i=la(),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:l}=i,s=e.orientation==="horizontal";return S.useEffect(()=>(s?a(!0):l(!0),()=>{s?a(!1):l(!1)}),[s,a,l]),i.type==="hover"?y.jsx(nW,{...o,ref:r,forceMount:n}):i.type==="scroll"?y.jsx(zAe,{...o,ref:r,forceMount:n}):i.type==="auto"?y.jsx(iS,{...o,ref:r,forceMount:n}):i.type==="always"?y.jsx(n3,{...o,ref:r}):null});aS.displayName="@mantine/core/ScrollAreaScrollbar";function TAe(e,r=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},o=0;return(function i(){const a={left:e.scrollLeft,top:e.scrollTop},l=n.left!==a.left,s=n.top!==a.top;(l||s)&&r(),n=a,o=window.requestAnimationFrame(i)})(),()=>window.cancelAnimationFrame(o)}const oW=S.forwardRef((e,r)=>{const{style:n,...o}=e,i=la(),a=JU(),{onThumbPositionChange:l}=a,s=$r(r,u=>a.onThumbChange(u)),c=S.useRef(void 0),d=bf(()=>{c.current&&(c.current(),c.current=void 0)},100);return S.useEffect(()=>{const{viewport:u}=i;if(u){const p=()=>{if(d(),!c.current){const f=TAe(u,l);c.current=f,l()}};return l(),u.addEventListener("scroll",p),()=>u.removeEventListener("scroll",p)}},[i.viewport,d,l]),y.jsx("div",{"data-state":a.hasThumb?"visible":"hidden",...o,ref:s,style:{width:"var(--sa-thumb-width)",height:"var(--sa-thumb-height)",...n},onPointerDownCapture:ap(e.onPointerDownCapture,u=>{const p=u.target.getBoundingClientRect(),f=u.clientX-p.left,g=u.clientY-p.top;a.onThumbPointerDown({x:f,y:g})}),onPointerUp:ap(e.onPointerUp,a.onThumbPointerUp)})});oW.displayName="@mantine/core/ScrollAreaThumb";const lS=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,i=JU();return n||i.hasThumb?y.jsx(oW,{ref:r,...o}):null});lS.displayName="@mantine/core/ScrollAreaThumb";const iW=S.forwardRef(({children:e,style:r,...n},o)=>{const i=la(),a=$r(o,i.onViewportChange);return y.jsx(Se,{...n,ref:a,style:{overflowX:i.scrollbarXEnabled?"scroll":"hidden",overflowY:i.scrollbarYEnabled?"scroll":"hidden",...r},children:y.jsx("div",{...i.getStyles("content"),ref:i.onContentChange,children:e})})});iW.displayName="@mantine/core/ScrollAreaViewport";var sS={root:"m_d57069b5",content:"m_b1336c6",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const aW={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},jAe=(e,{scrollbarSize:r,overscrollBehavior:n})=>({root:{"--scrollarea-scrollbar-size":$e(r),"--scrollarea-over-scroll-behavior":n}}),es=ot((e,r)=>{const n=Me("ScrollArea",aW,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,scrollbarSize:c,vars:d,type:u,scrollHideDelay:p,viewportProps:f,viewportRef:g,onScrollPositionChange:v,children:w,offsetScrollbars:x,scrollbars:k,onBottomReached:C,onTopReached:_,overscrollBehavior:$,attributes:R,...T}=n,[A,z]=S.useState(!1),[j,I]=S.useState(!1),[P,L]=S.useState(!1),H=kt({name:"ScrollArea",props:n,classes:sS,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:R,vars:d,varsResolver:jAe}),M=S.useRef(null),V=DU([g,M]);return S.useEffect(()=>{if(!M.current||x!=="present")return;const B=M.current,F=new ResizeObserver(()=>{const{scrollHeight:q,clientHeight:G,scrollWidth:U,clientWidth:Y}=B;I(q>G),L(U>Y)});return F.observe(B),()=>F.disconnect()},[M,x]),y.jsxs(YU,{getStyles:H,type:u==="never"?"always":u,scrollHideDelay:p,ref:r,scrollbars:k,...H("root"),...T,children:[y.jsx(iW,{...f,...H("viewport",{style:f?.style}),ref:V,"data-offset-scrollbars":x===!0?"xy":x||void 0,"data-scrollbars":k||void 0,"data-horizontal-hidden":x==="present"&&!P?"true":void 0,"data-vertical-hidden":x==="present"&&!j?"true":void 0,onScroll:B=>{f?.onScroll?.(B),v?.({x:B.currentTarget.scrollLeft,y:B.currentTarget.scrollTop});const{scrollTop:F,scrollHeight:q,clientHeight:G}=B.currentTarget;F-(q-G)>=-.6&&C?.(),F===0&&_?.()},children:w}),(k==="xy"||k==="x")&&y.jsx(aS,{...H("scrollbar"),orientation:"horizontal","data-hidden":u==="never"||x==="present"&&!P?!0:void 0,forceMount:!0,onMouseEnter:()=>z(!0),onMouseLeave:()=>z(!1),children:y.jsx(lS,{...H("thumb")})}),(k==="xy"||k==="y")&&y.jsx(aS,{...H("scrollbar"),orientation:"vertical","data-hidden":u==="never"||x==="present"&&!j?!0:void 0,forceMount:!0,onMouseEnter:()=>z(!0),onMouseLeave:()=>z(!1),children:y.jsx(lS,{...H("thumb")})}),y.jsx(SAe,{...H("corner"),"data-hovered":A||void 0,"data-hidden":u==="never"||void 0})]})});es.displayName="@mantine/core/ScrollArea";const oi=ot((e,r)=>{const{children:n,classNames:o,styles:i,scrollbarSize:a,scrollHideDelay:l,type:s,dir:c,offsetScrollbars:d,viewportRef:u,onScrollPositionChange:p,unstyled:f,variant:g,viewportProps:v,scrollbars:w,style:x,vars:k,onBottomReached:C,onTopReached:_,onOverflowChange:$,...R}=Me("ScrollAreaAutosize",aW,e),T=S.useRef(null),A=DU([u,T]),[z,j]=S.useState(!1),I=S.useRef(!1);return S.useEffect(()=>{if(!$)return;const P=T.current;if(!P)return;const L=()=>{const M=P.scrollHeight>P.clientHeight;M!==z&&(I.current?$?.(M):(I.current=!0,M&&$?.(!0)),j(M))};L();const H=new ResizeObserver(L);return H.observe(P),()=>H.disconnect()},[$,z]),y.jsx(Se,{...R,ref:r,style:[{display:"flex",overflow:"hidden"},x],children:y.jsx(Se,{style:{display:"flex",flexDirection:"column",flex:1,overflow:"hidden",...w==="y"&&{minWidth:0},...w==="x"&&{minHeight:0},...w==="xy"&&{minWidth:0,minHeight:0},...w===!1&&{minWidth:0,minHeight:0}},children:y.jsx(es,{classNames:o,styles:i,scrollHideDelay:l,scrollbarSize:a,type:s,dir:c,offsetScrollbars:d,viewportRef:A,onScrollPositionChange:p,unstyled:f,variant:g,viewportProps:v,vars:k,scrollbars:w,onBottomReached:C,onTopReached:_,"data-autosize":"true",children:n})})})});es.classes=sS,oi.displayName="@mantine/core/ScrollAreaAutosize",oi.classes=sS,es.Autosize=oi;var lW={root:"m_87cf2631"};const AAe={__staticSelector:"UnstyledButton"},pr=Jn((e,r)=>{const n=Me("UnstyledButton",AAe,e),{className:o,component:i="button",__staticSelector:a,unstyled:l,classNames:s,styles:c,style:d,attributes:u,...p}=n,f=kt({name:a,props:n,classes:lW,className:o,style:d,classNames:s,styles:c,unstyled:l,attributes:u});return y.jsx(Se,{...f("root",{focusable:!0}),component:i,ref:r,type:i==="button"?"button":void 0,...p})});pr.classes=lW,pr.displayName="@mantine/core/UnstyledButton";var sW={root:"m_515a97f8"};const o3=ot((e,r)=>{const n=Me("VisuallyHidden",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,attributes:d,...u}=n,p=kt({name:"VisuallyHidden",classes:sW,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:d});return y.jsx(Se,{component:"span",ref:r,...p("root"),...u})});o3.classes=sW,o3.displayName="@mantine/core/VisuallyHidden";var cW={root:"m_1b7284a3"};const DAe=(e,{radius:r,shadow:n})=>({root:{"--paper-radius":r===void 0?void 0:wn(r),"--paper-shadow":uH(n)}}),Af=Jn((e,r)=>{const n=Me("Paper",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,withBorder:c,vars:d,radius:u,shadow:p,variant:f,mod:g,attributes:v,...w}=n,x=kt({name:"Paper",props:n,classes:cW,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:v,vars:d,varsResolver:DAe});return y.jsx(Se,{ref:r,mod:[{"data-with-border":c},g],...x("root"),variant:f,...w})});Af.classes=cW,Af.displayName="@mantine/core/Paper";function dW(e,r,n,o){return e==="center"||o==="center"?{top:r}:e==="end"?{bottom:n}:e==="start"?{top:n}:{}}function uW(e,r,n,o,i){return e==="center"||o==="center"?{left:r}:e==="end"?{[i==="ltr"?"right":"left"]:n}:e==="start"?{[i==="ltr"?"left":"right"]:n}:{}}const MAe={bottom:"borderTopLeftRadius",left:"borderTopRightRadius",right:"borderBottomLeftRadius",top:"borderBottomRightRadius"};function NAe({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:i,arrowX:a,arrowY:l,dir:s}){const[c,d="center"]=e.split("-"),u={width:r,height:r,transform:"rotate(45deg)",position:"absolute",[MAe[c]]:o},p=-r/2;return c==="left"?{...u,...dW(d,l,n,i),right:p,borderLeftColor:"transparent",borderBottomColor:"transparent",clipPath:"polygon(100% 0, 0 0, 100% 100%)"}:c==="right"?{...u,...dW(d,l,n,i),left:p,borderRightColor:"transparent",borderTopColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 100%)"}:c==="top"?{...u,...uW(d,a,n,i,s),bottom:p,borderTopColor:"transparent",borderLeftColor:"transparent",clipPath:"polygon(0 100%, 100% 100%, 100% 0)"}:c==="bottom"?{...u,...uW(d,a,n,i,s),top:p,borderBottomColor:"transparent",borderRightColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 0)"}:{}}const i3=S.forwardRef(({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:i,visible:a,arrowX:l,arrowY:s,style:c,...d},u)=>{const{dir:p}=bd();return a?y.jsx("div",{...d,ref:u,style:{...c,...NAe({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:i,dir:p,arrowX:l,arrowY:s})}}):null});i3.displayName="@mantine/core/FloatingArrow";function pW(e,r){if(e==="rtl"&&(r.includes("right")||r.includes("left"))){const[n,o]=r.split("-"),i=n==="right"?"left":"right";return o===void 0?i:`${i}-${o}`}return r}var hW={root:"m_9814e45f"};const PAe={zIndex:Ew("modal")},BAe=(e,{gradient:r,color:n,backgroundOpacity:o,blur:i,radius:a,zIndex:l})=>({root:{"--overlay-bg":r||(n!==void 0||o!==void 0)&&Xl(n||"#000",o??.6)||void 0,"--overlay-filter":i?`blur(${$e(i)})`:void 0,"--overlay-radius":a===void 0?void 0:wn(a),"--overlay-z-index":l?.toString()}}),cS=Jn((e,r)=>{const n=Me("Overlay",PAe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,fixed:d,center:u,children:p,radius:f,zIndex:g,gradient:v,blur:w,color:x,backgroundOpacity:k,mod:C,attributes:_,...$}=n,R=kt({name:"Overlay",props:n,classes:hW,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:BAe});return y.jsx(Se,{ref:r,...R("root"),mod:[{center:u,fixed:d},C],...$,children:p})});cS.classes=hW,cS.displayName="@mantine/core/Overlay";function dS(e){const r=document.createElement("div");return r.setAttribute("data-portal","true"),typeof e.className=="string"&&r.classList.add(...e.className.split(" ").filter(Boolean)),typeof e.style=="object"&&Object.assign(r.style,e.style),typeof e.id=="string"&&r.setAttribute("id",e.id),r}function IAe({target:e,reuseTargetNode:r,...n}){if(e)return typeof e=="string"?document.querySelector(e)||dS(n):e;if(r){const o=document.querySelector("[data-mantine-shared-portal-node]");if(o)return o;const i=dS(n);return i.setAttribute("data-mantine-shared-portal-node","true"),document.body.appendChild(i),i}return dS(n)}const OAe={reuseTargetNode:!0},py=ot((e,r)=>{const{children:n,target:o,reuseTargetNode:i,...a}=Me("Portal",OAe,e),[l,s]=S.useState(!1),c=S.useRef(null);return xf(()=>(s(!0),c.current=IAe({target:o,reuseTargetNode:i,...a}),v9(r,c.current),!o&&!i&&c.current&&document.body.appendChild(c.current),()=>{!o&&!i&&c.current&&document.body.removeChild(c.current)}),[o]),!l||!c.current?null:Va.createPortal(y.jsx(y.Fragment,{children:n}),c.current)});py.displayName="@mantine/core/Portal";const Df=ot(({withinPortal:e=!0,children:r,...n},o)=>Dw()==="test"||!e?y.jsx(y.Fragment,{children:r}):y.jsx(py,{ref:o,...n,children:r}));Df.displayName="@mantine/core/OptionalPortal";const hy=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${e==="bottom"?10:-10}px)`},transitionProperty:"transform, opacity"}),a3={fade:{in:{opacity:1},out:{opacity:0},transitionProperty:"opacity"},"fade-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(30px)"},transitionProperty:"opacity, transform"},"fade-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-30px)"},transitionProperty:"opacity, transform"},"fade-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(30px)"},transitionProperty:"opacity, transform"},"fade-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-30px)"},transitionProperty:"opacity, transform"},scale:{in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:"scale(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-y":{in:{opacity:1,transform:"scaleY(1)"},out:{opacity:0,transform:"scaleY(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-x":{in:{opacity:1,transform:"scaleX(1)"},out:{opacity:0,transform:"scaleX(0)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"skew-up":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(-20px) skew(-10deg, -5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"skew-down":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(20px) skew(-10deg, -5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-left":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(-5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-right":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-100%)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(100%)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"slide-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(100%)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"slide-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-100%)"},common:{transformOrigin:"right"},transitionProperty:"transform, opacity"},pop:{...hy("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...hy("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...hy("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...hy("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...hy("top"),common:{transformOrigin:"top right"}}},fW={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function LAe({transition:e,state:r,duration:n,timingFunction:o}){const i={WebkitBackfaceVisibility:"hidden",transitionDuration:`${n}ms`,transitionTimingFunction:o};return typeof e=="string"?e in a3?{transitionProperty:a3[e].transitionProperty,...i,...a3[e].common,...a3[e][fW[r]]}:{}:{transitionProperty:e.transitionProperty,...i,...e.common,...e[fW[r]]}}function FAe({duration:e,exitDuration:r,timingFunction:n,mounted:o,onEnter:i,onExit:a,onEntered:l,onExited:s,enterDelay:c,exitDelay:d}){const u=lo(),p=_H(),f=u.respectReducedMotion?p:!1,[g,v]=S.useState(f?0:e),[w,x]=S.useState(o?"entered":"exited"),k=S.useRef(-1),C=S.useRef(-1),_=S.useRef(-1);function $(){window.clearTimeout(k.current),window.clearTimeout(C.current),cancelAnimationFrame(_.current)}const R=A=>{$();const z=A?i:a,j=A?l:s,I=f?0:A?e:r;v(I),I===0?(typeof z=="function"&&z(),typeof j=="function"&&j(),x(A?"entered":"exited")):_.current=requestAnimationFrame(()=>{YN.flushSync(()=>{x(A?"pre-entering":"pre-exiting")}),_.current=requestAnimationFrame(()=>{typeof z=="function"&&z(),x(A?"entering":"exiting"),k.current=window.setTimeout(()=>{typeof j=="function"&&j(),x(A?"entered":"exited")},I)})})},T=A=>{if($(),typeof(A?c:d)!="number"){R(A);return}C.current=window.setTimeout(()=>{R(A)},A?c:d)};return wf(()=>{T(o)},[o]),S.useEffect(()=>()=>{$()},[]),{transitionDuration:g,transitionStatus:w,transitionTimingFunction:n||"ease"}}function wd({keepMounted:e,transition:r="fade",duration:n=250,exitDuration:o=n,mounted:i,children:a,timingFunction:l="ease",onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f}){const g=Dw(),{transitionDuration:v,transitionStatus:w,transitionTimingFunction:x}=FAe({mounted:i,exitDuration:o,duration:n,timingFunction:l,onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f});return v===0||g==="test"?i?y.jsx(y.Fragment,{children:a({})}):e?a({display:"none"}):null:w==="exited"?e?a({display:"none"}):null:y.jsx(y.Fragment,{children:a(LAe({transition:r,duration:v,state:w,timingFunction:x}))})}wd.displayName="@mantine/core/Transition";const[VAe,mW]=na("Popover component was not found in the tree");function l3({children:e,active:r=!0,refProp:n="ref",innerRef:o}){const i=bH(r),a=$r(i,o),l=gd(e);return l?S.cloneElement(l,{[n]:a}):e}function gW(e){return y.jsx(o3,{tabIndex:-1,"data-autofocus":!0,...e})}l3.displayName="@mantine/core/FocusTrap",gW.displayName="@mantine/core/FocusTrapInitialFocus",l3.InitialFocus=gW;var yW={dropdown:"m_38a85659",arrow:"m_a31dc6c1",overlay:"m_3d7bc908"};const Qs=ot((e,r)=>{const n=Me("PopoverDropdown",null,e),{className:o,style:i,vars:a,children:l,onKeyDownCapture:s,variant:c,classNames:d,styles:u,...p}=n,f=mW(),g=ZRe({opened:f.opened,shouldReturnFocus:f.returnFocus}),v=f.withRoles?{"aria-labelledby":f.getTargetId(),id:f.getDropdownId(),role:"dialog",tabIndex:-1}:{},w=$r(r,f.floating);return f.disabled?null:y.jsx(Df,{...f.portalProps,withinPortal:f.withinPortal,children:y.jsx(wd,{mounted:f.opened,...f.transitionProps,transition:f.transitionProps?.transition||"fade",duration:f.transitionProps?.duration??150,keepMounted:f.keepMounted,exitDuration:typeof f.transitionProps?.exitDuration=="number"?f.transitionProps.exitDuration:f.transitionProps?.duration,children:x=>y.jsx(l3,{active:f.trapFocus&&f.opened,innerRef:w,children:y.jsxs(Se,{...v,...p,variant:c,onKeyDownCapture:FRe(()=>{f.onClose?.(),f.onDismiss?.()},{active:f.closeOnEscape,onTrigger:g,onKeyDown:s}),"data-position":f.placement,"data-fixed":f.floatingStrategy==="fixed"||void 0,...f.getStyles("dropdown",{className:o,props:n,classNames:d,styles:u,style:[{...x,zIndex:f.zIndex,top:f.y??0,left:f.x??0,width:f.width==="target"?void 0:$e(f.width),...f.referenceHidden?{display:"none"}:null},f.resolvedStyles.dropdown,u?.dropdown,i]}),children:[l,y.jsx(i3,{ref:f.arrowRef,arrowX:f.arrowX,arrowY:f.arrowY,visible:f.withArrow,position:f.placement,arrowSize:f.arrowSize,arrowRadius:f.arrowRadius,arrowOffset:f.arrowOffset,arrowPosition:f.arrowPosition,...f.getStyles("arrow",{props:n,classNames:d,styles:u})})]})})})})});Qs.classes=yW,Qs.displayName="@mantine/core/PopoverDropdown";const qAe={refProp:"ref",popupType:"dialog"},kd=ot((e,r)=>{const{children:n,refProp:o,popupType:i,...a}=Me("PopoverTarget",qAe,e),l=gd(n);if(!l)throw new Error("Popover.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const s=a,c=mW(),d=$r(c.reference,Rw(l),r),u=c.withRoles?{"aria-haspopup":i,"aria-expanded":c.opened,"aria-controls":c.getDropdownId(),id:c.getTargetId()}:{},p=l.props;return S.cloneElement(l,{...s,...u,...c.targetProps,className:el(c.targetProps.className,s.className,p.className),[o]:d,...c.controlled?null:{onClick:()=>{c.onToggle(),p.onClick?.()}}})});kd.displayName="@mantine/core/PopoverTarget";function HAe(e){if(e===void 0)return{shift:!0,flip:!0};const r={...e};return e.shift===void 0&&(r.shift=!0),e.flip===void 0&&(r.flip=!0),r}function UAe(e,r,n){const o=HAe(e.middlewares),i=[TU(e.offset),lAe()];return e.dropdownVisible&&n!=="test"&&e.preventPositionChangeWhenVisible&&(o.flip=!1),o.shift&&i.push(Z9(typeof o.shift=="boolean"?{limiter:jU(),padding:5}:{limiter:jU(),padding:5,...o.shift})),o.flip&&i.push(typeof o.flip=="boolean"?Jw():Jw(o.flip)),o.inline&&i.push(typeof o.inline=="boolean"?uy():uy(o.inline)),i.push(AU({element:e.arrowRef,padding:e.arrowOffset})),(o.size||e.width==="target")&&i.push(aAe({...typeof o.size=="boolean"?{}:o.size,apply({rects:a,availableWidth:l,availableHeight:s,...c}){const d=r().refs.floating.current?.style??{};o.size&&(typeof o.size=="object"&&o.size.apply?o.size.apply({rects:a,availableWidth:l,availableHeight:s,...c}):Object.assign(d,{maxWidth:`${l}px`,maxHeight:`${s}px`})),e.width==="target"&&Object.assign(d,{width:`${a.reference.width}px`})}})),i}function WAe(e){const r=Dw(),[n,o]=Ys({value:e.opened,defaultValue:e.defaultOpened,finalValue:!1,onChange:e.onChange}),i=S.useRef(n),a=()=>{n&&!e.disabled&&o(!1)},l=()=>{e.disabled||o(!n)},s=t3({strategy:e.strategy,placement:e.preventPositionChangeWhenVisible?e.positionRef.current:e.position,middleware:UAe(e,()=>s,r),whileElementsMounted:e.keepMounted?void 0:Kw});return S.useEffect(()=>{if(!(!s.refs.reference.current||!s.refs.floating.current)&&n)return Kw(s.refs.reference.current,s.refs.floating.current,s.update)},[n,s.update]),wf(()=>{e.onPositionChange?.(s.placement),e.positionRef.current=s.placement},[s.placement,e.preventPositionChangeWhenVisible]),wf(()=>{n!==i.current&&(n?e.onOpen?.():e.onClose?.()),i.current=n},[n,e.onClose,e.onOpen]),xf(()=>{let c=-1;return n&&(c=window.setTimeout(()=>e.setDropdownVisible(!0),4)),()=>{window.clearTimeout(c)}},[n,e.position]),{floating:s,controlled:typeof e.opened=="boolean",opened:n,onClose:a,onToggle:l}}const GAe={position:"bottom",offset:8,positionDependencies:[],transitionProps:{transition:"fade",duration:150},middlewares:{flip:!0,shift:!0,inline:!1},arrowSize:7,arrowOffset:5,arrowRadius:0,arrowPosition:"side",closeOnClickOutside:!0,withinPortal:!0,closeOnEscape:!0,trapFocus:!1,withRoles:!0,returnFocus:!1,withOverlay:!1,hideDetached:!0,clickOutsideEvents:["mousedown","touchstart"],zIndex:Ew("popover"),__staticSelector:"Popover",width:"max-content"},YAe=(e,{radius:r,shadow:n})=>({dropdown:{"--popover-radius":r===void 0?void 0:wn(r),"--popover-shadow":uH(n)}});function br(e){const r=Me("Popover",GAe,e),{children:n,position:o,offset:i,onPositionChange:a,positionDependencies:l,opened:s,transitionProps:c,onExitTransitionEnd:d,onEnterTransitionEnd:u,width:p,middlewares:f,withArrow:g,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,unstyled:C,classNames:_,styles:$,closeOnClickOutside:R,withinPortal:T,portalProps:A,closeOnEscape:z,clickOutsideEvents:j,trapFocus:I,onClose:P,onDismiss:L,onOpen:H,onChange:M,zIndex:V,radius:B,shadow:F,id:q,defaultOpened:G,__staticSelector:U,withRoles:Y,disabled:K,returnFocus:O,variant:W,keepMounted:Z,vars:Q,floatingStrategy:ie,withOverlay:te,overlayProps:re,hideDetached:ue,attributes:_e,preventPositionChangeWhenVisible:ce,...pe}=r,xe=kt({name:U,props:r,classes:yW,classNames:_,styles:$,unstyled:C,attributes:_e,rootSelector:"dropdown",vars:Q,varsResolver:YAe}),{resolvedStyles:je}=T9({classNames:_,styles:$,props:r}),[Be,Je]=S.useState(s??G??!1),st=S.useRef(o),Le=S.useRef(null),[St,Ve]=S.useState(null),[qe,Xe]=S.useState(null),{dir:It}=bd(),Et=Dw(),be=oa(q),ke=WAe({middlewares:f,width:p,position:pW(It,o),offset:typeof i=="number"?i+(g?v/2:0):i,arrowRef:Le,arrowOffset:w,onPositionChange:a,positionDependencies:l,opened:s,defaultOpened:G,onChange:M,onOpen:H,onClose:P,onDismiss:L,strategy:ie,dropdownVisible:Be,setDropdownVisible:Je,positionRef:st,disabled:K,preventPositionChangeWhenVisible:ce,keepMounted:Z});hH(()=>{R&&(ke.onClose(),L?.())},j,[St,qe]);const Ye=S.useCallback(er=>{Ve(er),ke.floating.refs.setReference(er)},[ke.floating.refs.setReference]),yt=S.useCallback(er=>{Xe(er),ke.floating.refs.setFloating(er)},[ke.floating.refs.setFloating]),xt=S.useCallback(()=>{c?.onExited?.(),d?.(),Je(!1),ce||(st.current=o)},[c?.onExited,d,ce,o]),Tr=S.useCallback(()=>{c?.onEntered?.(),u?.()},[c?.onEntered,u]);return y.jsxs(VAe,{value:{returnFocus:O,disabled:K,controlled:ke.controlled,reference:Ye,floating:yt,x:ke.floating.x,y:ke.floating.y,arrowX:ke.floating?.middlewareData?.arrow?.x,arrowY:ke.floating?.middlewareData?.arrow?.y,opened:ke.opened,arrowRef:Le,transitionProps:{...c,onExited:xt,onEntered:Tr},width:p,withArrow:g,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,placement:ke.floating.placement,trapFocus:I,withinPortal:T,portalProps:A,zIndex:V,radius:B,shadow:F,closeOnEscape:z,onDismiss:L,onClose:ke.onClose,onToggle:ke.onToggle,getTargetId:()=>`${be}-target`,getDropdownId:()=>`${be}-dropdown`,withRoles:Y,targetProps:pe,__staticSelector:U,classNames:_,styles:$,unstyled:C,variant:W,keepMounted:Z,getStyles:xe,resolvedStyles:je,floatingStrategy:ie,referenceHidden:ue&&Et!=="test"?ke.floating.middlewareData.hide?.referenceHidden:!1},children:[n,te&&y.jsx(wd,{transition:"fade",mounted:ke.opened,duration:c?.duration||250,exitDuration:c?.exitDuration||250,children:er=>y.jsx(Df,{withinPortal:T,children:y.jsx(cS,{...re,...xe("overlay",{className:re?.className,style:[er,re?.style]})})})})]})}br.Target=kd,br.Dropdown=Qs,br.displayName="@mantine/core/Popover",br.extend=e=>e;var il={root:"m_5ae2e3c",barsLoader:"m_7a2bd4cd",bar:"m_870bb79","bars-loader-animation":"m_5d2b3b9d",dotsLoader:"m_4e3f22d7",dot:"m_870c4af","loader-dots-animation":"m_aac34a1",ovalLoader:"m_b34414df","oval-loader-animation":"m_f8e89c4b"};const vW=S.forwardRef(({className:e,...r},n)=>y.jsxs(Se,{component:"span",className:el(il.barsLoader,e),...r,ref:n,children:[y.jsx("span",{className:il.bar}),y.jsx("span",{className:il.bar}),y.jsx("span",{className:il.bar})]}));vW.displayName="@mantine/core/Bars";const bW=S.forwardRef(({className:e,...r},n)=>y.jsxs(Se,{component:"span",className:el(il.dotsLoader,e),...r,ref:n,children:[y.jsx("span",{className:il.dot}),y.jsx("span",{className:il.dot}),y.jsx("span",{className:il.dot})]}));bW.displayName="@mantine/core/Dots";const xW=S.forwardRef(({className:e,...r},n)=>y.jsx(Se,{component:"span",className:el(il.ovalLoader,e),...r,ref:n}));xW.displayName="@mantine/core/Oval";const wW={bars:vW,oval:xW,dots:bW},XAe={loaders:wW,type:"oval"},KAe=(e,{size:r,color:n})=>({root:{"--loader-size":dr(r,"loader-size"),"--loader-color":n?Ci(n,e):void 0}}),Mf=ot((e,r)=>{const n=Me("Loader",XAe,e),{size:o,color:i,type:a,vars:l,className:s,style:c,classNames:d,styles:u,unstyled:p,loaders:f,variant:g,children:v,attributes:w,...x}=n,k=kt({name:"Loader",props:n,classes:il,className:s,style:c,classNames:d,styles:u,unstyled:p,attributes:w,vars:l,varsResolver:KAe});return v?y.jsx(Se,{...k("root"),ref:r,...x,children:v}):y.jsx(Se,{...k("root"),ref:r,component:f[a],variant:g,size:o,...x})});Mf.defaultLoaders=wW,Mf.classes=il,Mf.displayName="@mantine/core/Loader";var Nf={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21",groupSection:"m_437b6484"};const kW={orientation:"horizontal"},ZAe=(e,{borderWidth:r})=>({group:{"--ai-border-width":$e(r)}}),s3=ot((e,r)=>{const n=Me("ActionIconGroup",kW,e),{className:o,style:i,classNames:a,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=Me("ActionIconGroup",kW,e),w=kt({name:"ActionIconGroup",props:n,classes:Nf,className:o,style:i,classNames:a,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:ZAe,rootSelector:"group"});return y.jsx(Se,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});s3.classes=Nf,s3.displayName="@mantine/core/ActionIconGroup";const QAe=(e,{radius:r,color:n,gradient:o,variant:i,autoContrast:a,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:i||"filled",autoContrast:a});return{groupSection:{"--section-height":dr(l,"section-height"),"--section-padding-x":dr(l,"section-padding-x"),"--section-fz":Eo(l),"--section-radius":r===void 0?void 0:wn(r),"--section-bg":n||i?s.background:void 0,"--section-color":s.color,"--section-bd":n||i?s.border:void 0}}},uS=ot((e,r)=>{const n=Me("ActionIconGroupSection",null,e),{className:o,style:i,classNames:a,styles:l,unstyled:s,vars:c,variant:d,gradient:u,radius:p,autoContrast:f,attributes:g,...v}=n,w=kt({name:"ActionIconGroupSection",props:n,classes:Nf,className:o,style:i,classNames:a,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:QAe,rootSelector:"groupSection"});return y.jsx(Se,{...w("groupSection"),ref:r,variant:d,...v})});uS.classes=Nf,uS.displayName="@mantine/core/ActionIconGroupSection";const JAe=(e,{size:r,radius:n,variant:o,gradient:i,color:a,autoContrast:l})=>{const s=e.variantColorResolver({color:a||e.primaryColor,theme:e,gradient:i,variant:o||"filled",autoContrast:l});return{root:{"--ai-size":dr(r,"ai-size"),"--ai-radius":n===void 0?void 0:wn(n),"--ai-bg":a||o?s.background:void 0,"--ai-hover":a||o?s.hover:void 0,"--ai-hover-color":a||o?s.hoverColor:void 0,"--ai-color":s.color,"--ai-bd":a||o?s.border:void 0}}},lr=Jn((e,r)=>{const n=Me("ActionIcon",null,e),{className:o,unstyled:i,variant:a,classNames:l,styles:s,style:c,loading:d,loaderProps:u,size:p,color:f,radius:g,__staticSelector:v,gradient:w,vars:x,children:k,disabled:C,"data-disabled":_,autoContrast:$,mod:R,attributes:T,...A}=n,z=kt({name:["ActionIcon",v],props:n,className:o,style:c,classes:Nf,classNames:l,styles:s,unstyled:i,attributes:T,vars:x,varsResolver:JAe});return y.jsxs(pr,{...z("root",{active:!C&&!d&&!_}),...A,unstyled:i,variant:a,size:p,disabled:C||d,ref:r,mod:[{loading:d,disabled:C||_},R],children:[typeof d=="boolean"&&y.jsx(wd,{mounted:d,transition:"slide-down",duration:150,children:j=>y.jsx(Se,{component:"span",...z("loader",{style:j}),"aria-hidden":!0,children:y.jsx(Mf,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...u})})}),y.jsx(Se,{component:"span",mod:{loading:d},...z("icon"),children:k})]})});lr.classes=Nf,lr.displayName="@mantine/core/ActionIcon",lr.Group=s3,lr.GroupSection=uS;const _W=S.forwardRef(({size:e="var(--cb-icon-size, 70%)",style:r,...n},o)=>y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...r,width:e,height:e},ref:o,...n,children:y.jsx("path",{d:"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})}));_W.displayName="@mantine/core/CloseIcon";var SW={root:"m_86a44da5","root--subtle":"m_220c80f2"};const eDe={variant:"subtle"},tDe=(e,{size:r,radius:n,iconSize:o})=>({root:{"--cb-size":dr(r,"cb-size"),"--cb-radius":n===void 0?void 0:wn(n),"--cb-icon-size":$e(o)}}),lp=Jn((e,r)=>{const n=Me("CloseButton",eDe,e),{iconSize:o,children:i,vars:a,radius:l,className:s,classNames:c,style:d,styles:u,unstyled:p,"data-disabled":f,disabled:g,variant:v,icon:w,mod:x,attributes:k,__staticSelector:C,..._}=n,$=kt({name:C||"CloseButton",props:n,className:s,style:d,classes:SW,classNames:c,styles:u,unstyled:p,attributes:k,vars:a,varsResolver:tDe});return y.jsxs(pr,{ref:r,..._,unstyled:p,variant:v,disabled:g,mod:[{disabled:g||f},x],...$("root",{variant:v,active:!g&&!f}),children:[w||y.jsx(_W,{}),i]})});lp.classes=SW,lp.displayName="@mantine/core/CloseButton";function rDe(e){return S.Children.toArray(e).filter(Boolean)}var EW={root:"m_4081bf90"};const nDe={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},oDe=(e,{grow:r,preventGrowOverflow:n,gap:o,align:i,justify:a,wrap:l},{childWidth:s})=>({root:{"--group-child-width":r&&n?s:void 0,"--group-gap":Gs(o),"--group-align":i,"--group-justify":a,"--group-wrap":l}}),en=ot((e,r)=>{const n=Me("Group",nDe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,children:c,gap:d,align:u,justify:p,wrap:f,grow:g,preventGrowOverflow:v,vars:w,variant:x,__size:k,mod:C,attributes:_,...$}=n,R=rDe(c),T=R.length,A=Gs(d??"md"),z={childWidth:`calc(${100/T}% - (${A} - ${A} / ${T}))`},j=kt({name:"Group",props:n,stylesCtx:z,className:i,style:a,classes:EW,classNames:o,styles:l,unstyled:s,attributes:_,vars:w,varsResolver:oDe});return y.jsx(Se,{...j("root"),ref:r,variant:x,mod:[{grow:g},C],size:k,...$,children:R})});en.classes=EW,en.displayName="@mantine/core/Group";const[iDe,aDe]=oy({size:"sm"}),CW=ot((e,r)=>{const n=Me("InputClearButton",null,e),{size:o,variant:i,vars:a,classNames:l,styles:s,...c}=n,d=aDe(),{resolvedClassNames:u,resolvedStyles:p}=T9({classNames:l,styles:s,props:n});return y.jsx(lp,{variant:i||"transparent",ref:r,size:o||d?.size||"sm",classNames:u,styles:p,__staticSelector:"InputClearButton",style:{pointerEvents:"all",background:"var(--input-bg)",...c.style},...c})});CW.displayName="@mantine/core/InputClearButton";const lDe={xs:7,sm:8,md:10,lg:12,xl:15};function sDe({__clearable:e,__clearSection:r,rightSection:n,__defaultRightSection:o,size:i="sm"}){const a=e&&r;return a&&(n||o)?y.jsxs("div",{"data-combined-clear-section":!0,style:{display:"flex",gap:2,alignItems:"center",paddingInlineEnd:lDe[i]},children:[a,n||o]}):n===null?null:n||a||o}const[cDe,c3]=oy({offsetBottom:!1,offsetTop:!1,describedBy:void 0,getStyles:null,inputId:void 0,labelId:void 0});var sa={wrapper:"m_6c018570",input:"m_8fb7ebe7",section:"m_82577fc2",placeholder:"m_88bacfd0",root:"m_46b77525",label:"m_8fdc1311",required:"m_78a94662",error:"m_8f816625",description:"m_fe47ce59"};const dDe=(e,{size:r})=>({description:{"--input-description-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),d3=ot((e,r)=>{const n=Me("InputDescription",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,size:d,__staticSelector:u,__inheritStyles:p=!0,attributes:f,variant:g,...v}=Me("InputDescription",null,n),w=c3(),x=kt({name:["InputWrapper",u],props:n,classes:sa,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:f,rootSelector:"description",vars:c,varsResolver:dDe}),k=p&&w?.getStyles||x;return y.jsx(Se,{component:"p",ref:r,variant:g,size:d,...k("description",w?.getStyles?{className:i,style:a}:void 0),...v})});d3.classes=sa,d3.displayName="@mantine/core/InputDescription";const uDe=(e,{size:r})=>({error:{"--input-error-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),u3=ot((e,r)=>{const n=Me("InputError",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,size:d,attributes:u,__staticSelector:p,__inheritStyles:f=!0,variant:g,...v}=n,w=kt({name:["InputWrapper",p],props:n,classes:sa,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:u,rootSelector:"error",vars:c,varsResolver:uDe}),x=c3(),k=f&&x?.getStyles||w;return y.jsx(Se,{component:"p",ref:r,variant:g,size:d,...k("error",x?.getStyles?{className:i,style:a}:void 0),...v})});u3.classes=sa,u3.displayName="@mantine/core/InputError";const $W={labelElement:"label"},pDe=(e,{size:r})=>({label:{"--input-label-size":Eo(r),"--input-asterisk-color":void 0}}),p3=ot((e,r)=>{const n=Me("InputLabel",$W,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,labelElement:d,size:u,required:p,htmlFor:f,onMouseDown:g,children:v,__staticSelector:w,variant:x,mod:k,attributes:C,..._}=Me("InputLabel",$W,n),$=kt({name:["InputWrapper",w],props:n,classes:sa,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:C,rootSelector:"label",vars:c,varsResolver:pDe}),R=c3(),T=R?.getStyles||$;return y.jsxs(Se,{...T("label",R?.getStyles?{className:i,style:a}:void 0),component:d,variant:x,size:u,ref:r,htmlFor:d==="label"?f:void 0,mod:[{required:p},k],onMouseDown:A=>{g?.(A),!A.defaultPrevented&&A.detail>1&&A.preventDefault()},..._,children:[v,p&&y.jsx("span",{...T("required"),"aria-hidden":!0,children:" *"})]})});p3.classes=sa,p3.displayName="@mantine/core/InputLabel";const pS=ot((e,r)=>{const n=Me("InputPlaceholder",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,__staticSelector:d,variant:u,error:p,mod:f,attributes:g,...v}=n,w=kt({name:["InputPlaceholder",d],props:n,classes:sa,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:g,rootSelector:"placeholder"});return y.jsx(Se,{...w("placeholder"),mod:[{error:!!p},f],component:"span",variant:u,ref:r,...v})});pS.classes=sa,pS.displayName="@mantine/core/InputPlaceholder";function hDe(e,{hasDescription:r,hasError:n}){const o=e.findIndex(s=>s==="input"),i=e.slice(0,o),a=e.slice(o+1),l=r&&i.includes("description")||n&&i.includes("error");return{offsetBottom:r&&a.includes("description")||n&&a.includes("error"),offsetTop:l}}const fDe={labelElement:"label",inputContainer:e=>e,inputWrapperOrder:["label","description","input","error"]},mDe=(e,{size:r})=>({label:{"--input-label-size":Eo(r),"--input-asterisk-color":void 0},error:{"--input-error-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`},description:{"--input-description-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),hS=ot((e,r)=>{const n=Me("InputWrapper",fDe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,size:d,variant:u,__staticSelector:p,inputContainer:f,inputWrapperOrder:g,label:v,error:w,description:x,labelProps:k,descriptionProps:C,errorProps:_,labelElement:$,children:R,withAsterisk:T,id:A,required:z,__stylesApiProps:j,mod:I,attributes:P,...L}=n,H=kt({name:["InputWrapper",p],props:j||n,classes:sa,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:mDe}),M={size:d,variant:u,__staticSelector:p},V=oa(A),B=typeof T=="boolean"?T:z,F=_?.id||`${V}-error`,q=C?.id||`${V}-description`,G=V,U=!!w&&typeof w!="boolean",Y=!!x,K=`${U?F:""} ${Y?q:""}`,O=K.trim().length>0?K.trim():void 0,W=k?.id||`${V}-label`,Z=v&&y.jsx(p3,{labelElement:$,id:W,htmlFor:G,required:B,...M,...k,children:v},"label"),Q=Y&&y.jsx(d3,{...C,...M,size:C?.size||M.size,id:C?.id||q,children:x},"description"),ie=y.jsx(S.Fragment,{children:f(R)},"input"),te=U&&S.createElement(u3,{..._,...M,size:_?.size||M.size,key:"error",id:_?.id||F},w),re=g.map(ue=>{switch(ue){case"label":return Z;case"input":return ie;case"description":return Q;case"error":return te;default:return null}});return y.jsx(cDe,{value:{getStyles:H,describedBy:O,inputId:G,labelId:W,...hDe(g,{hasDescription:Y,hasError:U})},children:y.jsx(Se,{ref:r,variant:u,size:d,mod:[{error:!!w},I],...H("root"),...L,children:re})})});hS.classes=sa,hS.displayName="@mantine/core/InputWrapper";const gDe={variant:"default",leftSectionPointerEvents:"none",rightSectionPointerEvents:"none",withAria:!0,withErrorStyles:!0,size:"sm"},yDe=(e,r,n)=>({wrapper:{"--input-margin-top":n.offsetTop?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-margin-bottom":n.offsetBottom?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-height":dr(r.size,"input-height"),"--input-fz":Eo(r.size),"--input-radius":r.radius===void 0?void 0:wn(r.radius),"--input-left-section-width":r.leftSectionWidth!==void 0?$e(r.leftSectionWidth):void 0,"--input-right-section-width":r.rightSectionWidth!==void 0?$e(r.rightSectionWidth):void 0,"--input-padding-y":r.multiline?dr(r.size,"input-padding-y"):void 0,"--input-left-section-pointer-events":r.leftSectionPointerEvents,"--input-right-section-pointer-events":r.rightSectionPointerEvents}}),zi=Jn((e,r)=>{const n=Me("Input",gDe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,required:c,__staticSelector:d,__stylesApiProps:u,size:p,wrapperProps:f,error:g,disabled:v,leftSection:w,leftSectionProps:x,leftSectionWidth:k,rightSection:C,rightSectionProps:_,rightSectionWidth:$,rightSectionPointerEvents:R,leftSectionPointerEvents:T,variant:A,vars:z,pointer:j,multiline:I,radius:P,id:L,withAria:H,withErrorStyles:M,mod:V,inputSize:B,attributes:F,__clearSection:q,__clearable:G,__defaultRightSection:U,...Y}=n,{styleProps:K,rest:O}=qH(Y),W=c3(),Z={offsetBottom:W?.offsetBottom,offsetTop:W?.offsetTop},Q=kt({name:["Input",d],props:u||n,classes:sa,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:F,stylesCtx:Z,rootSelector:"wrapper",vars:z,varsResolver:yDe}),ie=H?{required:c,disabled:v,"aria-invalid":!!g,"aria-describedby":W?.describedBy,id:W?.inputId||L}:{},te=sDe({__clearable:G,__clearSection:q,rightSection:C,__defaultRightSection:U,size:p});return y.jsx(iDe,{value:{size:p||"sm"},children:y.jsxs(Se,{...Q("wrapper"),...K,...f,mod:[{error:!!g&&M,pointer:j,disabled:v,multiline:I,"data-with-right-section":!!te,"data-with-left-section":!!w},V],variant:A,size:p,children:[w&&y.jsx("div",{...x,"data-position":"left",...Q("section",{className:x?.className,style:x?.style}),children:w}),y.jsx(Se,{component:"input",...O,...ie,ref:r,required:c,mod:{disabled:v,error:!!g&&M},variant:A,__size:B,...Q("input")}),te&&y.jsx("div",{..._,"data-position":"right",...Q("section",{className:_?.className,style:_?.style}),children:te})]})})});zi.classes=sa,zi.Wrapper=hS,zi.Label=p3,zi.Error=u3,zi.Description=d3,zi.Placeholder=pS,zi.ClearButton=CW,zi.displayName="@mantine/core/Input";const vDe={gap:{type:"spacing",property:"gap"},rowGap:{type:"spacing",property:"rowGap"},columnGap:{type:"spacing",property:"columnGap"},align:{type:"identity",property:"alignItems"},justify:{type:"identity",property:"justifyContent"},wrap:{type:"identity",property:"flexWrap"},direction:{type:"identity",property:"flexDirection"}};var RW={root:"m_8bffd616"};const Js=Jn((e,r)=>{const n=Me("Flex",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,gap:d,rowGap:u,columnGap:p,align:f,justify:g,wrap:v,direction:w,attributes:x,...k}=n,C=kt({name:"Flex",classes:RW,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:x,vars:c}),_=lo(),$=Bw(),R=WH({styleProps:{gap:d,rowGap:u,columnGap:p,align:f,justify:g,wrap:v,direction:w},theme:_,data:vDe});return y.jsxs(y.Fragment,{children:[R.hasResponsiveStyles&&y.jsx(Pw,{selector:`.${$}`,styles:R.styles,media:R.media}),y.jsx(Se,{ref:r,...C("root",{className:$,style:yf(R.inlineStyles)}),...k})]})});Js.classes=RW,Js.displayName="@mantine/core/Flex";function bDe(e,r){if(!r||!e)return!1;let n=r.parentNode;for(;n!=null;){if(n===e)return!0;n=n.parentNode}return!1}function xDe({target:e,parent:r,ref:n,displayAfterTransitionEnd:o}){const i=S.useRef(-1),[a,l]=S.useState(!1),[s,c]=S.useState(typeof o=="boolean"?o:!1),d=()=>{if(!e||!r||!n.current)return;const g=e.getBoundingClientRect(),v=r.getBoundingClientRect(),w=window.getComputedStyle(e),x=window.getComputedStyle(r),k=xd(w.borderTopWidth)+xd(x.borderTopWidth),C=xd(w.borderLeftWidth)+xd(x.borderLeftWidth),_={top:g.top-v.top-k,left:g.left-v.left-C,width:g.width,height:g.height};n.current.style.transform=`translateY(${_.top}px) translateX(${_.left}px)`,n.current.style.width=`${_.width}px`,n.current.style.height=`${_.height}px`},u=()=>{window.clearTimeout(i.current),n.current&&(n.current.style.transitionDuration="0ms"),d(),i.current=window.setTimeout(()=>{n.current&&(n.current.style.transitionDuration="")},30)},p=S.useRef(null),f=S.useRef(null);return S.useEffect(()=>{if(d(),e)return p.current=new ResizeObserver(u),p.current.observe(e),r&&(f.current=new ResizeObserver(u),f.current.observe(r)),()=>{p.current?.disconnect(),f.current?.disconnect()}},[r,e]),S.useEffect(()=>{if(r){const g=v=>{bDe(v.target,r)&&(u(),c(!1))};return r.addEventListener("transitionend",g),()=>{r.removeEventListener("transitionend",g)}}},[r]),CH(()=>{Cze()!=="test"&&l(!0)},20,{autoInvoke:!0}),$H(g=>{g.forEach(v=>{v.type==="attributes"&&v.attributeName==="dir"&&u()})},{attributes:!0,attributeFilter:["dir"]},()=>document.documentElement),{initialized:a,hidden:s}}var zW={root:"m_96b553a6"};const wDe=(e,{transitionDuration:r})=>({root:{"--transition-duration":typeof r=="number"?`${r}ms`:r}}),h3=ot((e,r)=>{const n=Me("FloatingIndicator",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,target:d,parent:u,transitionDuration:p,mod:f,displayAfterTransitionEnd:g,attributes:v,...w}=n,x=kt({name:"FloatingIndicator",classes:zW,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:wDe}),k=S.useRef(null),{initialized:C,hidden:_}=xDe({target:d,parent:u,ref:k,displayAfterTransitionEnd:g}),$=$r(r,k);return!d||!u?null:y.jsx(Se,{ref:$,mod:[{initialized:C,hidden:_},f],...x("root"),...w})});h3.displayName="@mantine/core/FloatingIndicator",h3.classes=zW;function TW({open:e,close:r,openDelay:n,closeDelay:o}){const i=S.useRef(-1),a=S.useRef(-1),l=()=>{window.clearTimeout(i.current),window.clearTimeout(a.current)},s=()=>{l(),n===0||n===void 0?e():i.current=window.setTimeout(e,n)},c=()=>{l(),o===0||o===void 0?r():a.current=window.setTimeout(r,o)};return S.useEffect(()=>l,[]),{openDropdown:s,closeDropdown:c}}function fS({style:e,size:r=16,...n}){return y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...e,width:$e(r),height:$e(r),display:"block"},...n,children:y.jsx("path",{d:"M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}fS.displayName="@mantine/core/AccordionChevron";var jW={root:"m_66836ed3",wrapper:"m_a5d60502",body:"m_667c2793",title:"m_6a03f287",label:"m_698f4f23",icon:"m_667f2a6a",message:"m_7fa78076",closeButton:"m_87f54839"};const kDe=(e,{radius:r,color:n,variant:o,autoContrast:i})=>{const a=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:o||"light",autoContrast:i});return{root:{"--alert-radius":r===void 0?void 0:wn(r),"--alert-bg":n||o?a.background:void 0,"--alert-color":a.color,"--alert-bd":n||o?a.border:void 0}}},f3=ot((e,r)=>{const n=Me("Alert",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,radius:d,color:u,title:p,children:f,id:g,icon:v,withCloseButton:w,onClose:x,closeButtonLabel:k,variant:C,autoContrast:_,role:$,attributes:R,...T}=n,A=kt({name:"Alert",classes:jW,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:R,vars:c,varsResolver:kDe}),z=oa(g),j=p&&`${z}-title`||void 0,I=`${z}-body`;return y.jsx(Se,{id:z,...A("root",{variant:C}),variant:C,ref:r,role:$||"alert",...T,"aria-describedby":f?I:void 0,"aria-labelledby":p?j:void 0,children:y.jsxs("div",{...A("wrapper"),children:[v&&y.jsx("div",{...A("icon"),children:v}),y.jsxs("div",{...A("body"),children:[p&&y.jsx("div",{...A("title"),"data-with-close-button":w||void 0,children:y.jsx("span",{id:j,...A("label"),children:p})}),f&&y.jsx("div",{id:I,...A("message"),"data-variant":C,children:f})]}),w&&y.jsx(lp,{...A("closeButton"),onClick:x,variant:"transparent",size:16,iconSize:16,"aria-label":k,unstyled:s})]})})});f3.classes=jW,f3.displayName="@mantine/core/Alert";var AW={root:"m_b6d8b162"};function _De(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const SDe={inherit:!1},EDe=(e,{variant:r,lineClamp:n,gradient:o,size:i,color:a})=>({root:{"--text-fz":Eo(i),"--text-lh":VRe(i),"--text-gradient":r==="gradient"?k9(o,e):void 0,"--text-line-clamp":typeof n=="number"?n.toString():void 0,"--text-color":a?Ci(a,e):void 0}}),it=Jn((e,r)=>{const n=Me("Text",SDe,e),{lineClamp:o,truncate:i,inline:a,inherit:l,gradient:s,span:c,__staticSelector:d,vars:u,className:p,style:f,classNames:g,styles:v,unstyled:w,variant:x,mod:k,size:C,attributes:_,...$}=n,R=kt({name:["Text",d],props:n,classes:AW,className:p,style:f,classNames:g,styles:v,unstyled:w,attributes:_,vars:u,varsResolver:EDe});return y.jsx(Se,{...R("root",{focusable:!0}),ref:r,component:c?"span":"p",variant:x,mod:[{"data-truncate":_De(i),"data-line-clamp":typeof o=="number","data-inline":a,"data-inherit":l},k],size:C,...$})});it.classes=AW,it.displayName="@mantine/core/Text";var DW={root:"m_849cf0da"};const CDe={underline:"hover"},mS=Jn((e,r)=>{const{underline:n,className:o,unstyled:i,mod:a,...l}=Me("Anchor",CDe,e);return y.jsx(it,{component:"a",ref:r,className:el({[DW.root]:!i},o),...l,mod:[{underline:n},a],__staticSelector:"Anchor",unstyled:i})});mS.classes=DW,mS.displayName="@mantine/core/Anchor";var ca={dropdown:"m_88b62a41",search:"m_985517d8",options:"m_b2821a6e",option:"m_92253aa5",empty:"m_2530cd1d",header:"m_858f94bd",footer:"m_82b967cb",group:"m_254f3e4f",groupLabel:"m_2bb2e9e5",chevron:"m_2943220b",optionsDropdownOption:"m_390b5f4",optionsDropdownCheckIcon:"m_8ee53fc2",optionsDropdownCheckPlaceholder:"m_a530ee0a"};const $De={error:null},RDe=(e,{size:r,color:n})=>({chevron:{"--combobox-chevron-size":dr(r,"combobox-chevron-size"),"--combobox-chevron-color":n?Ci(n,e):void 0}}),gS=ot((e,r)=>{const n=Me("ComboboxChevron",$De,e),{size:o,error:i,style:a,className:l,classNames:s,styles:c,unstyled:d,vars:u,mod:p,...f}=n,g=kt({name:"ComboboxChevron",classes:ca,props:n,style:a,className:l,classNames:s,styles:c,unstyled:d,vars:u,varsResolver:RDe,rootSelector:"chevron"});return y.jsx(Se,{component:"svg",...f,...g("chevron"),size:o,viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",mod:["combobox-chevron",{error:i},p],ref:r,children:y.jsx("path",{d:"M4.93179 5.43179C4.75605 5.60753 4.75605 5.89245 4.93179 6.06819C5.10753 6.24392 5.39245 6.24392 5.56819 6.06819L7.49999 4.13638L9.43179 6.06819C9.60753 6.24392 9.89245 6.24392 10.0682 6.06819C10.2439 5.89245 10.2439 5.60753 10.0682 5.43179L7.81819 3.18179C7.73379 3.0974 7.61933 3.04999 7.49999 3.04999C7.38064 3.04999 7.26618 3.0974 7.18179 3.18179L4.93179 5.43179ZM10.0682 9.56819C10.2439 9.39245 10.2439 9.10753 10.0682 8.93179C9.89245 8.75606 9.60753 8.75606 9.43179 8.93179L7.49999 10.8636L5.56819 8.93179C5.39245 8.75606 5.10753 8.75606 4.93179 8.93179C4.75605 9.10753 4.75605 9.39245 4.93179 9.56819L7.18179 11.8182C7.35753 11.9939 7.64245 11.9939 7.81819 11.8182L10.0682 9.56819Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})});gS.classes=ca,gS.displayName="@mantine/core/ComboboxChevron";const[zDe,da]=na("Combobox component was not found in tree"),MW=S.forwardRef(({size:e,onMouseDown:r,onClick:n,onClear:o,...i},a)=>y.jsx(zi.ClearButton,{ref:a,tabIndex:-1,"aria-hidden":!0,...i,onMouseDown:l=>{l.preventDefault(),r?.(l)},onClick:l=>{o(),n?.(l)}}));MW.displayName="@mantine/core/ComboboxClearButton";const m3=ot((e,r)=>{const{classNames:n,styles:o,className:i,style:a,hidden:l,...s}=Me("ComboboxDropdown",null,e),c=da();return y.jsx(br.Dropdown,{...s,ref:r,role:"presentation","data-hidden":l||void 0,...c.getStyles("dropdown",{className:i,style:a,classNames:n,styles:o})})});m3.classes=ca,m3.displayName="@mantine/core/ComboboxDropdown";const TDe={refProp:"ref"},NW=ot((e,r)=>{const{children:n,refProp:o}=Me("ComboboxDropdownTarget",TDe,e);if(da(),!Sw(n))throw new Error("Combobox.DropdownTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return y.jsx(br.Target,{ref:r,refProp:o,children:n})});NW.displayName="@mantine/core/ComboboxDropdownTarget";const fy=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=Me("ComboboxEmpty",null,e),c=da();return y.jsx(Se,{ref:r,...c.getStyles("empty",{className:o,classNames:n,styles:a,style:i}),...s})});fy.classes=ca,fy.displayName="@mantine/core/ComboboxEmpty";function yS({onKeyDown:e,withKeyboardNavigation:r,withAriaAttributes:n,withExpandedAttribute:o,targetType:i,autoComplete:a}){const l=da(),[s,c]=S.useState(null),d=u=>{if(e?.(u),!l.readOnly&&r){if(u.nativeEvent.isComposing)return;if(u.nativeEvent.code==="ArrowDown"&&(u.preventDefault(),l.store.dropdownOpened?c(l.store.selectNextOption()):(l.store.openDropdown("keyboard"),c(l.store.selectActiveOption()),l.store.updateSelectedOptionIndex("selected",{scrollIntoView:!0}))),u.nativeEvent.code==="ArrowUp"&&(u.preventDefault(),l.store.dropdownOpened?c(l.store.selectPreviousOption()):(l.store.openDropdown("keyboard"),c(l.store.selectActiveOption()),l.store.updateSelectedOptionIndex("selected",{scrollIntoView:!0}))),u.nativeEvent.code==="Enter"||u.nativeEvent.code==="NumpadEnter"){if(u.nativeEvent.keyCode===229)return;const p=l.store.getSelectedOptionIndex();l.store.dropdownOpened&&p!==-1?(u.preventDefault(),l.store.clickSelectedOption()):i==="button"&&(u.preventDefault(),l.store.openDropdown("keyboard"))}u.key==="Escape"&&l.store.closeDropdown("keyboard"),u.nativeEvent.code==="Space"&&i==="button"&&(u.preventDefault(),l.store.toggleDropdown("keyboard"))}};return{...n?{"aria-haspopup":"listbox","aria-expanded":o?!!(l.store.listId&&l.store.dropdownOpened):void 0,"aria-controls":l.store.dropdownOpened&&l.store.listId?l.store.listId:void 0,"aria-activedescendant":l.store.dropdownOpened&&s||void 0,autoComplete:a,"data-expanded":l.store.dropdownOpened||void 0,"data-mantine-stop-propagation":l.store.dropdownOpened||void 0}:{},onKeyDown:d}}const jDe={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},PW=ot((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:i,withAriaAttributes:a,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Me("ComboboxEventsTarget",jDe,e),u=gd(n);if(!u)throw new Error("Combobox.EventsTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const p=da(),f=yS({targetType:s,withAriaAttributes:a,withKeyboardNavigation:i,withExpandedAttribute:l,onKeyDown:u.props.onKeyDown,autoComplete:c});return S.cloneElement(u,{...f,...d,[o]:$r(r,p.store.targetRef,Rw(u))})});PW.displayName="@mantine/core/ComboboxEventsTarget";const vS=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=Me("ComboboxFooter",null,e),c=da();return y.jsx(Se,{ref:r,...c.getStyles("footer",{className:o,classNames:n,style:i,styles:a}),...s,onMouseDown:d=>{d.preventDefault()}})});vS.classes=ca,vS.displayName="@mantine/core/ComboboxFooter";const bS=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,children:s,label:c,id:d,...u}=Me("ComboboxGroup",null,e),p=da(),f=oa(d);return y.jsxs(Se,{ref:r,role:"group","aria-labelledby":c?f:void 0,...p.getStyles("group",{className:o,classNames:n,style:i,styles:a}),...u,children:[c&&y.jsx("div",{id:f,...p.getStyles("groupLabel",{classNames:n,styles:a}),children:c}),s]})});bS.classes=ca,bS.displayName="@mantine/core/ComboboxGroup";const xS=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=Me("ComboboxHeader",null,e),c=da();return y.jsx(Se,{ref:r,...c.getStyles("header",{className:o,classNames:n,style:i,styles:a}),...s,onMouseDown:d=>{d.preventDefault()}})});xS.classes=ca,xS.displayName="@mantine/core/ComboboxHeader";function BW({value:e,valuesDivider:r=",",...n}){return y.jsx("input",{type:"hidden",value:Array.isArray(e)?e.join(r):e||"",...n})}BW.displayName="@mantine/core/ComboboxHiddenInput";const my=ot((e,r)=>{const n=Me("ComboboxOption",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,onClick:c,id:d,active:u,onMouseDown:p,onMouseOver:f,disabled:g,selected:v,mod:w,...x}=n,k=da(),C=S.useId(),_=d||C;return y.jsx(Se,{...k.getStyles("option",{className:i,classNames:o,styles:l,style:a}),...x,ref:r,id:_,mod:["combobox-option",{"combobox-active":u,"combobox-disabled":g,"combobox-selected":v},w],role:"option",onClick:$=>{g?$.preventDefault():(k.onOptionSubmit?.(n.value,n),c?.($))},onMouseDown:$=>{$.preventDefault(),p?.($)},onMouseOver:$=>{k.resetSelectionOnOptionHover&&k.store.resetSelectedOption(),f?.($)}})});my.classes=ca,my.displayName="@mantine/core/ComboboxOption";const g3=ot((e,r)=>{const n=Me("ComboboxOptions",null,e),{classNames:o,className:i,style:a,styles:l,id:s,onMouseDown:c,labelledBy:d,...u}=n,p=da(),f=oa(s);return S.useEffect(()=>{p.store.setListId(f)},[f]),y.jsx(Se,{ref:r,...p.getStyles("options",{className:i,style:a,classNames:o,styles:l}),...u,id:f,role:"listbox","aria-labelledby":d,onMouseDown:g=>{g.preventDefault(),c?.(g)}})});g3.classes=ca,g3.displayName="@mantine/core/ComboboxOptions";const ADe={withAriaAttributes:!0,withKeyboardNavigation:!0},wS=ot((e,r)=>{const n=Me("ComboboxSearch",ADe,e),{classNames:o,styles:i,unstyled:a,vars:l,withAriaAttributes:s,onKeyDown:c,withKeyboardNavigation:d,size:u,...p}=n,f=da(),g=f.getStyles("search"),v=yS({targetType:"input",withAriaAttributes:s,withKeyboardNavigation:d,withExpandedAttribute:!1,onKeyDown:c,autoComplete:"off"});return y.jsx(zi,{ref:$r(r,f.store.searchRef),classNames:[{input:g.className},o],styles:[{input:g.style},i],size:u||f.size,...v,...p,__staticSelector:"Combobox"})});wS.classes=ca,wS.displayName="@mantine/core/ComboboxSearch";const DDe={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},kS=ot((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:i,withAriaAttributes:a,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Me("ComboboxTarget",DDe,e),u=gd(n);if(!u)throw new Error("Combobox.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const p=da(),f=yS({targetType:s,withAriaAttributes:a,withKeyboardNavigation:i,withExpandedAttribute:l,onKeyDown:u.props.onKeyDown,autoComplete:c}),g=S.cloneElement(u,{...f,...d});return y.jsx(br.Target,{ref:$r(r,p.store.targetRef),children:g})});kS.displayName="@mantine/core/ComboboxTarget";function MDe(e,r,n){for(let o=e-1;o>=0;o-=1)if(!r[o].hasAttribute("data-combobox-disabled"))return o;if(n){for(let o=r.length-1;o>-1;o-=1)if(!r[o].hasAttribute("data-combobox-disabled"))return o}return e}function NDe(e,r,n){for(let o=e+1;o{s||(c(!0),i?.(B))},[c,i,s]),k=S.useCallback((B="unknown")=>{s&&(c(!1),o?.(B))},[c,o,s]),C=S.useCallback((B="unknown")=>{s?k(B):x(B)},[k,x,s]),_=S.useCallback(()=>{const B=md(f.current),F=zw(`#${d.current} [data-combobox-selected]`,B);F?.removeAttribute("data-combobox-selected"),F?.removeAttribute("aria-selected")},[]),$=S.useCallback(B=>{const F=md(f.current),q=zw(`#${d.current}`,F),G=q?fd("[data-combobox-option]",q):null;if(!G)return null;const U=B>=G.length?0:B<0?G.length-1:B;return u.current=U,G?.[U]&&!G[U].hasAttribute("data-combobox-disabled")?(_(),G[U].setAttribute("data-combobox-selected","true"),G[U].setAttribute("aria-selected","true"),G[U].scrollIntoView({block:"nearest",behavior:l}),G[U].id):null},[l,_]),R=S.useCallback(()=>{const B=md(f.current),F=zw(`#${d.current} [data-combobox-active]`,B);if(F){const q=fd(`#${d.current} [data-combobox-option]`,B).findIndex(G=>G===F);return $(q)}return $(0)},[$]),T=S.useCallback(()=>{const B=md(f.current),F=fd(`#${d.current} [data-combobox-option]`,B);return $(NDe(u.current,F,a))},[$,a]),A=S.useCallback(()=>{const B=md(f.current),F=fd(`#${d.current} [data-combobox-option]`,B);return $(MDe(u.current,F,a))},[$,a]),z=S.useCallback(()=>{const B=md(f.current),F=fd(`#${d.current} [data-combobox-option]`,B);return $(PDe(F))},[$]),j=S.useCallback((B="selected",F)=>{w.current=window.setTimeout(()=>{const q=md(f.current),G=fd(`#${d.current} [data-combobox-option]`,q),U=G.findIndex(Y=>Y.hasAttribute(`data-combobox-${B}`));u.current=U,F?.scrollIntoView&&G[U]?.scrollIntoView({block:"nearest",behavior:l})},0)},[]),I=S.useCallback(()=>{u.current=-1,_()},[_]),P=S.useCallback(()=>{const B=md(f.current);fd(`#${d.current} [data-combobox-option]`,B)?.[u.current]?.click()},[]),L=S.useCallback(B=>{d.current=B},[]),H=S.useCallback(()=>{g.current=window.setTimeout(()=>p.current?.focus(),0)},[]),M=S.useCallback(()=>{v.current=window.setTimeout(()=>f.current?.focus(),0)},[]),V=S.useCallback(()=>u.current,[]);return S.useEffect(()=>()=>{window.clearTimeout(g.current),window.clearTimeout(v.current),window.clearTimeout(w.current)},[]),{dropdownOpened:s,openDropdown:x,closeDropdown:k,toggleDropdown:C,selectedOptionIndex:u.current,getSelectedOptionIndex:V,selectOption:$,selectFirstOption:z,selectActiveOption:R,selectNextOption:T,selectPreviousOption:A,resetSelectedOption:I,updateSelectedOptionIndex:j,listId:d.current,setListId:L,clickSelectedOption:P,searchRef:p,focusSearchInput:H,targetRef:f,focusTarget:M}}const BDe={keepMounted:!0,withinPortal:!0,resetSelectionOnOptionHover:!1,width:"target",transitionProps:{transition:"fade",duration:0},size:"sm"},IDe=(e,{size:r,dropdownPadding:n})=>({options:{"--combobox-option-fz":Eo(r),"--combobox-option-padding":dr(r,"combobox-option-padding")},dropdown:{"--combobox-padding":n===void 0?void 0:$e(n),"--combobox-option-fz":Eo(r),"--combobox-option-padding":dr(r,"combobox-option-padding")}});function eo(e){const r=Me("Combobox",BDe,e),{classNames:n,styles:o,unstyled:i,children:a,store:l,vars:s,onOptionSubmit:c,onClose:d,size:u,dropdownPadding:p,resetSelectionOnOptionHover:f,__staticSelector:g,readOnly:v,attributes:w,...x}=r,k=IW(),C=l||k,_=kt({name:g||"Combobox",classes:ca,props:r,classNames:n,styles:o,unstyled:i,attributes:w,vars:s,varsResolver:IDe}),$=()=>{d?.(),C.closeDropdown()};return y.jsx(zDe,{value:{getStyles:_,store:C,onOptionSubmit:c,size:u,resetSelectionOnOptionHover:f,readOnly:v},children:y.jsx(br,{opened:C.dropdownOpened,preventPositionChangeWhenVisible:!0,...x,onChange:R=>!R&&$(),withRoles:!1,unstyled:i,children:a})})}const ODe=e=>e;eo.extend=ODe,eo.classes=ca,eo.displayName="@mantine/core/Combobox",eo.Target=kS,eo.Dropdown=m3,eo.Options=g3,eo.Option=my,eo.Search=wS,eo.Empty=fy,eo.Chevron=gS,eo.Footer=vS,eo.Header=xS,eo.EventsTarget=PW,eo.DropdownTarget=NW,eo.Group=bS,eo.ClearButton=MW,eo.HiddenInput=BW;function OW({size:e,style:r,...n}){const o=e!==void 0?{width:$e(e),height:$e(e),...r}:r;return y.jsx("svg",{viewBox:"0 0 10 7",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:o,"aria-hidden":!0,...n,children:y.jsx("path",{d:"M4 4.586L1.707 2.293A1 1 0 1 0 .293 3.707l3 3a.997.997 0 0 0 1.414 0l5-5A1 1 0 1 0 8.293.293L4 4.586z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}var LW={root:"m_347db0ec","root--dot":"m_fbd81e3d",label:"m_5add502a",section:"m_91fdda9b"};const LDe=(e,{radius:r,color:n,gradient:o,variant:i,size:a,autoContrast:l,circle:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:i||"filled",autoContrast:l});return{root:{"--badge-height":dr(a,"badge-height"),"--badge-padding-x":dr(a,"badge-padding-x"),"--badge-fz":dr(a,"badge-fz"),"--badge-radius":s||r===void 0?void 0:wn(r),"--badge-bg":n||i?c.background:void 0,"--badge-color":n||i?c.color:void 0,"--badge-bd":n||i?c.border:void 0,"--badge-dot-color":i==="dot"?Ci(n,e):void 0}}},ec=Jn((e,r)=>{const n=Me("Badge",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,radius:d,color:u,gradient:p,leftSection:f,rightSection:g,children:v,variant:w,fullWidth:x,autoContrast:k,circle:C,mod:_,attributes:$,...R}=n,T=kt({name:"Badge",props:n,classes:LW,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:$,vars:c,varsResolver:LDe});return y.jsxs(Se,{variant:w,mod:[{block:x,circle:C,"with-right-section":!!g,"with-left-section":!!f},_],...T("root",{variant:w}),ref:r,...R,children:[f&&y.jsx("span",{...T("section"),"data-position":"left",children:f}),y.jsx("span",{...T("label"),children:v}),g&&y.jsx("span",{...T("section"),"data-position":"right",children:g})]})});ec.classes=LW,ec.displayName="@mantine/core/Badge";var FW={root:"m_8b3717df",breadcrumb:"m_f678d540",separator:"m_3b8f2208"};const FDe={separator:"/"},VDe=(e,{separatorMargin:r})=>({root:{"--bc-separator-margin":Gs(r)}}),y3=ot((e,r)=>{const n=Me("Breadcrumbs",FDe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,children:d,separator:u,separatorMargin:p,attributes:f,...g}=n,v=kt({name:"Breadcrumbs",classes:FW,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:f,vars:c,varsResolver:VDe}),w=S.Children.toArray(d).reduce((x,k,C,_)=>{const $=Sw(k)?S.cloneElement(k,{...v("breadcrumb",{className:k.props?.className}),key:C}):S.createElement("div",{...v("breadcrumb"),key:C},k);return x.push($),C!==_.length-1&&x.push(S.createElement(Se,{...v("separator"),key:`separator-${C}`},u)),x},[]);return y.jsx(Se,{ref:r,...v("root"),...g,children:w})});y3.classes=FW,y3.displayName="@mantine/core/Breadcrumbs";var Pf={root:"m_77c9d27d",inner:"m_80f1301b",label:"m_811560b9",section:"m_a74036a",loader:"m_a25b86ee",group:"m_80d6d844",groupSection:"m_70be2a01"};const VW={orientation:"horizontal"},qDe=(e,{borderWidth:r})=>({group:{"--button-border-width":$e(r)}}),_S=ot((e,r)=>{const n=Me("ButtonGroup",VW,e),{className:o,style:i,classNames:a,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=Me("ButtonGroup",VW,e),w=kt({name:"ButtonGroup",props:n,classes:Pf,className:o,style:i,classNames:a,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:qDe,rootSelector:"group"});return y.jsx(Se,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});_S.classes=Pf,_S.displayName="@mantine/core/ButtonGroup";const HDe=(e,{radius:r,color:n,gradient:o,variant:i,autoContrast:a,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:i||"filled",autoContrast:a});return{groupSection:{"--section-height":dr(l,"section-height"),"--section-padding-x":dr(l,"section-padding-x"),"--section-fz":l?.includes("compact")?Eo(l.replace("compact-","")):Eo(l),"--section-radius":r===void 0?void 0:wn(r),"--section-bg":n||i?s.background:void 0,"--section-color":s.color,"--section-bd":n||i?s.border:void 0}}},SS=ot((e,r)=>{const n=Me("ButtonGroupSection",null,e),{className:o,style:i,classNames:a,styles:l,unstyled:s,vars:c,variant:d,gradient:u,radius:p,autoContrast:f,attributes:g,...v}=n,w=kt({name:"ButtonGroupSection",props:n,classes:Pf,className:o,style:i,classNames:a,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:HDe,rootSelector:"groupSection"});return y.jsx(Se,{...w("groupSection"),ref:r,variant:d,...v})});SS.classes=Pf,SS.displayName="@mantine/core/ButtonGroupSection";const UDe={in:{opacity:1,transform:`translate(-50%, calc(-50% + ${$e(1)}))`},out:{opacity:0,transform:"translate(-50%, -200%)"},common:{transformOrigin:"center"},transitionProperty:"transform, opacity"},WDe=(e,{radius:r,color:n,gradient:o,variant:i,size:a,justify:l,autoContrast:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:i||"filled",autoContrast:s});return{root:{"--button-justify":l,"--button-height":dr(a,"button-height"),"--button-padding-x":dr(a,"button-padding-x"),"--button-fz":a?.includes("compact")?Eo(a.replace("compact-","")):Eo(a),"--button-radius":r===void 0?void 0:wn(r),"--button-bg":n||i?c.background:void 0,"--button-hover":n||i?c.hover:void 0,"--button-color":c.color,"--button-bd":n||i?c.border:void 0,"--button-hover-color":n||i?c.hoverColor:void 0}}},Vn=Jn((e,r)=>{const n=Me("Button",null,e),{style:o,vars:i,className:a,color:l,disabled:s,children:c,leftSection:d,rightSection:u,fullWidth:p,variant:f,radius:g,loading:v,loaderProps:w,gradient:x,classNames:k,styles:C,unstyled:_,"data-disabled":$,autoContrast:R,mod:T,attributes:A,...z}=n,j=kt({name:"Button",props:n,classes:Pf,className:a,style:o,classNames:k,styles:C,unstyled:_,attributes:A,vars:i,varsResolver:WDe}),I=!!d,P=!!u;return y.jsxs(pr,{ref:r,...j("root",{active:!s&&!v&&!$}),unstyled:_,variant:f,disabled:s||v,mod:[{disabled:s||$,loading:v,block:p,"with-left-section":I,"with-right-section":P},T],...z,children:[typeof v=="boolean"&&y.jsx(wd,{mounted:v,transition:UDe,duration:150,children:L=>y.jsx(Se,{component:"span",...j("loader",{style:L}),"aria-hidden":!0,children:y.jsx(Mf,{color:"var(--button-color)",size:"calc(var(--button-height) / 1.8)",...w})})}),y.jsxs("span",{...j("inner"),children:[d&&y.jsx(Se,{component:"span",...j("section"),mod:{position:"left"},children:d}),y.jsx(Se,{component:"span",mod:{loading:v},...j("label"),children:c}),u&&y.jsx(Se,{component:"span",...j("section"),mod:{position:"right"},children:u})]})]})});Vn.classes=Pf,Vn.displayName="@mantine/core/Button",Vn.Group=_S,Vn.GroupSection=SS;const[GDe,YDe]=na("Card component was not found in tree");var ES={root:"m_e615b15f",section:"m_599a2148"};const v3=Jn((e,r)=>{const n=Me("CardSection",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,withBorder:c,inheritPadding:d,mod:u,...p}=n,f=YDe();return y.jsx(Se,{ref:r,mod:[{"with-border":c,"inherit-padding":d},u],...f.getStyles("section",{className:i,style:a,styles:l,classNames:o}),...p})});v3.classes=ES,v3.displayName="@mantine/core/CardSection";const XDe=(e,{padding:r})=>({root:{"--card-padding":Gs(r)}}),b3=Jn((e,r)=>{const n=Me("Card",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,children:d,padding:u,attributes:p,...f}=n,g=kt({name:"Card",props:n,classes:ES,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:XDe}),v=S.Children.toArray(d),w=v.map((x,k)=>typeof x=="object"&&x&&"type"in x&&x.type===v3?S.cloneElement(x,{"data-first-section":k===0||void 0,"data-last-section":k===v.length-1||void 0}):x);return y.jsx(GDe,{value:{getStyles:g},children:y.jsx(Af,{ref:r,unstyled:s,...g("root"),...f,children:w})})});b3.classes=ES,b3.displayName="@mantine/core/Card",b3.Section=v3;var qW={root:"m_de3d2490",colorOverlay:"m_862f3d1b",shadowOverlay:"m_98ae7f22",alphaOverlay:"m_95709ac0",childrenOverlay:"m_93e74e3"};const HW={withShadow:!0},KDe=(e,{radius:r,size:n})=>({root:{"--cs-radius":r===void 0?void 0:wn(r),"--cs-size":$e(n)}}),gy=Jn((e,r)=>{const n=Me("ColorSwatch",HW,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,color:d,size:u,radius:p,withShadow:f,children:g,variant:v,attributes:w,...x}=Me("ColorSwatch",HW,n),k=kt({name:"ColorSwatch",props:n,classes:qW,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:w,vars:c,varsResolver:KDe});return y.jsxs(Se,{ref:r,variant:v,size:u,...k("root",{focusable:!0}),...x,children:[y.jsx("span",{...k("alphaOverlay")}),f&&y.jsx("span",{...k("shadowOverlay")}),y.jsx("span",{...k("colorOverlay",{style:{backgroundColor:d}})}),y.jsx("span",{...k("childrenOverlay"),children:g})]})});gy.classes=qW,gy.displayName="@mantine/core/ColorSwatch";const ZDe={timeout:1e3};function UW(e){const{children:r,timeout:n,value:o,...i}=Me("CopyButton",ZDe,e),a=GRe({timeout:n});return y.jsx(y.Fragment,{children:r({copy:()=>a.copy(o),copied:a.copied,...i})})}UW.displayName="@mantine/core/CopyButton";var WW={root:"m_3eebeb36",label:"m_9e365f20"};const QDe={orientation:"horizontal"},JDe=(e,{color:r,variant:n,size:o})=>({root:{"--divider-color":r?Ci(r,e):void 0,"--divider-border-style":n,"--divider-size":dr(o,"divider-size")}}),sp=ot((e,r)=>{const n=Me("Divider",QDe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,color:d,orientation:u,label:p,labelPosition:f,mod:g,attributes:v,...w}=n,x=kt({name:"Divider",classes:WW,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:JDe});return y.jsx(Se,{ref:r,mod:[{orientation:u,"with-label":!!p},g],...x("root"),...w,role:"separator",children:p&&y.jsx(Se,{component:"span",mod:{position:f},...x("label"),children:p})})});sp.classes=WW,sp.displayName="@mantine/core/Divider";const[GW,YW]=na("Grid component was not found in tree"),CS=(e,r)=>e==="content"?"auto":e==="auto"?"0rem":e?`${100/(r/e)}%`:void 0,XW=(e,r,n)=>n||e==="auto"?"100%":e==="content"?"unset":CS(e,r),KW=(e,r)=>{if(e)return e==="auto"||r?"1":"auto"},ZW=(e,r)=>e===0?"0":e?`${100/(r/e)}%`:void 0;function eMe({span:e,order:r,offset:n,selector:o}){const i=lo(),a=YW(),l=a.breakpoints||i.breakpoints,s=ay(e)===void 0?12:ay(e),c=yf({"--col-order":ay(r)?.toString(),"--col-flex-grow":KW(s,a.grow),"--col-flex-basis":CS(s,a.columns),"--col-width":s==="content"?"auto":void 0,"--col-max-width":XW(s,a.columns,a.grow),"--col-offset":ZW(ay(n),a.columns)}),d=So(l).reduce((p,f)=>(p[f]||(p[f]={}),typeof r=="object"&&r[f]!==void 0&&(p[f]["--col-order"]=r[f]?.toString()),typeof e=="object"&&e[f]!==void 0&&(p[f]["--col-flex-grow"]=KW(e[f],a.grow),p[f]["--col-flex-basis"]=CS(e[f],a.columns),p[f]["--col-width"]=e[f]==="content"?"auto":void 0,p[f]["--col-max-width"]=XW(e[f],a.columns,a.grow)),typeof n=="object"&&n[f]!==void 0&&(p[f]["--col-offset"]=ZW(n[f],a.columns)),p),{}),u=pH(So(d),l).filter(p=>So(d[p.value]).length>0).map(p=>({query:a.type==="container"?`mantine-grid (min-width: ${l[p.value]})`:`(min-width: ${l[p.value]})`,styles:d[p.value]}));return y.jsx(Pw,{styles:c,media:a.type==="container"?void 0:u,container:a.type==="container"?u:void 0,selector:o})}var $S={container:"m_8478a6da",root:"m_410352e9",inner:"m_dee7bd2f",col:"m_96bdd299"};const tMe={span:12},cp=ot((e,r)=>{const n=Me("GridCol",tMe,e),{classNames:o,className:i,style:a,styles:l,vars:s,span:c,order:d,offset:u,...p}=n,f=YW(),g=Bw();return y.jsxs(y.Fragment,{children:[y.jsx(eMe,{selector:`.${g}`,span:c,order:d,offset:u}),y.jsx(Se,{ref:r,...f.getStyles("col",{className:el(i,g),style:a,classNames:o,styles:l}),...p})]})});cp.classes=$S,cp.displayName="@mantine/core/GridCol";function QW({gutter:e,selector:r,breakpoints:n,type:o}){const i=lo(),a=n||i.breakpoints,l=yf({"--grid-gutter":Gs(ay(e))}),s=So(a).reduce((d,u)=>(d[u]||(d[u]={}),typeof e=="object"&&e[u]!==void 0&&(d[u]["--grid-gutter"]=Gs(e[u])),d),{}),c=pH(So(s),a).filter(d=>So(s[d.value]).length>0).map(d=>({query:o==="container"?`mantine-grid (min-width: ${a[d.value]})`:`(min-width: ${a[d.value]})`,styles:s[d.value]}));return y.jsx(Pw,{styles:l,media:o==="container"?void 0:c,container:o==="container"?c:void 0,selector:r})}const rMe={gutter:"md",grow:!1,columns:12},nMe=(e,{justify:r,align:n,overflow:o})=>({root:{"--grid-justify":r,"--grid-align":n,"--grid-overflow":o}}),yy=ot((e,r)=>{const n=Me("Grid",rMe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,grow:d,gutter:u,columns:p,align:f,justify:g,children:v,breakpoints:w,type:x,attributes:k,...C}=n,_=kt({name:"Grid",classes:$S,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:k,vars:c,varsResolver:nMe}),$=Bw();return x==="container"&&w?y.jsxs(GW,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(QW,{selector:`.${$}`,...n}),y.jsx("div",{..._("container"),children:y.jsx(Se,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})})]}):y.jsxs(GW,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(QW,{selector:`.${$}`,...n}),y.jsx(Se,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})]})});yy.classes=$S,yy.displayName="@mantine/core/Grid",yy.Col=cp;function JW({color:e,theme:r,defaultShade:n}){const o=vd({color:e,theme:r});return o.isThemeColor?o.shade===void 0?`var(--mantine-color-${o.color}-${n})`:`var(${o.variable})`:e}var eG={root:"m_bcb3f3c2"};const oMe={color:"yellow"},iMe=(e,{color:r})=>({root:{"--mark-bg-dark":JW({color:r,theme:e,defaultShade:5}),"--mark-bg-light":JW({color:r,theme:e,defaultShade:2})}}),RS=ot((e,r)=>{const n=Me("Mark",oMe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,color:d,variant:u,attributes:p,...f}=n,g=kt({name:"Mark",props:n,className:i,style:a,classes:eG,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:iMe});return y.jsx(Se,{component:"mark",ref:r,variant:u,...g("root"),...f})});RS.classes=eG,RS.displayName="@mantine/core/Mark";function tG(e){return e.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&")}function aMe(e,r){if(r==null)return[{chunk:e,highlighted:!1}];const n=Array.isArray(r)?r.map(tG):tG(r);if(!(Array.isArray(n)?n.filter(a=>a.trim().length>0).length>0:n.trim()!==""))return[{chunk:e,highlighted:!1}];const o=typeof n=="string"?n.trim():n.filter(a=>a.trim().length!==0).map(a=>a.trim()).sort((a,l)=>l.length-a.length).join("|"),i=new RegExp(`(${o})`,"gi");return e.split(i).map(a=>({chunk:a,highlighted:i.test(a)})).filter(({chunk:a})=>a)}const tc=Jn((e,r)=>{const{unstyled:n,children:o,highlight:i,highlightStyles:a,color:l,...s}=Me("Highlight",null,e),c=aMe(o,i);return y.jsx(it,{unstyled:n,ref:r,...s,__staticSelector:"Highlight",children:c.map(({chunk:d,highlighted:u},p)=>u?y.jsx(RS,{unstyled:n,color:l,style:a,"data-highlight":d,children:d},p):y.jsx("span",{children:d},p))})});tc.classes=it.classes,tc.displayName="@mantine/core/Highlight";const[lMe,rG]=na("HoverCard component was not found in the tree"),nG=S.createContext(!1),sMe=nG.Provider,zS=()=>S.useContext(nG);function TS(e){const{children:r,onMouseEnter:n,onMouseLeave:o,...i}=Me("HoverCardDropdown",null,e),a=rG();if(zS()&&a.getFloatingProps&&a.floating){const c=a.getFloatingProps();return y.jsx(br.Dropdown,{ref:a.floating,...c,onMouseEnter:kn(n,c.onMouseEnter),onMouseLeave:kn(o,c.onMouseLeave),...i,children:r})}const l=kn(n,a.openDropdown),s=kn(o,a.closeDropdown);return y.jsx(br.Dropdown,{onMouseEnter:l,onMouseLeave:s,...i,children:r})}TS.displayName="@mantine/core/HoverCardDropdown";const cMe={openDelay:0,closeDelay:0};function jS(e){const{openDelay:r,closeDelay:n,children:o}=Me("HoverCardGroup",cMe,e);return y.jsx(sMe,{value:!0,children:y.jsx(VU,{delay:{open:r,close:n},children:o})})}jS.displayName="@mantine/core/HoverCardGroup",jS.extend=e=>e;const dMe={refProp:"ref"},AS=S.forwardRef((e,r)=>{const{children:n,refProp:o,eventPropsWrapperName:i,...a}=Me("HoverCardTarget",dMe,e),l=gd(n);if(!l)throw new Error("HoverCard.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const s=rG();if(zS()&&s.getReferenceProps&&s.reference){const p=s.getReferenceProps();return y.jsx(br.Target,{refProp:o,ref:r,...a,children:S.cloneElement(l,i?{[i]:{...p,ref:s.reference}}:{...p,ref:s.reference})})}const c=kn(l.props.onMouseEnter,s.openDropdown),d=kn(l.props.onMouseLeave,s.closeDropdown),u={onMouseEnter:c,onMouseLeave:d};return y.jsx(br.Target,{refProp:o,ref:r,...a,children:S.cloneElement(l,i?{[i]:u}:u)})});AS.displayName="@mantine/core/HoverCardTarget";function uMe(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,i=zS(),a=oa(),l=S.useRef(-1),s=S.useRef(-1),c=S.useCallback(()=>{window.clearTimeout(l.current),window.clearTimeout(s.current)},[]),d=S.useCallback(C=>{n(C),C?(g(a),e.onOpen?.()):e.onClose?.()},[a,e.onOpen,e.onClose]),{context:u,refs:p}=t3({open:o,onOpenChange:d}),{delay:f,setCurrentId:g}=qU(u,{id:a}),{getReferenceProps:v,getFloatingProps:w}=WU([LU(u,{enabled:!0,delay:i?f:{open:e.openDelay,close:e.closeDelay}}),GU(u,{role:"dialog"}),UU(u,{enabled:i})]),x=S.useCallback(()=>{i||(c(),e.openDelay===0||e.openDelay===void 0?d(!0):l.current=window.setTimeout(()=>d(!0),e.openDelay))},[i,c,e.openDelay,d]),k=S.useCallback(()=>{i||(c(),e.closeDelay===0||e.closeDelay===void 0?d(!1):s.current=window.setTimeout(()=>d(!1),e.closeDelay))},[i,c,e.closeDelay,d]);return S.useEffect(()=>()=>c(),[c]),{opened:o,reference:p.setReference,floating:p.setFloating,getReferenceProps:v,getFloatingProps:w,openDropdown:x,closeDropdown:k}}const pMe={openDelay:0,closeDelay:150,initiallyOpened:!1};function Bf(e){const{children:r,onOpen:n,onClose:o,openDelay:i,closeDelay:a,initiallyOpened:l,...s}=Me("HoverCard",pMe,e),c=uMe({openDelay:i,closeDelay:a,defaultOpened:l,onOpen:n,onClose:o});return y.jsx(lMe,{value:{openDropdown:c.openDropdown,closeDropdown:c.closeDropdown,getReferenceProps:c.getReferenceProps,getFloatingProps:c.getFloatingProps,reference:c.reference,floating:c.floating},children:y.jsx(br,{...s,opened:c.opened,__staticSelector:"HoverCard",children:r})})}Bf.displayName="@mantine/core/HoverCard",Bf.Target=AS,Bf.Dropdown=TS,Bf.Group=jS,Bf.extend=e=>e;var hMe=S.useLayoutEffect;const[fMe,_d]=na("Menu component was not found in the tree");var Sd={dropdown:"m_dc9b7c9f",label:"m_9bfac126",divider:"m_efdf90cb",item:"m_99ac2aa1",itemLabel:"m_5476e0d3",itemSection:"m_8b75e504",chevron:"m_b85b0bed"};const DS=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=Me("MenuDivider",null,e),c=_d();return y.jsx(Se,{ref:r,...c.getStyles("divider",{className:o,style:i,styles:a,classNames:n}),...s})});DS.classes=Sd,DS.displayName="@mantine/core/MenuDivider";const vy=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=Me("MenuDropdown",null,e),f=S.useRef(null),g=_d(),v=kn(d,k=>{(k.key==="ArrowUp"||k.key==="ArrowDown")&&(k.preventDefault(),f.current?.querySelectorAll("[data-menu-item]:not(:disabled)")[0]?.focus())}),w=kn(s,()=>(g.trigger==="hover"||g.trigger==="click-hover")&&g.openDropdown()),x=kn(c,()=>(g.trigger==="hover"||g.trigger==="click-hover")&&g.closeDropdown());return y.jsxs(br.Dropdown,{...p,onMouseEnter:w,onMouseLeave:x,role:"menu","aria-orientation":"vertical",ref:$r(r,f),...g.getStyles("dropdown",{className:o,style:i,styles:a,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,onKeyDown:v,children:[g.withInitialFocusPlaceholder&&y.jsx("div",{tabIndex:-1,"data-autofocus":!0,"data-mantine-stop-propagation":!0,style:{outline:0}}),u]})});vy.classes=Sd,vy.displayName="@mantine/core/MenuDropdown";const[mMe,x3]=oy(),by=Jn((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,color:s,closeMenuOnClick:c,leftSection:d,rightSection:u,children:p,disabled:f,"data-disabled":g,...v}=Me("MenuItem",null,e),w=_d(),x=x3(),k=lo(),{dir:C}=bd(),_=S.useRef(null),$=v,R=kn($.onClick,()=>{g||(typeof c=="boolean"?c&&w.closeDropdownImmediately():w.closeOnItemClick&&w.closeDropdownImmediately())}),T=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,A=s?vd({color:s,theme:k}):null,z=kn($.onKeyDown,j=>{j.key==="ArrowLeft"&&x&&(x.close(),x.focusParentItem())});return y.jsxs(pr,{onMouseDown:j=>j.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style:i,styles:a,classNames:n}),ref:$r(_,r),role:"menuitem",disabled:f,"data-menu-item":!0,"data-disabled":f||g||void 0,"data-mantine-stop-propagation":!0,onClick:R,onKeyDown:iy({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:z}),__vars:{"--menu-item-color":A?.isThemeColor&&A?.shade===void 0?`var(--mantine-color-${A.color}-6)`:T?.color,"--menu-item-hover":T?.hover},children:[d&&y.jsx("div",{...w.getStyles("itemSection",{styles:a,classNames:n}),"data-position":"left",children:d}),p&&y.jsx("div",{...w.getStyles("itemLabel",{styles:a,classNames:n}),children:p}),u&&y.jsx("div",{...w.getStyles("itemSection",{styles:a,classNames:n}),"data-position":"right",children:u})]})});by.classes=Sd,by.displayName="@mantine/core/MenuItem";const MS=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=Me("MenuLabel",null,e),c=_d();return y.jsx(Se,{ref:r,...c.getStyles("label",{className:o,style:i,styles:a,classNames:n}),...s})});MS.classes=Sd,MS.displayName="@mantine/core/MenuLabel";const NS=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=Me("MenuSubDropdown",null,e),f=S.useRef(null),g=_d(),v=x3(),w=kn(s,v?.open),x=kn(c,v?.close);return y.jsx(br.Dropdown,{...p,onMouseEnter:w,onMouseLeave:x,role:"menu","aria-orientation":"vertical",ref:$r(r,f),...g.getStyles("dropdown",{className:o,style:i,styles:a,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,children:u})});NS.classes=Sd,NS.displayName="@mantine/core/MenuSubDropdown";const PS=Jn((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,color:s,leftSection:c,rightSection:d,children:u,disabled:p,"data-disabled":f,closeMenuOnClick:g,...v}=Me("MenuSubItem",null,e),w=_d(),x=x3(),k=lo(),{dir:C}=bd(),_=S.useRef(null),$=v,R=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,T=s?vd({color:s,theme:k}):null,A=kn($.onKeyDown,P=>{P.key==="ArrowRight"&&(x?.open(),x?.focusFirstItem()),P.key==="ArrowLeft"&&x?.parentContext&&(x.parentContext.close(),x.parentContext.focusParentItem())}),z=kn($.onClick,()=>{!f&&g&&w.closeDropdownImmediately()}),j=kn($.onMouseEnter,x?.open),I=kn($.onMouseLeave,x?.close);return y.jsxs(pr,{onMouseDown:P=>P.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style:i,styles:a,classNames:n}),ref:$r(_,r),role:"menuitem",disabled:p,"data-menu-item":!0,"data-sub-menu-item":!0,"data-disabled":p||f||void 0,"data-mantine-stop-propagation":!0,onMouseEnter:j,onMouseLeave:I,onClick:z,onKeyDown:iy({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:A}),__vars:{"--menu-item-color":T?.isThemeColor&&T?.shade===void 0?`var(--mantine-color-${T.color}-6)`:R?.color,"--menu-item-hover":R?.hover},children:[c&&y.jsx("div",{...w.getStyles("itemSection",{styles:a,classNames:n}),"data-position":"left",children:c}),u&&y.jsx("div",{...w.getStyles("itemLabel",{styles:a,classNames:n}),children:u}),y.jsx("div",{...w.getStyles("itemSection",{styles:a,classNames:n}),"data-position":"right",children:d||y.jsx(fS,{...w.getStyles("chevron"),size:14})})]})});PS.classes=Sd,PS.displayName="@mantine/core/MenuSubItem";function oG({children:e,refProp:r}){if(!Sw(e))throw new Error("Menu.Sub.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return _d(),y.jsx(br.Target,{refProp:r,popupType:"menu",children:e})}oG.displayName="@mantine/core/MenuSubTarget";const gMe={offset:0,position:"right-start",transitionProps:{duration:0},openDelay:0,middlewares:{shift:{crossAxis:!0}}};function If(e){const{children:r,closeDelay:n,openDelay:o,...i}=Me("MenuSub",gMe,e),a=oa(),[l,{open:s,close:c}]=xze(!1),d=x3(),{openDropdown:u,closeDropdown:p}=TW({open:s,close:c,closeDelay:n,openDelay:o});return y.jsx(mMe,{value:{opened:l,close:p,open:u,focusFirstItem:()=>window.setTimeout(()=>{document.getElementById(`${a}-dropdown`)?.querySelectorAll("[data-menu-item]:not([data-disabled])")[0]?.focus()},16),focusParentItem:()=>window.setTimeout(()=>{document.getElementById(`${a}-target`)?.focus()},16),parentContext:d},children:y.jsx(br,{opened:l,withinPortal:!1,withArrow:!1,id:a,...i,children:r})})}If.extend=e=>e,If.displayName="@mantine/core/MenuSub",If.Target=oG,If.Dropdown=NS,If.Item=PS;const yMe={refProp:"ref"},w3=S.forwardRef((e,r)=>{const{children:n,refProp:o,...i}=Me("MenuTarget",yMe,e),a=gd(n);if(!a)throw new Error("Menu.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const l=_d(),s=a.props,c=kn(s.onClick,()=>{l.trigger==="click"?l.toggleDropdown():l.trigger==="click-hover"&&(l.setOpenedViaClick(!0),l.opened||l.openDropdown())}),d=kn(s.onMouseEnter,()=>(l.trigger==="hover"||l.trigger==="click-hover")&&l.openDropdown()),u=kn(s.onMouseLeave,()=>{(l.trigger==="hover"||l.trigger==="click-hover"&&!l.openedViaClick)&&l.closeDropdown()});return y.jsx(br.Target,{refProp:o,popupType:"menu",ref:r,...i,children:S.cloneElement(a,{onClick:c,onMouseEnter:d,onMouseLeave:u,"data-expanded":l.opened?!0:void 0})})});w3.displayName="@mantine/core/MenuTarget";const vMe={trapFocus:!0,closeOnItemClick:!0,withInitialFocusPlaceholder:!0,clickOutsideEvents:["mousedown","touchstart","keydown"],loop:!0,trigger:"click",openDelay:0,closeDelay:100,menuItemTabIndex:-1};function tn(e){const r=Me("Menu",vMe,e),{children:n,onOpen:o,onClose:i,opened:a,defaultOpened:l,trapFocus:s,onChange:c,closeOnItemClick:d,loop:u,closeOnEscape:p,trigger:f,openDelay:g,closeDelay:v,classNames:w,styles:x,unstyled:k,variant:C,vars:_,menuItemTabIndex:$,keepMounted:R,withInitialFocusPlaceholder:T,attributes:A,...z}=r,j=kt({name:"Menu",classes:Sd,props:r,classNames:w,styles:x,unstyled:k,attributes:A}),[I,P]=Ys({value:a,defaultValue:l,finalValue:!1,onChange:c}),[L,H]=S.useState(!1),M=()=>{P(!1),H(!1),I&&i?.()},V=()=>{P(!0),!I&&o?.()},B=()=>{I?M():V()},{openDropdown:F,closeDropdown:q}=TW({open:V,close:M,closeDelay:v,openDelay:g}),G=K=>HRe("[data-menu-item]","[data-menu-dropdown]",K),{resolvedClassNames:U,resolvedStyles:Y}=T9({classNames:w,styles:x,props:r});return y.jsx(fMe,{value:{getStyles:j,opened:I,toggleDropdown:B,getItemIndex:G,openedViaClick:L,setOpenedViaClick:H,closeOnItemClick:d,closeDropdown:f==="click"?M:q,openDropdown:f==="click"?V:F,closeDropdownImmediately:M,loop:u,trigger:f,unstyled:k,menuItemTabIndex:$,withInitialFocusPlaceholder:T},children:y.jsx(br,{returnFocus:!0,...z,opened:I,onChange:B,defaultOpened:l,trapFocus:R?!1:s,closeOnEscape:p,__staticSelector:"Menu",classNames:U,styles:Y,unstyled:k,variant:C,keepMounted:R,children:n})})}tn.extend=e=>e,tn.withProps=PTe(tn),tn.classes=Sd,tn.displayName="@mantine/core/Menu",tn.Item=by,tn.Label=MS,tn.Dropdown=vy,tn.Target=w3,tn.Divider=DS,tn.Sub=If;const[Ywt,iG]=oy(),[bMe,xMe]=oy();var k3={root:"m_7cda1cd6","root--default":"m_44da308b","root--contrast":"m_e3a01f8",label:"m_1e0e6180",remove:"m_ae386778",group:"m_1dcfd90b"};const wMe=(e,{gap:r},{size:n})=>({group:{"--pg-gap":r!==void 0?dr(r):dr(n,"pg-gap")}}),BS=ot((e,r)=>{const n=Me("PillGroup",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,size:d,disabled:u,attributes:p,...f}=n,g=iG()?.size||d||void 0,v=kt({name:"PillGroup",classes:k3,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:wMe,stylesCtx:{size:g},rootSelector:"group"});return y.jsx(bMe,{value:{size:g,disabled:u},children:y.jsx(Se,{ref:r,size:g,...v("group"),...f})})});BS.classes=k3,BS.displayName="@mantine/core/PillGroup";const kMe={variant:"default"},_Me=(e,{radius:r},{size:n})=>({root:{"--pill-fz":dr(n,"pill-fz"),"--pill-height":dr(n,"pill-height"),"--pill-radius":r===void 0?void 0:wn(r)}}),_3=ot((e,r)=>{const n=Me("Pill",kMe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,variant:d,children:u,withRemoveButton:p,onRemove:f,removeButtonProps:g,radius:v,size:w,disabled:x,mod:k,attributes:C,..._}=n,$=xMe(),R=iG(),T=w||$?.size||void 0,A=R?.variant==="filled"?"contrast":d||"default",z=kt({name:"Pill",classes:k3,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:C,vars:c,varsResolver:_Me,stylesCtx:{size:T}});return y.jsxs(Se,{component:"span",ref:r,variant:A,size:T,...z("root",{variant:A}),mod:[{"with-remove":p&&!x,disabled:x||$?.disabled},k],..._,children:[y.jsx("span",{...z("label"),children:u}),p&&y.jsx(lp,{variant:"transparent",radius:v,tabIndex:-1,"aria-hidden":!0,unstyled:s,...g,...z("remove",{className:g?.className,style:g?.style}),onMouseDown:j=>{j.preventDefault(),j.stopPropagation(),g?.onMouseDown?.(j)},onClick:j=>{j.stopPropagation(),f?.(),g?.onClick?.(j)}})]})});_3.classes=k3,_3.displayName="@mantine/core/Pill",_3.Group=BS;var aG={root:"m_f0824112",description:"m_57492dcc",section:"m_690090b5",label:"m_1f6ac4c4",body:"m_f07af9d2",children:"m_e17b862f",chevron:"m_1fd8a00b"};const SMe=(e,{variant:r,color:n,childrenOffset:o,autoContrast:i})=>{const a=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:r||"light",autoContrast:i});return{root:{"--nl-bg":n||r?a.background:void 0,"--nl-hover":n||r?a.hover:void 0,"--nl-color":n||r?a.color:void 0},children:{"--nl-offset":Gs(o)}}},IS=Jn((e,r)=>{const n=Me("NavLink",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,opened:d,defaultOpened:u,onChange:p,children:f,active:g,disabled:v,leftSection:w,rightSection:x,label:k,description:C,disableRightSectionRotation:_,noWrap:$,childrenOffset:R,autoContrast:T,mod:A,attributes:z,onClick:j,onKeyDown:I,...P}=n,L=kt({name:"NavLink",props:n,classes:aG,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:z,vars:c,varsResolver:SMe}),[H,M]=Ys({value:d,defaultValue:u,finalValue:!1,onChange:p}),V=!!f,B=F=>{j?.(F),V&&(F.preventDefault(),M(!H))};return y.jsxs(y.Fragment,{children:[y.jsxs(pr,{...L("root"),component:"a",ref:r,onClick:B,onKeyDown:F=>{I?.(F),F.nativeEvent.code==="Space"&&V&&(F.preventDefault(),M(!H))},unstyled:s,mod:[{disabled:v,active:g,expanded:H},A],...P,children:[w&&y.jsx(Se,{component:"span",...L("section"),mod:{position:"left"},children:w}),y.jsxs(Se,{...L("body"),mod:{"no-wrap":$},children:[y.jsx(Se,{component:"span",...L("label"),children:k}),y.jsx(Se,{component:"span",mod:{active:g},...L("description"),children:C})]}),(V||x!==void 0)&&y.jsx(Se,{...L("section"),component:"span",mod:{rotate:H&&!_,position:"right"},children:V?x!==void 0?x:y.jsx(fS,{...L("chevron")}):x})]}),V&&y.jsx(QH,{in:H,...L("collapse"),children:y.jsx("div",{...L("children"),children:f})})]})});IS.classes=aG,IS.displayName="@mantine/core/NavLink";var lG={root:"m_a513464",icon:"m_a4ceffb",loader:"m_b0920b15",body:"m_a49ed24",title:"m_3feedf16",description:"m_3d733a3a",closeButton:"m_919a4d88"};const EMe={withCloseButton:!0},CMe=(e,{radius:r,color:n})=>({root:{"--notification-radius":r===void 0?void 0:wn(r),"--notification-color":n?Ci(n,e):void 0}}),xy=ot((e,r)=>{const n=Me("Notification",EMe,e),{className:o,color:i,radius:a,loading:l,withCloseButton:s,withBorder:c,title:d,icon:u,children:p,onClose:f,closeButtonProps:g,classNames:v,style:w,styles:x,unstyled:k,variant:C,vars:_,mod:$,loaderProps:R,role:T,attributes:A,...z}=n,j=kt({name:"Notification",classes:lG,props:n,className:o,style:w,classNames:v,styles:x,unstyled:k,attributes:A,vars:_,varsResolver:CMe});return y.jsxs(Se,{...j("root"),mod:[{"data-with-icon":!!u||l,"data-with-border":c},$],ref:r,variant:C,role:T||"alert",...z,children:[u&&!l&&y.jsx("div",{...j("icon"),children:u}),l&&y.jsx(Mf,{size:28,color:i,...R,...j("loader")}),y.jsxs("div",{...j("body"),children:[d&&y.jsx("div",{...j("title"),children:d}),y.jsx(Se,{...j("description"),mod:{"data-with-title":!!d},children:p})]}),s&&y.jsx(lp,{iconSize:16,color:"gray",...g,unstyled:k,onClick:f,...j("closeButton")})]})});xy.classes=lG,xy.displayName="@mantine/core/Notification";const $Me={duration:100,transition:"fade"};function sG(e,r){return{...$Me,...r,...e}}function RMe({offset:e,position:r,defaultOpened:n}){const[o,i]=S.useState(n),a=S.useRef(null),{x:l,y:s,elements:c,refs:d,update:u,placement:p}=t3({placement:r,middleware:[Z9({crossAxis:!0,padding:5,rootBoundary:"document"})]}),f=p.includes("right")?e:r.includes("left")?e*-1:0,g=p.includes("bottom")?e:r.includes("top")?e*-1:0,v=S.useCallback(({clientX:w,clientY:x})=>{d.setPositionReference({getBoundingClientRect(){return{width:0,height:0,x:w,y:x,left:w+f,top:x+g,right:w,bottom:x}}})},[c.reference]);return S.useEffect(()=>{if(d.floating.current){const w=a.current;w.addEventListener("mousemove",v);const x=Zs(d.floating.current);return x.forEach(k=>{k.addEventListener("scroll",u)}),()=>{w.removeEventListener("mousemove",v),x.forEach(k=>{k.removeEventListener("scroll",u)})}}},[c.reference,d.floating.current,u,v,o]),{handleMouseMove:v,x:l,y:s,opened:o,setOpened:i,boundaryRef:a,floating:d.setFloating}}var S3={tooltip:"m_1b3c8819",arrow:"m_f898399f"};const zMe={refProp:"ref",withinPortal:!0,offset:10,position:"right",zIndex:Ew("popover")},TMe=(e,{radius:r,color:n})=>({tooltip:{"--tooltip-radius":r===void 0?void 0:wn(r),"--tooltip-bg":n?Ci(n,e):void 0,"--tooltip-color":n?"var(--mantine-color-white)":void 0}}),OS=ot((e,r)=>{const n=Me("TooltipFloating",zMe,e),{children:o,refProp:i,withinPortal:a,style:l,className:s,classNames:c,styles:d,unstyled:u,radius:p,color:f,label:g,offset:v,position:w,multiline:x,zIndex:k,disabled:C,defaultOpened:_,variant:$,vars:R,portalProps:T,attributes:A,...z}=n,j=lo(),I=kt({name:"TooltipFloating",props:n,classes:S3,className:s,style:l,classNames:c,styles:d,unstyled:u,attributes:A,rootSelector:"tooltip",vars:R,varsResolver:TMe}),{handleMouseMove:P,x:L,y:H,opened:M,boundaryRef:V,floating:B,setOpened:F}=RMe({offset:v,position:w,defaultOpened:_}),q=gd(o);if(!q)throw new Error("[@mantine/core] Tooltip.Floating component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported");const G=$r(V,Rw(q),r),U=q.props,Y=O=>{U.onMouseEnter?.(O),P(O),F(!0)},K=O=>{U.onMouseLeave?.(O),F(!1)};return y.jsxs(y.Fragment,{children:[y.jsx(Df,{...T,withinPortal:a,children:y.jsx(Se,{...z,...I("tooltip",{style:{...N9(l,j),zIndex:k,display:!C&&M?"block":"none",top:(H&&Math.round(H))??"",left:(L&&Math.round(L))??""}}),variant:$,ref:B,mod:{multiline:x},children:g})}),S.cloneElement(q,{...U,[i]:G,onMouseEnter:Y,onMouseLeave:K})]})});OS.classes=S3,OS.displayName="@mantine/core/TooltipFloating";const cG=S.createContext(!1),jMe=cG.Provider,AMe=()=>S.useContext(cG),DMe={openDelay:0,closeDelay:0};function dp(e){const{openDelay:r,closeDelay:n,children:o}=Me("TooltipGroup",DMe,e);return y.jsx(jMe,{value:!0,children:y.jsx(VU,{delay:{open:r,close:n},children:o})})}dp.displayName="@mantine/core/TooltipGroup",dp.extend=e=>e;function MMe(e){if(e===void 0)return{shift:!0,flip:!0};const r={...e};return e.shift===void 0&&(r.shift=!0),e.flip===void 0&&(r.flip=!0),r}function NMe(e){const r=MMe(e.middlewares),n=[TU(e.offset)];return r.shift&&n.push(Z9(typeof r.shift=="boolean"?{padding:8}:{padding:8,...r.shift})),r.flip&&n.push(typeof r.flip=="boolean"?Jw():Jw(r.flip)),n.push(AU({element:e.arrowRef,padding:e.arrowOffset})),r.inline?n.push(typeof r.inline=="boolean"?uy():uy(r.inline)):e.inline&&n.push(uy()),n}function PMe(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,i=AMe(),a=oa(),l=S.useCallback($=>{n($),$&&x(a)},[a]),{x:s,y:c,context:d,refs:u,placement:p,middlewareData:{arrow:{x:f,y:g}={}}}=t3({strategy:e.strategy,placement:e.position,open:o,onOpenChange:l,middleware:NMe(e),whileElementsMounted:Kw}),{delay:v,currentId:w,setCurrentId:x}=qU(d,{id:a}),{getReferenceProps:k,getFloatingProps:C}=WU([LU(d,{enabled:e.events?.hover,delay:i?v:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),xAe(d,{enabled:e.events?.focus,visibleOnly:!0}),GU(d,{role:"tooltip"}),UU(d,{enabled:typeof e.opened>"u"})]);wf(()=>{e.onPositionChange?.(p)},[p]);const _=o&&w&&w!==a;return{x:s,y:c,arrowX:f,arrowY:g,reference:u.setReference,floating:u.setFloating,getFloatingProps:C,getReferenceProps:k,isGroupPhase:_,opened:o,placement:p}}const dG={position:"top",refProp:"ref",withinPortal:!0,arrowSize:4,arrowOffset:5,arrowRadius:0,arrowPosition:"side",offset:5,transitionProps:{duration:100,transition:"fade"},events:{hover:!0,focus:!1,touch:!1},zIndex:Ew("popover"),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},BMe=(e,{radius:r,color:n,variant:o,autoContrast:i})=>{const a=e.variantColorResolver({theme:e,color:n||e.primaryColor,autoContrast:i,variant:o||"filled"});return{tooltip:{"--tooltip-radius":r===void 0?void 0:wn(r),"--tooltip-bg":n?a.background:void 0,"--tooltip-color":n?a.color:void 0}}},_n=ot((e,r)=>{const n=Me("Tooltip",dG,e),{children:o,position:i,refProp:a,label:l,openDelay:s,closeDelay:c,onPositionChange:d,opened:u,defaultOpened:p,withinPortal:f,radius:g,color:v,classNames:w,styles:x,unstyled:k,style:C,className:_,withArrow:$,arrowSize:R,arrowOffset:T,arrowRadius:A,arrowPosition:z,offset:j,transitionProps:I,multiline:P,events:L,zIndex:H,disabled:M,positionDependencies:V,onClick:B,onMouseEnter:F,onMouseLeave:q,inline:G,variant:U,keepMounted:Y,vars:K,portalProps:O,mod:W,floatingStrategy:Z,middlewares:Q,autoContrast:ie,attributes:te,target:re,...ue}=Me("Tooltip",dG,n),{dir:_e}=bd(),ce=S.useRef(null),pe=PMe({position:pW(_e,i),closeDelay:c,openDelay:s,onPositionChange:d,opened:u,defaultOpened:p,events:L,arrowRef:ce,arrowOffset:T,offset:typeof j=="number"?j+($?R/2:0):j,positionDependencies:[...V,re??o],inline:G,strategy:Z,middlewares:Q});S.useEffect(()=>{const Le=re instanceof HTMLElement?re:typeof re=="string"?document.querySelector(re):re?.current||null;Le&&pe.reference(Le)},[re,pe]);const xe=kt({name:"Tooltip",props:n,classes:S3,className:_,style:C,classNames:w,styles:x,unstyled:k,attributes:te,rootSelector:"tooltip",vars:K,varsResolver:BMe}),je=gd(o);if(!re&&!je)return null;if(re){const Le=sG(I,{duration:100,transition:"fade"});return y.jsx(y.Fragment,{children:y.jsx(Df,{...O,withinPortal:f,children:y.jsx(wd,{...Le,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:Le.duration,children:St=>y.jsxs(Se,{...ue,"data-fixed":Z==="fixed"||void 0,variant:U,mod:[{multiline:P},W],...pe.getFloatingProps({ref:pe.floating,className:xe("tooltip").className,style:{...xe("tooltip").style,...St,zIndex:H,top:pe.y??0,left:pe.x??0}}),children:[l,y.jsx(i3,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:R,arrowOffset:T,arrowRadius:A,arrowPosition:z,...xe("arrow")})]})})})})}const Be=je.props,Je=$r(pe.reference,Rw(je),r),st=sG(I,{duration:100,transition:"fade"});return y.jsxs(y.Fragment,{children:[y.jsx(Df,{...O,withinPortal:f,children:y.jsx(wd,{...st,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:st.duration,children:Le=>y.jsxs(Se,{...ue,"data-fixed":Z==="fixed"||void 0,variant:U,mod:[{multiline:P},W],...pe.getFloatingProps({ref:pe.floating,className:xe("tooltip").className,style:{...xe("tooltip").style,...Le,zIndex:H,top:pe.y??0,left:pe.x??0}}),children:[l,y.jsx(i3,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:R,arrowOffset:T,arrowRadius:A,arrowPosition:z,...xe("arrow")})]})})}),S.cloneElement(je,pe.getReferenceProps({onClick:B,onMouseEnter:F,onMouseLeave:q,onMouseMove:n.onMouseMove,onPointerDown:n.onPointerDown,onPointerEnter:n.onPointerEnter,...Be,className:el(_,Be.className),[a]:Je}))]})});_n.classes=S3,_n.displayName="@mantine/core/Tooltip",_n.Floating=OS,_n.Group=dp;var uG={root:"m_cf365364",indicator:"m_9e182ccd",label:"m_1738fcb2",input:"m_1714d588",control:"m_69686b9b",innerLabel:"m_78882f40"};const IMe={withItemsBorders:!0},OMe=(e,{radius:r,color:n,transitionDuration:o,size:i,transitionTimingFunction:a})=>({root:{"--sc-radius":r===void 0?void 0:wn(r),"--sc-color":n?Ci(n,e):void 0,"--sc-shadow":n?void 0:"var(--mantine-shadow-xs)","--sc-transition-duration":o===void 0?void 0:`${o}ms`,"--sc-transition-timing-function":a,"--sc-padding":dr(i,"sc-padding"),"--sc-font-size":Eo(i)}}),Of=ot((e,r)=>{const n=Me("SegmentedControl",IMe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,data:d,value:u,defaultValue:p,onChange:f,size:g,name:v,disabled:w,readOnly:x,fullWidth:k,orientation:C,radius:_,color:$,transitionDuration:R,transitionTimingFunction:T,variant:A,autoContrast:z,withItemsBorders:j,mod:I,attributes:P,...L}=n,H=kt({name:"SegmentedControl",props:n,classes:uG,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:OMe}),M=lo(),V=d.map(re=>typeof re=="string"?{label:re,value:re}:re),B=_ze(),[F,q]=S.useState(m9()),[G,U]=S.useState(null),[Y,K]=S.useState({}),O=(re,ue)=>{Y[ue]=re,K(Y)},[W,Z]=Ys({value:u,defaultValue:p,finalValue:Array.isArray(d)?V.find(re=>!re.disabled)?.value??d[0]?.value??null:null,onChange:f}),Q=oa(v),ie=V.map(re=>S.createElement(Se,{...H("control"),mod:{active:W===re.value,orientation:C},key:re.value},S.createElement("input",{...H("input"),disabled:w||re.disabled,type:"radio",name:Q,value:re.value,id:`${Q}-${re.value}`,checked:W===re.value,onChange:()=>!x&&Z(re.value),"data-focus-ring":M.focusRing,key:`${re.value}-input`}),S.createElement(Se,{component:"label",...H("label"),mod:{active:W===re.value&&!(w||re.disabled),disabled:w||re.disabled,"read-only":x},htmlFor:`${Q}-${re.value}`,ref:ue=>O(ue,re.value),__vars:{"--sc-label-color":$!==void 0?$9({color:$,theme:M,autoContrast:z}):void 0},key:`${re.value}-label`},y.jsx("span",{...H("innerLabel"),children:re.label})))),te=$r(r,re=>U(re));return hze(()=>{q(m9())},[d.length]),d.length===0?null:y.jsxs(Se,{...H("root"),variant:A,size:g,ref:te,mod:[{"full-width":k,orientation:C,initialized:B,"with-items-borders":j},I],...L,role:"radiogroup","data-disabled":w,children:[typeof W=="string"&&y.jsx(h3,{target:Y[W],parent:G,component:"span",transitionDuration:"var(--sc-transition-duration)",...H("indicator")},F),ie]})});Of.classes=uG,Of.displayName="@mantine/core/SegmentedControl";const[LMe,E3]=na("SliderProvider was not found in tree"),pG=S.forwardRef(({size:e,disabled:r,variant:n,color:o,thumbSize:i,radius:a,...l},s)=>{const{getStyles:c}=E3();return y.jsx(Se,{tabIndex:-1,variant:n,size:e,ref:s,...c("root"),...l})});pG.displayName="@mantine/core/SliderRoot";const hG=S.forwardRef(({max:e,min:r,value:n,position:o,label:i,dragging:a,onMouseDown:l,onKeyDownCapture:s,labelTransitionProps:c,labelAlwaysOn:d,thumbLabel:u,onFocus:p,onBlur:f,showLabelOnHover:g,isHovered:v,children:w=null,disabled:x},k)=>{const{getStyles:C}=E3(),[_,$]=S.useState(!1),R=d||a||_||g&&v;return y.jsxs(Se,{tabIndex:0,role:"slider","aria-label":u,"aria-valuemax":e,"aria-valuemin":r,"aria-valuenow":n,ref:k,__vars:{"--slider-thumb-offset":`${o}%`},...C("thumb",{focusable:!0}),mod:{dragging:a,disabled:x},onFocus:T=>{$(!0),typeof p=="function"&&p(T)},onBlur:T=>{$(!1),typeof f=="function"&&f(T)},onTouchStart:l,onMouseDown:l,onKeyDownCapture:s,onClick:T=>T.stopPropagation(),children:[w,y.jsx(wd,{mounted:i!=null&&!!R,transition:"fade",duration:0,...c,children:T=>y.jsx("div",{...C("label",{style:T}),children:i})})]})});hG.displayName="@mantine/core/SliderThumb";function fG({value:e,min:r,max:n}){const o=(e-r)/(n-r)*100;return Math.min(Math.max(o,0),100)}function FMe({mark:e,offset:r,value:n,inverted:o=!1}){return o?typeof r=="number"&&e.value<=r||e.value>=n:typeof r=="number"?e.value>=r&&e.value<=n:e.value<=n}function mG({marks:e,min:r,max:n,disabled:o,value:i,offset:a,inverted:l}){const{getStyles:s}=E3();if(!e)return null;const c=e.map((d,u)=>S.createElement(Se,{...s("markWrapper"),__vars:{"--mark-offset":`${fG({value:d.value,min:r,max:n})}%`},key:u},y.jsx(Se,{...s("mark"),mod:{filled:FMe({mark:d,value:i,offset:a,inverted:l}),disabled:o}}),d.label&&y.jsx("div",{...s("markLabel"),children:d.label})));return y.jsx("div",{children:c})}mG.displayName="@mantine/core/SliderMarks";function gG({filled:e,children:r,offset:n,disabled:o,marksOffset:i,inverted:a,containerProps:l,...s}){const{getStyles:c}=E3();return y.jsx(Se,{...c("trackContainer"),mod:{disabled:o},...l,children:y.jsxs(Se,{...c("track"),mod:{inverted:a,disabled:o},children:[y.jsx(Se,{mod:{inverted:a,disabled:o},__vars:{"--slider-bar-width":`calc(${e}% + 2 * var(--slider-size))`,"--slider-bar-offset":`calc(${n}% - var(--slider-size))`},...c("bar")}),r,y.jsx(mG,{...s,offset:i,disabled:o,inverted:a})]})})}gG.displayName="@mantine/core/SliderTrack";function VMe({value:e,containerWidth:r,min:n,max:o,step:i,precision:a}){const l=(r?Math.min(Math.max(e,0),r)/r:e)*(o-n),s=(l!==0?Math.round(l/i)*i:0)+n,c=Math.max(s,n);return a!==void 0?Number(c.toFixed(a)):c}function C3(e,r){return parseFloat(e.toFixed(r))}function qMe(e){if(!e)return 0;const r=e.toString().split(".");return r.length>1?r[1].length:0}function LS(e,r){const n=[...r].sort((o,i)=>o.value-i.value).find(o=>o.value>e);return n?n.value:e}function FS(e,r){const n=[...r].sort((o,i)=>i.value-o.value).find(o=>o.valuen.value-o.value);return r.length>0?r[0].value:0}function vG(e){const r=[...e].sort((n,o)=>n.value-o.value);return r.length>0?r[r.length-1].value:100}var bG={root:"m_dd36362e",label:"m_c9357328",thumb:"m_c9a9a60a",trackContainer:"m_a8645c2",track:"m_c9ade57f",bar:"m_38aeed47",markWrapper:"m_b7b0423a",mark:"m_dd33bc19",markLabel:"m_68c77a5b"};const HMe={radius:"xl",min:0,max:100,step:1,marks:[],label:e=>e,labelTransitionProps:{transition:"fade",duration:0},thumbLabel:"",showLabelOnHover:!0,scale:e=>e,size:"md"},UMe=(e,{size:r,color:n,thumbSize:o,radius:i})=>({root:{"--slider-size":dr(r,"slider-size"),"--slider-color":n?Ci(n,e):void 0,"--slider-radius":i===void 0?void 0:wn(i),"--slider-thumb-size":o!==void 0?$e(o):"calc(var(--slider-size) * 2)"}}),VS=ot((e,r)=>{const n=Me("Slider",HMe,e),{classNames:o,styles:i,value:a,onChange:l,onChangeEnd:s,size:c,min:d,max:u,domain:p,step:f,precision:g,defaultValue:v,name:w,marks:x,label:k,labelTransitionProps:C,labelAlwaysOn:_,thumbLabel:$,showLabelOnHover:R,thumbChildren:T,disabled:A,unstyled:z,scale:j,inverted:I,className:P,style:L,vars:H,hiddenInputProps:M,restrictToMarks:V,thumbProps:B,attributes:F,...q}=n,G=kt({name:"Slider",props:n,classes:bG,classNames:o,className:P,styles:i,style:L,attributes:F,vars:H,varsResolver:UMe,unstyled:z}),{dir:U}=bd(),[Y,K]=S.useState(!1),[O,W]=Ys({value:typeof a=="number"?hd(a,d,u):a,defaultValue:typeof v=="number"?hd(v,d,u):v,finalValue:hd(0,d,u),onChange:l}),Z=S.useRef(O),Q=S.useRef(s);S.useEffect(()=>{Q.current=s},[s]);const ie=S.useRef(null),te=S.useRef(null),[re,ue]=p||[d,u],_e=fG({value:O,min:re,max:ue}),ce=j(O),pe=typeof k=="function"?k(ce):k,xe=g??qMe(f),je=S.useCallback(({x:Ve})=>{if(!A){const qe=VMe({value:Ve,min:re,max:ue,step:f,precision:xe}),Xe=hd(qe,d,u);W(V&&x?.length?TH(Xe,x.map(It=>It.value)):Xe),Z.current=Xe}},[A,d,u,re,ue,f,xe,W,x,V]),Be=S.useCallback(()=>{if(!A&&Q.current){const Ve=V&&x?.length?TH(Z.current,x.map(qe=>qe.value)):Z.current;Q.current(Ve)}},[A,x,V]),{ref:Je,active:st}=kH(je,{onScrubEnd:Be},U),Le=S.useCallback(Ve=>{!A&&Q.current&&Q.current(Ve)},[A]),St=Ve=>{if(!A)switch(Ve.key){case"ArrowUp":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=LS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(O+f,d),u),xe);W(qe),Le(qe);break}case"ArrowRight":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?FS(O,x):LS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(U==="rtl"?O-f:O+f,d),u),xe);W(qe),Le(qe);break}case"ArrowDown":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=FS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(O-f,d),u),xe);W(qe),Le(qe);break}case"ArrowLeft":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?LS(O,x):FS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(U==="rtl"?O+f:O-f,d),u),xe);W(qe),Le(qe);break}case"Home":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(yG(x)),Le(yG(x));break}W(d),Le(d);break}case"End":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(vG(x)),Le(vG(x));break}W(u),Le(u);break}}};return y.jsx(LMe,{value:{getStyles:G},children:y.jsxs(pG,{...q,ref:$r(r,ie),onKeyDownCapture:St,onMouseDownCapture:()=>ie.current?.focus(),size:c,disabled:A,children:[y.jsx(gG,{inverted:I,offset:0,filled:_e,marks:x,min:re,max:ue,value:ce,disabled:A,containerProps:{ref:Je,onMouseEnter:R?()=>K(!0):void 0,onMouseLeave:R?()=>K(!1):void 0},children:y.jsx(hG,{max:ue,min:re,value:ce,position:_e,dragging:st,label:pe,ref:te,labelTransitionProps:C,labelAlwaysOn:_,thumbLabel:$,showLabelOnHover:R,isHovered:Y,disabled:A,...B,children:T})}),y.jsx("input",{type:"hidden",name:w,value:ce,...M})]})})});VS.classes=bG,VS.displayName="@mantine/core/Slider";const qS=ot((e,r)=>{const{w:n,h:o,miw:i,mih:a,...l}=Me("Space",null,e);return y.jsx(Se,{ref:r,...l,w:n,miw:i??n,h:o,mih:a??o})});qS.displayName="@mantine/core/Space";var xG={root:"m_6d731127"};const WMe={gap:"md",align:"stretch",justify:"flex-start"},GMe=(e,{gap:r,align:n,justify:o})=>({root:{"--stack-gap":Gs(r),"--stack-align":n,"--stack-justify":o}}),Lo=ot((e,r)=>{const n=Me("Stack",WMe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,align:d,justify:u,gap:p,variant:f,attributes:g,...v}=n,w=kt({name:"Stack",props:n,classes:xG,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:GMe});return y.jsx(Se,{ref:r,...w("root"),variant:f,...v})});Lo.classes=xG,Lo.displayName="@mantine/core/Stack";const[YMe,HS]=na("Tabs component was not found in the tree");var wy={root:"m_89d60db1","list--default":"m_576c9d4",list:"m_89d33d6d",tab:"m_4ec4dce6",panel:"m_b0c91715",tabSection:"m_fc420b1f",tabLabel:"m_42bbd1ae","tab--default":"m_539e827b","list--outline":"m_6772fbd5","tab--outline":"m_b59ab47c","tab--pills":"m_c3381914"};const ky=ot((e,r)=>{const n=Me("TabsList",null,e),{children:o,className:i,grow:a,justify:l,classNames:s,styles:c,style:d,mod:u,...p}=n,f=HS();return y.jsx(Se,{...p,...f.getStyles("list",{className:i,style:d,classNames:s,styles:c,props:n,variant:f.variant}),ref:r,role:"tablist",variant:f.variant,mod:[{grow:a,orientation:f.orientation,placement:f.orientation==="vertical"&&f.placement,inverted:f.inverted},u],"aria-orientation":f.orientation,__vars:{"--tabs-justify":l},children:o})});ky.classes=wy,ky.displayName="@mantine/core/TabsList";const rc=ot((e,r)=>{const n=Me("TabsPanel",null,e),{children:o,className:i,value:a,classNames:l,styles:s,style:c,mod:d,keepMounted:u,...p}=n,f=HS(),g=f.value===a,v=f.keepMounted||u||g?o:null;return y.jsx(Se,{...f.getStyles("panel",{className:i,classNames:l,styles:s,style:[c,g?void 0:{display:"none"}],props:n}),ref:r,mod:[{orientation:f.orientation},d],role:"tabpanel",id:f.getPanelId(a),"aria-labelledby":f.getTabId(a),...p,children:v})});rc.classes=wy,rc.displayName="@mantine/core/TabsPanel";const Lf=ot((e,r)=>{const n=Me("TabsTab",null,e),{className:o,children:i,rightSection:a,leftSection:l,value:s,onClick:c,onKeyDown:d,disabled:u,color:p,style:f,classNames:g,styles:v,vars:w,mod:x,tabIndex:k,...C}=n,_=lo(),{dir:$}=bd(),R=HS(),T=s===R.value,A=j=>{R.onChange(R.allowTabDeactivation&&s===R.value?null:s),c?.(j)},z={classNames:g,styles:v,props:n};return y.jsxs(pr,{...R.getStyles("tab",{className:o,style:f,variant:R.variant,...z}),disabled:u,unstyled:R.unstyled,variant:R.variant,mod:[{active:T,disabled:u,orientation:R.orientation,inverted:R.inverted,placement:R.orientation==="vertical"&&R.placement},x],ref:r,role:"tab",id:R.getTabId(s),"aria-selected":T,tabIndex:k!==void 0?k:T||R.value===null?0:-1,"aria-controls":R.getPanelId(s),onClick:A,__vars:{"--tabs-color":p?Ci(p,_):void 0},onKeyDown:iy({siblingSelector:'[role="tab"]',parentSelector:'[role="tablist"]',activateOnFocus:R.activateTabWithKeyboard,loop:R.loop,orientation:R.orientation||"horizontal",dir:$,onKeyDown:d}),...C,children:[l&&y.jsx("span",{...R.getStyles("tabSection",z),"data-position":"left",children:l}),i&&y.jsx("span",{...R.getStyles("tabLabel",z),children:i}),a&&y.jsx("span",{...R.getStyles("tabSection",z),"data-position":"right",children:a})]})});Lf.classes=wy,Lf.displayName="@mantine/core/TabsTab";const wG="Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value",XMe={keepMounted:!0,orientation:"horizontal",loop:!0,activateTabWithKeyboard:!0,variant:"default",placement:"left"},KMe=(e,{radius:r,color:n,autoContrast:o})=>({root:{"--tabs-radius":wn(r),"--tabs-color":Ci(n,e),"--tabs-text-color":fTe(o,e)?$9({color:n,theme:e,autoContrast:o}):void 0}}),up=ot((e,r)=>{const n=Me("Tabs",XMe,e),{defaultValue:o,value:i,onChange:a,orientation:l,children:s,loop:c,id:d,activateTabWithKeyboard:u,allowTabDeactivation:p,variant:f,color:g,radius:v,inverted:w,placement:x,keepMounted:k,classNames:C,styles:_,unstyled:$,className:R,style:T,vars:A,autoContrast:z,mod:j,attributes:I,...P}=n,L=oa(d),[H,M]=Ys({value:i,defaultValue:o,finalValue:null,onChange:a}),V=kt({name:"Tabs",props:n,classes:wy,className:R,style:T,classNames:C,styles:_,unstyled:$,attributes:I,vars:A,varsResolver:KMe});return y.jsx(YMe,{value:{placement:x,value:H,orientation:l,id:L,loop:c,activateTabWithKeyboard:u,getTabId:cH(`${L}-tab`,wG),getPanelId:cH(`${L}-panel`,wG),onChange:M,allowTabDeactivation:p,variant:f,color:g,radius:v,inverted:w,keepMounted:k,unstyled:$,getStyles:V},children:y.jsx(Se,{ref:r,id:L,variant:f,mod:[{orientation:l,inverted:l==="horizontal"&&w,placement:l==="vertical"&&x},j],...V("root"),...P,children:s})})});up.classes=wy,up.displayName="@mantine/core/Tabs",up.Tab=Lf,up.Panel=rc,up.List=ky;var kG={root:"m_7341320d"};const ZMe=(e,{size:r,radius:n,variant:o,gradient:i,color:a,autoContrast:l})=>{const s=e.variantColorResolver({color:a||e.primaryColor,theme:e,gradient:i,variant:o||"filled",autoContrast:l});return{root:{"--ti-size":dr(r,"ti-size"),"--ti-radius":n===void 0?void 0:wn(n),"--ti-bg":a||o?s.background:void 0,"--ti-color":a||o?s.color:void 0,"--ti-bd":a||o?s.border:void 0}}},Ti=ot((e,r)=>{const n=Me("ThemeIcon",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,autoContrast:d,attributes:u,...p}=n,f=kt({name:"ThemeIcon",classes:kG,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:u,vars:c,varsResolver:ZMe});return y.jsx(Se,{ref:r,...f("root"),...p})});Ti.classes=kG,Ti.displayName="@mantine/core/ThemeIcon";const QMe=["h1","h2","h3","h4","h5","h6"],JMe=["xs","sm","md","lg","xl"];function eNe(e,r){const n=r!==void 0?r:`h${e}`;return QMe.includes(n)?{fontSize:`var(--mantine-${n}-font-size)`,fontWeight:`var(--mantine-${n}-font-weight)`,lineHeight:`var(--mantine-${n}-line-height)`}:JMe.includes(n)?{fontSize:`var(--mantine-font-size-${n})`,fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}:{fontSize:$e(n),fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}}var _G={root:"m_8a5d1357"};const tNe={order:1},rNe=(e,{order:r,size:n,lineClamp:o,textWrap:i})=>{const a=eNe(r||1,n);return{root:{"--title-fw":a.fontWeight,"--title-lh":a.lineHeight,"--title-fz":a.fontSize,"--title-line-clamp":typeof o=="number"?o.toString():void 0,"--title-text-wrap":i}}},pp=ot((e,r)=>{const n=Me("Title",tNe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,order:c,vars:d,size:u,variant:p,lineClamp:f,textWrap:g,mod:v,attributes:w,...x}=n,k=kt({name:"Title",props:n,classes:_G,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:w,vars:d,varsResolver:rNe});return[1,2,3,4,5,6].includes(c)?y.jsx(Se,{...k("root"),component:`h${c}`,variant:p,ref:r,mod:[{order:c,"data-line-clamp":typeof f=="number"},v],size:u,...x}):null});pp.classes=_G,pp.displayName="@mantine/core/Title";function SG(e,r,n){if(!e||!r)return[];const o=n.indexOf(e),i=n.indexOf(r),a=Math.min(o,i),l=Math.max(o,i);return n.slice(a,l+1)}function US({node:e,getStyles:r,rootIndex:n,controller:o,expandOnClick:i,selectOnClick:a,isSubtree:l,level:s=1,renderNode:c,flatValues:d,allowRangeSelection:u,expandOnSpace:p,checkOnSpace:f}){const g=S.useRef(null),v=(e.children||[]).map(_=>y.jsx(US,{node:_,flatValues:d,getStyles:r,rootIndex:void 0,level:s+1,controller:o,expandOnClick:i,isSubtree:!0,renderNode:c,selectOnClick:a,allowRangeSelection:u,expandOnSpace:p,checkOnSpace:f},_.value)),w=_=>{if(_.nativeEvent.code==="ArrowRight"&&(_.stopPropagation(),_.preventDefault(),o.expandedState[e.value]?_.currentTarget.querySelector("[role=treeitem]")?.focus():o.expand(e.value)),_.nativeEvent.code==="ArrowLeft"&&(_.stopPropagation(),_.preventDefault(),o.expandedState[e.value]&&(e.children||[]).length>0?o.collapse(e.value):l&&vf(_.currentTarget,"[role=treeitem]")?.focus()),_.nativeEvent.code==="ArrowDown"||_.nativeEvent.code==="ArrowUp"){const $=vf(_.currentTarget,"[data-tree-root]");if(!$)return;_.stopPropagation(),_.preventDefault();const R=Array.from($.querySelectorAll("[role=treeitem]")),T=R.indexOf(_.currentTarget);if(T===-1)return;const A=_.nativeEvent.code==="ArrowDown"?T+1:T-1;if(R[A]?.focus(),_.shiftKey){const z=R[A];z&&o.setSelectedState(SG(o.anchorNode,z.dataset.value,d))}}_.nativeEvent.code==="Space"&&(p&&(_.stopPropagation(),_.preventDefault(),o.toggleExpanded(e.value)),f&&(_.stopPropagation(),_.preventDefault(),o.isNodeChecked(e.value)?o.uncheckNode(e.value):o.checkNode(e.value)))},x=_=>{_.stopPropagation(),u&&_.shiftKey&&o.anchorNode?(o.setSelectedState(SG(o.anchorNode,e.value,d)),g.current?.focus()):(i&&o.toggleExpanded(e.value),a&&o.select(e.value),g.current?.focus())},k=o.selectedState.includes(e.value),C={...r("label"),onClick:x,"data-selected":k||void 0,"data-value":e.value,"data-hovered":o.hoveredNode===e.value||void 0};return y.jsxs("li",{...r("node",{style:{"--label-offset":`calc(var(--level-offset) * ${s-1})`}}),role:"treeitem","aria-selected":k,"data-value":e.value,"data-selected":k||void 0,"data-hovered":o.hoveredNode===e.value||void 0,"data-level":s,tabIndex:n===0?0:-1,onKeyDown:w,ref:g,onMouseOver:_=>{_.stopPropagation(),o.setHoveredNode(e.value)},onMouseLeave:_=>{_.stopPropagation(),o.setHoveredNode(null)},children:[typeof c=="function"?c({node:e,level:s,selected:k,tree:o,expanded:o.expandedState[e.value]||!1,hasChildren:Array.isArray(e.children)&&e.children.length>0,elementProps:C}):y.jsx("div",{...C,children:e.label}),o.expandedState[e.value]&&v.length>0&&y.jsx(Se,{component:"ul",role:"group",...r("subtree"),"data-level":s,children:v})]})}US.displayName="@mantine/core/TreeNode";function $3(e,r,n=[]){const o=[];for(const i of e)if(Array.isArray(i.children)&&i.children.length>0){const a=$3(i.children,r,n);if(a.currentTreeChecked.length===i.children.length){const l=a.currentTreeChecked.every(c=>c.checked),s={checked:l,indeterminate:!l,value:i.value,hasChildren:!0};o.push(s),n.push(s)}else if(a.currentTreeChecked.length>0){const l={checked:!1,indeterminate:!0,value:i.value,hasChildren:!0};o.push(l),n.push(l)}}else if(r.includes(i.value)){const a={checked:!0,indeterminate:!1,value:i.value,hasChildren:!1};o.push(a),n.push(a)}return{result:n,currentTreeChecked:o}}function EG(e,r){for(const n of r){if(n.value===e)return n;if(Array.isArray(n.children)){const o=EG(e,n.children);if(o)return o}}return null}function R3(e,r,n=[]){const o=EG(e,r);return o?!Array.isArray(o.children)||o.children.length===0?[o.value]:(o.children.forEach(i=>{Array.isArray(i.children)&&i.children.length>0?R3(i.value,r,n):n.push(i.value)}),n):n}function CG(e){return e.reduce((r,n)=>(Array.isArray(n.children)&&n.children.length>0?r.push(...CG(n.children)):r.push(n.value),r),[])}function nNe(e,r,n){return n.length===0?!1:n.includes(e)?!0:$3(r,n).result.some(o=>o.value===e&&o.checked)}const oNe=zH(nNe);function iNe(e,r,n){return n.length===0?!1:$3(r,n).result.some(o=>o.value===e&&o.indeterminate)}const aNe=zH(iNe);function $G(e,r,n,o={}){return r.forEach(i=>{o[i.value]=i.value in e?e[i.value]:i.value===n,Array.isArray(i.children)&&$G(e,i.children,n,o)}),o}function lNe(e,r){const n=[];return e.forEach(o=>n.push(...R3(o,r))),Array.from(new Set(n))}function _y({initialSelectedState:e=[],initialCheckedState:r=[],initialExpandedState:n={},multiple:o=!1,onNodeCollapse:i,onNodeExpand:a}={}){const[l,s]=S.useState([]),[c,d]=S.useState(n),[u,p]=S.useState(e),[f,g]=S.useState(r),[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(B=>{d(F=>$G(F,B,u)),g(F=>lNe(F,B)),s(B)},[u,f]),_=S.useCallback(B=>{d(F=>{const q={...F,[B]:!F[B]};return q[B]?a?.(B):i?.(B),q})},[i,a]),$=S.useCallback(B=>{d(F=>(F[B]!==!1&&i?.(B),{...F,[B]:!1}))},[i]),R=S.useCallback(B=>{d(F=>(F[B]!==!0&&a?.(B),{...F,[B]:!0}))},[a]),T=S.useCallback(()=>{d(B=>{const F={...B};return Object.keys(F).forEach(q=>{F[q]=!0}),F})},[]),A=S.useCallback(()=>{d(B=>{const F={...B};return Object.keys(F).forEach(q=>{F[q]=!1}),F})},[]),z=S.useCallback(B=>p(F=>o?F.includes(B)?(w(null),F.filter(q=>q!==B)):(w(B),[...F,B]):F.includes(B)?(w(null),[]):(w(B),[B])),[]),j=S.useCallback(B=>{w(B),p(F=>o?F.includes(B)?F:[...F,B]:[B])},[]),I=S.useCallback(B=>{v===B&&w(null),p(F=>F.filter(q=>q!==B))},[]),P=S.useCallback(()=>{p([]),w(null)},[]),L=S.useCallback(B=>{const F=R3(B,l);g(q=>Array.from(new Set([...q,...F])))},[l]),H=S.useCallback(B=>{const F=R3(B,l);g(q=>q.filter(G=>!F.includes(G)))},[l]),M=S.useCallback(()=>{g(()=>CG(l))},[l]),V=S.useCallback(()=>{g([])},[]);return{multiple:o,expandedState:c,selectedState:u,checkedState:f,anchorNode:v,initialize:C,toggleExpanded:_,collapse:$,expand:R,expandAllNodes:T,collapseAllNodes:A,setExpandedState:d,checkNode:L,uncheckNode:H,checkAllNodes:M,uncheckAllNodes:V,setCheckedState:g,toggleSelected:z,select:j,deselect:I,clearSelected:P,setSelectedState:p,hoveredNode:x,setHoveredNode:k,getCheckedNodes:()=>$3(l,f).result,isNodeChecked:B=>oNe(B,l,f),isNodeIndeterminate:B=>aNe(B,l,f)}}var RG={root:"m_f698e191",subtree:"m_75f3ecf",node:"m_f6970eb1",label:"m_dc283425"};function zG(e){return e.reduce((r,n)=>(r.push(n.value),n.children&&r.push(...zG(n.children)),r),[])}const sNe={expandOnClick:!0,allowRangeSelection:!0,expandOnSpace:!0},cNe=(e,{levelOffset:r})=>({root:{"--level-offset":Gs(r)}}),Ff=ot((e,r)=>{const n=Me("Tree",sNe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,data:d,expandOnClick:u,tree:p,renderNode:f,selectOnClick:g,clearSelectionOnOutsideClick:v,allowRangeSelection:w,expandOnSpace:x,levelOffset:k,checkOnSpace:C,attributes:_,...$}=n,R=_y(),T=p||R,A=kt({name:"Tree",classes:RG,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:cNe}),z=hH(()=>v&&T.clearSelected()),j=$r(r,z),I=S.useMemo(()=>zG(d),[d]);S.useEffect(()=>{T.initialize(d)},[d]);const P=d.map((L,H)=>y.jsx(US,{node:L,getStyles:A,rootIndex:H,expandOnClick:u,selectOnClick:g,controller:T,renderNode:f,flatValues:I,allowRangeSelection:w,expandOnSpace:x,checkOnSpace:C},L.value));return y.jsx(Se,{component:"ul",ref:j,...A("root"),...$,role:"tree","aria-multiselectable":T.multiple,"data-tree-root":!0,children:P})});Ff.displayName="@mantine/core/Tree",Ff.classes=RG;const WS=S.createContext(null);function TG(){const e=S.useContext(WS);if(!e)throw new Error("useRootContainer must be used within a RootContainer");return e}function dNe(){return TG().ref}function uNe(){return TG().ref.current}const jG=S.createContext(null);function pNe(){const e=S.useContext(jG);return e===null&&console.warn("ReduceGraphicsMode is not provided"),e??!1}const[hNe,fNe]=na("PanningAtomSafeCtx is not provided");function mNe({id:e,className:r,reduceGraphics:n=!1,children:o}){const[i,a]=S.useState(!1),l=S.useRef(null),s=S.useRef(null);s.current||(s.current=Q$e(!1)),f7(()=>{a(!0)},[]),S.useEffect(()=>s.current?.subscribe(d=>{l.current?.setAttribute("data-likec4-diagram-panning",d?"true":"false")}),[]);const c=S.useMemo(()=>({id:e,ref:l}),[e,l]);return y.jsx(hNe,{value:s.current,children:y.jsx(jG.Provider,{value:n,children:y.jsx("div",{id:e,className:Ge("likec4-root",r),ref:l,...n&&{"data-likec4-reduced-graphics":!0},children:i&&!!c.ref.current&&y.jsx(WS.Provider,{value:c,children:o})})})})}const Sy=S.createContext(null),GS=S.createContext(null);function gNe(){return S.useContext(Sy)}function Fo(){const e=S.useContext(Sy);if(!e)throw new Error("LikeC4Model not found. Make sure you have LikeC4ModelProvider.");return e}function yNe(){const e=Fo(),[r,n]=S.useState(e.$data.specification);return S.useEffect(()=>{n(o=>tt(o,e.$data.specification)?o:e.$data.specification)},[e]),r}const AG=S.createContext({}),vNe=Cke,bNe=e=>{const r=e.color;if(GO(e))return` +${d}`}function $9({color:e,theme:r,autoContrast:n}){return(typeof n=="boolean"?n:r.autoContrast)&&vd({color:e||r.primaryColor,theme:r}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function IH(e,r){return $9({color:e.colors[e.primaryColor][ly(e,r)],theme:e,autoContrast:null})}function Mw({theme:e,color:r,colorScheme:n,name:o=r,withColorValues:i=!0}){if(!e.colors[r])return{};if(n==="light"){const s=ly(e,"light"),c={[`--mantine-color-${o}-text`]:`var(--mantine-color-${o}-filled)`,[`--mantine-color-${o}-filled`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-filled-hover`]:`var(--mantine-color-${o}-${s===9?8:s+1})`,[`--mantine-color-${o}-light`]:_f(e.colors[r][s],.1),[`--mantine-color-${o}-light-hover`]:_f(e.colors[r][s],.12),[`--mantine-color-${o}-light-color`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-outline`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-outline-hover`]:_f(e.colors[r][s],.05)};return i?{[`--mantine-color-${o}-0`]:e.colors[r][0],[`--mantine-color-${o}-1`]:e.colors[r][1],[`--mantine-color-${o}-2`]:e.colors[r][2],[`--mantine-color-${o}-3`]:e.colors[r][3],[`--mantine-color-${o}-4`]:e.colors[r][4],[`--mantine-color-${o}-5`]:e.colors[r][5],[`--mantine-color-${o}-6`]:e.colors[r][6],[`--mantine-color-${o}-7`]:e.colors[r][7],[`--mantine-color-${o}-8`]:e.colors[r][8],[`--mantine-color-${o}-9`]:e.colors[r][9],...c}:c}const a=ly(e,"dark"),l={[`--mantine-color-${o}-text`]:`var(--mantine-color-${o}-4)`,[`--mantine-color-${o}-filled`]:`var(--mantine-color-${o}-${a})`,[`--mantine-color-${o}-filled-hover`]:`var(--mantine-color-${o}-${a===9?8:a+1})`,[`--mantine-color-${o}-light`]:_f(e.colors[r][Math.max(0,a-2)],.15),[`--mantine-color-${o}-light-hover`]:_f(e.colors[r][Math.max(0,a-2)],.2),[`--mantine-color-${o}-light-color`]:`var(--mantine-color-${o}-${Math.max(a-5,0)})`,[`--mantine-color-${o}-outline`]:`var(--mantine-color-${o}-${Math.max(a-4,0)})`,[`--mantine-color-${o}-outline-hover`]:_f(e.colors[r][Math.max(a-4,0)],.05)};return i?{[`--mantine-color-${o}-0`]:e.colors[r][0],[`--mantine-color-${o}-1`]:e.colors[r][1],[`--mantine-color-${o}-2`]:e.colors[r][2],[`--mantine-color-${o}-3`]:e.colors[r][3],[`--mantine-color-${o}-4`]:e.colors[r][4],[`--mantine-color-${o}-5`]:e.colors[r][5],[`--mantine-color-${o}-6`]:e.colors[r][6],[`--mantine-color-${o}-7`]:e.colors[r][7],[`--mantine-color-${o}-8`]:e.colors[r][8],[`--mantine-color-${o}-9`]:e.colors[r][9],...l}:l}function Yze(e){return!!e&&typeof e=="object"&&"mantine-virtual-color"in e}function Sf(e,r,n){So(r).forEach(o=>Object.assign(e,{[`--mantine-${n}-${o}`]:r[o]}))}const OH=e=>{const r=ly(e,"light"),n=e.defaultRadius in e.radius?e.radius[e.defaultRadius]:$e(e.defaultRadius),o={variables:{"--mantine-z-index-app":"100","--mantine-z-index-modal":"200","--mantine-z-index-popover":"300","--mantine-z-index-overlay":"400","--mantine-z-index-max":"9999","--mantine-scale":e.scale.toString(),"--mantine-cursor-type":e.cursorType,"--mantine-webkit-font-smoothing":e.fontSmoothing?"antialiased":"unset","--mantine-moz-font-smoothing":e.fontSmoothing?"grayscale":"unset","--mantine-color-white":e.white,"--mantine-color-black":e.black,"--mantine-line-height":e.lineHeights.md,"--mantine-font-family":e.fontFamily,"--mantine-font-family-monospace":e.fontFamilyMonospace,"--mantine-font-family-headings":e.headings.fontFamily,"--mantine-heading-font-weight":e.headings.fontWeight,"--mantine-heading-text-wrap":e.headings.textWrap,"--mantine-radius-default":n,"--mantine-primary-color-filled":`var(--mantine-color-${e.primaryColor}-filled)`,"--mantine-primary-color-filled-hover":`var(--mantine-color-${e.primaryColor}-filled-hover)`,"--mantine-primary-color-light":`var(--mantine-color-${e.primaryColor}-light)`,"--mantine-primary-color-light-hover":`var(--mantine-color-${e.primaryColor}-light-hover)`,"--mantine-primary-color-light-color":`var(--mantine-color-${e.primaryColor}-light-color)`},light:{"--mantine-color-scheme":"light","--mantine-primary-color-contrast":IH(e,"light"),"--mantine-color-bright":"var(--mantine-color-black)","--mantine-color-text":e.black,"--mantine-color-body":e.white,"--mantine-color-error":"var(--mantine-color-red-6)","--mantine-color-placeholder":"var(--mantine-color-gray-5)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-${r})`,"--mantine-color-default":"var(--mantine-color-white)","--mantine-color-default-hover":"var(--mantine-color-gray-0)","--mantine-color-default-color":"var(--mantine-color-black)","--mantine-color-default-border":"var(--mantine-color-gray-4)","--mantine-color-dimmed":"var(--mantine-color-gray-6)","--mantine-color-disabled":"var(--mantine-color-gray-2)","--mantine-color-disabled-color":"var(--mantine-color-gray-5)","--mantine-color-disabled-border":"var(--mantine-color-gray-3)"},dark:{"--mantine-color-scheme":"dark","--mantine-primary-color-contrast":IH(e,"dark"),"--mantine-color-bright":"var(--mantine-color-white)","--mantine-color-text":"var(--mantine-color-dark-0)","--mantine-color-body":"var(--mantine-color-dark-7)","--mantine-color-error":"var(--mantine-color-red-8)","--mantine-color-placeholder":"var(--mantine-color-dark-3)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-4)`,"--mantine-color-default":"var(--mantine-color-dark-6)","--mantine-color-default-hover":"var(--mantine-color-dark-5)","--mantine-color-default-color":"var(--mantine-color-white)","--mantine-color-default-border":"var(--mantine-color-dark-4)","--mantine-color-dimmed":"var(--mantine-color-dark-2)","--mantine-color-disabled":"var(--mantine-color-dark-6)","--mantine-color-disabled-color":"var(--mantine-color-dark-3)","--mantine-color-disabled-border":"var(--mantine-color-dark-4)"}};Sf(o.variables,e.breakpoints,"breakpoint"),Sf(o.variables,e.spacing,"spacing"),Sf(o.variables,e.fontSizes,"font-size"),Sf(o.variables,e.lineHeights,"line-height"),Sf(o.variables,e.shadows,"shadow"),Sf(o.variables,e.radius,"radius"),e.colors[e.primaryColor].forEach((a,l)=>{o.variables[`--mantine-primary-color-${l}`]=`var(--mantine-color-${e.primaryColor}-${l})`}),So(e.colors).forEach(a=>{const l=e.colors[a];if(Yze(l)){Object.assign(o.light,Mw({theme:e,name:l.name,color:l.light,colorScheme:"light",withColorValues:!0})),Object.assign(o.dark,Mw({theme:e,name:l.name,color:l.dark,colorScheme:"dark",withColorValues:!0}));return}l.forEach((s,c)=>{o.variables[`--mantine-color-${a}-${c}`]=s}),Object.assign(o.light,Mw({theme:e,color:a,colorScheme:"light",withColorValues:!1})),Object.assign(o.dark,Mw({theme:e,color:a,colorScheme:"dark",withColorValues:!1}))});const i=e.headings.sizes;return So(i).forEach(a=>{o.variables[`--mantine-${a}-font-size`]=i[a].fontSize,o.variables[`--mantine-${a}-line-height`]=i[a].lineHeight,o.variables[`--mantine-${a}-font-weight`]=i[a].fontWeight||e.headings.fontWeight}),o};function Xze({theme:e,generator:r}){const n=OH(e),o=r?.(e);return o?h9(n,o):n}const R9=OH(_9);function Kze(e){const r={variables:{},light:{},dark:{}};return So(e.variables).forEach(n=>{R9.variables[n]!==e.variables[n]&&(r.variables[n]=e.variables[n])}),So(e.light).forEach(n=>{R9.light[n]!==e.light[n]&&(r.light[n]=e.light[n])}),So(e.dark).forEach(n=>{R9.dark[n]!==e.dark[n]&&(r.dark[n]=e.dark[n])}),r}function Zze(e){return BH({variables:{},dark:{"--mantine-color-scheme":"dark"},light:{"--mantine-color-scheme":"light"}},e)}function LH({cssVariablesSelector:e,deduplicateCssVariables:r}){const n=lo(),o=np(),i=zze(),a=Xze({theme:n,generator:i}),l=(e===void 0||e===":root"||e===":host")&&r,s=l?Kze(a):a,c=BH(s,e);return c?y.jsx("style",{"data-mantine-styles":!0,nonce:o?.(),dangerouslySetInnerHTML:{__html:`${c}${l?"":Zze(e)}`}}):null}LH.displayName="@mantine/CssVariables";function Ef(e,r){const n=typeof window<"u"&&"matchMedia"in window&&window.matchMedia("(prefers-color-scheme: dark)")?.matches,o=e!=="auto"?e:n?"dark":"light";r()?.setAttribute("data-mantine-color-scheme",o)}function Qze({manager:e,defaultColorScheme:r,getRootElement:n,forceColorScheme:o}){const i=S.useRef(null),[a,l]=S.useState(()=>e.get(r)),s=o||a,c=S.useCallback(u=>{o||(Ef(u,n),l(u),e.set(u))},[e.set,s,o]),d=S.useCallback(()=>{l(r),Ef(r,n),e.clear()},[e.clear,r]);return S.useEffect(()=>(e.subscribe(c),e.unsubscribe),[e.subscribe,e.unsubscribe]),xf(()=>{Ef(e.get(r),n)},[]),S.useEffect(()=>{if(o)return Ef(o,n),()=>{};o===void 0&&Ef(a,n),typeof window<"u"&&"matchMedia"in window&&(i.current=window.matchMedia("(prefers-color-scheme: dark)"));const u=p=>{a==="auto"&&Ef(p.matches?"dark":"light",n)};return i.current?.addEventListener("change",u),()=>i.current?.removeEventListener("change",u)},[a,o]),{colorScheme:s,setColorScheme:c,clearColorScheme:d}}function Jze({respectReducedMotion:e,getRootElement:r}){xf(()=>{e&&r()?.setAttribute("data-respect-reduced-motion","true")},[e])}function z9({theme:e,children:r,getStyleNonce:n,withStaticClasses:o=!0,withGlobalClasses:i=!0,deduplicateCssVariables:a=!0,withCssVariables:l=!0,cssVariablesSelector:s,classNamesPrefix:c="mantine",colorSchemeManager:d=qze(),defaultColorScheme:u="light",getRootElement:p=()=>document.documentElement,cssVariablesResolver:f,forceColorScheme:m,stylesTransform:v,env:w}){const{colorScheme:x,setColorScheme:k,clearColorScheme:C}=Qze({defaultColorScheme:u,forceColorScheme:m,manager:d,getRootElement:p});return Jze({respectReducedMotion:e?.respectReducedMotion||!1,getRootElement:p}),y.jsx(Aw.Provider,{value:{colorScheme:x,setColorScheme:k,clearColorScheme:C,getRootElement:p,classNamesPrefix:c,getStyleNonce:n,cssVariablesResolver:f,cssVariablesSelector:s??":root",withStaticClasses:o,stylesTransform:v,env:w},children:y.jsxs(NH,{theme:e,children:[l&&y.jsx(LH,{cssVariablesSelector:s,deduplicateCssVariables:a}),i&&y.jsx(Gze,{}),r]})})}z9.displayName="@mantine/core/MantineProvider";function T9({classNames:e,styles:r,props:n,stylesCtx:o}){const i=lo();return{resolvedClassNames:Tw({theme:i,classNames:e,props:n,stylesCtx:o||void 0}),resolvedStyles:jw({theme:i,styles:r,props:n,stylesCtx:o||void 0})}}const eTe={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function tTe({theme:e,options:r,unstyled:n}){return el(r?.focusable&&!n&&(e.focusClassName||eTe[e.focusRing]),r?.active&&!n&&e.activeClassName)}function rTe({selector:e,stylesCtx:r,options:n,props:o,theme:i}){return Tw({theme:i,classNames:n?.classNames,props:n?.props||o,stylesCtx:r})[e]}function FH({selector:e,stylesCtx:r,theme:n,classNames:o,props:i}){return Tw({theme:n,classNames:o,props:i,stylesCtx:r})[e]}function nTe({rootSelector:e,selector:r,className:n}){return e===r?n:void 0}function oTe({selector:e,classes:r,unstyled:n}){return n?void 0:r[e]}function iTe({themeName:e,classNamesPrefix:r,selector:n,withStaticClass:o}){return o===!1?[]:e.map(i=>`${r}-${i}-${n}`)}function aTe({themeName:e,theme:r,selector:n,props:o,stylesCtx:i}){return e.map(a=>Tw({theme:r,classNames:r.components[a]?.classNames,props:o,stylesCtx:i})?.[n])}function lTe({options:e,classes:r,selector:n,unstyled:o}){return e?.variant&&!o?r[`${n}--${e.variant}`]:void 0}function sTe({theme:e,options:r,themeName:n,selector:o,classNamesPrefix:i,classNames:a,classes:l,unstyled:s,className:c,rootSelector:d,props:u,stylesCtx:p,withStaticClasses:f,headless:m,transformedStyles:v}){return el(tTe({theme:e,options:r,unstyled:s||m}),aTe({theme:e,themeName:n,selector:o,props:u,stylesCtx:p}),lTe({options:r,classes:l,selector:o,unstyled:s}),FH({selector:o,stylesCtx:p,theme:e,classNames:a,props:u}),FH({selector:o,stylesCtx:p,theme:e,classNames:v,props:u}),rTe({selector:o,stylesCtx:p,options:r,props:u,theme:e}),nTe({rootSelector:d,selector:o,className:c}),oTe({selector:o,classes:l,unstyled:s||m}),f&&!m&&iTe({themeName:n,classNamesPrefix:i,selector:o,withStaticClass:r?.withStaticClass}),r?.className)}function cTe({theme:e,themeName:r,props:n,stylesCtx:o,selector:i}){return r.map(a=>jw({theme:e,styles:e.components[a]?.styles,props:n,stylesCtx:o})[i]).reduce((a,l)=>({...a,...l}),{})}function j9({style:e,theme:r}){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...j9({style:o,theme:r})}),{}):typeof e=="function"?e(r):e??{}}function dTe(e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{r[o]={...r[o],...yf(n[o])}}),r),{})}function uTe({vars:e,varsResolver:r,theme:n,props:o,stylesCtx:i,selector:a,themeName:l,headless:s}){return dTe([s?{}:r?.(n,o,i),...l.map(c=>n.components?.[c]?.vars?.(n,o,i)),e?.(n,o,i)])?.[a]}function pTe({theme:e,themeName:r,selector:n,options:o,props:i,stylesCtx:a,rootSelector:l,styles:s,style:c,vars:d,varsResolver:u,headless:p,withStylesTransform:f}){return{...!f&&cTe({theme:e,themeName:r,props:i,stylesCtx:a,selector:n}),...!f&&jw({theme:e,styles:s,props:i,stylesCtx:a})[n],...!f&&jw({theme:e,styles:o?.styles,props:o?.props||i,stylesCtx:a})[n],...uTe({theme:e,props:i,stylesCtx:a,vars:d,varsResolver:u,selector:n,themeName:r,headless:p}),...l===n?j9({style:c,theme:e}):null,...j9({style:o?.style,theme:e})}}function hTe({props:e,stylesCtx:r,themeName:n}){const o=lo(),i=Pze()?.();return{getTransformedStyles:a=>i?[...a.map(l=>i(l,{props:e,theme:o,ctx:r})),...n.map(l=>i(o.components[l]?.styles,{props:e,theme:o,ctx:r}))].filter(Boolean):[],withStylesTransform:!!i}}function kt({name:e,classes:r,props:n,stylesCtx:o,className:i,style:a,rootSelector:l="root",unstyled:s,classNames:c,styles:d,vars:u,varsResolver:p,attributes:f}){const m=lo(),v=Tze(),w=jze(),x=Aze(),k=(Array.isArray(e)?e:[e]).filter($=>$),{withStylesTransform:C,getTransformedStyles:_}=hTe({props:n,stylesCtx:o,themeName:k});return($,R)=>({className:sTe({theme:m,options:R,themeName:k,selector:$,classNamesPrefix:v,classNames:c,classes:r,unstyled:s,className:i,rootSelector:l,props:n,stylesCtx:o,withStaticClasses:w,headless:x,transformedStyles:_([R?.styles,d])}),style:pTe({theme:m,themeName:k,selector:$,options:R,props:n,stylesCtx:o,rootSelector:l,styles:d,style:a,vars:u,varsResolver:p,headless:x,withStylesTransform:C}),...f?.[$]})}function fTe(e,r){return typeof e=="boolean"?e:r.autoContrast}function VH(e){const r=document.createElement("style");return r.setAttribute("data-mantine-styles","inline"),r.innerHTML="*, *::before, *::after {transition: none !important;}",r.setAttribute("data-mantine-disable-transition","true"),e&&r.setAttribute("nonce",e),document.head.appendChild(r),()=>document.querySelectorAll("[data-mantine-disable-transition]").forEach(n=>n.remove())}function gTe({keepTransitions:e}={}){const r=S.useRef(dH),n=S.useRef(-1),o=S.useContext(Aw),i=np(),a=S.useRef(i?.());if(!o)throw new Error("[@mantine/core] MantineProvider was not found in tree");const l=p=>{o.setColorScheme(p),r.current=e?()=>{}:VH(a.current),window.clearTimeout(n.current),n.current=window.setTimeout(()=>{r.current?.()},10)},s=()=>{o.clearColorScheme(),r.current=e?()=>{}:VH(a.current),window.clearTimeout(n.current),n.current=window.setTimeout(()=>{r.current?.()},10)},c=gH("light",{getInitialValueInEffect:!1}),d=o.colorScheme==="auto"?c:o.colorScheme,u=S.useCallback(()=>l(d==="light"?"dark":"light"),[l,d]);return S.useEffect(()=>()=>{r.current?.(),window.clearTimeout(n.current)},[]),{colorScheme:o.colorScheme,setColorScheme:l,clearColorScheme:s,toggleColorScheme:u}}function Pe(e,r,n){const o=lo(),i=o.components[e]?.defaultProps,a=typeof i=="function"?i(o):i;return{...r,...a,...yf(n)}}function A9(e){return So(e).reduce((r,n)=>e[n]!==void 0?`${r}${MRe(n)}:${e[n]};`:r,"").trim()}function mTe({selector:e,styles:r,media:n,container:o}){const i=r?A9(r):"",a=Array.isArray(n)?n.map(s=>`@media${s.query}{${e}{${A9(s.styles)}}}`):[],l=Array.isArray(o)?o.map(s=>`@container ${s.query}{${e}{${A9(s.styles)}}}`):[];return`${i?`${e}{${i}}`:""}${a.join("")}${l.join("")}`.trim()}function Nw(e){const r=np();return y.jsx("style",{"data-mantine-styles":"inline",nonce:r?.(),dangerouslySetInnerHTML:{__html:mTe(e)}})}function qH(e){const{m:r,mx:n,my:o,mt:i,mb:a,ml:l,mr:s,me:c,ms:d,p:u,px:p,py:f,pt:m,pb:v,pl:w,pr:x,pe:k,ps:C,bd:_,bdrs:$,bg:R,c:T,opacity:A,ff:z,fz:j,fw:I,lts:N,ta:L,lh:H,fs:P,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:K,bgsz:O,bgp:W,bgr:Z,bga:Q,pos:ie,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,hiddenFrom:je,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le,...St}=e;return{styleProps:yf({m:r,mx:n,my:o,mt:i,mb:a,ml:l,mr:s,me:c,ms:d,p:u,px:p,py:f,pt:m,pb:v,pl:w,pr:x,pe:k,ps:C,bd:_,bg:R,c:T,opacity:A,ff:z,fz:j,fw:I,lts:N,ta:L,lh:H,fs:P,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:K,bgsz:O,bgp:W,bgr:Z,bga:Q,pos:ie,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,bdrs:$,hiddenFrom:je,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le}),rest:St}}const yTe={m:{type:"spacing",property:"margin"},mt:{type:"spacing",property:"marginTop"},mb:{type:"spacing",property:"marginBottom"},ml:{type:"spacing",property:"marginLeft"},mr:{type:"spacing",property:"marginRight"},ms:{type:"spacing",property:"marginInlineStart"},me:{type:"spacing",property:"marginInlineEnd"},mx:{type:"spacing",property:"marginInline"},my:{type:"spacing",property:"marginBlock"},p:{type:"spacing",property:"padding"},pt:{type:"spacing",property:"paddingTop"},pb:{type:"spacing",property:"paddingBottom"},pl:{type:"spacing",property:"paddingLeft"},pr:{type:"spacing",property:"paddingRight"},ps:{type:"spacing",property:"paddingInlineStart"},pe:{type:"spacing",property:"paddingInlineEnd"},px:{type:"spacing",property:"paddingInline"},py:{type:"spacing",property:"paddingBlock"},bd:{type:"border",property:"border"},bdrs:{type:"radius",property:"borderRadius"},bg:{type:"color",property:"background"},c:{type:"textColor",property:"color"},opacity:{type:"identity",property:"opacity"},ff:{type:"fontFamily",property:"fontFamily"},fz:{type:"fontSize",property:"fontSize"},fw:{type:"identity",property:"fontWeight"},lts:{type:"size",property:"letterSpacing"},ta:{type:"identity",property:"textAlign"},lh:{type:"lineHeight",property:"lineHeight"},fs:{type:"identity",property:"fontStyle"},tt:{type:"identity",property:"textTransform"},td:{type:"identity",property:"textDecoration"},w:{type:"spacing",property:"width"},miw:{type:"spacing",property:"minWidth"},maw:{type:"spacing",property:"maxWidth"},h:{type:"spacing",property:"height"},mih:{type:"spacing",property:"minHeight"},mah:{type:"spacing",property:"maxHeight"},bgsz:{type:"size",property:"backgroundSize"},bgp:{type:"identity",property:"backgroundPosition"},bgr:{type:"identity",property:"backgroundRepeat"},bga:{type:"identity",property:"backgroundAttachment"},pos:{type:"identity",property:"position"},top:{type:"size",property:"top"},left:{type:"size",property:"left"},bottom:{type:"size",property:"bottom"},right:{type:"size",property:"right"},inset:{type:"size",property:"inset"},display:{type:"identity",property:"display"},flex:{type:"identity",property:"flex"}};function D9(e,r){const n=vd({color:e,theme:r});return n.color==="dimmed"?"var(--mantine-color-dimmed)":n.color==="bright"?"var(--mantine-color-bright)":n.variable?`var(${n.variable})`:n.color}function vTe(e,r){const n=vd({color:e,theme:r});return n.isThemeColor&&n.shade===void 0?`var(--mantine-color-${n.color}-text)`:D9(e,r)}function bTe(e,r){if(typeof e=="number")return $e(e);if(typeof e=="string"){const[n,o,...i]=e.split(" ").filter(l=>l.trim()!=="");let a=`${$e(n)}`;return o&&(a+=` ${o}`),i.length>0&&(a+=` ${D9(i.join(" "),r)}`),a.trim()}return e}const HH={text:"var(--mantine-font-family)",mono:"var(--mantine-font-family-monospace)",monospace:"var(--mantine-font-family-monospace)",heading:"var(--mantine-font-family-headings)",headings:"var(--mantine-font-family-headings)"};function xTe(e){return typeof e=="string"&&e in HH?HH[e]:e}const wTe=["h1","h2","h3","h4","h5","h6"];function kTe(e,r){return typeof e=="string"&&e in r.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&wTe.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?$e(e):e}function _Te(e){return e}const STe=["h1","h2","h3","h4","h5","h6"];function ETe(e,r){return typeof e=="string"&&e in r.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&STe.includes(e)?`var(--mantine-${e}-line-height)`:e}function CTe(e,r){return typeof e=="string"&&e in r.radius?`var(--mantine-radius-${e})`:typeof e=="number"||typeof e=="string"?$e(e):e}function $Te(e){return typeof e=="number"?$e(e):e}function RTe(e,r){if(typeof e=="number")return $e(e);if(typeof e=="string"){const n=e.replace("-","");if(!(n in r.spacing))return $e(e);const o=`--mantine-spacing-${n}`;return e.startsWith("-")?`calc(var(${o}) * -1)`:`var(${o})`}return e}const P9={color:D9,textColor:vTe,fontSize:kTe,spacing:RTe,radius:CTe,identity:_Te,size:$Te,lineHeight:ETe,fontFamily:xTe,border:bTe};function UH(e){return e.replace("(min-width: ","").replace("em)","")}function zTe({media:e,...r}){const n=Object.keys(e).sort((o,i)=>Number(UH(o))-Number(UH(i))).map(o=>({query:o,styles:e[o]}));return{...r,media:n}}function TTe(e){if(typeof e!="object"||e===null)return!1;const r=Object.keys(e);return!(r.length===1&&r[0]==="base")}function jTe(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function ATe(e){return typeof e=="object"&&e!==null?So(e).filter(r=>r!=="base"):[]}function DTe(e,r){return typeof e=="object"&&e!==null&&r in e?e[r]:e}function WH({styleProps:e,data:r,theme:n}){return zTe(So(e).reduce((o,i)=>{if(i==="hiddenFrom"||i==="visibleFrom"||i==="sx")return o;const a=r[i],l=Array.isArray(a.property)?a.property:[a.property],s=jTe(e[i]);if(!TTe(e[i]))return l.forEach(d=>{o.inlineStyles[d]=P9[a.type](s,n)}),o;o.hasResponsiveStyles=!0;const c=ATe(e[i]);return l.forEach(d=>{s!=null&&(o.styles[d]=P9[a.type](s,n)),c.forEach(u=>{const p=`(min-width: ${n.breakpoints[u]})`;o.media[p]={...o.media[p],[d]:P9[a.type](DTe(e[i],u),n)}})}),o},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function Bw(){return`__m__-${S.useId().replace(/[:«»]/g,"")}`}function M9(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...M9(o,r)}),{}):typeof e=="function"?e(r):e??{}}function GH(e){return e.startsWith("data-")?e:`data-${e}`}function PTe(e){return Object.keys(e).reduce((r,n)=>{const o=e[n];return o===void 0||o===""||o===!1||o===null||(r[GH(n)]=e[n]),r},{})}function YH(e){return e?typeof e=="string"?{[GH(e)]:!0}:Array.isArray(e)?[...e].reduce((r,n)=>({...r,...YH(n)}),{}):PTe(e):null}function N9(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...N9(o,r)}),{}):typeof e=="function"?e(r):e??{}}function MTe({theme:e,style:r,vars:n,styleProps:o}){const i=N9(r,e),a=N9(n,e);return{...i,...a,...o}}const XH=S.forwardRef(({component:e,style:r,__vars:n,className:o,variant:i,mod:a,size:l,hiddenFrom:s,visibleFrom:c,lightHidden:d,darkHidden:u,renderRoot:p,__size:f,...m},v)=>{const w=lo(),x=e||"div",{styleProps:k,rest:C}=qH(m),_=Dze()?.()?.(k.sx),$=Bw(),R=WH({styleProps:k,theme:w,data:yTe}),T={ref:v,style:MTe({theme:w,style:r,vars:n,styleProps:R.inlineStyles}),className:el(o,_,{[$]:R.hasResponsiveStyles,"mantine-light-hidden":d,"mantine-dark-hidden":u,[`mantine-hidden-from-${s}`]:s,[`mantine-visible-from-${c}`]:c}),"data-variant":i,"data-size":sH(l)?void 0:l||void 0,size:f,...YH(a),...C};return y.jsxs(y.Fragment,{children:[R.hasResponsiveStyles&&y.jsx(Nw,{selector:`.${$}`,styles:R.styles,media:R.media}),typeof p=="function"?p(T):y.jsx(x,{...T})]})});XH.displayName="@mantine/core/Box";const Se=XH;function KH(e){return e}function NTe(e){const r=e;return n=>{const o=S.forwardRef((i,a)=>y.jsx(r,{...n,...i,ref:a}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o}}function ot(e){const r=S.forwardRef(e);return r.extend=KH,r.withProps=n=>{const o=S.forwardRef((i,a)=>y.jsx(r,{...n,...i,ref:a}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o},r}function Jn(e){const r=S.forwardRef(e);return r.withProps=n=>{const o=S.forwardRef((i,a)=>y.jsx(r,{...n,...i,ref:a}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o},r.extend=KH,r}const BTe=S.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function bd(){return S.useContext(BTe)}function ITe(e){if(!e||typeof e=="string")return 0;const r=e/36;return Math.round((4+15*r**.25+r/5)*10)}function B9(e){return e?.current?e.current.scrollHeight:"auto"}const Iw=typeof window<"u"&&window.requestAnimationFrame,ZH=0,OTe=e=>({height:0,overflow:"hidden",...e?{}:{display:"none"}});function LTe({transitionDuration:e,transitionTimingFunction:r="ease",onTransitionEnd:n=()=>{},opened:o,keepMounted:i=!1}){const a=S.useRef(null),l=OTe(i),[s,c]=S.useState(o?{}:l),d=v=>{Va.flushSync(()=>c(v))},u=v=>{d(w=>({...w,...v}))};function p(v){const w=e||ITe(v);return{transition:`height ${w}ms ${r}, opacity ${w}ms ${r}`}}wf(()=>{typeof Iw=="function"&&Iw(o?()=>{u({willChange:"height",display:"block",overflow:"hidden"}),Iw(()=>{const v=B9(a);u({...p(v),height:v})})}:()=>{const v=B9(a);u({...p(v),willChange:"height",height:v}),Iw(()=>u({height:ZH,overflow:"hidden"}))})},[o]);const f=v=>{if(!(v.target!==a.current||v.propertyName!=="height"))if(o){const w=B9(a);w===s.height?d({}):u({height:w}),n()}else s.height===ZH&&(d(l),n())};function m({style:v={},refKey:w="ref",...x}={}){const k=x[w],C={"aria-hidden":!o,...x,[w]:wH(a,k),onTransitionEnd:f,style:{boxSizing:"border-box",...v,...s}};return Zr.version.startsWith("18")?o||(C.inert=""):C.inert=!o,C}return m}const FTe={transitionDuration:200,transitionTimingFunction:"ease",animateOpacity:!0},QH=ot((e,r)=>{const{children:n,in:o,transitionDuration:i,transitionTimingFunction:a,style:l,onTransitionEnd:s,animateOpacity:c,keepMounted:d,...u}=Pe("Collapse",FTe,e),p=lo(),f=_H(),m=p.respectReducedMotion&&f?0:i,v=LTe({opened:o,transitionDuration:m,transitionTimingFunction:a,onTransitionEnd:s,keepMounted:d});return m===0?o?y.jsx(Se,{...u,children:n}):null:y.jsx(Se,{...v({style:{opacity:o||!c?1:0,transition:c?`opacity ${m}ms ${a}`:"none",...M9(l,p)},ref:r,...u}),children:n})});QH.displayName="@mantine/core/Collapse";function Ow(){return typeof window<"u"}function Cf(e){return JH(e)?(e.nodeName||"").toLowerCase():"#document"}function ni(e){var r;return(e==null||(r=e.ownerDocument)==null?void 0:r.defaultView)||window}function Kl(e){var r;return(r=(JH(e)?e.ownerDocument:e.document)||window.document)==null?void 0:r.documentElement}function JH(e){return Ow()?e instanceof Node||e instanceof ni(e).Node:!1}function Ar(e){return Ow()?e instanceof Element||e instanceof ni(e).Element:!1}function $i(e){return Ow()?e instanceof HTMLElement||e instanceof ni(e).HTMLElement:!1}function I9(e){return!Ow()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof ni(e).ShadowRoot}const VTe=new Set(["inline","contents"]);function cy(e){const{overflow:r,overflowX:n,overflowY:o,display:i}=ia(e);return/auto|scroll|overlay|hidden|clip/.test(r+o+n)&&!VTe.has(i)}const qTe=new Set(["table","td","th"]);function HTe(e){return qTe.has(Cf(e))}const UTe=[":popover-open",":modal"];function Lw(e){return UTe.some(r=>{try{return e.matches(r)}catch{return!1}})}const WTe=["transform","translate","scale","rotate","perspective"],GTe=["transform","translate","scale","rotate","perspective","filter"],YTe=["paint","layout","strict","content"];function O9(e){const r=Fw(),n=Ar(e)?ia(e):e;return WTe.some(o=>n[o]?n[o]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!r&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!r&&(n.filter?n.filter!=="none":!1)||GTe.some(o=>(n.willChange||"").includes(o))||YTe.some(o=>(n.contain||"").includes(o))}function XTe(e){let r=Ks(e);for(;$i(r)&&!Xs(r);){if(O9(r))return r;if(Lw(r))return null;r=Ks(r)}return null}function Fw(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const KTe=new Set(["html","body","#document"]);function Xs(e){return KTe.has(Cf(e))}function ia(e){return ni(e).getComputedStyle(e)}function Vw(e){return Ar(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Ks(e){if(Cf(e)==="html")return e;const r=e.assignedSlot||e.parentNode||I9(e)&&e.host||Kl(e);return I9(r)?r.host:r}function eU(e){const r=Ks(e);return Xs(r)?e.ownerDocument?e.ownerDocument.body:e.body:$i(r)&&cy(r)?r:eU(r)}function Zs(e,r,n){var o;r===void 0&&(r=[]),n===void 0&&(n=!0);const i=eU(e),a=i===((o=e.ownerDocument)==null?void 0:o.body),l=ni(i);if(a){const s=L9(l);return r.concat(l,l.visualViewport||[],cy(i)?i:[],s&&n?Zs(s):[])}return r.concat(i,Zs(i,[],n))}function L9(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}const tU=["top","right","bottom","left"],rU=["start","end"],nU=tU.reduce((e,r)=>e.concat(r,r+"-"+rU[0],r+"-"+rU[1]),[]),tl=Math.min,Co=Math.max,qw=Math.round,Hw=Math.floor,Zl=e=>({x:e,y:e}),ZTe={left:"right",right:"left",bottom:"top",top:"bottom"},QTe={start:"end",end:"start"};function F9(e,r,n){return Co(e,tl(r,n))}function rl(e,r){return typeof e=="function"?e(r):e}function Ri(e){return e.split("-")[0]}function nl(e){return e.split("-")[1]}function V9(e){return e==="x"?"y":"x"}function q9(e){return e==="y"?"height":"width"}const JTe=new Set(["top","bottom"]);function ol(e){return JTe.has(Ri(e))?"y":"x"}function H9(e){return V9(ol(e))}function oU(e,r,n){n===void 0&&(n=!1);const o=nl(e),i=H9(e),a=q9(i);let l=i==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return r.reference[a]>r.floating[a]&&(l=Ww(l)),[l,Ww(l)]}function eje(e){const r=Ww(e);return[Uw(e),r,Uw(r)]}function Uw(e){return e.replace(/start|end/g,r=>QTe[r])}const iU=["left","right"],aU=["right","left"],tje=["top","bottom"],rje=["bottom","top"];function nje(e,r,n){switch(e){case"top":case"bottom":return n?r?aU:iU:r?iU:aU;case"left":case"right":return r?tje:rje;default:return[]}}function oje(e,r,n,o){const i=nl(e);let a=nje(Ri(e),n==="start",o);return i&&(a=a.map(l=>l+"-"+i),r&&(a=a.concat(a.map(Uw)))),a}function Ww(e){return e.replace(/left|right|bottom|top/g,r=>ZTe[r])}function ije(e){return{top:0,right:0,bottom:0,left:0,...e}}function U9(e){return typeof e!="number"?ije(e):{top:e,right:e,bottom:e,left:e}}function $f(e){const{x:r,y:n,width:o,height:i}=e;return{width:o,height:i,top:n,left:r,right:r+o,bottom:n+i,x:r,y:n}}function aje(){const e=navigator.userAgentData;return e!=null&&e.platform?e.platform:navigator.platform}function lje(){const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?e.brands.map(r=>{let{brand:n,version:o}=r;return n+"/"+o}).join(" "):navigator.userAgent}function sje(){return/apple/i.test(navigator.vendor)}function cje(){return aje().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function dje(){return lje().includes("jsdom/")}const lU="data-floating-ui-focusable",uje="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function sU(e){let r=e.activeElement;for(;((n=r)==null||(n=n.shadowRoot)==null?void 0:n.activeElement)!=null;){var n;r=r.shadowRoot.activeElement}return r}function dy(e,r){if(!e||!r)return!1;const n=r.getRootNode==null?void 0:r.getRootNode();if(e.contains(r))return!0;if(n&&I9(n)){let o=r;for(;o;){if(e===o)return!0;o=o.parentNode||o.host}}return!1}function Rf(e){return"composedPath"in e?e.composedPath()[0]:e.target}function W9(e,r){if(r==null)return!1;if("composedPath"in e)return e.composedPath().includes(r);const n=e;return n.target!=null&&r.contains(n.target)}function pje(e){return e.matches("html,body")}function op(e){return e?.ownerDocument||document}function hje(e){return $i(e)&&e.matches(uje)}function fje(e){if(!e||dje())return!0;try{return e.matches(":focus-visible")}catch{return!0}}function gje(e){return e?e.hasAttribute(lU)?e:e.querySelector("["+lU+"]")||e:null}function Gw(e,r,n){return n===void 0&&(n=!0),e.filter(o=>{var i;return o.parentId===r&&(!n||((i=o.context)==null?void 0:i.open))}).flatMap(o=>[o,...Gw(e,o.id,n)])}function mje(e){return"nativeEvent"in e}function G9(e,r){const n=["mouse","pen"];return n.push("",void 0),n.includes(e)}var yje=typeof document<"u",vje=function(){},Ql=yje?S.useLayoutEffect:vje;const bje={...mb};function Yw(e){const r=S.useRef(e);return Ql(()=>{r.current=e}),r}const xje=bje.useInsertionEffect,wje=xje||(e=>e());function Jl(e){const r=S.useRef(()=>{});return wje(()=>{r.current=e}),S.useCallback(function(){for(var n=arguments.length,o=new Array(n),i=0;i{const{placement:o="bottom",strategy:i="absolute",middleware:a=[],platform:l}=n,s=a.filter(Boolean),c=await(l.isRTL==null?void 0:l.isRTL(r));let d=await l.getElementRects({reference:e,floating:r,strategy:i}),{x:u,y:p}=cU(d,o,c),f=o,m={},v=0;for(let w=0;w({name:"arrow",options:e,async fn(r){const{x:n,y:o,placement:i,rects:a,platform:l,elements:s,middlewareData:c}=r,{element:d,padding:u=0}=rl(e,r)||{};if(d==null)return{};const p=U9(u),f={x:n,y:o},m=H9(i),v=q9(m),w=await l.getDimensions(d),x=m==="y",k=x?"top":"left",C=x?"bottom":"right",_=x?"clientHeight":"clientWidth",$=a.reference[v]+a.reference[m]-f[m]-a.floating[v],R=f[m]-a.reference[m],T=await(l.getOffsetParent==null?void 0:l.getOffsetParent(d));let A=T?T[_]:0;(!A||!await(l.isElement==null?void 0:l.isElement(T)))&&(A=s.floating[_]||a.floating[v]);const z=$/2-R/2,j=A/2-w[v]/2-1,I=tl(p[k],j),N=tl(p[C],j),L=I,H=A-w[v]-N,P=A/2-w[v]/2+z,V=F9(L,P,H),B=!c.arrow&&nl(i)!=null&&P!==V&&a.reference[v]/2-(Pnl(o)===e),...n.filter(o=>nl(o)!==e)]:n.filter(o=>Ri(o)===o)).filter(o=>e?nl(o)===e||(r?Uw(o)!==o:!1):!0)}const Eje=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(r){var n,o,i;const{rects:a,middlewareData:l,placement:s,platform:c,elements:d}=r,{crossAxis:u=!1,alignment:p,allowedPlacements:f=nU,autoAlignment:m=!0,...v}=rl(e,r),w=p!==void 0||f===nU?Sje(p||null,m,f):f,x=await zf(r,v),k=((n=l.autoPlacement)==null?void 0:n.index)||0,C=w[k];if(C==null)return{};const _=oU(C,a,await(c.isRTL==null?void 0:c.isRTL(d.floating)));if(s!==C)return{reset:{placement:w[0]}};const $=[x[Ri(C)],x[_[0]],x[_[1]]],R=[...((o=l.autoPlacement)==null?void 0:o.overflows)||[],{placement:C,overflows:$}],T=w[k+1];if(T)return{data:{index:k+1,overflows:R},reset:{placement:T}};const A=R.map(j=>{const I=nl(j.placement);return[j.placement,I&&u?j.overflows.slice(0,2).reduce((N,L)=>N+L,0):j.overflows[0],j.overflows]}).sort((j,I)=>j[1]-I[1]),z=((i=A.filter(j=>j[2].slice(0,nl(j[0])?2:3).every(I=>I<=0))[0])==null?void 0:i[0])||A[0][0];return z!==s?{data:{index:k+1,overflows:R},reset:{placement:z}}:{}}}},Cje=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(r){var n,o;const{placement:i,middlewareData:a,rects:l,initialPlacement:s,platform:c,elements:d}=r,{mainAxis:u=!0,crossAxis:p=!0,fallbackPlacements:f,fallbackStrategy:m="bestFit",fallbackAxisSideDirection:v="none",flipAlignment:w=!0,...x}=rl(e,r);if((n=a.arrow)!=null&&n.alignmentOffset)return{};const k=Ri(i),C=ol(s),_=Ri(s)===s,$=await(c.isRTL==null?void 0:c.isRTL(d.floating)),R=f||(_||!w?[Ww(s)]:eje(s)),T=v!=="none";!f&&T&&R.push(...oje(s,w,v,$));const A=[s,...R],z=await zf(r,x),j=[];let I=((o=a.flip)==null?void 0:o.overflows)||[];if(u&&j.push(z[k]),p){const P=oU(i,l,$);j.push(z[P[0]],z[P[1]])}if(I=[...I,{placement:i,overflows:j}],!j.every(P=>P<=0)){var N,L;const P=(((N=a.flip)==null?void 0:N.index)||0)+1,V=A[P];if(V&&(!(p==="alignment"&&C!==ol(V))||I.every(F=>ol(F.placement)===C?F.overflows[0]>0:!0)))return{data:{index:P,overflows:I},reset:{placement:V}};let B=(L=I.filter(F=>F.overflows[0]<=0).sort((F,q)=>F.overflows[1]-q.overflows[1])[0])==null?void 0:L.placement;if(!B)switch(m){case"bestFit":{var H;const F=(H=I.filter(q=>{if(T){const G=ol(q.placement);return G===C||G==="y"}return!0}).map(q=>[q.placement,q.overflows.filter(G=>G>0).reduce((G,U)=>G+U,0)]).sort((q,G)=>q[1]-G[1])[0])==null?void 0:H[0];F&&(B=F);break}case"initialPlacement":B=s;break}if(i!==B)return{reset:{placement:B}}}return{}}}};function dU(e,r){return{top:e.top-r.height,right:e.right-r.width,bottom:e.bottom-r.height,left:e.left-r.width}}function uU(e){return tU.some(r=>e[r]>=0)}const $je=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(r){const{rects:n}=r,{strategy:o="referenceHidden",...i}=rl(e,r);switch(o){case"referenceHidden":{const a=await zf(r,{...i,elementContext:"reference"}),l=dU(a,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:uU(l)}}}case"escaped":{const a=await zf(r,{...i,altBoundary:!0}),l=dU(a,n.floating);return{data:{escapedOffsets:l,escaped:uU(l)}}}default:return{}}}}};function pU(e){const r=tl(...e.map(a=>a.left)),n=tl(...e.map(a=>a.top)),o=Co(...e.map(a=>a.right)),i=Co(...e.map(a=>a.bottom));return{x:r,y:n,width:o-r,height:i-n}}function Rje(e){const r=e.slice().sort((i,a)=>i.y-a.y),n=[];let o=null;for(let i=0;io.height/2?n.push([a]):n[n.length-1].push(a),o=a}return n.map(i=>$f(pU(i)))}const zje=function(e){return e===void 0&&(e={}),{name:"inline",options:e,async fn(r){const{placement:n,elements:o,rects:i,platform:a,strategy:l}=r,{padding:s=2,x:c,y:d}=rl(e,r),u=Array.from(await(a.getClientRects==null?void 0:a.getClientRects(o.reference))||[]),p=Rje(u),f=$f(pU(u)),m=U9(s);function v(){if(p.length===2&&p[0].left>p[1].right&&c!=null&&d!=null)return p.find(x=>c>x.left-m.left&&cx.top-m.top&&d=2){if(ol(n)==="y"){const I=p[0],N=p[p.length-1],L=Ri(n)==="top",H=I.top,P=N.bottom,V=L?I.left:N.left,B=L?I.right:N.right,F=B-V,q=P-H;return{top:H,bottom:P,left:V,right:B,width:F,height:q,x:V,y:H}}const x=Ri(n)==="left",k=Co(...p.map(I=>I.right)),C=tl(...p.map(I=>I.left)),_=p.filter(I=>x?I.left===C:I.right===k),$=_[0].top,R=_[_.length-1].bottom,T=C,A=k,z=A-T,j=R-$;return{top:$,bottom:R,left:T,right:A,width:z,height:j,x:T,y:$}}return f}const w=await a.getElementRects({reference:{getBoundingClientRect:v},floating:o.floating,strategy:l});return i.reference.x!==w.reference.x||i.reference.y!==w.reference.y||i.reference.width!==w.reference.width||i.reference.height!==w.reference.height?{reset:{rects:w}}:{}}}},hU=new Set(["left","top"]);async function Tje(e,r){const{placement:n,platform:o,elements:i}=e,a=await(o.isRTL==null?void 0:o.isRTL(i.floating)),l=Ri(n),s=nl(n),c=ol(n)==="y",d=hU.has(l)?-1:1,u=a&&c?-1:1,p=rl(r,e);let{mainAxis:f,crossAxis:m,alignmentAxis:v}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return s&&typeof v=="number"&&(m=s==="end"?v*-1:v),c?{x:m*u,y:f*d}:{x:f*d,y:m*u}}const jje=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(r){var n,o;const{x:i,y:a,placement:l,middlewareData:s}=r,c=await Tje(r,e);return l===((n=s.offset)==null?void 0:n.placement)&&(o=s.arrow)!=null&&o.alignmentOffset?{}:{x:i+c.x,y:a+c.y,data:{...c,placement:l}}}}},Aje=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(r){const{x:n,y:o,placement:i}=r,{mainAxis:a=!0,crossAxis:l=!1,limiter:s={fn:x=>{let{x:k,y:C}=x;return{x:k,y:C}}},...c}=rl(e,r),d={x:n,y:o},u=await zf(r,c),p=ol(Ri(i)),f=V9(p);let m=d[f],v=d[p];if(a){const x=f==="y"?"top":"left",k=f==="y"?"bottom":"right",C=m+u[x],_=m-u[k];m=F9(C,m,_)}if(l){const x=p==="y"?"top":"left",k=p==="y"?"bottom":"right",C=v+u[x],_=v-u[k];v=F9(C,v,_)}const w=s.fn({...r,[f]:m,[p]:v});return{...w,data:{x:w.x-n,y:w.y-o,enabled:{[f]:a,[p]:l}}}}}},Dje=function(e){return e===void 0&&(e={}),{options:e,fn(r){const{x:n,y:o,placement:i,rects:a,middlewareData:l}=r,{offset:s=0,mainAxis:c=!0,crossAxis:d=!0}=rl(e,r),u={x:n,y:o},p=ol(i),f=V9(p);let m=u[f],v=u[p];const w=rl(s,r),x=typeof w=="number"?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(c){const _=f==="y"?"height":"width",$=a.reference[f]-a.floating[_]+x.mainAxis,R=a.reference[f]+a.reference[_]-x.mainAxis;m<$?m=$:m>R&&(m=R)}if(d){var k,C;const _=f==="y"?"width":"height",$=hU.has(Ri(i)),R=a.reference[p]-a.floating[_]+($&&((k=l.offset)==null?void 0:k[p])||0)+($?0:x.crossAxis),T=a.reference[p]+a.reference[_]+($?0:((C=l.offset)==null?void 0:C[p])||0)-($?x.crossAxis:0);vT&&(v=T)}return{[f]:m,[p]:v}}}},Pje=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(r){var n,o;const{placement:i,rects:a,platform:l,elements:s}=r,{apply:c=()=>{},...d}=rl(e,r),u=await zf(r,d),p=Ri(i),f=nl(i),m=ol(i)==="y",{width:v,height:w}=a.floating;let x,k;p==="top"||p==="bottom"?(x=p,k=f===(await(l.isRTL==null?void 0:l.isRTL(s.floating))?"start":"end")?"left":"right"):(k=p,x=f==="end"?"top":"bottom");const C=w-u.top-u.bottom,_=v-u.left-u.right,$=tl(w-u[x],C),R=tl(v-u[k],_),T=!r.middlewareData.shift;let A=$,z=R;if((n=r.middlewareData.shift)!=null&&n.enabled.x&&(z=_),(o=r.middlewareData.shift)!=null&&o.enabled.y&&(A=C),T&&!f){const I=Co(u.left,0),N=Co(u.right,0),L=Co(u.top,0),H=Co(u.bottom,0);m?z=v-2*(I!==0||N!==0?I+N:Co(u.left,u.right)):A=w-2*(L!==0||H!==0?L+H:Co(u.top,u.bottom))}await c({...r,availableWidth:z,availableHeight:A});const j=await l.getDimensions(s.floating);return v!==j.width||w!==j.height?{reset:{rects:!0}}:{}}}};function fU(e){const r=ia(e);let n=parseFloat(r.width)||0,o=parseFloat(r.height)||0;const i=$i(e),a=i?e.offsetWidth:n,l=i?e.offsetHeight:o,s=qw(n)!==a||qw(o)!==l;return s&&(n=a,o=l),{width:n,height:o,$:s}}function Y9(e){return Ar(e)?e:e.contextElement}function Tf(e){const r=Y9(e);if(!$i(r))return Zl(1);const n=r.getBoundingClientRect(),{width:o,height:i,$:a}=fU(r);let l=(a?qw(n.width):n.width)/o,s=(a?qw(n.height):n.height)/i;return(!l||!Number.isFinite(l))&&(l=1),(!s||!Number.isFinite(s))&&(s=1),{x:l,y:s}}const Mje=Zl(0);function gU(e){const r=ni(e);return!Fw()||!r.visualViewport?Mje:{x:r.visualViewport.offsetLeft,y:r.visualViewport.offsetTop}}function Nje(e,r,n){return r===void 0&&(r=!1),!n||r&&n!==ni(e)?!1:r}function ip(e,r,n,o){r===void 0&&(r=!1),n===void 0&&(n=!1);const i=e.getBoundingClientRect(),a=Y9(e);let l=Zl(1);r&&(o?Ar(o)&&(l=Tf(o)):l=Tf(e));const s=Nje(a,n,o)?gU(a):Zl(0);let c=(i.left+s.x)/l.x,d=(i.top+s.y)/l.y,u=i.width/l.x,p=i.height/l.y;if(a){const f=ni(a),m=o&&Ar(o)?ni(o):o;let v=f,w=L9(v);for(;w&&o&&m!==v;){const x=Tf(w),k=w.getBoundingClientRect(),C=ia(w),_=k.left+(w.clientLeft+parseFloat(C.paddingLeft))*x.x,$=k.top+(w.clientTop+parseFloat(C.paddingTop))*x.y;c*=x.x,d*=x.y,u*=x.x,p*=x.y,c+=_,d+=$,v=ni(w),w=L9(v)}}return $f({width:u,height:p,x:c,y:d})}function Xw(e,r){const n=Vw(e).scrollLeft;return r?r.left+n:ip(Kl(e)).left+n}function mU(e,r){const n=e.getBoundingClientRect(),o=n.left+r.scrollLeft-Xw(e,n),i=n.top+r.scrollTop;return{x:o,y:i}}function Bje(e){let{elements:r,rect:n,offsetParent:o,strategy:i}=e;const a=i==="fixed",l=Kl(o),s=r?Lw(r.floating):!1;if(o===l||s&&a)return n;let c={scrollLeft:0,scrollTop:0},d=Zl(1);const u=Zl(0),p=$i(o);if((p||!p&&!a)&&((Cf(o)!=="body"||cy(l))&&(c=Vw(o)),$i(o))){const m=ip(o);d=Tf(o),u.x=m.x+o.clientLeft,u.y=m.y+o.clientTop}const f=l&&!p&&!a?mU(l,c):Zl(0);return{width:n.width*d.x,height:n.height*d.y,x:n.x*d.x-c.scrollLeft*d.x+u.x+f.x,y:n.y*d.y-c.scrollTop*d.y+u.y+f.y}}function Ije(e){return Array.from(e.getClientRects())}function Oje(e){const r=Kl(e),n=Vw(e),o=e.ownerDocument.body,i=Co(r.scrollWidth,r.clientWidth,o.scrollWidth,o.clientWidth),a=Co(r.scrollHeight,r.clientHeight,o.scrollHeight,o.clientHeight);let l=-n.scrollLeft+Xw(e);const s=-n.scrollTop;return ia(o).direction==="rtl"&&(l+=Co(r.clientWidth,o.clientWidth)-i),{width:i,height:a,x:l,y:s}}const yU=25;function Lje(e,r){const n=ni(e),o=Kl(e),i=n.visualViewport;let a=o.clientWidth,l=o.clientHeight,s=0,c=0;if(i){a=i.width,l=i.height;const u=Fw();(!u||u&&r==="fixed")&&(s=i.offsetLeft,c=i.offsetTop)}const d=Xw(o);if(d<=0){const u=o.ownerDocument,p=u.body,f=getComputedStyle(p),m=u.compatMode==="CSS1Compat"&&parseFloat(f.marginLeft)+parseFloat(f.marginRight)||0,v=Math.abs(o.clientWidth-p.clientWidth-m);v<=yU&&(a-=v)}else d<=yU&&(a+=d);return{width:a,height:l,x:s,y:c}}const Fje=new Set(["absolute","fixed"]);function Vje(e,r){const n=ip(e,!0,r==="fixed"),o=n.top+e.clientTop,i=n.left+e.clientLeft,a=$i(e)?Tf(e):Zl(1),l=e.clientWidth*a.x,s=e.clientHeight*a.y,c=i*a.x,d=o*a.y;return{width:l,height:s,x:c,y:d}}function vU(e,r,n){let o;if(r==="viewport")o=Lje(e,n);else if(r==="document")o=Oje(Kl(e));else if(Ar(r))o=Vje(r,n);else{const i=gU(e);o={x:r.x-i.x,y:r.y-i.y,width:r.width,height:r.height}}return $f(o)}function bU(e,r){const n=Ks(e);return n===r||!Ar(n)||Xs(n)?!1:ia(n).position==="fixed"||bU(n,r)}function qje(e,r){const n=r.get(e);if(n)return n;let o=Zs(e,[],!1).filter(s=>Ar(s)&&Cf(s)!=="body"),i=null;const a=ia(e).position==="fixed";let l=a?Ks(e):e;for(;Ar(l)&&!Xs(l);){const s=ia(l),c=O9(l);!c&&s.position==="fixed"&&(i=null),(a?!c&&!i:!c&&s.position==="static"&&i&&Fje.has(i.position)||cy(l)&&!c&&bU(e,l))?o=o.filter(d=>d!==l):i=s,l=Ks(l)}return r.set(e,o),o}function Hje(e){let{element:r,boundary:n,rootBoundary:o,strategy:i}=e;const a=[...n==="clippingAncestors"?Lw(r)?[]:qje(r,this._c):[].concat(n),o],l=a[0],s=a.reduce((c,d)=>{const u=vU(r,d,i);return c.top=Co(u.top,c.top),c.right=tl(u.right,c.right),c.bottom=tl(u.bottom,c.bottom),c.left=Co(u.left,c.left),c},vU(r,l,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function Uje(e){const{width:r,height:n}=fU(e);return{width:r,height:n}}function Wje(e,r,n){const o=$i(r),i=Kl(r),a=n==="fixed",l=ip(e,!0,a,r);let s={scrollLeft:0,scrollTop:0};const c=Zl(0);function d(){c.x=Xw(i)}if(o||!o&&!a)if((Cf(r)!=="body"||cy(i))&&(s=Vw(r)),o){const m=ip(r,!0,a,r);c.x=m.x+r.clientLeft,c.y=m.y+r.clientTop}else i&&d();a&&!o&&i&&d();const u=i&&!o&&!a?mU(i,s):Zl(0),p=l.left+s.scrollLeft-c.x-u.x,f=l.top+s.scrollTop-c.y-u.y;return{x:p,y:f,width:l.width,height:l.height}}function X9(e){return ia(e).position==="static"}function xU(e,r){if(!$i(e)||ia(e).position==="fixed")return null;if(r)return r(e);let n=e.offsetParent;return Kl(e)===n&&(n=n.ownerDocument.body),n}function wU(e,r){const n=ni(e);if(Lw(e))return n;if(!$i(e)){let i=Ks(e);for(;i&&!Xs(i);){if(Ar(i)&&!X9(i))return i;i=Ks(i)}return n}let o=xU(e,r);for(;o&&HTe(o)&&X9(o);)o=xU(o,r);return o&&Xs(o)&&X9(o)&&!O9(o)?n:o||XTe(e)||n}const Gje=async function(e){const r=this.getOffsetParent||wU,n=this.getDimensions,o=await n(e.floating);return{reference:Wje(e.reference,await r(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function Yje(e){return ia(e).direction==="rtl"}const Xje={convertOffsetParentRelativeRectToViewportRelativeRect:Bje,getDocumentElement:Kl,getClippingRect:Hje,getOffsetParent:wU,getElementRects:Gje,getClientRects:Ije,getDimensions:Uje,getScale:Tf,isElement:Ar,isRTL:Yje};function kU(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}function Kje(e,r){let n=null,o;const i=Kl(e);function a(){var s;clearTimeout(o),(s=n)==null||s.disconnect(),n=null}function l(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();const d=e.getBoundingClientRect(),{left:u,top:p,width:f,height:m}=d;if(s||r(),!f||!m)return;const v=Hw(p),w=Hw(i.clientWidth-(u+f)),x=Hw(i.clientHeight-(p+m)),k=Hw(u),C={rootMargin:-v+"px "+-w+"px "+-x+"px "+-k+"px",threshold:Co(0,tl(1,c))||1};let _=!0;function $(R){const T=R[0].intersectionRatio;if(T!==c){if(!_)return l();T?l(!1,T):o=setTimeout(()=>{l(!1,1e-7)},1e3)}T===1&&!kU(d,e.getBoundingClientRect())&&l(),_=!1}try{n=new IntersectionObserver($,{...C,root:i.ownerDocument})}catch{n=new IntersectionObserver($,C)}n.observe(e)}return l(!0),a}function Kw(e,r,n,o){o===void 0&&(o={});const{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:l=typeof ResizeObserver=="function",layoutShift:s=typeof IntersectionObserver=="function",animationFrame:c=!1}=o,d=Y9(e),u=i||a?[...d?Zs(d):[],...Zs(r)]:[];u.forEach(k=>{i&&k.addEventListener("scroll",n,{passive:!0}),a&&k.addEventListener("resize",n)});const p=d&&s?Kje(d,n):null;let f=-1,m=null;l&&(m=new ResizeObserver(k=>{let[C]=k;C&&C.target===d&&m&&(m.unobserve(r),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var _;(_=m)==null||_.observe(r)})),n()}),d&&!c&&m.observe(d),m.observe(r));let v,w=c?ip(e):null;c&&x();function x(){const k=ip(e);w&&!kU(w,k)&&n(),w=k,v=requestAnimationFrame(x)}return n(),()=>{var k;u.forEach(C=>{i&&C.removeEventListener("scroll",n),a&&C.removeEventListener("resize",n)}),p?.(),(k=m)==null||k.disconnect(),m=null,c&&cancelAnimationFrame(v)}}const _U=jje,Zje=Eje,Qje=Aje,Jje=Cje,SU=Pje,EU=$je,CU=_je,eAe=zje,tAe=Dje,$U=(e,r,n)=>{const o=new Map,i={platform:Xje,...n},a={...i.platform,_c:o};return kje(e,r,{...i,platform:a})};var rAe=typeof document<"u",nAe=function(){},Zw=rAe?S.useLayoutEffect:nAe;function Qw(e,r){if(e===r)return!0;if(typeof e!=typeof r)return!1;if(typeof e=="function"&&e.toString()===r.toString())return!0;let n,o,i;if(e&&r&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==r.length)return!1;for(o=n;o--!==0;)if(!Qw(e[o],r[o]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!{}.hasOwnProperty.call(r,i[o]))return!1;for(o=n;o--!==0;){const a=i[o];if(!(a==="_owner"&&e.$$typeof)&&!Qw(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}function RU(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function zU(e,r){const n=RU(e);return Math.round(r*n)/n}function K9(e){const r=S.useRef(e);return Zw(()=>{r.current=e}),r}function oAe(e){e===void 0&&(e={});const{placement:r="bottom",strategy:n="absolute",middleware:o=[],platform:i,elements:{reference:a,floating:l}={},transform:s=!0,whileElementsMounted:c,open:d}=e,[u,p]=S.useState({x:0,y:0,strategy:n,placement:r,middlewareData:{},isPositioned:!1}),[f,m]=S.useState(o);Qw(f,o)||m(o);const[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(q=>{q!==T.current&&(T.current=q,w(q))},[]),_=S.useCallback(q=>{q!==A.current&&(A.current=q,k(q))},[]),$=a||v,R=l||x,T=S.useRef(null),A=S.useRef(null),z=S.useRef(u),j=c!=null,I=K9(c),N=K9(i),L=K9(d),H=S.useCallback(()=>{if(!T.current||!A.current)return;const q={placement:r,strategy:n,middleware:f};N.current&&(q.platform=N.current),$U(T.current,A.current,q).then(G=>{const U={...G,isPositioned:L.current!==!1};P.current&&!Qw(z.current,U)&&(z.current=U,Va.flushSync(()=>{p(U)}))})},[f,r,n,N,L]);Zw(()=>{d===!1&&z.current.isPositioned&&(z.current.isPositioned=!1,p(q=>({...q,isPositioned:!1})))},[d]);const P=S.useRef(!1);Zw(()=>(P.current=!0,()=>{P.current=!1}),[]),Zw(()=>{if($&&(T.current=$),R&&(A.current=R),$&&R){if(I.current)return I.current($,R,H);H()}},[$,R,H,I,j]);const V=S.useMemo(()=>({reference:T,floating:A,setReference:C,setFloating:_}),[C,_]),B=S.useMemo(()=>({reference:$,floating:R}),[$,R]),F=S.useMemo(()=>{const q={position:n,left:0,top:0};if(!B.floating)return q;const G=zU(B.floating,u.x),U=zU(B.floating,u.y);return s?{...q,transform:"translate("+G+"px, "+U+"px)",...RU(B.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:G,top:U}},[n,s,B.floating,u.x,u.y]);return S.useMemo(()=>({...u,update:H,refs:V,elements:B,floatingStyles:F}),[u,H,V,B,F])}const iAe=e=>{function r(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:o,padding:i}=typeof e=="function"?e(n):e;return o&&r(o)?o.current!=null?CU({element:o.current,padding:i}).fn(n):{}:o?CU({element:o,padding:i}).fn(n):{}}}},TU=(e,r)=>({..._U(e),options:[e,r]}),Z9=(e,r)=>({...Qje(e),options:[e,r]}),jU=(e,r)=>({...tAe(e),options:[e,r]}),Jw=(e,r)=>({...Jje(e),options:[e,r]}),aAe=(e,r)=>({...SU(e),options:[e,r]}),lAe=(e,r)=>({...EU(e),options:[e,r]}),uy=(e,r)=>({...eAe(e),options:[e,r]}),AU=(e,r)=>({...iAe(e),options:[e,r]});function DU(e){const r=S.useRef(void 0),n=S.useCallback(o=>{const i=e.map(a=>{if(a!=null){if(typeof a=="function"){const l=a,s=l(o);return typeof s=="function"?s:()=>{l(null)}}return a.current=o,()=>{a.current=null}}});return()=>{i.forEach(a=>a?.())}},e);return S.useMemo(()=>e.every(o=>o==null)?null:o=>{r.current&&(r.current(),r.current=void 0),o!=null&&(r.current=n(o))},e)}const sAe="data-floating-ui-focusable",PU="active",MU="selected",cAe={...mb};let NU=!1,dAe=0;const BU=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+dAe++;function uAe(){const[e,r]=S.useState(()=>NU?BU():void 0);return Ql(()=>{e==null&&r(BU())},[]),S.useEffect(()=>{NU=!0},[]),e}const pAe=cAe.useId,IU=pAe||uAe;function hAe(){const e=new Map;return{emit(r,n){var o;(o=e.get(r))==null||o.forEach(i=>i(n))},on(r,n){e.has(r)||e.set(r,new Set),e.get(r).add(n)},off(r,n){var o;(o=e.get(r))==null||o.delete(n)}}}const fAe=S.createContext(null),gAe=S.createContext(null),Q9=()=>{var e;return((e=S.useContext(fAe))==null?void 0:e.id)||null},J9=()=>S.useContext(gAe);function eS(e){return"data-floating-ui-"+e}function aa(e){e.current!==-1&&(clearTimeout(e.current),e.current=-1)}const OU=eS("safe-polygon");function e3(e,r,n){if(n&&!G9(n))return 0;if(typeof e=="number")return e;if(typeof e=="function"){const o=e();return typeof o=="number"?o:o?.[r]}return e?.[r]}function tS(e){return typeof e=="function"?e():e}function LU(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,dataRef:i,events:a,elements:l}=e,{enabled:s=!0,delay:c=0,handleClose:d=null,mouseOnly:u=!1,restMs:p=0,move:f=!0}=r,m=J9(),v=Q9(),w=Yw(d),x=Yw(c),k=Yw(n),C=Yw(p),_=S.useRef(),$=S.useRef(-1),R=S.useRef(),T=S.useRef(-1),A=S.useRef(!0),z=S.useRef(!1),j=S.useRef(()=>{}),I=S.useRef(!1),N=Jl(()=>{var F;const q=(F=i.current.openEvent)==null?void 0:F.type;return q?.includes("mouse")&&q!=="mousedown"});S.useEffect(()=>{if(!s)return;function F(q){let{open:G}=q;G||(aa($),aa(T),A.current=!0,I.current=!1)}return a.on("openchange",F),()=>{a.off("openchange",F)}},[s,a]),S.useEffect(()=>{if(!s||!w.current||!n)return;function F(G){N()&&o(!1,G,"hover")}const q=op(l.floating).documentElement;return q.addEventListener("mouseleave",F),()=>{q.removeEventListener("mouseleave",F)}},[l.floating,n,o,s,w,N]);const L=S.useCallback(function(F,q,G){q===void 0&&(q=!0),G===void 0&&(G="hover");const U=e3(x.current,"close",_.current);U&&!R.current?(aa($),$.current=window.setTimeout(()=>o(!1,F,G),U)):q&&(aa($),o(!1,F,G))},[x,o]),H=Jl(()=>{j.current(),R.current=void 0}),P=Jl(()=>{if(z.current){const F=op(l.floating).body;F.style.pointerEvents="",F.removeAttribute(OU),z.current=!1}}),V=Jl(()=>i.current.openEvent?["click","mousedown"].includes(i.current.openEvent.type):!1);S.useEffect(()=>{if(!s)return;function F(K){if(aa($),A.current=!1,u&&!G9(_.current)||tS(C.current)>0&&!e3(x.current,"open"))return;const O=e3(x.current,"open",_.current);O?$.current=window.setTimeout(()=>{k.current||o(!0,K,"hover")},O):n||o(!0,K,"hover")}function q(K){if(V()){P();return}j.current();const O=op(l.floating);if(aa(T),I.current=!1,w.current&&i.current.floatingContext){n||aa($),R.current=w.current({...i.current.floatingContext,tree:m,x:K.clientX,y:K.clientY,onClose(){P(),H(),V()||L(K,!0,"safe-polygon")}});const W=R.current;O.addEventListener("mousemove",W),j.current=()=>{O.removeEventListener("mousemove",W)};return}(_.current!=="touch"||!dy(l.floating,K.relatedTarget))&&L(K)}function G(K){V()||i.current.floatingContext&&(w.current==null||w.current({...i.current.floatingContext,tree:m,x:K.clientX,y:K.clientY,onClose(){P(),H(),V()||L(K)}})(K))}function U(){aa($)}function Y(K){V()||L(K,!1)}if(Ar(l.domReference)){const K=l.domReference,O=l.floating;return n&&K.addEventListener("mouseleave",G),f&&K.addEventListener("mousemove",F,{once:!0}),K.addEventListener("mouseenter",F),K.addEventListener("mouseleave",q),O&&(O.addEventListener("mouseleave",G),O.addEventListener("mouseenter",U),O.addEventListener("mouseleave",Y)),()=>{n&&K.removeEventListener("mouseleave",G),f&&K.removeEventListener("mousemove",F),K.removeEventListener("mouseenter",F),K.removeEventListener("mouseleave",q),O&&(O.removeEventListener("mouseleave",G),O.removeEventListener("mouseenter",U),O.removeEventListener("mouseleave",Y))}}},[l,s,e,u,f,L,H,P,o,n,k,m,x,w,i,V,C]),Ql(()=>{var F;if(s&&n&&(F=w.current)!=null&&(F=F.__options)!=null&&F.blockPointerEvents&&N()){z.current=!0;const G=l.floating;if(Ar(l.domReference)&&G){var q;const U=op(l.floating).body;U.setAttribute(OU,"");const Y=l.domReference,K=m==null||(q=m.nodesRef.current.find(O=>O.id===v))==null||(q=q.context)==null?void 0:q.elements.floating;return K&&(K.style.pointerEvents=""),U.style.pointerEvents="none",Y.style.pointerEvents="auto",G.style.pointerEvents="auto",()=>{U.style.pointerEvents="",Y.style.pointerEvents="",G.style.pointerEvents=""}}}},[s,n,v,l,m,w,N]),Ql(()=>{n||(_.current=void 0,I.current=!1,H(),P())},[n,H,P]),S.useEffect(()=>()=>{H(),aa($),aa(T),P()},[s,l.domReference,H,P]);const B=S.useMemo(()=>{function F(q){_.current=q.pointerType}return{onPointerDown:F,onPointerEnter:F,onMouseMove(q){const{nativeEvent:G}=q;function U(){!A.current&&!k.current&&o(!0,G,"hover")}u&&!G9(_.current)||n||tS(C.current)===0||I.current&&q.movementX**2+q.movementY**2<2||(aa(T),_.current==="touch"?U():(I.current=!0,T.current=window.setTimeout(U,tS(C.current))))}}},[u,o,n,k,C]);return S.useMemo(()=>s?{reference:B}:{},[s,B])}const rS=()=>{},FU=S.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:rS,setState:rS,isInstantPhase:!1}),mAe=()=>S.useContext(FU);function VU(e){const{children:r,delay:n,timeoutMs:o=0}=e,[i,a]=S.useReducer((c,d)=>({...c,...d}),{delay:n,timeoutMs:o,initialDelay:n,currentId:null,isInstantPhase:!1}),l=S.useRef(null),s=S.useCallback(c=>{a({currentId:c})},[]);return Ql(()=>{i.currentId?l.current===null?l.current=i.currentId:i.isInstantPhase||a({isInstantPhase:!0}):(i.isInstantPhase&&a({isInstantPhase:!1}),l.current=null)},[i.currentId,i.isInstantPhase]),y.jsx(FU.Provider,{value:S.useMemo(()=>({...i,setState:a,setCurrentId:s}),[i,s]),children:r})}function qU(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,floatingId:i}=e,{id:a,enabled:l=!0}=r,s=a??i,c=mAe(),{currentId:d,setCurrentId:u,initialDelay:p,setState:f,timeoutMs:m}=c;return Ql(()=>{l&&d&&(f({delay:{open:1,close:e3(p,"close")}}),d!==s&&o(!1))},[l,s,o,f,d,p]),Ql(()=>{function v(){o(!1),f({delay:p,currentId:null})}if(l&&d&&!n&&d===s){if(m){const w=window.setTimeout(v,m);return()=>{clearTimeout(w)}}v()}},[l,n,f,d,s,o,p,m]),Ql(()=>{l&&(u===rS||!n||u(s))},[l,n,u,s]),c}const yAe={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},vAe={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},HU=e=>{var r,n;return{escapeKey:typeof e=="boolean"?e:(r=e?.escapeKey)!=null?r:!1,outsidePress:typeof e=="boolean"?e:(n=e?.outsidePress)!=null?n:!0}};function UU(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,elements:i,dataRef:a}=e,{enabled:l=!0,escapeKey:s=!0,outsidePress:c=!0,outsidePressEvent:d="pointerdown",referencePress:u=!1,referencePressEvent:p="pointerdown",ancestorScroll:f=!1,bubbles:m,capture:v}=r,w=J9(),x=Jl(typeof c=="function"?c:()=>!1),k=typeof c=="function"?x:c,C=S.useRef(!1),{escapeKey:_,outsidePress:$}=HU(m),{escapeKey:R,outsidePress:T}=HU(v),A=S.useRef(!1),z=Jl(P=>{var V;if(!n||!l||!s||P.key!=="Escape"||A.current)return;const B=(V=a.current.floatingContext)==null?void 0:V.nodeId,F=w?Gw(w.nodesRef.current,B):[];if(!_&&(P.stopPropagation(),F.length>0)){let q=!0;if(F.forEach(G=>{var U;if((U=G.context)!=null&&U.open&&!G.context.dataRef.current.__escapeKeyBubbles){q=!1;return}}),!q)return}o(!1,mje(P)?P.nativeEvent:P,"escape-key")}),j=Jl(P=>{var V;const B=()=>{var F;z(P),(F=Rf(P))==null||F.removeEventListener("keydown",B)};(V=Rf(P))==null||V.addEventListener("keydown",B)}),I=Jl(P=>{var V;const B=a.current.insideReactTree;a.current.insideReactTree=!1;const F=C.current;if(C.current=!1,d==="click"&&F||B||typeof k=="function"&&!k(P))return;const q=Rf(P),G="["+eS("inert")+"]",U=op(i.floating).querySelectorAll(G);let Y=Ar(q)?q:null;for(;Y&&!Xs(Y);){const Z=Ks(Y);if(Xs(Z)||!Ar(Z))break;Y=Z}if(U.length&&Ar(q)&&!pje(q)&&!dy(q,i.floating)&&Array.from(U).every(Z=>!dy(Y,Z)))return;if($i(q)&&H){const Z=Xs(q),Q=ia(q),ie=/auto|scroll/,te=Z||ie.test(Q.overflowX),re=Z||ie.test(Q.overflowY),ue=te&&q.clientWidth>0&&q.scrollWidth>q.clientWidth,_e=re&&q.clientHeight>0&&q.scrollHeight>q.clientHeight,ce=Q.direction==="rtl",pe=_e&&(ce?P.offsetX<=q.offsetWidth-q.clientWidth:P.offsetX>q.clientWidth),xe=ue&&P.offsetY>q.clientHeight;if(pe||xe)return}const K=(V=a.current.floatingContext)==null?void 0:V.nodeId,O=w&&Gw(w.nodesRef.current,K).some(Z=>{var Q;return W9(P,(Q=Z.context)==null?void 0:Q.elements.floating)});if(W9(P,i.floating)||W9(P,i.domReference)||O)return;const W=w?Gw(w.nodesRef.current,K):[];if(W.length>0){let Z=!0;if(W.forEach(Q=>{var ie;if((ie=Q.context)!=null&&ie.open&&!Q.context.dataRef.current.__outsidePressBubbles){Z=!1;return}}),!Z)return}o(!1,P,"outside-press")}),N=Jl(P=>{var V;const B=()=>{var F;I(P),(F=Rf(P))==null||F.removeEventListener(d,B)};(V=Rf(P))==null||V.addEventListener(d,B)});S.useEffect(()=>{if(!n||!l)return;a.current.__escapeKeyBubbles=_,a.current.__outsidePressBubbles=$;let P=-1;function V(U){o(!1,U,"ancestor-scroll")}function B(){window.clearTimeout(P),A.current=!0}function F(){P=window.setTimeout(()=>{A.current=!1},Fw()?5:0)}const q=op(i.floating);s&&(q.addEventListener("keydown",R?j:z,R),q.addEventListener("compositionstart",B),q.addEventListener("compositionend",F)),k&&q.addEventListener(d,T?N:I,T);let G=[];return f&&(Ar(i.domReference)&&(G=Zs(i.domReference)),Ar(i.floating)&&(G=G.concat(Zs(i.floating))),!Ar(i.reference)&&i.reference&&i.reference.contextElement&&(G=G.concat(Zs(i.reference.contextElement)))),G=G.filter(U=>{var Y;return U!==((Y=q.defaultView)==null?void 0:Y.visualViewport)}),G.forEach(U=>{U.addEventListener("scroll",V,{passive:!0})}),()=>{s&&(q.removeEventListener("keydown",R?j:z,R),q.removeEventListener("compositionstart",B),q.removeEventListener("compositionend",F)),k&&q.removeEventListener(d,T?N:I,T),G.forEach(U=>{U.removeEventListener("scroll",V)}),window.clearTimeout(P)}},[a,i,s,k,d,n,o,f,l,_,$,z,R,j,I,T,N]),S.useEffect(()=>{a.current.insideReactTree=!1},[a,k,d]);const L=S.useMemo(()=>({onKeyDown:z,...u&&{[yAe[p]]:P=>{o(!1,P.nativeEvent,"reference-press")},...p!=="click"&&{onClick(P){o(!1,P.nativeEvent,"reference-press")}}}}),[z,o,u,p]),H=S.useMemo(()=>({onKeyDown:z,onMouseDown(){C.current=!0},onMouseUp(){C.current=!0},[vAe[d]]:()=>{a.current.insideReactTree=!0}}),[z,d,a]);return S.useMemo(()=>l?{reference:L,floating:H}:{},[l,L,H])}function bAe(e){const{open:r=!1,onOpenChange:n,elements:o}=e,i=IU(),a=S.useRef({}),[l]=S.useState(()=>hAe()),s=Q9()!=null,[c,d]=S.useState(o.reference),u=Jl((m,v,w)=>{a.current.openEvent=m?v:void 0,l.emit("openchange",{open:m,event:v,reason:w,nested:s}),n?.(m,v,w)}),p=S.useMemo(()=>({setPositionReference:d}),[]),f=S.useMemo(()=>({reference:c||o.reference||null,floating:o.floating||null,domReference:o.reference}),[c,o.reference,o.floating]);return S.useMemo(()=>({dataRef:a,open:r,onOpenChange:u,elements:f,events:l,floatingId:i,refs:p}),[r,u,f,l,i,p])}function t3(e){e===void 0&&(e={});const{nodeId:r}=e,n=bAe({...e,elements:{reference:null,floating:null,...e.elements}}),o=e.rootContext||n,i=o.elements,[a,l]=S.useState(null),[s,c]=S.useState(null),d=i?.domReference||a,u=S.useRef(null),p=J9();Ql(()=>{d&&(u.current=d)},[d]);const f=oAe({...e,elements:{...i,...s&&{reference:s}}}),m=S.useCallback(C=>{const _=Ar(C)?{getBoundingClientRect:()=>C.getBoundingClientRect(),getClientRects:()=>C.getClientRects(),contextElement:C}:C;c(_),f.refs.setReference(_)},[f.refs]),v=S.useCallback(C=>{(Ar(C)||C===null)&&(u.current=C,l(C)),(Ar(f.refs.reference.current)||f.refs.reference.current===null||C!==null&&!Ar(C))&&f.refs.setReference(C)},[f.refs]),w=S.useMemo(()=>({...f.refs,setReference:v,setPositionReference:m,domReference:u}),[f.refs,v,m]),x=S.useMemo(()=>({...f.elements,domReference:d}),[f.elements,d]),k=S.useMemo(()=>({...f,...o,refs:w,elements:x,nodeId:r}),[f,w,x,r,o]);return Ql(()=>{o.dataRef.current.floatingContext=k;const C=p?.nodesRef.current.find(_=>_.id===r);C&&(C.context=k)}),S.useMemo(()=>({...f,context:k,refs:w,elements:x}),[f,w,x,k])}function nS(){return cje()&&sje()}function xAe(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,events:i,dataRef:a,elements:l}=e,{enabled:s=!0,visibleOnly:c=!0}=r,d=S.useRef(!1),u=S.useRef(-1),p=S.useRef(!0);S.useEffect(()=>{if(!s)return;const m=ni(l.domReference);function v(){!n&&$i(l.domReference)&&l.domReference===sU(op(l.domReference))&&(d.current=!0)}function w(){p.current=!0}function x(){p.current=!1}return m.addEventListener("blur",v),nS()&&(m.addEventListener("keydown",w,!0),m.addEventListener("pointerdown",x,!0)),()=>{m.removeEventListener("blur",v),nS()&&(m.removeEventListener("keydown",w,!0),m.removeEventListener("pointerdown",x,!0))}},[l.domReference,n,s]),S.useEffect(()=>{if(!s)return;function m(v){let{reason:w}=v;(w==="reference-press"||w==="escape-key")&&(d.current=!0)}return i.on("openchange",m),()=>{i.off("openchange",m)}},[i,s]),S.useEffect(()=>()=>{aa(u)},[]);const f=S.useMemo(()=>({onMouseLeave(){d.current=!1},onFocus(m){if(d.current)return;const v=Rf(m.nativeEvent);if(c&&Ar(v)){if(nS()&&!m.relatedTarget){if(!p.current&&!hje(v))return}else if(!fje(v))return}o(!0,m.nativeEvent,"focus")},onBlur(m){d.current=!1;const v=m.relatedTarget,w=m.nativeEvent,x=Ar(v)&&v.hasAttribute(eS("focus-guard"))&&v.getAttribute("data-type")==="outside";u.current=window.setTimeout(()=>{var k;const C=sU(l.domReference?l.domReference.ownerDocument:document);!v&&C===l.domReference||dy((k=a.current.floatingContext)==null?void 0:k.refs.floating.current,C)||dy(l.domReference,C)||x||o(!1,w,"focus")})}}),[a,l.domReference,o,c]);return S.useMemo(()=>s?{reference:f}:{},[s,f])}function oS(e,r,n){const o=new Map,i=n==="item";let a=e;if(i&&e){const{[PU]:l,[MU]:s,...c}=e;a=c}return{...n==="floating"&&{tabIndex:-1,[sAe]:""},...a,...r.map(l=>{const s=l?l[n]:null;return typeof s=="function"?e?s(e):null:s}).concat(e).reduce((l,s)=>(s&&Object.entries(s).forEach(c=>{let[d,u]=c;if(!(i&&[PU,MU].includes(d)))if(d.indexOf("on")===0){if(o.has(d)||o.set(d,[]),typeof u=="function"){var p;(p=o.get(d))==null||p.push(u),l[d]=function(){for(var f,m=arguments.length,v=new Array(m),w=0;wx(...v)).find(x=>x!==void 0)}}}else l[d]=u}),l),{})}}function WU(e){e===void 0&&(e=[]);const r=e.map(s=>s?.reference),n=e.map(s=>s?.floating),o=e.map(s=>s?.item),i=S.useCallback(s=>oS(s,e,"reference"),r),a=S.useCallback(s=>oS(s,e,"floating"),n),l=S.useCallback(s=>oS(s,e,"item"),o);return S.useMemo(()=>({getReferenceProps:i,getFloatingProps:a,getItemProps:l}),[i,a,l])}const wAe=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function GU(e,r){var n,o;r===void 0&&(r={});const{open:i,elements:a,floatingId:l}=e,{enabled:s=!0,role:c="dialog"}=r,d=IU(),u=((n=a.domReference)==null?void 0:n.id)||d,p=S.useMemo(()=>{var k;return((k=gje(a.floating))==null?void 0:k.id)||l},[a.floating,l]),f=(o=wAe.get(c))!=null?o:c,m=Q9()!=null,v=S.useMemo(()=>f==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]:i?p:void 0}:{"aria-expanded":i?"true":"false","aria-haspopup":f==="alertdialog"?"dialog":f,"aria-controls":i?p:void 0,...f==="listbox"&&{role:"combobox"},...f==="menu"&&{id:u},...f==="menu"&&m&&{role:"menuitem"},...c==="select"&&{"aria-autocomplete":"none"},...c==="combobox"&&{"aria-autocomplete":"list"}},[f,p,m,i,u,c]),w=S.useMemo(()=>{const k={id:p,...f&&{role:f}};return f==="tooltip"||c==="label"?k:{...k,...f==="menu"&&{"aria-labelledby":u}}},[f,p,u,c]),x=S.useCallback(k=>{let{active:C,selected:_}=k;const $={role:"option",...C&&{id:p+"-fui-option"}};switch(c){case"select":case"combobox":return{...$,"aria-selected":_}}return{}},[p,c]);return S.useMemo(()=>s?{reference:v,floating:w,item:x}:{},[s,v,w,x])}const[kAe,la]=na("ScrollArea.Root component was not found in tree");function jf(e,r){const n=Qn(r);xf(()=>{let o=0;if(e){const i=new ResizeObserver(()=>{cancelAnimationFrame(o),o=window.requestAnimationFrame(n)});return i.observe(e),()=>{window.cancelAnimationFrame(o),i.unobserve(e)}}},[e,n])}const _Ae=S.forwardRef((e,r)=>{const{style:n,...o}=e,i=la(),[a,l]=S.useState(0),[s,c]=S.useState(0),d=!!(a&&s);return jf(i.scrollbarX,()=>{const u=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(u),c(u)}),jf(i.scrollbarY,()=>{const u=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(u),l(u)}),d?y.jsx("div",{...o,ref:r,style:{...n,width:a,height:s}}):null}),SAe=S.forwardRef((e,r)=>{const n=la(),o=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&o?y.jsx(_Ae,{...e,ref:r}):null}),EAe={scrollHideDelay:1e3,type:"hover"},YU=S.forwardRef((e,r)=>{const{type:n,scrollHideDelay:o,scrollbars:i,getStyles:a,...l}=Pe("ScrollAreaRoot",EAe,e),[s,c]=S.useState(null),[d,u]=S.useState(null),[p,f]=S.useState(null),[m,v]=S.useState(null),[w,x]=S.useState(null),[k,C]=S.useState(0),[_,$]=S.useState(0),[R,T]=S.useState(!1),[A,z]=S.useState(!1),j=$r(r,I=>c(I));return y.jsx(kAe,{value:{type:n,scrollHideDelay:o,scrollArea:s,viewport:d,onViewportChange:u,content:p,onContentChange:f,scrollbarX:m,onScrollbarXChange:v,scrollbarXEnabled:R,onScrollbarXEnabledChange:T,scrollbarY:w,onScrollbarYChange:x,scrollbarYEnabled:A,onScrollbarYEnabledChange:z,onCornerWidthChange:C,onCornerHeightChange:$,getStyles:a},children:y.jsx(Se,{...l,ref:j,__vars:{"--sa-corner-width":i!=="xy"?"0px":`${k}px`,"--sa-corner-height":i!=="xy"?"0px":`${_}px`}})})});YU.displayName="@mantine/core/ScrollAreaRoot";function XU(e,r){const n=e/r;return Number.isNaN(n)?0:n}function r3(e){const r=XU(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=(e.scrollbar.size-n)*r;return Math.max(o,18)}function KU(e,r){return n=>{if(e[0]===e[1]||r[0]===r[1])return r[0];const o=(r[1]-r[0])/(e[1]-e[0]);return r[0]+o*(n-e[0])}}function CAe(e,[r,n]){return Math.min(n,Math.max(r,e))}function ZU(e,r,n="ltr"){const o=r3(r),i=r.scrollbar.paddingStart+r.scrollbar.paddingEnd,a=r.scrollbar.size-i,l=r.content-r.viewport,s=a-o,c=n==="ltr"?[0,l]:[l*-1,0],d=CAe(e,c);return KU([0,l],[0,s])(d)}function $Ae(e,r,n,o="ltr"){const i=r3(n),a=i/2,l=r||a,s=i-l,c=n.scrollbar.paddingStart+l,d=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,p=o==="ltr"?[0,u]:[u*-1,0];return KU([c,d],p)(e)}function QU(e,r){return e>0&&e{e?.(o),(n===!1||!o.defaultPrevented)&&r?.(o)}}const[RAe,JU]=na("ScrollAreaScrollbar was not found in tree"),eW=S.forwardRef((e,r)=>{const{sizes:n,hasThumb:o,onThumbChange:i,onThumbPointerUp:a,onThumbPointerDown:l,onThumbPositionChange:s,onDragScroll:c,onWheelScroll:d,onResize:u,...p}=e,f=la(),[m,v]=S.useState(null),w=$r(r,z=>v(z)),x=S.useRef(null),k=S.useRef(""),{viewport:C}=f,_=n.content-n.viewport,$=Qn(d),R=Qn(s),T=bf(u,10),A=z=>{if(x.current){const j=z.clientX-x.current.left,I=z.clientY-x.current.top;c({x:j,y:I})}};return S.useEffect(()=>{const z=j=>{const I=j.target;m?.contains(I)&&$(j,_)};return document.addEventListener("wheel",z,{passive:!1}),()=>document.removeEventListener("wheel",z,{passive:!1})},[C,m,_,$]),S.useEffect(R,[n,R]),jf(m,T),jf(f.content,T),y.jsx(RAe,{value:{scrollbar:m,hasThumb:o,onThumbChange:Qn(i),onThumbPointerUp:Qn(a),onThumbPositionChange:R,onThumbPointerDown:Qn(l)},children:y.jsx("div",{...p,ref:w,"data-mantine-scrollbar":!0,style:{position:"absolute",...p.style},onPointerDown:ap(e.onPointerDown,z=>{z.preventDefault(),z.button===0&&(z.target.setPointerCapture(z.pointerId),x.current=m.getBoundingClientRect(),k.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",A(z))}),onPointerMove:ap(e.onPointerMove,A),onPointerUp:ap(e.onPointerUp,z=>{const j=z.target;j.hasPointerCapture(z.pointerId)&&(z.preventDefault(),j.releasePointerCapture(z.pointerId))}),onLostPointerCapture:()=>{document.body.style.webkitUserSelect=k.current,x.current=null}})})}),tW=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:i,...a}=e,l=la(),[s,c]=S.useState(),d=S.useRef(null),u=$r(r,d,l.onScrollbarXChange);return S.useEffect(()=>{d.current&&c(getComputedStyle(d.current))},[d]),y.jsx(eW,{"data-orientation":"horizontal",...a,ref:u,sizes:n,style:{...i,"--sa-thumb-width":`${r3(n)}px`},onThumbPointerDown:p=>e.onThumbPointerDown(p.x),onDragScroll:p=>e.onDragScroll(p.x),onWheelScroll:(p,f)=>{if(l.viewport){const m=l.viewport.scrollLeft+p.deltaX;e.onWheelScroll(m),QU(m,f)&&p.preventDefault()}},onResize:()=>{d.current&&l.viewport&&s&&o({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:d.current.clientWidth,paddingStart:xd(s.paddingLeft),paddingEnd:xd(s.paddingRight)}})}})});tW.displayName="@mantine/core/ScrollAreaScrollbarX";const rW=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:i,...a}=e,l=la(),[s,c]=S.useState(),d=S.useRef(null),u=$r(r,d,l.onScrollbarYChange);return S.useEffect(()=>{d.current&&c(window.getComputedStyle(d.current))},[]),y.jsx(eW,{...a,"data-orientation":"vertical",ref:u,sizes:n,style:{"--sa-thumb-height":`${r3(n)}px`,...i},onThumbPointerDown:p=>e.onThumbPointerDown(p.y),onDragScroll:p=>e.onDragScroll(p.y),onWheelScroll:(p,f)=>{if(l.viewport){const m=l.viewport.scrollTop+p.deltaY;e.onWheelScroll(m),QU(m,f)&&p.preventDefault()}},onResize:()=>{d.current&&l.viewport&&s&&o({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:d.current.clientHeight,paddingStart:xd(s.paddingTop),paddingEnd:xd(s.paddingBottom)}})}})});rW.displayName="@mantine/core/ScrollAreaScrollbarY";const n3=S.forwardRef((e,r)=>{const{orientation:n="vertical",...o}=e,{dir:i}=bd(),a=la(),l=S.useRef(null),s=S.useRef(0),[c,d]=S.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=XU(c.viewport,c.content),p={...o,sizes:c,onSizesChange:d,hasThumb:u>0&&u<1,onThumbChange:m=>{l.current=m},onThumbPointerUp:()=>{s.current=0},onThumbPointerDown:m=>{s.current=m}},f=(m,v)=>$Ae(m,s.current,c,v);return n==="horizontal"?y.jsx(tW,{...p,ref:r,onThumbPositionChange:()=>{if(a.viewport&&l.current){const m=a.viewport.scrollLeft,v=ZU(m,c,i);l.current.style.transform=`translate3d(${v}px, 0, 0)`}},onWheelScroll:m=>{a.viewport&&(a.viewport.scrollLeft=m)},onDragScroll:m=>{a.viewport&&(a.viewport.scrollLeft=f(m,i))}}):n==="vertical"?y.jsx(rW,{...p,ref:r,onThumbPositionChange:()=>{if(a.viewport&&l.current){const m=a.viewport.scrollTop,v=ZU(m,c);c.scrollbar.size===0?l.current.style.setProperty("--thumb-opacity","0"):l.current.style.setProperty("--thumb-opacity","1"),l.current.style.transform=`translate3d(0, ${v}px, 0)`}},onWheelScroll:m=>{a.viewport&&(a.viewport.scrollTop=m)},onDragScroll:m=>{a.viewport&&(a.viewport.scrollTop=f(m))}}):null});n3.displayName="@mantine/core/ScrollAreaScrollbarVisible";const iS=S.forwardRef((e,r)=>{const n=la(),{forceMount:o,...i}=e,[a,l]=S.useState(!1),s=e.orientation==="horizontal",c=bf(()=>{if(n.viewport){const d=n.viewport.offsetWidth{const{forceMount:n,...o}=e,i=la(),[a,l]=S.useState(!1);return S.useEffect(()=>{const{scrollArea:s}=i;let c=0;if(s){const d=()=>{window.clearTimeout(c),l(!0)},u=()=>{c=window.setTimeout(()=>l(!1),i.scrollHideDelay)};return s.addEventListener("pointerenter",d),s.addEventListener("pointerleave",u),()=>{window.clearTimeout(c),s.removeEventListener("pointerenter",d),s.removeEventListener("pointerleave",u)}}},[i.scrollArea,i.scrollHideDelay]),n||a?y.jsx(iS,{"data-state":a?"visible":"hidden",...o,ref:r}):null});nW.displayName="@mantine/core/ScrollAreaScrollbarHover";const zAe=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,i=la(),a=e.orientation==="horizontal",[l,s]=S.useState("hidden"),c=bf(()=>s("idle"),100);return S.useEffect(()=>{if(l==="idle"){const d=window.setTimeout(()=>s("hidden"),i.scrollHideDelay);return()=>window.clearTimeout(d)}},[l,i.scrollHideDelay]),S.useEffect(()=>{const{viewport:d}=i,u=a?"scrollLeft":"scrollTop";if(d){let p=d[u];const f=()=>{const m=d[u];p!==m&&(s("scrolling"),c()),p=m};return d.addEventListener("scroll",f),()=>d.removeEventListener("scroll",f)}},[i.viewport,a,c]),n||l!=="hidden"?y.jsx(n3,{"data-state":l==="hidden"?"hidden":"visible",...o,ref:r,onPointerEnter:ap(e.onPointerEnter,()=>s("interacting")),onPointerLeave:ap(e.onPointerLeave,()=>s("idle"))}):null}),aS=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,i=la(),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:l}=i,s=e.orientation==="horizontal";return S.useEffect(()=>(s?a(!0):l(!0),()=>{s?a(!1):l(!1)}),[s,a,l]),i.type==="hover"?y.jsx(nW,{...o,ref:r,forceMount:n}):i.type==="scroll"?y.jsx(zAe,{...o,ref:r,forceMount:n}):i.type==="auto"?y.jsx(iS,{...o,ref:r,forceMount:n}):i.type==="always"?y.jsx(n3,{...o,ref:r}):null});aS.displayName="@mantine/core/ScrollAreaScrollbar";function TAe(e,r=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},o=0;return(function i(){const a={left:e.scrollLeft,top:e.scrollTop},l=n.left!==a.left,s=n.top!==a.top;(l||s)&&r(),n=a,o=window.requestAnimationFrame(i)})(),()=>window.cancelAnimationFrame(o)}const oW=S.forwardRef((e,r)=>{const{style:n,...o}=e,i=la(),a=JU(),{onThumbPositionChange:l}=a,s=$r(r,u=>a.onThumbChange(u)),c=S.useRef(void 0),d=bf(()=>{c.current&&(c.current(),c.current=void 0)},100);return S.useEffect(()=>{const{viewport:u}=i;if(u){const p=()=>{if(d(),!c.current){const f=TAe(u,l);c.current=f,l()}};return l(),u.addEventListener("scroll",p),()=>u.removeEventListener("scroll",p)}},[i.viewport,d,l]),y.jsx("div",{"data-state":a.hasThumb?"visible":"hidden",...o,ref:s,style:{width:"var(--sa-thumb-width)",height:"var(--sa-thumb-height)",...n},onPointerDownCapture:ap(e.onPointerDownCapture,u=>{const p=u.target.getBoundingClientRect(),f=u.clientX-p.left,m=u.clientY-p.top;a.onThumbPointerDown({x:f,y:m})}),onPointerUp:ap(e.onPointerUp,a.onThumbPointerUp)})});oW.displayName="@mantine/core/ScrollAreaThumb";const lS=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,i=JU();return n||i.hasThumb?y.jsx(oW,{ref:r,...o}):null});lS.displayName="@mantine/core/ScrollAreaThumb";const iW=S.forwardRef(({children:e,style:r,...n},o)=>{const i=la(),a=$r(o,i.onViewportChange);return y.jsx(Se,{...n,ref:a,style:{overflowX:i.scrollbarXEnabled?"scroll":"hidden",overflowY:i.scrollbarYEnabled?"scroll":"hidden",...r},children:y.jsx("div",{...i.getStyles("content"),ref:i.onContentChange,children:e})})});iW.displayName="@mantine/core/ScrollAreaViewport";var sS={root:"m_d57069b5",content:"m_b1336c6",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const aW={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},jAe=(e,{scrollbarSize:r,overscrollBehavior:n})=>({root:{"--scrollarea-scrollbar-size":$e(r),"--scrollarea-over-scroll-behavior":n}}),es=ot((e,r)=>{const n=Pe("ScrollArea",aW,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,scrollbarSize:c,vars:d,type:u,scrollHideDelay:p,viewportProps:f,viewportRef:m,onScrollPositionChange:v,children:w,offsetScrollbars:x,scrollbars:k,onBottomReached:C,onTopReached:_,overscrollBehavior:$,attributes:R,...T}=n,[A,z]=S.useState(!1),[j,I]=S.useState(!1),[N,L]=S.useState(!1),H=kt({name:"ScrollArea",props:n,classes:sS,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:R,vars:d,varsResolver:jAe}),P=S.useRef(null),V=DU([m,P]);return S.useEffect(()=>{if(!P.current||x!=="present")return;const B=P.current,F=new ResizeObserver(()=>{const{scrollHeight:q,clientHeight:G,scrollWidth:U,clientWidth:Y}=B;I(q>G),L(U>Y)});return F.observe(B),()=>F.disconnect()},[P,x]),y.jsxs(YU,{getStyles:H,type:u==="never"?"always":u,scrollHideDelay:p,ref:r,scrollbars:k,...H("root"),...T,children:[y.jsx(iW,{...f,...H("viewport",{style:f?.style}),ref:V,"data-offset-scrollbars":x===!0?"xy":x||void 0,"data-scrollbars":k||void 0,"data-horizontal-hidden":x==="present"&&!N?"true":void 0,"data-vertical-hidden":x==="present"&&!j?"true":void 0,onScroll:B=>{f?.onScroll?.(B),v?.({x:B.currentTarget.scrollLeft,y:B.currentTarget.scrollTop});const{scrollTop:F,scrollHeight:q,clientHeight:G}=B.currentTarget;F-(q-G)>=-.6&&C?.(),F===0&&_?.()},children:w}),(k==="xy"||k==="x")&&y.jsx(aS,{...H("scrollbar"),orientation:"horizontal","data-hidden":u==="never"||x==="present"&&!N?!0:void 0,forceMount:!0,onMouseEnter:()=>z(!0),onMouseLeave:()=>z(!1),children:y.jsx(lS,{...H("thumb")})}),(k==="xy"||k==="y")&&y.jsx(aS,{...H("scrollbar"),orientation:"vertical","data-hidden":u==="never"||x==="present"&&!j?!0:void 0,forceMount:!0,onMouseEnter:()=>z(!0),onMouseLeave:()=>z(!1),children:y.jsx(lS,{...H("thumb")})}),y.jsx(SAe,{...H("corner"),"data-hovered":A||void 0,"data-hidden":u==="never"||void 0})]})});es.displayName="@mantine/core/ScrollArea";const oi=ot((e,r)=>{const{children:n,classNames:o,styles:i,scrollbarSize:a,scrollHideDelay:l,type:s,dir:c,offsetScrollbars:d,viewportRef:u,onScrollPositionChange:p,unstyled:f,variant:m,viewportProps:v,scrollbars:w,style:x,vars:k,onBottomReached:C,onTopReached:_,onOverflowChange:$,...R}=Pe("ScrollAreaAutosize",aW,e),T=S.useRef(null),A=DU([u,T]),[z,j]=S.useState(!1),I=S.useRef(!1);return S.useEffect(()=>{if(!$)return;const N=T.current;if(!N)return;const L=()=>{const P=N.scrollHeight>N.clientHeight;P!==z&&(I.current?$?.(P):(I.current=!0,P&&$?.(!0)),j(P))};L();const H=new ResizeObserver(L);return H.observe(N),()=>H.disconnect()},[$,z]),y.jsx(Se,{...R,ref:r,style:[{display:"flex",overflow:"hidden"},x],children:y.jsx(Se,{style:{display:"flex",flexDirection:"column",flex:1,overflow:"hidden",...w==="y"&&{minWidth:0},...w==="x"&&{minHeight:0},...w==="xy"&&{minWidth:0,minHeight:0},...w===!1&&{minWidth:0,minHeight:0}},children:y.jsx(es,{classNames:o,styles:i,scrollHideDelay:l,scrollbarSize:a,type:s,dir:c,offsetScrollbars:d,viewportRef:A,onScrollPositionChange:p,unstyled:f,variant:m,viewportProps:v,vars:k,scrollbars:w,onBottomReached:C,onTopReached:_,"data-autosize":"true",children:n})})})});es.classes=sS,oi.displayName="@mantine/core/ScrollAreaAutosize",oi.classes=sS,es.Autosize=oi;var lW={root:"m_87cf2631"};const AAe={__staticSelector:"UnstyledButton"},pr=Jn((e,r)=>{const n=Pe("UnstyledButton",AAe,e),{className:o,component:i="button",__staticSelector:a,unstyled:l,classNames:s,styles:c,style:d,attributes:u,...p}=n,f=kt({name:a,props:n,classes:lW,className:o,style:d,classNames:s,styles:c,unstyled:l,attributes:u});return y.jsx(Se,{...f("root",{focusable:!0}),component:i,ref:r,type:i==="button"?"button":void 0,...p})});pr.classes=lW,pr.displayName="@mantine/core/UnstyledButton";var sW={root:"m_515a97f8"};const o3=ot((e,r)=>{const n=Pe("VisuallyHidden",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,attributes:d,...u}=n,p=kt({name:"VisuallyHidden",classes:sW,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:d});return y.jsx(Se,{component:"span",ref:r,...p("root"),...u})});o3.classes=sW,o3.displayName="@mantine/core/VisuallyHidden";var cW={root:"m_1b7284a3"};const DAe=(e,{radius:r,shadow:n})=>({root:{"--paper-radius":r===void 0?void 0:wn(r),"--paper-shadow":uH(n)}}),Af=Jn((e,r)=>{const n=Pe("Paper",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,withBorder:c,vars:d,radius:u,shadow:p,variant:f,mod:m,attributes:v,...w}=n,x=kt({name:"Paper",props:n,classes:cW,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:v,vars:d,varsResolver:DAe});return y.jsx(Se,{ref:r,mod:[{"data-with-border":c},m],...x("root"),variant:f,...w})});Af.classes=cW,Af.displayName="@mantine/core/Paper";function dW(e,r,n,o){return e==="center"||o==="center"?{top:r}:e==="end"?{bottom:n}:e==="start"?{top:n}:{}}function uW(e,r,n,o,i){return e==="center"||o==="center"?{left:r}:e==="end"?{[i==="ltr"?"right":"left"]:n}:e==="start"?{[i==="ltr"?"left":"right"]:n}:{}}const PAe={bottom:"borderTopLeftRadius",left:"borderTopRightRadius",right:"borderBottomLeftRadius",top:"borderBottomRightRadius"};function MAe({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:i,arrowX:a,arrowY:l,dir:s}){const[c,d="center"]=e.split("-"),u={width:r,height:r,transform:"rotate(45deg)",position:"absolute",[PAe[c]]:o},p=-r/2;return c==="left"?{...u,...dW(d,l,n,i),right:p,borderLeftColor:"transparent",borderBottomColor:"transparent",clipPath:"polygon(100% 0, 0 0, 100% 100%)"}:c==="right"?{...u,...dW(d,l,n,i),left:p,borderRightColor:"transparent",borderTopColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 100%)"}:c==="top"?{...u,...uW(d,a,n,i,s),bottom:p,borderTopColor:"transparent",borderLeftColor:"transparent",clipPath:"polygon(0 100%, 100% 100%, 100% 0)"}:c==="bottom"?{...u,...uW(d,a,n,i,s),top:p,borderBottomColor:"transparent",borderRightColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 0)"}:{}}const i3=S.forwardRef(({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:i,visible:a,arrowX:l,arrowY:s,style:c,...d},u)=>{const{dir:p}=bd();return a?y.jsx("div",{...d,ref:u,style:{...c,...MAe({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:i,dir:p,arrowX:l,arrowY:s})}}):null});i3.displayName="@mantine/core/FloatingArrow";function pW(e,r){if(e==="rtl"&&(r.includes("right")||r.includes("left"))){const[n,o]=r.split("-"),i=n==="right"?"left":"right";return o===void 0?i:`${i}-${o}`}return r}var hW={root:"m_9814e45f"};const NAe={zIndex:Ew("modal")},BAe=(e,{gradient:r,color:n,backgroundOpacity:o,blur:i,radius:a,zIndex:l})=>({root:{"--overlay-bg":r||(n!==void 0||o!==void 0)&&Xl(n||"#000",o??.6)||void 0,"--overlay-filter":i?`blur(${$e(i)})`:void 0,"--overlay-radius":a===void 0?void 0:wn(a),"--overlay-z-index":l?.toString()}}),cS=Jn((e,r)=>{const n=Pe("Overlay",NAe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,fixed:d,center:u,children:p,radius:f,zIndex:m,gradient:v,blur:w,color:x,backgroundOpacity:k,mod:C,attributes:_,...$}=n,R=kt({name:"Overlay",props:n,classes:hW,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:BAe});return y.jsx(Se,{ref:r,...R("root"),mod:[{center:u,fixed:d},C],...$,children:p})});cS.classes=hW,cS.displayName="@mantine/core/Overlay";function dS(e){const r=document.createElement("div");return r.setAttribute("data-portal","true"),typeof e.className=="string"&&r.classList.add(...e.className.split(" ").filter(Boolean)),typeof e.style=="object"&&Object.assign(r.style,e.style),typeof e.id=="string"&&r.setAttribute("id",e.id),r}function IAe({target:e,reuseTargetNode:r,...n}){if(e)return typeof e=="string"?document.querySelector(e)||dS(n):e;if(r){const o=document.querySelector("[data-mantine-shared-portal-node]");if(o)return o;const i=dS(n);return i.setAttribute("data-mantine-shared-portal-node","true"),document.body.appendChild(i),i}return dS(n)}const OAe={reuseTargetNode:!0},py=ot((e,r)=>{const{children:n,target:o,reuseTargetNode:i,...a}=Pe("Portal",OAe,e),[l,s]=S.useState(!1),c=S.useRef(null);return xf(()=>(s(!0),c.current=IAe({target:o,reuseTargetNode:i,...a}),v9(r,c.current),!o&&!i&&c.current&&document.body.appendChild(c.current),()=>{!o&&!i&&c.current&&document.body.removeChild(c.current)}),[o]),!l||!c.current?null:Va.createPortal(y.jsx(y.Fragment,{children:n}),c.current)});py.displayName="@mantine/core/Portal";const Df=ot(({withinPortal:e=!0,children:r,...n},o)=>Dw()==="test"||!e?y.jsx(y.Fragment,{children:r}):y.jsx(py,{ref:o,...n,children:r}));Df.displayName="@mantine/core/OptionalPortal";const hy=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${e==="bottom"?10:-10}px)`},transitionProperty:"transform, opacity"}),a3={fade:{in:{opacity:1},out:{opacity:0},transitionProperty:"opacity"},"fade-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(30px)"},transitionProperty:"opacity, transform"},"fade-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-30px)"},transitionProperty:"opacity, transform"},"fade-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(30px)"},transitionProperty:"opacity, transform"},"fade-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-30px)"},transitionProperty:"opacity, transform"},scale:{in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:"scale(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-y":{in:{opacity:1,transform:"scaleY(1)"},out:{opacity:0,transform:"scaleY(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-x":{in:{opacity:1,transform:"scaleX(1)"},out:{opacity:0,transform:"scaleX(0)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"skew-up":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(-20px) skew(-10deg, -5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"skew-down":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(20px) skew(-10deg, -5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-left":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(-5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-right":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-100%)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(100%)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"slide-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(100%)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"slide-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-100%)"},common:{transformOrigin:"right"},transitionProperty:"transform, opacity"},pop:{...hy("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...hy("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...hy("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...hy("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...hy("top"),common:{transformOrigin:"top right"}}},fW={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function LAe({transition:e,state:r,duration:n,timingFunction:o}){const i={WebkitBackfaceVisibility:"hidden",transitionDuration:`${n}ms`,transitionTimingFunction:o};return typeof e=="string"?e in a3?{transitionProperty:a3[e].transitionProperty,...i,...a3[e].common,...a3[e][fW[r]]}:{}:{transitionProperty:e.transitionProperty,...i,...e.common,...e[fW[r]]}}function FAe({duration:e,exitDuration:r,timingFunction:n,mounted:o,onEnter:i,onExit:a,onEntered:l,onExited:s,enterDelay:c,exitDelay:d}){const u=lo(),p=_H(),f=u.respectReducedMotion?p:!1,[m,v]=S.useState(f?0:e),[w,x]=S.useState(o?"entered":"exited"),k=S.useRef(-1),C=S.useRef(-1),_=S.useRef(-1);function $(){window.clearTimeout(k.current),window.clearTimeout(C.current),cancelAnimationFrame(_.current)}const R=A=>{$();const z=A?i:a,j=A?l:s,I=f?0:A?e:r;v(I),I===0?(typeof z=="function"&&z(),typeof j=="function"&&j(),x(A?"entered":"exited")):_.current=requestAnimationFrame(()=>{YM.flushSync(()=>{x(A?"pre-entering":"pre-exiting")}),_.current=requestAnimationFrame(()=>{typeof z=="function"&&z(),x(A?"entering":"exiting"),k.current=window.setTimeout(()=>{typeof j=="function"&&j(),x(A?"entered":"exited")},I)})})},T=A=>{if($(),typeof(A?c:d)!="number"){R(A);return}C.current=window.setTimeout(()=>{R(A)},A?c:d)};return wf(()=>{T(o)},[o]),S.useEffect(()=>()=>{$()},[]),{transitionDuration:m,transitionStatus:w,transitionTimingFunction:n||"ease"}}function wd({keepMounted:e,transition:r="fade",duration:n=250,exitDuration:o=n,mounted:i,children:a,timingFunction:l="ease",onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f}){const m=Dw(),{transitionDuration:v,transitionStatus:w,transitionTimingFunction:x}=FAe({mounted:i,exitDuration:o,duration:n,timingFunction:l,onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f});return v===0||m==="test"?i?y.jsx(y.Fragment,{children:a({})}):e?a({display:"none"}):null:w==="exited"?e?a({display:"none"}):null:y.jsx(y.Fragment,{children:a(LAe({transition:r,duration:v,state:w,timingFunction:x}))})}wd.displayName="@mantine/core/Transition";const[VAe,gW]=na("Popover component was not found in the tree");function l3({children:e,active:r=!0,refProp:n="ref",innerRef:o}){const i=bH(r),a=$r(i,o),l=md(e);return l?S.cloneElement(l,{[n]:a}):e}function mW(e){return y.jsx(o3,{tabIndex:-1,"data-autofocus":!0,...e})}l3.displayName="@mantine/core/FocusTrap",mW.displayName="@mantine/core/FocusTrapInitialFocus",l3.InitialFocus=mW;var yW={dropdown:"m_38a85659",arrow:"m_a31dc6c1",overlay:"m_3d7bc908"};const Qs=ot((e,r)=>{const n=Pe("PopoverDropdown",null,e),{className:o,style:i,vars:a,children:l,onKeyDownCapture:s,variant:c,classNames:d,styles:u,...p}=n,f=gW(),m=ZRe({opened:f.opened,shouldReturnFocus:f.returnFocus}),v=f.withRoles?{"aria-labelledby":f.getTargetId(),id:f.getDropdownId(),role:"dialog",tabIndex:-1}:{},w=$r(r,f.floating);return f.disabled?null:y.jsx(Df,{...f.portalProps,withinPortal:f.withinPortal,children:y.jsx(wd,{mounted:f.opened,...f.transitionProps,transition:f.transitionProps?.transition||"fade",duration:f.transitionProps?.duration??150,keepMounted:f.keepMounted,exitDuration:typeof f.transitionProps?.exitDuration=="number"?f.transitionProps.exitDuration:f.transitionProps?.duration,children:x=>y.jsx(l3,{active:f.trapFocus&&f.opened,innerRef:w,children:y.jsxs(Se,{...v,...p,variant:c,onKeyDownCapture:FRe(()=>{f.onClose?.(),f.onDismiss?.()},{active:f.closeOnEscape,onTrigger:m,onKeyDown:s}),"data-position":f.placement,"data-fixed":f.floatingStrategy==="fixed"||void 0,...f.getStyles("dropdown",{className:o,props:n,classNames:d,styles:u,style:[{...x,zIndex:f.zIndex,top:f.y??0,left:f.x??0,width:f.width==="target"?void 0:$e(f.width),...f.referenceHidden?{display:"none"}:null},f.resolvedStyles.dropdown,u?.dropdown,i]}),children:[l,y.jsx(i3,{ref:f.arrowRef,arrowX:f.arrowX,arrowY:f.arrowY,visible:f.withArrow,position:f.placement,arrowSize:f.arrowSize,arrowRadius:f.arrowRadius,arrowOffset:f.arrowOffset,arrowPosition:f.arrowPosition,...f.getStyles("arrow",{props:n,classNames:d,styles:u})})]})})})})});Qs.classes=yW,Qs.displayName="@mantine/core/PopoverDropdown";const qAe={refProp:"ref",popupType:"dialog"},kd=ot((e,r)=>{const{children:n,refProp:o,popupType:i,...a}=Pe("PopoverTarget",qAe,e),l=md(n);if(!l)throw new Error("Popover.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const s=a,c=gW(),d=$r(c.reference,Rw(l),r),u=c.withRoles?{"aria-haspopup":i,"aria-expanded":c.opened,"aria-controls":c.getDropdownId(),id:c.getTargetId()}:{},p=l.props;return S.cloneElement(l,{...s,...u,...c.targetProps,className:el(c.targetProps.className,s.className,p.className),[o]:d,...c.controlled?null:{onClick:()=>{c.onToggle(),p.onClick?.()}}})});kd.displayName="@mantine/core/PopoverTarget";function HAe(e){if(e===void 0)return{shift:!0,flip:!0};const r={...e};return e.shift===void 0&&(r.shift=!0),e.flip===void 0&&(r.flip=!0),r}function UAe(e,r,n){const o=HAe(e.middlewares),i=[TU(e.offset),lAe()];return e.dropdownVisible&&n!=="test"&&e.preventPositionChangeWhenVisible&&(o.flip=!1),o.shift&&i.push(Z9(typeof o.shift=="boolean"?{limiter:jU(),padding:5}:{limiter:jU(),padding:5,...o.shift})),o.flip&&i.push(typeof o.flip=="boolean"?Jw():Jw(o.flip)),o.inline&&i.push(typeof o.inline=="boolean"?uy():uy(o.inline)),i.push(AU({element:e.arrowRef,padding:e.arrowOffset})),(o.size||e.width==="target")&&i.push(aAe({...typeof o.size=="boolean"?{}:o.size,apply({rects:a,availableWidth:l,availableHeight:s,...c}){const d=r().refs.floating.current?.style??{};o.size&&(typeof o.size=="object"&&o.size.apply?o.size.apply({rects:a,availableWidth:l,availableHeight:s,...c}):Object.assign(d,{maxWidth:`${l}px`,maxHeight:`${s}px`})),e.width==="target"&&Object.assign(d,{width:`${a.reference.width}px`})}})),i}function WAe(e){const r=Dw(),[n,o]=Ys({value:e.opened,defaultValue:e.defaultOpened,finalValue:!1,onChange:e.onChange}),i=S.useRef(n),a=()=>{n&&!e.disabled&&o(!1)},l=()=>{e.disabled||o(!n)},s=t3({strategy:e.strategy,placement:e.preventPositionChangeWhenVisible?e.positionRef.current:e.position,middleware:UAe(e,()=>s,r),whileElementsMounted:e.keepMounted?void 0:Kw});return S.useEffect(()=>{if(!(!s.refs.reference.current||!s.refs.floating.current)&&n)return Kw(s.refs.reference.current,s.refs.floating.current,s.update)},[n,s.update]),wf(()=>{e.onPositionChange?.(s.placement),e.positionRef.current=s.placement},[s.placement,e.preventPositionChangeWhenVisible]),wf(()=>{n!==i.current&&(n?e.onOpen?.():e.onClose?.()),i.current=n},[n,e.onClose,e.onOpen]),xf(()=>{let c=-1;return n&&(c=window.setTimeout(()=>e.setDropdownVisible(!0),4)),()=>{window.clearTimeout(c)}},[n,e.position]),{floating:s,controlled:typeof e.opened=="boolean",opened:n,onClose:a,onToggle:l}}const GAe={position:"bottom",offset:8,positionDependencies:[],transitionProps:{transition:"fade",duration:150},middlewares:{flip:!0,shift:!0,inline:!1},arrowSize:7,arrowOffset:5,arrowRadius:0,arrowPosition:"side",closeOnClickOutside:!0,withinPortal:!0,closeOnEscape:!0,trapFocus:!1,withRoles:!0,returnFocus:!1,withOverlay:!1,hideDetached:!0,clickOutsideEvents:["mousedown","touchstart"],zIndex:Ew("popover"),__staticSelector:"Popover",width:"max-content"},YAe=(e,{radius:r,shadow:n})=>({dropdown:{"--popover-radius":r===void 0?void 0:wn(r),"--popover-shadow":uH(n)}});function br(e){const r=Pe("Popover",GAe,e),{children:n,position:o,offset:i,onPositionChange:a,positionDependencies:l,opened:s,transitionProps:c,onExitTransitionEnd:d,onEnterTransitionEnd:u,width:p,middlewares:f,withArrow:m,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,unstyled:C,classNames:_,styles:$,closeOnClickOutside:R,withinPortal:T,portalProps:A,closeOnEscape:z,clickOutsideEvents:j,trapFocus:I,onClose:N,onDismiss:L,onOpen:H,onChange:P,zIndex:V,radius:B,shadow:F,id:q,defaultOpened:G,__staticSelector:U,withRoles:Y,disabled:K,returnFocus:O,variant:W,keepMounted:Z,vars:Q,floatingStrategy:ie,withOverlay:te,overlayProps:re,hideDetached:ue,attributes:_e,preventPositionChangeWhenVisible:ce,...pe}=r,xe=kt({name:U,props:r,classes:yW,classNames:_,styles:$,unstyled:C,attributes:_e,rootSelector:"dropdown",vars:Q,varsResolver:YAe}),{resolvedStyles:je}=T9({classNames:_,styles:$,props:r}),[Be,Je]=S.useState(s??G??!1),st=S.useRef(o),Le=S.useRef(null),[St,Ve]=S.useState(null),[qe,Xe]=S.useState(null),{dir:It}=bd(),Et=Dw(),be=oa(q),ke=WAe({middlewares:f,width:p,position:pW(It,o),offset:typeof i=="number"?i+(m?v/2:0):i,arrowRef:Le,arrowOffset:w,onPositionChange:a,positionDependencies:l,opened:s,defaultOpened:G,onChange:P,onOpen:H,onClose:N,onDismiss:L,strategy:ie,dropdownVisible:Be,setDropdownVisible:Je,positionRef:st,disabled:K,preventPositionChangeWhenVisible:ce,keepMounted:Z});hH(()=>{R&&(ke.onClose(),L?.())},j,[St,qe]);const Ye=S.useCallback(er=>{Ve(er),ke.floating.refs.setReference(er)},[ke.floating.refs.setReference]),yt=S.useCallback(er=>{Xe(er),ke.floating.refs.setFloating(er)},[ke.floating.refs.setFloating]),xt=S.useCallback(()=>{c?.onExited?.(),d?.(),Je(!1),ce||(st.current=o)},[c?.onExited,d,ce,o]),Tr=S.useCallback(()=>{c?.onEntered?.(),u?.()},[c?.onEntered,u]);return y.jsxs(VAe,{value:{returnFocus:O,disabled:K,controlled:ke.controlled,reference:Ye,floating:yt,x:ke.floating.x,y:ke.floating.y,arrowX:ke.floating?.middlewareData?.arrow?.x,arrowY:ke.floating?.middlewareData?.arrow?.y,opened:ke.opened,arrowRef:Le,transitionProps:{...c,onExited:xt,onEntered:Tr},width:p,withArrow:m,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,placement:ke.floating.placement,trapFocus:I,withinPortal:T,portalProps:A,zIndex:V,radius:B,shadow:F,closeOnEscape:z,onDismiss:L,onClose:ke.onClose,onToggle:ke.onToggle,getTargetId:()=>`${be}-target`,getDropdownId:()=>`${be}-dropdown`,withRoles:Y,targetProps:pe,__staticSelector:U,classNames:_,styles:$,unstyled:C,variant:W,keepMounted:Z,getStyles:xe,resolvedStyles:je,floatingStrategy:ie,referenceHidden:ue&&Et!=="test"?ke.floating.middlewareData.hide?.referenceHidden:!1},children:[n,te&&y.jsx(wd,{transition:"fade",mounted:ke.opened,duration:c?.duration||250,exitDuration:c?.exitDuration||250,children:er=>y.jsx(Df,{withinPortal:T,children:y.jsx(cS,{...re,...xe("overlay",{className:re?.className,style:[er,re?.style]})})})})]})}br.Target=kd,br.Dropdown=Qs,br.displayName="@mantine/core/Popover",br.extend=e=>e;var il={root:"m_5ae2e3c",barsLoader:"m_7a2bd4cd",bar:"m_870bb79","bars-loader-animation":"m_5d2b3b9d",dotsLoader:"m_4e3f22d7",dot:"m_870c4af","loader-dots-animation":"m_aac34a1",ovalLoader:"m_b34414df","oval-loader-animation":"m_f8e89c4b"};const vW=S.forwardRef(({className:e,...r},n)=>y.jsxs(Se,{component:"span",className:el(il.barsLoader,e),...r,ref:n,children:[y.jsx("span",{className:il.bar}),y.jsx("span",{className:il.bar}),y.jsx("span",{className:il.bar})]}));vW.displayName="@mantine/core/Bars";const bW=S.forwardRef(({className:e,...r},n)=>y.jsxs(Se,{component:"span",className:el(il.dotsLoader,e),...r,ref:n,children:[y.jsx("span",{className:il.dot}),y.jsx("span",{className:il.dot}),y.jsx("span",{className:il.dot})]}));bW.displayName="@mantine/core/Dots";const xW=S.forwardRef(({className:e,...r},n)=>y.jsx(Se,{component:"span",className:el(il.ovalLoader,e),...r,ref:n}));xW.displayName="@mantine/core/Oval";const wW={bars:vW,oval:xW,dots:bW},XAe={loaders:wW,type:"oval"},KAe=(e,{size:r,color:n})=>({root:{"--loader-size":dr(r,"loader-size"),"--loader-color":n?Ci(n,e):void 0}}),Pf=ot((e,r)=>{const n=Pe("Loader",XAe,e),{size:o,color:i,type:a,vars:l,className:s,style:c,classNames:d,styles:u,unstyled:p,loaders:f,variant:m,children:v,attributes:w,...x}=n,k=kt({name:"Loader",props:n,classes:il,className:s,style:c,classNames:d,styles:u,unstyled:p,attributes:w,vars:l,varsResolver:KAe});return v?y.jsx(Se,{...k("root"),ref:r,...x,children:v}):y.jsx(Se,{...k("root"),ref:r,component:f[a],variant:m,size:o,...x})});Pf.defaultLoaders=wW,Pf.classes=il,Pf.displayName="@mantine/core/Loader";var Mf={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21",groupSection:"m_437b6484"};const kW={orientation:"horizontal"},ZAe=(e,{borderWidth:r})=>({group:{"--ai-border-width":$e(r)}}),s3=ot((e,r)=>{const n=Pe("ActionIconGroup",kW,e),{className:o,style:i,classNames:a,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:m,...v}=Pe("ActionIconGroup",kW,e),w=kt({name:"ActionIconGroup",props:n,classes:Mf,className:o,style:i,classNames:a,styles:l,unstyled:s,attributes:m,vars:d,varsResolver:ZAe,rootSelector:"group"});return y.jsx(Se,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});s3.classes=Mf,s3.displayName="@mantine/core/ActionIconGroup";const QAe=(e,{radius:r,color:n,gradient:o,variant:i,autoContrast:a,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:i||"filled",autoContrast:a});return{groupSection:{"--section-height":dr(l,"section-height"),"--section-padding-x":dr(l,"section-padding-x"),"--section-fz":Eo(l),"--section-radius":r===void 0?void 0:wn(r),"--section-bg":n||i?s.background:void 0,"--section-color":s.color,"--section-bd":n||i?s.border:void 0}}},uS=ot((e,r)=>{const n=Pe("ActionIconGroupSection",null,e),{className:o,style:i,classNames:a,styles:l,unstyled:s,vars:c,variant:d,gradient:u,radius:p,autoContrast:f,attributes:m,...v}=n,w=kt({name:"ActionIconGroupSection",props:n,classes:Mf,className:o,style:i,classNames:a,styles:l,unstyled:s,attributes:m,vars:c,varsResolver:QAe,rootSelector:"groupSection"});return y.jsx(Se,{...w("groupSection"),ref:r,variant:d,...v})});uS.classes=Mf,uS.displayName="@mantine/core/ActionIconGroupSection";const JAe=(e,{size:r,radius:n,variant:o,gradient:i,color:a,autoContrast:l})=>{const s=e.variantColorResolver({color:a||e.primaryColor,theme:e,gradient:i,variant:o||"filled",autoContrast:l});return{root:{"--ai-size":dr(r,"ai-size"),"--ai-radius":n===void 0?void 0:wn(n),"--ai-bg":a||o?s.background:void 0,"--ai-hover":a||o?s.hover:void 0,"--ai-hover-color":a||o?s.hoverColor:void 0,"--ai-color":s.color,"--ai-bd":a||o?s.border:void 0}}},lr=Jn((e,r)=>{const n=Pe("ActionIcon",null,e),{className:o,unstyled:i,variant:a,classNames:l,styles:s,style:c,loading:d,loaderProps:u,size:p,color:f,radius:m,__staticSelector:v,gradient:w,vars:x,children:k,disabled:C,"data-disabled":_,autoContrast:$,mod:R,attributes:T,...A}=n,z=kt({name:["ActionIcon",v],props:n,className:o,style:c,classes:Mf,classNames:l,styles:s,unstyled:i,attributes:T,vars:x,varsResolver:JAe});return y.jsxs(pr,{...z("root",{active:!C&&!d&&!_}),...A,unstyled:i,variant:a,size:p,disabled:C||d,ref:r,mod:[{loading:d,disabled:C||_},R],children:[typeof d=="boolean"&&y.jsx(wd,{mounted:d,transition:"slide-down",duration:150,children:j=>y.jsx(Se,{component:"span",...z("loader",{style:j}),"aria-hidden":!0,children:y.jsx(Pf,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...u})})}),y.jsx(Se,{component:"span",mod:{loading:d},...z("icon"),children:k})]})});lr.classes=Mf,lr.displayName="@mantine/core/ActionIcon",lr.Group=s3,lr.GroupSection=uS;const _W=S.forwardRef(({size:e="var(--cb-icon-size, 70%)",style:r,...n},o)=>y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...r,width:e,height:e},ref:o,...n,children:y.jsx("path",{d:"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})}));_W.displayName="@mantine/core/CloseIcon";var SW={root:"m_86a44da5","root--subtle":"m_220c80f2"};const eDe={variant:"subtle"},tDe=(e,{size:r,radius:n,iconSize:o})=>({root:{"--cb-size":dr(r,"cb-size"),"--cb-radius":n===void 0?void 0:wn(n),"--cb-icon-size":$e(o)}}),lp=Jn((e,r)=>{const n=Pe("CloseButton",eDe,e),{iconSize:o,children:i,vars:a,radius:l,className:s,classNames:c,style:d,styles:u,unstyled:p,"data-disabled":f,disabled:m,variant:v,icon:w,mod:x,attributes:k,__staticSelector:C,..._}=n,$=kt({name:C||"CloseButton",props:n,className:s,style:d,classes:SW,classNames:c,styles:u,unstyled:p,attributes:k,vars:a,varsResolver:tDe});return y.jsxs(pr,{ref:r,..._,unstyled:p,variant:v,disabled:m,mod:[{disabled:m||f},x],...$("root",{variant:v,active:!m&&!f}),children:[w||y.jsx(_W,{}),i]})});lp.classes=SW,lp.displayName="@mantine/core/CloseButton";function rDe(e){return S.Children.toArray(e).filter(Boolean)}var EW={root:"m_4081bf90"};const nDe={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},oDe=(e,{grow:r,preventGrowOverflow:n,gap:o,align:i,justify:a,wrap:l},{childWidth:s})=>({root:{"--group-child-width":r&&n?s:void 0,"--group-gap":Gs(o),"--group-align":i,"--group-justify":a,"--group-wrap":l}}),en=ot((e,r)=>{const n=Pe("Group",nDe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,children:c,gap:d,align:u,justify:p,wrap:f,grow:m,preventGrowOverflow:v,vars:w,variant:x,__size:k,mod:C,attributes:_,...$}=n,R=rDe(c),T=R.length,A=Gs(d??"md"),z={childWidth:`calc(${100/T}% - (${A} - ${A} / ${T}))`},j=kt({name:"Group",props:n,stylesCtx:z,className:i,style:a,classes:EW,classNames:o,styles:l,unstyled:s,attributes:_,vars:w,varsResolver:oDe});return y.jsx(Se,{...j("root"),ref:r,variant:x,mod:[{grow:m},C],size:k,...$,children:R})});en.classes=EW,en.displayName="@mantine/core/Group";const[iDe,aDe]=oy({size:"sm"}),CW=ot((e,r)=>{const n=Pe("InputClearButton",null,e),{size:o,variant:i,vars:a,classNames:l,styles:s,...c}=n,d=aDe(),{resolvedClassNames:u,resolvedStyles:p}=T9({classNames:l,styles:s,props:n});return y.jsx(lp,{variant:i||"transparent",ref:r,size:o||d?.size||"sm",classNames:u,styles:p,__staticSelector:"InputClearButton",style:{pointerEvents:"all",background:"var(--input-bg)",...c.style},...c})});CW.displayName="@mantine/core/InputClearButton";const lDe={xs:7,sm:8,md:10,lg:12,xl:15};function sDe({__clearable:e,__clearSection:r,rightSection:n,__defaultRightSection:o,size:i="sm"}){const a=e&&r;return a&&(n||o)?y.jsxs("div",{"data-combined-clear-section":!0,style:{display:"flex",gap:2,alignItems:"center",paddingInlineEnd:lDe[i]},children:[a,n||o]}):n===null?null:n||a||o}const[cDe,c3]=oy({offsetBottom:!1,offsetTop:!1,describedBy:void 0,getStyles:null,inputId:void 0,labelId:void 0});var sa={wrapper:"m_6c018570",input:"m_8fb7ebe7",section:"m_82577fc2",placeholder:"m_88bacfd0",root:"m_46b77525",label:"m_8fdc1311",required:"m_78a94662",error:"m_8f816625",description:"m_fe47ce59"};const dDe=(e,{size:r})=>({description:{"--input-description-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),d3=ot((e,r)=>{const n=Pe("InputDescription",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,size:d,__staticSelector:u,__inheritStyles:p=!0,attributes:f,variant:m,...v}=Pe("InputDescription",null,n),w=c3(),x=kt({name:["InputWrapper",u],props:n,classes:sa,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:f,rootSelector:"description",vars:c,varsResolver:dDe}),k=p&&w?.getStyles||x;return y.jsx(Se,{component:"p",ref:r,variant:m,size:d,...k("description",w?.getStyles?{className:i,style:a}:void 0),...v})});d3.classes=sa,d3.displayName="@mantine/core/InputDescription";const uDe=(e,{size:r})=>({error:{"--input-error-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),u3=ot((e,r)=>{const n=Pe("InputError",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,size:d,attributes:u,__staticSelector:p,__inheritStyles:f=!0,variant:m,...v}=n,w=kt({name:["InputWrapper",p],props:n,classes:sa,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:u,rootSelector:"error",vars:c,varsResolver:uDe}),x=c3(),k=f&&x?.getStyles||w;return y.jsx(Se,{component:"p",ref:r,variant:m,size:d,...k("error",x?.getStyles?{className:i,style:a}:void 0),...v})});u3.classes=sa,u3.displayName="@mantine/core/InputError";const $W={labelElement:"label"},pDe=(e,{size:r})=>({label:{"--input-label-size":Eo(r),"--input-asterisk-color":void 0}}),p3=ot((e,r)=>{const n=Pe("InputLabel",$W,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,labelElement:d,size:u,required:p,htmlFor:f,onMouseDown:m,children:v,__staticSelector:w,variant:x,mod:k,attributes:C,..._}=Pe("InputLabel",$W,n),$=kt({name:["InputWrapper",w],props:n,classes:sa,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:C,rootSelector:"label",vars:c,varsResolver:pDe}),R=c3(),T=R?.getStyles||$;return y.jsxs(Se,{...T("label",R?.getStyles?{className:i,style:a}:void 0),component:d,variant:x,size:u,ref:r,htmlFor:d==="label"?f:void 0,mod:[{required:p},k],onMouseDown:A=>{m?.(A),!A.defaultPrevented&&A.detail>1&&A.preventDefault()},..._,children:[v,p&&y.jsx("span",{...T("required"),"aria-hidden":!0,children:" *"})]})});p3.classes=sa,p3.displayName="@mantine/core/InputLabel";const pS=ot((e,r)=>{const n=Pe("InputPlaceholder",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,__staticSelector:d,variant:u,error:p,mod:f,attributes:m,...v}=n,w=kt({name:["InputPlaceholder",d],props:n,classes:sa,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:m,rootSelector:"placeholder"});return y.jsx(Se,{...w("placeholder"),mod:[{error:!!p},f],component:"span",variant:u,ref:r,...v})});pS.classes=sa,pS.displayName="@mantine/core/InputPlaceholder";function hDe(e,{hasDescription:r,hasError:n}){const o=e.findIndex(s=>s==="input"),i=e.slice(0,o),a=e.slice(o+1),l=r&&i.includes("description")||n&&i.includes("error");return{offsetBottom:r&&a.includes("description")||n&&a.includes("error"),offsetTop:l}}const fDe={labelElement:"label",inputContainer:e=>e,inputWrapperOrder:["label","description","input","error"]},gDe=(e,{size:r})=>({label:{"--input-label-size":Eo(r),"--input-asterisk-color":void 0},error:{"--input-error-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`},description:{"--input-description-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),hS=ot((e,r)=>{const n=Pe("InputWrapper",fDe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,size:d,variant:u,__staticSelector:p,inputContainer:f,inputWrapperOrder:m,label:v,error:w,description:x,labelProps:k,descriptionProps:C,errorProps:_,labelElement:$,children:R,withAsterisk:T,id:A,required:z,__stylesApiProps:j,mod:I,attributes:N,...L}=n,H=kt({name:["InputWrapper",p],props:j||n,classes:sa,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:N,vars:c,varsResolver:gDe}),P={size:d,variant:u,__staticSelector:p},V=oa(A),B=typeof T=="boolean"?T:z,F=_?.id||`${V}-error`,q=C?.id||`${V}-description`,G=V,U=!!w&&typeof w!="boolean",Y=!!x,K=`${U?F:""} ${Y?q:""}`,O=K.trim().length>0?K.trim():void 0,W=k?.id||`${V}-label`,Z=v&&y.jsx(p3,{labelElement:$,id:W,htmlFor:G,required:B,...P,...k,children:v},"label"),Q=Y&&y.jsx(d3,{...C,...P,size:C?.size||P.size,id:C?.id||q,children:x},"description"),ie=y.jsx(S.Fragment,{children:f(R)},"input"),te=U&&S.createElement(u3,{..._,...P,size:_?.size||P.size,key:"error",id:_?.id||F},w),re=m.map(ue=>{switch(ue){case"label":return Z;case"input":return ie;case"description":return Q;case"error":return te;default:return null}});return y.jsx(cDe,{value:{getStyles:H,describedBy:O,inputId:G,labelId:W,...hDe(m,{hasDescription:Y,hasError:U})},children:y.jsx(Se,{ref:r,variant:u,size:d,mod:[{error:!!w},I],...H("root"),...L,children:re})})});hS.classes=sa,hS.displayName="@mantine/core/InputWrapper";const mDe={variant:"default",leftSectionPointerEvents:"none",rightSectionPointerEvents:"none",withAria:!0,withErrorStyles:!0,size:"sm"},yDe=(e,r,n)=>({wrapper:{"--input-margin-top":n.offsetTop?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-margin-bottom":n.offsetBottom?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-height":dr(r.size,"input-height"),"--input-fz":Eo(r.size),"--input-radius":r.radius===void 0?void 0:wn(r.radius),"--input-left-section-width":r.leftSectionWidth!==void 0?$e(r.leftSectionWidth):void 0,"--input-right-section-width":r.rightSectionWidth!==void 0?$e(r.rightSectionWidth):void 0,"--input-padding-y":r.multiline?dr(r.size,"input-padding-y"):void 0,"--input-left-section-pointer-events":r.leftSectionPointerEvents,"--input-right-section-pointer-events":r.rightSectionPointerEvents}}),zi=Jn((e,r)=>{const n=Pe("Input",mDe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,required:c,__staticSelector:d,__stylesApiProps:u,size:p,wrapperProps:f,error:m,disabled:v,leftSection:w,leftSectionProps:x,leftSectionWidth:k,rightSection:C,rightSectionProps:_,rightSectionWidth:$,rightSectionPointerEvents:R,leftSectionPointerEvents:T,variant:A,vars:z,pointer:j,multiline:I,radius:N,id:L,withAria:H,withErrorStyles:P,mod:V,inputSize:B,attributes:F,__clearSection:q,__clearable:G,__defaultRightSection:U,...Y}=n,{styleProps:K,rest:O}=qH(Y),W=c3(),Z={offsetBottom:W?.offsetBottom,offsetTop:W?.offsetTop},Q=kt({name:["Input",d],props:u||n,classes:sa,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:F,stylesCtx:Z,rootSelector:"wrapper",vars:z,varsResolver:yDe}),ie=H?{required:c,disabled:v,"aria-invalid":!!m,"aria-describedby":W?.describedBy,id:W?.inputId||L}:{},te=sDe({__clearable:G,__clearSection:q,rightSection:C,__defaultRightSection:U,size:p});return y.jsx(iDe,{value:{size:p||"sm"},children:y.jsxs(Se,{...Q("wrapper"),...K,...f,mod:[{error:!!m&&P,pointer:j,disabled:v,multiline:I,"data-with-right-section":!!te,"data-with-left-section":!!w},V],variant:A,size:p,children:[w&&y.jsx("div",{...x,"data-position":"left",...Q("section",{className:x?.className,style:x?.style}),children:w}),y.jsx(Se,{component:"input",...O,...ie,ref:r,required:c,mod:{disabled:v,error:!!m&&P},variant:A,__size:B,...Q("input")}),te&&y.jsx("div",{..._,"data-position":"right",...Q("section",{className:_?.className,style:_?.style}),children:te})]})})});zi.classes=sa,zi.Wrapper=hS,zi.Label=p3,zi.Error=u3,zi.Description=d3,zi.Placeholder=pS,zi.ClearButton=CW,zi.displayName="@mantine/core/Input";const vDe={gap:{type:"spacing",property:"gap"},rowGap:{type:"spacing",property:"rowGap"},columnGap:{type:"spacing",property:"columnGap"},align:{type:"identity",property:"alignItems"},justify:{type:"identity",property:"justifyContent"},wrap:{type:"identity",property:"flexWrap"},direction:{type:"identity",property:"flexDirection"}};var RW={root:"m_8bffd616"};const Js=Jn((e,r)=>{const n=Pe("Flex",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,gap:d,rowGap:u,columnGap:p,align:f,justify:m,wrap:v,direction:w,attributes:x,...k}=n,C=kt({name:"Flex",classes:RW,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:x,vars:c}),_=lo(),$=Bw(),R=WH({styleProps:{gap:d,rowGap:u,columnGap:p,align:f,justify:m,wrap:v,direction:w},theme:_,data:vDe});return y.jsxs(y.Fragment,{children:[R.hasResponsiveStyles&&y.jsx(Nw,{selector:`.${$}`,styles:R.styles,media:R.media}),y.jsx(Se,{ref:r,...C("root",{className:$,style:yf(R.inlineStyles)}),...k})]})});Js.classes=RW,Js.displayName="@mantine/core/Flex";function bDe(e,r){if(!r||!e)return!1;let n=r.parentNode;for(;n!=null;){if(n===e)return!0;n=n.parentNode}return!1}function xDe({target:e,parent:r,ref:n,displayAfterTransitionEnd:o}){const i=S.useRef(-1),[a,l]=S.useState(!1),[s,c]=S.useState(typeof o=="boolean"?o:!1),d=()=>{if(!e||!r||!n.current)return;const m=e.getBoundingClientRect(),v=r.getBoundingClientRect(),w=window.getComputedStyle(e),x=window.getComputedStyle(r),k=xd(w.borderTopWidth)+xd(x.borderTopWidth),C=xd(w.borderLeftWidth)+xd(x.borderLeftWidth),_={top:m.top-v.top-k,left:m.left-v.left-C,width:m.width,height:m.height};n.current.style.transform=`translateY(${_.top}px) translateX(${_.left}px)`,n.current.style.width=`${_.width}px`,n.current.style.height=`${_.height}px`},u=()=>{window.clearTimeout(i.current),n.current&&(n.current.style.transitionDuration="0ms"),d(),i.current=window.setTimeout(()=>{n.current&&(n.current.style.transitionDuration="")},30)},p=S.useRef(null),f=S.useRef(null);return S.useEffect(()=>{if(d(),e)return p.current=new ResizeObserver(u),p.current.observe(e),r&&(f.current=new ResizeObserver(u),f.current.observe(r)),()=>{p.current?.disconnect(),f.current?.disconnect()}},[r,e]),S.useEffect(()=>{if(r){const m=v=>{bDe(v.target,r)&&(u(),c(!1))};return r.addEventListener("transitionend",m),()=>{r.removeEventListener("transitionend",m)}}},[r]),CH(()=>{Cze()!=="test"&&l(!0)},20,{autoInvoke:!0}),$H(m=>{m.forEach(v=>{v.type==="attributes"&&v.attributeName==="dir"&&u()})},{attributes:!0,attributeFilter:["dir"]},()=>document.documentElement),{initialized:a,hidden:s}}var zW={root:"m_96b553a6"};const wDe=(e,{transitionDuration:r})=>({root:{"--transition-duration":typeof r=="number"?`${r}ms`:r}}),h3=ot((e,r)=>{const n=Pe("FloatingIndicator",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,target:d,parent:u,transitionDuration:p,mod:f,displayAfterTransitionEnd:m,attributes:v,...w}=n,x=kt({name:"FloatingIndicator",classes:zW,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:wDe}),k=S.useRef(null),{initialized:C,hidden:_}=xDe({target:d,parent:u,ref:k,displayAfterTransitionEnd:m}),$=$r(r,k);return!d||!u?null:y.jsx(Se,{ref:$,mod:[{initialized:C,hidden:_},f],...x("root"),...w})});h3.displayName="@mantine/core/FloatingIndicator",h3.classes=zW;function TW({open:e,close:r,openDelay:n,closeDelay:o}){const i=S.useRef(-1),a=S.useRef(-1),l=()=>{window.clearTimeout(i.current),window.clearTimeout(a.current)},s=()=>{l(),n===0||n===void 0?e():i.current=window.setTimeout(e,n)},c=()=>{l(),o===0||o===void 0?r():a.current=window.setTimeout(r,o)};return S.useEffect(()=>l,[]),{openDropdown:s,closeDropdown:c}}function fS({style:e,size:r=16,...n}){return y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...e,width:$e(r),height:$e(r),display:"block"},...n,children:y.jsx("path",{d:"M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}fS.displayName="@mantine/core/AccordionChevron";var jW={root:"m_66836ed3",wrapper:"m_a5d60502",body:"m_667c2793",title:"m_6a03f287",label:"m_698f4f23",icon:"m_667f2a6a",message:"m_7fa78076",closeButton:"m_87f54839"};const kDe=(e,{radius:r,color:n,variant:o,autoContrast:i})=>{const a=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:o||"light",autoContrast:i});return{root:{"--alert-radius":r===void 0?void 0:wn(r),"--alert-bg":n||o?a.background:void 0,"--alert-color":a.color,"--alert-bd":n||o?a.border:void 0}}},f3=ot((e,r)=>{const n=Pe("Alert",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,radius:d,color:u,title:p,children:f,id:m,icon:v,withCloseButton:w,onClose:x,closeButtonLabel:k,variant:C,autoContrast:_,role:$,attributes:R,...T}=n,A=kt({name:"Alert",classes:jW,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:R,vars:c,varsResolver:kDe}),z=oa(m),j=p&&`${z}-title`||void 0,I=`${z}-body`;return y.jsx(Se,{id:z,...A("root",{variant:C}),variant:C,ref:r,role:$||"alert",...T,"aria-describedby":f?I:void 0,"aria-labelledby":p?j:void 0,children:y.jsxs("div",{...A("wrapper"),children:[v&&y.jsx("div",{...A("icon"),children:v}),y.jsxs("div",{...A("body"),children:[p&&y.jsx("div",{...A("title"),"data-with-close-button":w||void 0,children:y.jsx("span",{id:j,...A("label"),children:p})}),f&&y.jsx("div",{id:I,...A("message"),"data-variant":C,children:f})]}),w&&y.jsx(lp,{...A("closeButton"),onClick:x,variant:"transparent",size:16,iconSize:16,"aria-label":k,unstyled:s})]})})});f3.classes=jW,f3.displayName="@mantine/core/Alert";var AW={root:"m_b6d8b162"};function _De(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const SDe={inherit:!1},EDe=(e,{variant:r,lineClamp:n,gradient:o,size:i,color:a})=>({root:{"--text-fz":Eo(i),"--text-lh":VRe(i),"--text-gradient":r==="gradient"?k9(o,e):void 0,"--text-line-clamp":typeof n=="number"?n.toString():void 0,"--text-color":a?Ci(a,e):void 0}}),it=Jn((e,r)=>{const n=Pe("Text",SDe,e),{lineClamp:o,truncate:i,inline:a,inherit:l,gradient:s,span:c,__staticSelector:d,vars:u,className:p,style:f,classNames:m,styles:v,unstyled:w,variant:x,mod:k,size:C,attributes:_,...$}=n,R=kt({name:["Text",d],props:n,classes:AW,className:p,style:f,classNames:m,styles:v,unstyled:w,attributes:_,vars:u,varsResolver:EDe});return y.jsx(Se,{...R("root",{focusable:!0}),ref:r,component:c?"span":"p",variant:x,mod:[{"data-truncate":_De(i),"data-line-clamp":typeof o=="number","data-inline":a,"data-inherit":l},k],size:C,...$})});it.classes=AW,it.displayName="@mantine/core/Text";var DW={root:"m_849cf0da"};const CDe={underline:"hover"},gS=Jn((e,r)=>{const{underline:n,className:o,unstyled:i,mod:a,...l}=Pe("Anchor",CDe,e);return y.jsx(it,{component:"a",ref:r,className:el({[DW.root]:!i},o),...l,mod:[{underline:n},a],__staticSelector:"Anchor",unstyled:i})});gS.classes=DW,gS.displayName="@mantine/core/Anchor";var ca={dropdown:"m_88b62a41",search:"m_985517d8",options:"m_b2821a6e",option:"m_92253aa5",empty:"m_2530cd1d",header:"m_858f94bd",footer:"m_82b967cb",group:"m_254f3e4f",groupLabel:"m_2bb2e9e5",chevron:"m_2943220b",optionsDropdownOption:"m_390b5f4",optionsDropdownCheckIcon:"m_8ee53fc2",optionsDropdownCheckPlaceholder:"m_a530ee0a"};const $De={error:null},RDe=(e,{size:r,color:n})=>({chevron:{"--combobox-chevron-size":dr(r,"combobox-chevron-size"),"--combobox-chevron-color":n?Ci(n,e):void 0}}),mS=ot((e,r)=>{const n=Pe("ComboboxChevron",$De,e),{size:o,error:i,style:a,className:l,classNames:s,styles:c,unstyled:d,vars:u,mod:p,...f}=n,m=kt({name:"ComboboxChevron",classes:ca,props:n,style:a,className:l,classNames:s,styles:c,unstyled:d,vars:u,varsResolver:RDe,rootSelector:"chevron"});return y.jsx(Se,{component:"svg",...f,...m("chevron"),size:o,viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",mod:["combobox-chevron",{error:i},p],ref:r,children:y.jsx("path",{d:"M4.93179 5.43179C4.75605 5.60753 4.75605 5.89245 4.93179 6.06819C5.10753 6.24392 5.39245 6.24392 5.56819 6.06819L7.49999 4.13638L9.43179 6.06819C9.60753 6.24392 9.89245 6.24392 10.0682 6.06819C10.2439 5.89245 10.2439 5.60753 10.0682 5.43179L7.81819 3.18179C7.73379 3.0974 7.61933 3.04999 7.49999 3.04999C7.38064 3.04999 7.26618 3.0974 7.18179 3.18179L4.93179 5.43179ZM10.0682 9.56819C10.2439 9.39245 10.2439 9.10753 10.0682 8.93179C9.89245 8.75606 9.60753 8.75606 9.43179 8.93179L7.49999 10.8636L5.56819 8.93179C5.39245 8.75606 5.10753 8.75606 4.93179 8.93179C4.75605 9.10753 4.75605 9.39245 4.93179 9.56819L7.18179 11.8182C7.35753 11.9939 7.64245 11.9939 7.81819 11.8182L10.0682 9.56819Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})});mS.classes=ca,mS.displayName="@mantine/core/ComboboxChevron";const[zDe,da]=na("Combobox component was not found in tree"),PW=S.forwardRef(({size:e,onMouseDown:r,onClick:n,onClear:o,...i},a)=>y.jsx(zi.ClearButton,{ref:a,tabIndex:-1,"aria-hidden":!0,...i,onMouseDown:l=>{l.preventDefault(),r?.(l)},onClick:l=>{o(),n?.(l)}}));PW.displayName="@mantine/core/ComboboxClearButton";const g3=ot((e,r)=>{const{classNames:n,styles:o,className:i,style:a,hidden:l,...s}=Pe("ComboboxDropdown",null,e),c=da();return y.jsx(br.Dropdown,{...s,ref:r,role:"presentation","data-hidden":l||void 0,...c.getStyles("dropdown",{className:i,style:a,classNames:n,styles:o})})});g3.classes=ca,g3.displayName="@mantine/core/ComboboxDropdown";const TDe={refProp:"ref"},MW=ot((e,r)=>{const{children:n,refProp:o}=Pe("ComboboxDropdownTarget",TDe,e);if(da(),!Sw(n))throw new Error("Combobox.DropdownTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return y.jsx(br.Target,{ref:r,refProp:o,children:n})});MW.displayName="@mantine/core/ComboboxDropdownTarget";const fy=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=Pe("ComboboxEmpty",null,e),c=da();return y.jsx(Se,{ref:r,...c.getStyles("empty",{className:o,classNames:n,styles:a,style:i}),...s})});fy.classes=ca,fy.displayName="@mantine/core/ComboboxEmpty";function yS({onKeyDown:e,withKeyboardNavigation:r,withAriaAttributes:n,withExpandedAttribute:o,targetType:i,autoComplete:a}){const l=da(),[s,c]=S.useState(null),d=u=>{if(e?.(u),!l.readOnly&&r){if(u.nativeEvent.isComposing)return;if(u.nativeEvent.code==="ArrowDown"&&(u.preventDefault(),l.store.dropdownOpened?c(l.store.selectNextOption()):(l.store.openDropdown("keyboard"),c(l.store.selectActiveOption()),l.store.updateSelectedOptionIndex("selected",{scrollIntoView:!0}))),u.nativeEvent.code==="ArrowUp"&&(u.preventDefault(),l.store.dropdownOpened?c(l.store.selectPreviousOption()):(l.store.openDropdown("keyboard"),c(l.store.selectActiveOption()),l.store.updateSelectedOptionIndex("selected",{scrollIntoView:!0}))),u.nativeEvent.code==="Enter"||u.nativeEvent.code==="NumpadEnter"){if(u.nativeEvent.keyCode===229)return;const p=l.store.getSelectedOptionIndex();l.store.dropdownOpened&&p!==-1?(u.preventDefault(),l.store.clickSelectedOption()):i==="button"&&(u.preventDefault(),l.store.openDropdown("keyboard"))}u.key==="Escape"&&l.store.closeDropdown("keyboard"),u.nativeEvent.code==="Space"&&i==="button"&&(u.preventDefault(),l.store.toggleDropdown("keyboard"))}};return{...n?{"aria-haspopup":"listbox","aria-expanded":o?!!(l.store.listId&&l.store.dropdownOpened):void 0,"aria-controls":l.store.dropdownOpened&&l.store.listId?l.store.listId:void 0,"aria-activedescendant":l.store.dropdownOpened&&s||void 0,autoComplete:a,"data-expanded":l.store.dropdownOpened||void 0,"data-mantine-stop-propagation":l.store.dropdownOpened||void 0}:{},onKeyDown:d}}const jDe={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},NW=ot((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:i,withAriaAttributes:a,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Pe("ComboboxEventsTarget",jDe,e),u=md(n);if(!u)throw new Error("Combobox.EventsTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const p=da(),f=yS({targetType:s,withAriaAttributes:a,withKeyboardNavigation:i,withExpandedAttribute:l,onKeyDown:u.props.onKeyDown,autoComplete:c});return S.cloneElement(u,{...f,...d,[o]:$r(r,p.store.targetRef,Rw(u))})});NW.displayName="@mantine/core/ComboboxEventsTarget";const vS=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=Pe("ComboboxFooter",null,e),c=da();return y.jsx(Se,{ref:r,...c.getStyles("footer",{className:o,classNames:n,style:i,styles:a}),...s,onMouseDown:d=>{d.preventDefault()}})});vS.classes=ca,vS.displayName="@mantine/core/ComboboxFooter";const bS=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,children:s,label:c,id:d,...u}=Pe("ComboboxGroup",null,e),p=da(),f=oa(d);return y.jsxs(Se,{ref:r,role:"group","aria-labelledby":c?f:void 0,...p.getStyles("group",{className:o,classNames:n,style:i,styles:a}),...u,children:[c&&y.jsx("div",{id:f,...p.getStyles("groupLabel",{classNames:n,styles:a}),children:c}),s]})});bS.classes=ca,bS.displayName="@mantine/core/ComboboxGroup";const xS=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=Pe("ComboboxHeader",null,e),c=da();return y.jsx(Se,{ref:r,...c.getStyles("header",{className:o,classNames:n,style:i,styles:a}),...s,onMouseDown:d=>{d.preventDefault()}})});xS.classes=ca,xS.displayName="@mantine/core/ComboboxHeader";function BW({value:e,valuesDivider:r=",",...n}){return y.jsx("input",{type:"hidden",value:Array.isArray(e)?e.join(r):e||"",...n})}BW.displayName="@mantine/core/ComboboxHiddenInput";const gy=ot((e,r)=>{const n=Pe("ComboboxOption",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,onClick:c,id:d,active:u,onMouseDown:p,onMouseOver:f,disabled:m,selected:v,mod:w,...x}=n,k=da(),C=S.useId(),_=d||C;return y.jsx(Se,{...k.getStyles("option",{className:i,classNames:o,styles:l,style:a}),...x,ref:r,id:_,mod:["combobox-option",{"combobox-active":u,"combobox-disabled":m,"combobox-selected":v},w],role:"option",onClick:$=>{m?$.preventDefault():(k.onOptionSubmit?.(n.value,n),c?.($))},onMouseDown:$=>{$.preventDefault(),p?.($)},onMouseOver:$=>{k.resetSelectionOnOptionHover&&k.store.resetSelectedOption(),f?.($)}})});gy.classes=ca,gy.displayName="@mantine/core/ComboboxOption";const m3=ot((e,r)=>{const n=Pe("ComboboxOptions",null,e),{classNames:o,className:i,style:a,styles:l,id:s,onMouseDown:c,labelledBy:d,...u}=n,p=da(),f=oa(s);return S.useEffect(()=>{p.store.setListId(f)},[f]),y.jsx(Se,{ref:r,...p.getStyles("options",{className:i,style:a,classNames:o,styles:l}),...u,id:f,role:"listbox","aria-labelledby":d,onMouseDown:m=>{m.preventDefault(),c?.(m)}})});m3.classes=ca,m3.displayName="@mantine/core/ComboboxOptions";const ADe={withAriaAttributes:!0,withKeyboardNavigation:!0},wS=ot((e,r)=>{const n=Pe("ComboboxSearch",ADe,e),{classNames:o,styles:i,unstyled:a,vars:l,withAriaAttributes:s,onKeyDown:c,withKeyboardNavigation:d,size:u,...p}=n,f=da(),m=f.getStyles("search"),v=yS({targetType:"input",withAriaAttributes:s,withKeyboardNavigation:d,withExpandedAttribute:!1,onKeyDown:c,autoComplete:"off"});return y.jsx(zi,{ref:$r(r,f.store.searchRef),classNames:[{input:m.className},o],styles:[{input:m.style},i],size:u||f.size,...v,...p,__staticSelector:"Combobox"})});wS.classes=ca,wS.displayName="@mantine/core/ComboboxSearch";const DDe={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},kS=ot((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:i,withAriaAttributes:a,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Pe("ComboboxTarget",DDe,e),u=md(n);if(!u)throw new Error("Combobox.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const p=da(),f=yS({targetType:s,withAriaAttributes:a,withKeyboardNavigation:i,withExpandedAttribute:l,onKeyDown:u.props.onKeyDown,autoComplete:c}),m=S.cloneElement(u,{...f,...d});return y.jsx(br.Target,{ref:$r(r,p.store.targetRef),children:m})});kS.displayName="@mantine/core/ComboboxTarget";function PDe(e,r,n){for(let o=e-1;o>=0;o-=1)if(!r[o].hasAttribute("data-combobox-disabled"))return o;if(n){for(let o=r.length-1;o>-1;o-=1)if(!r[o].hasAttribute("data-combobox-disabled"))return o}return e}function MDe(e,r,n){for(let o=e+1;o{s||(c(!0),i?.(B))},[c,i,s]),k=S.useCallback((B="unknown")=>{s&&(c(!1),o?.(B))},[c,o,s]),C=S.useCallback((B="unknown")=>{s?k(B):x(B)},[k,x,s]),_=S.useCallback(()=>{const B=gd(f.current),F=zw(`#${d.current} [data-combobox-selected]`,B);F?.removeAttribute("data-combobox-selected"),F?.removeAttribute("aria-selected")},[]),$=S.useCallback(B=>{const F=gd(f.current),q=zw(`#${d.current}`,F),G=q?fd("[data-combobox-option]",q):null;if(!G)return null;const U=B>=G.length?0:B<0?G.length-1:B;return u.current=U,G?.[U]&&!G[U].hasAttribute("data-combobox-disabled")?(_(),G[U].setAttribute("data-combobox-selected","true"),G[U].setAttribute("aria-selected","true"),G[U].scrollIntoView({block:"nearest",behavior:l}),G[U].id):null},[l,_]),R=S.useCallback(()=>{const B=gd(f.current),F=zw(`#${d.current} [data-combobox-active]`,B);if(F){const q=fd(`#${d.current} [data-combobox-option]`,B).findIndex(G=>G===F);return $(q)}return $(0)},[$]),T=S.useCallback(()=>{const B=gd(f.current),F=fd(`#${d.current} [data-combobox-option]`,B);return $(MDe(u.current,F,a))},[$,a]),A=S.useCallback(()=>{const B=gd(f.current),F=fd(`#${d.current} [data-combobox-option]`,B);return $(PDe(u.current,F,a))},[$,a]),z=S.useCallback(()=>{const B=gd(f.current),F=fd(`#${d.current} [data-combobox-option]`,B);return $(NDe(F))},[$]),j=S.useCallback((B="selected",F)=>{w.current=window.setTimeout(()=>{const q=gd(f.current),G=fd(`#${d.current} [data-combobox-option]`,q),U=G.findIndex(Y=>Y.hasAttribute(`data-combobox-${B}`));u.current=U,F?.scrollIntoView&&G[U]?.scrollIntoView({block:"nearest",behavior:l})},0)},[]),I=S.useCallback(()=>{u.current=-1,_()},[_]),N=S.useCallback(()=>{const B=gd(f.current);fd(`#${d.current} [data-combobox-option]`,B)?.[u.current]?.click()},[]),L=S.useCallback(B=>{d.current=B},[]),H=S.useCallback(()=>{m.current=window.setTimeout(()=>p.current?.focus(),0)},[]),P=S.useCallback(()=>{v.current=window.setTimeout(()=>f.current?.focus(),0)},[]),V=S.useCallback(()=>u.current,[]);return S.useEffect(()=>()=>{window.clearTimeout(m.current),window.clearTimeout(v.current),window.clearTimeout(w.current)},[]),{dropdownOpened:s,openDropdown:x,closeDropdown:k,toggleDropdown:C,selectedOptionIndex:u.current,getSelectedOptionIndex:V,selectOption:$,selectFirstOption:z,selectActiveOption:R,selectNextOption:T,selectPreviousOption:A,resetSelectedOption:I,updateSelectedOptionIndex:j,listId:d.current,setListId:L,clickSelectedOption:N,searchRef:p,focusSearchInput:H,targetRef:f,focusTarget:P}}const BDe={keepMounted:!0,withinPortal:!0,resetSelectionOnOptionHover:!1,width:"target",transitionProps:{transition:"fade",duration:0},size:"sm"},IDe=(e,{size:r,dropdownPadding:n})=>({options:{"--combobox-option-fz":Eo(r),"--combobox-option-padding":dr(r,"combobox-option-padding")},dropdown:{"--combobox-padding":n===void 0?void 0:$e(n),"--combobox-option-fz":Eo(r),"--combobox-option-padding":dr(r,"combobox-option-padding")}});function eo(e){const r=Pe("Combobox",BDe,e),{classNames:n,styles:o,unstyled:i,children:a,store:l,vars:s,onOptionSubmit:c,onClose:d,size:u,dropdownPadding:p,resetSelectionOnOptionHover:f,__staticSelector:m,readOnly:v,attributes:w,...x}=r,k=IW(),C=l||k,_=kt({name:m||"Combobox",classes:ca,props:r,classNames:n,styles:o,unstyled:i,attributes:w,vars:s,varsResolver:IDe}),$=()=>{d?.(),C.closeDropdown()};return y.jsx(zDe,{value:{getStyles:_,store:C,onOptionSubmit:c,size:u,resetSelectionOnOptionHover:f,readOnly:v},children:y.jsx(br,{opened:C.dropdownOpened,preventPositionChangeWhenVisible:!0,...x,onChange:R=>!R&&$(),withRoles:!1,unstyled:i,children:a})})}const ODe=e=>e;eo.extend=ODe,eo.classes=ca,eo.displayName="@mantine/core/Combobox",eo.Target=kS,eo.Dropdown=g3,eo.Options=m3,eo.Option=gy,eo.Search=wS,eo.Empty=fy,eo.Chevron=mS,eo.Footer=vS,eo.Header=xS,eo.EventsTarget=NW,eo.DropdownTarget=MW,eo.Group=bS,eo.ClearButton=PW,eo.HiddenInput=BW;function OW({size:e,style:r,...n}){const o=e!==void 0?{width:$e(e),height:$e(e),...r}:r;return y.jsx("svg",{viewBox:"0 0 10 7",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:o,"aria-hidden":!0,...n,children:y.jsx("path",{d:"M4 4.586L1.707 2.293A1 1 0 1 0 .293 3.707l3 3a.997.997 0 0 0 1.414 0l5-5A1 1 0 1 0 8.293.293L4 4.586z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}var LW={root:"m_347db0ec","root--dot":"m_fbd81e3d",label:"m_5add502a",section:"m_91fdda9b"};const LDe=(e,{radius:r,color:n,gradient:o,variant:i,size:a,autoContrast:l,circle:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:i||"filled",autoContrast:l});return{root:{"--badge-height":dr(a,"badge-height"),"--badge-padding-x":dr(a,"badge-padding-x"),"--badge-fz":dr(a,"badge-fz"),"--badge-radius":s||r===void 0?void 0:wn(r),"--badge-bg":n||i?c.background:void 0,"--badge-color":n||i?c.color:void 0,"--badge-bd":n||i?c.border:void 0,"--badge-dot-color":i==="dot"?Ci(n,e):void 0}}},ec=Jn((e,r)=>{const n=Pe("Badge",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,radius:d,color:u,gradient:p,leftSection:f,rightSection:m,children:v,variant:w,fullWidth:x,autoContrast:k,circle:C,mod:_,attributes:$,...R}=n,T=kt({name:"Badge",props:n,classes:LW,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:$,vars:c,varsResolver:LDe});return y.jsxs(Se,{variant:w,mod:[{block:x,circle:C,"with-right-section":!!m,"with-left-section":!!f},_],...T("root",{variant:w}),ref:r,...R,children:[f&&y.jsx("span",{...T("section"),"data-position":"left",children:f}),y.jsx("span",{...T("label"),children:v}),m&&y.jsx("span",{...T("section"),"data-position":"right",children:m})]})});ec.classes=LW,ec.displayName="@mantine/core/Badge";var FW={root:"m_8b3717df",breadcrumb:"m_f678d540",separator:"m_3b8f2208"};const FDe={separator:"/"},VDe=(e,{separatorMargin:r})=>({root:{"--bc-separator-margin":Gs(r)}}),y3=ot((e,r)=>{const n=Pe("Breadcrumbs",FDe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,children:d,separator:u,separatorMargin:p,attributes:f,...m}=n,v=kt({name:"Breadcrumbs",classes:FW,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:f,vars:c,varsResolver:VDe}),w=S.Children.toArray(d).reduce((x,k,C,_)=>{const $=Sw(k)?S.cloneElement(k,{...v("breadcrumb",{className:k.props?.className}),key:C}):S.createElement("div",{...v("breadcrumb"),key:C},k);return x.push($),C!==_.length-1&&x.push(S.createElement(Se,{...v("separator"),key:`separator-${C}`},u)),x},[]);return y.jsx(Se,{ref:r,...v("root"),...m,children:w})});y3.classes=FW,y3.displayName="@mantine/core/Breadcrumbs";var Nf={root:"m_77c9d27d",inner:"m_80f1301b",label:"m_811560b9",section:"m_a74036a",loader:"m_a25b86ee",group:"m_80d6d844",groupSection:"m_70be2a01"};const VW={orientation:"horizontal"},qDe=(e,{borderWidth:r})=>({group:{"--button-border-width":$e(r)}}),_S=ot((e,r)=>{const n=Pe("ButtonGroup",VW,e),{className:o,style:i,classNames:a,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:m,...v}=Pe("ButtonGroup",VW,e),w=kt({name:"ButtonGroup",props:n,classes:Nf,className:o,style:i,classNames:a,styles:l,unstyled:s,attributes:m,vars:d,varsResolver:qDe,rootSelector:"group"});return y.jsx(Se,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});_S.classes=Nf,_S.displayName="@mantine/core/ButtonGroup";const HDe=(e,{radius:r,color:n,gradient:o,variant:i,autoContrast:a,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:i||"filled",autoContrast:a});return{groupSection:{"--section-height":dr(l,"section-height"),"--section-padding-x":dr(l,"section-padding-x"),"--section-fz":l?.includes("compact")?Eo(l.replace("compact-","")):Eo(l),"--section-radius":r===void 0?void 0:wn(r),"--section-bg":n||i?s.background:void 0,"--section-color":s.color,"--section-bd":n||i?s.border:void 0}}},SS=ot((e,r)=>{const n=Pe("ButtonGroupSection",null,e),{className:o,style:i,classNames:a,styles:l,unstyled:s,vars:c,variant:d,gradient:u,radius:p,autoContrast:f,attributes:m,...v}=n,w=kt({name:"ButtonGroupSection",props:n,classes:Nf,className:o,style:i,classNames:a,styles:l,unstyled:s,attributes:m,vars:c,varsResolver:HDe,rootSelector:"groupSection"});return y.jsx(Se,{...w("groupSection"),ref:r,variant:d,...v})});SS.classes=Nf,SS.displayName="@mantine/core/ButtonGroupSection";const UDe={in:{opacity:1,transform:`translate(-50%, calc(-50% + ${$e(1)}))`},out:{opacity:0,transform:"translate(-50%, -200%)"},common:{transformOrigin:"center"},transitionProperty:"transform, opacity"},WDe=(e,{radius:r,color:n,gradient:o,variant:i,size:a,justify:l,autoContrast:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:i||"filled",autoContrast:s});return{root:{"--button-justify":l,"--button-height":dr(a,"button-height"),"--button-padding-x":dr(a,"button-padding-x"),"--button-fz":a?.includes("compact")?Eo(a.replace("compact-","")):Eo(a),"--button-radius":r===void 0?void 0:wn(r),"--button-bg":n||i?c.background:void 0,"--button-hover":n||i?c.hover:void 0,"--button-color":c.color,"--button-bd":n||i?c.border:void 0,"--button-hover-color":n||i?c.hoverColor:void 0}}},Vn=Jn((e,r)=>{const n=Pe("Button",null,e),{style:o,vars:i,className:a,color:l,disabled:s,children:c,leftSection:d,rightSection:u,fullWidth:p,variant:f,radius:m,loading:v,loaderProps:w,gradient:x,classNames:k,styles:C,unstyled:_,"data-disabled":$,autoContrast:R,mod:T,attributes:A,...z}=n,j=kt({name:"Button",props:n,classes:Nf,className:a,style:o,classNames:k,styles:C,unstyled:_,attributes:A,vars:i,varsResolver:WDe}),I=!!d,N=!!u;return y.jsxs(pr,{ref:r,...j("root",{active:!s&&!v&&!$}),unstyled:_,variant:f,disabled:s||v,mod:[{disabled:s||$,loading:v,block:p,"with-left-section":I,"with-right-section":N},T],...z,children:[typeof v=="boolean"&&y.jsx(wd,{mounted:v,transition:UDe,duration:150,children:L=>y.jsx(Se,{component:"span",...j("loader",{style:L}),"aria-hidden":!0,children:y.jsx(Pf,{color:"var(--button-color)",size:"calc(var(--button-height) / 1.8)",...w})})}),y.jsxs("span",{...j("inner"),children:[d&&y.jsx(Se,{component:"span",...j("section"),mod:{position:"left"},children:d}),y.jsx(Se,{component:"span",mod:{loading:v},...j("label"),children:c}),u&&y.jsx(Se,{component:"span",...j("section"),mod:{position:"right"},children:u})]})]})});Vn.classes=Nf,Vn.displayName="@mantine/core/Button",Vn.Group=_S,Vn.GroupSection=SS;const[GDe,YDe]=na("Card component was not found in tree");var ES={root:"m_e615b15f",section:"m_599a2148"};const v3=Jn((e,r)=>{const n=Pe("CardSection",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,withBorder:c,inheritPadding:d,mod:u,...p}=n,f=YDe();return y.jsx(Se,{ref:r,mod:[{"with-border":c,"inherit-padding":d},u],...f.getStyles("section",{className:i,style:a,styles:l,classNames:o}),...p})});v3.classes=ES,v3.displayName="@mantine/core/CardSection";const XDe=(e,{padding:r})=>({root:{"--card-padding":Gs(r)}}),b3=Jn((e,r)=>{const n=Pe("Card",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,children:d,padding:u,attributes:p,...f}=n,m=kt({name:"Card",props:n,classes:ES,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:XDe}),v=S.Children.toArray(d),w=v.map((x,k)=>typeof x=="object"&&x&&"type"in x&&x.type===v3?S.cloneElement(x,{"data-first-section":k===0||void 0,"data-last-section":k===v.length-1||void 0}):x);return y.jsx(GDe,{value:{getStyles:m},children:y.jsx(Af,{ref:r,unstyled:s,...m("root"),...f,children:w})})});b3.classes=ES,b3.displayName="@mantine/core/Card",b3.Section=v3;var qW={root:"m_de3d2490",colorOverlay:"m_862f3d1b",shadowOverlay:"m_98ae7f22",alphaOverlay:"m_95709ac0",childrenOverlay:"m_93e74e3"};const HW={withShadow:!0},KDe=(e,{radius:r,size:n})=>({root:{"--cs-radius":r===void 0?void 0:wn(r),"--cs-size":$e(n)}}),my=Jn((e,r)=>{const n=Pe("ColorSwatch",HW,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,color:d,size:u,radius:p,withShadow:f,children:m,variant:v,attributes:w,...x}=Pe("ColorSwatch",HW,n),k=kt({name:"ColorSwatch",props:n,classes:qW,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:w,vars:c,varsResolver:KDe});return y.jsxs(Se,{ref:r,variant:v,size:u,...k("root",{focusable:!0}),...x,children:[y.jsx("span",{...k("alphaOverlay")}),f&&y.jsx("span",{...k("shadowOverlay")}),y.jsx("span",{...k("colorOverlay",{style:{backgroundColor:d}})}),y.jsx("span",{...k("childrenOverlay"),children:m})]})});my.classes=qW,my.displayName="@mantine/core/ColorSwatch";const ZDe={timeout:1e3};function UW(e){const{children:r,timeout:n,value:o,...i}=Pe("CopyButton",ZDe,e),a=GRe({timeout:n});return y.jsx(y.Fragment,{children:r({copy:()=>a.copy(o),copied:a.copied,...i})})}UW.displayName="@mantine/core/CopyButton";var WW={root:"m_3eebeb36",label:"m_9e365f20"};const QDe={orientation:"horizontal"},JDe=(e,{color:r,variant:n,size:o})=>({root:{"--divider-color":r?Ci(r,e):void 0,"--divider-border-style":n,"--divider-size":dr(o,"divider-size")}}),sp=ot((e,r)=>{const n=Pe("Divider",QDe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,color:d,orientation:u,label:p,labelPosition:f,mod:m,attributes:v,...w}=n,x=kt({name:"Divider",classes:WW,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:JDe});return y.jsx(Se,{ref:r,mod:[{orientation:u,"with-label":!!p},m],...x("root"),...w,role:"separator",children:p&&y.jsx(Se,{component:"span",mod:{position:f},...x("label"),children:p})})});sp.classes=WW,sp.displayName="@mantine/core/Divider";const[GW,YW]=na("Grid component was not found in tree"),CS=(e,r)=>e==="content"?"auto":e==="auto"?"0rem":e?`${100/(r/e)}%`:void 0,XW=(e,r,n)=>n||e==="auto"?"100%":e==="content"?"unset":CS(e,r),KW=(e,r)=>{if(e)return e==="auto"||r?"1":"auto"},ZW=(e,r)=>e===0?"0":e?`${100/(r/e)}%`:void 0;function ePe({span:e,order:r,offset:n,selector:o}){const i=lo(),a=YW(),l=a.breakpoints||i.breakpoints,s=ay(e)===void 0?12:ay(e),c=yf({"--col-order":ay(r)?.toString(),"--col-flex-grow":KW(s,a.grow),"--col-flex-basis":CS(s,a.columns),"--col-width":s==="content"?"auto":void 0,"--col-max-width":XW(s,a.columns,a.grow),"--col-offset":ZW(ay(n),a.columns)}),d=So(l).reduce((p,f)=>(p[f]||(p[f]={}),typeof r=="object"&&r[f]!==void 0&&(p[f]["--col-order"]=r[f]?.toString()),typeof e=="object"&&e[f]!==void 0&&(p[f]["--col-flex-grow"]=KW(e[f],a.grow),p[f]["--col-flex-basis"]=CS(e[f],a.columns),p[f]["--col-width"]=e[f]==="content"?"auto":void 0,p[f]["--col-max-width"]=XW(e[f],a.columns,a.grow)),typeof n=="object"&&n[f]!==void 0&&(p[f]["--col-offset"]=ZW(n[f],a.columns)),p),{}),u=pH(So(d),l).filter(p=>So(d[p.value]).length>0).map(p=>({query:a.type==="container"?`mantine-grid (min-width: ${l[p.value]})`:`(min-width: ${l[p.value]})`,styles:d[p.value]}));return y.jsx(Nw,{styles:c,media:a.type==="container"?void 0:u,container:a.type==="container"?u:void 0,selector:o})}var $S={container:"m_8478a6da",root:"m_410352e9",inner:"m_dee7bd2f",col:"m_96bdd299"};const tPe={span:12},cp=ot((e,r)=>{const n=Pe("GridCol",tPe,e),{classNames:o,className:i,style:a,styles:l,vars:s,span:c,order:d,offset:u,...p}=n,f=YW(),m=Bw();return y.jsxs(y.Fragment,{children:[y.jsx(ePe,{selector:`.${m}`,span:c,order:d,offset:u}),y.jsx(Se,{ref:r,...f.getStyles("col",{className:el(i,m),style:a,classNames:o,styles:l}),...p})]})});cp.classes=$S,cp.displayName="@mantine/core/GridCol";function QW({gutter:e,selector:r,breakpoints:n,type:o}){const i=lo(),a=n||i.breakpoints,l=yf({"--grid-gutter":Gs(ay(e))}),s=So(a).reduce((d,u)=>(d[u]||(d[u]={}),typeof e=="object"&&e[u]!==void 0&&(d[u]["--grid-gutter"]=Gs(e[u])),d),{}),c=pH(So(s),a).filter(d=>So(s[d.value]).length>0).map(d=>({query:o==="container"?`mantine-grid (min-width: ${a[d.value]})`:`(min-width: ${a[d.value]})`,styles:s[d.value]}));return y.jsx(Nw,{styles:l,media:o==="container"?void 0:c,container:o==="container"?c:void 0,selector:r})}const rPe={gutter:"md",grow:!1,columns:12},nPe=(e,{justify:r,align:n,overflow:o})=>({root:{"--grid-justify":r,"--grid-align":n,"--grid-overflow":o}}),yy=ot((e,r)=>{const n=Pe("Grid",rPe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,grow:d,gutter:u,columns:p,align:f,justify:m,children:v,breakpoints:w,type:x,attributes:k,...C}=n,_=kt({name:"Grid",classes:$S,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:k,vars:c,varsResolver:nPe}),$=Bw();return x==="container"&&w?y.jsxs(GW,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(QW,{selector:`.${$}`,...n}),y.jsx("div",{..._("container"),children:y.jsx(Se,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})})]}):y.jsxs(GW,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(QW,{selector:`.${$}`,...n}),y.jsx(Se,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})]})});yy.classes=$S,yy.displayName="@mantine/core/Grid",yy.Col=cp;function JW({color:e,theme:r,defaultShade:n}){const o=vd({color:e,theme:r});return o.isThemeColor?o.shade===void 0?`var(--mantine-color-${o.color}-${n})`:`var(${o.variable})`:e}var eG={root:"m_bcb3f3c2"};const oPe={color:"yellow"},iPe=(e,{color:r})=>({root:{"--mark-bg-dark":JW({color:r,theme:e,defaultShade:5}),"--mark-bg-light":JW({color:r,theme:e,defaultShade:2})}}),RS=ot((e,r)=>{const n=Pe("Mark",oPe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,color:d,variant:u,attributes:p,...f}=n,m=kt({name:"Mark",props:n,className:i,style:a,classes:eG,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:iPe});return y.jsx(Se,{component:"mark",ref:r,variant:u,...m("root"),...f})});RS.classes=eG,RS.displayName="@mantine/core/Mark";function tG(e){return e.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&")}function aPe(e,r){if(r==null)return[{chunk:e,highlighted:!1}];const n=Array.isArray(r)?r.map(tG):tG(r);if(!(Array.isArray(n)?n.filter(a=>a.trim().length>0).length>0:n.trim()!==""))return[{chunk:e,highlighted:!1}];const o=typeof n=="string"?n.trim():n.filter(a=>a.trim().length!==0).map(a=>a.trim()).sort((a,l)=>l.length-a.length).join("|"),i=new RegExp(`(${o})`,"gi");return e.split(i).map(a=>({chunk:a,highlighted:i.test(a)})).filter(({chunk:a})=>a)}const tc=Jn((e,r)=>{const{unstyled:n,children:o,highlight:i,highlightStyles:a,color:l,...s}=Pe("Highlight",null,e),c=aPe(o,i);return y.jsx(it,{unstyled:n,ref:r,...s,__staticSelector:"Highlight",children:c.map(({chunk:d,highlighted:u},p)=>u?y.jsx(RS,{unstyled:n,color:l,style:a,"data-highlight":d,children:d},p):y.jsx("span",{children:d},p))})});tc.classes=it.classes,tc.displayName="@mantine/core/Highlight";const[lPe,rG]=na("HoverCard component was not found in the tree"),nG=S.createContext(!1),sPe=nG.Provider,zS=()=>S.useContext(nG);function TS(e){const{children:r,onMouseEnter:n,onMouseLeave:o,...i}=Pe("HoverCardDropdown",null,e),a=rG();if(zS()&&a.getFloatingProps&&a.floating){const c=a.getFloatingProps();return y.jsx(br.Dropdown,{ref:a.floating,...c,onMouseEnter:kn(n,c.onMouseEnter),onMouseLeave:kn(o,c.onMouseLeave),...i,children:r})}const l=kn(n,a.openDropdown),s=kn(o,a.closeDropdown);return y.jsx(br.Dropdown,{onMouseEnter:l,onMouseLeave:s,...i,children:r})}TS.displayName="@mantine/core/HoverCardDropdown";const cPe={openDelay:0,closeDelay:0};function jS(e){const{openDelay:r,closeDelay:n,children:o}=Pe("HoverCardGroup",cPe,e);return y.jsx(sPe,{value:!0,children:y.jsx(VU,{delay:{open:r,close:n},children:o})})}jS.displayName="@mantine/core/HoverCardGroup",jS.extend=e=>e;const dPe={refProp:"ref"},AS=S.forwardRef((e,r)=>{const{children:n,refProp:o,eventPropsWrapperName:i,...a}=Pe("HoverCardTarget",dPe,e),l=md(n);if(!l)throw new Error("HoverCard.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const s=rG();if(zS()&&s.getReferenceProps&&s.reference){const p=s.getReferenceProps();return y.jsx(br.Target,{refProp:o,ref:r,...a,children:S.cloneElement(l,i?{[i]:{...p,ref:s.reference}}:{...p,ref:s.reference})})}const c=kn(l.props.onMouseEnter,s.openDropdown),d=kn(l.props.onMouseLeave,s.closeDropdown),u={onMouseEnter:c,onMouseLeave:d};return y.jsx(br.Target,{refProp:o,ref:r,...a,children:S.cloneElement(l,i?{[i]:u}:u)})});AS.displayName="@mantine/core/HoverCardTarget";function uPe(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,i=zS(),a=oa(),l=S.useRef(-1),s=S.useRef(-1),c=S.useCallback(()=>{window.clearTimeout(l.current),window.clearTimeout(s.current)},[]),d=S.useCallback(C=>{n(C),C?(m(a),e.onOpen?.()):e.onClose?.()},[a,e.onOpen,e.onClose]),{context:u,refs:p}=t3({open:o,onOpenChange:d}),{delay:f,setCurrentId:m}=qU(u,{id:a}),{getReferenceProps:v,getFloatingProps:w}=WU([LU(u,{enabled:!0,delay:i?f:{open:e.openDelay,close:e.closeDelay}}),GU(u,{role:"dialog"}),UU(u,{enabled:i})]),x=S.useCallback(()=>{i||(c(),e.openDelay===0||e.openDelay===void 0?d(!0):l.current=window.setTimeout(()=>d(!0),e.openDelay))},[i,c,e.openDelay,d]),k=S.useCallback(()=>{i||(c(),e.closeDelay===0||e.closeDelay===void 0?d(!1):s.current=window.setTimeout(()=>d(!1),e.closeDelay))},[i,c,e.closeDelay,d]);return S.useEffect(()=>()=>c(),[c]),{opened:o,reference:p.setReference,floating:p.setFloating,getReferenceProps:v,getFloatingProps:w,openDropdown:x,closeDropdown:k}}const pPe={openDelay:0,closeDelay:150,initiallyOpened:!1};function Bf(e){const{children:r,onOpen:n,onClose:o,openDelay:i,closeDelay:a,initiallyOpened:l,...s}=Pe("HoverCard",pPe,e),c=uPe({openDelay:i,closeDelay:a,defaultOpened:l,onOpen:n,onClose:o});return y.jsx(lPe,{value:{openDropdown:c.openDropdown,closeDropdown:c.closeDropdown,getReferenceProps:c.getReferenceProps,getFloatingProps:c.getFloatingProps,reference:c.reference,floating:c.floating},children:y.jsx(br,{...s,opened:c.opened,__staticSelector:"HoverCard",children:r})})}Bf.displayName="@mantine/core/HoverCard",Bf.Target=AS,Bf.Dropdown=TS,Bf.Group=jS,Bf.extend=e=>e;var hPe=S.useLayoutEffect;const[fPe,_d]=na("Menu component was not found in the tree");var Sd={dropdown:"m_dc9b7c9f",label:"m_9bfac126",divider:"m_efdf90cb",item:"m_99ac2aa1",itemLabel:"m_5476e0d3",itemSection:"m_8b75e504",chevron:"m_b85b0bed"};const DS=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=Pe("MenuDivider",null,e),c=_d();return y.jsx(Se,{ref:r,...c.getStyles("divider",{className:o,style:i,styles:a,classNames:n}),...s})});DS.classes=Sd,DS.displayName="@mantine/core/MenuDivider";const vy=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=Pe("MenuDropdown",null,e),f=S.useRef(null),m=_d(),v=kn(d,k=>{(k.key==="ArrowUp"||k.key==="ArrowDown")&&(k.preventDefault(),f.current?.querySelectorAll("[data-menu-item]:not(:disabled)")[0]?.focus())}),w=kn(s,()=>(m.trigger==="hover"||m.trigger==="click-hover")&&m.openDropdown()),x=kn(c,()=>(m.trigger==="hover"||m.trigger==="click-hover")&&m.closeDropdown());return y.jsxs(br.Dropdown,{...p,onMouseEnter:w,onMouseLeave:x,role:"menu","aria-orientation":"vertical",ref:$r(r,f),...m.getStyles("dropdown",{className:o,style:i,styles:a,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,onKeyDown:v,children:[m.withInitialFocusPlaceholder&&y.jsx("div",{tabIndex:-1,"data-autofocus":!0,"data-mantine-stop-propagation":!0,style:{outline:0}}),u]})});vy.classes=Sd,vy.displayName="@mantine/core/MenuDropdown";const[gPe,x3]=oy(),by=Jn((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,color:s,closeMenuOnClick:c,leftSection:d,rightSection:u,children:p,disabled:f,"data-disabled":m,...v}=Pe("MenuItem",null,e),w=_d(),x=x3(),k=lo(),{dir:C}=bd(),_=S.useRef(null),$=v,R=kn($.onClick,()=>{m||(typeof c=="boolean"?c&&w.closeDropdownImmediately():w.closeOnItemClick&&w.closeDropdownImmediately())}),T=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,A=s?vd({color:s,theme:k}):null,z=kn($.onKeyDown,j=>{j.key==="ArrowLeft"&&x&&(x.close(),x.focusParentItem())});return y.jsxs(pr,{onMouseDown:j=>j.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style:i,styles:a,classNames:n}),ref:$r(_,r),role:"menuitem",disabled:f,"data-menu-item":!0,"data-disabled":f||m||void 0,"data-mantine-stop-propagation":!0,onClick:R,onKeyDown:iy({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:z}),__vars:{"--menu-item-color":A?.isThemeColor&&A?.shade===void 0?`var(--mantine-color-${A.color}-6)`:T?.color,"--menu-item-hover":T?.hover},children:[d&&y.jsx("div",{...w.getStyles("itemSection",{styles:a,classNames:n}),"data-position":"left",children:d}),p&&y.jsx("div",{...w.getStyles("itemLabel",{styles:a,classNames:n}),children:p}),u&&y.jsx("div",{...w.getStyles("itemSection",{styles:a,classNames:n}),"data-position":"right",children:u})]})});by.classes=Sd,by.displayName="@mantine/core/MenuItem";const PS=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=Pe("MenuLabel",null,e),c=_d();return y.jsx(Se,{ref:r,...c.getStyles("label",{className:o,style:i,styles:a,classNames:n}),...s})});PS.classes=Sd,PS.displayName="@mantine/core/MenuLabel";const MS=ot((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=Pe("MenuSubDropdown",null,e),f=S.useRef(null),m=_d(),v=x3(),w=kn(s,v?.open),x=kn(c,v?.close);return y.jsx(br.Dropdown,{...p,onMouseEnter:w,onMouseLeave:x,role:"menu","aria-orientation":"vertical",ref:$r(r,f),...m.getStyles("dropdown",{className:o,style:i,styles:a,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,children:u})});MS.classes=Sd,MS.displayName="@mantine/core/MenuSubDropdown";const NS=Jn((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,color:s,leftSection:c,rightSection:d,children:u,disabled:p,"data-disabled":f,closeMenuOnClick:m,...v}=Pe("MenuSubItem",null,e),w=_d(),x=x3(),k=lo(),{dir:C}=bd(),_=S.useRef(null),$=v,R=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,T=s?vd({color:s,theme:k}):null,A=kn($.onKeyDown,N=>{N.key==="ArrowRight"&&(x?.open(),x?.focusFirstItem()),N.key==="ArrowLeft"&&x?.parentContext&&(x.parentContext.close(),x.parentContext.focusParentItem())}),z=kn($.onClick,()=>{!f&&m&&w.closeDropdownImmediately()}),j=kn($.onMouseEnter,x?.open),I=kn($.onMouseLeave,x?.close);return y.jsxs(pr,{onMouseDown:N=>N.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style:i,styles:a,classNames:n}),ref:$r(_,r),role:"menuitem",disabled:p,"data-menu-item":!0,"data-sub-menu-item":!0,"data-disabled":p||f||void 0,"data-mantine-stop-propagation":!0,onMouseEnter:j,onMouseLeave:I,onClick:z,onKeyDown:iy({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:A}),__vars:{"--menu-item-color":T?.isThemeColor&&T?.shade===void 0?`var(--mantine-color-${T.color}-6)`:R?.color,"--menu-item-hover":R?.hover},children:[c&&y.jsx("div",{...w.getStyles("itemSection",{styles:a,classNames:n}),"data-position":"left",children:c}),u&&y.jsx("div",{...w.getStyles("itemLabel",{styles:a,classNames:n}),children:u}),y.jsx("div",{...w.getStyles("itemSection",{styles:a,classNames:n}),"data-position":"right",children:d||y.jsx(fS,{...w.getStyles("chevron"),size:14})})]})});NS.classes=Sd,NS.displayName="@mantine/core/MenuSubItem";function oG({children:e,refProp:r}){if(!Sw(e))throw new Error("Menu.Sub.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return _d(),y.jsx(br.Target,{refProp:r,popupType:"menu",children:e})}oG.displayName="@mantine/core/MenuSubTarget";const mPe={offset:0,position:"right-start",transitionProps:{duration:0},openDelay:0,middlewares:{shift:{crossAxis:!0}}};function If(e){const{children:r,closeDelay:n,openDelay:o,...i}=Pe("MenuSub",mPe,e),a=oa(),[l,{open:s,close:c}]=xze(!1),d=x3(),{openDropdown:u,closeDropdown:p}=TW({open:s,close:c,closeDelay:n,openDelay:o});return y.jsx(gPe,{value:{opened:l,close:p,open:u,focusFirstItem:()=>window.setTimeout(()=>{document.getElementById(`${a}-dropdown`)?.querySelectorAll("[data-menu-item]:not([data-disabled])")[0]?.focus()},16),focusParentItem:()=>window.setTimeout(()=>{document.getElementById(`${a}-target`)?.focus()},16),parentContext:d},children:y.jsx(br,{opened:l,withinPortal:!1,withArrow:!1,id:a,...i,children:r})})}If.extend=e=>e,If.displayName="@mantine/core/MenuSub",If.Target=oG,If.Dropdown=MS,If.Item=NS;const yPe={refProp:"ref"},w3=S.forwardRef((e,r)=>{const{children:n,refProp:o,...i}=Pe("MenuTarget",yPe,e),a=md(n);if(!a)throw new Error("Menu.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const l=_d(),s=a.props,c=kn(s.onClick,()=>{l.trigger==="click"?l.toggleDropdown():l.trigger==="click-hover"&&(l.setOpenedViaClick(!0),l.opened||l.openDropdown())}),d=kn(s.onMouseEnter,()=>(l.trigger==="hover"||l.trigger==="click-hover")&&l.openDropdown()),u=kn(s.onMouseLeave,()=>{(l.trigger==="hover"||l.trigger==="click-hover"&&!l.openedViaClick)&&l.closeDropdown()});return y.jsx(br.Target,{refProp:o,popupType:"menu",ref:r,...i,children:S.cloneElement(a,{onClick:c,onMouseEnter:d,onMouseLeave:u,"data-expanded":l.opened?!0:void 0})})});w3.displayName="@mantine/core/MenuTarget";const vPe={trapFocus:!0,closeOnItemClick:!0,withInitialFocusPlaceholder:!0,clickOutsideEvents:["mousedown","touchstart","keydown"],loop:!0,trigger:"click",openDelay:0,closeDelay:100,menuItemTabIndex:-1};function tn(e){const r=Pe("Menu",vPe,e),{children:n,onOpen:o,onClose:i,opened:a,defaultOpened:l,trapFocus:s,onChange:c,closeOnItemClick:d,loop:u,closeOnEscape:p,trigger:f,openDelay:m,closeDelay:v,classNames:w,styles:x,unstyled:k,variant:C,vars:_,menuItemTabIndex:$,keepMounted:R,withInitialFocusPlaceholder:T,attributes:A,...z}=r,j=kt({name:"Menu",classes:Sd,props:r,classNames:w,styles:x,unstyled:k,attributes:A}),[I,N]=Ys({value:a,defaultValue:l,finalValue:!1,onChange:c}),[L,H]=S.useState(!1),P=()=>{N(!1),H(!1),I&&i?.()},V=()=>{N(!0),!I&&o?.()},B=()=>{I?P():V()},{openDropdown:F,closeDropdown:q}=TW({open:V,close:P,closeDelay:v,openDelay:m}),G=K=>HRe("[data-menu-item]","[data-menu-dropdown]",K),{resolvedClassNames:U,resolvedStyles:Y}=T9({classNames:w,styles:x,props:r});return y.jsx(fPe,{value:{getStyles:j,opened:I,toggleDropdown:B,getItemIndex:G,openedViaClick:L,setOpenedViaClick:H,closeOnItemClick:d,closeDropdown:f==="click"?P:q,openDropdown:f==="click"?V:F,closeDropdownImmediately:P,loop:u,trigger:f,unstyled:k,menuItemTabIndex:$,withInitialFocusPlaceholder:T},children:y.jsx(br,{returnFocus:!0,...z,opened:I,onChange:B,defaultOpened:l,trapFocus:R?!1:s,closeOnEscape:p,__staticSelector:"Menu",classNames:U,styles:Y,unstyled:k,variant:C,keepMounted:R,children:n})})}tn.extend=e=>e,tn.withProps=NTe(tn),tn.classes=Sd,tn.displayName="@mantine/core/Menu",tn.Item=by,tn.Label=PS,tn.Dropdown=vy,tn.Target=w3,tn.Divider=DS,tn.Sub=If;const[Ywt,iG]=oy(),[bPe,xPe]=oy();var k3={root:"m_7cda1cd6","root--default":"m_44da308b","root--contrast":"m_e3a01f8",label:"m_1e0e6180",remove:"m_ae386778",group:"m_1dcfd90b"};const wPe=(e,{gap:r},{size:n})=>({group:{"--pg-gap":r!==void 0?dr(r):dr(n,"pg-gap")}}),BS=ot((e,r)=>{const n=Pe("PillGroup",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,size:d,disabled:u,attributes:p,...f}=n,m=iG()?.size||d||void 0,v=kt({name:"PillGroup",classes:k3,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:wPe,stylesCtx:{size:m},rootSelector:"group"});return y.jsx(bPe,{value:{size:m,disabled:u},children:y.jsx(Se,{ref:r,size:m,...v("group"),...f})})});BS.classes=k3,BS.displayName="@mantine/core/PillGroup";const kPe={variant:"default"},_Pe=(e,{radius:r},{size:n})=>({root:{"--pill-fz":dr(n,"pill-fz"),"--pill-height":dr(n,"pill-height"),"--pill-radius":r===void 0?void 0:wn(r)}}),_3=ot((e,r)=>{const n=Pe("Pill",kPe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,variant:d,children:u,withRemoveButton:p,onRemove:f,removeButtonProps:m,radius:v,size:w,disabled:x,mod:k,attributes:C,..._}=n,$=xPe(),R=iG(),T=w||$?.size||void 0,A=R?.variant==="filled"?"contrast":d||"default",z=kt({name:"Pill",classes:k3,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:C,vars:c,varsResolver:_Pe,stylesCtx:{size:T}});return y.jsxs(Se,{component:"span",ref:r,variant:A,size:T,...z("root",{variant:A}),mod:[{"with-remove":p&&!x,disabled:x||$?.disabled},k],..._,children:[y.jsx("span",{...z("label"),children:u}),p&&y.jsx(lp,{variant:"transparent",radius:v,tabIndex:-1,"aria-hidden":!0,unstyled:s,...m,...z("remove",{className:m?.className,style:m?.style}),onMouseDown:j=>{j.preventDefault(),j.stopPropagation(),m?.onMouseDown?.(j)},onClick:j=>{j.stopPropagation(),f?.(),m?.onClick?.(j)}})]})});_3.classes=k3,_3.displayName="@mantine/core/Pill",_3.Group=BS;var aG={root:"m_f0824112",description:"m_57492dcc",section:"m_690090b5",label:"m_1f6ac4c4",body:"m_f07af9d2",children:"m_e17b862f",chevron:"m_1fd8a00b"};const SPe=(e,{variant:r,color:n,childrenOffset:o,autoContrast:i})=>{const a=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:r||"light",autoContrast:i});return{root:{"--nl-bg":n||r?a.background:void 0,"--nl-hover":n||r?a.hover:void 0,"--nl-color":n||r?a.color:void 0},children:{"--nl-offset":Gs(o)}}},IS=Jn((e,r)=>{const n=Pe("NavLink",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,opened:d,defaultOpened:u,onChange:p,children:f,active:m,disabled:v,leftSection:w,rightSection:x,label:k,description:C,disableRightSectionRotation:_,noWrap:$,childrenOffset:R,autoContrast:T,mod:A,attributes:z,onClick:j,onKeyDown:I,...N}=n,L=kt({name:"NavLink",props:n,classes:aG,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:z,vars:c,varsResolver:SPe}),[H,P]=Ys({value:d,defaultValue:u,finalValue:!1,onChange:p}),V=!!f,B=F=>{j?.(F),V&&(F.preventDefault(),P(!H))};return y.jsxs(y.Fragment,{children:[y.jsxs(pr,{...L("root"),component:"a",ref:r,onClick:B,onKeyDown:F=>{I?.(F),F.nativeEvent.code==="Space"&&V&&(F.preventDefault(),P(!H))},unstyled:s,mod:[{disabled:v,active:m,expanded:H},A],...N,children:[w&&y.jsx(Se,{component:"span",...L("section"),mod:{position:"left"},children:w}),y.jsxs(Se,{...L("body"),mod:{"no-wrap":$},children:[y.jsx(Se,{component:"span",...L("label"),children:k}),y.jsx(Se,{component:"span",mod:{active:m},...L("description"),children:C})]}),(V||x!==void 0)&&y.jsx(Se,{...L("section"),component:"span",mod:{rotate:H&&!_,position:"right"},children:V?x!==void 0?x:y.jsx(fS,{...L("chevron")}):x})]}),V&&y.jsx(QH,{in:H,...L("collapse"),children:y.jsx("div",{...L("children"),children:f})})]})});IS.classes=aG,IS.displayName="@mantine/core/NavLink";var lG={root:"m_a513464",icon:"m_a4ceffb",loader:"m_b0920b15",body:"m_a49ed24",title:"m_3feedf16",description:"m_3d733a3a",closeButton:"m_919a4d88"};const EPe={withCloseButton:!0},CPe=(e,{radius:r,color:n})=>({root:{"--notification-radius":r===void 0?void 0:wn(r),"--notification-color":n?Ci(n,e):void 0}}),xy=ot((e,r)=>{const n=Pe("Notification",EPe,e),{className:o,color:i,radius:a,loading:l,withCloseButton:s,withBorder:c,title:d,icon:u,children:p,onClose:f,closeButtonProps:m,classNames:v,style:w,styles:x,unstyled:k,variant:C,vars:_,mod:$,loaderProps:R,role:T,attributes:A,...z}=n,j=kt({name:"Notification",classes:lG,props:n,className:o,style:w,classNames:v,styles:x,unstyled:k,attributes:A,vars:_,varsResolver:CPe});return y.jsxs(Se,{...j("root"),mod:[{"data-with-icon":!!u||l,"data-with-border":c},$],ref:r,variant:C,role:T||"alert",...z,children:[u&&!l&&y.jsx("div",{...j("icon"),children:u}),l&&y.jsx(Pf,{size:28,color:i,...R,...j("loader")}),y.jsxs("div",{...j("body"),children:[d&&y.jsx("div",{...j("title"),children:d}),y.jsx(Se,{...j("description"),mod:{"data-with-title":!!d},children:p})]}),s&&y.jsx(lp,{iconSize:16,color:"gray",...m,unstyled:k,onClick:f,...j("closeButton")})]})});xy.classes=lG,xy.displayName="@mantine/core/Notification";const $Pe={duration:100,transition:"fade"};function sG(e,r){return{...$Pe,...r,...e}}function RPe({offset:e,position:r,defaultOpened:n}){const[o,i]=S.useState(n),a=S.useRef(null),{x:l,y:s,elements:c,refs:d,update:u,placement:p}=t3({placement:r,middleware:[Z9({crossAxis:!0,padding:5,rootBoundary:"document"})]}),f=p.includes("right")?e:r.includes("left")?e*-1:0,m=p.includes("bottom")?e:r.includes("top")?e*-1:0,v=S.useCallback(({clientX:w,clientY:x})=>{d.setPositionReference({getBoundingClientRect(){return{width:0,height:0,x:w,y:x,left:w+f,top:x+m,right:w,bottom:x}}})},[c.reference]);return S.useEffect(()=>{if(d.floating.current){const w=a.current;w.addEventListener("mousemove",v);const x=Zs(d.floating.current);return x.forEach(k=>{k.addEventListener("scroll",u)}),()=>{w.removeEventListener("mousemove",v),x.forEach(k=>{k.removeEventListener("scroll",u)})}}},[c.reference,d.floating.current,u,v,o]),{handleMouseMove:v,x:l,y:s,opened:o,setOpened:i,boundaryRef:a,floating:d.setFloating}}var S3={tooltip:"m_1b3c8819",arrow:"m_f898399f"};const zPe={refProp:"ref",withinPortal:!0,offset:10,position:"right",zIndex:Ew("popover")},TPe=(e,{radius:r,color:n})=>({tooltip:{"--tooltip-radius":r===void 0?void 0:wn(r),"--tooltip-bg":n?Ci(n,e):void 0,"--tooltip-color":n?"var(--mantine-color-white)":void 0}}),OS=ot((e,r)=>{const n=Pe("TooltipFloating",zPe,e),{children:o,refProp:i,withinPortal:a,style:l,className:s,classNames:c,styles:d,unstyled:u,radius:p,color:f,label:m,offset:v,position:w,multiline:x,zIndex:k,disabled:C,defaultOpened:_,variant:$,vars:R,portalProps:T,attributes:A,...z}=n,j=lo(),I=kt({name:"TooltipFloating",props:n,classes:S3,className:s,style:l,classNames:c,styles:d,unstyled:u,attributes:A,rootSelector:"tooltip",vars:R,varsResolver:TPe}),{handleMouseMove:N,x:L,y:H,opened:P,boundaryRef:V,floating:B,setOpened:F}=RPe({offset:v,position:w,defaultOpened:_}),q=md(o);if(!q)throw new Error("[@mantine/core] Tooltip.Floating component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported");const G=$r(V,Rw(q),r),U=q.props,Y=O=>{U.onMouseEnter?.(O),N(O),F(!0)},K=O=>{U.onMouseLeave?.(O),F(!1)};return y.jsxs(y.Fragment,{children:[y.jsx(Df,{...T,withinPortal:a,children:y.jsx(Se,{...z,...I("tooltip",{style:{...M9(l,j),zIndex:k,display:!C&&P?"block":"none",top:(H&&Math.round(H))??"",left:(L&&Math.round(L))??""}}),variant:$,ref:B,mod:{multiline:x},children:m})}),S.cloneElement(q,{...U,[i]:G,onMouseEnter:Y,onMouseLeave:K})]})});OS.classes=S3,OS.displayName="@mantine/core/TooltipFloating";const cG=S.createContext(!1),jPe=cG.Provider,APe=()=>S.useContext(cG),DPe={openDelay:0,closeDelay:0};function dp(e){const{openDelay:r,closeDelay:n,children:o}=Pe("TooltipGroup",DPe,e);return y.jsx(jPe,{value:!0,children:y.jsx(VU,{delay:{open:r,close:n},children:o})})}dp.displayName="@mantine/core/TooltipGroup",dp.extend=e=>e;function PPe(e){if(e===void 0)return{shift:!0,flip:!0};const r={...e};return e.shift===void 0&&(r.shift=!0),e.flip===void 0&&(r.flip=!0),r}function MPe(e){const r=PPe(e.middlewares),n=[TU(e.offset)];return r.shift&&n.push(Z9(typeof r.shift=="boolean"?{padding:8}:{padding:8,...r.shift})),r.flip&&n.push(typeof r.flip=="boolean"?Jw():Jw(r.flip)),n.push(AU({element:e.arrowRef,padding:e.arrowOffset})),r.inline?n.push(typeof r.inline=="boolean"?uy():uy(r.inline)):e.inline&&n.push(uy()),n}function NPe(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,i=APe(),a=oa(),l=S.useCallback($=>{n($),$&&x(a)},[a]),{x:s,y:c,context:d,refs:u,placement:p,middlewareData:{arrow:{x:f,y:m}={}}}=t3({strategy:e.strategy,placement:e.position,open:o,onOpenChange:l,middleware:MPe(e),whileElementsMounted:Kw}),{delay:v,currentId:w,setCurrentId:x}=qU(d,{id:a}),{getReferenceProps:k,getFloatingProps:C}=WU([LU(d,{enabled:e.events?.hover,delay:i?v:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),xAe(d,{enabled:e.events?.focus,visibleOnly:!0}),GU(d,{role:"tooltip"}),UU(d,{enabled:typeof e.opened>"u"})]);wf(()=>{e.onPositionChange?.(p)},[p]);const _=o&&w&&w!==a;return{x:s,y:c,arrowX:f,arrowY:m,reference:u.setReference,floating:u.setFloating,getFloatingProps:C,getReferenceProps:k,isGroupPhase:_,opened:o,placement:p}}const dG={position:"top",refProp:"ref",withinPortal:!0,arrowSize:4,arrowOffset:5,arrowRadius:0,arrowPosition:"side",offset:5,transitionProps:{duration:100,transition:"fade"},events:{hover:!0,focus:!1,touch:!1},zIndex:Ew("popover"),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},BPe=(e,{radius:r,color:n,variant:o,autoContrast:i})=>{const a=e.variantColorResolver({theme:e,color:n||e.primaryColor,autoContrast:i,variant:o||"filled"});return{tooltip:{"--tooltip-radius":r===void 0?void 0:wn(r),"--tooltip-bg":n?a.background:void 0,"--tooltip-color":n?a.color:void 0}}},_n=ot((e,r)=>{const n=Pe("Tooltip",dG,e),{children:o,position:i,refProp:a,label:l,openDelay:s,closeDelay:c,onPositionChange:d,opened:u,defaultOpened:p,withinPortal:f,radius:m,color:v,classNames:w,styles:x,unstyled:k,style:C,className:_,withArrow:$,arrowSize:R,arrowOffset:T,arrowRadius:A,arrowPosition:z,offset:j,transitionProps:I,multiline:N,events:L,zIndex:H,disabled:P,positionDependencies:V,onClick:B,onMouseEnter:F,onMouseLeave:q,inline:G,variant:U,keepMounted:Y,vars:K,portalProps:O,mod:W,floatingStrategy:Z,middlewares:Q,autoContrast:ie,attributes:te,target:re,...ue}=Pe("Tooltip",dG,n),{dir:_e}=bd(),ce=S.useRef(null),pe=NPe({position:pW(_e,i),closeDelay:c,openDelay:s,onPositionChange:d,opened:u,defaultOpened:p,events:L,arrowRef:ce,arrowOffset:T,offset:typeof j=="number"?j+($?R/2:0):j,positionDependencies:[...V,re??o],inline:G,strategy:Z,middlewares:Q});S.useEffect(()=>{const Le=re instanceof HTMLElement?re:typeof re=="string"?document.querySelector(re):re?.current||null;Le&&pe.reference(Le)},[re,pe]);const xe=kt({name:"Tooltip",props:n,classes:S3,className:_,style:C,classNames:w,styles:x,unstyled:k,attributes:te,rootSelector:"tooltip",vars:K,varsResolver:BPe}),je=md(o);if(!re&&!je)return null;if(re){const Le=sG(I,{duration:100,transition:"fade"});return y.jsx(y.Fragment,{children:y.jsx(Df,{...O,withinPortal:f,children:y.jsx(wd,{...Le,keepMounted:Y,mounted:!P&&!!pe.opened,duration:pe.isGroupPhase?10:Le.duration,children:St=>y.jsxs(Se,{...ue,"data-fixed":Z==="fixed"||void 0,variant:U,mod:[{multiline:N},W],...pe.getFloatingProps({ref:pe.floating,className:xe("tooltip").className,style:{...xe("tooltip").style,...St,zIndex:H,top:pe.y??0,left:pe.x??0}}),children:[l,y.jsx(i3,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:R,arrowOffset:T,arrowRadius:A,arrowPosition:z,...xe("arrow")})]})})})})}const Be=je.props,Je=$r(pe.reference,Rw(je),r),st=sG(I,{duration:100,transition:"fade"});return y.jsxs(y.Fragment,{children:[y.jsx(Df,{...O,withinPortal:f,children:y.jsx(wd,{...st,keepMounted:Y,mounted:!P&&!!pe.opened,duration:pe.isGroupPhase?10:st.duration,children:Le=>y.jsxs(Se,{...ue,"data-fixed":Z==="fixed"||void 0,variant:U,mod:[{multiline:N},W],...pe.getFloatingProps({ref:pe.floating,className:xe("tooltip").className,style:{...xe("tooltip").style,...Le,zIndex:H,top:pe.y??0,left:pe.x??0}}),children:[l,y.jsx(i3,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:R,arrowOffset:T,arrowRadius:A,arrowPosition:z,...xe("arrow")})]})})}),S.cloneElement(je,pe.getReferenceProps({onClick:B,onMouseEnter:F,onMouseLeave:q,onMouseMove:n.onMouseMove,onPointerDown:n.onPointerDown,onPointerEnter:n.onPointerEnter,...Be,className:el(_,Be.className),[a]:Je}))]})});_n.classes=S3,_n.displayName="@mantine/core/Tooltip",_n.Floating=OS,_n.Group=dp;var uG={root:"m_cf365364",indicator:"m_9e182ccd",label:"m_1738fcb2",input:"m_1714d588",control:"m_69686b9b",innerLabel:"m_78882f40"};const IPe={withItemsBorders:!0},OPe=(e,{radius:r,color:n,transitionDuration:o,size:i,transitionTimingFunction:a})=>({root:{"--sc-radius":r===void 0?void 0:wn(r),"--sc-color":n?Ci(n,e):void 0,"--sc-shadow":n?void 0:"var(--mantine-shadow-xs)","--sc-transition-duration":o===void 0?void 0:`${o}ms`,"--sc-transition-timing-function":a,"--sc-padding":dr(i,"sc-padding"),"--sc-font-size":Eo(i)}}),Of=ot((e,r)=>{const n=Pe("SegmentedControl",IPe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,data:d,value:u,defaultValue:p,onChange:f,size:m,name:v,disabled:w,readOnly:x,fullWidth:k,orientation:C,radius:_,color:$,transitionDuration:R,transitionTimingFunction:T,variant:A,autoContrast:z,withItemsBorders:j,mod:I,attributes:N,...L}=n,H=kt({name:"SegmentedControl",props:n,classes:uG,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:N,vars:c,varsResolver:OPe}),P=lo(),V=d.map(re=>typeof re=="string"?{label:re,value:re}:re),B=_ze(),[F,q]=S.useState(g9()),[G,U]=S.useState(null),[Y,K]=S.useState({}),O=(re,ue)=>{Y[ue]=re,K(Y)},[W,Z]=Ys({value:u,defaultValue:p,finalValue:Array.isArray(d)?V.find(re=>!re.disabled)?.value??d[0]?.value??null:null,onChange:f}),Q=oa(v),ie=V.map(re=>S.createElement(Se,{...H("control"),mod:{active:W===re.value,orientation:C},key:re.value},S.createElement("input",{...H("input"),disabled:w||re.disabled,type:"radio",name:Q,value:re.value,id:`${Q}-${re.value}`,checked:W===re.value,onChange:()=>!x&&Z(re.value),"data-focus-ring":P.focusRing,key:`${re.value}-input`}),S.createElement(Se,{component:"label",...H("label"),mod:{active:W===re.value&&!(w||re.disabled),disabled:w||re.disabled,"read-only":x},htmlFor:`${Q}-${re.value}`,ref:ue=>O(ue,re.value),__vars:{"--sc-label-color":$!==void 0?$9({color:$,theme:P,autoContrast:z}):void 0},key:`${re.value}-label`},y.jsx("span",{...H("innerLabel"),children:re.label})))),te=$r(r,re=>U(re));return hze(()=>{q(g9())},[d.length]),d.length===0?null:y.jsxs(Se,{...H("root"),variant:A,size:m,ref:te,mod:[{"full-width":k,orientation:C,initialized:B,"with-items-borders":j},I],...L,role:"radiogroup","data-disabled":w,children:[typeof W=="string"&&y.jsx(h3,{target:Y[W],parent:G,component:"span",transitionDuration:"var(--sc-transition-duration)",...H("indicator")},F),ie]})});Of.classes=uG,Of.displayName="@mantine/core/SegmentedControl";const[LPe,E3]=na("SliderProvider was not found in tree"),pG=S.forwardRef(({size:e,disabled:r,variant:n,color:o,thumbSize:i,radius:a,...l},s)=>{const{getStyles:c}=E3();return y.jsx(Se,{tabIndex:-1,variant:n,size:e,ref:s,...c("root"),...l})});pG.displayName="@mantine/core/SliderRoot";const hG=S.forwardRef(({max:e,min:r,value:n,position:o,label:i,dragging:a,onMouseDown:l,onKeyDownCapture:s,labelTransitionProps:c,labelAlwaysOn:d,thumbLabel:u,onFocus:p,onBlur:f,showLabelOnHover:m,isHovered:v,children:w=null,disabled:x},k)=>{const{getStyles:C}=E3(),[_,$]=S.useState(!1),R=d||a||_||m&&v;return y.jsxs(Se,{tabIndex:0,role:"slider","aria-label":u,"aria-valuemax":e,"aria-valuemin":r,"aria-valuenow":n,ref:k,__vars:{"--slider-thumb-offset":`${o}%`},...C("thumb",{focusable:!0}),mod:{dragging:a,disabled:x},onFocus:T=>{$(!0),typeof p=="function"&&p(T)},onBlur:T=>{$(!1),typeof f=="function"&&f(T)},onTouchStart:l,onMouseDown:l,onKeyDownCapture:s,onClick:T=>T.stopPropagation(),children:[w,y.jsx(wd,{mounted:i!=null&&!!R,transition:"fade",duration:0,...c,children:T=>y.jsx("div",{...C("label",{style:T}),children:i})})]})});hG.displayName="@mantine/core/SliderThumb";function fG({value:e,min:r,max:n}){const o=(e-r)/(n-r)*100;return Math.min(Math.max(o,0),100)}function FPe({mark:e,offset:r,value:n,inverted:o=!1}){return o?typeof r=="number"&&e.value<=r||e.value>=n:typeof r=="number"?e.value>=r&&e.value<=n:e.value<=n}function gG({marks:e,min:r,max:n,disabled:o,value:i,offset:a,inverted:l}){const{getStyles:s}=E3();if(!e)return null;const c=e.map((d,u)=>S.createElement(Se,{...s("markWrapper"),__vars:{"--mark-offset":`${fG({value:d.value,min:r,max:n})}%`},key:u},y.jsx(Se,{...s("mark"),mod:{filled:FPe({mark:d,value:i,offset:a,inverted:l}),disabled:o}}),d.label&&y.jsx("div",{...s("markLabel"),children:d.label})));return y.jsx("div",{children:c})}gG.displayName="@mantine/core/SliderMarks";function mG({filled:e,children:r,offset:n,disabled:o,marksOffset:i,inverted:a,containerProps:l,...s}){const{getStyles:c}=E3();return y.jsx(Se,{...c("trackContainer"),mod:{disabled:o},...l,children:y.jsxs(Se,{...c("track"),mod:{inverted:a,disabled:o},children:[y.jsx(Se,{mod:{inverted:a,disabled:o},__vars:{"--slider-bar-width":`calc(${e}% + 2 * var(--slider-size))`,"--slider-bar-offset":`calc(${n}% - var(--slider-size))`},...c("bar")}),r,y.jsx(gG,{...s,offset:i,disabled:o,inverted:a})]})})}mG.displayName="@mantine/core/SliderTrack";function VPe({value:e,containerWidth:r,min:n,max:o,step:i,precision:a}){const l=(r?Math.min(Math.max(e,0),r)/r:e)*(o-n),s=(l!==0?Math.round(l/i)*i:0)+n,c=Math.max(s,n);return a!==void 0?Number(c.toFixed(a)):c}function C3(e,r){return parseFloat(e.toFixed(r))}function qPe(e){if(!e)return 0;const r=e.toString().split(".");return r.length>1?r[1].length:0}function LS(e,r){const n=[...r].sort((o,i)=>o.value-i.value).find(o=>o.value>e);return n?n.value:e}function FS(e,r){const n=[...r].sort((o,i)=>i.value-o.value).find(o=>o.valuen.value-o.value);return r.length>0?r[0].value:0}function vG(e){const r=[...e].sort((n,o)=>n.value-o.value);return r.length>0?r[r.length-1].value:100}var bG={root:"m_dd36362e",label:"m_c9357328",thumb:"m_c9a9a60a",trackContainer:"m_a8645c2",track:"m_c9ade57f",bar:"m_38aeed47",markWrapper:"m_b7b0423a",mark:"m_dd33bc19",markLabel:"m_68c77a5b"};const HPe={radius:"xl",min:0,max:100,step:1,marks:[],label:e=>e,labelTransitionProps:{transition:"fade",duration:0},thumbLabel:"",showLabelOnHover:!0,scale:e=>e,size:"md"},UPe=(e,{size:r,color:n,thumbSize:o,radius:i})=>({root:{"--slider-size":dr(r,"slider-size"),"--slider-color":n?Ci(n,e):void 0,"--slider-radius":i===void 0?void 0:wn(i),"--slider-thumb-size":o!==void 0?$e(o):"calc(var(--slider-size) * 2)"}}),VS=ot((e,r)=>{const n=Pe("Slider",HPe,e),{classNames:o,styles:i,value:a,onChange:l,onChangeEnd:s,size:c,min:d,max:u,domain:p,step:f,precision:m,defaultValue:v,name:w,marks:x,label:k,labelTransitionProps:C,labelAlwaysOn:_,thumbLabel:$,showLabelOnHover:R,thumbChildren:T,disabled:A,unstyled:z,scale:j,inverted:I,className:N,style:L,vars:H,hiddenInputProps:P,restrictToMarks:V,thumbProps:B,attributes:F,...q}=n,G=kt({name:"Slider",props:n,classes:bG,classNames:o,className:N,styles:i,style:L,attributes:F,vars:H,varsResolver:UPe,unstyled:z}),{dir:U}=bd(),[Y,K]=S.useState(!1),[O,W]=Ys({value:typeof a=="number"?hd(a,d,u):a,defaultValue:typeof v=="number"?hd(v,d,u):v,finalValue:hd(0,d,u),onChange:l}),Z=S.useRef(O),Q=S.useRef(s);S.useEffect(()=>{Q.current=s},[s]);const ie=S.useRef(null),te=S.useRef(null),[re,ue]=p||[d,u],_e=fG({value:O,min:re,max:ue}),ce=j(O),pe=typeof k=="function"?k(ce):k,xe=m??qPe(f),je=S.useCallback(({x:Ve})=>{if(!A){const qe=VPe({value:Ve,min:re,max:ue,step:f,precision:xe}),Xe=hd(qe,d,u);W(V&&x?.length?TH(Xe,x.map(It=>It.value)):Xe),Z.current=Xe}},[A,d,u,re,ue,f,xe,W,x,V]),Be=S.useCallback(()=>{if(!A&&Q.current){const Ve=V&&x?.length?TH(Z.current,x.map(qe=>qe.value)):Z.current;Q.current(Ve)}},[A,x,V]),{ref:Je,active:st}=kH(je,{onScrubEnd:Be},U),Le=S.useCallback(Ve=>{!A&&Q.current&&Q.current(Ve)},[A]),St=Ve=>{if(!A)switch(Ve.key){case"ArrowUp":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=LS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(O+f,d),u),xe);W(qe),Le(qe);break}case"ArrowRight":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?FS(O,x):LS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(U==="rtl"?O-f:O+f,d),u),xe);W(qe),Le(qe);break}case"ArrowDown":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=FS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(O-f,d),u),xe);W(qe),Le(qe);break}case"ArrowLeft":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?LS(O,x):FS(O,x);W(Xe),Le(Xe);break}const qe=C3(Math.min(Math.max(U==="rtl"?O+f:O-f,d),u),xe);W(qe),Le(qe);break}case"Home":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(yG(x)),Le(yG(x));break}W(d),Le(d);break}case"End":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(vG(x)),Le(vG(x));break}W(u),Le(u);break}}};return y.jsx(LPe,{value:{getStyles:G},children:y.jsxs(pG,{...q,ref:$r(r,ie),onKeyDownCapture:St,onMouseDownCapture:()=>ie.current?.focus(),size:c,disabled:A,children:[y.jsx(mG,{inverted:I,offset:0,filled:_e,marks:x,min:re,max:ue,value:ce,disabled:A,containerProps:{ref:Je,onMouseEnter:R?()=>K(!0):void 0,onMouseLeave:R?()=>K(!1):void 0},children:y.jsx(hG,{max:ue,min:re,value:ce,position:_e,dragging:st,label:pe,ref:te,labelTransitionProps:C,labelAlwaysOn:_,thumbLabel:$,showLabelOnHover:R,isHovered:Y,disabled:A,...B,children:T})}),y.jsx("input",{type:"hidden",name:w,value:ce,...P})]})})});VS.classes=bG,VS.displayName="@mantine/core/Slider";const qS=ot((e,r)=>{const{w:n,h:o,miw:i,mih:a,...l}=Pe("Space",null,e);return y.jsx(Se,{ref:r,...l,w:n,miw:i??n,h:o,mih:a??o})});qS.displayName="@mantine/core/Space";var xG={root:"m_6d731127"};const WPe={gap:"md",align:"stretch",justify:"flex-start"},GPe=(e,{gap:r,align:n,justify:o})=>({root:{"--stack-gap":Gs(r),"--stack-align":n,"--stack-justify":o}}),Lo=ot((e,r)=>{const n=Pe("Stack",WPe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,align:d,justify:u,gap:p,variant:f,attributes:m,...v}=n,w=kt({name:"Stack",props:n,classes:xG,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:m,vars:c,varsResolver:GPe});return y.jsx(Se,{ref:r,...w("root"),variant:f,...v})});Lo.classes=xG,Lo.displayName="@mantine/core/Stack";const[YPe,HS]=na("Tabs component was not found in the tree");var wy={root:"m_89d60db1","list--default":"m_576c9d4",list:"m_89d33d6d",tab:"m_4ec4dce6",panel:"m_b0c91715",tabSection:"m_fc420b1f",tabLabel:"m_42bbd1ae","tab--default":"m_539e827b","list--outline":"m_6772fbd5","tab--outline":"m_b59ab47c","tab--pills":"m_c3381914"};const ky=ot((e,r)=>{const n=Pe("TabsList",null,e),{children:o,className:i,grow:a,justify:l,classNames:s,styles:c,style:d,mod:u,...p}=n,f=HS();return y.jsx(Se,{...p,...f.getStyles("list",{className:i,style:d,classNames:s,styles:c,props:n,variant:f.variant}),ref:r,role:"tablist",variant:f.variant,mod:[{grow:a,orientation:f.orientation,placement:f.orientation==="vertical"&&f.placement,inverted:f.inverted},u],"aria-orientation":f.orientation,__vars:{"--tabs-justify":l},children:o})});ky.classes=wy,ky.displayName="@mantine/core/TabsList";const rc=ot((e,r)=>{const n=Pe("TabsPanel",null,e),{children:o,className:i,value:a,classNames:l,styles:s,style:c,mod:d,keepMounted:u,...p}=n,f=HS(),m=f.value===a,v=f.keepMounted||u||m?o:null;return y.jsx(Se,{...f.getStyles("panel",{className:i,classNames:l,styles:s,style:[c,m?void 0:{display:"none"}],props:n}),ref:r,mod:[{orientation:f.orientation},d],role:"tabpanel",id:f.getPanelId(a),"aria-labelledby":f.getTabId(a),...p,children:v})});rc.classes=wy,rc.displayName="@mantine/core/TabsPanel";const Lf=ot((e,r)=>{const n=Pe("TabsTab",null,e),{className:o,children:i,rightSection:a,leftSection:l,value:s,onClick:c,onKeyDown:d,disabled:u,color:p,style:f,classNames:m,styles:v,vars:w,mod:x,tabIndex:k,...C}=n,_=lo(),{dir:$}=bd(),R=HS(),T=s===R.value,A=j=>{R.onChange(R.allowTabDeactivation&&s===R.value?null:s),c?.(j)},z={classNames:m,styles:v,props:n};return y.jsxs(pr,{...R.getStyles("tab",{className:o,style:f,variant:R.variant,...z}),disabled:u,unstyled:R.unstyled,variant:R.variant,mod:[{active:T,disabled:u,orientation:R.orientation,inverted:R.inverted,placement:R.orientation==="vertical"&&R.placement},x],ref:r,role:"tab",id:R.getTabId(s),"aria-selected":T,tabIndex:k!==void 0?k:T||R.value===null?0:-1,"aria-controls":R.getPanelId(s),onClick:A,__vars:{"--tabs-color":p?Ci(p,_):void 0},onKeyDown:iy({siblingSelector:'[role="tab"]',parentSelector:'[role="tablist"]',activateOnFocus:R.activateTabWithKeyboard,loop:R.loop,orientation:R.orientation||"horizontal",dir:$,onKeyDown:d}),...C,children:[l&&y.jsx("span",{...R.getStyles("tabSection",z),"data-position":"left",children:l}),i&&y.jsx("span",{...R.getStyles("tabLabel",z),children:i}),a&&y.jsx("span",{...R.getStyles("tabSection",z),"data-position":"right",children:a})]})});Lf.classes=wy,Lf.displayName="@mantine/core/TabsTab";const wG="Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value",XPe={keepMounted:!0,orientation:"horizontal",loop:!0,activateTabWithKeyboard:!0,variant:"default",placement:"left"},KPe=(e,{radius:r,color:n,autoContrast:o})=>({root:{"--tabs-radius":wn(r),"--tabs-color":Ci(n,e),"--tabs-text-color":fTe(o,e)?$9({color:n,theme:e,autoContrast:o}):void 0}}),up=ot((e,r)=>{const n=Pe("Tabs",XPe,e),{defaultValue:o,value:i,onChange:a,orientation:l,children:s,loop:c,id:d,activateTabWithKeyboard:u,allowTabDeactivation:p,variant:f,color:m,radius:v,inverted:w,placement:x,keepMounted:k,classNames:C,styles:_,unstyled:$,className:R,style:T,vars:A,autoContrast:z,mod:j,attributes:I,...N}=n,L=oa(d),[H,P]=Ys({value:i,defaultValue:o,finalValue:null,onChange:a}),V=kt({name:"Tabs",props:n,classes:wy,className:R,style:T,classNames:C,styles:_,unstyled:$,attributes:I,vars:A,varsResolver:KPe});return y.jsx(YPe,{value:{placement:x,value:H,orientation:l,id:L,loop:c,activateTabWithKeyboard:u,getTabId:cH(`${L}-tab`,wG),getPanelId:cH(`${L}-panel`,wG),onChange:P,allowTabDeactivation:p,variant:f,color:m,radius:v,inverted:w,keepMounted:k,unstyled:$,getStyles:V},children:y.jsx(Se,{ref:r,id:L,variant:f,mod:[{orientation:l,inverted:l==="horizontal"&&w,placement:l==="vertical"&&x},j],...V("root"),...N,children:s})})});up.classes=wy,up.displayName="@mantine/core/Tabs",up.Tab=Lf,up.Panel=rc,up.List=ky;var kG={root:"m_7341320d"};const ZPe=(e,{size:r,radius:n,variant:o,gradient:i,color:a,autoContrast:l})=>{const s=e.variantColorResolver({color:a||e.primaryColor,theme:e,gradient:i,variant:o||"filled",autoContrast:l});return{root:{"--ti-size":dr(r,"ti-size"),"--ti-radius":n===void 0?void 0:wn(n),"--ti-bg":a||o?s.background:void 0,"--ti-color":a||o?s.color:void 0,"--ti-bd":a||o?s.border:void 0}}},Ti=ot((e,r)=>{const n=Pe("ThemeIcon",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,autoContrast:d,attributes:u,...p}=n,f=kt({name:"ThemeIcon",classes:kG,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:u,vars:c,varsResolver:ZPe});return y.jsx(Se,{ref:r,...f("root"),...p})});Ti.classes=kG,Ti.displayName="@mantine/core/ThemeIcon";const QPe=["h1","h2","h3","h4","h5","h6"],JPe=["xs","sm","md","lg","xl"];function eMe(e,r){const n=r!==void 0?r:`h${e}`;return QPe.includes(n)?{fontSize:`var(--mantine-${n}-font-size)`,fontWeight:`var(--mantine-${n}-font-weight)`,lineHeight:`var(--mantine-${n}-line-height)`}:JPe.includes(n)?{fontSize:`var(--mantine-font-size-${n})`,fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}:{fontSize:$e(n),fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}}var _G={root:"m_8a5d1357"};const tMe={order:1},rMe=(e,{order:r,size:n,lineClamp:o,textWrap:i})=>{const a=eMe(r||1,n);return{root:{"--title-fw":a.fontWeight,"--title-lh":a.lineHeight,"--title-fz":a.fontSize,"--title-line-clamp":typeof o=="number"?o.toString():void 0,"--title-text-wrap":i}}},pp=ot((e,r)=>{const n=Pe("Title",tMe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,order:c,vars:d,size:u,variant:p,lineClamp:f,textWrap:m,mod:v,attributes:w,...x}=n,k=kt({name:"Title",props:n,classes:_G,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:w,vars:d,varsResolver:rMe});return[1,2,3,4,5,6].includes(c)?y.jsx(Se,{...k("root"),component:`h${c}`,variant:p,ref:r,mod:[{order:c,"data-line-clamp":typeof f=="number"},v],size:u,...x}):null});pp.classes=_G,pp.displayName="@mantine/core/Title";function SG(e,r,n){if(!e||!r)return[];const o=n.indexOf(e),i=n.indexOf(r),a=Math.min(o,i),l=Math.max(o,i);return n.slice(a,l+1)}function US({node:e,getStyles:r,rootIndex:n,controller:o,expandOnClick:i,selectOnClick:a,isSubtree:l,level:s=1,renderNode:c,flatValues:d,allowRangeSelection:u,expandOnSpace:p,checkOnSpace:f}){const m=S.useRef(null),v=(e.children||[]).map(_=>y.jsx(US,{node:_,flatValues:d,getStyles:r,rootIndex:void 0,level:s+1,controller:o,expandOnClick:i,isSubtree:!0,renderNode:c,selectOnClick:a,allowRangeSelection:u,expandOnSpace:p,checkOnSpace:f},_.value)),w=_=>{if(_.nativeEvent.code==="ArrowRight"&&(_.stopPropagation(),_.preventDefault(),o.expandedState[e.value]?_.currentTarget.querySelector("[role=treeitem]")?.focus():o.expand(e.value)),_.nativeEvent.code==="ArrowLeft"&&(_.stopPropagation(),_.preventDefault(),o.expandedState[e.value]&&(e.children||[]).length>0?o.collapse(e.value):l&&vf(_.currentTarget,"[role=treeitem]")?.focus()),_.nativeEvent.code==="ArrowDown"||_.nativeEvent.code==="ArrowUp"){const $=vf(_.currentTarget,"[data-tree-root]");if(!$)return;_.stopPropagation(),_.preventDefault();const R=Array.from($.querySelectorAll("[role=treeitem]")),T=R.indexOf(_.currentTarget);if(T===-1)return;const A=_.nativeEvent.code==="ArrowDown"?T+1:T-1;if(R[A]?.focus(),_.shiftKey){const z=R[A];z&&o.setSelectedState(SG(o.anchorNode,z.dataset.value,d))}}_.nativeEvent.code==="Space"&&(p&&(_.stopPropagation(),_.preventDefault(),o.toggleExpanded(e.value)),f&&(_.stopPropagation(),_.preventDefault(),o.isNodeChecked(e.value)?o.uncheckNode(e.value):o.checkNode(e.value)))},x=_=>{_.stopPropagation(),u&&_.shiftKey&&o.anchorNode?(o.setSelectedState(SG(o.anchorNode,e.value,d)),m.current?.focus()):(i&&o.toggleExpanded(e.value),a&&o.select(e.value),m.current?.focus())},k=o.selectedState.includes(e.value),C={...r("label"),onClick:x,"data-selected":k||void 0,"data-value":e.value,"data-hovered":o.hoveredNode===e.value||void 0};return y.jsxs("li",{...r("node",{style:{"--label-offset":`calc(var(--level-offset) * ${s-1})`}}),role:"treeitem","aria-selected":k,"data-value":e.value,"data-selected":k||void 0,"data-hovered":o.hoveredNode===e.value||void 0,"data-level":s,tabIndex:n===0?0:-1,onKeyDown:w,ref:m,onMouseOver:_=>{_.stopPropagation(),o.setHoveredNode(e.value)},onMouseLeave:_=>{_.stopPropagation(),o.setHoveredNode(null)},children:[typeof c=="function"?c({node:e,level:s,selected:k,tree:o,expanded:o.expandedState[e.value]||!1,hasChildren:Array.isArray(e.children)&&e.children.length>0,elementProps:C}):y.jsx("div",{...C,children:e.label}),o.expandedState[e.value]&&v.length>0&&y.jsx(Se,{component:"ul",role:"group",...r("subtree"),"data-level":s,children:v})]})}US.displayName="@mantine/core/TreeNode";function $3(e,r,n=[]){const o=[];for(const i of e)if(Array.isArray(i.children)&&i.children.length>0){const a=$3(i.children,r,n);if(a.currentTreeChecked.length===i.children.length){const l=a.currentTreeChecked.every(c=>c.checked),s={checked:l,indeterminate:!l,value:i.value,hasChildren:!0};o.push(s),n.push(s)}else if(a.currentTreeChecked.length>0){const l={checked:!1,indeterminate:!0,value:i.value,hasChildren:!0};o.push(l),n.push(l)}}else if(r.includes(i.value)){const a={checked:!0,indeterminate:!1,value:i.value,hasChildren:!1};o.push(a),n.push(a)}return{result:n,currentTreeChecked:o}}function EG(e,r){for(const n of r){if(n.value===e)return n;if(Array.isArray(n.children)){const o=EG(e,n.children);if(o)return o}}return null}function R3(e,r,n=[]){const o=EG(e,r);return o?!Array.isArray(o.children)||o.children.length===0?[o.value]:(o.children.forEach(i=>{Array.isArray(i.children)&&i.children.length>0?R3(i.value,r,n):n.push(i.value)}),n):n}function CG(e){return e.reduce((r,n)=>(Array.isArray(n.children)&&n.children.length>0?r.push(...CG(n.children)):r.push(n.value),r),[])}function nMe(e,r,n){return n.length===0?!1:n.includes(e)?!0:$3(r,n).result.some(o=>o.value===e&&o.checked)}const oMe=zH(nMe);function iMe(e,r,n){return n.length===0?!1:$3(r,n).result.some(o=>o.value===e&&o.indeterminate)}const aMe=zH(iMe);function $G(e,r,n,o={}){return r.forEach(i=>{o[i.value]=i.value in e?e[i.value]:i.value===n,Array.isArray(i.children)&&$G(e,i.children,n,o)}),o}function lMe(e,r){const n=[];return e.forEach(o=>n.push(...R3(o,r))),Array.from(new Set(n))}function _y({initialSelectedState:e=[],initialCheckedState:r=[],initialExpandedState:n={},multiple:o=!1,onNodeCollapse:i,onNodeExpand:a}={}){const[l,s]=S.useState([]),[c,d]=S.useState(n),[u,p]=S.useState(e),[f,m]=S.useState(r),[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(B=>{d(F=>$G(F,B,u)),m(F=>lMe(F,B)),s(B)},[u,f]),_=S.useCallback(B=>{d(F=>{const q={...F,[B]:!F[B]};return q[B]?a?.(B):i?.(B),q})},[i,a]),$=S.useCallback(B=>{d(F=>(F[B]!==!1&&i?.(B),{...F,[B]:!1}))},[i]),R=S.useCallback(B=>{d(F=>(F[B]!==!0&&a?.(B),{...F,[B]:!0}))},[a]),T=S.useCallback(()=>{d(B=>{const F={...B};return Object.keys(F).forEach(q=>{F[q]=!0}),F})},[]),A=S.useCallback(()=>{d(B=>{const F={...B};return Object.keys(F).forEach(q=>{F[q]=!1}),F})},[]),z=S.useCallback(B=>p(F=>o?F.includes(B)?(w(null),F.filter(q=>q!==B)):(w(B),[...F,B]):F.includes(B)?(w(null),[]):(w(B),[B])),[]),j=S.useCallback(B=>{w(B),p(F=>o?F.includes(B)?F:[...F,B]:[B])},[]),I=S.useCallback(B=>{v===B&&w(null),p(F=>F.filter(q=>q!==B))},[]),N=S.useCallback(()=>{p([]),w(null)},[]),L=S.useCallback(B=>{const F=R3(B,l);m(q=>Array.from(new Set([...q,...F])))},[l]),H=S.useCallback(B=>{const F=R3(B,l);m(q=>q.filter(G=>!F.includes(G)))},[l]),P=S.useCallback(()=>{m(()=>CG(l))},[l]),V=S.useCallback(()=>{m([])},[]);return{multiple:o,expandedState:c,selectedState:u,checkedState:f,anchorNode:v,initialize:C,toggleExpanded:_,collapse:$,expand:R,expandAllNodes:T,collapseAllNodes:A,setExpandedState:d,checkNode:L,uncheckNode:H,checkAllNodes:P,uncheckAllNodes:V,setCheckedState:m,toggleSelected:z,select:j,deselect:I,clearSelected:N,setSelectedState:p,hoveredNode:x,setHoveredNode:k,getCheckedNodes:()=>$3(l,f).result,isNodeChecked:B=>oMe(B,l,f),isNodeIndeterminate:B=>aMe(B,l,f)}}var RG={root:"m_f698e191",subtree:"m_75f3ecf",node:"m_f6970eb1",label:"m_dc283425"};function zG(e){return e.reduce((r,n)=>(r.push(n.value),n.children&&r.push(...zG(n.children)),r),[])}const sMe={expandOnClick:!0,allowRangeSelection:!0,expandOnSpace:!0},cMe=(e,{levelOffset:r})=>({root:{"--level-offset":Gs(r)}}),Ff=ot((e,r)=>{const n=Pe("Tree",sMe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,data:d,expandOnClick:u,tree:p,renderNode:f,selectOnClick:m,clearSelectionOnOutsideClick:v,allowRangeSelection:w,expandOnSpace:x,levelOffset:k,checkOnSpace:C,attributes:_,...$}=n,R=_y(),T=p||R,A=kt({name:"Tree",classes:RG,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:cMe}),z=hH(()=>v&&T.clearSelected()),j=$r(r,z),I=S.useMemo(()=>zG(d),[d]);S.useEffect(()=>{T.initialize(d)},[d]);const N=d.map((L,H)=>y.jsx(US,{node:L,getStyles:A,rootIndex:H,expandOnClick:u,selectOnClick:m,controller:T,renderNode:f,flatValues:I,allowRangeSelection:w,expandOnSpace:x,checkOnSpace:C},L.value));return y.jsx(Se,{component:"ul",ref:j,...A("root"),...$,role:"tree","aria-multiselectable":T.multiple,"data-tree-root":!0,children:N})});Ff.displayName="@mantine/core/Tree",Ff.classes=RG;const WS=S.createContext(null);function TG(){const e=S.useContext(WS);if(!e)throw new Error("useRootContainer must be used within a RootContainer");return e}function dMe(){return TG().ref}function uMe(){return TG().ref.current}const jG=S.createContext(null);function pMe(){const e=S.useContext(jG);return e===null&&console.warn("ReduceGraphicsMode is not provided"),e??!1}const[hMe,fMe]=na("PanningAtomSafeCtx is not provided");function gMe({id:e,className:r,reduceGraphics:n=!1,children:o}){const[i,a]=S.useState(!1),l=S.useRef(null),s=S.useRef(null);s.current||(s.current=Q$e(!1)),f7(()=>{a(!0)},[]),S.useEffect(()=>s.current?.subscribe(d=>{l.current?.setAttribute("data-likec4-diagram-panning",d?"true":"false")}),[]);const c=S.useMemo(()=>({id:e,ref:l}),[e,l]);return y.jsx(hMe,{value:s.current,children:y.jsx(jG.Provider,{value:n,children:y.jsx("div",{id:e,className:Ge("likec4-root",r),ref:l,...n&&{"data-likec4-reduced-graphics":!0},children:i&&!!c.ref.current&&y.jsx(WS.Provider,{value:c,children:o})})})})}const Sy=S.createContext(null),GS=S.createContext(null);function mMe(){return S.useContext(Sy)}function Fo(){const e=S.useContext(Sy);if(!e)throw new Error("LikeC4Model not found. Make sure you have LikeC4ModelProvider.");return e}function yMe(){const e=Fo(),[r,n]=S.useState(e.$data.specification);return S.useEffect(()=>{n(o=>tt(o,e.$data.specification)?o:e.$data.specification)},[e]),r}const AG=S.createContext({}),vMe=C5e,bMe=e=>{const r=e.color;if(GO(e))return` --colors-likec4-tag-bg: ${r}; --colors-likec4-tag-bg-hover: color-mix(in oklab, ${r}, var(--colors-likec4-mix-color) 20%); - `;if(!vNe.includes(r))return"";let n="12";return["mint","grass","lime","yellow","amber"].includes(r)&&(n="dark-2"),` + `;if(!vMe.includes(r))return"";let n="12";return["mint","grass","lime","yellow","amber"].includes(r)&&(n="dark-2"),` --colors-likec4-tag-border: var(--colors-${r}-8); --colors-likec4-tag-bg: var(--colors-${r}-9); --colors-likec4-tag-bg-hover: var(--colors-${r}-10); --colors-likec4-tag-text: var(--colors-${r}-${n}); - `};function xNe(e,r){return!e||tp(e)?"":Jr(uw(e),Mq(([n,o])=>[`:is(${r} [data-likec4-tag="${n}"]) {`,bNe(o),"}"]),Lq(` -`))}function wNe({children:e,rootSelector:r}){const n=yNe().tags,o=xNe(n,r);return y.jsxs(AG.Provider,{value:n,children:[o!==""&&y.jsx(kNe,{stylesheet:o}),e]})}const kNe=S.memo(({stylesheet:e})=>{const r=np()?.();return y.jsx("style",{"data-likec4-tags":!0,type:"text/css",dangerouslySetInnerHTML:{__html:e},nonce:r})});function _Ne(e){return S.useContext(AG)[e]??{color:"tomato"}}function DG(){return oa().replace("mantine-","likec4-")}var SNe="css,pos,insetX,insetY,insetEnd,end,insetStart,start,flexDir,p,pl,pr,pt,pb,py,paddingY,paddingX,px,pe,paddingEnd,ps,paddingStart,ml,mr,mt,mb,m,my,marginY,mx,marginX,me,marginEnd,ms,marginStart,ringWidth,ringColor,ring,ringOffset,w,minW,maxW,h,minH,maxH,textShadowColor,bgPosition,bgPositionX,bgPositionY,bgAttachment,bgClip,bg,bgColor,bgOrigin,bgImage,bgRepeat,bgBlendMode,bgSize,bgGradient,bgLinear,bgRadial,bgConic,rounded,roundedTopLeft,roundedTopRight,roundedBottomRight,roundedBottomLeft,roundedTop,roundedRight,roundedBottom,roundedLeft,roundedStartStart,roundedStartEnd,roundedStart,roundedEndStart,roundedEndEnd,roundedEnd,borderX,borderXWidth,borderXColor,borderY,borderYWidth,borderYColor,borderStart,borderStartWidth,borderStartColor,borderEnd,borderEndWidth,borderEndColor,shadow,shadowColor,x,y,z,scrollMarginY,scrollMarginX,scrollPaddingY,scrollPaddingX,aspectRatio,boxDecorationBreak,zIndex,boxSizing,objectPosition,objectFit,overscrollBehavior,overscrollBehaviorX,overscrollBehaviorY,position,top,left,inset,insetInline,insetBlock,insetBlockEnd,insetBlockStart,insetInlineEnd,insetInlineStart,right,bottom,float,visibility,display,hideFrom,hideBelow,flexBasis,flex,flexDirection,flexGrow,flexShrink,gridTemplateColumns,gridTemplateRows,gridColumn,gridRow,gridColumnStart,gridColumnEnd,gridAutoFlow,gridAutoColumns,gridAutoRows,gap,gridGap,gridRowGap,gridColumnGap,rowGap,columnGap,justifyContent,alignContent,alignItems,alignSelf,padding,paddingLeft,paddingRight,paddingTop,paddingBottom,paddingBlock,paddingBlockEnd,paddingBlockStart,paddingInline,paddingInlineEnd,paddingInlineStart,marginLeft,marginRight,marginTop,marginBottom,margin,marginBlock,marginBlockEnd,marginBlockStart,marginInline,marginInlineEnd,marginInlineStart,spaceX,spaceY,outlineWidth,outlineColor,outline,outlineOffset,focusRing,focusVisibleRing,focusRingColor,focusRingOffset,focusRingWidth,focusRingStyle,divideX,divideY,divideColor,divideStyle,width,inlineSize,minWidth,minInlineSize,maxWidth,maxInlineSize,height,blockSize,minHeight,minBlockSize,maxHeight,maxBlockSize,boxSize,color,fontFamily,fontSize,fontSizeAdjust,fontPalette,fontKerning,fontFeatureSettings,fontWeight,fontSmoothing,fontVariant,fontVariantAlternates,fontVariantCaps,fontVariationSettings,fontVariantNumeric,letterSpacing,lineHeight,textAlign,textDecoration,textDecorationColor,textEmphasisColor,textDecorationStyle,textDecorationThickness,textUnderlineOffset,textTransform,textIndent,textShadow,WebkitTextFillColor,textOverflow,verticalAlign,wordBreak,textWrap,truncate,lineClamp,listStyleType,listStylePosition,listStyleImage,listStyle,backgroundPosition,backgroundPositionX,backgroundPositionY,backgroundAttachment,backgroundClip,background,backgroundColor,backgroundOrigin,backgroundImage,backgroundRepeat,backgroundBlendMode,backgroundSize,backgroundGradient,backgroundLinear,backgroundRadial,backgroundConic,textGradient,gradientFromPosition,gradientToPosition,gradientFrom,gradientTo,gradientVia,gradientViaPosition,borderRadius,borderTopLeftRadius,borderTopRightRadius,borderBottomRightRadius,borderBottomLeftRadius,borderTopRadius,borderRightRadius,borderBottomRadius,borderLeftRadius,borderStartStartRadius,borderStartEndRadius,borderStartRadius,borderEndStartRadius,borderEndEndRadius,borderEndRadius,border,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,borderBlockStartWidth,borderBlockEndWidth,borderColor,borderInline,borderInlineWidth,borderInlineColor,borderBlock,borderBlockWidth,borderBlockColor,borderLeft,borderLeftColor,borderInlineStart,borderInlineStartWidth,borderInlineStartColor,borderRight,borderRightColor,borderInlineEnd,borderInlineEndWidth,borderInlineEndColor,borderTop,borderTopColor,borderBottom,borderBottomColor,borderBlockEnd,borderBlockEndColor,borderBlockStart,borderBlockStartColor,opacity,boxShadow,boxShadowColor,mixBlendMode,filter,brightness,contrast,grayscale,hueRotate,invert,saturate,sepia,dropShadow,blur,backdropFilter,backdropBlur,backdropBrightness,backdropContrast,backdropGrayscale,backdropHueRotate,backdropInvert,backdropOpacity,backdropSaturate,backdropSepia,borderCollapse,borderSpacing,borderSpacingX,borderSpacingY,tableLayout,transitionTimingFunction,transitionDelay,transitionDuration,transitionProperty,transition,animation,animationName,animationTimingFunction,animationDuration,animationDelay,animationPlayState,animationComposition,animationFillMode,animationDirection,animationIterationCount,animationRange,animationState,animationRangeStart,animationRangeEnd,animationTimeline,transformOrigin,transformBox,transformStyle,transform,rotate,rotateX,rotateY,rotateZ,scale,scaleX,scaleY,translate,translateX,translateY,translateZ,accentColor,caretColor,scrollBehavior,scrollbar,scrollbarColor,scrollbarGutter,scrollbarWidth,scrollMargin,scrollMarginLeft,scrollMarginRight,scrollMarginTop,scrollMarginBottom,scrollMarginBlock,scrollMarginBlockEnd,scrollMarginBlockStart,scrollMarginInline,scrollMarginInlineEnd,scrollMarginInlineStart,scrollPadding,scrollPaddingBlock,scrollPaddingBlockStart,scrollPaddingBlockEnd,scrollPaddingInline,scrollPaddingInlineEnd,scrollPaddingInlineStart,scrollPaddingLeft,scrollPaddingRight,scrollPaddingTop,scrollPaddingBottom,scrollSnapAlign,scrollSnapStop,scrollSnapType,scrollSnapStrictness,scrollSnapMargin,scrollSnapMarginTop,scrollSnapMarginBottom,scrollSnapMarginLeft,scrollSnapMarginRight,scrollSnapCoordinate,scrollSnapDestination,scrollSnapPointsX,scrollSnapPointsY,scrollSnapTypeX,scrollSnapTypeY,scrollTimeline,scrollTimelineAxis,scrollTimelineName,touchAction,userSelect,overflow,overflowWrap,overflowX,overflowY,overflowAnchor,overflowBlock,overflowInline,overflowClipBox,overflowClipMargin,overscrollBehaviorBlock,overscrollBehaviorInline,fill,stroke,strokeWidth,strokeDasharray,strokeDashoffset,strokeLinecap,strokeLinejoin,strokeMiterlimit,strokeOpacity,srOnly,debug,appearance,backfaceVisibility,clipPath,hyphens,mask,maskImage,maskSize,textSizeAdjust,container,containerName,containerType,cursor,colorPalette,_hover,_focus,_focusWithin,_focusVisible,_disabled,_active,_visited,_target,_readOnly,_readWrite,_empty,_checked,_enabled,_expanded,_highlighted,_complete,_incomplete,_dragging,_before,_after,_firstLetter,_firstLine,_marker,_selection,_file,_backdrop,_first,_last,_only,_even,_odd,_firstOfType,_lastOfType,_onlyOfType,_peerFocus,_peerHover,_peerActive,_peerFocusWithin,_peerFocusVisible,_peerDisabled,_peerChecked,_peerInvalid,_peerExpanded,_peerPlaceholderShown,_groupFocus,_groupHover,_groupActive,_groupFocusWithin,_groupFocusVisible,_groupDisabled,_groupChecked,_groupExpanded,_groupInvalid,_indeterminate,_required,_valid,_invalid,_autofill,_inRange,_outOfRange,_placeholder,_placeholderShown,_pressed,_selected,_grabbed,_underValue,_overValue,_atValue,_default,_optional,_open,_closed,_fullscreen,_loading,_hidden,_current,_currentPage,_currentStep,_today,_unavailable,_rangeStart,_rangeEnd,_now,_topmost,_motionReduce,_motionSafe,_print,_landscape,_portrait,_dark,_light,_osDark,_osLight,_highContrast,_lessContrast,_moreContrast,_ltr,_rtl,_scrollbar,_scrollbarThumb,_scrollbarTrack,_horizontal,_vertical,_icon,_starting,_noscript,_invertedColors,_shapeSizeXs,_shapeSizeSm,_shapeSizeMd,_shapeSizeLg,_shapeSizeXl,_shapeRectangle,_shapePerson,_shapeBrowser,_shapeMobile,_shapeCylinder,_shapeStorage,_shapeQueue,_notDisabled,_reduceGraphics,_reduceGraphicsOnPan,_noReduceGraphics,_whenPanning,_smallZoom,_compoundTransparent,_edgeActive,_whenHovered,_whenSelectable,_whenSelected,_whenDimmed,_whenFocused,_p3,_srgb,_rec2020,xs,xsOnly,xsDown,sm,smOnly,smDown,md,mdOnly,mdDown,lg,lgOnly,lgDown,xl,xlOnly,xlDown,xsToSm,xsToMd,xsToLg,xsToXl,smToMd,smToLg,smToXl,mdToLg,mdToXl,lgToXl,@/xs,@/sm,@/md,@/lg,@likec4-root/xs,@likec4-root/sm,@likec4-root/md,@likec4-root/lg,@likec4-dialog/xs,@likec4-dialog/sm,@likec4-dialog/md,@likec4-dialog/lg,textStyle,layerStyle,animationStyle",ENe=SNe.split(","),CNe="WebkitAppearance,WebkitBorderBefore,WebkitBorderBeforeColor,WebkitBorderBeforeStyle,WebkitBorderBeforeWidth,WebkitBoxReflect,WebkitLineClamp,WebkitMask,WebkitMaskAttachment,WebkitMaskClip,WebkitMaskComposite,WebkitMaskImage,WebkitMaskOrigin,WebkitMaskPosition,WebkitMaskPositionX,WebkitMaskPositionY,WebkitMaskRepeat,WebkitMaskRepeatX,WebkitMaskRepeatY,WebkitMaskSize,WebkitOverflowScrolling,WebkitTapHighlightColor,WebkitTextFillColor,WebkitTextStroke,WebkitTextStrokeColor,WebkitTextStrokeWidth,WebkitTouchCallout,WebkitUserModify,WebkitUserSelect,accentColor,alignContent,alignItems,alignSelf,alignTracks,all,anchorName,anchorScope,animation,animationComposition,animationDelay,animationDirection,animationDuration,animationFillMode,animationIterationCount,animationName,animationPlayState,animationRange,animationRangeEnd,animationRangeStart,animationTimeline,animationTimingFunction,appearance,aspectRatio,backdropFilter,backfaceVisibility,background,backgroundAttachment,backgroundBlendMode,backgroundClip,backgroundColor,backgroundImage,backgroundOrigin,backgroundPosition,backgroundPositionX,backgroundPositionY,backgroundRepeat,backgroundSize,blockSize,border,borderBlock,borderBlockColor,borderBlockEnd,borderBlockEndColor,borderBlockEndStyle,borderBlockEndWidth,borderBlockStart,borderBlockStartColor,borderBlockStartStyle,borderBlockStartWidth,borderBlockStyle,borderBlockWidth,borderBottom,borderBottomColor,borderBottomLeftRadius,borderBottomRightRadius,borderBottomStyle,borderBottomWidth,borderCollapse,borderColor,borderEndEndRadius,borderEndStartRadius,borderImage,borderImageOutset,borderImageRepeat,borderImageSlice,borderImageSource,borderImageWidth,borderInline,borderInlineColor,borderInlineEnd,borderInlineEndColor,borderInlineEndStyle,borderInlineEndWidth,borderInlineStart,borderInlineStartColor,borderInlineStartStyle,borderInlineStartWidth,borderInlineStyle,borderInlineWidth,borderLeft,borderLeftColor,borderLeftStyle,borderLeftWidth,borderRadius,borderRight,borderRightColor,borderRightStyle,borderRightWidth,borderSpacing,borderStartEndRadius,borderStartStartRadius,borderStyle,borderTop,borderTopColor,borderTopLeftRadius,borderTopRightRadius,borderTopStyle,borderTopWidth,borderWidth,bottom,boxAlign,boxDecorationBreak,boxDirection,boxFlex,boxFlexGroup,boxLines,boxOrdinalGroup,boxOrient,boxPack,boxShadow,boxSizing,breakAfter,breakBefore,breakInside,captionSide,caret,caretColor,caretShape,clear,clip,clipPath,clipRule,color,colorInterpolationFilters,colorScheme,columnCount,columnFill,columnGap,columnRule,columnRuleColor,columnRuleStyle,columnRuleWidth,columnSpan,columnWidth,columns,contain,containIntrinsicBlockSize,containIntrinsicHeight,containIntrinsicInlineSize,containIntrinsicSize,containIntrinsicWidth,container,containerName,containerType,content,contentVisibility,counterIncrement,counterReset,counterSet,cursor,cx,cy,d,direction,display,dominantBaseline,emptyCells,fieldSizing,fill,fillOpacity,fillRule,filter,flex,flexBasis,flexDirection,flexFlow,flexGrow,flexShrink,flexWrap,float,floodColor,floodOpacity,font,fontFamily,fontFeatureSettings,fontKerning,fontLanguageOverride,fontOpticalSizing,fontPalette,fontSize,fontSizeAdjust,fontSmooth,fontStretch,fontStyle,fontSynthesis,fontSynthesisPosition,fontSynthesisSmallCaps,fontSynthesisStyle,fontSynthesisWeight,fontVariant,fontVariantAlternates,fontVariantCaps,fontVariantEastAsian,fontVariantEmoji,fontVariantLigatures,fontVariantNumeric,fontVariantPosition,fontVariationSettings,fontWeight,forcedColorAdjust,gap,grid,gridArea,gridAutoColumns,gridAutoFlow,gridAutoRows,gridColumn,gridColumnEnd,gridColumnGap,gridColumnStart,gridGap,gridRow,gridRowEnd,gridRowGap,gridRowStart,gridTemplate,gridTemplateAreas,gridTemplateColumns,gridTemplateRows,hangingPunctuation,height,hyphenateCharacter,hyphenateLimitChars,hyphens,imageOrientation,imageRendering,imageResolution,imeMode,initialLetter,initialLetterAlign,inlineSize,inset,insetBlock,insetBlockEnd,insetBlockStart,insetInline,insetInlineEnd,insetInlineStart,interpolateSize,isolation,justifyContent,justifyItems,justifySelf,justifyTracks,left,letterSpacing,lightingColor,lineBreak,lineClamp,lineHeight,lineHeightStep,listStyle,listStyleImage,listStylePosition,listStyleType,margin,marginBlock,marginBlockEnd,marginBlockStart,marginBottom,marginInline,marginInlineEnd,marginInlineStart,marginLeft,marginRight,marginTop,marginTrim,marker,markerEnd,markerMid,markerStart,mask,maskBorder,maskBorderMode,maskBorderOutset,maskBorderRepeat,maskBorderSlice,maskBorderSource,maskBorderWidth,maskClip,maskComposite,maskImage,maskMode,maskOrigin,maskPosition,maskRepeat,maskSize,maskType,masonryAutoFlow,mathDepth,mathShift,mathStyle,maxBlockSize,maxHeight,maxInlineSize,maxLines,maxWidth,minBlockSize,minHeight,minInlineSize,minWidth,mixBlendMode,objectFit,objectPosition,offset,offsetAnchor,offsetDistance,offsetPath,offsetPosition,offsetRotate,opacity,order,orphans,outline,outlineColor,outlineOffset,outlineStyle,outlineWidth,overflow,overflowAnchor,overflowBlock,overflowClipBox,overflowClipMargin,overflowInline,overflowWrap,overflowX,overflowY,overlay,overscrollBehavior,overscrollBehaviorBlock,overscrollBehaviorInline,overscrollBehaviorX,overscrollBehaviorY,padding,paddingBlock,paddingBlockEnd,paddingBlockStart,paddingBottom,paddingInline,paddingInlineEnd,paddingInlineStart,paddingLeft,paddingRight,paddingTop,page,pageBreakAfter,pageBreakBefore,pageBreakInside,paintOrder,perspective,perspectiveOrigin,placeContent,placeItems,placeSelf,pointerEvents,position,positionAnchor,positionArea,positionTry,positionTryFallbacks,positionTryOrder,positionVisibility,printColorAdjust,quotes,r,resize,right,rotate,rowGap,rubyAlign,rubyMerge,rubyPosition,rx,ry,scale,scrollBehavior,scrollMargin,scrollMarginBlock,scrollMarginBlockEnd,scrollMarginBlockStart,scrollMarginBottom,scrollMarginInline,scrollMarginInlineEnd,scrollMarginInlineStart,scrollMarginLeft,scrollMarginRight,scrollMarginTop,scrollPadding,scrollPaddingBlock,scrollPaddingBlockEnd,scrollPaddingBlockStart,scrollPaddingBottom,scrollPaddingInline,scrollPaddingInlineEnd,scrollPaddingInlineStart,scrollPaddingLeft,scrollPaddingRight,scrollPaddingTop,scrollSnapAlign,scrollSnapCoordinate,scrollSnapDestination,scrollSnapPointsX,scrollSnapPointsY,scrollSnapStop,scrollSnapType,scrollSnapTypeX,scrollSnapTypeY,scrollTimeline,scrollTimelineAxis,scrollTimelineName,scrollbarColor,scrollbarGutter,scrollbarWidth,shapeImageThreshold,shapeMargin,shapeOutside,shapeRendering,stopColor,stopOpacity,stroke,strokeDasharray,strokeDashoffset,strokeLinecap,strokeLinejoin,strokeMiterlimit,strokeOpacity,strokeWidth,tabSize,tableLayout,textAlign,textAlignLast,textAnchor,textBox,textBoxEdge,textBoxTrim,textCombineUpright,textDecoration,textDecorationColor,textDecorationLine,textDecorationSkip,textDecorationSkipInk,textDecorationStyle,textDecorationThickness,textEmphasis,textEmphasisColor,textEmphasisPosition,textEmphasisStyle,textIndent,textJustify,textOrientation,textOverflow,textRendering,textShadow,textSizeAdjust,textSpacingTrim,textTransform,textUnderlineOffset,textUnderlinePosition,textWrap,textWrapMode,textWrapStyle,timelineScope,top,touchAction,transform,transformBox,transformOrigin,transformStyle,transition,transitionBehavior,transitionDelay,transitionDuration,transitionProperty,transitionTimingFunction,translate,unicodeBidi,userSelect,vectorEffect,verticalAlign,viewTimeline,viewTimelineAxis,viewTimelineInset,viewTimelineName,viewTransitionName,visibility,whiteSpace,whiteSpaceCollapse,widows,width,willChange,wordBreak,wordSpacing,wordWrap,writingMode,x,y,zIndex,zoom,alignmentBaseline,baselineShift,colorInterpolation,colorRendering,glyphOrientationVertical",$Ne=CNe.split(",").concat(ENe),RNe=new Map($Ne.map(e=>[e,!0])),zNe=/&|@/,MG=Kn(e=>RNe.has(e)||e.startsWith("--")||zNe.test(e));const TNe=(e,r)=>!r.includes(e)&&!MG(e),jNe=(e,r)=>e.__shouldForwardProps__&&r?n=>e.__shouldForwardProps__(n)&&r(n):r,ANe=(e,r)=>{if(e&&!r)return e;if(!e&&r)return r;if(e.__cva__&&r.__cva__||e.__recipe__&&r.__recipe__)return e.merge(r);const n=new TypeError("Cannot merge cva with recipe. Please use either cva or recipe.");throw TypeError.captureStackTrace?.(n),n},DNe=e=>typeof e=="string"?e:e?.displayName||e?.name||"Component";function YS(e,r={},n={}){const o=r.__cva__||r.__recipe__?r:T1(r),i=n.shouldForwardProp||TNe,a=f=>n.forwardProps?.includes(f)?!0:i(f,o.variantKeys),l=Object.assign(n.dataAttr&&r.__name__?{"data-recipe":r.__name__}:{},n.defaultProps),s=ANe(e.__cva__,o),c=jNe(e,a),d=e.__base__||e,u=S.forwardRef(function(f,g){const{as:v=d,unstyled:w,children:x,...k}=f,C=S.useMemo(()=>Object.assign({},l,k),[k]),[_,$,R,T,A]=S.useMemo(()=>Fn(C,d7.keys,c,s.variantKeys,MG),[C]);function z(){const{css:P,...L}=T,H=s.__getCompoundVariantCss__?.(R);return Ge(s(R,!1),fe(H,L,P),C.className)}function j(){const{css:P,...L}=T,H=s.raw(R);return Ge(fe(H,L,P),C.className)}const I=()=>{if(w){const{css:P,...L}=T;return Ge(fe(L,P),C.className)}return r.__recipe__?z():j()};return S.createElement(v,{ref:g,...$,...A,...d7(_),className:I()},x??C.children)}),p=DNe(d);return u.displayName=`styled.${p}`,u.__cva__=s,u.__base__=d,u.__shouldForwardProps__=a,u}function MNe(){const e=new Map;return new Proxy(YS,{apply(r,n,o){return YS(...o)},get(r,n){return e.has(n)||e.set(n,YS(n)),e.get(n)}})}const Ed=MNe(),NG={transform(e){return e}},NNe=(e={})=>{const r=z1(NG,e);return NG.transform(r,R1)},hr=S.forwardRef(function(e,r){const[n,o]=Fn(e,[]),i=NNe(n),a={ref:r,...i,...o};return S.createElement(Ed.div,a)}),PG={transform(e){const{justify:r,gap:n,...o}=e;return{display:"flex",alignItems:"center",justifyContent:r,gap:n,flexDirection:"column",...o}},defaultValues:{alignItems:"stretch",gap:"sm"}},XS=(e={})=>{const r=z1(PG,e);return PG.transform(r,R1)},Ey=e=>fe(XS(e));Ey.raw=XS;const hp=S.forwardRef(function(e,r){const[n,o]=Fn(e,["justify","gap"]),i=XS(n),a={ref:r,...i,...o};return S.createElement(Ed.div,a)}),BG={transform(e){const{justify:r,gap:n,...o}=e;return{display:"flex",alignItems:"center",justifyContent:r,gap:n,flexDirection:"row",...o}},defaultValues:{gap:"sm"}},KS=(e={})=>{const r=z1(BG,e);return BG.transform(r,R1)},qn=e=>fe(KS(e));qn.raw=KS;const Or=S.forwardRef(function(e,r){const[n,o]=Fn(e,["justify","gap"]),i=KS(n),a={ref:r,...i,...o};return S.createElement(Ed.div,a)}),IG={transform(e){return{position:"relative",maxWidth:"8xl",mx:"auto",px:{base:"4",md:"6",lg:"8"},...e}}},OG=(e={})=>{const r=z1(IG,e);return IG.transform(r,R1)},LG=e=>fe(OG(e));LG.raw=OG;const FG={transform(e,{map:r,isCssUnit:n,isCssVar:o}){const{inline:i,block:a,...l}=e,s=c=>n(c)||o(c)?c:`token(spacing.${c}, ${c})`;return{"--bleed-x":r(i,s),"--bleed-y":r(a,s),marginInline:"calc(var(--bleed-x, 0) * -1)",marginBlock:"calc(var(--bleed-y, 0) * -1)",...l}},defaultValues:{inline:"0",block:"0"}},VG=(e={})=>{const r=z1(FG,e);return FG.transform(r,R1)},qG=e=>fe(VG(e));qG.raw=VG;const PNe=S.createContext(null),ZS={didCatch:!1,error:null};let HG=class extends S.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=ZS}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){const{error:e}=this.state;if(e!==null){for(var r,n,o=arguments.length,i=new Array(o),a=0;a0&&arguments[0]!==void 0?arguments[0]:[],r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return e.length!==r.length||e.some((n,o)=>!Object.is(n,r[o]))}const INe=[["path",{d:"M18 6l-12 12",key:"svg-0"}],["path",{d:"M6 6l12 12",key:"svg-1"}]],fp=wt("outline","x","X",INe);function UG({error:e,resetErrorBoundary:r}){const n=e instanceof Error?e.message:"Unknown error",o=S.useRef(null);return S.useEffect(()=>{o.current?.showModal()},[]),y.jsx("dialog",{ref:o,className:fe({margin:"0",padding:"0",position:"fixed",top:"10",left:"10",width:"[calc(100vw - ({spacing.10} * 2))]",height:"max-content",maxHeight:"[calc(100vh - ({spacing.10} * 3))]",background:"likec4.overlay.body",rounded:"sm",borderWidth:3,borderColor:"likec4.overlay.border",shadow:"xl",outline:"none",_backdrop:{cursor:"zoom-out",backdropFilter:"blur(18px)",bg:"[color-mix(in oklab, {colors.likec4.overlay.backdrop} 60%, transparent)]"}}),onClick:i=>{if(i.stopPropagation(),i.target?.nodeName?.toUpperCase()==="DIALOG"){o.current?.close();return}},onClose:i=>{i.stopPropagation(),r()},children:y.jsxs(Or,{p:"xl",gap:"lg",alignItems:"flex-start",flexWrap:"nowrap",children:[y.jsx(Ti,{size:"md",radius:"xl",color:"red",children:y.jsx(fp,{style:{width:20,height:20}})}),y.jsxs(hp,{flex:"1",children:[y.jsx(it,{fz:"md",children:"Oops, something went wrong"}),y.jsx(oi,{maw:"100%",mah:400,type:"auto",children:y.jsx(it,{fz:"md",c:"red",style:{whiteSpace:"pre-wrap",userSelect:"all"},children:n})}),y.jsxs(Or,{gap:"md",mt:"md",children:[y.jsx(Vn,{size:"sm",variant:"default",onClick:()=>r(),children:"Reset"}),y.jsx(it,{fz:"sm",c:"dimmed",children:"See console for more details and report the issue if it persists."})]})]})]})})}function QS(e){return y.jsx(HG,{FallbackComponent:UG,onError:(r,n)=>{console.error(r,n)},...e})}const WG={enableEditor:!1,enableReadOnly:!0,enableCompareWithLatest:!1,enableControls:!1,enableDynamicViewWalkthrough:!1,enableElementDetails:!1,enableFocusMode:!1,enableNavigateTo:!1,enableNotations:!1,enableRelationshipBrowser:!1,enableRelationshipDetails:!1,enableSearch:!1,enableNavigationButtons:!1,enableFitView:!1,enableVscode:!1,enableElementTags:!1},JS=S.createContext(WG);function mp({children:e,features:r,overrides:n}){const o=S.useContext(JS),[i,a]=S.useState(o);return S.useEffect(()=>{a(l=>{const s={...o,...r,...n};return Ir(l,s)?l:s})},[o,r,n]),y.jsx(JS.Provider,{value:i,children:e})}const ONe={enableControls:!1,enableReadOnly:!0,enableCompareWithLatest:!1};mp.Overlays=({children:e})=>y.jsx(mp,{overrides:ONe,children:e});function sr(){return S.useContext(JS)}function LNe({feature:e,children:r,and:n=!0}){return sr()[`enable${e}`]===!0&&n?y.jsx(y.Fragment,{children:r}):null}function FNe(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global}function VNe(){const e=FNe();if(e.__xstate__)return e.__xstate__}const qNe=e=>{if(typeof window>"u")return;const r=VNe();r&&r.register(e)};class GG{constructor(r){this._process=r,this._active=!1,this._current=null,this._last=null}start(){this._active=!0,this.flush()}clear(){this._current&&(this._current.next=null,this._last=this._current)}enqueue(r){const n={value:r,next:null};if(this._current){this._last.next=n,this._last=n;return}this._current=n,this._last=n,this._active&&this.flush()}flush(){for(;this._current;){const r=this._current;this._process(r.value),this._current=r.next}this._last=null}}const YG=".",HNe="",XG="",UNe="#",WNe="*",KG="xstate.init",GNe="xstate.error",Cy="xstate.stop";function YNe(e,r){return{type:`xstate.after.${e}.${r}`}}function eE(e,r){return{type:`xstate.done.state.${e}`,output:r}}function XNe(e,r){return{type:`xstate.done.actor.${e}`,output:r,actorId:e}}function ZG(e,r){return{type:`xstate.error.actor.${e}`,error:r,actorId:e}}function QG(e){return{type:KG,input:e}}function ts(e){setTimeout(()=>{throw e})}const KNe=typeof Symbol=="function"&&Symbol.observable||"@@observable";function JG(e,r){const n=eY(e),o=eY(r);return typeof o=="string"?typeof n=="string"?o===n:!1:typeof n=="string"?n in o:Object.keys(n).every(i=>i in o?JG(n[i],o[i]):!1)}function tE(e){if(nY(e))return e;const r=[];let n="";for(let o=0;otypeof r>"u"||typeof r=="string"?{target:r}:r)}function oY(e){if(!(e===void 0||e===HNe))return nc(e)}function z3(e,r,n){const o=typeof e=="object",i=o?e:void 0;return{next:(o?e.next:e)?.bind(i),error:(o?e.error:r)?.bind(i),complete:(o?e.complete:n)?.bind(i)}}function iY(e,r){return`${r}.${e}`}function nE(e,r){const n=r.match(/^xstate\.invoke\.(\d+)\.(.*)/);if(!n)return e.implementations.actors[r];const[,o,i]=n,a=e.getStateNodeById(i).config.invoke;return(Array.isArray(a)?a[o]:a).src}function aY(e,r){return`${e.sessionId}.${r}`}let JNe=0;function ePe(e,r){const n=new Map,o=new Map,i=new WeakMap,a=new Set,l={},{clock:s,logger:c}=r,d={schedule:(f,g,v,w,x=Math.random().toString(36).slice(2))=>{const k={source:f,target:g,event:v,delay:w,id:x,startedAt:Date.now()},C=aY(f,x);p._snapshot._scheduledEvents[C]=k;const _=s.setTimeout(()=>{delete l[C],delete p._snapshot._scheduledEvents[C],p._relay(f,g,v)},w);l[C]=_},cancel:(f,g)=>{const v=aY(f,g),w=l[v];delete l[v],delete p._snapshot._scheduledEvents[v],w!==void 0&&s.clearTimeout(w)},cancelAll:f=>{for(const g in p._snapshot._scheduledEvents){const v=p._snapshot._scheduledEvents[g];v.source===f&&d.cancel(f,v.id)}}},u=f=>{if(!a.size)return;const g={...f,rootId:e.sessionId};a.forEach(v=>v.next?.(g))},p={_snapshot:{_scheduledEvents:(r?.snapshot&&r.snapshot.scheduler)??{}},_bookId:()=>`x:${JNe++}`,_register:(f,g)=>(n.set(f,g),f),_unregister:f=>{n.delete(f.sessionId);const g=i.get(f);g!==void 0&&(o.delete(g),i.delete(f))},get:f=>o.get(f),getAll:()=>Object.fromEntries(o.entries()),_set:(f,g)=>{const v=o.get(f);if(v&&v!==g)throw new Error(`Actor with system ID '${f}' already exists.`);o.set(f,g),i.set(g,f)},inspect:f=>{const g=z3(f);return a.add(g),{unsubscribe(){a.delete(g)}}},_sendInspectionEvent:u,_relay:(f,g,v)=>{p._sendInspectionEvent({type:"@xstate.event",sourceRef:f,actorRef:g,event:v}),g._send(v)},scheduler:d,getSnapshot:()=>({_scheduledEvents:{...p._snapshot._scheduledEvents}}),start:()=>{const f=p._snapshot._scheduledEvents;p._snapshot._scheduledEvents={};for(const g in f){const{source:v,target:w,event:x,delay:k,id:C}=f[g];d.schedule(v,w,x,k,C)}},_clock:s,_logger:c};return p}let oE=!1;const iE=1;let ii=(function(e){return e[e.NotStarted=0]="NotStarted",e[e.Running=1]="Running",e[e.Stopped=2]="Stopped",e})({});const tPe={clock:{setTimeout:(e,r)=>setTimeout(e,r),clearTimeout:e=>clearTimeout(e)},logger:console.log.bind(console),devTools:!1};class rPe{constructor(r,n){this.logic=r,this._snapshot=void 0,this.clock=void 0,this.options=void 0,this.id=void 0,this.mailbox=new GG(this._process.bind(this)),this.observers=new Set,this.eventListeners=new Map,this.logger=void 0,this._processingStatus=ii.NotStarted,this._parent=void 0,this._syncSnapshot=void 0,this.ref=void 0,this._actorScope=void 0,this.systemId=void 0,this.sessionId=void 0,this.system=void 0,this._doneEvent=void 0,this.src=void 0,this._deferred=[];const o={...tPe,...n},{clock:i,logger:a,parent:l,syncSnapshot:s,id:c,systemId:d,inspect:u}=o;this.system=l?l.system:ePe(this,{clock:i,logger:a}),u&&!l&&this.system.inspect(z3(u)),this.sessionId=this.system._bookId(),this.id=c??this.sessionId,this.logger=n?.logger??this.system._logger,this.clock=n?.clock??this.system._clock,this._parent=l,this._syncSnapshot=s,this.options=o,this.src=o.src??r,this.ref=this,this._actorScope={self:this,id:this.id,sessionId:this.sessionId,logger:this.logger,defer:p=>{this._deferred.push(p)},system:this.system,stopChild:p=>{if(p._parent!==this)throw new Error(`Cannot stop child actor ${p.id} of ${this.id} because it is not a child`);p._stop()},emit:p=>{const f=this.eventListeners.get(p.type),g=this.eventListeners.get("*");if(!f&&!g)return;const v=[...f?f.values():[],...g?g.values():[]];for(const w of v)try{w(p)}catch(x){ts(x)}},actionExecutor:p=>{const f=()=>{if(this._actorScope.system._sendInspectionEvent({type:"@xstate.action",actorRef:this,action:{type:p.type,params:p.params}}),!p.exec)return;const g=oE;try{oE=!0,p.exec(p.info,p.params)}finally{oE=g}};this._processingStatus===ii.Running?f():this._deferred.push(f)}},this.send=this.send.bind(this),this.system._sendInspectionEvent({type:"@xstate.actor",actorRef:this}),d&&(this.systemId=d,this.system._set(d,this)),this._initState(n?.snapshot??n?.state),d&&this._snapshot.status!=="active"&&this.system._unregister(this)}_initState(r){try{this._snapshot=r?this.logic.restoreSnapshot?this.logic.restoreSnapshot(r,this._actorScope):r:this.logic.getInitialSnapshot(this._actorScope,this.options?.input)}catch(n){this._snapshot={status:"error",output:void 0,error:n}}}update(r,n){this._snapshot=r;let o;for(;o=this._deferred.shift();)try{o()}catch(i){this._deferred.length=0,this._snapshot={...r,status:"error",error:i}}switch(this._snapshot.status){case"active":for(const i of this.observers)try{i.next?.(r)}catch(a){ts(a)}break;case"done":for(const i of this.observers)try{i.next?.(r)}catch(a){ts(a)}this._stopProcedure(),this._complete(),this._doneEvent=XNe(this.id,this._snapshot.output),this._parent&&this.system._relay(this,this._parent,this._doneEvent);break;case"error":this._error(this._snapshot.error);break}this.system._sendInspectionEvent({type:"@xstate.snapshot",actorRef:this,event:n,snapshot:r})}subscribe(r,n,o){const i=z3(r,n,o);if(this._processingStatus!==ii.Stopped)this.observers.add(i);else switch(this._snapshot.status){case"done":try{i.complete?.()}catch(a){ts(a)}break;case"error":{const a=this._snapshot.error;if(!i.error)ts(a);else try{i.error(a)}catch(l){ts(l)}break}}return{unsubscribe:()=>{this.observers.delete(i)}}}on(r,n){let o=this.eventListeners.get(r);o||(o=new Set,this.eventListeners.set(r,o));const i=n.bind(void 0);return o.add(i),{unsubscribe:()=>{o.delete(i)}}}start(){if(this._processingStatus===ii.Running)return this;this._syncSnapshot&&this.subscribe({next:n=>{n.status==="active"&&this.system._relay(this,this._parent,{type:`xstate.snapshot.${this.id}`,snapshot:n})},error:()=>{}}),this.system._register(this.sessionId,this),this.systemId&&this.system._set(this.systemId,this),this._processingStatus=ii.Running;const r=QG(this.options.input);switch(this.system._sendInspectionEvent({type:"@xstate.event",sourceRef:this._parent,actorRef:this,event:r}),this._snapshot.status){case"done":return this.update(this._snapshot,r),this;case"error":return this._error(this._snapshot.error),this}if(this._parent||this.system.start(),this.logic.start)try{this.logic.start(this._snapshot,this._actorScope)}catch(n){return this._snapshot={...this._snapshot,status:"error",error:n},this._error(n),this}return this.update(this._snapshot,r),this.options.devTools&&this.attachDevTools(),this.mailbox.start(),this}_process(r){let n,o;try{n=this.logic.transition(this._snapshot,r,this._actorScope)}catch(i){o={err:i}}if(o){const{err:i}=o;this._snapshot={...this._snapshot,status:"error",error:i},this._error(i);return}this.update(n,r),r.type===Cy&&(this._stopProcedure(),this._complete())}_stop(){return this._processingStatus===ii.Stopped?this:(this.mailbox.clear(),this._processingStatus===ii.NotStarted?(this._processingStatus=ii.Stopped,this):(this.mailbox.enqueue({type:Cy}),this))}stop(){if(this._parent)throw new Error("A non-root actor cannot be stopped directly.");return this._stop()}_complete(){for(const r of this.observers)try{r.complete?.()}catch(n){ts(n)}this.observers.clear()}_reportError(r){if(!this.observers.size){this._parent||ts(r);return}let n=!1;for(const o of this.observers){const i=o.error;n||=!i;try{i?.(r)}catch(a){ts(a)}}this.observers.clear(),n&&ts(r)}_error(r){this._stopProcedure(),this._reportError(r),this._parent&&this.system._relay(this,this._parent,ZG(this.id,r))}_stopProcedure(){return this._processingStatus!==ii.Running?this:(this.system.scheduler.cancelAll(this),this.mailbox.clear(),this.mailbox=new GG(this._process.bind(this)),this._processingStatus=ii.Stopped,this.system._unregister(this),this)}_send(r){this._processingStatus!==ii.Stopped&&this.mailbox.enqueue(r)}send(r){this.system._relay(void 0,this,r)}attachDevTools(){const{devTools:r}=this.options;r&&(typeof r=="function"?r:qNe)(this)}toJSON(){return{xstate$$type:iE,id:this.id}}getPersistedSnapshot(r){return this.logic.getPersistedSnapshot(this._snapshot,r)}[KNe](){return this}getSnapshot(){return this._snapshot}}function qf(e,...[r]){return new rPe(e,r)}function nPe(e,r,n,o,{sendId:i}){const a=typeof i=="function"?i(n,o):i;return[r,{sendId:a},void 0]}function oPe(e,r){e.defer(()=>{e.system.scheduler.cancel(e.self,r.sendId)})}function ua(e){function r(n,o){}return r.type="xstate.cancel",r.sendId=e,r.resolve=nPe,r.execute=oPe,r}function iPe(e,r,n,o,{id:i,systemId:a,src:l,input:s,syncSnapshot:c}){const d=typeof l=="string"?nE(r.machine,l):l,u=typeof i=="function"?i(n):i;let p,f;return d&&(f=typeof s=="function"?s({context:r.context,event:n.event,self:e.self}):s,p=qf(d,{id:u,src:l,parent:e.self,syncSnapshot:c,systemId:a,input:f})),[vp(r,{children:{...r.children,[u]:p}}),{id:i,systemId:a,actorRef:p,src:l,input:f},void 0]}function aPe(e,{actorRef:r}){r&&e.defer(()=>{r._processingStatus!==ii.Stopped&&r.start()})}function T3(...[e,{id:r,systemId:n,input:o,syncSnapshot:i=!1}={}]){function a(l,s){}return a.type="xstate.spawnChild",a.id=r,a.systemId=n,a.src=e,a.input=o,a.syncSnapshot=i,a.resolve=iPe,a.execute=aPe,a}function lPe(e,r,n,o,{actorRef:i}){const a=typeof i=="function"?i(n,o):i,l=typeof a=="string"?r.children[a]:a;let s=r.children;return l&&(s={...s},delete s[l.id]),[vp(r,{children:s}),l,void 0]}function sPe(e,r){if(r){if(e.system._unregister(r),r._processingStatus!==ii.Running){e.stopChild(r);return}e.defer(()=>{e.stopChild(r)})}}function $y(e){function r(n,o){}return r.type="xstate.stopChild",r.actorRef=e,r.resolve=lPe,r.execute=sPe,r}function j3(e,r,n,o){const{machine:i}=o,a=typeof e=="function",l=a?e:i.implementations.guards[typeof e=="string"?e:e.type];if(!a&&!l)throw new Error(`Guard '${typeof e=="string"?e:e.type}' is not implemented.'.`);if(typeof l!="function")return j3(l,r,n,o);const s={context:r,event:n},c=a||typeof e=="string"?void 0:"params"in e?typeof e.params=="function"?e.params({context:r,event:n}):e.params:void 0;return"check"in l?l.check(o,s,l):l(s,c)}const aE=e=>e.type==="atomic"||e.type==="final";function Hf(e){return Object.values(e.states).filter(r=>r.type!=="history")}function Ry(e,r){const n=[];if(r===e)return n;let o=e.parent;for(;o&&o!==r;)n.push(o),o=o.parent;return n}function A3(e){const r=new Set(e),n=sY(r);for(const o of r)if(o.type==="compound"&&(!n.get(o)||!n.get(o).length))uY(o).forEach(i=>r.add(i));else if(o.type==="parallel"){for(const i of Hf(o))if(i.type!=="history"&&!r.has(i)){const a=uY(i);for(const l of a)r.add(l)}}for(const o of r){let i=o.parent;for(;i;)r.add(i),i=i.parent}return r}function lY(e,r){const n=r.get(e);if(!n)return{};if(e.type==="compound"){const i=n[0];if(i){if(aE(i))return i.key}else return{}}const o={};for(const i of n)o[i.key]=lY(i,r);return o}function sY(e){const r=new Map;for(const n of e)r.has(n)||r.set(n,[]),n.parent&&(r.has(n.parent)||r.set(n.parent,[]),r.get(n.parent).push(n));return r}function cY(e,r){const n=A3(r);return lY(e,sY(n))}function lE(e,r){return r.type==="compound"?Hf(r).some(n=>n.type==="final"&&e.has(n)):r.type==="parallel"?Hf(r).every(n=>lE(e,n)):r.type==="final"}const D3=e=>e[0]===UNe;function cPe(e,r){return e.transitions.get(r)||[...e.transitions.keys()].filter(n=>{if(n===WNe)return!0;if(!n.endsWith(".*"))return!1;const o=n.split("."),i=r.split(".");for(let a=0;ao.length-n.length).flatMap(n=>e.transitions.get(n))}function dPe(e){const r=e.config.after;if(!r)return[];const n=o=>{const i=YNe(o,e.id),a=i.type;return e.entry.push(ai(i,{id:a,delay:o})),e.exit.push(ua(a)),a};return Object.keys(r).flatMap(o=>{const i=r[o],a=typeof i=="string"?{target:i}:i,l=Number.isNaN(+o)?o:+o,s=n(l);return nc(a).map(c=>({...c,event:s,delay:l}))}).map(o=>{const{delay:i}=o;return{...gp(e,o.event,o),delay:i}})}function gp(e,r,n){const o=oY(n.target),i=n.reenter??!1,a=hPe(e,o),l={...n,actions:nc(n.actions),guard:n.guard,target:a,source:e,reenter:i,eventType:r,toJSON:()=>({...l,source:`#${e.id}`,target:a?a.map(s=>`#${s.id}`):void 0})};return l}function uPe(e){const r=new Map;if(e.config.on)for(const n of Object.keys(e.config.on)){if(n===XG)throw new Error('Null events ("") cannot be specified as a transition key. Use `always: { ... }` instead.');const o=e.config.on[n];r.set(n,Vf(o).map(i=>gp(e,n,i)))}if(e.config.onDone){const n=`xstate.done.state.${e.id}`;r.set(n,Vf(e.config.onDone).map(o=>gp(e,n,o)))}for(const n of e.invoke){if(n.onDone){const o=`xstate.done.actor.${n.id}`;r.set(o,Vf(n.onDone).map(i=>gp(e,o,i)))}if(n.onError){const o=`xstate.error.actor.${n.id}`;r.set(o,Vf(n.onError).map(i=>gp(e,o,i)))}if(n.onSnapshot){const o=`xstate.snapshot.${n.id}`;r.set(o,Vf(n.onSnapshot).map(i=>gp(e,o,i)))}}for(const n of e.after){let o=r.get(n.eventType);o||(o=[],r.set(n.eventType,o)),o.push(n)}return r}function pPe(e,r){const n=typeof r=="string"?e.states[r]:r?e.states[r.target]:void 0;if(!n&&r)throw new Error(`Initial state node "${r}" not found on parent state node #${e.id}`);const o={source:e,actions:!r||typeof r=="string"?[]:nc(r.actions),eventType:null,reenter:!1,target:n?[n]:[],toJSON:()=>({...o,source:`#${e.id}`,target:n?[`#${n.id}`]:[]})};return o}function hPe(e,r){if(r!==void 0)return r.map(n=>{if(typeof n!="string")return n;if(D3(n))return e.machine.getStateNodeById(n);const o=n[0]===YG;if(o&&!e.parent)return M3(e,n.slice(1));const i=o?e.key+n:n;if(e.parent)try{return M3(e.parent,i)}catch(a){throw new Error(`Invalid transition definition for state node '${e.id}': -${a.message}`)}else throw new Error(`Invalid target: "${n}" is not a valid target from the root node. Did you mean ".${n}"?`)})}function dY(e){const r=oY(e.config.target);return r?{target:r.map(n=>typeof n=="string"?M3(e.parent,n):n)}:e.parent.initial}function yp(e){return e.type==="history"}function uY(e){const r=pY(e);for(const n of r)for(const o of Ry(n,e))r.add(o);return r}function pY(e){const r=new Set;function n(o){if(!r.has(o)){if(r.add(o),o.type==="compound")n(o.initial.target[0]);else if(o.type==="parallel")for(const i of Hf(o))n(i)}}return n(e),r}function Uf(e,r){if(D3(r))return e.machine.getStateNodeById(r);if(!e.states)throw new Error(`Unable to retrieve child state '${r}' from '${e.id}'; no child states exist.`);const n=e.states[r];if(!n)throw new Error(`Child state '${r}' does not exist on '${e.id}'`);return n}function M3(e,r){if(typeof r=="string"&&D3(r))try{return e.machine.getStateNodeById(r)}catch{}const n=tE(r).slice();let o=e;for(;n.length;){const i=n.shift();if(!i.length)break;o=Uf(o,i)}return o}function N3(e,r){if(typeof r=="string"){const i=e.states[r];if(!i)throw new Error(`State '${r}' does not exist on '${e.id}'`);return[e,i]}const n=Object.keys(r),o=n.map(i=>Uf(e,i)).filter(Boolean);return[e.machine.root,e].concat(o,n.reduce((i,a)=>{const l=Uf(e,a);if(!l)return i;const s=N3(l,r[a]);return i.concat(s)},[]))}function fPe(e,r,n,o){const i=Uf(e,r).next(n,o);return!i||!i.length?e.next(n,o):i}function mPe(e,r,n,o){const i=Object.keys(r),a=Uf(e,i[0]),l=sE(a,r[i[0]],n,o);return!l||!l.length?e.next(n,o):l}function gPe(e,r,n,o){const i=[];for(const a of Object.keys(r)){const l=r[a];if(!l)continue;const s=Uf(e,a),c=sE(s,l,n,o);c&&i.push(...c)}return i.length?i:e.next(n,o)}function sE(e,r,n,o){return typeof r=="string"?fPe(e,r,n,o):Object.keys(r).length===1?mPe(e,r,n,o):gPe(e,r,n,o)}function yPe(e){return Object.keys(e.states).map(r=>e.states[r]).filter(r=>r.type==="history")}function Cd(e,r){let n=e;for(;n.parent&&n.parent!==r;)n=n.parent;return n.parent===r}function vPe(e,r){const n=new Set(e),o=new Set(r);for(const i of n)if(o.has(i))return!0;for(const i of o)if(n.has(i))return!0;return!1}function hY(e,r,n){const o=new Set;for(const i of e){let a=!1;const l=new Set;for(const s of o)if(vPe(dE([i],r,n),dE([s],r,n)))if(Cd(i.source,s.source))l.add(s);else{a=!0;break}if(!a){for(const s of l)o.delete(s);o.add(i)}}return Array.from(o)}function bPe(e){const[r,...n]=e;for(const o of Ry(r,void 0))if(n.every(i=>Cd(i,o)))return o}function cE(e,r){if(!e.target)return[];const n=new Set;for(const o of e.target)if(yp(o))if(r[o.id])for(const i of r[o.id])n.add(i);else for(const i of cE(dY(o),r))n.add(i);else n.add(o);return[...n]}function fY(e,r){const n=cE(e,r);if(!n)return;if(!e.reenter&&n.every(i=>i===e.source||Cd(i,e.source)))return e.source;const o=bPe(n.concat(e.source));if(o)return o;if(!e.reenter)return e.source.machine.root}function dE(e,r,n){const o=new Set;for(const i of e)if(i.target?.length){const a=fY(i,n);i.reenter&&i.source===a&&o.add(a);for(const l of r)Cd(l,a)&&o.add(l)}return[...o]}function xPe(e,r){if(e.length!==r.size)return!1;for(const n of e)if(!r.has(n))return!1;return!0}function uE(e,r,n,o,i,a){if(!e.length)return r;const l=new Set(r._nodes);let s=r.historyValue;const c=hY(e,l,s);let d=r;i||([d,s]=SPe(d,o,n,c,l,s,a,n.actionExecutor)),d=Gf(d,o,n,c.flatMap(p=>p.actions),a,void 0),d=kPe(d,o,n,c,l,a,s,i);const u=[...l];d.status==="done"&&(d=Gf(d,o,n,u.sort((p,f)=>f.order-p.order).flatMap(p=>p.exit),a,void 0));try{return s===r.historyValue&&xPe(r._nodes,l)?d:vp(d,{_nodes:u,historyValue:s})}catch(p){throw p}}function wPe(e,r,n,o,i){if(o.output===void 0)return;const a=eE(i.id,i.output!==void 0&&i.parent?rE(i.output,e.context,r,n.self):void 0);return rE(o.output,e.context,a,n.self)}function kPe(e,r,n,o,i,a,l,s){let c=e;const d=new Set,u=new Set;_Pe(o,l,u,d),s&&u.add(e.machine.root);const p=new Set;for(const f of[...d].sort((g,v)=>g.order-v.order)){i.add(f);const g=[];g.push(...f.entry);for(const v of f.invoke)g.push(T3(v.src,{...v,syncSnapshot:!!v.onSnapshot}));if(u.has(f)){const v=f.initial.actions;g.push(...v)}if(c=Gf(c,r,n,g,a,f.invoke.map(v=>v.id)),f.type==="final"){const v=f.parent;let w=v?.type==="parallel"?v:v?.parent,x=w||f;for(v?.type==="compound"&&a.push(eE(v.id,f.output!==void 0?rE(f.output,c.context,r,n.self):void 0));w?.type==="parallel"&&!p.has(w)&&lE(i,w);)p.add(w),a.push(eE(w.id)),x=w,w=w.parent;if(w)continue;c=vp(c,{status:"done",output:wPe(c,r,n,c.machine.root,x)})}}return c}function _Pe(e,r,n,o){for(const i of e){const a=fY(i,r);for(const s of i.target||[])!yp(s)&&(i.source!==s||i.source!==a||i.reenter)&&(o.add(s),n.add(s)),Wf(s,r,n,o);const l=cE(i,r);for(const s of l){const c=Ry(s,a);a?.type==="parallel"&&c.push(a),mY(o,r,n,c,!i.source.parent&&i.reenter?void 0:a)}}}function Wf(e,r,n,o){if(yp(e))if(r[e.id]){const i=r[e.id];for(const a of i)o.add(a),Wf(a,r,n,o);for(const a of i)pE(a,e.parent,o,r,n)}else{const i=dY(e);for(const a of i.target)o.add(a),i===e.parent?.initial&&n.add(e.parent),Wf(a,r,n,o);for(const a of i.target)pE(a,e.parent,o,r,n)}else if(e.type==="compound"){const[i]=e.initial.target;yp(i)||(o.add(i),n.add(i)),Wf(i,r,n,o),pE(i,e,o,r,n)}else if(e.type==="parallel")for(const i of Hf(e).filter(a=>!yp(a)))[...o].some(a=>Cd(a,i))||(yp(i)||(o.add(i),n.add(i)),Wf(i,r,n,o))}function mY(e,r,n,o,i){for(const a of o)if((!i||Cd(a,i))&&e.add(a),a.type==="parallel")for(const l of Hf(a).filter(s=>!yp(s)))[...e].some(s=>Cd(s,l))||(e.add(l),Wf(l,r,n,e))}function pE(e,r,n,o,i){mY(n,o,i,Ry(e,r))}function SPe(e,r,n,o,i,a,l,s){let c=e;const d=dE(o,i,a);d.sort((p,f)=>f.order-p.order);let u;for(const p of d)for(const f of yPe(p)){let g;f.history==="deep"?g=v=>aE(v)&&Cd(v,p):g=v=>v.parent===p,u??={...a},u[f.id]=Array.from(i).filter(g)}for(const p of d)c=Gf(c,r,n,[...p.exit,...p.invoke.map(f=>$y(f.id))],l,void 0),i.delete(p);return[c,u||a]}function EPe(e,r){return e.implementations.actions[r]}function gY(e,r,n,o,i,a){const{machine:l}=e;let s=e;for(const c of o){const d=typeof c=="function",u=d?c:EPe(l,typeof c=="string"?c:c.type),p={context:s.context,event:r,self:n.self,system:n.system},f=d||typeof c=="string"?void 0:"params"in c?typeof c.params=="function"?c.params({context:s.context,event:r}):c.params:void 0;if(!u||!("resolve"in u)){n.actionExecutor({type:typeof c=="string"?c:typeof c=="object"?c.type:c.name||"(anonymous)",info:p,params:f,exec:u});continue}const g=u,[v,w,x]=g.resolve(n,s,p,f,u,i);s=v,"retryResolve"in g&&a?.push([g,w]),"execute"in g&&n.actionExecutor({type:g.type,info:p,params:w,exec:g.execute.bind(null,n,w)}),x&&(s=gY(s,r,n,x,i,a))}return s}function Gf(e,r,n,o,i,a){const l=a?[]:void 0,s=gY(e,r,n,o,{internalQueue:i,deferredActorIds:a},l);return l?.forEach(([c,d])=>{c.retryResolve(n,s,d)}),s}function hE(e,r,n,o){let i=e;const a=[];function l(d,u,p){n.system._sendInspectionEvent({type:"@xstate.microstep",actorRef:n.self,event:u,snapshot:d,_transitions:p}),a.push(d)}if(r.type===Cy)return i=vp(yY(i,r,n),{status:"stopped"}),l(i,r,[]),{snapshot:i,microstates:a};let s=r;if(s.type!==KG){const d=s,u=QNe(d),p=vY(d,i);if(u&&!p.length)return i=vp(e,{status:"error",error:d.error}),l(i,d,[]),{snapshot:i,microstates:a};i=uE(p,e,n,s,!1,o),l(i,d,p)}let c=!0;for(;i.status==="active";){let d=c?CPe(i,s):[];const u=d.length?i:void 0;if(!d.length){if(!o.length)break;s=o.shift(),d=vY(s,i)}i=uE(d,i,n,s,!1,o),c=i!==u,l(i,s,d)}return i.status!=="active"&&yY(i,s,n),{snapshot:i,microstates:a}}function yY(e,r,n){return Gf(e,r,n,Object.values(e.children).map(o=>$y(o)),[],void 0)}function vY(e,r){return r.machine.getTransitionData(r,e)}function CPe(e,r){const n=new Set,o=e._nodes.filter(aE);for(const i of o)e:for(const a of[i].concat(Ry(i,void 0)))if(a.always){for(const l of a.always)if(l.guard===void 0||j3(l.guard,e.context,r,e)){n.add(l);break e}}return hY(Array.from(n),new Set(e._nodes),e.historyValue)}function $Pe(e,r){const n=A3(N3(e,r));return cY(e,[...n])}function RPe(e){return!!e&&typeof e=="object"&&"machine"in e&&"value"in e}const zPe=function(e){return JG(e,this.value)},TPe=function(e){return this.tags.has(e)},jPe=function(e){const r=this.machine.getTransitionData(this,e);return!!r?.length&&r.some(n=>n.target!==void 0||n.actions.length)},APe=function(){const{_nodes:e,tags:r,machine:n,getMeta:o,toJSON:i,can:a,hasTag:l,matches:s,...c}=this;return{...c,tags:Array.from(r)}},DPe=function(){return this._nodes.reduce((e,r)=>(r.meta!==void 0&&(e[r.id]=r.meta),e),{})};function P3(e,r){return{status:e.status,output:e.output,error:e.error,machine:r,context:e.context,_nodes:e._nodes,value:cY(r.root,e._nodes),tags:new Set(e._nodes.flatMap(n=>n.tags)),children:e.children,historyValue:e.historyValue||{},matches:zPe,hasTag:TPe,can:jPe,getMeta:DPe,toJSON:APe}}function vp(e,r={}){return P3({...e,...r},e.machine)}function MPe(e){if(typeof e!="object"||e===null)return{};const r={};for(const n in e){const o=e[n];Array.isArray(o)&&(r[n]=o.map(i=>({id:i.id})))}return r}function NPe(e,r){const{_nodes:n,tags:o,machine:i,children:a,context:l,can:s,hasTag:c,matches:d,getMeta:u,toJSON:p,...f}=e,g={};for(const v in a){const w=a[v];g[v]={snapshot:w.getPersistedSnapshot(r),src:w.src,systemId:w.systemId,syncSnapshot:w._syncSnapshot}}return{...f,context:bY(l),children:g,historyValue:MPe(f.historyValue)}}function bY(e){let r;for(const n in e){const o=e[n];if(o&&typeof o=="object")if("sessionId"in o&&"send"in o&&"ref"in o)r??=Array.isArray(e)?e.slice():{...e},r[n]={xstate$$type:iE,id:o.id};else{const i=bY(o);i!==o&&(r??=Array.isArray(e)?e.slice():{...e},r[n]=i)}}return r??e}function PPe(e,r,n,o,{event:i,id:a,delay:l},{internalQueue:s}){const c=r.machine.implementations.delays;if(typeof i=="string")throw new Error(`Only event objects may be used with raise; use raise({ type: "${i}" }) instead`);const d=typeof i=="function"?i(n,o):i;let u;if(typeof l=="string"){const p=c&&c[l];u=typeof p=="function"?p(n,o):p}else u=typeof l=="function"?l(n,o):l;return typeof u!="number"&&s.push(d),[r,{event:d,id:a,delay:u},void 0]}function BPe(e,r){const{event:n,delay:o,id:i}=r;if(typeof o=="number"){e.defer(()=>{const a=e.self;e.system.scheduler.schedule(a,a,n,o,i)});return}}function ai(e,r){function n(o,i){}return n.type="xstate.raise",n.event=e,n.id=r?.id,n.delay=r?.delay,n.resolve=PPe,n.execute=BPe,n}const xY=new WeakMap;function B3(e){return{config:e,start:(r,n)=>{const{self:o,system:i,emit:a}=n,l={receivers:void 0,dispose:void 0};xY.set(o,l),l.dispose=e({input:r.input,system:i,self:o,sendBack:s=>{o.getSnapshot().status!=="stopped"&&o._parent&&i._relay(o,o._parent,s)},receive:s=>{l.receivers??=new Set,l.receivers.add(s)},emit:a})},transition:(r,n,o)=>{const i=xY.get(o.self);return n.type===Cy?(r={...r,status:"stopped",error:void 0},i.dispose?.(),r):(i.receivers?.forEach(a=>a(n)),r)},getInitialSnapshot:(r,n)=>({status:"active",output:void 0,error:void 0,input:n}),getPersistedSnapshot:r=>r,restoreSnapshot:r=>r}}const wY="xstate.promise.resolve",kY="xstate.promise.reject",I3=new WeakMap;function zy(e){return{config:e,transition:(r,n,o)=>{if(r.status!=="active")return r;switch(n.type){case wY:{const i=n.data;return{...r,status:"done",output:i,input:void 0}}case kY:return{...r,status:"error",error:n.data,input:void 0};case Cy:return I3.get(o.self)?.abort(),{...r,status:"stopped",input:void 0};default:return r}},start:(r,{self:n,system:o,emit:i})=>{if(r.status!=="active")return;const a=new AbortController;I3.set(n,a),Promise.resolve(e({input:r.input,system:o,self:n,signal:a.signal,emit:i})).then(l=>{n.getSnapshot().status==="active"&&(I3.delete(n),o._relay(n,n,{type:wY,data:l}))},l=>{n.getSnapshot().status==="active"&&(I3.delete(n),o._relay(n,n,{type:kY,data:l}))})},getInitialSnapshot:(r,n)=>({status:"active",output:void 0,error:void 0,input:n}),getPersistedSnapshot:r=>r,restoreSnapshot:r=>r}}function IPe(e,{machine:r,context:n},o,i){const a=(l,s)=>{if(typeof l=="string"){const c=nE(r,l);if(!c)throw new Error(`Actor logic '${l}' not implemented in machine '${r.id}'`);const d=qf(c,{id:s?.id,parent:e.self,syncSnapshot:s?.syncSnapshot,input:typeof s?.input=="function"?s.input({context:n,event:o,self:e.self}):s?.input,src:l,systemId:s?.systemId});return i[d.id]=d,d}else return qf(l,{id:s?.id,parent:e.self,syncSnapshot:s?.syncSnapshot,input:s?.input,src:l,systemId:s?.systemId})};return(l,s)=>{const c=a(l,s);return i[c.id]=c,e.defer(()=>{c._processingStatus!==ii.Stopped&&c.start()}),c}}function OPe(e,r,n,o,{assignment:i}){if(!r.context)throw new Error("Cannot assign to undefined `context`. Ensure that `context` is defined in the machine config.");const a={},l={context:r.context,event:n.event,spawn:IPe(e,r,n.event,a),self:e.self,system:e.system};let s={};if(typeof i=="function")s=i(l,o);else for(const d of Object.keys(i)){const u=i[d];s[d]=typeof u=="function"?u(l,o):u}const c=Object.assign({},r.context,s);return[vp(r,{context:c,children:Object.keys(a).length?{...r.children,...a}:r.children}),void 0,void 0]}function Bt(e){function r(n,o){}return r.type="xstate.assign",r.assignment=e,r.resolve=OPe,r}const _Y=new WeakMap;function Yf(e,r,n){let o=_Y.get(e);return o?r in o||(o[r]=n()):(o={[r]:n()},_Y.set(e,o)),o[r]}const LPe={},Ty=e=>typeof e=="string"?{type:e}:typeof e=="function"?"resolve"in e?{type:e.type}:{type:e.name}:e;class O3{constructor(r,n){if(this.config=r,this.key=void 0,this.id=void 0,this.type=void 0,this.path=void 0,this.states=void 0,this.history=void 0,this.entry=void 0,this.exit=void 0,this.parent=void 0,this.machine=void 0,this.meta=void 0,this.output=void 0,this.order=-1,this.description=void 0,this.tags=[],this.transitions=void 0,this.always=void 0,this.parent=n._parent,this.key=n._key,this.machine=n._machine,this.path=this.parent?this.parent.path.concat(this.key):[],this.id=this.config.id||[this.machine.id,...this.path].join(YG),this.type=this.config.type||(this.config.states&&Object.keys(this.config.states).length?"compound":this.config.history?"history":"atomic"),this.description=this.config.description,this.order=this.machine.idMap.size,this.machine.idMap.set(this.id,this),this.states=this.config.states?tY(this.config.states,(o,i)=>new O3(o,{_parent:this,_key:i,_machine:this.machine})):LPe,this.type==="compound"&&!this.config.initial)throw new Error(`No initial state specified for compound state node "#${this.id}". Try adding { initial: "${Object.keys(this.states)[0]}" } to the state config.`);this.history=this.config.history===!0?"shallow":this.config.history||!1,this.entry=nc(this.config.entry).slice(),this.exit=nc(this.config.exit).slice(),this.meta=this.config.meta,this.output=this.type==="final"||!this.parent?this.config.output:void 0,this.tags=nc(r.tags).slice()}_initialize(){this.transitions=uPe(this),this.config.always&&(this.always=Vf(this.config.always).map(r=>gp(this,XG,r))),Object.keys(this.states).forEach(r=>{this.states[r]._initialize()})}get definition(){return{id:this.id,key:this.key,version:this.machine.version,type:this.type,initial:this.initial?{target:this.initial.target,source:this,actions:this.initial.actions.map(Ty),eventType:null,reenter:!1,toJSON:()=>({target:this.initial.target.map(r=>`#${r.id}`),source:`#${this.id}`,actions:this.initial.actions.map(Ty),eventType:null})}:void 0,history:this.history,states:tY(this.states,r=>r.definition),on:this.on,transitions:[...this.transitions.values()].flat().map(r=>({...r,actions:r.actions.map(Ty)})),entry:this.entry.map(Ty),exit:this.exit.map(Ty),meta:this.meta,order:this.order||-1,output:this.output,invoke:this.invoke,description:this.description,tags:this.tags}}toJSON(){return this.definition}get invoke(){return Yf(this,"invoke",()=>nc(this.config.invoke).map((r,n)=>{const{src:o,systemId:i}=r,a=r.id??iY(this.id,n),l=typeof o=="string"?o:`xstate.invoke.${iY(this.id,n)}`;return{...r,src:l,id:a,systemId:i,toJSON(){const{onDone:s,onError:c,...d}=r;return{...d,type:"xstate.invoke",src:l,id:a}}}}))}get on(){return Yf(this,"on",()=>[...this.transitions].flatMap(([r,n])=>n.map(o=>[r,o])).reduce((r,[n,o])=>(r[n]=r[n]||[],r[n].push(o),r),{}))}get after(){return Yf(this,"delayedTransitions",()=>dPe(this))}get initial(){return Yf(this,"initial",()=>pPe(this,this.config.initial))}next(r,n){const o=n.type,i=[];let a;const l=Yf(this,`candidates-${o}`,()=>cPe(this,o));for(const s of l){const{guard:c}=s,d=r.context;let u=!1;try{u=!c||j3(c,d,n,r)}catch(p){const f=typeof c=="string"?c:typeof c=="object"?c.type:void 0;throw new Error(`Unable to evaluate guard ${f?`'${f}' `:""}in transition for event '${o}' in state node '${this.id}': -${p.message}`)}if(u){i.push(...s.actions),a=s;break}}return a?[a]:void 0}get events(){return Yf(this,"events",()=>{const{states:r}=this,n=new Set(this.ownEvents);if(r)for(const o of Object.keys(r)){const i=r[o];if(i.states)for(const a of i.events)n.add(`${a}`)}return Array.from(n)})}get ownEvents(){const r=new Set([...this.transitions.keys()].filter(n=>this.transitions.get(n).some(o=>!(!o.target&&!o.actions.length&&!o.reenter))));return Array.from(r)}}const FPe="#";class fE{constructor(r,n){this.config=r,this.version=void 0,this.schemas=void 0,this.implementations=void 0,this.__xstatenode=!0,this.idMap=new Map,this.root=void 0,this.id=void 0,this.states=void 0,this.events=void 0,this.id=r.id||"(machine)",this.implementations={actors:n?.actors??{},actions:n?.actions??{},delays:n?.delays??{},guards:n?.guards??{}},this.version=this.config.version,this.schemas=this.config.schemas,this.transition=this.transition.bind(this),this.getInitialSnapshot=this.getInitialSnapshot.bind(this),this.getPersistedSnapshot=this.getPersistedSnapshot.bind(this),this.restoreSnapshot=this.restoreSnapshot.bind(this),this.start=this.start.bind(this),this.root=new O3(r,{_key:this.id,_machine:this}),this.root._initialize(),this.states=this.root.states,this.events=this.root.events}provide(r){const{actions:n,guards:o,actors:i,delays:a}=this.implementations;return new fE(this.config,{actions:{...n,...r.actions},guards:{...o,...r.guards},actors:{...i,...r.actors},delays:{...a,...r.delays}})}resolveState(r){const n=$Pe(this.root,r.value),o=A3(N3(this.root,n));return P3({_nodes:[...o],context:r.context||{},children:{},status:lE(o,this.root)?"done":r.status||"active",output:r.output,error:r.error,historyValue:r.historyValue},this)}transition(r,n,o){return hE(r,n,o,[]).snapshot}microstep(r,n,o){return hE(r,n,o,[]).microstates}getTransitionData(r,n){return sE(this.root,r.value,r,n)||[]}getPreInitialState(r,n,o){const{context:i}=this.config,a=P3({context:typeof i!="function"&&i?i:{},_nodes:[this.root],children:{},status:"active"},this);return typeof i=="function"?Gf(a,n,r,[Bt(({spawn:l,event:s,self:c})=>i({spawn:l,input:s.input,self:c}))],o,void 0):a}getInitialSnapshot(r,n){const o=QG(n),i=[],a=this.getPreInitialState(r,o,i),l=uE([{target:[...pY(this.root)],source:this.root,reenter:!0,actions:[],eventType:null,toJSON:null}],a,r,o,!0,i),{snapshot:s}=hE(l,o,r,i);return s}start(r){Object.values(r.children).forEach(n=>{n.getSnapshot().status==="active"&&n.start()})}getStateNodeById(r){const n=tE(r),o=n.slice(1),i=D3(n[0])?n[0].slice(FPe.length):n[0],a=this.idMap.get(i);if(!a)throw new Error(`Child state node '#${i}' does not exist on machine '${this.id}'`);return M3(a,o)}get definition(){return this.root.definition}toJSON(){return this.definition}getPersistedSnapshot(r,n){return NPe(r,n)}restoreSnapshot(r,n){const o={},i=r.children;Object.keys(i).forEach(p=>{const f=i[p],g=f.snapshot,v=f.src,w=typeof v=="string"?nE(this,v):v;if(!w)return;const x=qf(w,{id:p,parent:n.self,syncSnapshot:f.syncSnapshot,snapshot:g,src:v,systemId:f.systemId});o[p]=x});function a(p,f){if(f instanceof O3)return f;try{return p.machine.getStateNodeById(f.id)}catch{}}function l(p,f){if(!f||typeof f!="object")return{};const g={};for(const v in f){const w=f[v];for(const x of w){const k=a(p,x);k&&(g[v]??=[],g[v].push(k))}}return g}const s=l(this.root,r.historyValue),c=P3({...r,children:o,_nodes:Array.from(A3(N3(this.root,r.value))),historyValue:s},this),d=new Set;function u(p,f){if(!d.has(p)){d.add(p);for(const g in p){const v=p[g];if(v&&typeof v=="object"){if("xstate$$type"in v&&v.xstate$$type===iE){p[g]=f[v.id];continue}u(v,f)}}}}return u(c.context,o),c}}function VPe(e,r,n,o,{event:i}){const a=typeof i=="function"?i(n,o):i;return[r,{event:a},void 0]}function qPe(e,{event:r}){e.defer(()=>e.emit(r))}function mE(e){function r(n,o){}return r.type="xstate.emit",r.event=e,r.resolve=VPe,r.execute=qPe,r}let gE=(function(e){return e.Parent="#_parent",e.Internal="#_internal",e})({});function HPe(e,r,n,o,{to:i,event:a,id:l,delay:s},c){const d=r.machine.implementations.delays;if(typeof a=="string")throw new Error(`Only event objects may be used with sendTo; use sendTo({ type: "${a}" }) instead`);const u=typeof a=="function"?a(n,o):a;let p;if(typeof s=="string"){const v=d&&d[s];p=typeof v=="function"?v(n,o):v}else p=typeof s=="function"?s(n,o):s;const f=typeof i=="function"?i(n,o):i;let g;if(typeof f=="string"){if(f===gE.Parent?g=e.self._parent:f===gE.Internal?g=e.self:f.startsWith("#_")?g=r.children[f.slice(2)]:g=c.deferredActorIds?.includes(f)?f:r.children[f],!g)throw new Error(`Unable to send event to actor '${f}' from machine '${r.machine.id}'.`)}else g=f||e.self;return[r,{to:g,targetId:typeof f=="string"?f:void 0,event:u,id:l,delay:p},void 0]}function UPe(e,r,n){typeof n.to=="string"&&(n.to=r.children[n.to])}function WPe(e,r){e.defer(()=>{const{to:n,event:o,delay:i,id:a}=r;if(typeof i=="number"){e.system.scheduler.schedule(e.self,n,o,i,a);return}e.system._relay(e.self,n,o.type===GNe?ZG(e.self.id,o.data):o)})}function jy(e,r,n){function o(i,a){}return o.type="xstate.sendTo",o.to=e,o.event=r,o.id=n?.id,o.delay=n?.delay,o.resolve=HPe,o.retryResolve=UPe,o.execute=WPe,o}function GPe(e,r){return jy(gE.Parent,e,r)}function YPe(e,r,n,o,{collect:i}){const a=[],l=function(s){a.push(s)};return l.assign=(...s)=>{a.push(Bt(...s))},l.cancel=(...s)=>{a.push(ua(...s))},l.raise=(...s)=>{a.push(ai(...s))},l.sendTo=(...s)=>{a.push(jy(...s))},l.sendParent=(...s)=>{a.push(GPe(...s))},l.spawnChild=(...s)=>{a.push(T3(...s))},l.stopChild=(...s)=>{a.push($y(...s))},l.emit=(...s)=>{a.push(mE(...s))},i({context:n.context,event:n.event,enqueue:l,check:s=>j3(s,r.context,n.event,r),self:e.self,system:e.system},o),[r,void 0,a]}function rs(e){function r(n,o){}return r.type="xstate.enqueueActions",r.collect=e,r.resolve=YPe,r}function XPe(e,r,n,o,{value:i,label:a}){return[r,{value:typeof i=="function"?i(n,o):i,label:a},void 0]}function KPe({logger:e},{value:r,label:n}){n?e(n,r):e(r)}function yE(e=({context:n,event:o})=>({context:n,event:o}),r){function n(o,i){}return n.type="xstate.log",n.value=e,n.label=r,n.resolve=XPe,n.execute=KPe,n}function ht(e,r){const n=nc(r);if(!n.includes(e.type)){const o=n.length===1?`type "${n[0]}"`:`one of types "${n.join('", "')}"`;throw new Error(`Expected event ${JSON.stringify(e)} to have ${o}`)}}function ZPe(e,r){return new fE(e,r)}function ns({schemas:e,actors:r,actions:n,guards:o,delays:i}){return{assign:Bt,sendTo:jy,raise:ai,log:yE,cancel:ua,stopChild:$y,enqueueActions:rs,emit:mE,spawnChild:T3,createStateConfig:a=>a,createAction:a=>a,createMachine:a=>ZPe({...a,schemas:e},{actors:r,actions:n,guards:o,delays:i}),extend:a=>ns({schemas:e,actors:r,actions:{...n,...a.actions},guards:{...o,...a.guards},delays:{...i,...a.delays}})}}fV();const SY=(e,r)=>{r(e);const n=e.getSnapshot().children;n&&Object.values(n).forEach(o=>{SY(o,r)})};function QPe(e){const r=[];SY(e,o=>{r.push([o,o.getSnapshot()]),o.observers=new Set});const n=e.system.getSnapshot?.();e.stop(),e.system._snapshot=n,r.forEach(([o,i])=>{o._processingStatus=0,o._snapshot=i})}function JPe(e,...[r]){let[[n,o],i]=S.useState(()=>{const a=qf(e,r);return[e.config,a]});if(e.config!==n){const a=qf(e,{...r,snapshot:o.getPersistedSnapshot({__unsafeAllowInlineActors:!0})});i([e.config,a]),o=a}return hMe(()=>{o.logic.implementations=e.implementations}),o}function vE(e,...[r,n]){const o=JPe(e,r);return S.useEffect(()=>{if(!n)return;const i=o.subscribe(z3(n));return()=>{i.unsubscribe()}},[n]),S.useEffect(()=>(o.start(),()=>{QPe(o)}),[o]),o}function eBe(e,r){return e===r}function pn(e,r,n=eBe){const o=S.useCallback(a=>{if(!e)return()=>{};const{unsubscribe:l}=e.subscribe(a);return l},[e]),i=S.useCallback(()=>e?.getSnapshot(),[e]);return yV.useSyncExternalStoreWithSelector(o,i,i,r,n)}const bE=S.createContext(null);bE.displayName="DiagramActorSafeContext";const xE=S.createContext(null);xE.displayName="DiagramApiSafeContext";const tBe=bE.Provider,rBe=xE.Provider;function Xf(){const e=S.useContext(bE);if(e===null)throw new Error("DiagramActorRef is not provided");return e}function Nt(){const e=S.useContext(xE);if(e===null)throw new Error("DiagramApi is not provided");return e}function at(e){const r=S.useRef(e);r.current=e;const n=S.useRef(null);return n.current==null&&(n.current=((...o)=>r.current?.(...o))),n.current}function wE(e,r=Ir){const n=Xf();return pn(n,e,r)}function pa(e,r=Ir,n){const o=Xf(),i=at(e),a=S.useCallback(l=>i(l.context),n??[]);return pn(o,a,r)}function ji(e,r,n){const o=Xf(),i=at(r),a=S.useRef(!1),l=n?.once??!1;S.useEffect(()=>{if(l&&a.current)return;let s=o.on(e,c=>{i(c),a.current=!0,l&&(s?.unsubscribe(),s=null)});return()=>{s?.unsubscribe()}},[o,e,l])}const nBe=e=>e.children.overlays;function oBe(){return wE(nBe,Object.is)}const iBe=e=>e.children.search??null;function aBe(){return wE(iBe,Object.is)}function kE(e,r){e.indexOf(r)===-1&&e.push(r)}function L3(e,r){const n=e.indexOf(r);n>-1&&e.splice(n,1)}const oc=(e,r,n)=>n>r?r:n{};const ic={},EY=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function CY(e){return typeof e=="object"&&e!==null}const $Y=e=>/^0[^.\s]+$/u.test(e);function SE(e){let r;return()=>(r===void 0&&(r=e()),r)}const ha=e=>e,lBe=(e,r)=>n=>r(e(n)),Ay=(...e)=>e.reduce(lBe),Kf=(e,r,n)=>{const o=r-e;return o===0?1:(n-e)/o};class EE{constructor(){this.subscriptions=[]}add(r){return kE(this.subscriptions,r),()=>L3(this.subscriptions,r)}notify(r,n,o){const i=this.subscriptions.length;if(i)if(i===1)this.subscriptions[0](r,n,o);else for(let a=0;ae*1e3,fa=e=>e/1e3;function RY(e,r){return r?e*(1e3/r):0}const sBe=(e,r,n)=>{const o=r-e;return((n-e)%o+o)%o+e},zY=(e,r,n)=>(((1-3*n+3*r)*e+(3*n-6*r))*e+3*r)*e,cBe=1e-7,dBe=12;function uBe(e,r,n,o,i){let a,l,s=0;do l=r+(n-r)/2,a=zY(l,o,i)-e,a>0?n=l:r=l;while(Math.abs(a)>cBe&&++suBe(a,0,1,e,n);return a=>a===0||a===1?a:zY(i(a),r,o)}const TY=e=>r=>r<=.5?e(2*r)/2:(2-e(2*(1-r)))/2,jY=e=>r=>1-e(1-r),AY=Dy(.33,1.53,.69,.99),CE=jY(AY),DY=TY(CE),MY=e=>(e*=2)<1?.5*CE(e):.5*(2-Math.pow(2,-10*(e-1))),$E=e=>1-Math.sin(Math.acos(e)),NY=jY($E),PY=TY($E),pBe=Dy(.42,0,1,1),hBe=Dy(0,0,.58,1),BY=Dy(.42,0,.58,1),IY=e=>Array.isArray(e)&&typeof e[0]!="number";function OY(e,r){return IY(e)?e[sBe(0,e.length,r)]:e}const LY=e=>Array.isArray(e)&&typeof e[0]=="number",fBe={linear:ha,easeIn:pBe,easeInOut:BY,easeOut:hBe,circIn:$E,circInOut:PY,circOut:NY,backIn:CE,backInOut:DY,backOut:AY,anticipate:MY},mBe=e=>typeof e=="string",FY=e=>{if(LY(e)){_E(e.length===4);const[r,n,o,i]=e;return Dy(r,n,o,i)}else if(mBe(e))return fBe[e];return e},F3=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function gBe(e,r){let n=new Set,o=new Set,i=!1,a=!1;const l=new WeakSet;let s={delta:0,timestamp:0,isProcessing:!1};function c(u){l.has(u)&&(d.schedule(u),e()),u(s)}const d={schedule:(u,p=!1,f=!1)=>{const g=f&&i?n:o;return p&&l.add(u),g.has(u)||g.add(u),u},cancel:u=>{o.delete(u),l.delete(u)},process:u=>{if(s=u,i){a=!0;return}i=!0,[n,o]=[o,n],n.forEach(c),n.clear(),i=!1,a&&(a=!1,d.process(u))}};return d}const yBe=40;function VY(e,r){let n=!1,o=!0;const i={delta:0,timestamp:0,isProcessing:!1},a=()=>n=!0,l=F3.reduce((k,C)=>(k[C]=gBe(a),k),{}),{setup:s,read:c,resolveKeyframes:d,preUpdate:u,update:p,preRender:f,render:g,postRender:v}=l,w=()=>{const k=ic.useManualTiming?i.timestamp:performance.now();n=!1,ic.useManualTiming||(i.delta=o?1e3/60:Math.max(Math.min(k-i.timestamp,yBe),1)),i.timestamp=k,i.isProcessing=!0,s.process(i),c.process(i),d.process(i),u.process(i),p.process(i),f.process(i),g.process(i),v.process(i),i.isProcessing=!1,n&&r&&(o=!1,e(w))},x=()=>{n=!0,o=!0,i.isProcessing||e(w)};return{schedule:F3.reduce((k,C)=>{const _=l[C];return k[C]=($,R=!1,T=!1)=>(n||x(),_.schedule($,R,T)),k},{}),cancel:k=>{for(let C=0;C(V3===void 0&&li.set(so.isProcessing||ic.useManualTiming?so.timestamp:performance.now()),V3),set:e=>{V3=e,queueMicrotask(vBe)}},qY=e=>r=>typeof r=="string"&&r.startsWith(e),HY=qY("--"),bBe=qY("var(--"),zE=e=>bBe(e)?xBe.test(e.split("/*")[0].trim()):!1,xBe=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,Zf={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},My={...Zf,transform:e=>oc(0,1,e)},q3={...Zf,default:1},Ny=e=>Math.round(e*1e5)/1e5,TE=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function wBe(e){return e==null}const kBe=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,jE=(e,r)=>n=>!!(typeof n=="string"&&kBe.test(n)&&n.startsWith(e)||r&&!wBe(n)&&Object.prototype.hasOwnProperty.call(n,r)),UY=(e,r,n)=>o=>{if(typeof o!="string")return o;const[i,a,l,s]=o.match(TE);return{[e]:parseFloat(i),[r]:parseFloat(a),[n]:parseFloat(l),alpha:s!==void 0?parseFloat(s):1}},_Be=e=>oc(0,255,e),AE={...Zf,transform:e=>Math.round(_Be(e))},bp={test:jE("rgb","red"),parse:UY("red","green","blue"),transform:({red:e,green:r,blue:n,alpha:o=1})=>"rgba("+AE.transform(e)+", "+AE.transform(r)+", "+AE.transform(n)+", "+Ny(My.transform(o))+")"};function SBe(e){let r="",n="",o="",i="";return e.length>5?(r=e.substring(1,3),n=e.substring(3,5),o=e.substring(5,7),i=e.substring(7,9)):(r=e.substring(1,2),n=e.substring(2,3),o=e.substring(3,4),i=e.substring(4,5),r+=r,n+=n,o+=o,i+=i),{red:parseInt(r,16),green:parseInt(n,16),blue:parseInt(o,16),alpha:i?parseInt(i,16)/255:1}}const DE={test:jE("#"),parse:SBe,transform:bp.transform},Py=e=>({test:r=>typeof r=="string"&&r.endsWith(e)&&r.split(" ").length===1,parse:parseFloat,transform:r=>`${r}${e}`}),Rd=Py("deg"),os=Py("%"),_t=Py("px"),EBe=Py("vh"),CBe=Py("vw"),WY={...os,parse:e=>os.parse(e)/100,transform:e=>os.transform(e*100)},Qf={test:jE("hsl","hue"),parse:UY("hue","saturation","lightness"),transform:({hue:e,saturation:r,lightness:n,alpha:o=1})=>"hsla("+Math.round(e)+", "+os.transform(Ny(r))+", "+os.transform(Ny(n))+", "+Ny(My.transform(o))+")"},Sn={test:e=>bp.test(e)||DE.test(e)||Qf.test(e),parse:e=>bp.test(e)?bp.parse(e):Qf.test(e)?Qf.parse(e):DE.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?bp.transform(e):Qf.transform(e),getAnimatableNone:e=>{const r=Sn.parse(e);return r.alpha=0,Sn.transform(r)}},$Be=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function RBe(e){return isNaN(e)&&typeof e=="string"&&(e.match(TE)?.length||0)+(e.match($Be)?.length||0)>0}const GY="number",YY="color",zBe="var",TBe="var(",XY="${}",jBe=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function By(e){const r=e.toString(),n=[],o={color:[],number:[],var:[]},i=[];let a=0;const l=r.replace(jBe,s=>(Sn.test(s)?(o.color.push(a),i.push(YY),n.push(Sn.parse(s))):s.startsWith(TBe)?(o.var.push(a),i.push(zBe),n.push(s)):(o.number.push(a),i.push(GY),n.push(parseFloat(s))),++a,XY)).split(XY);return{values:n,split:l,indexes:o,types:i}}function KY(e){return By(e).values}function ZY(e){const{split:r,types:n}=By(e),o=r.length;return i=>{let a="";for(let l=0;ltypeof e=="number"?0:Sn.test(e)?Sn.getAnimatableNone(e):e;function DBe(e){const r=KY(e);return ZY(e)(r.map(ABe))}const zd={test:RBe,parse:KY,createTransformer:ZY,getAnimatableNone:DBe};function ME(e,r,n){return n<0&&(n+=1),n>1&&(n-=1),n<.16666666666666666?e+(r-e)*6*n:n<.5?r:n<.6666666666666666?e+(r-e)*(.6666666666666666-n)*6:e}function MBe({hue:e,saturation:r,lightness:n,alpha:o}){e/=360,r/=100,n/=100;let i=0,a=0,l=0;if(!r)i=a=l=n;else{const s=n<.5?n*(1+r):n+r-n*r,c=2*n-s;i=ME(c,s,e+.3333333333333333),a=ME(c,s,e),l=ME(c,s,e-.3333333333333333)}return{red:Math.round(i*255),green:Math.round(a*255),blue:Math.round(l*255),alpha:o}}function H3(e,r){return n=>n>0?r:e}const Lr=(e,r,n)=>e+(r-e)*n,NE=(e,r,n)=>{const o=e*e,i=n*(r*r-o)+o;return i<0?0:Math.sqrt(i)},NBe=[DE,bp,Qf],PBe=e=>NBe.find(r=>r.test(e));function QY(e){const r=PBe(e);if(!r)return!1;let n=r.parse(e);return r===Qf&&(n=MBe(n)),n}const JY=(e,r)=>{const n=QY(e),o=QY(r);if(!n||!o)return H3(e,r);const i={...n};return a=>(i.red=NE(n.red,o.red,a),i.green=NE(n.green,o.green,a),i.blue=NE(n.blue,o.blue,a),i.alpha=Lr(n.alpha,o.alpha,a),bp.transform(i))},PE=new Set(["none","hidden"]);function BBe(e,r){return PE.has(e)?n=>n<=0?e:r:n=>n>=1?r:e}function IBe(e,r){return n=>Lr(e,r,n)}function BE(e){return typeof e=="number"?IBe:typeof e=="string"?zE(e)?H3:Sn.test(e)?JY:FBe:Array.isArray(e)?eX:typeof e=="object"?Sn.test(e)?JY:OBe:H3}function eX(e,r){const n=[...e],o=n.length,i=e.map((a,l)=>BE(a)(a,r[l]));return a=>{for(let l=0;l{for(const a in o)n[a]=o[a](i);return n}}function LBe(e,r){const n=[],o={color:0,var:0,number:0};for(let i=0;i{const n=zd.createTransformer(r),o=By(e),i=By(r);return o.indexes.var.length===i.indexes.var.length&&o.indexes.color.length===i.indexes.color.length&&o.indexes.number.length>=i.indexes.number.length?PE.has(e)&&!i.values.length||PE.has(r)&&!o.values.length?BBe(e,r):Ay(eX(LBe(o,i),i.values),n):H3(e,r)};function tX(e,r,n){return typeof e=="number"&&typeof r=="number"&&typeof n=="number"?Lr(e,r,n):BE(e)(e,r)}const VBe=e=>{const r=({timestamp:n})=>e(n);return{start:(n=!0)=>Dr.update(r,n),stop:()=>$d(r),now:()=>so.isProcessing?so.timestamp:li.now()}},rX=(e,r,n=10)=>{let o="";const i=Math.max(Math.round(r/n),2);for(let a=0;a=U3?1/0:r}function nX(e,r=100,n){const o=n({...e,keyframes:[0,r]}),i=Math.min(IE(o),U3);return{type:"keyframes",ease:a=>o.next(i*a).value/r,duration:fa(i)}}const qBe=5;function oX(e,r,n){const o=Math.max(r-qBe,0);return RY(n-e(o),r-o)}const rn={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},OE=.001;function HBe({duration:e=rn.duration,bounce:r=rn.bounce,velocity:n=rn.velocity,mass:o=rn.mass}){let i,a,l=1-r;l=oc(rn.minDamping,rn.maxDamping,l),e=oc(rn.minDuration,rn.maxDuration,fa(e)),l<1?(i=d=>{const u=d*l,p=u*e,f=u-n,g=LE(d,l),v=Math.exp(-p);return OE-f/g*v},a=d=>{const u=d*l*e,p=u*n+n,f=Math.pow(l,2)*Math.pow(d,2)*e,g=Math.exp(-u),v=LE(Math.pow(d,2),l);return(-i(d)+OE>0?-1:1)*((p-f)*g)/v}):(i=d=>{const u=Math.exp(-d*e),p=(d-n)*e+1;return-OE+u*p},a=d=>{const u=Math.exp(-d*e),p=(n-d)*(e*e);return u*p});const s=5/e,c=WBe(i,a,s);if(e=al(e),isNaN(c))return{stiffness:rn.stiffness,damping:rn.damping,duration:e};{const d=Math.pow(c,2)*o;return{stiffness:d,damping:l*2*Math.sqrt(o*d),duration:e}}}const UBe=12;function WBe(e,r,n){let o=n;for(let i=1;ie[n]!==void 0)}function XBe(e){let r={velocity:rn.velocity,stiffness:rn.stiffness,damping:rn.damping,mass:rn.mass,isResolvedFromDuration:!1,...e};if(!iX(e,YBe)&&iX(e,GBe))if(e.visualDuration){const n=e.visualDuration,o=2*Math.PI/(n*1.2),i=o*o,a=2*oc(.05,1,1-(e.bounce||0))*Math.sqrt(i);r={...r,mass:rn.mass,stiffness:i,damping:a}}else{const n=HBe(e);r={...r,...n,mass:rn.mass},r.isResolvedFromDuration=!0}return r}function Iy(e=rn.visualDuration,r=rn.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:r}:e;let{restSpeed:o,restDelta:i}=n;const a=n.keyframes[0],l=n.keyframes[n.keyframes.length-1],s={done:!1,value:a},{stiffness:c,damping:d,mass:u,duration:p,velocity:f,isResolvedFromDuration:g}=XBe({...n,velocity:-fa(n.velocity||0)}),v=f||0,w=d/(2*Math.sqrt(c*u)),x=l-a,k=fa(Math.sqrt(c/u)),C=Math.abs(x)<5;o||(o=C?rn.restSpeed.granular:rn.restSpeed.default),i||(i=C?rn.restDelta.granular:rn.restDelta.default);let _;if(w<1){const R=LE(k,w);_=T=>{const A=Math.exp(-w*k*T);return l-A*((v+w*k*x)/R*Math.sin(R*T)+x*Math.cos(R*T))}}else if(w===1)_=R=>l-Math.exp(-k*R)*(x+(v+k*x)*R);else{const R=k*Math.sqrt(w*w-1);_=T=>{const A=Math.exp(-w*k*T),z=Math.min(R*T,300);return l-A*((v+w*k*x)*Math.sinh(z)+R*x*Math.cosh(z))/R}}const $={calculatedDuration:g&&p||null,next:R=>{const T=_(R);if(g)s.done=R>=p;else{let A=R===0?v:0;w<1&&(A=R===0?al(v):oX(_,R,T));const z=Math.abs(A)<=o,j=Math.abs(l-T)<=i;s.done=z&&j}return s.value=s.done?l:T,s},toString:()=>{const R=Math.min(IE($),U3),T=rX(A=>$.next(R*A).value,R,30);return R+"ms "+T},toTransition:()=>{}};return $}Iy.applyToOptions=e=>{const r=nX(e,100,Iy);return e.ease=r.ease,e.duration=al(r.duration),e.type="keyframes",e};function FE({keyframes:e,velocity:r=0,power:n=.8,timeConstant:o=325,bounceDamping:i=10,bounceStiffness:a=500,modifyTarget:l,min:s,max:c,restDelta:d=.5,restSpeed:u}){const p=e[0],f={done:!1,value:p},g=z=>s!==void 0&&zc,v=z=>s===void 0?c:c===void 0||Math.abs(s-z)-w*Math.exp(-z/o),_=z=>k+C(z),$=z=>{const j=C(z),I=_(z);f.done=Math.abs(j)<=d,f.value=f.done?k:I};let R,T;const A=z=>{g(f.value)&&(R=z,T=Iy({keyframes:[f.value,v(f.value)],velocity:oX(_,z,f.value),damping:i,stiffness:a,restDelta:d,restSpeed:u}))};return A(0),{calculatedDuration:null,next:z=>{let j=!1;return!T&&R===void 0&&(j=!0,$(z),A(z)),R!==void 0&&z>=R?T.next(z-R):(!j&&$(z),f)}}}function KBe(e,r,n){const o=[],i=n||ic.mix||tX,a=e.length-1;for(let l=0;lr[0];if(a===2&&r[0]===r[1])return()=>r[1];const l=e[0]===e[1];e[0]>e[a-1]&&(e=[...e].reverse(),r=[...r].reverse());const s=KBe(r,o,i),c=s.length,d=u=>{if(l&&u1)for(;pd(oc(e[0],e[a-1],u)):d}function aX(e,r){const n=e[e.length-1];for(let o=1;o<=r;o++){const i=Kf(0,r,o);e.push(Lr(n,1,i))}}function lX(e){const r=[0];return aX(r,e.length-1),r}function QBe(e,r){return e.map(n=>n*r)}function JBe(e,r){return e.map(()=>r||BY).splice(0,e.length-1)}function Oy({duration:e=300,keyframes:r,times:n,ease:o="easeInOut"}){const i=IY(o)?o.map(FY):FY(o),a={done:!1,value:r[0]},l=QBe(n&&n.length===r.length?n:lX(r),e),s=ZBe(l,r,{ease:Array.isArray(i)?i:JBe(r,i)});return{calculatedDuration:e,next:c=>(a.value=s(c),a.done=c>=e,a)}}const eIe=e=>e!==null;function VE(e,{repeat:r,repeatType:n="loop"},o,i=1){const a=e.filter(eIe),l=i<0||r&&n!=="loop"&&r%2===1?0:a.length-1;return!l||o===void 0?a[l]:o}const tIe={decay:FE,inertia:FE,tween:Oy,keyframes:Oy,spring:Iy};function sX(e){typeof e.type=="string"&&(e.type=tIe[e.type])}class qE{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(r=>{this.resolve=r})}notifyFinished(){this.resolve()}then(r,n){return this.finished.then(r,n)}}const rIe=e=>e/100;class HE extends qE{constructor(r){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{const{motionValue:n}=this.options;n&&n.updatedAt!==li.now()&&this.tick(li.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),this.options.onStop?.())},this.options=r,this.initAnimation(),this.play(),r.autoplay===!1&&this.pause()}initAnimation(){const{options:r}=this;sX(r);const{type:n=Oy,repeat:o=0,repeatDelay:i=0,repeatType:a,velocity:l=0}=r;let{keyframes:s}=r;const c=n||Oy;c!==Oy&&typeof s[0]!="number"&&(this.mixKeyframes=Ay(rIe,tX(s[0],s[1])),s=[0,100]);const d=c({...r,keyframes:s});a==="mirror"&&(this.mirroredGenerator=c({...r,keyframes:[...s].reverse(),velocity:-l})),d.calculatedDuration===null&&(d.calculatedDuration=IE(d));const{calculatedDuration:u}=d;this.calculatedDuration=u,this.resolvedDuration=u+i,this.totalDuration=this.resolvedDuration*(o+1)-i,this.generator=d}updateTime(r){const n=Math.round(r-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(r,n=!1){const{generator:o,totalDuration:i,mixKeyframes:a,mirroredGenerator:l,resolvedDuration:s,calculatedDuration:c}=this;if(this.startTime===null)return o.next(0);const{delay:d=0,keyframes:u,repeat:p,repeatType:f,repeatDelay:g,type:v,onUpdate:w,finalKeyframe:x}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,r):this.speed<0&&(this.startTime=Math.min(r-i/this.speed,this.startTime)),n?this.currentTime=r:this.updateTime(r);const k=this.currentTime-d*(this.playbackSpeed>=0?1:-1),C=this.playbackSpeed>=0?k<0:k>i;this.currentTime=Math.max(k,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=i);let _=this.currentTime,$=o;if(p){const z=Math.min(this.currentTime,i)/s;let j=Math.floor(z),I=z%1;!I&&z>=1&&(I=1),I===1&&j--,j=Math.min(j,p+1),j%2&&(f==="reverse"?(I=1-I,g&&(I-=g/s)):f==="mirror"&&($=l)),_=oc(0,1,I)*s}const R=C?{done:!1,value:u[0]}:$.next(_);a&&(R.value=a(R.value));let{done:T}=R;!C&&c!==null&&(T=this.playbackSpeed>=0?this.currentTime>=i:this.currentTime<=0);const A=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&T);return A&&v!==FE&&(R.value=VE(u,this.options,x,this.speed)),w&&w(R.value),A&&this.finish(),R}then(r,n){return this.finished.then(r,n)}get duration(){return fa(this.calculatedDuration)}get iterationDuration(){const{delay:r=0}=this.options||{};return this.duration+fa(r)}get time(){return fa(this.currentTime)}set time(r){r=al(r),this.currentTime=r,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=r:this.driver&&(this.startTime=this.driver.now()-r/this.playbackSpeed),this.driver?.start(!1)}get speed(){return this.playbackSpeed}set speed(r){this.updateTime(li.now());const n=this.playbackSpeed!==r;this.playbackSpeed=r,n&&(this.time=fa(this.currentTime))}play(){if(this.isStopped)return;const{driver:r=VBe,startTime:n}=this.options;this.driver||(this.driver=r(i=>this.tick(i))),this.options.onPlay?.();const o=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=o):this.holdTime!==null?this.startTime=o-this.holdTime:this.startTime||(this.startTime=n??o),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(li.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state="finished",this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(r){return this.startTime=0,this.tick(r,!0)}attachTimeline(r){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),this.driver?.stop(),r.observe(this)}}function nIe(e){for(let r=1;re*180/Math.PI,UE=e=>{const r=xp(Math.atan2(e[1],e[0]));return WE(r)},oIe={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:UE,rotateZ:UE,skewX:e=>xp(Math.atan(e[1])),skewY:e=>xp(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},WE=e=>(e=e%360,e<0&&(e+=360),e),cX=UE,dX=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),uX=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),iIe={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:dX,scaleY:uX,scale:e=>(dX(e)+uX(e))/2,rotateX:e=>WE(xp(Math.atan2(e[6],e[5]))),rotateY:e=>WE(xp(Math.atan2(-e[2],e[0]))),rotateZ:cX,rotate:cX,skewX:e=>xp(Math.atan(e[4])),skewY:e=>xp(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function GE(e){return e.includes("scale")?1:0}function YE(e,r){if(!e||e==="none")return GE(r);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let o,i;if(n)o=iIe,i=n;else{const s=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);o=oIe,i=s}if(!i)return GE(r);const a=o[r],l=i[1].split(",").map(lIe);return typeof a=="function"?a(l):l[a]}const aIe=(e,r)=>{const{transform:n="none"}=getComputedStyle(e);return YE(n,r)};function lIe(e){return parseFloat(e.trim())}const Jf=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],em=new Set(Jf),pX=e=>e===Zf||e===_t,sIe=new Set(["x","y","z"]),cIe=Jf.filter(e=>!sIe.has(e));function dIe(e){const r=[];return cIe.forEach(n=>{const o=e.getValue(n);o!==void 0&&(r.push([n,o.get()]),o.set(n.startsWith("scale")?1:0))}),r}const wp={width:({x:e},{paddingLeft:r="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(r)-parseFloat(n),height:({y:e},{paddingTop:r="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(r)-parseFloat(n),top:(e,{top:r})=>parseFloat(r),left:(e,{left:r})=>parseFloat(r),bottom:({y:e},{top:r})=>parseFloat(r)+(e.max-e.min),right:({x:e},{left:r})=>parseFloat(r)+(e.max-e.min),x:(e,{transform:r})=>YE(r,"x"),y:(e,{transform:r})=>YE(r,"y")};wp.translateX=wp.x,wp.translateY=wp.y;const kp=new Set;let XE=!1,KE=!1,ZE=!1;function hX(){if(KE){const e=Array.from(kp).filter(o=>o.needsMeasurement),r=new Set(e.map(o=>o.element)),n=new Map;r.forEach(o=>{const i=dIe(o);i.length&&(n.set(o,i),o.render())}),e.forEach(o=>o.measureInitialState()),r.forEach(o=>{o.render();const i=n.get(o);i&&i.forEach(([a,l])=>{o.getValue(a)?.set(l)})}),e.forEach(o=>o.measureEndState()),e.forEach(o=>{o.suspendedScrollY!==void 0&&window.scrollTo(0,o.suspendedScrollY)})}KE=!1,XE=!1,kp.forEach(e=>e.complete(ZE)),kp.clear()}function fX(){kp.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(KE=!0)})}function uIe(){ZE=!0,fX(),hX(),ZE=!1}class QE{constructor(r,n,o,i,a,l=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...r],this.onComplete=n,this.name=o,this.motionValue=i,this.element=a,this.isAsync=l}scheduleResolve(){this.state="scheduled",this.isAsync?(kp.add(this),XE||(XE=!0,Dr.read(fX),Dr.resolveKeyframes(hX))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:r,name:n,element:o,motionValue:i}=this;if(r[0]===null){const a=i?.get(),l=r[r.length-1];if(a!==void 0)r[0]=a;else if(o&&n){const s=o.readValue(n,l);s!=null&&(r[0]=s)}r[0]===void 0&&(r[0]=l),i&&a===void 0&&i.set(r[0])}nIe(r)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(r=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,r),kp.delete(this)}cancel(){this.state==="scheduled"&&(kp.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const pIe=e=>e.startsWith("--");function hIe(e,r,n){pIe(r)?e.style.setProperty(r,n):e.style[r]=n}const fIe=SE(()=>window.ScrollTimeline!==void 0),mIe={};function gIe(e,r){const n=SE(e);return()=>mIe[r]??n()}const mX=gIe(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),Ly=([e,r,n,o])=>`cubic-bezier(${e}, ${r}, ${n}, ${o})`,gX={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Ly([0,.65,.55,1]),circOut:Ly([.55,0,1,.45]),backIn:Ly([.31,.01,.66,-.59]),backOut:Ly([.33,1.53,.69,.99])};function yX(e,r){if(e)return typeof e=="function"?mX()?rX(e,r):"ease-out":LY(e)?Ly(e):Array.isArray(e)?e.map(n=>yX(n,r)||gX.easeOut):gX[e]}function yIe(e,r,n,{delay:o=0,duration:i=300,repeat:a=0,repeatType:l="loop",ease:s="easeOut",times:c}={},d=void 0){const u={[r]:n};c&&(u.offset=c);const p=yX(s,i);Array.isArray(p)&&(u.easing=p);const f={delay:o,duration:i,easing:Array.isArray(p)?"linear":p,fill:"both",iterations:a+1,direction:l==="reverse"?"alternate":"normal"};return d&&(f.pseudoElement=d),e.animate(u,f)}function JE(e){return typeof e=="function"&&"applyToOptions"in e}function vIe({type:e,...r}){return JE(e)&&mX()?e.applyToOptions(r):(r.duration??(r.duration=300),r.ease??(r.ease="easeOut"),r)}class bIe extends qE{constructor(r){if(super(),this.finishedTime=null,this.isStopped=!1,!r)return;const{element:n,name:o,keyframes:i,pseudoElement:a,allowFlatten:l=!1,finalKeyframe:s,onComplete:c}=r;this.isPseudoElement=!!a,this.allowFlatten=l,this.options=r,_E(typeof r.type!="string");const d=vIe(r);this.animation=yIe(n,o,i,d,a),d.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!a){const u=VE(i,this.options,s,this.speed);this.updateMotionValue?this.updateMotionValue(u):hIe(n,o,u),this.animation.cancel()}c?.(),this.notifyFinished()}}play(){this.isStopped||(this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:r}=this;r==="idle"||r==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){this.isPseudoElement||this.animation.commitStyles?.()}get duration(){const r=this.animation.effect?.getComputedTiming?.().duration||0;return fa(Number(r))}get iterationDuration(){const{delay:r=0}=this.options||{};return this.duration+fa(r)}get time(){return fa(Number(this.animation.currentTime)||0)}set time(r){this.finishedTime=null,this.animation.currentTime=al(r)}get speed(){return this.animation.playbackRate}set speed(r){r<0&&(this.finishedTime=null),this.animation.playbackRate=r}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return Number(this.animation.startTime)}set startTime(r){this.animation.startTime=r}attachTimeline({timeline:r,observe:n}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,r&&fIe()?(this.animation.timeline=r,ha):n(this)}}const vX={anticipate:MY,backInOut:DY,circInOut:PY};function xIe(e){return e in vX}function wIe(e){typeof e.ease=="string"&&xIe(e.ease)&&(e.ease=vX[e.ease])}const bX=10;class kIe extends bIe{constructor(r){wIe(r),sX(r),super(r),r.startTime&&(this.startTime=r.startTime),this.options=r}updateMotionValue(r){const{motionValue:n,onUpdate:o,onComplete:i,element:a,...l}=this.options;if(!n)return;if(r!==void 0){n.set(r);return}const s=new HE({...l,autoplay:!1}),c=al(this.finishedTime??this.time);n.setWithVelocity(s.sample(c-bX).value,s.sample(c).value,bX),s.stop()}}const xX=(e,r)=>r==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(zd.test(e)||e==="0")&&!e.startsWith("url("));function _Ie(e){const r=e[0];if(e.length===1)return!0;for(let n=0;nObject.hasOwnProperty.call(Element.prototype,"animate"));function $Ie(e){const{motionValue:r,name:n,repeatDelay:o,repeatType:i,damping:a,type:l}=e;if(!(r?.owner?.current instanceof HTMLElement))return!1;const{onUpdate:s,transformTemplate:c}=r.owner.getProps();return CIe()&&n&&EIe.has(n)&&(n!=="transform"||!c)&&!s&&!o&&i!=="mirror"&&a!==0&&l!=="inertia"}const RIe=40;class zIe extends qE{constructor({autoplay:r=!0,delay:n=0,type:o="keyframes",repeat:i=0,repeatDelay:a=0,repeatType:l="loop",keyframes:s,name:c,motionValue:d,element:u,...p}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=li.now();const f={autoplay:r,delay:n,type:o,repeat:i,repeatDelay:a,repeatType:l,name:c,motionValue:d,element:u,...p},g=u?.KeyframeResolver||QE;this.keyframeResolver=new g(s,(v,w,x)=>this.onKeyframesResolved(v,w,f,!x),c,d,u),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(r,n,o,i){this.keyframeResolver=void 0;const{name:a,type:l,velocity:s,delay:c,isHandoff:d,onUpdate:u}=o;this.resolvedAt=li.now(),SIe(r,a,l,s)||((ic.instantAnimations||!c)&&u?.(VE(r,o,n)),r[0]=r[r.length-1],eC(o),o.repeat=0);const p={startTime:i?this.resolvedAt?this.resolvedAt-this.createdAt>RIe?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...o,keyframes:r},f=!d&&$Ie(p)?new kIe({...p,element:p.motionValue.owner.current}):new HE(p);f.finished.then(()=>this.notifyFinished()).catch(ha),this.pendingTimeline&&(this.stopTimeline=f.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=f}get finished(){return this._animation?this.animation.finished:this._finished}then(r,n){return this.finished.finally(r).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),uIe()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(r){this.animation.time=r}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(r){this.animation.speed=r}get startTime(){return this.animation.startTime}attachTimeline(r){return this._animation?this.stopTimeline=this.animation.attachTimeline(r):this.pendingTimeline=r,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}}class TIe{constructor(r){this.stop=()=>this.runAll("stop"),this.animations=r.filter(Boolean)}get finished(){return Promise.all(this.animations.map(r=>r.finished))}getAll(r){return this.animations[0][r]}setAll(r,n){for(let o=0;oo.attachTimeline(r));return()=>{n.forEach((o,i)=>{o&&o(),this.animations[i].stop()})}}get time(){return this.getAll("time")}set time(r){this.setAll("time",r)}get speed(){return this.getAll("speed")}set speed(r){this.setAll("speed",r)}get state(){return this.getAll("state")}get startTime(){return this.getAll("startTime")}get duration(){return wX(this.animations,"duration")}get iterationDuration(){return wX(this.animations,"iterationDuration")}runAll(r){this.animations.forEach(n=>n[r]())}play(){this.runAll("play")}pause(){this.runAll("pause")}cancel(){this.runAll("cancel")}complete(){this.runAll("complete")}}function wX(e,r){let n=0;for(let o=0;on&&(n=i)}return n}class jIe extends TIe{then(r,n){return this.finished.finally(r).then(()=>{})}}const AIe=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function DIe(e){const r=AIe.exec(e);if(!r)return[,];const[,n,o,i]=r;return[`--${n??o}`,i]}function kX(e,r,n=1){const[o,i]=DIe(e);if(!o)return;const a=window.getComputedStyle(r).getPropertyValue(o);if(a){const l=a.trim();return EY(l)?parseFloat(l):l}return zE(i)?kX(i,r,n+1):i}function tC(e,r){return e?.[r]??e?.default??e}const _X=new Set(["width","height","top","left","right","bottom",...Jf]),MIe={test:e=>e==="auto",parse:e=>e},SX=e=>r=>r.test(e),EX=[Zf,_t,os,Rd,CBe,EBe,MIe],CX=e=>EX.find(SX(e));function NIe(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||$Y(e):!0}const PIe=new Set(["brightness","contrast","saturate","opacity"]);function BIe(e){const[r,n]=e.slice(0,-1).split("(");if(r==="drop-shadow")return e;const[o]=n.match(TE)||[];if(!o)return e;const i=n.replace(o,"");let a=PIe.has(r)?1:0;return o!==n&&(a*=100),r+"("+a+i+")"}const IIe=/\b([a-z-]*)\(.*?\)/gu,rC={...zd,getAnimatableNone:e=>{const r=e.match(IIe);return r?r.map(BIe).join(" "):e}},$X={...Zf,transform:Math.round},OIe={rotate:Rd,rotateX:Rd,rotateY:Rd,rotateZ:Rd,scale:q3,scaleX:q3,scaleY:q3,scaleZ:q3,skew:Rd,skewX:Rd,skewY:Rd,distance:_t,translateX:_t,translateY:_t,translateZ:_t,x:_t,y:_t,z:_t,perspective:_t,transformPerspective:_t,opacity:My,originX:WY,originY:WY,originZ:_t},nC={borderWidth:_t,borderTopWidth:_t,borderRightWidth:_t,borderBottomWidth:_t,borderLeftWidth:_t,borderRadius:_t,radius:_t,borderTopLeftRadius:_t,borderTopRightRadius:_t,borderBottomRightRadius:_t,borderBottomLeftRadius:_t,width:_t,maxWidth:_t,height:_t,maxHeight:_t,top:_t,right:_t,bottom:_t,left:_t,padding:_t,paddingTop:_t,paddingRight:_t,paddingBottom:_t,paddingLeft:_t,margin:_t,marginTop:_t,marginRight:_t,marginBottom:_t,marginLeft:_t,backgroundPositionX:_t,backgroundPositionY:_t,...OIe,zIndex:$X,fillOpacity:My,strokeOpacity:My,numOctaves:$X},LIe={...nC,color:Sn,backgroundColor:Sn,outlineColor:Sn,fill:Sn,stroke:Sn,borderColor:Sn,borderTopColor:Sn,borderRightColor:Sn,borderBottomColor:Sn,borderLeftColor:Sn,filter:rC,WebkitFilter:rC},RX=e=>LIe[e];function zX(e,r){let n=RX(e);return n!==rC&&(n=zd),n.getAnimatableNone?n.getAnimatableNone(r):void 0}const FIe=new Set(["auto","none","0"]);function VIe(e,r,n){let o=0,i;for(;o{r.getValue(s).set(c)}),this.resolveNoneKeyframes()}}function TX(e,r,n){if(e instanceof EventTarget)return[e];if(typeof e=="string"){let o=document;const i=n?.[e]??o.querySelectorAll(e);return i?Array.from(i):[]}return Array.from(e)}const jX=(e,r)=>r&&typeof e=="number"?r.transform(e):e;function AX(e){return CY(e)&&"offsetHeight"in e}const DX=30,HIe=e=>!isNaN(parseFloat(e));class UIe{constructor(r,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=o=>{const i=li.now();if(this.updatedAt!==i&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(o),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const a of this.dependents)a.dirty()},this.hasAnimated=!1,this.setCurrent(r),this.owner=n.owner}setCurrent(r){this.current=r,this.updatedAt=li.now(),this.canTrackVelocity===null&&r!==void 0&&(this.canTrackVelocity=HIe(this.current))}setPrevFrameValue(r=this.current){this.prevFrameValue=r,this.prevUpdatedAt=this.updatedAt}onChange(r){return this.on("change",r)}on(r,n){this.events[r]||(this.events[r]=new EE);const o=this.events[r].add(n);return r==="change"?()=>{o(),Dr.read(()=>{this.events.change.getSize()||this.stop()})}:o}clearListeners(){for(const r in this.events)this.events[r].clear()}attach(r,n){this.passiveEffect=r,this.stopPassiveEffect=n}set(r){this.passiveEffect?this.passiveEffect(r,this.updateAndNotify):this.updateAndNotify(r)}setWithVelocity(r,n,o){this.set(n),this.prev=void 0,this.prevFrameValue=r,this.prevUpdatedAt=this.updatedAt-o}jump(r,n=!0){this.updateAndNotify(r),this.prev=r,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(r){this.dependents||(this.dependents=new Set),this.dependents.add(r)}removeDependent(r){this.dependents&&this.dependents.delete(r)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const r=li.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||r-this.updatedAt>DX)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,DX);return RY(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(r){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=r(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function _p(e,r){return new UIe(e,r)}const{schedule:oC}=VY(queueMicrotask,!1),ll={x:!1,y:!1};function MX(){return ll.x||ll.y}function WIe(e){return e==="x"||e==="y"?ll[e]?null:(ll[e]=!0,()=>{ll[e]=!1}):ll.x||ll.y?null:(ll.x=ll.y=!0,()=>{ll.x=ll.y=!1})}function NX(e,r){const n=TX(e),o=new AbortController,i={passive:!0,...r,signal:o.signal};return[n,i,()=>o.abort()]}function PX(e){return!(e.pointerType==="touch"||MX())}function GIe(e,r,n={}){const[o,i,a]=NX(e,n),l=s=>{if(!PX(s))return;const{target:c}=s,d=r(c,s);if(typeof d!="function"||!c)return;const u=p=>{PX(p)&&(d(p),c.removeEventListener("pointerleave",u))};c.addEventListener("pointerleave",u,i)};return o.forEach(s=>{s.addEventListener("pointerenter",l,i)}),a}const BX=(e,r)=>r?e===r?!0:BX(e,r.parentElement):!1,iC=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,YIe=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function XIe(e){return YIe.has(e.tagName)||e.tabIndex!==-1}const W3=new WeakSet;function IX(e){return r=>{r.key==="Enter"&&e(r)}}function aC(e,r){e.dispatchEvent(new PointerEvent("pointer"+r,{isPrimary:!0,bubbles:!0}))}const KIe=(e,r)=>{const n=e.currentTarget;if(!n)return;const o=IX(()=>{if(W3.has(n))return;aC(n,"down");const i=IX(()=>{aC(n,"up")}),a=()=>aC(n,"cancel");n.addEventListener("keyup",i,r),n.addEventListener("blur",a,r)});n.addEventListener("keydown",o,r),n.addEventListener("blur",()=>n.removeEventListener("keydown",o),r)};function OX(e){return iC(e)&&!MX()}function ZIe(e,r,n={}){const[o,i,a]=NX(e,n),l=s=>{const c=s.currentTarget;if(!OX(s))return;W3.add(c);const d=r(c,s),u=(g,v)=>{window.removeEventListener("pointerup",p),window.removeEventListener("pointercancel",f),W3.has(c)&&W3.delete(c),OX(g)&&typeof d=="function"&&d(g,{success:v})},p=g=>{u(g,c===window||c===document||n.useGlobalTarget||BX(c,g.target))},f=g=>{u(g,!1)};window.addEventListener("pointerup",p,i),window.addEventListener("pointercancel",f,i)};return o.forEach(s=>{(n.useGlobalTarget?window:s).addEventListener("pointerdown",l,i),AX(s)&&(s.addEventListener("focus",c=>KIe(c,i)),!XIe(s)&&!s.hasAttribute("tabindex")&&(s.tabIndex=0))}),a}function lC(e){return CY(e)&&"ownerSVGElement"in e}function LX(e){return lC(e)&&e.tagName==="svg"}const to=e=>!!(e&&e.getVelocity),QIe=[...EX,Sn,zd],JIe=e=>QIe.find(SX(e));function sC(e){return typeof e=="object"&&!Array.isArray(e)}function FX(e,r,n,o){return typeof e=="string"&&sC(r)?TX(e,n,o):e instanceof NodeList?Array.from(e):Array.isArray(e)?e:[e]}function eOe(e,r,n){return e*(r+1)}function VX(e,r,n,o){return typeof r=="number"?r:r.startsWith("-")||r.startsWith("+")?Math.max(0,e+parseFloat(r)):r==="<"?n:r.startsWith("<")?Math.max(0,n+parseFloat(r.slice(1))):o.get(r)??e}function tOe(e,r,n){for(let o=0;or&&i.at{const j=lOe($),{delay:I=0,times:P=lX(j),type:L="keyframes",repeat:H,repeatType:M,repeatDelay:V=0,...B}=R;let{ease:F=r.ease||"easeOut",duration:q}=R;const G=typeof I=="function"?I(A,z):I,U=j.length,Y=JE(L)?L:i?.[L||"keyframes"];if(U<=2&&Y){let Z=100;if(U===2&&dOe(j)){const te=j[1]-j[0];Z=Math.abs(te)}const Q={...B};q!==void 0&&(Q.duration=al(q));const ie=nX(Q,Z,Y);F=ie.ease,q=ie.duration}q??(q=a);const K=p+G;P.length===1&&P[0]===0&&(P[1]=1);const O=P.length-j.length;if(O>0&&aX(P,O),j.length===1&&j.unshift(null),H){q=eOe(q,H);const Z=[...j],Q=[...P];F=Array.isArray(F)?[...F]:[F];const ie=[...F];for(let te=0;te{for(const w in g){const x=g[w];x.sort(oOe);const k=[],C=[],_=[];for(let R=0;Rtypeof e=="number",dOe=e=>e.every(cOe),Fy=new WeakMap,cC=e=>Array.isArray(e);function UX(e){const r=[{},{}];return e?.values.forEach((n,o)=>{r[0][o]=n.get(),r[1][o]=n.getVelocity()}),r}function dC(e,r,n,o){if(typeof r=="function"){const[i,a]=UX(o);r=r(n!==void 0?n:e.custom,i,a)}if(typeof r=="string"&&(r=e.variants&&e.variants[r]),typeof r=="function"){const[i,a]=UX(o);r=r(n!==void 0?n:e.custom,i,a)}return r}function tm(e,r,n){const o=e.getProps();return dC(o,r,n!==void 0?n:o.custom,e)}function uOe(e,r,n){e.hasValue(r)?e.getValue(r).set(n):e.addValue(r,_p(n))}function pOe(e){return cC(e)?e[e.length-1]||0:e}function hOe(e,r){const n=tm(e,r);let{transitionEnd:o={},transition:i={},...a}=n||{};a={...a,...o};for(const l in a){const s=pOe(a[l]);uOe(e,l,s)}}function fOe(e){return!!(to(e)&&e.add)}function uC(e,r){const n=e.getValue("willChange");if(fOe(n))return n.add(r);if(!n&&ic.WillChange){const o=new ic.WillChange("auto");e.addValue("willChange",o),o.add(r)}}const pC=e=>e.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),mOe="framerAppearId",WX="data-"+pC(mOe);function GX(e){return e.props[WX]}const gOe=e=>e!==null;function yOe(e,{repeat:r,repeatType:n="loop"},o){const i=e.filter(gOe),a=r&&n!=="loop"&&r%2===1?0:i.length-1;return i[a]}const vOe={type:"spring",stiffness:500,damping:25,restSpeed:10},bOe=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),xOe={type:"keyframes",duration:.8},wOe={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},kOe=(e,{keyframes:r})=>r.length>2?xOe:em.has(e)?e.startsWith("scale")?bOe(r[1]):vOe:wOe;function _Oe({when:e,delay:r,delayChildren:n,staggerChildren:o,staggerDirection:i,repeat:a,repeatType:l,repeatDelay:s,from:c,elapsed:d,...u}){return!!Object.keys(u).length}const hC=(e,r,n,o={},i,a)=>l=>{const s=tC(o,e)||{},c=s.delay||o.delay||0;let{elapsed:d=0}=o;d=d-al(c);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:r.getVelocity(),...s,delay:-d,onUpdate:f=>{r.set(f),s.onUpdate&&s.onUpdate(f)},onComplete:()=>{l(),s.onComplete&&s.onComplete()},name:e,motionValue:r,element:a?void 0:i};_Oe(s)||Object.assign(u,kOe(e,u)),u.duration&&(u.duration=al(u.duration)),u.repeatDelay&&(u.repeatDelay=al(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let p=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(eC(u),u.delay===0&&(p=!0)),(ic.instantAnimations||ic.skipAnimations)&&(p=!0,eC(u),u.delay=0),u.allowFlatten=!s.type&&!s.ease,p&&!a&&r.get()!==void 0){const f=yOe(u.keyframes,s);if(f!==void 0){Dr.update(()=>{u.onUpdate(f),u.onComplete()});return}}return s.isSync?new HE(u):new zIe(u)};function SOe({protectedKeys:e,needsAnimating:r},n){const o=e.hasOwnProperty(n)&&r[n]!==!0;return r[n]=!1,o}function fC(e,r,{delay:n=0,transitionOverride:o,type:i}={}){let{transition:a=e.getDefaultTransition(),transitionEnd:l,...s}=r;o&&(a=o);const c=[],d=i&&e.animationState&&e.animationState.getState()[i];for(const u in s){const p=e.getValue(u,e.latestValues[u]??null),f=s[u];if(f===void 0||d&&SOe(d,u))continue;const g={delay:n,...tC(a||{},u)},v=p.get();if(v!==void 0&&!p.isAnimating&&!Array.isArray(f)&&f===v&&!g.velocity)continue;let w=!1;if(window.MotionHandoffAnimation){const k=GX(e);if(k){const C=window.MotionHandoffAnimation(k,u,Dr);C!==null&&(g.startTime=C,w=!0)}}uC(e,u),p.start(hC(u,p,f,e.shouldReduceMotion&&_X.has(u)?{type:!1}:g,e,w));const x=p.animation;x&&c.push(x)}return l&&Promise.all(c).then(()=>{Dr.update(()=>{l&&hOe(e,l)})}),c}function YX({top:e,left:r,right:n,bottom:o}){return{x:{min:r,max:n},y:{min:e,max:o}}}function EOe({x:e,y:r}){return{top:r.min,right:e.max,bottom:r.max,left:e.min}}function COe(e,r){if(!r)return e;const n=r({x:e.left,y:e.top}),o=r({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:o.y,right:o.x}}function mC(e){return e===void 0||e===1}function gC({scale:e,scaleX:r,scaleY:n}){return!mC(e)||!mC(r)||!mC(n)}function Sp(e){return gC(e)||XX(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function XX(e){return KX(e.x)||KX(e.y)}function KX(e){return e&&e!=="0%"}function G3(e,r,n){const o=e-n,i=r*o;return n+i}function ZX(e,r,n,o,i){return i!==void 0&&(e=G3(e,i,o)),G3(e,n,o)+r}function yC(e,r=0,n=1,o,i){e.min=ZX(e.min,r,n,o,i),e.max=ZX(e.max,r,n,o,i)}function QX(e,{x:r,y:n}){yC(e.x,r.translate,r.scale,r.originPoint),yC(e.y,n.translate,n.scale,n.originPoint)}const JX=.999999999999,eK=1.0000000000001;function $Oe(e,r,n,o=!1){const i=n.length;if(!i)return;r.x=r.y=1;let a,l;for(let s=0;sJX&&(r.x=1),r.yJX&&(r.y=1)}function rm(e,r){e.min=e.min+r,e.max=e.max+r}function tK(e,r,n,o,i=.5){const a=Lr(e.min,e.max,i);yC(e,r,n,a,o)}function nm(e,r){tK(e.x,r.x,r.scaleX,r.scale,r.originX),tK(e.y,r.y,r.scaleY,r.scale,r.originY)}function rK(e,r){return YX(COe(e.getBoundingClientRect(),r))}function ROe(e,r,n){const o=rK(e,n),{scroll:i}=r;return i&&(rm(o.x,i.offset.x),rm(o.y,i.offset.y)),o}const nK={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},om={};for(const e in nK)om[e]={isEnabled:r=>nK[e].some(n=>!!r[n])};const oK=()=>({translate:0,scale:1,origin:0,originPoint:0}),im=()=>({x:oK(),y:oK()}),iK=()=>({min:0,max:0}),En=()=>({x:iK(),y:iK()}),vC=typeof window<"u",Y3={current:null},bC={current:!1};function aK(){if(bC.current=!0,!!vC)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),r=()=>Y3.current=e.matches;e.addEventListener("change",r),r()}else Y3.current=!1}function X3(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function Vy(e){return typeof e=="string"||Array.isArray(e)}const xC=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],wC=["initial",...xC];function K3(e){return X3(e.animate)||wC.some(r=>Vy(e[r]))}function lK(e){return!!(K3(e)||e.variants)}function zOe(e,r,n){for(const o in r){const i=r[o],a=n[o];if(to(i))e.addValue(o,i);else if(to(a))e.addValue(o,_p(i,{owner:e}));else if(a!==i)if(e.hasValue(o)){const l=e.getValue(o);l.liveStyle===!0?l.jump(i):l.hasAnimated||l.set(i)}else{const l=e.getStaticValue(o);e.addValue(o,_p(l!==void 0?l:i,{owner:e}))}}for(const o in n)r[o]===void 0&&e.removeValue(o);return r}const sK=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class cK{scrapeMotionValuesFromProps(r,n,o){return{}}constructor({parent:r,props:n,presenceContext:o,reducedMotionConfig:i,blockInitialAnimation:a,visualState:l},s={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=QE,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const f=li.now();this.renderScheduledAtthis.bindToMotionValue(o,n)),bC.current||aK(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:Y3.current,this.parent?.addChild(this),this.update(this.props,this.presenceContext)}unmount(){this.projection&&this.projection.unmount(),$d(this.notifyUpdate),$d(this.render),this.valueSubscriptions.forEach(r=>r()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const r in this.events)this.events[r].clear();for(const r in this.features){const n=this.features[r];n&&(n.unmount(),n.isMounted=!1)}this.current=null}addChild(r){this.children.add(r),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(r)}removeChild(r){this.children.delete(r),this.enteringChildren&&this.enteringChildren.delete(r)}bindToMotionValue(r,n){this.valueSubscriptions.has(r)&&this.valueSubscriptions.get(r)();const o=em.has(r);o&&this.onBindTransform&&this.onBindTransform();const i=n.on("change",l=>{this.latestValues[r]=l,this.props.onUpdate&&Dr.preRender(this.notifyUpdate),o&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let a;window.MotionCheckAppearSync&&(a=window.MotionCheckAppearSync(this,r,n)),this.valueSubscriptions.set(r,()=>{i(),a&&a(),n.owner&&n.stop()})}sortNodePosition(r){return!this.current||!this.sortInstanceNodePosition||this.type!==r.type?0:this.sortInstanceNodePosition(this.current,r.current)}updateFeatures(){let r="animation";for(r in om){const n=om[r];if(!n)continue;const{isEnabled:o,Feature:i}=n;if(!this.features[r]&&i&&o(this.props)&&(this.features[r]=new i(this)),this.features[r]){const a=this.features[r];a.isMounted?a.update():(a.mount(),a.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):En()}getStaticValue(r){return this.latestValues[r]}setStaticValue(r,n){this.latestValues[r]=n}update(r,n){(r.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=r,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let o=0;on.variantChildren.delete(r)}addValue(r,n){const o=this.values.get(r);n!==o&&(o&&this.removeValue(r),this.bindToMotionValue(r,n),this.values.set(r,n),this.latestValues[r]=n.get())}removeValue(r){this.values.delete(r);const n=this.valueSubscriptions.get(r);n&&(n(),this.valueSubscriptions.delete(r)),delete this.latestValues[r],this.removeValueFromRenderState(r,this.renderState)}hasValue(r){return this.values.has(r)}getValue(r,n){if(this.props.values&&this.props.values[r])return this.props.values[r];let o=this.values.get(r);return o===void 0&&n!==void 0&&(o=_p(n===null?void 0:n,{owner:this}),this.addValue(r,o)),o}readValue(r,n){let o=this.latestValues[r]!==void 0||!this.current?this.latestValues[r]:this.getBaseTargetFromProps(this.props,r)??this.readValueFromInstance(this.current,r,this.options);return o!=null&&(typeof o=="string"&&(EY(o)||$Y(o))?o=parseFloat(o):!JIe(o)&&zd.test(n)&&(o=zX(r,n)),this.setBaseTarget(r,to(o)?o.get():o)),to(o)?o.get():o}setBaseTarget(r,n){this.baseTarget[r]=n}getBaseTarget(r){const{initial:n}=this.props;let o;if(typeof n=="string"||typeof n=="object"){const a=dC(this.props,n,this.presenceContext?.custom);a&&(o=a[r])}if(n&&o!==void 0)return o;const i=this.getBaseTargetFromProps(this.props,r);return i!==void 0&&!to(i)?i:this.initialValues[r]!==void 0&&o===void 0?void 0:this.baseTarget[r]}on(r,n){return this.events[r]||(this.events[r]=new EE),this.events[r].add(n)}notify(r,...n){this.events[r]&&this.events[r].notify(...n)}scheduleRenderMicrotask(){oC.render(this.render)}}class dK extends cK{constructor(){super(...arguments),this.KeyframeResolver=qIe}sortInstanceNodePosition(r,n){return r.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(r,n){return r.style?r.style[n]:void 0}removeValueFromRenderState(r,{vars:n,style:o}){delete n[r],delete o[r]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:r}=this.props;to(r)&&(this.childSubscription=r.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}const TOe={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},jOe=Jf.length;function AOe(e,r,n){let o="",i=!0;for(let a=0;a{if(!r.target)return e;if(typeof e=="string")if(_t.test(e))e=parseFloat(e);else return e;const n=pK(e,r.target.x),o=pK(e,r.target.y);return`${n}% ${o}%`}},DOe={correct:(e,{treeScale:r,projectionDelta:n})=>{const o=e,i=zd.parse(e);if(i.length>5)return o;const a=zd.createTransformer(e),l=typeof i[0]!="number"?1:0,s=n.x.scale*r.x,c=n.y.scale*r.y;i[0+l]/=s,i[1+l]/=c;const d=Lr(s,c,.5);return typeof i[2+l]=="number"&&(i[2+l]/=d),typeof i[3+l]=="number"&&(i[3+l]/=d),a(i)}},_C={borderRadius:{...qy,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:qy,borderTopRightRadius:qy,borderBottomLeftRadius:qy,borderBottomRightRadius:qy,boxShadow:DOe};function hK(e,{layout:r,layoutId:n}){return em.has(e)||e.startsWith("origin")||(r||n!==void 0)&&(!!_C[e]||e==="opacity")}function SC(e,r,n){const{style:o}=e,i={};for(const a in o)(to(o[a])||r.style&&to(r.style[a])||hK(a,e)||n?.getValue(a)?.liveStyle!==void 0)&&(i[a]=o[a]);return i}function MOe(e){return window.getComputedStyle(e)}class fK extends dK{constructor(){super(...arguments),this.type="html",this.renderInstance=uK}readValueFromInstance(r,n){if(em.has(n))return this.projection?.isProjecting?GE(n):aIe(r,n);{const o=MOe(r),i=(HY(n)?o.getPropertyValue(n):o[n])||0;return typeof i=="string"?i.trim():i}}measureInstanceViewportBox(r,{transformPagePoint:n}){return rK(r,n)}build(r,n,o){kC(r,n,o.transformTemplate)}scrapeMotionValuesFromProps(r,n,o){return SC(r,n,o)}}function NOe(e,r){return e in r}class POe extends cK{constructor(){super(...arguments),this.type="object"}readValueFromInstance(r,n){if(NOe(n,r)){const o=r[n];if(typeof o=="string"||typeof o=="number")return o}}getBaseTargetFromProps(){}removeValueFromRenderState(r,n){delete n.output[r]}measureInstanceViewportBox(){return En()}build(r,n){Object.assign(r.output,n)}renderInstance(r,{output:n}){Object.assign(r,n)}sortInstanceNodePosition(){return 0}}const BOe={offset:"stroke-dashoffset",array:"stroke-dasharray"},IOe={offset:"strokeDashoffset",array:"strokeDasharray"};function OOe(e,r,n=1,o=0,i=!0){e.pathLength=1;const a=i?BOe:IOe;e[a.offset]=_t.transform(-o);const l=_t.transform(r),s=_t.transform(n);e[a.array]=`${l} ${s}`}function mK(e,{attrX:r,attrY:n,attrScale:o,pathLength:i,pathSpacing:a=1,pathOffset:l=0,...s},c,d,u){if(kC(e,s,d),c){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:p,style:f}=e;p.transform&&(f.transform=p.transform,delete p.transform),(f.transform||p.transformOrigin)&&(f.transformOrigin=p.transformOrigin??"50% 50%",delete p.transformOrigin),f.transform&&(f.transformBox=u?.transformBox??"fill-box",delete p.transformBox),r!==void 0&&(p.x=r),n!==void 0&&(p.y=n),o!==void 0&&(p.scale=o),i!==void 0&&OOe(p,i,a,l,!1)}const gK=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),yK=e=>typeof e=="string"&&e.toLowerCase()==="svg";function LOe(e,r,n,o){uK(e,r,void 0,o);for(const i in r.attrs)e.setAttribute(gK.has(i)?i:pC(i),r.attrs[i])}function vK(e,r,n){const o=SC(e,r,n);for(const i in e)if(to(e[i])||to(r[i])){const a=Jf.indexOf(i)!==-1?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i;o[a]=e[i]}return o}class bK extends dK{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=En}getBaseTargetFromProps(r,n){return r[n]}readValueFromInstance(r,n){if(em.has(n)){const o=RX(n);return o&&o.default||0}return n=gK.has(n)?n:pC(n),r.getAttribute(n)}scrapeMotionValuesFromProps(r,n,o){return vK(r,n,o)}build(r,n,o){mK(r,n,this.isSVGTag,o.transformTemplate,o.style)}renderInstance(r,n,o,i){LOe(r,n,o,i)}mount(r){this.isSVGTag=yK(r.tagName),super.mount(r)}}function FOe(e){const r={presenceContext:null,props:{},visualState:{renderState:{transform:{},transformOrigin:{},style:{},vars:{},attrs:{}},latestValues:{}}},n=lC(e)&&!LX(e)?new bK(r):new fK(r);n.mount(e),Fy.set(e,n)}function VOe(e){const r={presenceContext:null,props:{},visualState:{renderState:{output:{}},latestValues:{}}},n=new POe(r);n.mount(e),Fy.set(e,n)}function xK(e,r,n){const o=to(e)?e:_p(e);return o.start(hC("",o,r,n)),o.animation}function qOe(e,r){return to(e)||typeof e=="number"||typeof e=="string"&&!sC(r)}function wK(e,r,n,o){const i=[];if(qOe(e,r))i.push(xK(e,sC(r)&&r.default||r,n&&(n.default||n)));else{const a=FX(e,r,o),l=a.length;for(let s=0;s{o.push(...wK(l,i,a))}),o}function UOe(e){return Array.isArray(e)&&e.some(Array.isArray)}function WOe(e){function r(n,o,i){let a=[],l;if(UOe(n))a=HOe(n,o,e);else{const{onComplete:c,...d}=i||{};typeof c=="function"&&(l=c),a=wK(n,o,d,e)}const s=new jIe(a);return l&&s.finished.then(l),s}return r}const GOe=WOe();function YOe(e,r){const n=li.now(),o=({timestamp:i})=>{const a=i-n;a>=r&&($d(o),e(a-r))};return Dr.setup(o,!0),()=>$d(o)}const kK=(e,r)=>Math.abs(e-r);function XOe(e,r){const n=kK(e.x,r.x),o=kK(e.y,r.y);return Math.sqrt(n**2+o**2)}const Hy=S.createContext({});function am(e){const r=S.useRef(null);return r.current===null&&(r.current=e()),r.current}const EC=vC?S.useLayoutEffect:S.useEffect,Z3=S.createContext(null),Ep=S.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function _K(e,r){if(typeof e=="function")return e(r);e!=null&&(e.current=r)}function KOe(...e){return r=>{let n=!1;const o=e.map(i=>{const a=_K(i,r);return!n&&typeof a=="function"&&(n=!0),a});if(n)return()=>{for(let i=0;i{const{width:d,height:u,top:p,left:f,right:g}=l.current;if(r||!a.current||!d||!u)return;const v=n==="left"?`left: ${f}`:`right: ${g}`;a.current.dataset.motionPopId=i;const w=document.createElement("style");s&&(w.nonce=s);const x=o??document.head;return x.appendChild(w),w.sheet&&w.sheet.insertRule(` + `};function xMe(e,r){return!e||tp(e)?"":Jr(uw(e),Pq(([n,o])=>[`:is(${r} [data-likec4-tag="${n}"]) {`,bMe(o),"}"]),Lq(` +`))}function wMe({children:e,rootSelector:r}){const n=yMe().tags,o=xMe(n,r);return y.jsxs(AG.Provider,{value:n,children:[o!==""&&y.jsx(kMe,{stylesheet:o}),e]})}const kMe=S.memo(({stylesheet:e})=>{const r=np()?.();return y.jsx("style",{"data-likec4-tags":!0,type:"text/css",dangerouslySetInnerHTML:{__html:e},nonce:r})});function _Me(e){return S.useContext(AG)[e]??{color:"tomato"}}function DG(){return oa().replace("mantine-","likec4-")}var SMe="css,pos,insetX,insetY,insetEnd,end,insetStart,start,flexDir,p,pl,pr,pt,pb,py,paddingY,paddingX,px,pe,paddingEnd,ps,paddingStart,ml,mr,mt,mb,m,my,marginY,mx,marginX,me,marginEnd,ms,marginStart,ringWidth,ringColor,ring,ringOffset,w,minW,maxW,h,minH,maxH,textShadowColor,bgPosition,bgPositionX,bgPositionY,bgAttachment,bgClip,bg,bgColor,bgOrigin,bgImage,bgRepeat,bgBlendMode,bgSize,bgGradient,bgLinear,bgRadial,bgConic,rounded,roundedTopLeft,roundedTopRight,roundedBottomRight,roundedBottomLeft,roundedTop,roundedRight,roundedBottom,roundedLeft,roundedStartStart,roundedStartEnd,roundedStart,roundedEndStart,roundedEndEnd,roundedEnd,borderX,borderXWidth,borderXColor,borderY,borderYWidth,borderYColor,borderStart,borderStartWidth,borderStartColor,borderEnd,borderEndWidth,borderEndColor,shadow,shadowColor,x,y,z,scrollMarginY,scrollMarginX,scrollPaddingY,scrollPaddingX,aspectRatio,boxDecorationBreak,zIndex,boxSizing,objectPosition,objectFit,overscrollBehavior,overscrollBehaviorX,overscrollBehaviorY,position,top,left,inset,insetInline,insetBlock,insetBlockEnd,insetBlockStart,insetInlineEnd,insetInlineStart,right,bottom,float,visibility,display,hideFrom,hideBelow,flexBasis,flex,flexDirection,flexGrow,flexShrink,gridTemplateColumns,gridTemplateRows,gridColumn,gridRow,gridColumnStart,gridColumnEnd,gridAutoFlow,gridAutoColumns,gridAutoRows,gap,gridGap,gridRowGap,gridColumnGap,rowGap,columnGap,justifyContent,alignContent,alignItems,alignSelf,padding,paddingLeft,paddingRight,paddingTop,paddingBottom,paddingBlock,paddingBlockEnd,paddingBlockStart,paddingInline,paddingInlineEnd,paddingInlineStart,marginLeft,marginRight,marginTop,marginBottom,margin,marginBlock,marginBlockEnd,marginBlockStart,marginInline,marginInlineEnd,marginInlineStart,spaceX,spaceY,outlineWidth,outlineColor,outline,outlineOffset,focusRing,focusVisibleRing,focusRingColor,focusRingOffset,focusRingWidth,focusRingStyle,divideX,divideY,divideColor,divideStyle,width,inlineSize,minWidth,minInlineSize,maxWidth,maxInlineSize,height,blockSize,minHeight,minBlockSize,maxHeight,maxBlockSize,boxSize,color,fontFamily,fontSize,fontSizeAdjust,fontPalette,fontKerning,fontFeatureSettings,fontWeight,fontSmoothing,fontVariant,fontVariantAlternates,fontVariantCaps,fontVariationSettings,fontVariantNumeric,letterSpacing,lineHeight,textAlign,textDecoration,textDecorationColor,textEmphasisColor,textDecorationStyle,textDecorationThickness,textUnderlineOffset,textTransform,textIndent,textShadow,WebkitTextFillColor,textOverflow,verticalAlign,wordBreak,textWrap,truncate,lineClamp,listStyleType,listStylePosition,listStyleImage,listStyle,backgroundPosition,backgroundPositionX,backgroundPositionY,backgroundAttachment,backgroundClip,background,backgroundColor,backgroundOrigin,backgroundImage,backgroundRepeat,backgroundBlendMode,backgroundSize,backgroundGradient,backgroundLinear,backgroundRadial,backgroundConic,textGradient,gradientFromPosition,gradientToPosition,gradientFrom,gradientTo,gradientVia,gradientViaPosition,borderRadius,borderTopLeftRadius,borderTopRightRadius,borderBottomRightRadius,borderBottomLeftRadius,borderTopRadius,borderRightRadius,borderBottomRadius,borderLeftRadius,borderStartStartRadius,borderStartEndRadius,borderStartRadius,borderEndStartRadius,borderEndEndRadius,borderEndRadius,border,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,borderBlockStartWidth,borderBlockEndWidth,borderColor,borderInline,borderInlineWidth,borderInlineColor,borderBlock,borderBlockWidth,borderBlockColor,borderLeft,borderLeftColor,borderInlineStart,borderInlineStartWidth,borderInlineStartColor,borderRight,borderRightColor,borderInlineEnd,borderInlineEndWidth,borderInlineEndColor,borderTop,borderTopColor,borderBottom,borderBottomColor,borderBlockEnd,borderBlockEndColor,borderBlockStart,borderBlockStartColor,opacity,boxShadow,boxShadowColor,mixBlendMode,filter,brightness,contrast,grayscale,hueRotate,invert,saturate,sepia,dropShadow,blur,backdropFilter,backdropBlur,backdropBrightness,backdropContrast,backdropGrayscale,backdropHueRotate,backdropInvert,backdropOpacity,backdropSaturate,backdropSepia,borderCollapse,borderSpacing,borderSpacingX,borderSpacingY,tableLayout,transitionTimingFunction,transitionDelay,transitionDuration,transitionProperty,transition,animation,animationName,animationTimingFunction,animationDuration,animationDelay,animationPlayState,animationComposition,animationFillMode,animationDirection,animationIterationCount,animationRange,animationState,animationRangeStart,animationRangeEnd,animationTimeline,transformOrigin,transformBox,transformStyle,transform,rotate,rotateX,rotateY,rotateZ,scale,scaleX,scaleY,translate,translateX,translateY,translateZ,accentColor,caretColor,scrollBehavior,scrollbar,scrollbarColor,scrollbarGutter,scrollbarWidth,scrollMargin,scrollMarginLeft,scrollMarginRight,scrollMarginTop,scrollMarginBottom,scrollMarginBlock,scrollMarginBlockEnd,scrollMarginBlockStart,scrollMarginInline,scrollMarginInlineEnd,scrollMarginInlineStart,scrollPadding,scrollPaddingBlock,scrollPaddingBlockStart,scrollPaddingBlockEnd,scrollPaddingInline,scrollPaddingInlineEnd,scrollPaddingInlineStart,scrollPaddingLeft,scrollPaddingRight,scrollPaddingTop,scrollPaddingBottom,scrollSnapAlign,scrollSnapStop,scrollSnapType,scrollSnapStrictness,scrollSnapMargin,scrollSnapMarginTop,scrollSnapMarginBottom,scrollSnapMarginLeft,scrollSnapMarginRight,scrollSnapCoordinate,scrollSnapDestination,scrollSnapPointsX,scrollSnapPointsY,scrollSnapTypeX,scrollSnapTypeY,scrollTimeline,scrollTimelineAxis,scrollTimelineName,touchAction,userSelect,overflow,overflowWrap,overflowX,overflowY,overflowAnchor,overflowBlock,overflowInline,overflowClipBox,overflowClipMargin,overscrollBehaviorBlock,overscrollBehaviorInline,fill,stroke,strokeWidth,strokeDasharray,strokeDashoffset,strokeLinecap,strokeLinejoin,strokeMiterlimit,strokeOpacity,srOnly,debug,appearance,backfaceVisibility,clipPath,hyphens,mask,maskImage,maskSize,textSizeAdjust,container,containerName,containerType,cursor,colorPalette,_hover,_focus,_focusWithin,_focusVisible,_disabled,_active,_visited,_target,_readOnly,_readWrite,_empty,_checked,_enabled,_expanded,_highlighted,_complete,_incomplete,_dragging,_before,_after,_firstLetter,_firstLine,_marker,_selection,_file,_backdrop,_first,_last,_only,_even,_odd,_firstOfType,_lastOfType,_onlyOfType,_peerFocus,_peerHover,_peerActive,_peerFocusWithin,_peerFocusVisible,_peerDisabled,_peerChecked,_peerInvalid,_peerExpanded,_peerPlaceholderShown,_groupFocus,_groupHover,_groupActive,_groupFocusWithin,_groupFocusVisible,_groupDisabled,_groupChecked,_groupExpanded,_groupInvalid,_indeterminate,_required,_valid,_invalid,_autofill,_inRange,_outOfRange,_placeholder,_placeholderShown,_pressed,_selected,_grabbed,_underValue,_overValue,_atValue,_default,_optional,_open,_closed,_fullscreen,_loading,_hidden,_current,_currentPage,_currentStep,_today,_unavailable,_rangeStart,_rangeEnd,_now,_topmost,_motionReduce,_motionSafe,_print,_landscape,_portrait,_dark,_light,_osDark,_osLight,_highContrast,_lessContrast,_moreContrast,_ltr,_rtl,_scrollbar,_scrollbarThumb,_scrollbarTrack,_horizontal,_vertical,_icon,_starting,_noscript,_invertedColors,_shapeSizeXs,_shapeSizeSm,_shapeSizeMd,_shapeSizeLg,_shapeSizeXl,_shapeRectangle,_shapePerson,_shapeBrowser,_shapeMobile,_shapeCylinder,_shapeStorage,_shapeQueue,_notDisabled,_reduceGraphics,_reduceGraphicsOnPan,_noReduceGraphics,_whenPanning,_smallZoom,_compoundTransparent,_edgeActive,_whenHovered,_whenSelectable,_whenSelected,_whenDimmed,_whenFocused,_p3,_srgb,_rec2020,xs,xsOnly,xsDown,sm,smOnly,smDown,md,mdOnly,mdDown,lg,lgOnly,lgDown,xl,xlOnly,xlDown,xsToSm,xsToMd,xsToLg,xsToXl,smToMd,smToLg,smToXl,mdToLg,mdToXl,lgToXl,@/xs,@/sm,@/md,@/lg,@likec4-root/xs,@likec4-root/sm,@likec4-root/md,@likec4-root/lg,@likec4-dialog/xs,@likec4-dialog/sm,@likec4-dialog/md,@likec4-dialog/lg,textStyle,layerStyle,animationStyle",EMe=SMe.split(","),CMe="WebkitAppearance,WebkitBorderBefore,WebkitBorderBeforeColor,WebkitBorderBeforeStyle,WebkitBorderBeforeWidth,WebkitBoxReflect,WebkitLineClamp,WebkitMask,WebkitMaskAttachment,WebkitMaskClip,WebkitMaskComposite,WebkitMaskImage,WebkitMaskOrigin,WebkitMaskPosition,WebkitMaskPositionX,WebkitMaskPositionY,WebkitMaskRepeat,WebkitMaskRepeatX,WebkitMaskRepeatY,WebkitMaskSize,WebkitOverflowScrolling,WebkitTapHighlightColor,WebkitTextFillColor,WebkitTextStroke,WebkitTextStrokeColor,WebkitTextStrokeWidth,WebkitTouchCallout,WebkitUserModify,WebkitUserSelect,accentColor,alignContent,alignItems,alignSelf,alignTracks,all,anchorName,anchorScope,animation,animationComposition,animationDelay,animationDirection,animationDuration,animationFillMode,animationIterationCount,animationName,animationPlayState,animationRange,animationRangeEnd,animationRangeStart,animationTimeline,animationTimingFunction,appearance,aspectRatio,backdropFilter,backfaceVisibility,background,backgroundAttachment,backgroundBlendMode,backgroundClip,backgroundColor,backgroundImage,backgroundOrigin,backgroundPosition,backgroundPositionX,backgroundPositionY,backgroundRepeat,backgroundSize,blockSize,border,borderBlock,borderBlockColor,borderBlockEnd,borderBlockEndColor,borderBlockEndStyle,borderBlockEndWidth,borderBlockStart,borderBlockStartColor,borderBlockStartStyle,borderBlockStartWidth,borderBlockStyle,borderBlockWidth,borderBottom,borderBottomColor,borderBottomLeftRadius,borderBottomRightRadius,borderBottomStyle,borderBottomWidth,borderCollapse,borderColor,borderEndEndRadius,borderEndStartRadius,borderImage,borderImageOutset,borderImageRepeat,borderImageSlice,borderImageSource,borderImageWidth,borderInline,borderInlineColor,borderInlineEnd,borderInlineEndColor,borderInlineEndStyle,borderInlineEndWidth,borderInlineStart,borderInlineStartColor,borderInlineStartStyle,borderInlineStartWidth,borderInlineStyle,borderInlineWidth,borderLeft,borderLeftColor,borderLeftStyle,borderLeftWidth,borderRadius,borderRight,borderRightColor,borderRightStyle,borderRightWidth,borderSpacing,borderStartEndRadius,borderStartStartRadius,borderStyle,borderTop,borderTopColor,borderTopLeftRadius,borderTopRightRadius,borderTopStyle,borderTopWidth,borderWidth,bottom,boxAlign,boxDecorationBreak,boxDirection,boxFlex,boxFlexGroup,boxLines,boxOrdinalGroup,boxOrient,boxPack,boxShadow,boxSizing,breakAfter,breakBefore,breakInside,captionSide,caret,caretColor,caretShape,clear,clip,clipPath,clipRule,color,colorInterpolationFilters,colorScheme,columnCount,columnFill,columnGap,columnRule,columnRuleColor,columnRuleStyle,columnRuleWidth,columnSpan,columnWidth,columns,contain,containIntrinsicBlockSize,containIntrinsicHeight,containIntrinsicInlineSize,containIntrinsicSize,containIntrinsicWidth,container,containerName,containerType,content,contentVisibility,counterIncrement,counterReset,counterSet,cursor,cx,cy,d,direction,display,dominantBaseline,emptyCells,fieldSizing,fill,fillOpacity,fillRule,filter,flex,flexBasis,flexDirection,flexFlow,flexGrow,flexShrink,flexWrap,float,floodColor,floodOpacity,font,fontFamily,fontFeatureSettings,fontKerning,fontLanguageOverride,fontOpticalSizing,fontPalette,fontSize,fontSizeAdjust,fontSmooth,fontStretch,fontStyle,fontSynthesis,fontSynthesisPosition,fontSynthesisSmallCaps,fontSynthesisStyle,fontSynthesisWeight,fontVariant,fontVariantAlternates,fontVariantCaps,fontVariantEastAsian,fontVariantEmoji,fontVariantLigatures,fontVariantNumeric,fontVariantPosition,fontVariationSettings,fontWeight,forcedColorAdjust,gap,grid,gridArea,gridAutoColumns,gridAutoFlow,gridAutoRows,gridColumn,gridColumnEnd,gridColumnGap,gridColumnStart,gridGap,gridRow,gridRowEnd,gridRowGap,gridRowStart,gridTemplate,gridTemplateAreas,gridTemplateColumns,gridTemplateRows,hangingPunctuation,height,hyphenateCharacter,hyphenateLimitChars,hyphens,imageOrientation,imageRendering,imageResolution,imeMode,initialLetter,initialLetterAlign,inlineSize,inset,insetBlock,insetBlockEnd,insetBlockStart,insetInline,insetInlineEnd,insetInlineStart,interpolateSize,isolation,justifyContent,justifyItems,justifySelf,justifyTracks,left,letterSpacing,lightingColor,lineBreak,lineClamp,lineHeight,lineHeightStep,listStyle,listStyleImage,listStylePosition,listStyleType,margin,marginBlock,marginBlockEnd,marginBlockStart,marginBottom,marginInline,marginInlineEnd,marginInlineStart,marginLeft,marginRight,marginTop,marginTrim,marker,markerEnd,markerMid,markerStart,mask,maskBorder,maskBorderMode,maskBorderOutset,maskBorderRepeat,maskBorderSlice,maskBorderSource,maskBorderWidth,maskClip,maskComposite,maskImage,maskMode,maskOrigin,maskPosition,maskRepeat,maskSize,maskType,masonryAutoFlow,mathDepth,mathShift,mathStyle,maxBlockSize,maxHeight,maxInlineSize,maxLines,maxWidth,minBlockSize,minHeight,minInlineSize,minWidth,mixBlendMode,objectFit,objectPosition,offset,offsetAnchor,offsetDistance,offsetPath,offsetPosition,offsetRotate,opacity,order,orphans,outline,outlineColor,outlineOffset,outlineStyle,outlineWidth,overflow,overflowAnchor,overflowBlock,overflowClipBox,overflowClipMargin,overflowInline,overflowWrap,overflowX,overflowY,overlay,overscrollBehavior,overscrollBehaviorBlock,overscrollBehaviorInline,overscrollBehaviorX,overscrollBehaviorY,padding,paddingBlock,paddingBlockEnd,paddingBlockStart,paddingBottom,paddingInline,paddingInlineEnd,paddingInlineStart,paddingLeft,paddingRight,paddingTop,page,pageBreakAfter,pageBreakBefore,pageBreakInside,paintOrder,perspective,perspectiveOrigin,placeContent,placeItems,placeSelf,pointerEvents,position,positionAnchor,positionArea,positionTry,positionTryFallbacks,positionTryOrder,positionVisibility,printColorAdjust,quotes,r,resize,right,rotate,rowGap,rubyAlign,rubyMerge,rubyPosition,rx,ry,scale,scrollBehavior,scrollMargin,scrollMarginBlock,scrollMarginBlockEnd,scrollMarginBlockStart,scrollMarginBottom,scrollMarginInline,scrollMarginInlineEnd,scrollMarginInlineStart,scrollMarginLeft,scrollMarginRight,scrollMarginTop,scrollPadding,scrollPaddingBlock,scrollPaddingBlockEnd,scrollPaddingBlockStart,scrollPaddingBottom,scrollPaddingInline,scrollPaddingInlineEnd,scrollPaddingInlineStart,scrollPaddingLeft,scrollPaddingRight,scrollPaddingTop,scrollSnapAlign,scrollSnapCoordinate,scrollSnapDestination,scrollSnapPointsX,scrollSnapPointsY,scrollSnapStop,scrollSnapType,scrollSnapTypeX,scrollSnapTypeY,scrollTimeline,scrollTimelineAxis,scrollTimelineName,scrollbarColor,scrollbarGutter,scrollbarWidth,shapeImageThreshold,shapeMargin,shapeOutside,shapeRendering,stopColor,stopOpacity,stroke,strokeDasharray,strokeDashoffset,strokeLinecap,strokeLinejoin,strokeMiterlimit,strokeOpacity,strokeWidth,tabSize,tableLayout,textAlign,textAlignLast,textAnchor,textBox,textBoxEdge,textBoxTrim,textCombineUpright,textDecoration,textDecorationColor,textDecorationLine,textDecorationSkip,textDecorationSkipInk,textDecorationStyle,textDecorationThickness,textEmphasis,textEmphasisColor,textEmphasisPosition,textEmphasisStyle,textIndent,textJustify,textOrientation,textOverflow,textRendering,textShadow,textSizeAdjust,textSpacingTrim,textTransform,textUnderlineOffset,textUnderlinePosition,textWrap,textWrapMode,textWrapStyle,timelineScope,top,touchAction,transform,transformBox,transformOrigin,transformStyle,transition,transitionBehavior,transitionDelay,transitionDuration,transitionProperty,transitionTimingFunction,translate,unicodeBidi,userSelect,vectorEffect,verticalAlign,viewTimeline,viewTimelineAxis,viewTimelineInset,viewTimelineName,viewTransitionName,visibility,whiteSpace,whiteSpaceCollapse,widows,width,willChange,wordBreak,wordSpacing,wordWrap,writingMode,x,y,zIndex,zoom,alignmentBaseline,baselineShift,colorInterpolation,colorRendering,glyphOrientationVertical",$Me=CMe.split(",").concat(EMe),RMe=new Map($Me.map(e=>[e,!0])),zMe=/&|@/,PG=Kn(e=>RMe.has(e)||e.startsWith("--")||zMe.test(e));const TMe=(e,r)=>!r.includes(e)&&!PG(e),jMe=(e,r)=>e.__shouldForwardProps__&&r?n=>e.__shouldForwardProps__(n)&&r(n):r,AMe=(e,r)=>{if(e&&!r)return e;if(!e&&r)return r;if(e.__cva__&&r.__cva__||e.__recipe__&&r.__recipe__)return e.merge(r);const n=new TypeError("Cannot merge cva with recipe. Please use either cva or recipe.");throw TypeError.captureStackTrace?.(n),n},DMe=e=>typeof e=="string"?e:e?.displayName||e?.name||"Component";function YS(e,r={},n={}){const o=r.__cva__||r.__recipe__?r:T1(r),i=n.shouldForwardProp||TMe,a=f=>n.forwardProps?.includes(f)?!0:i(f,o.variantKeys),l=Object.assign(n.dataAttr&&r.__name__?{"data-recipe":r.__name__}:{},n.defaultProps),s=AMe(e.__cva__,o),c=jMe(e,a),d=e.__base__||e,u=S.forwardRef(function(f,m){const{as:v=d,unstyled:w,children:x,...k}=f,C=S.useMemo(()=>Object.assign({},l,k),[k]),[_,$,R,T,A]=S.useMemo(()=>Fn(C,d7.keys,c,s.variantKeys,PG),[C]);function z(){const{css:N,...L}=T,H=s.__getCompoundVariantCss__?.(R);return Ge(s(R,!1),fe(H,L,N),C.className)}function j(){const{css:N,...L}=T,H=s.raw(R);return Ge(fe(H,L,N),C.className)}const I=()=>{if(w){const{css:N,...L}=T;return Ge(fe(L,N),C.className)}return r.__recipe__?z():j()};return S.createElement(v,{ref:m,...$,...A,...d7(_),className:I()},x??C.children)}),p=DMe(d);return u.displayName=`styled.${p}`,u.__cva__=s,u.__base__=d,u.__shouldForwardProps__=a,u}function PMe(){const e=new Map;return new Proxy(YS,{apply(r,n,o){return YS(...o)},get(r,n){return e.has(n)||e.set(n,YS(n)),e.get(n)}})}const Ed=PMe(),MG={transform(e){return e}},MMe=(e={})=>{const r=z1(MG,e);return MG.transform(r,R1)},hr=S.forwardRef(function(e,r){const[n,o]=Fn(e,[]),i=MMe(n),a={ref:r,...i,...o};return S.createElement(Ed.div,a)}),NG={transform(e){const{justify:r,gap:n,...o}=e;return{display:"flex",alignItems:"center",justifyContent:r,gap:n,flexDirection:"column",...o}},defaultValues:{alignItems:"stretch",gap:"sm"}},XS=(e={})=>{const r=z1(NG,e);return NG.transform(r,R1)},Ey=e=>fe(XS(e));Ey.raw=XS;const hp=S.forwardRef(function(e,r){const[n,o]=Fn(e,["justify","gap"]),i=XS(n),a={ref:r,...i,...o};return S.createElement(Ed.div,a)}),BG={transform(e){const{justify:r,gap:n,...o}=e;return{display:"flex",alignItems:"center",justifyContent:r,gap:n,flexDirection:"row",...o}},defaultValues:{gap:"sm"}},KS=(e={})=>{const r=z1(BG,e);return BG.transform(r,R1)},qn=e=>fe(KS(e));qn.raw=KS;const Or=S.forwardRef(function(e,r){const[n,o]=Fn(e,["justify","gap"]),i=KS(n),a={ref:r,...i,...o};return S.createElement(Ed.div,a)}),IG={transform(e){return{position:"relative",maxWidth:"8xl",mx:"auto",px:{base:"4",md:"6",lg:"8"},...e}}},OG=(e={})=>{const r=z1(IG,e);return IG.transform(r,R1)},LG=e=>fe(OG(e));LG.raw=OG;const FG={transform(e,{map:r,isCssUnit:n,isCssVar:o}){const{inline:i,block:a,...l}=e,s=c=>n(c)||o(c)?c:`token(spacing.${c}, ${c})`;return{"--bleed-x":r(i,s),"--bleed-y":r(a,s),marginInline:"calc(var(--bleed-x, 0) * -1)",marginBlock:"calc(var(--bleed-y, 0) * -1)",...l}},defaultValues:{inline:"0",block:"0"}},VG=(e={})=>{const r=z1(FG,e);return FG.transform(r,R1)},qG=e=>fe(VG(e));qG.raw=VG;const NMe=S.createContext(null),ZS={didCatch:!1,error:null};let HG=class extends S.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=ZS}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){const{error:e}=this.state;if(e!==null){for(var r,n,o=arguments.length,i=new Array(o),a=0;a0&&arguments[0]!==void 0?arguments[0]:[],r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return e.length!==r.length||e.some((n,o)=>!Object.is(n,r[o]))}const IMe=[["path",{d:"M18 6l-12 12",key:"svg-0"}],["path",{d:"M6 6l12 12",key:"svg-1"}]],fp=wt("outline","x","X",IMe);function UG({error:e,resetErrorBoundary:r}){const n=e instanceof Error?e.message:"Unknown error",o=S.useRef(null);return S.useEffect(()=>{o.current?.showModal()},[]),y.jsx("dialog",{ref:o,className:fe({margin:"0",padding:"0",position:"fixed",top:"10",left:"10",width:"[calc(100vw - ({spacing.10} * 2))]",height:"max-content",maxHeight:"[calc(100vh - ({spacing.10} * 3))]",background:"likec4.overlay.body",rounded:"sm",borderWidth:3,borderColor:"likec4.overlay.border",shadow:"xl",outline:"none",_backdrop:{cursor:"zoom-out",backdropFilter:"blur(18px)",bg:"[color-mix(in oklab, {colors.likec4.overlay.backdrop} 60%, transparent)]"}}),onClick:i=>{if(i.stopPropagation(),i.target?.nodeName?.toUpperCase()==="DIALOG"){o.current?.close();return}},onClose:i=>{i.stopPropagation(),r()},children:y.jsxs(Or,{p:"xl",gap:"lg",alignItems:"flex-start",flexWrap:"nowrap",children:[y.jsx(Ti,{size:"md",radius:"xl",color:"red",children:y.jsx(fp,{style:{width:20,height:20}})}),y.jsxs(hp,{flex:"1",children:[y.jsx(it,{fz:"md",children:"Oops, something went wrong"}),y.jsx(oi,{maw:"100%",mah:400,type:"auto",children:y.jsx(it,{fz:"md",c:"red",style:{whiteSpace:"pre-wrap",userSelect:"all"},children:n})}),y.jsxs(Or,{gap:"md",mt:"md",children:[y.jsx(Vn,{size:"sm",variant:"default",onClick:()=>r(),children:"Reset"}),y.jsx(it,{fz:"sm",c:"dimmed",children:"See console for more details and report the issue if it persists."})]})]})]})})}function QS(e){return y.jsx(HG,{FallbackComponent:UG,onError:(r,n)=>{console.error(r,n)},...e})}const WG={enableEditor:!1,enableReadOnly:!0,enableCompareWithLatest:!1,enableControls:!1,enableDynamicViewWalkthrough:!1,enableElementDetails:!1,enableFocusMode:!1,enableNavigateTo:!1,enableNotations:!1,enableRelationshipBrowser:!1,enableRelationshipDetails:!1,enableSearch:!1,enableNavigationButtons:!1,enableFitView:!1,enableVscode:!1,enableElementTags:!1},JS=S.createContext(WG);function gp({children:e,features:r,overrides:n}){const o=S.useContext(JS),[i,a]=S.useState(o);return S.useEffect(()=>{a(l=>{const s={...o,...r,...n};return Ir(l,s)?l:s})},[o,r,n]),y.jsx(JS.Provider,{value:i,children:e})}const OMe={enableControls:!1,enableReadOnly:!0,enableCompareWithLatest:!1};gp.Overlays=({children:e})=>y.jsx(gp,{overrides:OMe,children:e});function sr(){return S.useContext(JS)}function LMe({feature:e,children:r,and:n=!0}){return sr()[`enable${e}`]===!0&&n?y.jsx(y.Fragment,{children:r}):null}function FMe(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global}function VMe(){const e=FMe();if(e.__xstate__)return e.__xstate__}const qMe=e=>{if(typeof window>"u")return;const r=VMe();r&&r.register(e)};class GG{constructor(r){this._process=r,this._active=!1,this._current=null,this._last=null}start(){this._active=!0,this.flush()}clear(){this._current&&(this._current.next=null,this._last=this._current)}enqueue(r){const n={value:r,next:null};if(this._current){this._last.next=n,this._last=n;return}this._current=n,this._last=n,this._active&&this.flush()}flush(){for(;this._current;){const r=this._current;this._process(r.value),this._current=r.next}this._last=null}}const YG=".",HMe="",XG="",UMe="#",WMe="*",KG="xstate.init",GMe="xstate.error",Cy="xstate.stop";function YMe(e,r){return{type:`xstate.after.${e}.${r}`}}function eE(e,r){return{type:`xstate.done.state.${e}`,output:r}}function XMe(e,r){return{type:`xstate.done.actor.${e}`,output:r,actorId:e}}function ZG(e,r){return{type:`xstate.error.actor.${e}`,error:r,actorId:e}}function QG(e){return{type:KG,input:e}}function ts(e){setTimeout(()=>{throw e})}const KMe=typeof Symbol=="function"&&Symbol.observable||"@@observable";function JG(e,r){const n=eY(e),o=eY(r);return typeof o=="string"?typeof n=="string"?o===n:!1:typeof n=="string"?n in o:Object.keys(n).every(i=>i in o?JG(n[i],o[i]):!1)}function tE(e){if(nY(e))return e;const r=[];let n="";for(let o=0;otypeof r>"u"||typeof r=="string"?{target:r}:r)}function oY(e){if(!(e===void 0||e===HMe))return nc(e)}function z3(e,r,n){const o=typeof e=="object",i=o?e:void 0;return{next:(o?e.next:e)?.bind(i),error:(o?e.error:r)?.bind(i),complete:(o?e.complete:n)?.bind(i)}}function iY(e,r){return`${r}.${e}`}function nE(e,r){const n=r.match(/^xstate\.invoke\.(\d+)\.(.*)/);if(!n)return e.implementations.actors[r];const[,o,i]=n,a=e.getStateNodeById(i).config.invoke;return(Array.isArray(a)?a[o]:a).src}function aY(e,r){return`${e.sessionId}.${r}`}let JMe=0;function eNe(e,r){const n=new Map,o=new Map,i=new WeakMap,a=new Set,l={},{clock:s,logger:c}=r,d={schedule:(f,m,v,w,x=Math.random().toString(36).slice(2))=>{const k={source:f,target:m,event:v,delay:w,id:x,startedAt:Date.now()},C=aY(f,x);p._snapshot._scheduledEvents[C]=k;const _=s.setTimeout(()=>{delete l[C],delete p._snapshot._scheduledEvents[C],p._relay(f,m,v)},w);l[C]=_},cancel:(f,m)=>{const v=aY(f,m),w=l[v];delete l[v],delete p._snapshot._scheduledEvents[v],w!==void 0&&s.clearTimeout(w)},cancelAll:f=>{for(const m in p._snapshot._scheduledEvents){const v=p._snapshot._scheduledEvents[m];v.source===f&&d.cancel(f,v.id)}}},u=f=>{if(!a.size)return;const m={...f,rootId:e.sessionId};a.forEach(v=>v.next?.(m))},p={_snapshot:{_scheduledEvents:(r?.snapshot&&r.snapshot.scheduler)??{}},_bookId:()=>`x:${JMe++}`,_register:(f,m)=>(n.set(f,m),f),_unregister:f=>{n.delete(f.sessionId);const m=i.get(f);m!==void 0&&(o.delete(m),i.delete(f))},get:f=>o.get(f),getAll:()=>Object.fromEntries(o.entries()),_set:(f,m)=>{const v=o.get(f);if(v&&v!==m)throw new Error(`Actor with system ID '${f}' already exists.`);o.set(f,m),i.set(m,f)},inspect:f=>{const m=z3(f);return a.add(m),{unsubscribe(){a.delete(m)}}},_sendInspectionEvent:u,_relay:(f,m,v)=>{p._sendInspectionEvent({type:"@xstate.event",sourceRef:f,actorRef:m,event:v}),m._send(v)},scheduler:d,getSnapshot:()=>({_scheduledEvents:{...p._snapshot._scheduledEvents}}),start:()=>{const f=p._snapshot._scheduledEvents;p._snapshot._scheduledEvents={};for(const m in f){const{source:v,target:w,event:x,delay:k,id:C}=f[m];d.schedule(v,w,x,k,C)}},_clock:s,_logger:c};return p}let oE=!1;const iE=1;let ii=(function(e){return e[e.NotStarted=0]="NotStarted",e[e.Running=1]="Running",e[e.Stopped=2]="Stopped",e})({});const tNe={clock:{setTimeout:(e,r)=>setTimeout(e,r),clearTimeout:e=>clearTimeout(e)},logger:console.log.bind(console),devTools:!1};class rNe{constructor(r,n){this.logic=r,this._snapshot=void 0,this.clock=void 0,this.options=void 0,this.id=void 0,this.mailbox=new GG(this._process.bind(this)),this.observers=new Set,this.eventListeners=new Map,this.logger=void 0,this._processingStatus=ii.NotStarted,this._parent=void 0,this._syncSnapshot=void 0,this.ref=void 0,this._actorScope=void 0,this.systemId=void 0,this.sessionId=void 0,this.system=void 0,this._doneEvent=void 0,this.src=void 0,this._deferred=[];const o={...tNe,...n},{clock:i,logger:a,parent:l,syncSnapshot:s,id:c,systemId:d,inspect:u}=o;this.system=l?l.system:eNe(this,{clock:i,logger:a}),u&&!l&&this.system.inspect(z3(u)),this.sessionId=this.system._bookId(),this.id=c??this.sessionId,this.logger=n?.logger??this.system._logger,this.clock=n?.clock??this.system._clock,this._parent=l,this._syncSnapshot=s,this.options=o,this.src=o.src??r,this.ref=this,this._actorScope={self:this,id:this.id,sessionId:this.sessionId,logger:this.logger,defer:p=>{this._deferred.push(p)},system:this.system,stopChild:p=>{if(p._parent!==this)throw new Error(`Cannot stop child actor ${p.id} of ${this.id} because it is not a child`);p._stop()},emit:p=>{const f=this.eventListeners.get(p.type),m=this.eventListeners.get("*");if(!f&&!m)return;const v=[...f?f.values():[],...m?m.values():[]];for(const w of v)try{w(p)}catch(x){ts(x)}},actionExecutor:p=>{const f=()=>{if(this._actorScope.system._sendInspectionEvent({type:"@xstate.action",actorRef:this,action:{type:p.type,params:p.params}}),!p.exec)return;const m=oE;try{oE=!0,p.exec(p.info,p.params)}finally{oE=m}};this._processingStatus===ii.Running?f():this._deferred.push(f)}},this.send=this.send.bind(this),this.system._sendInspectionEvent({type:"@xstate.actor",actorRef:this}),d&&(this.systemId=d,this.system._set(d,this)),this._initState(n?.snapshot??n?.state),d&&this._snapshot.status!=="active"&&this.system._unregister(this)}_initState(r){try{this._snapshot=r?this.logic.restoreSnapshot?this.logic.restoreSnapshot(r,this._actorScope):r:this.logic.getInitialSnapshot(this._actorScope,this.options?.input)}catch(n){this._snapshot={status:"error",output:void 0,error:n}}}update(r,n){this._snapshot=r;let o;for(;o=this._deferred.shift();)try{o()}catch(i){this._deferred.length=0,this._snapshot={...r,status:"error",error:i}}switch(this._snapshot.status){case"active":for(const i of this.observers)try{i.next?.(r)}catch(a){ts(a)}break;case"done":for(const i of this.observers)try{i.next?.(r)}catch(a){ts(a)}this._stopProcedure(),this._complete(),this._doneEvent=XMe(this.id,this._snapshot.output),this._parent&&this.system._relay(this,this._parent,this._doneEvent);break;case"error":this._error(this._snapshot.error);break}this.system._sendInspectionEvent({type:"@xstate.snapshot",actorRef:this,event:n,snapshot:r})}subscribe(r,n,o){const i=z3(r,n,o);if(this._processingStatus!==ii.Stopped)this.observers.add(i);else switch(this._snapshot.status){case"done":try{i.complete?.()}catch(a){ts(a)}break;case"error":{const a=this._snapshot.error;if(!i.error)ts(a);else try{i.error(a)}catch(l){ts(l)}break}}return{unsubscribe:()=>{this.observers.delete(i)}}}on(r,n){let o=this.eventListeners.get(r);o||(o=new Set,this.eventListeners.set(r,o));const i=n.bind(void 0);return o.add(i),{unsubscribe:()=>{o.delete(i)}}}start(){if(this._processingStatus===ii.Running)return this;this._syncSnapshot&&this.subscribe({next:n=>{n.status==="active"&&this.system._relay(this,this._parent,{type:`xstate.snapshot.${this.id}`,snapshot:n})},error:()=>{}}),this.system._register(this.sessionId,this),this.systemId&&this.system._set(this.systemId,this),this._processingStatus=ii.Running;const r=QG(this.options.input);switch(this.system._sendInspectionEvent({type:"@xstate.event",sourceRef:this._parent,actorRef:this,event:r}),this._snapshot.status){case"done":return this.update(this._snapshot,r),this;case"error":return this._error(this._snapshot.error),this}if(this._parent||this.system.start(),this.logic.start)try{this.logic.start(this._snapshot,this._actorScope)}catch(n){return this._snapshot={...this._snapshot,status:"error",error:n},this._error(n),this}return this.update(this._snapshot,r),this.options.devTools&&this.attachDevTools(),this.mailbox.start(),this}_process(r){let n,o;try{n=this.logic.transition(this._snapshot,r,this._actorScope)}catch(i){o={err:i}}if(o){const{err:i}=o;this._snapshot={...this._snapshot,status:"error",error:i},this._error(i);return}this.update(n,r),r.type===Cy&&(this._stopProcedure(),this._complete())}_stop(){return this._processingStatus===ii.Stopped?this:(this.mailbox.clear(),this._processingStatus===ii.NotStarted?(this._processingStatus=ii.Stopped,this):(this.mailbox.enqueue({type:Cy}),this))}stop(){if(this._parent)throw new Error("A non-root actor cannot be stopped directly.");return this._stop()}_complete(){for(const r of this.observers)try{r.complete?.()}catch(n){ts(n)}this.observers.clear()}_reportError(r){if(!this.observers.size){this._parent||ts(r);return}let n=!1;for(const o of this.observers){const i=o.error;n||=!i;try{i?.(r)}catch(a){ts(a)}}this.observers.clear(),n&&ts(r)}_error(r){this._stopProcedure(),this._reportError(r),this._parent&&this.system._relay(this,this._parent,ZG(this.id,r))}_stopProcedure(){return this._processingStatus!==ii.Running?this:(this.system.scheduler.cancelAll(this),this.mailbox.clear(),this.mailbox=new GG(this._process.bind(this)),this._processingStatus=ii.Stopped,this.system._unregister(this),this)}_send(r){this._processingStatus!==ii.Stopped&&this.mailbox.enqueue(r)}send(r){this.system._relay(void 0,this,r)}attachDevTools(){const{devTools:r}=this.options;r&&(typeof r=="function"?r:qMe)(this)}toJSON(){return{xstate$$type:iE,id:this.id}}getPersistedSnapshot(r){return this.logic.getPersistedSnapshot(this._snapshot,r)}[KMe](){return this}getSnapshot(){return this._snapshot}}function qf(e,...[r]){return new rNe(e,r)}function nNe(e,r,n,o,{sendId:i}){const a=typeof i=="function"?i(n,o):i;return[r,{sendId:a},void 0]}function oNe(e,r){e.defer(()=>{e.system.scheduler.cancel(e.self,r.sendId)})}function ua(e){function r(n,o){}return r.type="xstate.cancel",r.sendId=e,r.resolve=nNe,r.execute=oNe,r}function iNe(e,r,n,o,{id:i,systemId:a,src:l,input:s,syncSnapshot:c}){const d=typeof l=="string"?nE(r.machine,l):l,u=typeof i=="function"?i(n):i;let p,f;return d&&(f=typeof s=="function"?s({context:r.context,event:n.event,self:e.self}):s,p=qf(d,{id:u,src:l,parent:e.self,syncSnapshot:c,systemId:a,input:f})),[vp(r,{children:{...r.children,[u]:p}}),{id:i,systemId:a,actorRef:p,src:l,input:f},void 0]}function aNe(e,{actorRef:r}){r&&e.defer(()=>{r._processingStatus!==ii.Stopped&&r.start()})}function T3(...[e,{id:r,systemId:n,input:o,syncSnapshot:i=!1}={}]){function a(l,s){}return a.type="xstate.spawnChild",a.id=r,a.systemId=n,a.src=e,a.input=o,a.syncSnapshot=i,a.resolve=iNe,a.execute=aNe,a}function lNe(e,r,n,o,{actorRef:i}){const a=typeof i=="function"?i(n,o):i,l=typeof a=="string"?r.children[a]:a;let s=r.children;return l&&(s={...s},delete s[l.id]),[vp(r,{children:s}),l,void 0]}function sNe(e,r){if(r){if(e.system._unregister(r),r._processingStatus!==ii.Running){e.stopChild(r);return}e.defer(()=>{e.stopChild(r)})}}function $y(e){function r(n,o){}return r.type="xstate.stopChild",r.actorRef=e,r.resolve=lNe,r.execute=sNe,r}function j3(e,r,n,o){const{machine:i}=o,a=typeof e=="function",l=a?e:i.implementations.guards[typeof e=="string"?e:e.type];if(!a&&!l)throw new Error(`Guard '${typeof e=="string"?e:e.type}' is not implemented.'.`);if(typeof l!="function")return j3(l,r,n,o);const s={context:r,event:n},c=a||typeof e=="string"?void 0:"params"in e?typeof e.params=="function"?e.params({context:r,event:n}):e.params:void 0;return"check"in l?l.check(o,s,l):l(s,c)}const aE=e=>e.type==="atomic"||e.type==="final";function Hf(e){return Object.values(e.states).filter(r=>r.type!=="history")}function Ry(e,r){const n=[];if(r===e)return n;let o=e.parent;for(;o&&o!==r;)n.push(o),o=o.parent;return n}function A3(e){const r=new Set(e),n=sY(r);for(const o of r)if(o.type==="compound"&&(!n.get(o)||!n.get(o).length))uY(o).forEach(i=>r.add(i));else if(o.type==="parallel"){for(const i of Hf(o))if(i.type!=="history"&&!r.has(i)){const a=uY(i);for(const l of a)r.add(l)}}for(const o of r){let i=o.parent;for(;i;)r.add(i),i=i.parent}return r}function lY(e,r){const n=r.get(e);if(!n)return{};if(e.type==="compound"){const i=n[0];if(i){if(aE(i))return i.key}else return{}}const o={};for(const i of n)o[i.key]=lY(i,r);return o}function sY(e){const r=new Map;for(const n of e)r.has(n)||r.set(n,[]),n.parent&&(r.has(n.parent)||r.set(n.parent,[]),r.get(n.parent).push(n));return r}function cY(e,r){const n=A3(r);return lY(e,sY(n))}function lE(e,r){return r.type==="compound"?Hf(r).some(n=>n.type==="final"&&e.has(n)):r.type==="parallel"?Hf(r).every(n=>lE(e,n)):r.type==="final"}const D3=e=>e[0]===UMe;function cNe(e,r){return e.transitions.get(r)||[...e.transitions.keys()].filter(n=>{if(n===WMe)return!0;if(!n.endsWith(".*"))return!1;const o=n.split("."),i=r.split(".");for(let a=0;ao.length-n.length).flatMap(n=>e.transitions.get(n))}function dNe(e){const r=e.config.after;if(!r)return[];const n=o=>{const i=YMe(o,e.id),a=i.type;return e.entry.push(ai(i,{id:a,delay:o})),e.exit.push(ua(a)),a};return Object.keys(r).flatMap(o=>{const i=r[o],a=typeof i=="string"?{target:i}:i,l=Number.isNaN(+o)?o:+o,s=n(l);return nc(a).map(c=>({...c,event:s,delay:l}))}).map(o=>{const{delay:i}=o;return{...mp(e,o.event,o),delay:i}})}function mp(e,r,n){const o=oY(n.target),i=n.reenter??!1,a=hNe(e,o),l={...n,actions:nc(n.actions),guard:n.guard,target:a,source:e,reenter:i,eventType:r,toJSON:()=>({...l,source:`#${e.id}`,target:a?a.map(s=>`#${s.id}`):void 0})};return l}function uNe(e){const r=new Map;if(e.config.on)for(const n of Object.keys(e.config.on)){if(n===XG)throw new Error('Null events ("") cannot be specified as a transition key. Use `always: { ... }` instead.');const o=e.config.on[n];r.set(n,Vf(o).map(i=>mp(e,n,i)))}if(e.config.onDone){const n=`xstate.done.state.${e.id}`;r.set(n,Vf(e.config.onDone).map(o=>mp(e,n,o)))}for(const n of e.invoke){if(n.onDone){const o=`xstate.done.actor.${n.id}`;r.set(o,Vf(n.onDone).map(i=>mp(e,o,i)))}if(n.onError){const o=`xstate.error.actor.${n.id}`;r.set(o,Vf(n.onError).map(i=>mp(e,o,i)))}if(n.onSnapshot){const o=`xstate.snapshot.${n.id}`;r.set(o,Vf(n.onSnapshot).map(i=>mp(e,o,i)))}}for(const n of e.after){let o=r.get(n.eventType);o||(o=[],r.set(n.eventType,o)),o.push(n)}return r}function pNe(e,r){const n=typeof r=="string"?e.states[r]:r?e.states[r.target]:void 0;if(!n&&r)throw new Error(`Initial state node "${r}" not found on parent state node #${e.id}`);const o={source:e,actions:!r||typeof r=="string"?[]:nc(r.actions),eventType:null,reenter:!1,target:n?[n]:[],toJSON:()=>({...o,source:`#${e.id}`,target:n?[`#${n.id}`]:[]})};return o}function hNe(e,r){if(r!==void 0)return r.map(n=>{if(typeof n!="string")return n;if(D3(n))return e.machine.getStateNodeById(n);const o=n[0]===YG;if(o&&!e.parent)return P3(e,n.slice(1));const i=o?e.key+n:n;if(e.parent)try{return P3(e.parent,i)}catch(a){throw new Error(`Invalid transition definition for state node '${e.id}': +${a.message}`)}else throw new Error(`Invalid target: "${n}" is not a valid target from the root node. Did you mean ".${n}"?`)})}function dY(e){const r=oY(e.config.target);return r?{target:r.map(n=>typeof n=="string"?P3(e.parent,n):n)}:e.parent.initial}function yp(e){return e.type==="history"}function uY(e){const r=pY(e);for(const n of r)for(const o of Ry(n,e))r.add(o);return r}function pY(e){const r=new Set;function n(o){if(!r.has(o)){if(r.add(o),o.type==="compound")n(o.initial.target[0]);else if(o.type==="parallel")for(const i of Hf(o))n(i)}}return n(e),r}function Uf(e,r){if(D3(r))return e.machine.getStateNodeById(r);if(!e.states)throw new Error(`Unable to retrieve child state '${r}' from '${e.id}'; no child states exist.`);const n=e.states[r];if(!n)throw new Error(`Child state '${r}' does not exist on '${e.id}'`);return n}function P3(e,r){if(typeof r=="string"&&D3(r))try{return e.machine.getStateNodeById(r)}catch{}const n=tE(r).slice();let o=e;for(;n.length;){const i=n.shift();if(!i.length)break;o=Uf(o,i)}return o}function M3(e,r){if(typeof r=="string"){const i=e.states[r];if(!i)throw new Error(`State '${r}' does not exist on '${e.id}'`);return[e,i]}const n=Object.keys(r),o=n.map(i=>Uf(e,i)).filter(Boolean);return[e.machine.root,e].concat(o,n.reduce((i,a)=>{const l=Uf(e,a);if(!l)return i;const s=M3(l,r[a]);return i.concat(s)},[]))}function fNe(e,r,n,o){const i=Uf(e,r).next(n,o);return!i||!i.length?e.next(n,o):i}function gNe(e,r,n,o){const i=Object.keys(r),a=Uf(e,i[0]),l=sE(a,r[i[0]],n,o);return!l||!l.length?e.next(n,o):l}function mNe(e,r,n,o){const i=[];for(const a of Object.keys(r)){const l=r[a];if(!l)continue;const s=Uf(e,a),c=sE(s,l,n,o);c&&i.push(...c)}return i.length?i:e.next(n,o)}function sE(e,r,n,o){return typeof r=="string"?fNe(e,r,n,o):Object.keys(r).length===1?gNe(e,r,n,o):mNe(e,r,n,o)}function yNe(e){return Object.keys(e.states).map(r=>e.states[r]).filter(r=>r.type==="history")}function Cd(e,r){let n=e;for(;n.parent&&n.parent!==r;)n=n.parent;return n.parent===r}function vNe(e,r){const n=new Set(e),o=new Set(r);for(const i of n)if(o.has(i))return!0;for(const i of o)if(n.has(i))return!0;return!1}function hY(e,r,n){const o=new Set;for(const i of e){let a=!1;const l=new Set;for(const s of o)if(vNe(dE([i],r,n),dE([s],r,n)))if(Cd(i.source,s.source))l.add(s);else{a=!0;break}if(!a){for(const s of l)o.delete(s);o.add(i)}}return Array.from(o)}function bNe(e){const[r,...n]=e;for(const o of Ry(r,void 0))if(n.every(i=>Cd(i,o)))return o}function cE(e,r){if(!e.target)return[];const n=new Set;for(const o of e.target)if(yp(o))if(r[o.id])for(const i of r[o.id])n.add(i);else for(const i of cE(dY(o),r))n.add(i);else n.add(o);return[...n]}function fY(e,r){const n=cE(e,r);if(!n)return;if(!e.reenter&&n.every(i=>i===e.source||Cd(i,e.source)))return e.source;const o=bNe(n.concat(e.source));if(o)return o;if(!e.reenter)return e.source.machine.root}function dE(e,r,n){const o=new Set;for(const i of e)if(i.target?.length){const a=fY(i,n);i.reenter&&i.source===a&&o.add(a);for(const l of r)Cd(l,a)&&o.add(l)}return[...o]}function xNe(e,r){if(e.length!==r.size)return!1;for(const n of e)if(!r.has(n))return!1;return!0}function uE(e,r,n,o,i,a){if(!e.length)return r;const l=new Set(r._nodes);let s=r.historyValue;const c=hY(e,l,s);let d=r;i||([d,s]=SNe(d,o,n,c,l,s,a,n.actionExecutor)),d=Gf(d,o,n,c.flatMap(p=>p.actions),a,void 0),d=kNe(d,o,n,c,l,a,s,i);const u=[...l];d.status==="done"&&(d=Gf(d,o,n,u.sort((p,f)=>f.order-p.order).flatMap(p=>p.exit),a,void 0));try{return s===r.historyValue&&xNe(r._nodes,l)?d:vp(d,{_nodes:u,historyValue:s})}catch(p){throw p}}function wNe(e,r,n,o,i){if(o.output===void 0)return;const a=eE(i.id,i.output!==void 0&&i.parent?rE(i.output,e.context,r,n.self):void 0);return rE(o.output,e.context,a,n.self)}function kNe(e,r,n,o,i,a,l,s){let c=e;const d=new Set,u=new Set;_Ne(o,l,u,d),s&&u.add(e.machine.root);const p=new Set;for(const f of[...d].sort((m,v)=>m.order-v.order)){i.add(f);const m=[];m.push(...f.entry);for(const v of f.invoke)m.push(T3(v.src,{...v,syncSnapshot:!!v.onSnapshot}));if(u.has(f)){const v=f.initial.actions;m.push(...v)}if(c=Gf(c,r,n,m,a,f.invoke.map(v=>v.id)),f.type==="final"){const v=f.parent;let w=v?.type==="parallel"?v:v?.parent,x=w||f;for(v?.type==="compound"&&a.push(eE(v.id,f.output!==void 0?rE(f.output,c.context,r,n.self):void 0));w?.type==="parallel"&&!p.has(w)&&lE(i,w);)p.add(w),a.push(eE(w.id)),x=w,w=w.parent;if(w)continue;c=vp(c,{status:"done",output:wNe(c,r,n,c.machine.root,x)})}}return c}function _Ne(e,r,n,o){for(const i of e){const a=fY(i,r);for(const s of i.target||[])!yp(s)&&(i.source!==s||i.source!==a||i.reenter)&&(o.add(s),n.add(s)),Wf(s,r,n,o);const l=cE(i,r);for(const s of l){const c=Ry(s,a);a?.type==="parallel"&&c.push(a),gY(o,r,n,c,!i.source.parent&&i.reenter?void 0:a)}}}function Wf(e,r,n,o){if(yp(e))if(r[e.id]){const i=r[e.id];for(const a of i)o.add(a),Wf(a,r,n,o);for(const a of i)pE(a,e.parent,o,r,n)}else{const i=dY(e);for(const a of i.target)o.add(a),i===e.parent?.initial&&n.add(e.parent),Wf(a,r,n,o);for(const a of i.target)pE(a,e.parent,o,r,n)}else if(e.type==="compound"){const[i]=e.initial.target;yp(i)||(o.add(i),n.add(i)),Wf(i,r,n,o),pE(i,e,o,r,n)}else if(e.type==="parallel")for(const i of Hf(e).filter(a=>!yp(a)))[...o].some(a=>Cd(a,i))||(yp(i)||(o.add(i),n.add(i)),Wf(i,r,n,o))}function gY(e,r,n,o,i){for(const a of o)if((!i||Cd(a,i))&&e.add(a),a.type==="parallel")for(const l of Hf(a).filter(s=>!yp(s)))[...e].some(s=>Cd(s,l))||(e.add(l),Wf(l,r,n,e))}function pE(e,r,n,o,i){gY(n,o,i,Ry(e,r))}function SNe(e,r,n,o,i,a,l,s){let c=e;const d=dE(o,i,a);d.sort((p,f)=>f.order-p.order);let u;for(const p of d)for(const f of yNe(p)){let m;f.history==="deep"?m=v=>aE(v)&&Cd(v,p):m=v=>v.parent===p,u??={...a},u[f.id]=Array.from(i).filter(m)}for(const p of d)c=Gf(c,r,n,[...p.exit,...p.invoke.map(f=>$y(f.id))],l,void 0),i.delete(p);return[c,u||a]}function ENe(e,r){return e.implementations.actions[r]}function mY(e,r,n,o,i,a){const{machine:l}=e;let s=e;for(const c of o){const d=typeof c=="function",u=d?c:ENe(l,typeof c=="string"?c:c.type),p={context:s.context,event:r,self:n.self,system:n.system},f=d||typeof c=="string"?void 0:"params"in c?typeof c.params=="function"?c.params({context:s.context,event:r}):c.params:void 0;if(!u||!("resolve"in u)){n.actionExecutor({type:typeof c=="string"?c:typeof c=="object"?c.type:c.name||"(anonymous)",info:p,params:f,exec:u});continue}const m=u,[v,w,x]=m.resolve(n,s,p,f,u,i);s=v,"retryResolve"in m&&a?.push([m,w]),"execute"in m&&n.actionExecutor({type:m.type,info:p,params:w,exec:m.execute.bind(null,n,w)}),x&&(s=mY(s,r,n,x,i,a))}return s}function Gf(e,r,n,o,i,a){const l=a?[]:void 0,s=mY(e,r,n,o,{internalQueue:i,deferredActorIds:a},l);return l?.forEach(([c,d])=>{c.retryResolve(n,s,d)}),s}function hE(e,r,n,o){let i=e;const a=[];function l(d,u,p){n.system._sendInspectionEvent({type:"@xstate.microstep",actorRef:n.self,event:u,snapshot:d,_transitions:p}),a.push(d)}if(r.type===Cy)return i=vp(yY(i,r,n),{status:"stopped"}),l(i,r,[]),{snapshot:i,microstates:a};let s=r;if(s.type!==KG){const d=s,u=QMe(d),p=vY(d,i);if(u&&!p.length)return i=vp(e,{status:"error",error:d.error}),l(i,d,[]),{snapshot:i,microstates:a};i=uE(p,e,n,s,!1,o),l(i,d,p)}let c=!0;for(;i.status==="active";){let d=c?CNe(i,s):[];const u=d.length?i:void 0;if(!d.length){if(!o.length)break;s=o.shift(),d=vY(s,i)}i=uE(d,i,n,s,!1,o),c=i!==u,l(i,s,d)}return i.status!=="active"&&yY(i,s,n),{snapshot:i,microstates:a}}function yY(e,r,n){return Gf(e,r,n,Object.values(e.children).map(o=>$y(o)),[],void 0)}function vY(e,r){return r.machine.getTransitionData(r,e)}function CNe(e,r){const n=new Set,o=e._nodes.filter(aE);for(const i of o)e:for(const a of[i].concat(Ry(i,void 0)))if(a.always){for(const l of a.always)if(l.guard===void 0||j3(l.guard,e.context,r,e)){n.add(l);break e}}return hY(Array.from(n),new Set(e._nodes),e.historyValue)}function $Ne(e,r){const n=A3(M3(e,r));return cY(e,[...n])}function RNe(e){return!!e&&typeof e=="object"&&"machine"in e&&"value"in e}const zNe=function(e){return JG(e,this.value)},TNe=function(e){return this.tags.has(e)},jNe=function(e){const r=this.machine.getTransitionData(this,e);return!!r?.length&&r.some(n=>n.target!==void 0||n.actions.length)},ANe=function(){const{_nodes:e,tags:r,machine:n,getMeta:o,toJSON:i,can:a,hasTag:l,matches:s,...c}=this;return{...c,tags:Array.from(r)}},DNe=function(){return this._nodes.reduce((e,r)=>(r.meta!==void 0&&(e[r.id]=r.meta),e),{})};function N3(e,r){return{status:e.status,output:e.output,error:e.error,machine:r,context:e.context,_nodes:e._nodes,value:cY(r.root,e._nodes),tags:new Set(e._nodes.flatMap(n=>n.tags)),children:e.children,historyValue:e.historyValue||{},matches:zNe,hasTag:TNe,can:jNe,getMeta:DNe,toJSON:ANe}}function vp(e,r={}){return N3({...e,...r},e.machine)}function PNe(e){if(typeof e!="object"||e===null)return{};const r={};for(const n in e){const o=e[n];Array.isArray(o)&&(r[n]=o.map(i=>({id:i.id})))}return r}function MNe(e,r){const{_nodes:n,tags:o,machine:i,children:a,context:l,can:s,hasTag:c,matches:d,getMeta:u,toJSON:p,...f}=e,m={};for(const v in a){const w=a[v];m[v]={snapshot:w.getPersistedSnapshot(r),src:w.src,systemId:w.systemId,syncSnapshot:w._syncSnapshot}}return{...f,context:bY(l),children:m,historyValue:PNe(f.historyValue)}}function bY(e){let r;for(const n in e){const o=e[n];if(o&&typeof o=="object")if("sessionId"in o&&"send"in o&&"ref"in o)r??=Array.isArray(e)?e.slice():{...e},r[n]={xstate$$type:iE,id:o.id};else{const i=bY(o);i!==o&&(r??=Array.isArray(e)?e.slice():{...e},r[n]=i)}}return r??e}function NNe(e,r,n,o,{event:i,id:a,delay:l},{internalQueue:s}){const c=r.machine.implementations.delays;if(typeof i=="string")throw new Error(`Only event objects may be used with raise; use raise({ type: "${i}" }) instead`);const d=typeof i=="function"?i(n,o):i;let u;if(typeof l=="string"){const p=c&&c[l];u=typeof p=="function"?p(n,o):p}else u=typeof l=="function"?l(n,o):l;return typeof u!="number"&&s.push(d),[r,{event:d,id:a,delay:u},void 0]}function BNe(e,r){const{event:n,delay:o,id:i}=r;if(typeof o=="number"){e.defer(()=>{const a=e.self;e.system.scheduler.schedule(a,a,n,o,i)});return}}function ai(e,r){function n(o,i){}return n.type="xstate.raise",n.event=e,n.id=r?.id,n.delay=r?.delay,n.resolve=NNe,n.execute=BNe,n}const xY=new WeakMap;function B3(e){return{config:e,start:(r,n)=>{const{self:o,system:i,emit:a}=n,l={receivers:void 0,dispose:void 0};xY.set(o,l),l.dispose=e({input:r.input,system:i,self:o,sendBack:s=>{o.getSnapshot().status!=="stopped"&&o._parent&&i._relay(o,o._parent,s)},receive:s=>{l.receivers??=new Set,l.receivers.add(s)},emit:a})},transition:(r,n,o)=>{const i=xY.get(o.self);return n.type===Cy?(r={...r,status:"stopped",error:void 0},i.dispose?.(),r):(i.receivers?.forEach(a=>a(n)),r)},getInitialSnapshot:(r,n)=>({status:"active",output:void 0,error:void 0,input:n}),getPersistedSnapshot:r=>r,restoreSnapshot:r=>r}}const wY="xstate.promise.resolve",kY="xstate.promise.reject",I3=new WeakMap;function zy(e){return{config:e,transition:(r,n,o)=>{if(r.status!=="active")return r;switch(n.type){case wY:{const i=n.data;return{...r,status:"done",output:i,input:void 0}}case kY:return{...r,status:"error",error:n.data,input:void 0};case Cy:return I3.get(o.self)?.abort(),{...r,status:"stopped",input:void 0};default:return r}},start:(r,{self:n,system:o,emit:i})=>{if(r.status!=="active")return;const a=new AbortController;I3.set(n,a),Promise.resolve(e({input:r.input,system:o,self:n,signal:a.signal,emit:i})).then(l=>{n.getSnapshot().status==="active"&&(I3.delete(n),o._relay(n,n,{type:wY,data:l}))},l=>{n.getSnapshot().status==="active"&&(I3.delete(n),o._relay(n,n,{type:kY,data:l}))})},getInitialSnapshot:(r,n)=>({status:"active",output:void 0,error:void 0,input:n}),getPersistedSnapshot:r=>r,restoreSnapshot:r=>r}}function INe(e,{machine:r,context:n},o,i){const a=(l,s)=>{if(typeof l=="string"){const c=nE(r,l);if(!c)throw new Error(`Actor logic '${l}' not implemented in machine '${r.id}'`);const d=qf(c,{id:s?.id,parent:e.self,syncSnapshot:s?.syncSnapshot,input:typeof s?.input=="function"?s.input({context:n,event:o,self:e.self}):s?.input,src:l,systemId:s?.systemId});return i[d.id]=d,d}else return qf(l,{id:s?.id,parent:e.self,syncSnapshot:s?.syncSnapshot,input:s?.input,src:l,systemId:s?.systemId})};return(l,s)=>{const c=a(l,s);return i[c.id]=c,e.defer(()=>{c._processingStatus!==ii.Stopped&&c.start()}),c}}function ONe(e,r,n,o,{assignment:i}){if(!r.context)throw new Error("Cannot assign to undefined `context`. Ensure that `context` is defined in the machine config.");const a={},l={context:r.context,event:n.event,spawn:INe(e,r,n.event,a),self:e.self,system:e.system};let s={};if(typeof i=="function")s=i(l,o);else for(const d of Object.keys(i)){const u=i[d];s[d]=typeof u=="function"?u(l,o):u}const c=Object.assign({},r.context,s);return[vp(r,{context:c,children:Object.keys(a).length?{...r.children,...a}:r.children}),void 0,void 0]}function Bt(e){function r(n,o){}return r.type="xstate.assign",r.assignment=e,r.resolve=ONe,r}const _Y=new WeakMap;function Yf(e,r,n){let o=_Y.get(e);return o?r in o||(o[r]=n()):(o={[r]:n()},_Y.set(e,o)),o[r]}const LNe={},Ty=e=>typeof e=="string"?{type:e}:typeof e=="function"?"resolve"in e?{type:e.type}:{type:e.name}:e;class O3{constructor(r,n){if(this.config=r,this.key=void 0,this.id=void 0,this.type=void 0,this.path=void 0,this.states=void 0,this.history=void 0,this.entry=void 0,this.exit=void 0,this.parent=void 0,this.machine=void 0,this.meta=void 0,this.output=void 0,this.order=-1,this.description=void 0,this.tags=[],this.transitions=void 0,this.always=void 0,this.parent=n._parent,this.key=n._key,this.machine=n._machine,this.path=this.parent?this.parent.path.concat(this.key):[],this.id=this.config.id||[this.machine.id,...this.path].join(YG),this.type=this.config.type||(this.config.states&&Object.keys(this.config.states).length?"compound":this.config.history?"history":"atomic"),this.description=this.config.description,this.order=this.machine.idMap.size,this.machine.idMap.set(this.id,this),this.states=this.config.states?tY(this.config.states,(o,i)=>new O3(o,{_parent:this,_key:i,_machine:this.machine})):LNe,this.type==="compound"&&!this.config.initial)throw new Error(`No initial state specified for compound state node "#${this.id}". Try adding { initial: "${Object.keys(this.states)[0]}" } to the state config.`);this.history=this.config.history===!0?"shallow":this.config.history||!1,this.entry=nc(this.config.entry).slice(),this.exit=nc(this.config.exit).slice(),this.meta=this.config.meta,this.output=this.type==="final"||!this.parent?this.config.output:void 0,this.tags=nc(r.tags).slice()}_initialize(){this.transitions=uNe(this),this.config.always&&(this.always=Vf(this.config.always).map(r=>mp(this,XG,r))),Object.keys(this.states).forEach(r=>{this.states[r]._initialize()})}get definition(){return{id:this.id,key:this.key,version:this.machine.version,type:this.type,initial:this.initial?{target:this.initial.target,source:this,actions:this.initial.actions.map(Ty),eventType:null,reenter:!1,toJSON:()=>({target:this.initial.target.map(r=>`#${r.id}`),source:`#${this.id}`,actions:this.initial.actions.map(Ty),eventType:null})}:void 0,history:this.history,states:tY(this.states,r=>r.definition),on:this.on,transitions:[...this.transitions.values()].flat().map(r=>({...r,actions:r.actions.map(Ty)})),entry:this.entry.map(Ty),exit:this.exit.map(Ty),meta:this.meta,order:this.order||-1,output:this.output,invoke:this.invoke,description:this.description,tags:this.tags}}toJSON(){return this.definition}get invoke(){return Yf(this,"invoke",()=>nc(this.config.invoke).map((r,n)=>{const{src:o,systemId:i}=r,a=r.id??iY(this.id,n),l=typeof o=="string"?o:`xstate.invoke.${iY(this.id,n)}`;return{...r,src:l,id:a,systemId:i,toJSON(){const{onDone:s,onError:c,...d}=r;return{...d,type:"xstate.invoke",src:l,id:a}}}}))}get on(){return Yf(this,"on",()=>[...this.transitions].flatMap(([r,n])=>n.map(o=>[r,o])).reduce((r,[n,o])=>(r[n]=r[n]||[],r[n].push(o),r),{}))}get after(){return Yf(this,"delayedTransitions",()=>dNe(this))}get initial(){return Yf(this,"initial",()=>pNe(this,this.config.initial))}next(r,n){const o=n.type,i=[];let a;const l=Yf(this,`candidates-${o}`,()=>cNe(this,o));for(const s of l){const{guard:c}=s,d=r.context;let u=!1;try{u=!c||j3(c,d,n,r)}catch(p){const f=typeof c=="string"?c:typeof c=="object"?c.type:void 0;throw new Error(`Unable to evaluate guard ${f?`'${f}' `:""}in transition for event '${o}' in state node '${this.id}': +${p.message}`)}if(u){i.push(...s.actions),a=s;break}}return a?[a]:void 0}get events(){return Yf(this,"events",()=>{const{states:r}=this,n=new Set(this.ownEvents);if(r)for(const o of Object.keys(r)){const i=r[o];if(i.states)for(const a of i.events)n.add(`${a}`)}return Array.from(n)})}get ownEvents(){const r=new Set([...this.transitions.keys()].filter(n=>this.transitions.get(n).some(o=>!(!o.target&&!o.actions.length&&!o.reenter))));return Array.from(r)}}const FNe="#";class fE{constructor(r,n){this.config=r,this.version=void 0,this.schemas=void 0,this.implementations=void 0,this.__xstatenode=!0,this.idMap=new Map,this.root=void 0,this.id=void 0,this.states=void 0,this.events=void 0,this.id=r.id||"(machine)",this.implementations={actors:n?.actors??{},actions:n?.actions??{},delays:n?.delays??{},guards:n?.guards??{}},this.version=this.config.version,this.schemas=this.config.schemas,this.transition=this.transition.bind(this),this.getInitialSnapshot=this.getInitialSnapshot.bind(this),this.getPersistedSnapshot=this.getPersistedSnapshot.bind(this),this.restoreSnapshot=this.restoreSnapshot.bind(this),this.start=this.start.bind(this),this.root=new O3(r,{_key:this.id,_machine:this}),this.root._initialize(),this.states=this.root.states,this.events=this.root.events}provide(r){const{actions:n,guards:o,actors:i,delays:a}=this.implementations;return new fE(this.config,{actions:{...n,...r.actions},guards:{...o,...r.guards},actors:{...i,...r.actors},delays:{...a,...r.delays}})}resolveState(r){const n=$Ne(this.root,r.value),o=A3(M3(this.root,n));return N3({_nodes:[...o],context:r.context||{},children:{},status:lE(o,this.root)?"done":r.status||"active",output:r.output,error:r.error,historyValue:r.historyValue},this)}transition(r,n,o){return hE(r,n,o,[]).snapshot}microstep(r,n,o){return hE(r,n,o,[]).microstates}getTransitionData(r,n){return sE(this.root,r.value,r,n)||[]}getPreInitialState(r,n,o){const{context:i}=this.config,a=N3({context:typeof i!="function"&&i?i:{},_nodes:[this.root],children:{},status:"active"},this);return typeof i=="function"?Gf(a,n,r,[Bt(({spawn:l,event:s,self:c})=>i({spawn:l,input:s.input,self:c}))],o,void 0):a}getInitialSnapshot(r,n){const o=QG(n),i=[],a=this.getPreInitialState(r,o,i),l=uE([{target:[...pY(this.root)],source:this.root,reenter:!0,actions:[],eventType:null,toJSON:null}],a,r,o,!0,i),{snapshot:s}=hE(l,o,r,i);return s}start(r){Object.values(r.children).forEach(n=>{n.getSnapshot().status==="active"&&n.start()})}getStateNodeById(r){const n=tE(r),o=n.slice(1),i=D3(n[0])?n[0].slice(FNe.length):n[0],a=this.idMap.get(i);if(!a)throw new Error(`Child state node '#${i}' does not exist on machine '${this.id}'`);return P3(a,o)}get definition(){return this.root.definition}toJSON(){return this.definition}getPersistedSnapshot(r,n){return MNe(r,n)}restoreSnapshot(r,n){const o={},i=r.children;Object.keys(i).forEach(p=>{const f=i[p],m=f.snapshot,v=f.src,w=typeof v=="string"?nE(this,v):v;if(!w)return;const x=qf(w,{id:p,parent:n.self,syncSnapshot:f.syncSnapshot,snapshot:m,src:v,systemId:f.systemId});o[p]=x});function a(p,f){if(f instanceof O3)return f;try{return p.machine.getStateNodeById(f.id)}catch{}}function l(p,f){if(!f||typeof f!="object")return{};const m={};for(const v in f){const w=f[v];for(const x of w){const k=a(p,x);k&&(m[v]??=[],m[v].push(k))}}return m}const s=l(this.root,r.historyValue),c=N3({...r,children:o,_nodes:Array.from(A3(M3(this.root,r.value))),historyValue:s},this),d=new Set;function u(p,f){if(!d.has(p)){d.add(p);for(const m in p){const v=p[m];if(v&&typeof v=="object"){if("xstate$$type"in v&&v.xstate$$type===iE){p[m]=f[v.id];continue}u(v,f)}}}}return u(c.context,o),c}}function VNe(e,r,n,o,{event:i}){const a=typeof i=="function"?i(n,o):i;return[r,{event:a},void 0]}function qNe(e,{event:r}){e.defer(()=>e.emit(r))}function gE(e){function r(n,o){}return r.type="xstate.emit",r.event=e,r.resolve=VNe,r.execute=qNe,r}let mE=(function(e){return e.Parent="#_parent",e.Internal="#_internal",e})({});function HNe(e,r,n,o,{to:i,event:a,id:l,delay:s},c){const d=r.machine.implementations.delays;if(typeof a=="string")throw new Error(`Only event objects may be used with sendTo; use sendTo({ type: "${a}" }) instead`);const u=typeof a=="function"?a(n,o):a;let p;if(typeof s=="string"){const v=d&&d[s];p=typeof v=="function"?v(n,o):v}else p=typeof s=="function"?s(n,o):s;const f=typeof i=="function"?i(n,o):i;let m;if(typeof f=="string"){if(f===mE.Parent?m=e.self._parent:f===mE.Internal?m=e.self:f.startsWith("#_")?m=r.children[f.slice(2)]:m=c.deferredActorIds?.includes(f)?f:r.children[f],!m)throw new Error(`Unable to send event to actor '${f}' from machine '${r.machine.id}'.`)}else m=f||e.self;return[r,{to:m,targetId:typeof f=="string"?f:void 0,event:u,id:l,delay:p},void 0]}function UNe(e,r,n){typeof n.to=="string"&&(n.to=r.children[n.to])}function WNe(e,r){e.defer(()=>{const{to:n,event:o,delay:i,id:a}=r;if(typeof i=="number"){e.system.scheduler.schedule(e.self,n,o,i,a);return}e.system._relay(e.self,n,o.type===GMe?ZG(e.self.id,o.data):o)})}function jy(e,r,n){function o(i,a){}return o.type="xstate.sendTo",o.to=e,o.event=r,o.id=n?.id,o.delay=n?.delay,o.resolve=HNe,o.retryResolve=UNe,o.execute=WNe,o}function GNe(e,r){return jy(mE.Parent,e,r)}function YNe(e,r,n,o,{collect:i}){const a=[],l=function(s){a.push(s)};return l.assign=(...s)=>{a.push(Bt(...s))},l.cancel=(...s)=>{a.push(ua(...s))},l.raise=(...s)=>{a.push(ai(...s))},l.sendTo=(...s)=>{a.push(jy(...s))},l.sendParent=(...s)=>{a.push(GNe(...s))},l.spawnChild=(...s)=>{a.push(T3(...s))},l.stopChild=(...s)=>{a.push($y(...s))},l.emit=(...s)=>{a.push(gE(...s))},i({context:n.context,event:n.event,enqueue:l,check:s=>j3(s,r.context,n.event,r),self:e.self,system:e.system},o),[r,void 0,a]}function rs(e){function r(n,o){}return r.type="xstate.enqueueActions",r.collect=e,r.resolve=YNe,r}function XNe(e,r,n,o,{value:i,label:a}){return[r,{value:typeof i=="function"?i(n,o):i,label:a},void 0]}function KNe({logger:e},{value:r,label:n}){n?e(n,r):e(r)}function yE(e=({context:n,event:o})=>({context:n,event:o}),r){function n(o,i){}return n.type="xstate.log",n.value=e,n.label=r,n.resolve=XNe,n.execute=KNe,n}function ht(e,r){const n=nc(r);if(!n.includes(e.type)){const o=n.length===1?`type "${n[0]}"`:`one of types "${n.join('", "')}"`;throw new Error(`Expected event ${JSON.stringify(e)} to have ${o}`)}}function ZNe(e,r){return new fE(e,r)}function ns({schemas:e,actors:r,actions:n,guards:o,delays:i}){return{assign:Bt,sendTo:jy,raise:ai,log:yE,cancel:ua,stopChild:$y,enqueueActions:rs,emit:gE,spawnChild:T3,createStateConfig:a=>a,createAction:a=>a,createMachine:a=>ZNe({...a,schemas:e},{actors:r,actions:n,guards:o,delays:i}),extend:a=>ns({schemas:e,actors:r,actions:{...n,...a.actions},guards:{...o,...a.guards},delays:{...i,...a.delays}})}}fV();const SY=(e,r)=>{r(e);const n=e.getSnapshot().children;n&&Object.values(n).forEach(o=>{SY(o,r)})};function QNe(e){const r=[];SY(e,o=>{r.push([o,o.getSnapshot()]),o.observers=new Set});const n=e.system.getSnapshot?.();e.stop(),e.system._snapshot=n,r.forEach(([o,i])=>{o._processingStatus=0,o._snapshot=i})}function JNe(e,...[r]){let[[n,o],i]=S.useState(()=>{const a=qf(e,r);return[e.config,a]});if(e.config!==n){const a=qf(e,{...r,snapshot:o.getPersistedSnapshot({__unsafeAllowInlineActors:!0})});i([e.config,a]),o=a}return hPe(()=>{o.logic.implementations=e.implementations}),o}function vE(e,...[r,n]){const o=JNe(e,r);return S.useEffect(()=>{if(!n)return;const i=o.subscribe(z3(n));return()=>{i.unsubscribe()}},[n]),S.useEffect(()=>(o.start(),()=>{QNe(o)}),[o]),o}function eBe(e,r){return e===r}function pn(e,r,n=eBe){const o=S.useCallback(a=>{if(!e)return()=>{};const{unsubscribe:l}=e.subscribe(a);return l},[e]),i=S.useCallback(()=>e?.getSnapshot(),[e]);return yV.useSyncExternalStoreWithSelector(o,i,i,r,n)}const bE=S.createContext(null);bE.displayName="DiagramActorSafeContext";const xE=S.createContext(null);xE.displayName="DiagramApiSafeContext";const tBe=bE.Provider,rBe=xE.Provider;function Xf(){const e=S.useContext(bE);if(e===null)throw new Error("DiagramActorRef is not provided");return e}function Mt(){const e=S.useContext(xE);if(e===null)throw new Error("DiagramApi is not provided");return e}function at(e){const r=S.useRef(e);r.current=e;const n=S.useRef(null);return n.current==null&&(n.current=((...o)=>r.current?.(...o))),n.current}function wE(e,r=Ir){const n=Xf();return pn(n,e,r)}function pa(e,r=Ir,n){const o=Xf(),i=at(e),a=S.useCallback(l=>i(l.context),n??[]);return pn(o,a,r)}function ji(e,r,n){const o=Xf(),i=at(r),a=S.useRef(!1),l=n?.once??!1;S.useEffect(()=>{if(l&&a.current)return;let s=o.on(e,c=>{i(c),a.current=!0,l&&(s?.unsubscribe(),s=null)});return()=>{s?.unsubscribe()}},[o,e,l])}const nBe=e=>e.children.overlays;function oBe(){return wE(nBe,Object.is)}const iBe=e=>e.children.search??null;function aBe(){return wE(iBe,Object.is)}function kE(e,r){e.indexOf(r)===-1&&e.push(r)}function L3(e,r){const n=e.indexOf(r);n>-1&&e.splice(n,1)}const oc=(e,r,n)=>n>r?r:n{};const ic={},EY=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function CY(e){return typeof e=="object"&&e!==null}const $Y=e=>/^0[^.\s]+$/u.test(e);function SE(e){let r;return()=>(r===void 0&&(r=e()),r)}const ha=e=>e,lBe=(e,r)=>n=>r(e(n)),Ay=(...e)=>e.reduce(lBe),Kf=(e,r,n)=>{const o=r-e;return o===0?1:(n-e)/o};class EE{constructor(){this.subscriptions=[]}add(r){return kE(this.subscriptions,r),()=>L3(this.subscriptions,r)}notify(r,n,o){const i=this.subscriptions.length;if(i)if(i===1)this.subscriptions[0](r,n,o);else for(let a=0;ae*1e3,fa=e=>e/1e3;function RY(e,r){return r?e*(1e3/r):0}const sBe=(e,r,n)=>{const o=r-e;return((n-e)%o+o)%o+e},zY=(e,r,n)=>(((1-3*n+3*r)*e+(3*n-6*r))*e+3*r)*e,cBe=1e-7,dBe=12;function uBe(e,r,n,o,i){let a,l,s=0;do l=r+(n-r)/2,a=zY(l,o,i)-e,a>0?n=l:r=l;while(Math.abs(a)>cBe&&++suBe(a,0,1,e,n);return a=>a===0||a===1?a:zY(i(a),r,o)}const TY=e=>r=>r<=.5?e(2*r)/2:(2-e(2*(1-r)))/2,jY=e=>r=>1-e(1-r),AY=Dy(.33,1.53,.69,.99),CE=jY(AY),DY=TY(CE),PY=e=>(e*=2)<1?.5*CE(e):.5*(2-Math.pow(2,-10*(e-1))),$E=e=>1-Math.sin(Math.acos(e)),MY=jY($E),NY=TY($E),pBe=Dy(.42,0,1,1),hBe=Dy(0,0,.58,1),BY=Dy(.42,0,.58,1),IY=e=>Array.isArray(e)&&typeof e[0]!="number";function OY(e,r){return IY(e)?e[sBe(0,e.length,r)]:e}const LY=e=>Array.isArray(e)&&typeof e[0]=="number",fBe={linear:ha,easeIn:pBe,easeInOut:BY,easeOut:hBe,circIn:$E,circInOut:NY,circOut:MY,backIn:CE,backInOut:DY,backOut:AY,anticipate:PY},gBe=e=>typeof e=="string",FY=e=>{if(LY(e)){_E(e.length===4);const[r,n,o,i]=e;return Dy(r,n,o,i)}else if(gBe(e))return fBe[e];return e},F3=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function mBe(e,r){let n=new Set,o=new Set,i=!1,a=!1;const l=new WeakSet;let s={delta:0,timestamp:0,isProcessing:!1};function c(u){l.has(u)&&(d.schedule(u),e()),u(s)}const d={schedule:(u,p=!1,f=!1)=>{const m=f&&i?n:o;return p&&l.add(u),m.has(u)||m.add(u),u},cancel:u=>{o.delete(u),l.delete(u)},process:u=>{if(s=u,i){a=!0;return}i=!0,[n,o]=[o,n],n.forEach(c),n.clear(),i=!1,a&&(a=!1,d.process(u))}};return d}const yBe=40;function VY(e,r){let n=!1,o=!0;const i={delta:0,timestamp:0,isProcessing:!1},a=()=>n=!0,l=F3.reduce((k,C)=>(k[C]=mBe(a),k),{}),{setup:s,read:c,resolveKeyframes:d,preUpdate:u,update:p,preRender:f,render:m,postRender:v}=l,w=()=>{const k=ic.useManualTiming?i.timestamp:performance.now();n=!1,ic.useManualTiming||(i.delta=o?1e3/60:Math.max(Math.min(k-i.timestamp,yBe),1)),i.timestamp=k,i.isProcessing=!0,s.process(i),c.process(i),d.process(i),u.process(i),p.process(i),f.process(i),m.process(i),v.process(i),i.isProcessing=!1,n&&r&&(o=!1,e(w))},x=()=>{n=!0,o=!0,i.isProcessing||e(w)};return{schedule:F3.reduce((k,C)=>{const _=l[C];return k[C]=($,R=!1,T=!1)=>(n||x(),_.schedule($,R,T)),k},{}),cancel:k=>{for(let C=0;C(V3===void 0&&li.set(so.isProcessing||ic.useManualTiming?so.timestamp:performance.now()),V3),set:e=>{V3=e,queueMicrotask(vBe)}},qY=e=>r=>typeof r=="string"&&r.startsWith(e),HY=qY("--"),bBe=qY("var(--"),zE=e=>bBe(e)?xBe.test(e.split("/*")[0].trim()):!1,xBe=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,Zf={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},Py={...Zf,transform:e=>oc(0,1,e)},q3={...Zf,default:1},My=e=>Math.round(e*1e5)/1e5,TE=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function wBe(e){return e==null}const kBe=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,jE=(e,r)=>n=>!!(typeof n=="string"&&kBe.test(n)&&n.startsWith(e)||r&&!wBe(n)&&Object.prototype.hasOwnProperty.call(n,r)),UY=(e,r,n)=>o=>{if(typeof o!="string")return o;const[i,a,l,s]=o.match(TE);return{[e]:parseFloat(i),[r]:parseFloat(a),[n]:parseFloat(l),alpha:s!==void 0?parseFloat(s):1}},_Be=e=>oc(0,255,e),AE={...Zf,transform:e=>Math.round(_Be(e))},bp={test:jE("rgb","red"),parse:UY("red","green","blue"),transform:({red:e,green:r,blue:n,alpha:o=1})=>"rgba("+AE.transform(e)+", "+AE.transform(r)+", "+AE.transform(n)+", "+My(Py.transform(o))+")"};function SBe(e){let r="",n="",o="",i="";return e.length>5?(r=e.substring(1,3),n=e.substring(3,5),o=e.substring(5,7),i=e.substring(7,9)):(r=e.substring(1,2),n=e.substring(2,3),o=e.substring(3,4),i=e.substring(4,5),r+=r,n+=n,o+=o,i+=i),{red:parseInt(r,16),green:parseInt(n,16),blue:parseInt(o,16),alpha:i?parseInt(i,16)/255:1}}const DE={test:jE("#"),parse:SBe,transform:bp.transform},Ny=e=>({test:r=>typeof r=="string"&&r.endsWith(e)&&r.split(" ").length===1,parse:parseFloat,transform:r=>`${r}${e}`}),Rd=Ny("deg"),os=Ny("%"),_t=Ny("px"),EBe=Ny("vh"),CBe=Ny("vw"),WY={...os,parse:e=>os.parse(e)/100,transform:e=>os.transform(e*100)},Qf={test:jE("hsl","hue"),parse:UY("hue","saturation","lightness"),transform:({hue:e,saturation:r,lightness:n,alpha:o=1})=>"hsla("+Math.round(e)+", "+os.transform(My(r))+", "+os.transform(My(n))+", "+My(Py.transform(o))+")"},Sn={test:e=>bp.test(e)||DE.test(e)||Qf.test(e),parse:e=>bp.test(e)?bp.parse(e):Qf.test(e)?Qf.parse(e):DE.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?bp.transform(e):Qf.transform(e),getAnimatableNone:e=>{const r=Sn.parse(e);return r.alpha=0,Sn.transform(r)}},$Be=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function RBe(e){return isNaN(e)&&typeof e=="string"&&(e.match(TE)?.length||0)+(e.match($Be)?.length||0)>0}const GY="number",YY="color",zBe="var",TBe="var(",XY="${}",jBe=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function By(e){const r=e.toString(),n=[],o={color:[],number:[],var:[]},i=[];let a=0;const l=r.replace(jBe,s=>(Sn.test(s)?(o.color.push(a),i.push(YY),n.push(Sn.parse(s))):s.startsWith(TBe)?(o.var.push(a),i.push(zBe),n.push(s)):(o.number.push(a),i.push(GY),n.push(parseFloat(s))),++a,XY)).split(XY);return{values:n,split:l,indexes:o,types:i}}function KY(e){return By(e).values}function ZY(e){const{split:r,types:n}=By(e),o=r.length;return i=>{let a="";for(let l=0;ltypeof e=="number"?0:Sn.test(e)?Sn.getAnimatableNone(e):e;function DBe(e){const r=KY(e);return ZY(e)(r.map(ABe))}const zd={test:RBe,parse:KY,createTransformer:ZY,getAnimatableNone:DBe};function PE(e,r,n){return n<0&&(n+=1),n>1&&(n-=1),n<.16666666666666666?e+(r-e)*6*n:n<.5?r:n<.6666666666666666?e+(r-e)*(.6666666666666666-n)*6:e}function PBe({hue:e,saturation:r,lightness:n,alpha:o}){e/=360,r/=100,n/=100;let i=0,a=0,l=0;if(!r)i=a=l=n;else{const s=n<.5?n*(1+r):n+r-n*r,c=2*n-s;i=PE(c,s,e+.3333333333333333),a=PE(c,s,e),l=PE(c,s,e-.3333333333333333)}return{red:Math.round(i*255),green:Math.round(a*255),blue:Math.round(l*255),alpha:o}}function H3(e,r){return n=>n>0?r:e}const Lr=(e,r,n)=>e+(r-e)*n,ME=(e,r,n)=>{const o=e*e,i=n*(r*r-o)+o;return i<0?0:Math.sqrt(i)},MBe=[DE,bp,Qf],NBe=e=>MBe.find(r=>r.test(e));function QY(e){const r=NBe(e);if(!r)return!1;let n=r.parse(e);return r===Qf&&(n=PBe(n)),n}const JY=(e,r)=>{const n=QY(e),o=QY(r);if(!n||!o)return H3(e,r);const i={...n};return a=>(i.red=ME(n.red,o.red,a),i.green=ME(n.green,o.green,a),i.blue=ME(n.blue,o.blue,a),i.alpha=Lr(n.alpha,o.alpha,a),bp.transform(i))},NE=new Set(["none","hidden"]);function BBe(e,r){return NE.has(e)?n=>n<=0?e:r:n=>n>=1?r:e}function IBe(e,r){return n=>Lr(e,r,n)}function BE(e){return typeof e=="number"?IBe:typeof e=="string"?zE(e)?H3:Sn.test(e)?JY:FBe:Array.isArray(e)?eX:typeof e=="object"?Sn.test(e)?JY:OBe:H3}function eX(e,r){const n=[...e],o=n.length,i=e.map((a,l)=>BE(a)(a,r[l]));return a=>{for(let l=0;l{for(const a in o)n[a]=o[a](i);return n}}function LBe(e,r){const n=[],o={color:0,var:0,number:0};for(let i=0;i{const n=zd.createTransformer(r),o=By(e),i=By(r);return o.indexes.var.length===i.indexes.var.length&&o.indexes.color.length===i.indexes.color.length&&o.indexes.number.length>=i.indexes.number.length?NE.has(e)&&!i.values.length||NE.has(r)&&!o.values.length?BBe(e,r):Ay(eX(LBe(o,i),i.values),n):H3(e,r)};function tX(e,r,n){return typeof e=="number"&&typeof r=="number"&&typeof n=="number"?Lr(e,r,n):BE(e)(e,r)}const VBe=e=>{const r=({timestamp:n})=>e(n);return{start:(n=!0)=>Dr.update(r,n),stop:()=>$d(r),now:()=>so.isProcessing?so.timestamp:li.now()}},rX=(e,r,n=10)=>{let o="";const i=Math.max(Math.round(r/n),2);for(let a=0;a=U3?1/0:r}function nX(e,r=100,n){const o=n({...e,keyframes:[0,r]}),i=Math.min(IE(o),U3);return{type:"keyframes",ease:a=>o.next(i*a).value/r,duration:fa(i)}}const qBe=5;function oX(e,r,n){const o=Math.max(r-qBe,0);return RY(n-e(o),r-o)}const rn={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},OE=.001;function HBe({duration:e=rn.duration,bounce:r=rn.bounce,velocity:n=rn.velocity,mass:o=rn.mass}){let i,a,l=1-r;l=oc(rn.minDamping,rn.maxDamping,l),e=oc(rn.minDuration,rn.maxDuration,fa(e)),l<1?(i=d=>{const u=d*l,p=u*e,f=u-n,m=LE(d,l),v=Math.exp(-p);return OE-f/m*v},a=d=>{const u=d*l*e,p=u*n+n,f=Math.pow(l,2)*Math.pow(d,2)*e,m=Math.exp(-u),v=LE(Math.pow(d,2),l);return(-i(d)+OE>0?-1:1)*((p-f)*m)/v}):(i=d=>{const u=Math.exp(-d*e),p=(d-n)*e+1;return-OE+u*p},a=d=>{const u=Math.exp(-d*e),p=(n-d)*(e*e);return u*p});const s=5/e,c=WBe(i,a,s);if(e=al(e),isNaN(c))return{stiffness:rn.stiffness,damping:rn.damping,duration:e};{const d=Math.pow(c,2)*o;return{stiffness:d,damping:l*2*Math.sqrt(o*d),duration:e}}}const UBe=12;function WBe(e,r,n){let o=n;for(let i=1;ie[n]!==void 0)}function XBe(e){let r={velocity:rn.velocity,stiffness:rn.stiffness,damping:rn.damping,mass:rn.mass,isResolvedFromDuration:!1,...e};if(!iX(e,YBe)&&iX(e,GBe))if(e.visualDuration){const n=e.visualDuration,o=2*Math.PI/(n*1.2),i=o*o,a=2*oc(.05,1,1-(e.bounce||0))*Math.sqrt(i);r={...r,mass:rn.mass,stiffness:i,damping:a}}else{const n=HBe(e);r={...r,...n,mass:rn.mass},r.isResolvedFromDuration=!0}return r}function Iy(e=rn.visualDuration,r=rn.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:r}:e;let{restSpeed:o,restDelta:i}=n;const a=n.keyframes[0],l=n.keyframes[n.keyframes.length-1],s={done:!1,value:a},{stiffness:c,damping:d,mass:u,duration:p,velocity:f,isResolvedFromDuration:m}=XBe({...n,velocity:-fa(n.velocity||0)}),v=f||0,w=d/(2*Math.sqrt(c*u)),x=l-a,k=fa(Math.sqrt(c/u)),C=Math.abs(x)<5;o||(o=C?rn.restSpeed.granular:rn.restSpeed.default),i||(i=C?rn.restDelta.granular:rn.restDelta.default);let _;if(w<1){const R=LE(k,w);_=T=>{const A=Math.exp(-w*k*T);return l-A*((v+w*k*x)/R*Math.sin(R*T)+x*Math.cos(R*T))}}else if(w===1)_=R=>l-Math.exp(-k*R)*(x+(v+k*x)*R);else{const R=k*Math.sqrt(w*w-1);_=T=>{const A=Math.exp(-w*k*T),z=Math.min(R*T,300);return l-A*((v+w*k*x)*Math.sinh(z)+R*x*Math.cosh(z))/R}}const $={calculatedDuration:m&&p||null,next:R=>{const T=_(R);if(m)s.done=R>=p;else{let A=R===0?v:0;w<1&&(A=R===0?al(v):oX(_,R,T));const z=Math.abs(A)<=o,j=Math.abs(l-T)<=i;s.done=z&&j}return s.value=s.done?l:T,s},toString:()=>{const R=Math.min(IE($),U3),T=rX(A=>$.next(R*A).value,R,30);return R+"ms "+T},toTransition:()=>{}};return $}Iy.applyToOptions=e=>{const r=nX(e,100,Iy);return e.ease=r.ease,e.duration=al(r.duration),e.type="keyframes",e};function FE({keyframes:e,velocity:r=0,power:n=.8,timeConstant:o=325,bounceDamping:i=10,bounceStiffness:a=500,modifyTarget:l,min:s,max:c,restDelta:d=.5,restSpeed:u}){const p=e[0],f={done:!1,value:p},m=z=>s!==void 0&&zc,v=z=>s===void 0?c:c===void 0||Math.abs(s-z)-w*Math.exp(-z/o),_=z=>k+C(z),$=z=>{const j=C(z),I=_(z);f.done=Math.abs(j)<=d,f.value=f.done?k:I};let R,T;const A=z=>{m(f.value)&&(R=z,T=Iy({keyframes:[f.value,v(f.value)],velocity:oX(_,z,f.value),damping:i,stiffness:a,restDelta:d,restSpeed:u}))};return A(0),{calculatedDuration:null,next:z=>{let j=!1;return!T&&R===void 0&&(j=!0,$(z),A(z)),R!==void 0&&z>=R?T.next(z-R):(!j&&$(z),f)}}}function KBe(e,r,n){const o=[],i=n||ic.mix||tX,a=e.length-1;for(let l=0;lr[0];if(a===2&&r[0]===r[1])return()=>r[1];const l=e[0]===e[1];e[0]>e[a-1]&&(e=[...e].reverse(),r=[...r].reverse());const s=KBe(r,o,i),c=s.length,d=u=>{if(l&&u1)for(;pd(oc(e[0],e[a-1],u)):d}function aX(e,r){const n=e[e.length-1];for(let o=1;o<=r;o++){const i=Kf(0,r,o);e.push(Lr(n,1,i))}}function lX(e){const r=[0];return aX(r,e.length-1),r}function QBe(e,r){return e.map(n=>n*r)}function JBe(e,r){return e.map(()=>r||BY).splice(0,e.length-1)}function Oy({duration:e=300,keyframes:r,times:n,ease:o="easeInOut"}){const i=IY(o)?o.map(FY):FY(o),a={done:!1,value:r[0]},l=QBe(n&&n.length===r.length?n:lX(r),e),s=ZBe(l,r,{ease:Array.isArray(i)?i:JBe(r,i)});return{calculatedDuration:e,next:c=>(a.value=s(c),a.done=c>=e,a)}}const eIe=e=>e!==null;function VE(e,{repeat:r,repeatType:n="loop"},o,i=1){const a=e.filter(eIe),l=i<0||r&&n!=="loop"&&r%2===1?0:a.length-1;return!l||o===void 0?a[l]:o}const tIe={decay:FE,inertia:FE,tween:Oy,keyframes:Oy,spring:Iy};function sX(e){typeof e.type=="string"&&(e.type=tIe[e.type])}class qE{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(r=>{this.resolve=r})}notifyFinished(){this.resolve()}then(r,n){return this.finished.then(r,n)}}const rIe=e=>e/100;class HE extends qE{constructor(r){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{const{motionValue:n}=this.options;n&&n.updatedAt!==li.now()&&this.tick(li.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),this.options.onStop?.())},this.options=r,this.initAnimation(),this.play(),r.autoplay===!1&&this.pause()}initAnimation(){const{options:r}=this;sX(r);const{type:n=Oy,repeat:o=0,repeatDelay:i=0,repeatType:a,velocity:l=0}=r;let{keyframes:s}=r;const c=n||Oy;c!==Oy&&typeof s[0]!="number"&&(this.mixKeyframes=Ay(rIe,tX(s[0],s[1])),s=[0,100]);const d=c({...r,keyframes:s});a==="mirror"&&(this.mirroredGenerator=c({...r,keyframes:[...s].reverse(),velocity:-l})),d.calculatedDuration===null&&(d.calculatedDuration=IE(d));const{calculatedDuration:u}=d;this.calculatedDuration=u,this.resolvedDuration=u+i,this.totalDuration=this.resolvedDuration*(o+1)-i,this.generator=d}updateTime(r){const n=Math.round(r-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(r,n=!1){const{generator:o,totalDuration:i,mixKeyframes:a,mirroredGenerator:l,resolvedDuration:s,calculatedDuration:c}=this;if(this.startTime===null)return o.next(0);const{delay:d=0,keyframes:u,repeat:p,repeatType:f,repeatDelay:m,type:v,onUpdate:w,finalKeyframe:x}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,r):this.speed<0&&(this.startTime=Math.min(r-i/this.speed,this.startTime)),n?this.currentTime=r:this.updateTime(r);const k=this.currentTime-d*(this.playbackSpeed>=0?1:-1),C=this.playbackSpeed>=0?k<0:k>i;this.currentTime=Math.max(k,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=i);let _=this.currentTime,$=o;if(p){const z=Math.min(this.currentTime,i)/s;let j=Math.floor(z),I=z%1;!I&&z>=1&&(I=1),I===1&&j--,j=Math.min(j,p+1),j%2&&(f==="reverse"?(I=1-I,m&&(I-=m/s)):f==="mirror"&&($=l)),_=oc(0,1,I)*s}const R=C?{done:!1,value:u[0]}:$.next(_);a&&(R.value=a(R.value));let{done:T}=R;!C&&c!==null&&(T=this.playbackSpeed>=0?this.currentTime>=i:this.currentTime<=0);const A=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&T);return A&&v!==FE&&(R.value=VE(u,this.options,x,this.speed)),w&&w(R.value),A&&this.finish(),R}then(r,n){return this.finished.then(r,n)}get duration(){return fa(this.calculatedDuration)}get iterationDuration(){const{delay:r=0}=this.options||{};return this.duration+fa(r)}get time(){return fa(this.currentTime)}set time(r){r=al(r),this.currentTime=r,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=r:this.driver&&(this.startTime=this.driver.now()-r/this.playbackSpeed),this.driver?.start(!1)}get speed(){return this.playbackSpeed}set speed(r){this.updateTime(li.now());const n=this.playbackSpeed!==r;this.playbackSpeed=r,n&&(this.time=fa(this.currentTime))}play(){if(this.isStopped)return;const{driver:r=VBe,startTime:n}=this.options;this.driver||(this.driver=r(i=>this.tick(i))),this.options.onPlay?.();const o=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=o):this.holdTime!==null?this.startTime=o-this.holdTime:this.startTime||(this.startTime=n??o),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(li.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state="finished",this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(r){return this.startTime=0,this.tick(r,!0)}attachTimeline(r){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),this.driver?.stop(),r.observe(this)}}function nIe(e){for(let r=1;re*180/Math.PI,UE=e=>{const r=xp(Math.atan2(e[1],e[0]));return WE(r)},oIe={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:UE,rotateZ:UE,skewX:e=>xp(Math.atan(e[1])),skewY:e=>xp(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},WE=e=>(e=e%360,e<0&&(e+=360),e),cX=UE,dX=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),uX=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),iIe={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:dX,scaleY:uX,scale:e=>(dX(e)+uX(e))/2,rotateX:e=>WE(xp(Math.atan2(e[6],e[5]))),rotateY:e=>WE(xp(Math.atan2(-e[2],e[0]))),rotateZ:cX,rotate:cX,skewX:e=>xp(Math.atan(e[4])),skewY:e=>xp(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function GE(e){return e.includes("scale")?1:0}function YE(e,r){if(!e||e==="none")return GE(r);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let o,i;if(n)o=iIe,i=n;else{const s=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);o=oIe,i=s}if(!i)return GE(r);const a=o[r],l=i[1].split(",").map(lIe);return typeof a=="function"?a(l):l[a]}const aIe=(e,r)=>{const{transform:n="none"}=getComputedStyle(e);return YE(n,r)};function lIe(e){return parseFloat(e.trim())}const Jf=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],eg=new Set(Jf),pX=e=>e===Zf||e===_t,sIe=new Set(["x","y","z"]),cIe=Jf.filter(e=>!sIe.has(e));function dIe(e){const r=[];return cIe.forEach(n=>{const o=e.getValue(n);o!==void 0&&(r.push([n,o.get()]),o.set(n.startsWith("scale")?1:0))}),r}const wp={width:({x:e},{paddingLeft:r="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(r)-parseFloat(n),height:({y:e},{paddingTop:r="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(r)-parseFloat(n),top:(e,{top:r})=>parseFloat(r),left:(e,{left:r})=>parseFloat(r),bottom:({y:e},{top:r})=>parseFloat(r)+(e.max-e.min),right:({x:e},{left:r})=>parseFloat(r)+(e.max-e.min),x:(e,{transform:r})=>YE(r,"x"),y:(e,{transform:r})=>YE(r,"y")};wp.translateX=wp.x,wp.translateY=wp.y;const kp=new Set;let XE=!1,KE=!1,ZE=!1;function hX(){if(KE){const e=Array.from(kp).filter(o=>o.needsMeasurement),r=new Set(e.map(o=>o.element)),n=new Map;r.forEach(o=>{const i=dIe(o);i.length&&(n.set(o,i),o.render())}),e.forEach(o=>o.measureInitialState()),r.forEach(o=>{o.render();const i=n.get(o);i&&i.forEach(([a,l])=>{o.getValue(a)?.set(l)})}),e.forEach(o=>o.measureEndState()),e.forEach(o=>{o.suspendedScrollY!==void 0&&window.scrollTo(0,o.suspendedScrollY)})}KE=!1,XE=!1,kp.forEach(e=>e.complete(ZE)),kp.clear()}function fX(){kp.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(KE=!0)})}function uIe(){ZE=!0,fX(),hX(),ZE=!1}class QE{constructor(r,n,o,i,a,l=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...r],this.onComplete=n,this.name=o,this.motionValue=i,this.element=a,this.isAsync=l}scheduleResolve(){this.state="scheduled",this.isAsync?(kp.add(this),XE||(XE=!0,Dr.read(fX),Dr.resolveKeyframes(hX))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:r,name:n,element:o,motionValue:i}=this;if(r[0]===null){const a=i?.get(),l=r[r.length-1];if(a!==void 0)r[0]=a;else if(o&&n){const s=o.readValue(n,l);s!=null&&(r[0]=s)}r[0]===void 0&&(r[0]=l),i&&a===void 0&&i.set(r[0])}nIe(r)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(r=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,r),kp.delete(this)}cancel(){this.state==="scheduled"&&(kp.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const pIe=e=>e.startsWith("--");function hIe(e,r,n){pIe(r)?e.style.setProperty(r,n):e.style[r]=n}const fIe=SE(()=>window.ScrollTimeline!==void 0),gIe={};function mIe(e,r){const n=SE(e);return()=>gIe[r]??n()}const gX=mIe(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),Ly=([e,r,n,o])=>`cubic-bezier(${e}, ${r}, ${n}, ${o})`,mX={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Ly([0,.65,.55,1]),circOut:Ly([.55,0,1,.45]),backIn:Ly([.31,.01,.66,-.59]),backOut:Ly([.33,1.53,.69,.99])};function yX(e,r){if(e)return typeof e=="function"?gX()?rX(e,r):"ease-out":LY(e)?Ly(e):Array.isArray(e)?e.map(n=>yX(n,r)||mX.easeOut):mX[e]}function yIe(e,r,n,{delay:o=0,duration:i=300,repeat:a=0,repeatType:l="loop",ease:s="easeOut",times:c}={},d=void 0){const u={[r]:n};c&&(u.offset=c);const p=yX(s,i);Array.isArray(p)&&(u.easing=p);const f={delay:o,duration:i,easing:Array.isArray(p)?"linear":p,fill:"both",iterations:a+1,direction:l==="reverse"?"alternate":"normal"};return d&&(f.pseudoElement=d),e.animate(u,f)}function JE(e){return typeof e=="function"&&"applyToOptions"in e}function vIe({type:e,...r}){return JE(e)&&gX()?e.applyToOptions(r):(r.duration??(r.duration=300),r.ease??(r.ease="easeOut"),r)}class bIe extends qE{constructor(r){if(super(),this.finishedTime=null,this.isStopped=!1,!r)return;const{element:n,name:o,keyframes:i,pseudoElement:a,allowFlatten:l=!1,finalKeyframe:s,onComplete:c}=r;this.isPseudoElement=!!a,this.allowFlatten=l,this.options=r,_E(typeof r.type!="string");const d=vIe(r);this.animation=yIe(n,o,i,d,a),d.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!a){const u=VE(i,this.options,s,this.speed);this.updateMotionValue?this.updateMotionValue(u):hIe(n,o,u),this.animation.cancel()}c?.(),this.notifyFinished()}}play(){this.isStopped||(this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:r}=this;r==="idle"||r==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){this.isPseudoElement||this.animation.commitStyles?.()}get duration(){const r=this.animation.effect?.getComputedTiming?.().duration||0;return fa(Number(r))}get iterationDuration(){const{delay:r=0}=this.options||{};return this.duration+fa(r)}get time(){return fa(Number(this.animation.currentTime)||0)}set time(r){this.finishedTime=null,this.animation.currentTime=al(r)}get speed(){return this.animation.playbackRate}set speed(r){r<0&&(this.finishedTime=null),this.animation.playbackRate=r}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return Number(this.animation.startTime)}set startTime(r){this.animation.startTime=r}attachTimeline({timeline:r,observe:n}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,r&&fIe()?(this.animation.timeline=r,ha):n(this)}}const vX={anticipate:PY,backInOut:DY,circInOut:NY};function xIe(e){return e in vX}function wIe(e){typeof e.ease=="string"&&xIe(e.ease)&&(e.ease=vX[e.ease])}const bX=10;class kIe extends bIe{constructor(r){wIe(r),sX(r),super(r),r.startTime&&(this.startTime=r.startTime),this.options=r}updateMotionValue(r){const{motionValue:n,onUpdate:o,onComplete:i,element:a,...l}=this.options;if(!n)return;if(r!==void 0){n.set(r);return}const s=new HE({...l,autoplay:!1}),c=al(this.finishedTime??this.time);n.setWithVelocity(s.sample(c-bX).value,s.sample(c).value,bX),s.stop()}}const xX=(e,r)=>r==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(zd.test(e)||e==="0")&&!e.startsWith("url("));function _Ie(e){const r=e[0];if(e.length===1)return!0;for(let n=0;nObject.hasOwnProperty.call(Element.prototype,"animate"));function $Ie(e){const{motionValue:r,name:n,repeatDelay:o,repeatType:i,damping:a,type:l}=e;if(!(r?.owner?.current instanceof HTMLElement))return!1;const{onUpdate:s,transformTemplate:c}=r.owner.getProps();return CIe()&&n&&EIe.has(n)&&(n!=="transform"||!c)&&!s&&!o&&i!=="mirror"&&a!==0&&l!=="inertia"}const RIe=40;class zIe extends qE{constructor({autoplay:r=!0,delay:n=0,type:o="keyframes",repeat:i=0,repeatDelay:a=0,repeatType:l="loop",keyframes:s,name:c,motionValue:d,element:u,...p}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=li.now();const f={autoplay:r,delay:n,type:o,repeat:i,repeatDelay:a,repeatType:l,name:c,motionValue:d,element:u,...p},m=u?.KeyframeResolver||QE;this.keyframeResolver=new m(s,(v,w,x)=>this.onKeyframesResolved(v,w,f,!x),c,d,u),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(r,n,o,i){this.keyframeResolver=void 0;const{name:a,type:l,velocity:s,delay:c,isHandoff:d,onUpdate:u}=o;this.resolvedAt=li.now(),SIe(r,a,l,s)||((ic.instantAnimations||!c)&&u?.(VE(r,o,n)),r[0]=r[r.length-1],eC(o),o.repeat=0);const p={startTime:i?this.resolvedAt?this.resolvedAt-this.createdAt>RIe?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...o,keyframes:r},f=!d&&$Ie(p)?new kIe({...p,element:p.motionValue.owner.current}):new HE(p);f.finished.then(()=>this.notifyFinished()).catch(ha),this.pendingTimeline&&(this.stopTimeline=f.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=f}get finished(){return this._animation?this.animation.finished:this._finished}then(r,n){return this.finished.finally(r).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),uIe()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(r){this.animation.time=r}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(r){this.animation.speed=r}get startTime(){return this.animation.startTime}attachTimeline(r){return this._animation?this.stopTimeline=this.animation.attachTimeline(r):this.pendingTimeline=r,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}}class TIe{constructor(r){this.stop=()=>this.runAll("stop"),this.animations=r.filter(Boolean)}get finished(){return Promise.all(this.animations.map(r=>r.finished))}getAll(r){return this.animations[0][r]}setAll(r,n){for(let o=0;oo.attachTimeline(r));return()=>{n.forEach((o,i)=>{o&&o(),this.animations[i].stop()})}}get time(){return this.getAll("time")}set time(r){this.setAll("time",r)}get speed(){return this.getAll("speed")}set speed(r){this.setAll("speed",r)}get state(){return this.getAll("state")}get startTime(){return this.getAll("startTime")}get duration(){return wX(this.animations,"duration")}get iterationDuration(){return wX(this.animations,"iterationDuration")}runAll(r){this.animations.forEach(n=>n[r]())}play(){this.runAll("play")}pause(){this.runAll("pause")}cancel(){this.runAll("cancel")}complete(){this.runAll("complete")}}function wX(e,r){let n=0;for(let o=0;on&&(n=i)}return n}class jIe extends TIe{then(r,n){return this.finished.finally(r).then(()=>{})}}const AIe=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function DIe(e){const r=AIe.exec(e);if(!r)return[,];const[,n,o,i]=r;return[`--${n??o}`,i]}function kX(e,r,n=1){const[o,i]=DIe(e);if(!o)return;const a=window.getComputedStyle(r).getPropertyValue(o);if(a){const l=a.trim();return EY(l)?parseFloat(l):l}return zE(i)?kX(i,r,n+1):i}function tC(e,r){return e?.[r]??e?.default??e}const _X=new Set(["width","height","top","left","right","bottom",...Jf]),PIe={test:e=>e==="auto",parse:e=>e},SX=e=>r=>r.test(e),EX=[Zf,_t,os,Rd,CBe,EBe,PIe],CX=e=>EX.find(SX(e));function MIe(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||$Y(e):!0}const NIe=new Set(["brightness","contrast","saturate","opacity"]);function BIe(e){const[r,n]=e.slice(0,-1).split("(");if(r==="drop-shadow")return e;const[o]=n.match(TE)||[];if(!o)return e;const i=n.replace(o,"");let a=NIe.has(r)?1:0;return o!==n&&(a*=100),r+"("+a+i+")"}const IIe=/\b([a-z-]*)\(.*?\)/gu,rC={...zd,getAnimatableNone:e=>{const r=e.match(IIe);return r?r.map(BIe).join(" "):e}},$X={...Zf,transform:Math.round},OIe={rotate:Rd,rotateX:Rd,rotateY:Rd,rotateZ:Rd,scale:q3,scaleX:q3,scaleY:q3,scaleZ:q3,skew:Rd,skewX:Rd,skewY:Rd,distance:_t,translateX:_t,translateY:_t,translateZ:_t,x:_t,y:_t,z:_t,perspective:_t,transformPerspective:_t,opacity:Py,originX:WY,originY:WY,originZ:_t},nC={borderWidth:_t,borderTopWidth:_t,borderRightWidth:_t,borderBottomWidth:_t,borderLeftWidth:_t,borderRadius:_t,radius:_t,borderTopLeftRadius:_t,borderTopRightRadius:_t,borderBottomRightRadius:_t,borderBottomLeftRadius:_t,width:_t,maxWidth:_t,height:_t,maxHeight:_t,top:_t,right:_t,bottom:_t,left:_t,padding:_t,paddingTop:_t,paddingRight:_t,paddingBottom:_t,paddingLeft:_t,margin:_t,marginTop:_t,marginRight:_t,marginBottom:_t,marginLeft:_t,backgroundPositionX:_t,backgroundPositionY:_t,...OIe,zIndex:$X,fillOpacity:Py,strokeOpacity:Py,numOctaves:$X},LIe={...nC,color:Sn,backgroundColor:Sn,outlineColor:Sn,fill:Sn,stroke:Sn,borderColor:Sn,borderTopColor:Sn,borderRightColor:Sn,borderBottomColor:Sn,borderLeftColor:Sn,filter:rC,WebkitFilter:rC},RX=e=>LIe[e];function zX(e,r){let n=RX(e);return n!==rC&&(n=zd),n.getAnimatableNone?n.getAnimatableNone(r):void 0}const FIe=new Set(["auto","none","0"]);function VIe(e,r,n){let o=0,i;for(;o{r.getValue(s).set(c)}),this.resolveNoneKeyframes()}}function TX(e,r,n){if(e instanceof EventTarget)return[e];if(typeof e=="string"){let o=document;const i=n?.[e]??o.querySelectorAll(e);return i?Array.from(i):[]}return Array.from(e)}const jX=(e,r)=>r&&typeof e=="number"?r.transform(e):e;function AX(e){return CY(e)&&"offsetHeight"in e}const DX=30,HIe=e=>!isNaN(parseFloat(e));class UIe{constructor(r,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=o=>{const i=li.now();if(this.updatedAt!==i&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(o),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const a of this.dependents)a.dirty()},this.hasAnimated=!1,this.setCurrent(r),this.owner=n.owner}setCurrent(r){this.current=r,this.updatedAt=li.now(),this.canTrackVelocity===null&&r!==void 0&&(this.canTrackVelocity=HIe(this.current))}setPrevFrameValue(r=this.current){this.prevFrameValue=r,this.prevUpdatedAt=this.updatedAt}onChange(r){return this.on("change",r)}on(r,n){this.events[r]||(this.events[r]=new EE);const o=this.events[r].add(n);return r==="change"?()=>{o(),Dr.read(()=>{this.events.change.getSize()||this.stop()})}:o}clearListeners(){for(const r in this.events)this.events[r].clear()}attach(r,n){this.passiveEffect=r,this.stopPassiveEffect=n}set(r){this.passiveEffect?this.passiveEffect(r,this.updateAndNotify):this.updateAndNotify(r)}setWithVelocity(r,n,o){this.set(n),this.prev=void 0,this.prevFrameValue=r,this.prevUpdatedAt=this.updatedAt-o}jump(r,n=!0){this.updateAndNotify(r),this.prev=r,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(r){this.dependents||(this.dependents=new Set),this.dependents.add(r)}removeDependent(r){this.dependents&&this.dependents.delete(r)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const r=li.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||r-this.updatedAt>DX)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,DX);return RY(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(r){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=r(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function _p(e,r){return new UIe(e,r)}const{schedule:oC}=VY(queueMicrotask,!1),ll={x:!1,y:!1};function PX(){return ll.x||ll.y}function WIe(e){return e==="x"||e==="y"?ll[e]?null:(ll[e]=!0,()=>{ll[e]=!1}):ll.x||ll.y?null:(ll.x=ll.y=!0,()=>{ll.x=ll.y=!1})}function MX(e,r){const n=TX(e),o=new AbortController,i={passive:!0,...r,signal:o.signal};return[n,i,()=>o.abort()]}function NX(e){return!(e.pointerType==="touch"||PX())}function GIe(e,r,n={}){const[o,i,a]=MX(e,n),l=s=>{if(!NX(s))return;const{target:c}=s,d=r(c,s);if(typeof d!="function"||!c)return;const u=p=>{NX(p)&&(d(p),c.removeEventListener("pointerleave",u))};c.addEventListener("pointerleave",u,i)};return o.forEach(s=>{s.addEventListener("pointerenter",l,i)}),a}const BX=(e,r)=>r?e===r?!0:BX(e,r.parentElement):!1,iC=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,YIe=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function XIe(e){return YIe.has(e.tagName)||e.tabIndex!==-1}const W3=new WeakSet;function IX(e){return r=>{r.key==="Enter"&&e(r)}}function aC(e,r){e.dispatchEvent(new PointerEvent("pointer"+r,{isPrimary:!0,bubbles:!0}))}const KIe=(e,r)=>{const n=e.currentTarget;if(!n)return;const o=IX(()=>{if(W3.has(n))return;aC(n,"down");const i=IX(()=>{aC(n,"up")}),a=()=>aC(n,"cancel");n.addEventListener("keyup",i,r),n.addEventListener("blur",a,r)});n.addEventListener("keydown",o,r),n.addEventListener("blur",()=>n.removeEventListener("keydown",o),r)};function OX(e){return iC(e)&&!PX()}function ZIe(e,r,n={}){const[o,i,a]=MX(e,n),l=s=>{const c=s.currentTarget;if(!OX(s))return;W3.add(c);const d=r(c,s),u=(m,v)=>{window.removeEventListener("pointerup",p),window.removeEventListener("pointercancel",f),W3.has(c)&&W3.delete(c),OX(m)&&typeof d=="function"&&d(m,{success:v})},p=m=>{u(m,c===window||c===document||n.useGlobalTarget||BX(c,m.target))},f=m=>{u(m,!1)};window.addEventListener("pointerup",p,i),window.addEventListener("pointercancel",f,i)};return o.forEach(s=>{(n.useGlobalTarget?window:s).addEventListener("pointerdown",l,i),AX(s)&&(s.addEventListener("focus",c=>KIe(c,i)),!XIe(s)&&!s.hasAttribute("tabindex")&&(s.tabIndex=0))}),a}function lC(e){return CY(e)&&"ownerSVGElement"in e}function LX(e){return lC(e)&&e.tagName==="svg"}const to=e=>!!(e&&e.getVelocity),QIe=[...EX,Sn,zd],JIe=e=>QIe.find(SX(e));function sC(e){return typeof e=="object"&&!Array.isArray(e)}function FX(e,r,n,o){return typeof e=="string"&&sC(r)?TX(e,n,o):e instanceof NodeList?Array.from(e):Array.isArray(e)?e:[e]}function eOe(e,r,n){return e*(r+1)}function VX(e,r,n,o){return typeof r=="number"?r:r.startsWith("-")||r.startsWith("+")?Math.max(0,e+parseFloat(r)):r==="<"?n:r.startsWith("<")?Math.max(0,n+parseFloat(r.slice(1))):o.get(r)??e}function tOe(e,r,n){for(let o=0;or&&i.at{const j=lOe($),{delay:I=0,times:N=lX(j),type:L="keyframes",repeat:H,repeatType:P,repeatDelay:V=0,...B}=R;let{ease:F=r.ease||"easeOut",duration:q}=R;const G=typeof I=="function"?I(A,z):I,U=j.length,Y=JE(L)?L:i?.[L||"keyframes"];if(U<=2&&Y){let Z=100;if(U===2&&dOe(j)){const te=j[1]-j[0];Z=Math.abs(te)}const Q={...B};q!==void 0&&(Q.duration=al(q));const ie=nX(Q,Z,Y);F=ie.ease,q=ie.duration}q??(q=a);const K=p+G;N.length===1&&N[0]===0&&(N[1]=1);const O=N.length-j.length;if(O>0&&aX(N,O),j.length===1&&j.unshift(null),H){q=eOe(q,H);const Z=[...j],Q=[...N];F=Array.isArray(F)?[...F]:[F];const ie=[...F];for(let te=0;te{for(const w in m){const x=m[w];x.sort(oOe);const k=[],C=[],_=[];for(let R=0;Rtypeof e=="number",dOe=e=>e.every(cOe),Fy=new WeakMap,cC=e=>Array.isArray(e);function UX(e){const r=[{},{}];return e?.values.forEach((n,o)=>{r[0][o]=n.get(),r[1][o]=n.getVelocity()}),r}function dC(e,r,n,o){if(typeof r=="function"){const[i,a]=UX(o);r=r(n!==void 0?n:e.custom,i,a)}if(typeof r=="string"&&(r=e.variants&&e.variants[r]),typeof r=="function"){const[i,a]=UX(o);r=r(n!==void 0?n:e.custom,i,a)}return r}function tg(e,r,n){const o=e.getProps();return dC(o,r,n!==void 0?n:o.custom,e)}function uOe(e,r,n){e.hasValue(r)?e.getValue(r).set(n):e.addValue(r,_p(n))}function pOe(e){return cC(e)?e[e.length-1]||0:e}function hOe(e,r){const n=tg(e,r);let{transitionEnd:o={},transition:i={},...a}=n||{};a={...a,...o};for(const l in a){const s=pOe(a[l]);uOe(e,l,s)}}function fOe(e){return!!(to(e)&&e.add)}function uC(e,r){const n=e.getValue("willChange");if(fOe(n))return n.add(r);if(!n&&ic.WillChange){const o=new ic.WillChange("auto");e.addValue("willChange",o),o.add(r)}}const pC=e=>e.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),gOe="framerAppearId",WX="data-"+pC(gOe);function GX(e){return e.props[WX]}const mOe=e=>e!==null;function yOe(e,{repeat:r,repeatType:n="loop"},o){const i=e.filter(mOe),a=r&&n!=="loop"&&r%2===1?0:i.length-1;return i[a]}const vOe={type:"spring",stiffness:500,damping:25,restSpeed:10},bOe=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),xOe={type:"keyframes",duration:.8},wOe={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},kOe=(e,{keyframes:r})=>r.length>2?xOe:eg.has(e)?e.startsWith("scale")?bOe(r[1]):vOe:wOe;function _Oe({when:e,delay:r,delayChildren:n,staggerChildren:o,staggerDirection:i,repeat:a,repeatType:l,repeatDelay:s,from:c,elapsed:d,...u}){return!!Object.keys(u).length}const hC=(e,r,n,o={},i,a)=>l=>{const s=tC(o,e)||{},c=s.delay||o.delay||0;let{elapsed:d=0}=o;d=d-al(c);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:r.getVelocity(),...s,delay:-d,onUpdate:f=>{r.set(f),s.onUpdate&&s.onUpdate(f)},onComplete:()=>{l(),s.onComplete&&s.onComplete()},name:e,motionValue:r,element:a?void 0:i};_Oe(s)||Object.assign(u,kOe(e,u)),u.duration&&(u.duration=al(u.duration)),u.repeatDelay&&(u.repeatDelay=al(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let p=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(eC(u),u.delay===0&&(p=!0)),(ic.instantAnimations||ic.skipAnimations)&&(p=!0,eC(u),u.delay=0),u.allowFlatten=!s.type&&!s.ease,p&&!a&&r.get()!==void 0){const f=yOe(u.keyframes,s);if(f!==void 0){Dr.update(()=>{u.onUpdate(f),u.onComplete()});return}}return s.isSync?new HE(u):new zIe(u)};function SOe({protectedKeys:e,needsAnimating:r},n){const o=e.hasOwnProperty(n)&&r[n]!==!0;return r[n]=!1,o}function fC(e,r,{delay:n=0,transitionOverride:o,type:i}={}){let{transition:a=e.getDefaultTransition(),transitionEnd:l,...s}=r;o&&(a=o);const c=[],d=i&&e.animationState&&e.animationState.getState()[i];for(const u in s){const p=e.getValue(u,e.latestValues[u]??null),f=s[u];if(f===void 0||d&&SOe(d,u))continue;const m={delay:n,...tC(a||{},u)},v=p.get();if(v!==void 0&&!p.isAnimating&&!Array.isArray(f)&&f===v&&!m.velocity)continue;let w=!1;if(window.MotionHandoffAnimation){const k=GX(e);if(k){const C=window.MotionHandoffAnimation(k,u,Dr);C!==null&&(m.startTime=C,w=!0)}}uC(e,u),p.start(hC(u,p,f,e.shouldReduceMotion&&_X.has(u)?{type:!1}:m,e,w));const x=p.animation;x&&c.push(x)}return l&&Promise.all(c).then(()=>{Dr.update(()=>{l&&hOe(e,l)})}),c}function YX({top:e,left:r,right:n,bottom:o}){return{x:{min:r,max:n},y:{min:e,max:o}}}function EOe({x:e,y:r}){return{top:r.min,right:e.max,bottom:r.max,left:e.min}}function COe(e,r){if(!r)return e;const n=r({x:e.left,y:e.top}),o=r({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:o.y,right:o.x}}function gC(e){return e===void 0||e===1}function mC({scale:e,scaleX:r,scaleY:n}){return!gC(e)||!gC(r)||!gC(n)}function Sp(e){return mC(e)||XX(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function XX(e){return KX(e.x)||KX(e.y)}function KX(e){return e&&e!=="0%"}function G3(e,r,n){const o=e-n,i=r*o;return n+i}function ZX(e,r,n,o,i){return i!==void 0&&(e=G3(e,i,o)),G3(e,n,o)+r}function yC(e,r=0,n=1,o,i){e.min=ZX(e.min,r,n,o,i),e.max=ZX(e.max,r,n,o,i)}function QX(e,{x:r,y:n}){yC(e.x,r.translate,r.scale,r.originPoint),yC(e.y,n.translate,n.scale,n.originPoint)}const JX=.999999999999,eK=1.0000000000001;function $Oe(e,r,n,o=!1){const i=n.length;if(!i)return;r.x=r.y=1;let a,l;for(let s=0;sJX&&(r.x=1),r.yJX&&(r.y=1)}function rg(e,r){e.min=e.min+r,e.max=e.max+r}function tK(e,r,n,o,i=.5){const a=Lr(e.min,e.max,i);yC(e,r,n,a,o)}function ng(e,r){tK(e.x,r.x,r.scaleX,r.scale,r.originX),tK(e.y,r.y,r.scaleY,r.scale,r.originY)}function rK(e,r){return YX(COe(e.getBoundingClientRect(),r))}function ROe(e,r,n){const o=rK(e,n),{scroll:i}=r;return i&&(rg(o.x,i.offset.x),rg(o.y,i.offset.y)),o}const nK={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},og={};for(const e in nK)og[e]={isEnabled:r=>nK[e].some(n=>!!r[n])};const oK=()=>({translate:0,scale:1,origin:0,originPoint:0}),ig=()=>({x:oK(),y:oK()}),iK=()=>({min:0,max:0}),En=()=>({x:iK(),y:iK()}),vC=typeof window<"u",Y3={current:null},bC={current:!1};function aK(){if(bC.current=!0,!!vC)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),r=()=>Y3.current=e.matches;e.addEventListener("change",r),r()}else Y3.current=!1}function X3(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function Vy(e){return typeof e=="string"||Array.isArray(e)}const xC=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],wC=["initial",...xC];function K3(e){return X3(e.animate)||wC.some(r=>Vy(e[r]))}function lK(e){return!!(K3(e)||e.variants)}function zOe(e,r,n){for(const o in r){const i=r[o],a=n[o];if(to(i))e.addValue(o,i);else if(to(a))e.addValue(o,_p(i,{owner:e}));else if(a!==i)if(e.hasValue(o)){const l=e.getValue(o);l.liveStyle===!0?l.jump(i):l.hasAnimated||l.set(i)}else{const l=e.getStaticValue(o);e.addValue(o,_p(l!==void 0?l:i,{owner:e}))}}for(const o in n)r[o]===void 0&&e.removeValue(o);return r}const sK=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class cK{scrapeMotionValuesFromProps(r,n,o){return{}}constructor({parent:r,props:n,presenceContext:o,reducedMotionConfig:i,blockInitialAnimation:a,visualState:l},s={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=QE,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const f=li.now();this.renderScheduledAtthis.bindToMotionValue(o,n)),bC.current||aK(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:Y3.current,this.parent?.addChild(this),this.update(this.props,this.presenceContext)}unmount(){this.projection&&this.projection.unmount(),$d(this.notifyUpdate),$d(this.render),this.valueSubscriptions.forEach(r=>r()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const r in this.events)this.events[r].clear();for(const r in this.features){const n=this.features[r];n&&(n.unmount(),n.isMounted=!1)}this.current=null}addChild(r){this.children.add(r),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(r)}removeChild(r){this.children.delete(r),this.enteringChildren&&this.enteringChildren.delete(r)}bindToMotionValue(r,n){this.valueSubscriptions.has(r)&&this.valueSubscriptions.get(r)();const o=eg.has(r);o&&this.onBindTransform&&this.onBindTransform();const i=n.on("change",l=>{this.latestValues[r]=l,this.props.onUpdate&&Dr.preRender(this.notifyUpdate),o&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let a;window.MotionCheckAppearSync&&(a=window.MotionCheckAppearSync(this,r,n)),this.valueSubscriptions.set(r,()=>{i(),a&&a(),n.owner&&n.stop()})}sortNodePosition(r){return!this.current||!this.sortInstanceNodePosition||this.type!==r.type?0:this.sortInstanceNodePosition(this.current,r.current)}updateFeatures(){let r="animation";for(r in og){const n=og[r];if(!n)continue;const{isEnabled:o,Feature:i}=n;if(!this.features[r]&&i&&o(this.props)&&(this.features[r]=new i(this)),this.features[r]){const a=this.features[r];a.isMounted?a.update():(a.mount(),a.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):En()}getStaticValue(r){return this.latestValues[r]}setStaticValue(r,n){this.latestValues[r]=n}update(r,n){(r.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=r,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let o=0;on.variantChildren.delete(r)}addValue(r,n){const o=this.values.get(r);n!==o&&(o&&this.removeValue(r),this.bindToMotionValue(r,n),this.values.set(r,n),this.latestValues[r]=n.get())}removeValue(r){this.values.delete(r);const n=this.valueSubscriptions.get(r);n&&(n(),this.valueSubscriptions.delete(r)),delete this.latestValues[r],this.removeValueFromRenderState(r,this.renderState)}hasValue(r){return this.values.has(r)}getValue(r,n){if(this.props.values&&this.props.values[r])return this.props.values[r];let o=this.values.get(r);return o===void 0&&n!==void 0&&(o=_p(n===null?void 0:n,{owner:this}),this.addValue(r,o)),o}readValue(r,n){let o=this.latestValues[r]!==void 0||!this.current?this.latestValues[r]:this.getBaseTargetFromProps(this.props,r)??this.readValueFromInstance(this.current,r,this.options);return o!=null&&(typeof o=="string"&&(EY(o)||$Y(o))?o=parseFloat(o):!JIe(o)&&zd.test(n)&&(o=zX(r,n)),this.setBaseTarget(r,to(o)?o.get():o)),to(o)?o.get():o}setBaseTarget(r,n){this.baseTarget[r]=n}getBaseTarget(r){const{initial:n}=this.props;let o;if(typeof n=="string"||typeof n=="object"){const a=dC(this.props,n,this.presenceContext?.custom);a&&(o=a[r])}if(n&&o!==void 0)return o;const i=this.getBaseTargetFromProps(this.props,r);return i!==void 0&&!to(i)?i:this.initialValues[r]!==void 0&&o===void 0?void 0:this.baseTarget[r]}on(r,n){return this.events[r]||(this.events[r]=new EE),this.events[r].add(n)}notify(r,...n){this.events[r]&&this.events[r].notify(...n)}scheduleRenderMicrotask(){oC.render(this.render)}}class dK extends cK{constructor(){super(...arguments),this.KeyframeResolver=qIe}sortInstanceNodePosition(r,n){return r.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(r,n){return r.style?r.style[n]:void 0}removeValueFromRenderState(r,{vars:n,style:o}){delete n[r],delete o[r]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:r}=this.props;to(r)&&(this.childSubscription=r.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}const TOe={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},jOe=Jf.length;function AOe(e,r,n){let o="",i=!0;for(let a=0;a{if(!r.target)return e;if(typeof e=="string")if(_t.test(e))e=parseFloat(e);else return e;const n=pK(e,r.target.x),o=pK(e,r.target.y);return`${n}% ${o}%`}},DOe={correct:(e,{treeScale:r,projectionDelta:n})=>{const o=e,i=zd.parse(e);if(i.length>5)return o;const a=zd.createTransformer(e),l=typeof i[0]!="number"?1:0,s=n.x.scale*r.x,c=n.y.scale*r.y;i[0+l]/=s,i[1+l]/=c;const d=Lr(s,c,.5);return typeof i[2+l]=="number"&&(i[2+l]/=d),typeof i[3+l]=="number"&&(i[3+l]/=d),a(i)}},_C={borderRadius:{...qy,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:qy,borderTopRightRadius:qy,borderBottomLeftRadius:qy,borderBottomRightRadius:qy,boxShadow:DOe};function hK(e,{layout:r,layoutId:n}){return eg.has(e)||e.startsWith("origin")||(r||n!==void 0)&&(!!_C[e]||e==="opacity")}function SC(e,r,n){const{style:o}=e,i={};for(const a in o)(to(o[a])||r.style&&to(r.style[a])||hK(a,e)||n?.getValue(a)?.liveStyle!==void 0)&&(i[a]=o[a]);return i}function POe(e){return window.getComputedStyle(e)}class fK extends dK{constructor(){super(...arguments),this.type="html",this.renderInstance=uK}readValueFromInstance(r,n){if(eg.has(n))return this.projection?.isProjecting?GE(n):aIe(r,n);{const o=POe(r),i=(HY(n)?o.getPropertyValue(n):o[n])||0;return typeof i=="string"?i.trim():i}}measureInstanceViewportBox(r,{transformPagePoint:n}){return rK(r,n)}build(r,n,o){kC(r,n,o.transformTemplate)}scrapeMotionValuesFromProps(r,n,o){return SC(r,n,o)}}function MOe(e,r){return e in r}class NOe extends cK{constructor(){super(...arguments),this.type="object"}readValueFromInstance(r,n){if(MOe(n,r)){const o=r[n];if(typeof o=="string"||typeof o=="number")return o}}getBaseTargetFromProps(){}removeValueFromRenderState(r,n){delete n.output[r]}measureInstanceViewportBox(){return En()}build(r,n){Object.assign(r.output,n)}renderInstance(r,{output:n}){Object.assign(r,n)}sortInstanceNodePosition(){return 0}}const BOe={offset:"stroke-dashoffset",array:"stroke-dasharray"},IOe={offset:"strokeDashoffset",array:"strokeDasharray"};function OOe(e,r,n=1,o=0,i=!0){e.pathLength=1;const a=i?BOe:IOe;e[a.offset]=_t.transform(-o);const l=_t.transform(r),s=_t.transform(n);e[a.array]=`${l} ${s}`}function gK(e,{attrX:r,attrY:n,attrScale:o,pathLength:i,pathSpacing:a=1,pathOffset:l=0,...s},c,d,u){if(kC(e,s,d),c){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:p,style:f}=e;p.transform&&(f.transform=p.transform,delete p.transform),(f.transform||p.transformOrigin)&&(f.transformOrigin=p.transformOrigin??"50% 50%",delete p.transformOrigin),f.transform&&(f.transformBox=u?.transformBox??"fill-box",delete p.transformBox),r!==void 0&&(p.x=r),n!==void 0&&(p.y=n),o!==void 0&&(p.scale=o),i!==void 0&&OOe(p,i,a,l,!1)}const mK=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),yK=e=>typeof e=="string"&&e.toLowerCase()==="svg";function LOe(e,r,n,o){uK(e,r,void 0,o);for(const i in r.attrs)e.setAttribute(mK.has(i)?i:pC(i),r.attrs[i])}function vK(e,r,n){const o=SC(e,r,n);for(const i in e)if(to(e[i])||to(r[i])){const a=Jf.indexOf(i)!==-1?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i;o[a]=e[i]}return o}class bK extends dK{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=En}getBaseTargetFromProps(r,n){return r[n]}readValueFromInstance(r,n){if(eg.has(n)){const o=RX(n);return o&&o.default||0}return n=mK.has(n)?n:pC(n),r.getAttribute(n)}scrapeMotionValuesFromProps(r,n,o){return vK(r,n,o)}build(r,n,o){gK(r,n,this.isSVGTag,o.transformTemplate,o.style)}renderInstance(r,n,o,i){LOe(r,n,o,i)}mount(r){this.isSVGTag=yK(r.tagName),super.mount(r)}}function FOe(e){const r={presenceContext:null,props:{},visualState:{renderState:{transform:{},transformOrigin:{},style:{},vars:{},attrs:{}},latestValues:{}}},n=lC(e)&&!LX(e)?new bK(r):new fK(r);n.mount(e),Fy.set(e,n)}function VOe(e){const r={presenceContext:null,props:{},visualState:{renderState:{output:{}},latestValues:{}}},n=new NOe(r);n.mount(e),Fy.set(e,n)}function xK(e,r,n){const o=to(e)?e:_p(e);return o.start(hC("",o,r,n)),o.animation}function qOe(e,r){return to(e)||typeof e=="number"||typeof e=="string"&&!sC(r)}function wK(e,r,n,o){const i=[];if(qOe(e,r))i.push(xK(e,sC(r)&&r.default||r,n&&(n.default||n)));else{const a=FX(e,r,o),l=a.length;for(let s=0;s{o.push(...wK(l,i,a))}),o}function UOe(e){return Array.isArray(e)&&e.some(Array.isArray)}function WOe(e){function r(n,o,i){let a=[],l;if(UOe(n))a=HOe(n,o,e);else{const{onComplete:c,...d}=i||{};typeof c=="function"&&(l=c),a=wK(n,o,d,e)}const s=new jIe(a);return l&&s.finished.then(l),s}return r}const GOe=WOe();function YOe(e,r){const n=li.now(),o=({timestamp:i})=>{const a=i-n;a>=r&&($d(o),e(a-r))};return Dr.setup(o,!0),()=>$d(o)}const kK=(e,r)=>Math.abs(e-r);function XOe(e,r){const n=kK(e.x,r.x),o=kK(e.y,r.y);return Math.sqrt(n**2+o**2)}const Hy=S.createContext({});function ag(e){const r=S.useRef(null);return r.current===null&&(r.current=e()),r.current}const EC=vC?S.useLayoutEffect:S.useEffect,Z3=S.createContext(null),Ep=S.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function _K(e,r){if(typeof e=="function")return e(r);e!=null&&(e.current=r)}function KOe(...e){return r=>{let n=!1;const o=e.map(i=>{const a=_K(i,r);return!n&&typeof a=="function"&&(n=!0),a});if(n)return()=>{for(let i=0;i{const{width:d,height:u,top:p,left:f,right:m}=l.current;if(r||!a.current||!d||!u)return;const v=n==="left"?`left: ${f}`:`right: ${m}`;a.current.dataset.motionPopId=i;const w=document.createElement("style");s&&(w.nonce=s);const x=o??document.head;return x.appendChild(w),w.sheet&&w.sheet.insertRule(` [data-motion-pop-id="${i}"] { position: absolute !important; width: ${d}px !important; @@ -116,7 +116,7 @@ ${p.message}`)}if(u){i.push(...s.actions),a=s;break}}return a?[a]:void 0}get eve ${v}px !important; top: ${p}px !important; } - `),()=>{x.contains(w)&&x.removeChild(w)}},[r]),y.jsx(QOe,{isPresent:r,childRef:a,sizeRef:l,children:S.cloneElement(e,{ref:c})})}const eLe=({children:e,initial:r,isPresent:n,onExitComplete:o,custom:i,presenceAffectsLayout:a,mode:l,anchorX:s,root:c})=>{const d=am(tLe),u=S.useId();let p=!0,f=S.useMemo(()=>(p=!1,{id:u,initial:r,isPresent:n,custom:i,onExitComplete:g=>{d.set(g,!0);for(const v of d.values())if(!v)return;o&&o()},register:g=>(d.set(g,!1),()=>d.delete(g))}),[n,d,o]);return a&&p&&(f={...f}),S.useMemo(()=>{d.forEach((g,v)=>d.set(v,!1))},[n]),S.useEffect(()=>{!n&&!d.size&&o&&o()},[n]),l==="popLayout"&&(e=y.jsx(JOe,{isPresent:n,anchorX:s,root:c,children:e})),y.jsx(Z3.Provider,{value:f,children:e})};function tLe(){return new Map}function SK(e=!0){const r=S.useContext(Z3);if(r===null)return[!0,null];const{isPresent:n,onExitComplete:o,register:i}=r,a=S.useId();S.useEffect(()=>{if(e)return i(a)},[e]);const l=S.useCallback(()=>e&&o&&o(a),[a,o,e]);return!n&&o?[!1,l]:[!0]}const Q3=e=>e.key||"";function EK(e){const r=[];return S.Children.forEach(e,n=>{S.isValidElement(n)&&r.push(n)}),r}const Cn=({children:e,custom:r,initial:n=!0,onExitComplete:o,presenceAffectsLayout:i=!0,mode:a="sync",propagate:l=!1,anchorX:s="left",root:c})=>{const[d,u]=SK(l),p=S.useMemo(()=>EK(e),[e]),f=l&&!d?[]:p.map(Q3),g=S.useRef(!0),v=S.useRef(p),w=am(()=>new Map),[x,k]=S.useState(p),[C,_]=S.useState(p);EC(()=>{g.current=!1,v.current=p;for(let T=0;T{const A=Q3(T),z=l&&!d?!1:p===C||f.includes(A),j=()=>{if(w.has(A))w.set(A,!0);else return;let I=!0;w.forEach(P=>{P||(I=!1)}),I&&(R?.(),_(v.current),l&&u?.(),o&&o())};return y.jsx(eLe,{isPresent:z,initial:!g.current||n?void 0:!1,custom:r,presenceAffectsLayout:i,mode:a,root:c,onExitComplete:z?void 0:j,anchorX:s,children:T},A)})})},rLe=S.createContext(null);function nLe(){const e=S.useRef(!1);return EC(()=>(e.current=!0,()=>{e.current=!1}),[]),e}function oLe(){const e=nLe(),[r,n]=S.useState(0),o=S.useCallback(()=>{e.current&&n(r+1)},[r]);return[S.useCallback(()=>Dr.postRender(o),[o]),r]}const iLe=e=>!e.isLayoutDirty&&e.willUpdate(!1);function aLe(){const e=new Set,r=new WeakMap,n=()=>e.forEach(iLe);return{add:o=>{e.add(o),r.set(o,o.addEventListener("willUpdate",n))},remove:o=>{e.delete(o);const i=r.get(o);i&&(i(),r.delete(o)),n()},dirty:n}}const CK=e=>e===!0,lLe=e=>CK(e===!0)||e==="id",lm=({children:e,id:r,inherit:n=!0})=>{const o=S.useContext(Hy),i=S.useContext(rLe),[a,l]=oLe(),s=S.useRef(null),c=o.id||i;s.current===null&&(lLe(n)&&c&&(r=r?c+"-"+r:c),s.current={id:r,group:CK(n)&&o.group||aLe()});const d=S.useMemo(()=>({...s.current,forceRender:a}),[l]);return y.jsx(Hy.Provider,{value:d,children:e})},CC=S.createContext({strict:!1});function $C(e){for(const r in e)om[r]={...om[r],...e[r]}}function sLe({children:e,features:r,strict:n=!1}){const[,o]=S.useState(!RC(r)),i=S.useRef(void 0);if(!RC(r)){const{renderer:a,...l}=r;i.current=a,$C(l)}return S.useEffect(()=>{RC(r)&&r().then(({renderer:a,...l})=>{$C(l),i.current=a,o(!0)})},[]),y.jsx(CC.Provider,{value:{renderer:i.current,strict:n},children:e})}function RC(e){return typeof e=="function"}const cLe=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function J3(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||cLe.has(e)}let $K=e=>!J3(e);function RK(e){typeof e=="function"&&($K=r=>r.startsWith("on")?!J3(r):e(r))}try{RK(require("@emotion/is-prop-valid").default)}catch{}function dLe(e,r,n){const o={};for(const i in e)i==="values"&&typeof e.values=="object"||($K(i)||n===!0&&J3(i)||!r&&!J3(i)||e.draggable&&i.startsWith("onDrag"))&&(o[i]=e[i]);return o}function uLe({children:e,isValidProp:r,...n}){r&&RK(r),n={...S.useContext(Ep),...n},n.isStatic=am(()=>n.isStatic);const o=S.useMemo(()=>n,[JSON.stringify(n.transition),n.transformPagePoint,n.reducedMotion]);return y.jsx(Ep.Provider,{value:o,children:e})}const e2=S.createContext({});function pLe(e,r){if(K3(e)){const{initial:n,animate:o}=e;return{initial:n===!1||Vy(n)?n:void 0,animate:Vy(o)?o:void 0}}return e.inherit!==!1?r:{}}function hLe(e){const{initial:r,animate:n}=pLe(e,S.useContext(e2));return S.useMemo(()=>({initial:r,animate:n}),[zK(r),zK(n)])}function zK(e){return Array.isArray(e)?e.join(" "):e}const zC=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function TK(e,r,n){for(const o in r)!to(r[o])&&!hK(o,n)&&(e[o]=r[o])}function fLe({transformTemplate:e},r){return S.useMemo(()=>{const n=zC();return kC(n,r,e),Object.assign({},n.vars,n.style)},[r])}function mLe(e,r){const n=e.style||{},o={};return TK(o,n,e),Object.assign(o,fLe(e,r)),o}function gLe(e,r){const n={},o=mLe(e,r);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,o.userSelect=o.WebkitUserSelect=o.WebkitTouchCallout="none",o.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=o,n}const jK=()=>({...zC(),attrs:{}});function yLe(e,r,n,o){const i=S.useMemo(()=>{const a=jK();return mK(a,r,yK(o),e.transformTemplate,e.style),{...a.attrs,style:{...a.style}}},[r]);if(e.style){const a={};TK(a,e.style,e),i.style={...a,...i.style}}return i}const vLe=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function TC(e){return typeof e!="string"||e.includes("-")?!1:!!(vLe.indexOf(e)>-1||/[A-Z]/u.test(e))}function bLe(e,r,n,{latestValues:o},i,a=!1){const l=(TC(e)?yLe:gLe)(r,o,i,e),s=dLe(r,typeof e=="string",a),c=e!==S.Fragment?{...s,...l,ref:n}:{},{children:d}=r,u=S.useMemo(()=>to(d)?d.get():d,[d]);return S.createElement(e,{...c,children:u})}function t2(e){return to(e)?e.get():e}function xLe({scrapeMotionValuesFromProps:e,createRenderState:r},n,o,i){return{latestValues:wLe(n,o,i,e),renderState:r()}}function wLe(e,r,n,o){const i={},a=o(e,{});for(const f in a)i[f]=t2(a[f]);let{initial:l,animate:s}=e;const c=K3(e),d=lK(e);r&&d&&!c&&e.inherit!==!1&&(l===void 0&&(l=r.initial),s===void 0&&(s=r.animate));let u=n?n.initial===!1:!1;u=u||l===!1;const p=u?s:l;if(p&&typeof p!="boolean"&&!X3(p)){const f=Array.isArray(p)?p:[p];for(let g=0;g(r,n)=>{const o=S.useContext(e2),i=S.useContext(Z3),a=()=>xLe(e,r,o,i);return n?a():am(a)},kLe=AK({scrapeMotionValuesFromProps:SC,createRenderState:zC}),_Le=AK({scrapeMotionValuesFromProps:vK,createRenderState:jK}),SLe=Symbol.for("motionComponentSymbol");function sm(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function ELe(e,r,n){return S.useCallback(o=>{o&&e.onMount&&e.onMount(o),r&&(o?r.mount(o):r.unmount()),n&&(typeof n=="function"?n(o):sm(n)&&(n.current=o))},[r])}const DK=S.createContext({});function CLe(e,r,n,o,i){const{visualElement:a}=S.useContext(e2),l=S.useContext(CC),s=S.useContext(Z3),c=S.useContext(Ep).reducedMotion,d=S.useRef(null);o=o||l.renderer,!d.current&&o&&(d.current=o(e,{visualState:r,parent:a,props:n,presenceContext:s,blockInitialAnimation:s?s.initial===!1:!1,reducedMotionConfig:c}));const u=d.current,p=S.useContext(DK);u&&!u.projection&&i&&(u.type==="html"||u.type==="svg")&&$Le(d.current,n,i,p);const f=S.useRef(!1);S.useInsertionEffect(()=>{u&&f.current&&u.update(n,s)});const g=n[WX],v=S.useRef(!!g&&!window.MotionHandoffIsComplete?.(g)&&window.MotionHasOptimisedAnimation?.(g));return EC(()=>{u&&(f.current=!0,window.MotionIsMounted=!0,u.updateFeatures(),u.scheduleRenderMicrotask(),v.current&&u.animationState&&u.animationState.animateChanges())}),S.useEffect(()=>{u&&(!v.current&&u.animationState&&u.animationState.animateChanges(),v.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(g)}),v.current=!1),u.enteringChildren=void 0)}),u}function $Le(e,r,n,o){const{layoutId:i,layout:a,drag:l,dragConstraints:s,layoutScroll:c,layoutRoot:d,layoutCrossfade:u}=r;e.projection=new n(e.latestValues,r["data-framer-portal-id"]?void 0:MK(e.parent)),e.projection.setOptions({layoutId:i,layout:a,alwaysMeasureLayout:!!l||s&&sm(s),visualElement:e,animationType:typeof a=="string"?a:"both",initialPromotionConfig:o,crossfade:u,layoutScroll:c,layoutRoot:d})}function MK(e){if(e)return e.options.allowProjection!==!1?e.projection:MK(e.parent)}function r2(e,{forwardMotionProps:r=!1}={},n,o){n&&$C(n);const i=TC(e)?_Le:kLe;function a(s,c){let d;const u={...S.useContext(Ep),...s,layoutId:RLe(s)},{isStatic:p}=u,f=hLe(s),g=i(s,p);if(!p&&vC){zLe();const v=TLe(u);d=v.MeasureLayout,f.visualElement=CLe(e,g,u,o,v.ProjectionNode)}return y.jsxs(e2.Provider,{value:f,children:[d&&f.visualElement?y.jsx(d,{visualElement:f.visualElement,...u}):null,bLe(e,s,ELe(g,f.visualElement,c),g,p,r)]})}a.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const l=S.forwardRef(a);return l[SLe]=e,l}function RLe({layoutId:e}){const r=S.useContext(Hy).id;return r&&e!==void 0?r+"-"+e:e}function zLe(e,r){S.useContext(CC).strict}function TLe(e){const{drag:r,layout:n}=om;if(!r&&!n)return{};const o={...r,...n};return{MeasureLayout:r?.isEnabled(e)||n?.isEnabled(e)?o.MeasureLayout:void 0,ProjectionNode:o.ProjectionNode}}function jLe(e,r){if(typeof Proxy>"u")return r2;const n=new Map,o=(a,l)=>r2(a,l,e,r),i=(a,l)=>o(a,l);return new Proxy(i,{get:(a,l)=>l==="create"?o:(n.has(l)||n.set(l,r2(l,void 0,e,r)),n.get(l))})}const ma=jLe(),ALe=(e,r)=>TC(e)?new bK(r):new fK(r,{allowProjection:e!==S.Fragment});function NK(e,r,n,o=0,i=1){const a=Array.from(e).sort((c,d)=>c.sortNodePosition(d)).indexOf(r),l=e.size,s=(l-1)*o;return typeof n=="function"?n(a,l):i===1?a*o:s-a*o}function jC(e,r,n={}){const o=tm(e,r,n.type==="exit"?e.presenceContext?.custom:void 0);let{transition:i=e.getDefaultTransition()||{}}=o||{};n.transitionOverride&&(i=n.transitionOverride);const a=o?()=>Promise.all(fC(e,o,n)):()=>Promise.resolve(),l=e.variantChildren&&e.variantChildren.size?(c=0)=>{const{delayChildren:d=0,staggerChildren:u,staggerDirection:p}=i;return DLe(e,r,c,d,u,p,n)}:()=>Promise.resolve(),{when:s}=i;if(s){const[c,d]=s==="beforeChildren"?[a,l]:[l,a];return c().then(()=>d())}else return Promise.all([a(),l(n.delay)])}function DLe(e,r,n=0,o=0,i=0,a=1,l){const s=[];for(const c of e.variantChildren)c.notify("AnimationStart",r),s.push(jC(c,r,{...l,delay:n+(typeof o=="function"?0:o)+NK(e.variantChildren,c,o,i,a)}).then(()=>c.notify("AnimationComplete",r)));return Promise.all(s)}function MLe(e,r,n={}){e.notify("AnimationStart",r);let o;if(Array.isArray(r)){const i=r.map(a=>jC(e,a,n));o=Promise.all(i)}else if(typeof r=="string")o=jC(e,r,n);else{const i=typeof r=="function"?tm(e,r,n.custom):r;o=Promise.all(fC(e,i,n))}return o.then(()=>{e.notify("AnimationComplete",r)})}function PK(e,r){if(!Array.isArray(r))return!1;const n=r.length;if(n!==e.length)return!1;for(let o=0;oPromise.all(r.map(({animation:n,options:o})=>MLe(e,n,o)))}function OLe(e){let r=ILe(e),n=IK(),o=!0;const i=c=>(d,u)=>{const p=tm(e,u,c==="exit"?e.presenceContext?.custom:void 0);if(p){const{transition:f,transitionEnd:g,...v}=p;d={...d,...v,...g}}return d};function a(c){r=c(e)}function l(c){const{props:d}=e,u=BK(e.parent)||{},p=[],f=new Set;let g={},v=1/0;for(let x=0;xv&&$,j=!1;const I=Array.isArray(_)?_:[_];let P=I.reduce(i(k),{});R===!1&&(P={});const{prevResolvedValues:L={}}=C,H={...L,...P},M=B=>{z=!0,f.has(B)&&(j=!0,f.delete(B)),C.needsAnimating[B]=!0;const F=e.getValue(B);F&&(F.liveStyle=!1)};for(const B in H){const F=P[B],q=L[B];if(g.hasOwnProperty(B))continue;let G=!1;cC(F)&&cC(q)?G=!PK(F,q):G=F!==q,G?F!=null?M(B):f.add(B):F!==void 0&&f.has(B)?M(B):C.protectedKeys[B]=!0}C.prevProp=_,C.prevResolvedValues=P,C.isActive&&(g={...g,...P}),o&&e.blockInitialAnimation&&(z=!1);const V=T&&A;z&&(!V||j)&&p.push(...I.map(B=>{const F={type:k};if(typeof B=="string"&&o&&!V&&e.manuallyAnimateOnMount&&e.parent){const{parent:q}=e,G=tm(q,B);if(q.enteringChildren&&G){const{delayChildren:U}=G.transition||{};F.delay=NK(q.enteringChildren,e,U)}}return{animation:B,options:F}}))}if(f.size){const x={};if(typeof d.initial!="boolean"){const k=tm(e,Array.isArray(d.initial)?d.initial[0]:d.initial);k&&k.transition&&(x.transition=k.transition)}f.forEach(k=>{const C=e.getBaseTarget(k),_=e.getValue(k);_&&(_.liveStyle=!0),x[k]=C??null}),p.push({animation:x})}let w=!!p.length;return o&&(d.initial===!1||d.initial===d.animate)&&!e.manuallyAnimateOnMount&&(w=!1),o=!1,w?r(p):Promise.resolve()}function s(c,d){if(n[c].isActive===d)return Promise.resolve();e.variantChildren?.forEach(p=>p.animationState?.setActive(c,d)),n[c].isActive=d;const u=l(c);for(const p in n)n[p].protectedKeys={};return u}return{animateChanges:l,setActive:s,setAnimateFunction:a,getState:()=>n,reset:()=>{n=IK()}}}function LLe(e,r){return typeof r=="string"?r!==e:Array.isArray(r)?!PK(r,e):!1}function Cp(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function IK(){return{animate:Cp(!0),whileInView:Cp(),whileHover:Cp(),whileTap:Cp(),whileDrag:Cp(),whileFocus:Cp(),exit:Cp()}}class Td{constructor(r){this.isMounted=!1,this.node=r}update(){}}class FLe extends Td{constructor(r){super(r),r.animationState||(r.animationState=OLe(r))}updateAnimationControlsSubscription(){const{animate:r}=this.node.getProps();X3(r)&&(this.unmountControls=r.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:r}=this.node.getProps(),{animate:n}=this.node.prevProps||{};r!==n&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}}let VLe=0;class qLe extends Td{constructor(){super(...arguments),this.id=VLe++}update(){if(!this.node.presenceContext)return;const{isPresent:r,onExitComplete:n}=this.node.presenceContext,{isPresent:o}=this.node.prevPresenceContext||{};if(!this.node.animationState||r===o)return;const i=this.node.animationState.setActive("exit",!r);n&&!r&&i.then(()=>{n(this.id)})}mount(){const{register:r,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),r&&(this.unmount=r(this.id))}unmount(){}}const HLe={animation:{Feature:FLe},exit:{Feature:qLe}};function Uy(e,r,n,o={passive:!0}){return e.addEventListener(r,n,o),()=>e.removeEventListener(r,n)}function Wy(e){return{point:{x:e.pageX,y:e.pageY}}}const ULe=e=>r=>iC(r)&&e(r,Wy(r));function Gy(e,r,n,o){return Uy(e,r,ULe(n),o)}const OK=1e-4,WLe=1-OK,GLe=1+OK,LK=.01,YLe=0-LK,XLe=0+LK;function Vo(e){return e.max-e.min}function KLe(e,r,n){return Math.abs(e-r)<=n}function FK(e,r,n,o=.5){e.origin=o,e.originPoint=Lr(r.min,r.max,e.origin),e.scale=Vo(n)/Vo(r),e.translate=Lr(n.min,n.max,e.origin)-e.originPoint,(e.scale>=WLe&&e.scale<=GLe||isNaN(e.scale))&&(e.scale=1),(e.translate>=YLe&&e.translate<=XLe||isNaN(e.translate))&&(e.translate=0)}function Yy(e,r,n,o){FK(e.x,r.x,n.x,o?o.originX:void 0),FK(e.y,r.y,n.y,o?o.originY:void 0)}function VK(e,r,n){e.min=n.min+r.min,e.max=e.min+Vo(r)}function ZLe(e,r,n){VK(e.x,r.x,n.x),VK(e.y,r.y,n.y)}function qK(e,r,n){e.min=r.min-n.min,e.max=e.min+Vo(r)}function n2(e,r,n){qK(e.x,r.x,n.x),qK(e.y,r.y,n.y)}function ga(e){return[e("x"),e("y")]}const HK=({current:e})=>e?e.ownerDocument.defaultView:null;class UK{constructor(r,n,{transformPagePoint:o,contextWindow:i=window,dragSnapToOrigin:a=!1,distanceThreshold:l=3}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const f=DC(this.lastMoveEventInfo,this.history),g=this.startEvent!==null,v=XOe(f.offset,{x:0,y:0})>=this.distanceThreshold;if(!g&&!v)return;const{point:w}=f,{timestamp:x}=so;this.history.push({...w,timestamp:x});const{onStart:k,onMove:C}=this.handlers;g||(k&&k(this.lastMoveEvent,f),this.startEvent=this.lastMoveEvent),C&&C(this.lastMoveEvent,f)},this.handlePointerMove=(f,g)=>{this.lastMoveEvent=f,this.lastMoveEventInfo=AC(g,this.transformPagePoint),Dr.update(this.updatePoint,!0)},this.handlePointerUp=(f,g)=>{this.end();const{onEnd:v,onSessionEnd:w,resumeAnimation:x}=this.handlers;if(this.dragSnapToOrigin&&x&&x(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const k=DC(f.type==="pointercancel"?this.lastMoveEventInfo:AC(g,this.transformPagePoint),this.history);this.startEvent&&v&&v(f,k),w&&w(f,k)},!iC(r))return;this.dragSnapToOrigin=a,this.handlers=n,this.transformPagePoint=o,this.distanceThreshold=l,this.contextWindow=i||window;const s=Wy(r),c=AC(s,this.transformPagePoint),{point:d}=c,{timestamp:u}=so;this.history=[{...d,timestamp:u}];const{onSessionStart:p}=n;p&&p(r,DC(c,this.history)),this.removeListeners=Ay(Gy(this.contextWindow,"pointermove",this.handlePointerMove),Gy(this.contextWindow,"pointerup",this.handlePointerUp),Gy(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(r){this.handlers=r}end(){this.removeListeners&&this.removeListeners(),$d(this.updatePoint)}}function AC(e,r){return r?{point:r(e.point)}:e}function WK(e,r){return{x:e.x-r.x,y:e.y-r.y}}function DC({point:e},r){return{point:e,delta:WK(e,GK(r)),offset:WK(e,QLe(r)),velocity:JLe(r,.1)}}function QLe(e){return e[0]}function GK(e){return e[e.length-1]}function JLe(e,r){if(e.length<2)return{x:0,y:0};let n=e.length-1,o=null;const i=GK(e);for(;n>=0&&(o=e[n],!(i.timestamp-o.timestamp>al(r)));)n--;if(!o)return{x:0,y:0};const a=fa(i.timestamp-o.timestamp);if(a===0)return{x:0,y:0};const l={x:(i.x-o.x)/a,y:(i.y-o.y)/a};return l.x===1/0&&(l.x=0),l.y===1/0&&(l.y=0),l}function eFe(e,{min:r,max:n},o){return r!==void 0&&en&&(e=o?Lr(n,e,o.max):Math.min(e,n)),e}function YK(e,r,n){return{min:r!==void 0?e.min+r:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function tFe(e,{top:r,left:n,bottom:o,right:i}){return{x:YK(e.x,n,i),y:YK(e.y,r,o)}}function XK(e,r){let n=r.min-e.min,o=r.max-e.max;return r.max-r.mino?n=Kf(r.min,r.max-o,e.min):o>i&&(n=Kf(e.min,e.max-i,r.min)),oc(0,1,n)}function oFe(e,r){const n={};return r.min!==void 0&&(n.min=r.min-e.min),r.max!==void 0&&(n.max=r.max-e.min),n}const MC=.35;function iFe(e=MC){return e===!1?e=0:e===!0&&(e=MC),{x:KK(e,"left","right"),y:KK(e,"top","bottom")}}function KK(e,r,n){return{min:ZK(e,r),max:ZK(e,n)}}function ZK(e,r){return typeof e=="number"?e:e[r]||0}const aFe=new WeakMap;class lFe{constructor(r){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=En(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=r}start(r,{snapToCursor:n=!1,distanceThreshold:o}={}){const{presenceContext:i}=this.visualElement;if(i&&i.isPresent===!1)return;const a=p=>{const{dragSnapToOrigin:f}=this.getProps();f?this.pauseAnimation():this.stopAnimation(),n&&this.snapToCursor(Wy(p).point)},l=(p,f)=>{const{drag:g,dragPropagation:v,onDragStart:w}=this.getProps();if(g&&!v&&(this.openDragLock&&this.openDragLock(),this.openDragLock=WIe(g),!this.openDragLock))return;this.latestPointerEvent=p,this.latestPanInfo=f,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),ga(k=>{let C=this.getAxisMotionValue(k).get()||0;if(os.test(C)){const{projection:_}=this.visualElement;if(_&&_.layout){const $=_.layout.layoutBox[k];$&&(C=Vo($)*(parseFloat(C)/100))}}this.originPoint[k]=C}),w&&Dr.postRender(()=>w(p,f)),uC(this.visualElement,"transform");const{animationState:x}=this.visualElement;x&&x.setActive("whileDrag",!0)},s=(p,f)=>{this.latestPointerEvent=p,this.latestPanInfo=f;const{dragPropagation:g,dragDirectionLock:v,onDirectionLock:w,onDrag:x}=this.getProps();if(!g&&!this.openDragLock)return;const{offset:k}=f;if(v&&this.currentDirection===null){this.currentDirection=sFe(k),this.currentDirection!==null&&w&&w(this.currentDirection);return}this.updateAxis("x",f.point,k),this.updateAxis("y",f.point,k),this.visualElement.render(),x&&x(p,f)},c=(p,f)=>{this.latestPointerEvent=p,this.latestPanInfo=f,this.stop(p,f),this.latestPointerEvent=null,this.latestPanInfo=null},d=()=>ga(p=>this.getAnimationState(p)==="paused"&&this.getAxisMotionValue(p).animation?.play()),{dragSnapToOrigin:u}=this.getProps();this.panSession=new UK(r,{onSessionStart:a,onStart:l,onMove:s,onSessionEnd:c,resumeAnimation:d},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:o,contextWindow:HK(this.visualElement)})}stop(r,n){const o=r||this.latestPointerEvent,i=n||this.latestPanInfo,a=this.isDragging;if(this.cancel(),!a||!i||!o)return;const{velocity:l}=i;this.startAnimation(l);const{onDragEnd:s}=this.getProps();s&&Dr.postRender(()=>s(o,i))}cancel(){this.isDragging=!1;const{projection:r,animationState:n}=this.visualElement;r&&(r.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:o}=this.getProps();!o&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}updateAxis(r,n,o){const{drag:i}=this.getProps();if(!o||!o2(r,i,this.currentDirection))return;const a=this.getAxisMotionValue(r);let l=this.originPoint[r]+o[r];this.constraints&&this.constraints[r]&&(l=eFe(l,this.constraints[r],this.elastic[r])),a.set(l)}resolveConstraints(){const{dragConstraints:r,dragElastic:n}=this.getProps(),o=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):this.visualElement.projection?.layout,i=this.constraints;r&&sm(r)?this.constraints||(this.constraints=this.resolveRefConstraints()):r&&o?this.constraints=tFe(o.layoutBox,r):this.constraints=!1,this.elastic=iFe(n),i!==this.constraints&&o&&this.constraints&&!this.hasMutatedConstraints&&ga(a=>{this.constraints!==!1&&this.getAxisMotionValue(a)&&(this.constraints[a]=oFe(o.layoutBox[a],this.constraints[a]))})}resolveRefConstraints(){const{dragConstraints:r,onMeasureDragConstraints:n}=this.getProps();if(!r||!sm(r))return!1;const o=r.current,{projection:i}=this.visualElement;if(!i||!i.layout)return!1;const a=ROe(o,i.root,this.visualElement.getTransformPagePoint());let l=rFe(i.layout.layoutBox,a);if(n){const s=n(EOe(l));this.hasMutatedConstraints=!!s,s&&(l=YX(s))}return l}startAnimation(r){const{drag:n,dragMomentum:o,dragElastic:i,dragTransition:a,dragSnapToOrigin:l,onDragTransitionEnd:s}=this.getProps(),c=this.constraints||{},d=ga(u=>{if(!o2(u,n,this.currentDirection))return;let p=c&&c[u]||{};l&&(p={min:0,max:0});const f=i?200:1e6,g=i?40:1e7,v={type:"inertia",velocity:o?r[u]:0,bounceStiffness:f,bounceDamping:g,timeConstant:750,restDelta:1,restSpeed:10,...a,...p};return this.startAxisValueAnimation(u,v)});return Promise.all(d).then(s)}startAxisValueAnimation(r,n){const o=this.getAxisMotionValue(r);return uC(this.visualElement,r),o.start(hC(r,o,0,n,this.visualElement,!1))}stopAnimation(){ga(r=>this.getAxisMotionValue(r).stop())}pauseAnimation(){ga(r=>this.getAxisMotionValue(r).animation?.pause())}getAnimationState(r){return this.getAxisMotionValue(r).animation?.state}getAxisMotionValue(r){const n=`_drag${r.toUpperCase()}`,o=this.visualElement.getProps();return o[n]||this.visualElement.getValue(r,(o.initial?o.initial[r]:void 0)||0)}snapToCursor(r){ga(n=>{const{drag:o}=this.getProps();if(!o2(n,o,this.currentDirection))return;const{projection:i}=this.visualElement,a=this.getAxisMotionValue(n);if(i&&i.layout){const{min:l,max:s}=i.layout.layoutBox[n];a.set(r[n]-Lr(l,s,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:r,dragConstraints:n}=this.getProps(),{projection:o}=this.visualElement;if(!sm(n)||!o||!this.constraints)return;this.stopAnimation();const i={x:0,y:0};ga(l=>{const s=this.getAxisMotionValue(l);if(s&&this.constraints!==!1){const c=s.get();i[l]=nFe({min:c,max:c},this.constraints[l])}});const{transformTemplate:a}=this.visualElement.getProps();this.visualElement.current.style.transform=a?a({},""):"none",o.root&&o.root.updateScroll(),o.updateLayout(),this.resolveConstraints(),ga(l=>{if(!o2(l,r,null))return;const s=this.getAxisMotionValue(l),{min:c,max:d}=this.constraints[l];s.set(Lr(c,d,i[l]))})}addListeners(){if(!this.visualElement.current)return;aFe.set(this.visualElement,this);const r=this.visualElement.current,n=Gy(r,"pointerdown",c=>{const{drag:d,dragListener:u=!0}=this.getProps();d&&u&&this.start(c)}),o=()=>{const{dragConstraints:c}=this.getProps();sm(c)&&c.current&&(this.constraints=this.resolveRefConstraints())},{projection:i}=this.visualElement,a=i.addEventListener("measure",o);i&&!i.layout&&(i.root&&i.root.updateScroll(),i.updateLayout()),Dr.read(o);const l=Uy(window,"resize",()=>this.scalePositionWithinConstraints()),s=i.addEventListener("didUpdate",(({delta:c,hasLayoutChanged:d})=>{this.isDragging&&d&&(ga(u=>{const p=this.getAxisMotionValue(u);p&&(this.originPoint[u]+=c[u].translate,p.set(p.get()+c[u].translate))}),this.visualElement.render())}));return()=>{l(),n(),a(),s&&s()}}getProps(){const r=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:o=!1,dragPropagation:i=!1,dragConstraints:a=!1,dragElastic:l=MC,dragMomentum:s=!0}=r;return{...r,drag:n,dragDirectionLock:o,dragPropagation:i,dragConstraints:a,dragElastic:l,dragMomentum:s}}}function o2(e,r,n){return(r===!0||r===e)&&(n===null||n===e)}function sFe(e,r=10){let n=null;return Math.abs(e.y)>r?n="y":Math.abs(e.x)>r&&(n="x"),n}class cFe extends Td{constructor(r){super(r),this.removeGroupControls=ha,this.removeListeners=ha,this.controls=new lFe(r)}mount(){const{dragControls:r}=this.node.getProps();r&&(this.removeGroupControls=r.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||ha}unmount(){this.removeGroupControls(),this.removeListeners()}}const QK=e=>(r,n)=>{e&&Dr.postRender(()=>e(r,n))};class dFe extends Td{constructor(){super(...arguments),this.removePointerDownListener=ha}onPointerDown(r){this.session=new UK(r,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:HK(this.node)})}createPanHandlers(){const{onPanSessionStart:r,onPanStart:n,onPan:o,onPanEnd:i}=this.node.getProps();return{onSessionStart:QK(r),onStart:QK(n),onMove:o,onEnd:(a,l)=>{delete this.session,i&&Dr.postRender(()=>i(a,l))}}}mount(){this.removePointerDownListener=Gy(this.node.current,"pointerdown",r=>this.onPointerDown(r))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}const i2={hasAnimatedSinceResize:!0,hasEverUpdated:!1};let NC=!1;class uFe extends S.Component{componentDidMount(){const{visualElement:r,layoutGroup:n,switchLayoutGroup:o,layoutId:i}=this.props,{projection:a}=r;a&&(n.group&&n.group.add(a),o&&o.register&&i&&o.register(a),NC&&a.root.didUpdate(),a.addEventListener("animationComplete",()=>{this.safeToRemove()}),a.setOptions({...a.options,onExitComplete:()=>this.safeToRemove()})),i2.hasEverUpdated=!0}getSnapshotBeforeUpdate(r){const{layoutDependency:n,visualElement:o,drag:i,isPresent:a}=this.props,{projection:l}=o;return l&&(l.isPresent=a,NC=!0,i||r.layoutDependency!==n||n===void 0||r.isPresent!==a?l.willUpdate():this.safeToRemove(),r.isPresent!==a&&(a?l.promote():l.relegate()||Dr.postRender(()=>{const s=l.getStack();(!s||!s.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:r}=this.props.visualElement;r&&(r.root.didUpdate(),oC.postRender(()=>{!r.currentAnimation&&r.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:r,layoutGroup:n,switchLayoutGroup:o}=this.props,{projection:i}=r;NC=!0,i&&(i.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(i),o&&o.deregister&&o.deregister(i))}safeToRemove(){const{safeToRemove:r}=this.props;r&&r()}render(){return null}}function JK(e){const[r,n]=SK(),o=S.useContext(Hy);return y.jsx(uFe,{...e,layoutGroup:o,switchLayoutGroup:S.useContext(DK),isPresent:r,safeToRemove:n})}const pFe=(e,r)=>e.depth-r.depth;class hFe{constructor(){this.children=[],this.isDirty=!1}add(r){kE(this.children,r),this.isDirty=!0}remove(r){L3(this.children,r),this.isDirty=!0}forEach(r){this.isDirty&&this.children.sort(pFe),this.isDirty=!1,this.children.forEach(r)}}const eZ=["TopLeft","TopRight","BottomLeft","BottomRight"],fFe=eZ.length,tZ=e=>typeof e=="string"?parseFloat(e):e,rZ=e=>typeof e=="number"||_t.test(e);function mFe(e,r,n,o,i,a){i?(e.opacity=Lr(0,n.opacity??1,gFe(o)),e.opacityExit=Lr(r.opacity??1,0,yFe(o))):a&&(e.opacity=Lr(r.opacity??1,n.opacity??1,o));for(let l=0;lor?1:n(Kf(e,r,o))}function iZ(e,r){e.min=r.min,e.max=r.max}function sl(e,r){iZ(e.x,r.x),iZ(e.y,r.y)}function aZ(e,r){e.translate=r.translate,e.scale=r.scale,e.originPoint=r.originPoint,e.origin=r.origin}function lZ(e,r,n,o,i){return e-=r,e=G3(e,1/n,o),i!==void 0&&(e=G3(e,1/i,o)),e}function vFe(e,r=0,n=1,o=.5,i,a=e,l=e){if(os.test(r)&&(r=parseFloat(r),r=Lr(l.min,l.max,r/100)-l.min),typeof r!="number")return;let s=Lr(a.min,a.max,o);e===a&&(s-=r),e.min=lZ(e.min,r,n,s,i),e.max=lZ(e.max,r,n,s,i)}function sZ(e,r,[n,o,i],a,l){vFe(e,r[n],r[o],r[i],r.scale,a,l)}const bFe=["x","scaleX","originX"],xFe=["y","scaleY","originY"];function cZ(e,r,n,o){sZ(e.x,r,bFe,n?n.x:void 0,o?o.x:void 0),sZ(e.y,r,xFe,n?n.y:void 0,o?o.y:void 0)}function dZ(e){return e.translate===0&&e.scale===1}function uZ(e){return dZ(e.x)&&dZ(e.y)}function pZ(e,r){return e.min===r.min&&e.max===r.max}function wFe(e,r){return pZ(e.x,r.x)&&pZ(e.y,r.y)}function hZ(e,r){return Math.round(e.min)===Math.round(r.min)&&Math.round(e.max)===Math.round(r.max)}function fZ(e,r){return hZ(e.x,r.x)&&hZ(e.y,r.y)}function mZ(e){return Vo(e.x)/Vo(e.y)}function gZ(e,r){return e.translate===r.translate&&e.scale===r.scale&&e.originPoint===r.originPoint}class kFe{constructor(){this.members=[]}add(r){kE(this.members,r),r.scheduleRender()}remove(r){if(L3(this.members,r),r===this.prevLead&&(this.prevLead=void 0),r===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(r){const n=this.members.findIndex(i=>r===i);if(n===0)return!1;let o;for(let i=n;i>=0;i--){const a=this.members[i];if(a.isPresent!==!1){o=a;break}}return o?(this.promote(o),!0):!1}promote(r,n){const o=this.lead;if(r!==o&&(this.prevLead=o,this.lead=r,r.show(),o)){o.instance&&o.scheduleRender(),r.scheduleRender(),r.resumeFrom=o,n&&(r.resumeFrom.preserveOpacity=!0),o.snapshot&&(r.snapshot=o.snapshot,r.snapshot.latestValues=o.animationValues||o.latestValues),r.root&&r.root.isUpdating&&(r.isLayoutDirty=!0);const{crossfade:i}=r.options;i===!1&&o.hide()}}exitAnimationComplete(){this.members.forEach(r=>{const{options:n,resumingFrom:o}=r;n.onExitComplete&&n.onExitComplete(),o&&o.options.onExitComplete&&o.options.onExitComplete()})}scheduleRender(){this.members.forEach(r=>{r.instance&&r.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function _Fe(e,r,n){let o="";const i=e.x.translate/r.x,a=e.y.translate/r.y,l=n?.z||0;if((i||a||l)&&(o=`translate3d(${i}px, ${a}px, ${l}px) `),(r.x!==1||r.y!==1)&&(o+=`scale(${1/r.x}, ${1/r.y}) `),n){const{transformPerspective:d,rotate:u,rotateX:p,rotateY:f,skewX:g,skewY:v}=n;d&&(o=`perspective(${d}px) ${o}`),u&&(o+=`rotate(${u}deg) `),p&&(o+=`rotateX(${p}deg) `),f&&(o+=`rotateY(${f}deg) `),g&&(o+=`skewX(${g}deg) `),v&&(o+=`skewY(${v}deg) `)}const s=e.x.scale*r.x,c=e.y.scale*r.y;return(s!==1||c!==1)&&(o+=`scale(${s}, ${c})`),o||"none"}const PC=["","X","Y","Z"],SFe=1e3;let EFe=0;function BC(e,r,n,o){const{latestValues:i}=r;i[e]&&(n[e]=i[e],r.setStaticValue(e,0),o&&(o[e]=0))}function yZ(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:r}=e.options;if(!r)return;const n=GX(r);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:i,layoutId:a}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",Dr,!(i||a))}const{parent:o}=e;o&&!o.hasCheckedOptimisedAppear&&yZ(o)}function vZ({attachResizeListener:e,defaultParent:r,measureScroll:n,checkIsScrollRoot:o,resetTransform:i}){return class{constructor(a={},l=r?.()){this.id=EFe++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(RFe),this.nodes.forEach(AFe),this.nodes.forEach(DFe),this.nodes.forEach(zFe)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=a,this.root=l?l.root||l:this,this.path=l?[...l.path,l]:[],this.parent=l,this.depth=l?l.depth+1:0;for(let s=0;sthis.root.updateBlockedByResize=!1;Dr.read(()=>{u=window.innerWidth}),e(a,()=>{const f=window.innerWidth;f!==u&&(u=f,this.root.updateBlockedByResize=!0,d&&d(),d=YOe(p,250),i2.hasAnimatedSinceResize&&(i2.hasAnimatedSinceResize=!1,this.nodes.forEach(wZ)))})}l&&this.root.registerSharedNode(l,this),this.options.animate!==!1&&c&&(l||s)&&this.addEventListener("didUpdate",({delta:d,hasLayoutChanged:u,hasRelativeLayoutChanged:p,layout:f})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const g=this.options.transition||c.getDefaultTransition()||IFe,{onLayoutAnimationStart:v,onLayoutAnimationComplete:w}=c.getProps(),x=!this.targetLayout||!fZ(this.targetLayout,f),k=!u&&p;if(this.options.layoutRoot||this.resumeFrom||k||u&&(x||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const C={...tC(g,"layout"),onPlay:v,onComplete:w};(c.shouldReduceMotion||this.options.layoutRoot)&&(C.delay=0,C.type=!1),this.startAnimation(C),this.setAnimationOrigin(d,k)}else u||wZ(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=f})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const a=this.getStack();a&&a.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),$d(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(MFe),this.animationId++)}getTransformTemplate(){const{visualElement:a}=this.options;return a&&a.getProps().transformTemplate}willUpdate(a=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&yZ(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let d=0;d{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!Vo(this.snapshot.measuredBox.x)&&!Vo(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let s=0;s{const $=_/1e3;kZ(u.x,a.x,$),kZ(u.y,a.y,$),this.setTargetDelta(u),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(n2(p,this.layout.layoutBox,this.relativeParent.layout.layoutBox),PFe(this.relativeTarget,this.relativeTargetOrigin,p,$),C&&wFe(this.relativeTarget,C)&&(this.isProjectionDirty=!1),C||(C=En()),sl(C,this.relativeTarget)),v&&(this.animationValues=d,mFe(d,c,this.latestValues,$,k,x)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=$},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(a){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&($d(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Dr.update(()=>{i2.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=_p(0)),this.currentAnimation=xK(this.motionValue,[0,1e3],{...a,velocity:0,isSync:!0,onUpdate:l=>{this.mixTargetDelta(l),a.onUpdate&&a.onUpdate(l)},onStop:()=>{},onComplete:()=>{a.onComplete&&a.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const a=this.getStack();a&&a.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(SFe),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const a=this.getLead();let{targetWithTransforms:l,target:s,layout:c,latestValues:d}=a;if(!(!l||!s||!c)){if(this!==a&&this.layout&&c&&$Z(this.options.animationType,this.layout.layoutBox,c.layoutBox)){s=this.target||En();const u=Vo(this.layout.layoutBox.x);s.x.min=a.target.x.min,s.x.max=s.x.min+u;const p=Vo(this.layout.layoutBox.y);s.y.min=a.target.y.min,s.y.max=s.y.min+p}sl(l,s),nm(l,d),Yy(this.projectionDeltaWithTransform,this.layoutCorrected,l,d)}}registerSharedNode(a,l){this.sharedNodes.has(a)||this.sharedNodes.set(a,new kFe),this.sharedNodes.get(a).add(l);const s=l.options.initialPromotionConfig;l.promote({transition:s?s.transition:void 0,preserveFollowOpacity:s&&s.shouldPreserveFollowOpacity?s.shouldPreserveFollowOpacity(l):void 0})}isLead(){const a=this.getStack();return a?a.lead===this:!0}getLead(){const{layoutId:a}=this.options;return a?this.getStack()?.lead||this:this}getPrevLead(){const{layoutId:a}=this.options;return a?this.getStack()?.prevLead:void 0}getStack(){const{layoutId:a}=this.options;if(a)return this.root.sharedNodes.get(a)}promote({needsReset:a,transition:l,preserveFollowOpacity:s}={}){const c=this.getStack();c&&c.promote(this,s),a&&(this.projectionDelta=void 0,this.needsReset=!0),l&&this.setOptions({transition:l})}relegate(){const a=this.getStack();return a?a.relegate(this):!1}resetSkewAndRotation(){const{visualElement:a}=this.options;if(!a)return;let l=!1;const{latestValues:s}=a;if((s.z||s.rotate||s.rotateX||s.rotateY||s.rotateZ||s.skewX||s.skewY)&&(l=!0),!l)return;const c={};s.z&&BC("z",a,c,this.animationValues);for(let d=0;da.currentAnimation?.stop()),this.root.nodes.forEach(bZ),this.root.sharedNodes.clear()}}}function CFe(e){e.updateLayout()}function $Fe(e){const r=e.resumeFrom?.snapshot||e.snapshot;if(e.isLead()&&e.layout&&r&&e.hasListeners("didUpdate")){const{layoutBox:n,measuredBox:o}=e.layout,{animationType:i}=e.options,a=r.source!==e.layout.source;i==="size"?ga(u=>{const p=a?r.measuredBox[u]:r.layoutBox[u],f=Vo(p);p.min=n[u].min,p.max=p.min+f}):$Z(i,r.layoutBox,n)&&ga(u=>{const p=a?r.measuredBox[u]:r.layoutBox[u],f=Vo(n[u]);p.max=p.min+f,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[u].max=e.relativeTarget[u].min+f)});const l=im();Yy(l,n,r.layoutBox);const s=im();a?Yy(s,e.applyTransform(o,!0),r.measuredBox):Yy(s,n,r.layoutBox);const c=!uZ(l);let d=!1;if(!e.resumeFrom){const u=e.getClosestProjectingParent();if(u&&!u.resumeFrom){const{snapshot:p,layout:f}=u;if(p&&f){const g=En();n2(g,r.layoutBox,p.layoutBox);const v=En();n2(v,n,f.layoutBox),fZ(g,v)||(d=!0),u.options.layoutRoot&&(e.relativeTarget=v,e.relativeTargetOrigin=g,e.relativeParent=u)}}}e.notifyListeners("didUpdate",{layout:n,snapshot:r,delta:s,layoutDelta:l,hasLayoutChanged:c,hasRelativeLayoutChanged:d})}else if(e.isLead()){const{onExitComplete:n}=e.options;n&&n()}e.options.transition=void 0}function RFe(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function zFe(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function TFe(e){e.clearSnapshot()}function bZ(e){e.clearMeasurements()}function xZ(e){e.isLayoutDirty=!1}function jFe(e){const{visualElement:r}=e.options;r&&r.getProps().onBeforeLayoutMeasure&&r.notify("BeforeLayoutMeasure"),e.resetTransform()}function wZ(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function AFe(e){e.resolveTargetDelta()}function DFe(e){e.calcProjection()}function MFe(e){e.resetSkewAndRotation()}function NFe(e){e.removeLeadSnapshot()}function kZ(e,r,n){e.translate=Lr(r.translate,0,n),e.scale=Lr(r.scale,1,n),e.origin=r.origin,e.originPoint=r.originPoint}function _Z(e,r,n,o){e.min=Lr(r.min,n.min,o),e.max=Lr(r.max,n.max,o)}function PFe(e,r,n,o){_Z(e.x,r.x,n.x,o),_Z(e.y,r.y,n.y,o)}function BFe(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const IFe={duration:.45,ease:[.4,0,.1,1]},SZ=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),EZ=SZ("applewebkit/")&&!SZ("chrome/")?Math.round:ha;function CZ(e){e.min=EZ(e.min),e.max=EZ(e.max)}function OFe(e){CZ(e.x),CZ(e.y)}function $Z(e,r,n){return e==="position"||e==="preserve-aspect"&&!KLe(mZ(r),mZ(n),.2)}function LFe(e){return e!==e.root&&e.scroll?.wasRoot}const FFe=vZ({attachResizeListener:(e,r)=>Uy(e,"resize",r),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),IC={current:void 0},RZ=vZ({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!IC.current){const e=new FFe({});e.mount(window),e.setOptions({layoutScroll:!0}),IC.current=e}return IC.current},resetTransform:(e,r)=>{e.style.transform=r!==void 0?r:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),VFe={pan:{Feature:dFe},drag:{Feature:cFe,ProjectionNode:RZ,MeasureLayout:JK}};function zZ(e,r,n){const{props:o}=e;e.animationState&&o.whileHover&&e.animationState.setActive("whileHover",n==="Start");const i="onHover"+n,a=o[i];a&&Dr.postRender(()=>a(r,Wy(r)))}class qFe extends Td{mount(){const{current:r}=this.node;r&&(this.unmount=GIe(r,(n,o)=>(zZ(this.node,o,"Start"),i=>zZ(this.node,i,"End"))))}unmount(){}}class HFe extends Td{constructor(){super(...arguments),this.isActive=!1}onFocus(){let r=!1;try{r=this.node.current.matches(":focus-visible")}catch{r=!0}!r||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=Ay(Uy(this.node.current,"focus",()=>this.onFocus()),Uy(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function TZ(e,r,n){const{props:o}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&o.whileTap&&e.animationState.setActive("whileTap",n==="Start");const i="onTap"+(n==="End"?"":n),a=o[i];a&&Dr.postRender(()=>a(r,Wy(r)))}class UFe extends Td{mount(){const{current:r}=this.node;r&&(this.unmount=ZIe(r,(n,o)=>(TZ(this.node,o,"Start"),(i,{success:a})=>TZ(this.node,i,a?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const OC=new WeakMap,LC=new WeakMap,WFe=e=>{const r=OC.get(e.target);r&&r(e)},GFe=e=>{e.forEach(WFe)};function YFe({root:e,...r}){const n=e||document;LC.has(n)||LC.set(n,{});const o=LC.get(n),i=JSON.stringify(r);return o[i]||(o[i]=new IntersectionObserver(GFe,{root:e,...r})),o[i]}function XFe(e,r,n){const o=YFe(r);return OC.set(e,n),o.observe(e),()=>{OC.delete(e),o.unobserve(e)}}const KFe={some:0,all:1};class ZFe extends Td{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:r={}}=this.node.getProps(),{root:n,margin:o,amount:i="some",once:a}=r,l={root:n?n.current:void 0,rootMargin:o,threshold:typeof i=="number"?i:KFe[i]},s=c=>{const{isIntersecting:d}=c;if(this.isInView===d||(this.isInView=d,a&&!d&&this.hasEnteredView))return;d&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",d);const{onViewportEnter:u,onViewportLeave:p}=this.node.getProps(),f=d?u:p;f&&f(c)};return XFe(this.node.current,l,s)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:r,prevProps:n}=this.node;["amount","margin","root"].some(QFe(r,n))&&this.startObserver()}unmount(){}}function QFe({viewport:e={}},{viewport:r={}}={}){return n=>e[n]!==r[n]}const JFe={inView:{Feature:ZFe},tap:{Feature:UFe},focus:{Feature:HFe},hover:{Feature:qFe}},eVe={layout:{ProjectionNode:RZ,MeasureLayout:JK}},tVe={renderer:ALe,...HLe,...JFe},rVe={...tVe,...VFe,...eVe};function jZ(e){const r=am(()=>_p(e)),{isStatic:n}=S.useContext(Ep);if(n){const[,o]=S.useState(e);S.useEffect(()=>r.on("change",o),[])}return r}function nVe(){!bC.current&&aK();const[e]=S.useState(Y3.current);return e}function AZ(){const e=nVe(),{reducedMotion:r}=S.useContext(Ep);return r==="never"?!1:r==="always"?!0:e}class oVe{constructor(){this.componentControls=new Set}subscribe(r){return this.componentControls.add(r),()=>this.componentControls.delete(r)}start(r,n){this.componentControls.forEach(o=>{o.start(r.nativeEvent||r,n)})}cancel(){this.componentControls.forEach(r=>{r.cancel()})}stop(){this.componentControls.forEach(r=>{r.stop()})}}const iVe=()=>new oVe;function aVe(){return am(iVe)}const FC=S.createContext(null);FC.displayName="ElementDetailsActorContext";const lVe=()=>{const e=S.useContext(FC);if(e===null)throw new Error("ElementDetailsActorRef is not provided");return e},ya=(e,r,n)=>{const o=i=>({[e]:"__ignore__",...r,...Vu(i)});return{recipeFn:(i,a=!0)=>{const l=cL({conditions:{shift:fL,finalize:hL,breakpoints:{keys:["base","xs","sm","md","lg","xl"]}},utility:{toHash:(c,d)=>d(c.join(":")),transform:(c,d)=>(j5e(e,n,i,c),d==="__ignore__"?{className:e}:(d=i7(d),{className:`${e}--${c}_${d}`}))}}),s=o(i);if(a){const c=u7(n,s);return Ge(l(s),fe(c))}return l(s)},getVariantProps:o,__getCompoundVariantCss__:i=>u7(n,o(i))}},is=(e,r)=>{if(e&&!r)return e;if(!e&&r)return r;const n=(...a)=>Ge(e(...a),r(...a)),o=c7(e.variantKeys,r.variantKeys),i=o.reduce((a,l)=>(a[l]=c7(e.variantMap[l],r.variantMap[l]),a),{});return Object.assign(n,{__recipe__:!0,__name__:`${e.__name__} ${r.__name__}`,raw:a=>a,variantKeys:o,variantMap:i,splitVariantProps(a){return Fn(a,o)}})},VC=ya("action-btn",{size:"md",radius:"md",variant:"filled"},[]),DZ={variant:["transparent","filled"],size:["sm","md"],radius:["sm","md"]},MZ=Object.keys(DZ),a2=Object.assign(Kn(VC.recipeFn),{__recipe__:!0,__name__:"actionBtn",__getCompoundVariantCss__:VC.__getCompoundVariantCss__,raw:e=>e,variantKeys:MZ,variantMap:DZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,MZ)},getVariantProps:VC.getVariantProps}),qC=ya("likec4-compound-node",{},[]),NZ={isTransparent:["false","true"],inverseColor:["true","false"],borderStyle:["solid","dashed","dotted","none"]},PZ=Object.keys(NZ),sVe=Object.assign(Kn(qC.recipeFn),{__recipe__:!0,__name__:"compoundNode",__getCompoundVariantCss__:qC.__getCompoundVariantCss__,raw:e=>e,variantKeys:PZ,variantMap:NZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,PZ)},getVariantProps:qC.getVariantProps}),HC=ya("likec4-edge-action-btn",{},[]),BZ={},IZ=Object.keys(BZ),cVe=Object.assign(Kn(HC.recipeFn),{__recipe__:!0,__name__:"edgeActionBtn",__getCompoundVariantCss__:HC.__getCompoundVariantCss__,raw:e=>e,variantKeys:IZ,variantMap:BZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,IZ)},getVariantProps:HC.getVariantProps}),UC=ya("likec4-edge-label",{pointerEvents:"all",isStepEdge:!1,cursor:"default"},[]),OZ={pointerEvents:["none","all"],cursor:["pointer","default"],isStepEdge:["false","true"]},LZ=Object.keys(OZ),dVe=Object.assign(Kn(UC.recipeFn),{__recipe__:!0,__name__:"edgeLabel",__getCompoundVariantCss__:UC.__getCompoundVariantCss__,raw:e=>e,variantKeys:LZ,variantMap:OZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,LZ)},getVariantProps:UC.getVariantProps}),FZ={},uVe=[],pVe=[["path","likec4-edge__path"],["pathBg","likec4-edge__pathBg"],["markersCtx","likec4-edge__markersCtx"],["middlePoint","likec4-edge__middlePoint"]],hVe=pVe.map(([e,r])=>[e,ya(r,FZ,s7(uVe,e))]),fVe=Kn((e={})=>Object.fromEntries(hVe.map(([r,n])=>[r,n.recipeFn(e)]))),VZ=[],mVe=e=>({...FZ,...Vu(e)}),gVe=Object.assign(fVe,{__recipe__:!1,__name__:"edgePath",raw:e=>e,classNameMap:{},variantKeys:VZ,variantMap:{},splitVariantProps(e){return Fn(e,VZ)},getVariantProps:mVe}),WC=ya("likec4-element-node-data",{},[]),qZ={},HZ=Object.keys(qZ),yVe=Object.assign(Kn(WC.recipeFn),{__recipe__:!0,__name__:"elementNodeData",__getCompoundVariantCss__:WC.__getCompoundVariantCss__,raw:e=>e,variantKeys:HZ,variantMap:qZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,HZ)},getVariantProps:WC.getVariantProps}),GC=ya("likec4-element-shape",{},[]),UZ={shapetype:["html","svg"]},WZ=Object.keys(UZ),GZ=Object.assign(Kn(GC.recipeFn),{__recipe__:!0,__name__:"elementShapeRecipe",__getCompoundVariantCss__:GC.__getCompoundVariantCss__,raw:e=>e,variantKeys:WZ,variantMap:UZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,WZ)},getVariantProps:GC.getVariantProps}),YC=ya("likec4-tag",{autoTextColor:!1},[]),YZ={autoTextColor:["false","true"]},XZ=Object.keys(YZ),vVe=Object.assign(Kn(YC.recipeFn),{__recipe__:!0,__name__:"likec4tag",__getCompoundVariantCss__:YC.__getCompoundVariantCss__,raw:e=>e,variantKeys:XZ,variantMap:YZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,XZ)},getVariantProps:YC.getVariantProps}),XC=ya("likec4-markdown-block",{uselikec4palette:!1,value:"markdown"},[]),KZ={uselikec4palette:["true","false"],value:["markdown","plaintext"]},ZZ=Object.keys(KZ),bVe=Object.assign(Kn(XC.recipeFn),{__recipe__:!0,__name__:"markdownBlock",__getCompoundVariantCss__:XC.__getCompoundVariantCss__,raw:e=>e,variantKeys:ZZ,variantMap:KZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,ZZ)},getVariantProps:XC.getVariantProps}),KC=ya("likec4-navigation-panel-icon",{variant:"default",type:"default"},[{type:"warning",variant:"filled",css:{backgroundColor:{base:"likec4.panel.action.warning.bg",_hover:"likec4.panel.action.warning.bg.hover"}}}]),QZ={variant:["default","filled"],type:["default","warning"]},JZ=Object.keys(QZ),eQ=Object.assign(Kn(KC.recipeFn),{__recipe__:!0,__name__:"navigationPanelActionIcon",__getCompoundVariantCss__:KC.__getCompoundVariantCss__,raw:e=>e,variantKeys:JZ,variantMap:QZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,JZ)},getVariantProps:KC.getVariantProps}),ZC=ya("likec4-overlay",{fullscreen:!1,withBackdrop:!0},[]),tQ={fullscreen:["false","true"],withBackdrop:["false","true"]},rQ=Object.keys(tQ),xVe=Object.assign(Kn(ZC.recipeFn),{__recipe__:!0,__name__:"overlay",__getCompoundVariantCss__:ZC.__getCompoundVariantCss__,raw:e=>e,variantKeys:rQ,variantMap:tQ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,rQ)},getVariantProps:ZC.getVariantProps}),nQ={truncateLabel:!1},wVe=[],kVe=[["root","likec4-navlink__root"],["body","likec4-navlink__body"],["section","likec4-navlink__section"],["label","likec4-navlink__label"],["description","likec4-navlink__description"]],_Ve=kVe.map(([e,r])=>[e,ya(r,nQ,s7(wVe,e))]),SVe=Kn((e={})=>Object.fromEntries(_Ve.map(([r,n])=>[r,n.recipeFn(e)]))),oQ=["truncateLabel"],EVe=e=>({...nQ,...Vu(e)}),CVe=Object.assign(SVe,{__recipe__:!1,__name__:"navigationLink",raw:e=>e,classNameMap:{},variantKeys:oQ,variantMap:{truncateLabel:["true","false"]},splitVariantProps(e){return Fn(e,oQ)},getVariantProps:EVe});function iQ(){return pf()}function QC(e,r){return Dt(at(e),r??Ir)}function JC(){return vr()}const $Ve=e=>Math.round(e.transform[2]*100)/100;function RVe(){return Dt($Ve)}const zVe=e=>e.transform[2]<.2;function TVe(){return Dt(zVe)}const{abs:Xy,cos:ac,sin:cm,acos:jVe,atan2:Ky,sqrt:jd,pow:va}=Math;function Zy(e){return e<0?-va(-e,.3333333333333333):va(e,.3333333333333333)}const aQ=Math.PI,l2=2*aQ,Ad=aQ/2,AVe=1e-6,e$=Number.MAX_SAFE_INTEGER||9007199254740991,t$=Number.MIN_SAFE_INTEGER||-9007199254740991,DVe={x:0,y:0,z:0},Oe={Tvalues:[-.06405689286260563,.06405689286260563,-.1911188674736163,.1911188674736163,-.3150426796961634,.3150426796961634,-.4337935076260451,.4337935076260451,-.5454214713888396,.5454214713888396,-.6480936519369755,.6480936519369755,-.7401241915785544,.7401241915785544,-.820001985973903,.820001985973903,-.8864155270044011,.8864155270044011,-.9382745520027328,.9382745520027328,-.9747285559713095,.9747285559713095,-.9951872199970213,.9951872199970213],Cvalues:[.12793819534675216,.12793819534675216,.1258374563468283,.1258374563468283,.12167047292780339,.12167047292780339,.1155056680537256,.1155056680537256,.10744427011596563,.10744427011596563,.09761865210411388,.09761865210411388,.08619016153195327,.08619016153195327,.0733464814110803,.0733464814110803,.05929858491543678,.05929858491543678,.04427743881741981,.04427743881741981,.028531388628933663,.028531388628933663,.0123412297999872,.0123412297999872],arcfn:function(e,r){const n=r(e);let o=n.x*n.x+n.y*n.y;return typeof n.z<"u"&&(o+=n.z*n.z),jd(o)},compute:function(e,r,n){if(e===0)return r[0].t=0,r[0];const o=r.length-1;if(e===1)return r[o].t=1,r[o];const i=1-e;let a=r;if(o===0)return r[0].t=e,r[0];if(o===1){const s={x:i*a[0].x+e*a[1].x,y:i*a[0].y+e*a[1].y,t:e};return n&&(s.z=i*a[0].z+e*a[1].z),s}if(o<4){let s=i*i,c=e*e,d,u,p,f=0;o===2?(a=[a[0],a[1],a[2],DVe],d=s,u=i*e*2,p=c):o===3&&(d=s*i,u=s*e*3,p=i*c*3,f=e*c);const g={x:d*a[0].x+u*a[1].x+p*a[2].x+f*a[3].x,y:d*a[0].y+u*a[1].y+p*a[2].y+f*a[3].y,t:e};return n&&(g.z=d*a[0].z+u*a[1].z+p*a[2].z+f*a[3].z),g}const l=JSON.parse(JSON.stringify(r));for(;l.length>1;){for(let s=0;s1;i--,a--){const l=[];for(let s=0,c;s"u")e=.5;else if(e===0||e===1)return e;const n=va(e,r)+va(1-e,r),o=n-1;return Xy(o/n)},projectionratio:function(e,r){if(r!==2&&r!==3)return!1;if(typeof e>"u")e=.5;else if(e===0||e===1)return e;const n=va(1-e,r),o=va(e,r)+n;return n/o},lli8:function(e,r,n,o,i,a,l,s){const c=(e*o-r*n)*(i-l)-(e-n)*(i*s-a*l),d=(e*o-r*n)*(a-s)-(r-o)*(i*s-a*l),u=(e-n)*(a-s)-(r-o)*(i-l);return u==0?!1:{x:c/u,y:d/u}},lli4:function(e,r,n,o){const i=e.x,a=e.y,l=r.x,s=r.y,c=n.x,d=n.y,u=o.x,p=o.y;return Oe.lli8(i,a,l,s,c,d,u,p)},lli:function(e,r){return Oe.lli4(e,e.c,r,r.c)},makeline:function(e,r){return new Fr(e.x,e.y,(e.x+r.x)/2,(e.y+r.y)/2,r.x,r.y)},findbbox:function(e){let r=e$,n=e$,o=t$,i=t$;return e.forEach(function(a){const l=a.bbox();r>l.x.min&&(r=l.x.min),n>l.y.min&&(n=l.y.min),o0&&(u.c1=c,u.c2=d,u.s1=e,u.s2=n,a.push(u))})}),a},makeshape:function(e,r,n){const o=r.points.length,i=e.points.length,a=Oe.makeline(r.points[o-1],e.points[0]),l=Oe.makeline(e.points[i-1],r.points[0]),s={startcap:a,forward:e,back:r,endcap:l,bbox:Oe.findbbox([a,e,r,l])};return s.intersections=function(c){return Oe.shapeintersections(s,s.bbox,c,c.bbox,n)},s},getminmax:function(e,r,n){if(!n)return{min:0,max:0};let o=e$,i=t$,a,l;n.indexOf(0)===-1&&(n=[0].concat(n)),n.indexOf(1)===-1&&n.push(1);for(let s=0,c=n.length;si&&(i=l[r]);return{min:o,mid:(o+i)/2,max:i,size:i-o}},align:function(e,r){const n=r.p1.x,o=r.p1.y,i=-Ky(r.p2.y-o,r.p2.x-n),a=function(l){return{x:(l.x-n)*ac(i)-(l.y-o)*cm(i),y:(l.x-n)*cm(i)+(l.y-o)*ac(i)}};return e.map(a)},roots:function(e,r){r=r||{p1:{x:0,y:0},p2:{x:1,y:0}};const n=e.length-1,o=Oe.align(e,r),i=function(A){return 0<=A&&A<=1};if(n===2){const A=o[0].y,z=o[1].y,j=o[2].y,I=A-2*z+j;if(I!==0){const P=-jd(z*z-A*j),L=-A+z,H=-(P+L)/I,M=-(-P+L)/I;return[H,M].filter(i)}else if(z!==j&&I===0)return[(2*z-j)/(2*z-2*j)].filter(i);return[]}const a=o[0].y,l=o[1].y,s=o[2].y,c=o[3].y;let d=-a+3*l-3*s+c,u=3*a-6*l+3*s,p=-3*a+3*l,f=a;if(Oe.approximately(d,0)){if(Oe.approximately(u,0))return Oe.approximately(p,0)?[]:[-f/p].filter(i);const A=jd(p*p-4*u*f),z=2*u;return[(A-p)/z,(-p-A)/z].filter(i)}u/=d,p/=d,f/=d;const g=(3*p-u*u)/3,v=g/3,w=(2*u*u*u-9*u*p+27*f)/27,x=w/2,k=x*x+v*v*v;let C,_,$,R,T;if(k<0){const A=-g/3,z=A*A*A,j=jd(z),I=-w/(2*j),P=I<-1?-1:I>1?1:I,L=jVe(P),H=Zy(j),M=2*H;return $=M*ac(L/3)-u/3,R=M*ac((L+l2)/3)-u/3,T=M*ac((L+2*l2)/3)-u/3,[$,R,T].filter(i)}else{if(k===0)return C=x<0?Zy(-x):-Zy(x),$=2*C-u/3,R=-C-u/3,[$,R].filter(i);{const A=jd(k);return C=Zy(-x+A),_=Zy(x+A),[C-_-u/3].filter(i)}}},droots:function(e){if(e.length===3){const r=e[0],n=e[1],o=e[2],i=r-2*n+o;if(i!==0){const a=-jd(n*n-r*o),l=-r+n,s=-(a+l)/i,c=-(-a+l)/i;return[s,c]}else if(n!==o&&i===0)return[(2*n-o)/(2*(n-o))];return[]}if(e.length===2){const r=e[0],n=e[1];return r!==n?[r/(r-n)]:[]}return[]},curvature:function(e,r,n,o,i){let a,l,s,c,d=0,u=0;const p=Oe.compute(e,r),f=Oe.compute(e,n),g=p.x*p.x+p.y*p.y;if(o?(a=jd(va(p.y*f.z-f.y*p.z,2)+va(p.z*f.x-f.z*p.x,2)+va(p.x*f.y-f.x*p.y,2)),l=va(g+p.z*p.z,3/2)):(a=p.x*f.y-p.y*f.x,l=va(g,3/2)),a===0||l===0)return{k:0,r:0};if(d=a/l,u=l/a,!i){const v=Oe.curvature(e-.001,r,n,o,!0).k,w=Oe.curvature(e+.001,r,n,o,!0).k;c=(w-d+(d-v))/2,s=(Xy(w-d)+Xy(d-v))/2}return{k:d,r:u,dk:c,adk:s}},inflections:function(e){if(e.length<4)return[];const r=Oe.align(e,{p1:e[0],p2:e.slice(-1)[0]}),n=r[2].x*r[1].y,o=r[3].x*r[1].y,i=r[1].x*r[2].y,a=r[3].x*r[2].y,l=18*(-3*n+2*o+3*i-a),s=18*(3*n-o-3*i),c=18*(i-n);if(Oe.approximately(l,0)){if(!Oe.approximately(s,0)){let f=-c/s;if(0<=f&&f<=1)return[f]}return[]}const d=2*l;if(Oe.approximately(d,0))return[];const u=s*s-4*l*c;if(u<0)return[];const p=Math.sqrt(u);return[(p-s)/d,-(s+p)/d].filter(function(f){return 0<=f&&f<=1})},bboxoverlap:function(e,r){const n=["x","y"],o=n.length;for(let i=0,a,l,s,c;i=c)return!1;return!0},expandbox:function(e,r){r.x.mine.x.max&&(e.x.max=r.x.max),r.y.max>e.y.max&&(e.y.max=r.y.max),r.z&&r.z.max>e.z.max&&(e.z.max=r.z.max),e.x.mid=(e.x.min+e.x.max)/2,e.y.mid=(e.y.min+e.y.max)/2,e.z&&(e.z.mid=(e.z.min+e.z.max)/2),e.x.size=e.x.max-e.x.min,e.y.size=e.y.max-e.y.min,e.z&&(e.z.size=e.z.max-e.z.min)},pairiteration:function(e,r,n){const o=e.bbox(),i=r.bbox(),a=1e5,l=n||.5;if(o.x.size+o.y.sizeT||T>A)&&(R+=l2),R>A&&(z=A,A=R,R=z)):A4){if(arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");i=!0}}else if(a!==6&&a!==8&&a!==9&&a!==12&&arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");const l=this._3d=!i&&(a===9||a===12)||r&&r[0]&&typeof r[0].z<"u",s=this.points=[];for(let g=0,v=l?3:2;gg+Jy(v.y),0)"u"&&(i=.5),i===0)return new Fr(n,n,o);if(i===1)return new Fr(r,n,n);const a=Fr.getABC(2,r,n,o,i);return new Fr(r,a.A,o)}static cubicFromPoints(r,n,o,i,a){typeof i>"u"&&(i=.5);const l=Fr.getABC(3,r,n,o,i);typeof a>"u"&&(a=Oe.dist(n,l.C));const s=a*(1-i)/i,c=Oe.dist(r,o),d=(o.x-r.x)/c,u=(o.y-r.y)/c,p=a*d,f=a*u,g=s*d,v=s*u,w={x:n.x-p,y:n.y-f},x={x:n.x+g,y:n.y+v},k=l.A,C={x:k.x+(w.x-k.x)/(1-i),y:k.y+(w.y-k.y)/(1-i)},_={x:k.x+(x.x-k.x)/i,y:k.y+(x.y-k.y)/i},$={x:r.x+(C.x-r.x)/i,y:r.y+(C.y-r.y)/i},R={x:o.x+(_.x-o.x)/(1-i),y:o.y+(_.y-o.y)/(1-i)};return new Fr(r,$,R,o)}static getUtils(){return Oe}getUtils(){return Fr.getUtils()}static get PolyBezier(){return Qy}valueOf(){return this.toString()}toString(){return Oe.pointsToString(this.points)}toSVG(){if(this._3d)return!1;const r=this.points,n=r[0].x,o=r[0].y,i=["M",n,o,this.order===2?"Q":"C"];for(let a=1,l=r.length;a0}length(){return Oe.length(this.derivative.bind(this))}static getABC(r=2,n,o,i,a=.5){const l=Oe.projectionratio(a,r),s=1-l,c={x:l*n.x+s*i.x,y:l*n.y+s*i.y},d=Oe.abcratio(a,r);return{A:{x:o.x+(o.x-c.x)/d,y:o.y+(o.y-c.y)/d},B:o,C:c,S:n,E:i}}getABC(r,n){n=n||this.get(r);let o=this.points[0],i=this.points[this.order];return Fr.getABC(this.order,o,n,i,r)}getLUT(r){if(this.verify(),r=r||100,this._lut.length===r+1)return this._lut;this._lut=[],r++,this._lut=[];for(let n=0,o,i;n1?1:p,f=this.compute(p),f.t=p,f.d=d,f}get(r){return this.compute(r)}point(r){return this.points[r]}compute(r){return this.ratios?Oe.computeWithRatios(r,this.points,this.ratios,this._3d):Oe.compute(r,this.points,this._3d,this.ratios)}raise(){const r=this.points,n=[r[0]],o=r.length;for(let i=1,a,l;i1;){o=[];for(let l=0,s,c=n.length-1;l=0&&l<=1}),n=n.concat(r[o].sort(Oe.numberSort))}).bind(this)),r.values=n.sort(Oe.numberSort).filter(function(o,i){return n.indexOf(o)===i}),r}bbox(){const r=this.extrema(),n={};return this.dims.forEach((function(o){n[o]=Oe.getminmax(this,o,r[o])}).bind(this)),n}overlaps(r){const n=this.bbox(),o=r.bbox();return Oe.bboxoverlap(n,o)}offset(r,n){if(typeof n<"u"){const o=this.get(r),i=this.normal(r),a={c:o,n:i,x:o.x+i.x*n,y:o.y+i.y*n};return this._3d&&(a.z=o.z+i.z*n),a}if(this._linear){const o=this.normal(0),i=this.points.map(function(a){const l={x:a.x+r*o.x,y:a.y+r*o.y};return a.z&&o.z&&(l.z=a.z+r*o.z),l});return[new Fr(i)]}return this.reduce().map(function(o){return o._linear?o.offset(r)[0]:o.scale(r)})}simple(){if(this.order===3){const i=Oe.angle(this.points[0],this.points[3],this.points[1]),a=Oe.angle(this.points[0],this.points[3],this.points[2]);if(i>0&&a<0||i<0&&a>0)return!1}const r=this.normal(0),n=this.normal(1);let o=r.x*n.x+r.y*n.y;return this._3d&&(o+=r.z*n.z),Jy(PVe(o))(1-s/i)*n+s/i*o);return new Fr(this.points.map((l,s)=>({x:l.x+r.x*a[s],y:l.y+r.y*a[s]})))}scale(r){const n=this.order;let o=!1;if(typeof r=="function"&&(o=r),o&&n===2)return this.raise().scale(o);const i=this.clockwise,a=this.points;if(this._linear)return this.translate(this.normal(0),o?o(0):r,o?o(1):r);const l=o?o(0):r,s=o?o(1):r,c=[this.offset(0,10),this.offset(1,10)],d=[],u=Oe.lli4(c[0],c[0].c,c[1],c[1].c);if(!u)throw new Error("cannot scale this curve. Try reducing it first.");return[0,1].forEach(function(p){const f=d[p*n]=Oe.copy(a[p*n]);f.x+=(p?s:l)*c[p].n.x,f.y+=(p?s:l)*c[p].n.y}),o?([0,1].forEach(function(p){if(!(n===2&&p)){var f=a[p+1],g={x:f.x-u.x,y:f.y-u.y},v=o?o((p+1)/n):r;o&&!i&&(v=-v);var w=e0(g.x*g.x+g.y*g.y);g.x/=w,g.y/=w,d[p+1]={x:f.x+v*g.x,y:f.y+v*g.y}}}),new Fr(d)):([0,1].forEach(p=>{if(n===2&&p)return;const f=d[p*n],g=this.derivative(p),v={x:f.x+g.x,y:f.y+g.y};d[p+1]=Oe.lli4(f,v,u,a[p+1])}),new Fr(d))}outline(r,n,o,i){if(n=n===void 0?r:n,this._linear){const R=this.normal(0),T=this.points[0],A=this.points[this.points.length-1];let z,j,I;o===void 0&&(o=r,i=n),z={x:T.x+R.x*r,y:T.y+R.y*r},I={x:A.x+R.x*o,y:A.y+R.y*o},j={x:(z.x+I.x)/2,y:(z.y+I.y)/2};const P=[z,j,I];z={x:T.x-R.x*n,y:T.y-R.y*n},I={x:A.x-R.x*i,y:A.y-R.y*i},j={x:(z.x+I.x)/2,y:(z.y+I.y)/2};const L=[I,j,z],H=Oe.makeline(L[2],P[0]),M=Oe.makeline(P[2],L[0]),V=[H,new Fr(P),M,new Fr(L)];return new Qy(V)}const a=this.reduce(),l=a.length,s=[];let c=[],d,u=0,p=this.length();const f=typeof o<"u"&&typeof i<"u";function g(R,T,A,z,j){return function(I){const P=z/A,L=(z+j)/A,H=T-R;return Oe.map(I,0,1,R+P*H,R+L*H)}}a.forEach(function(R){const T=R.length();f?(s.push(R.scale(g(r,o,p,u,T))),c.push(R.scale(g(-n,-i,p,u,T)))):(s.push(R.scale(r)),c.push(R.scale(-n))),u+=T}),c=c.map(function(R){return d=R.points,d[3]?R.points=[d[3],d[2],d[1],d[0]]:R.points=[d[2],d[1],d[0]],R}).reverse();const v=s[0].points[0],w=s[l-1].points[s[l-1].points.length-1],x=c[l-1].points[c[l-1].points.length-1],k=c[0].points[0],C=Oe.makeline(x,v),_=Oe.makeline(w,k),$=[C].concat(s).concat([_]).concat(c);return new Qy($)}outlineshapes(r,n,o){n=n||r;const i=this.outline(r,n).curves,a=[];for(let l=1,s=i.length;l1,c.endcap.virtual=l{var s=this.get(l);return Oe.between(s.x,n,i)&&Oe.between(s.y,o,a)})}selfintersects(r){const n=this.reduce(),o=n.length-2,i=[];for(let a=0,l,s,c;a0&&(a=a.concat(s))}),a}arcs(r){return r=r||.5,this._iterate(r,[])}_error(r,n,o,i){const a=(i-o)/4,l=this.get(o+a),s=this.get(i-a),c=Oe.dist(r,n),d=Oe.dist(r,l),u=Oe.dist(r,s);return Jy(d-c)+Jy(u-c)}_iterate(r,n){let o=0,i=1,a;do{a=0,i=1;let l=this.get(o),s,c,d,u,p=!1,f=!1,g,v=i,w=1;do if(f=p,u=d,v=(o+i)/2,s=this.get(v),c=this.get(i),d=Oe.getccenter(l,s,c),d.interval={start:o,end:i},p=this._error(d,l,o,i)<=r,g=f&&!p,g||(w=i),p){if(i>=1){if(d.interval.end=w=1,u=d,i>1){let x={x:d.x+d.r*MVe(d.e),y:d.y+d.r*NVe(d.e)};d.e+=Oe.angle({x:d.x,y:d.y},x,this.get(1))}break}i=i+(i-o)/2}else i=v;while(!g&&a++<100);if(a>=100)break;u=u||d,n.push(u),o=w}while(i<1);return n}}function cQ(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}const r$=e=>({x:Math.round(e.internals.positionAbsolute.x),y:Math.round(e.internals.positionAbsolute.y),width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0});function n$(e){const{width:r,height:n}=_o(e),{x:o,y:i}=e.internals.positionAbsolute;return{x:Math.round(o+r/2),y:Math.round(i+n/2)}}function s2(e,r,n=0){const{width:o,height:i}=e,a=ko.center(e),l=Qr(r.x,r.y).subtract(a),s=(n+o/2)/l.x,c=(n+i/2)/l.y,d=Math.min(Math.abs(s),Math.abs(c));return Qr(l).multiply(d).add(a).round()}function c2(e){let[r,...n]=e;He(r,"start should be defined");const o=[];for(;xn(n,3);){const[i,a,l,...s]=n,c=new Fr(r[0],r[1],i[0],i[1],a[0],a[1],l[0],l[1]),d=c.inflections();d.length===0&&d.push(.5),d.forEach(u=>{const{x:p,y:f}=c.get(u);o.push({x:Math.round(p),y:Math.round(f)})}),n=s,r=l}return He(n.length===0,"all points should be consumed"),He(xn(o,1),"at least one control point should be generated"),o}function d2(e,r){const n=i9(e)?{x:e[0],y:e[1]}:e,o=i9(r)?{x:r[0],y:r[1]}:r;return IVe(n,o)<2.1}function IVe(e,r){return Math.hypot(r.x-e.x,r.y-e.y)}function nn(e){return e.stopPropagation()}function OVe(e){let[r,...n]=e;He(r,"start should be defined");let o=`M ${r[0]},${r[1]}`;for(;xn(n,3);){const[i,a,l,...s]=n;o=o+` C ${i[0]},${i[1]} ${a[0]},${a[1]} ${l[0]},${l[1]}`,n=s}return He(n.length===0,"all points should be consumed"),o}const u2=S.forwardRef(({tag:e,cursor:r,className:n,style:o,...i},a)=>{const l=_Ne(e);return y.jsxs(hr,{ref:a,"data-likec4-tag":e,className:Ge(vVe({autoTextColor:GO(l)}),n),...i,style:{cursor:r,...o},children:[y.jsx("span",{children:"#"}),y.jsx("span",{children:e})]})}),LVe=(e,r)=>e.data.width===r.data.width&&tt(e.data.tags,r.data.tags)&&(e.data.hovered??!1)===(r.data.hovered??!1),t0=S.memo(({id:e,data:{tags:r,width:n,hovered:o=!1}})=>{const{hovered:i,ref:a}=b9(),{hovered:l,ref:s}=b9(),[c,d]=KRe(!1,o?120:300);S.useEffect(()=>{d(x=>x?o||i||l:o&&(i||l))},[i,l,o]);const u=RVe(),p=u>1.2,f=Nt(),g=x=>{f.send({type:"tag.highlight",tag:x})},v=S.useCallback(()=>{f.send({type:"tag.unhighlight"})},[]);if(!r||r.length===0)return null;const w=Math.max(Math.round(n*u)-10,200);return y.jsxs(y.Fragment,{children:[y.jsx("div",{ref:a,className:Ge("likec4-element-tags",qn({pointerEvents:"all",gap:"1",alignItems:"flex-end",justifyItems:"stretch",position:"absolute",width:"100%",bottom:"0",left:"0",padding:"1",_shapeCylinder:{bottom:"[5px]"},_shapeStorage:{bottom:"[5px]"},_shapeQueue:{bottom:"0",paddingLeft:"[14px]"}})),onClick:nn,children:r.map(x=>y.jsx(hr,{"data-likec4-tag":x,className:fe({layerStyle:"likec4.tag",flex:"1",display:"flex",alignItems:"center",justifyContent:"center",maxWidth:50,height:5,_whenHovered:{height:12,borderRadius:4,transitionDelay:".08s"},transition:"fast"})},e+"#"+x))}),y.jsx(r9,{isVisible:c,align:"start",position:Ue.Bottom,children:y.jsx(Or,{ref:s,css:{gap:"0.5",alignItems:"baseline",flexWrap:"wrap",pb:"sm",translate:"auto",x:"[-8px]",maxWidth:w},children:r.map(x=>y.jsx(u2,{tag:x,cursor:"pointer",className:fe({userSelect:"none",...p&&{fontSize:"lg",borderRadius:"[4px]",px:"1.5"}}),onClick:k=>{k.stopPropagation(),f.openSearch(`#${x}`)},onMouseEnter:()=>g(x),onMouseLeave:v},x))})})]})},LVe);t0.displayName="ElementTags";const FVe=S.forwardRef((e,r)=>y.jsx("svg",{height:"24",width:"24",fill:"currentColor",...e,viewBox:"0 0 24 24",ref:r,children:y.jsx("path",{d:"M12 1C5.923 1 1 5.923 1 12c0 4.867 3.149 8.979 7.521 10.436.55.096.756-.233.756-.522 0-.262-.013-1.128-.013-2.049-2.764.509-3.479-.674-3.699-1.292-.124-.317-.66-1.293-1.127-1.554-.385-.207-.936-.715-.014-.729.866-.014 1.485.797 1.691 1.128.99 1.663 2.571 1.196 3.204.907.096-.715.385-1.196.701-1.471-2.448-.275-5.005-1.224-5.005-5.432 0-1.196.426-2.186 1.128-2.956-.111-.275-.496-1.402.11-2.915 0 0 .921-.288 3.024 1.128a10.193 10.193 0 0 1 2.75-.371c.936 0 1.871.123 2.75.371 2.104-1.43 3.025-1.128 3.025-1.128.605 1.513.221 2.64.111 2.915.701.77 1.127 1.747 1.127 2.956 0 4.222-2.571 5.157-5.019 5.432.399.344.743 1.004.743 2.035 0 1.471-.014 2.654-.014 3.025 0 .289.206.632.756.522C19.851 20.979 23 16.854 23 12c0-6.077-4.922-11-11-11Z"})})),VVe=[["path",{d:"M5 12l5 5l10 -10",key:"svg-0"}]],dQ=wt("outline","check","Check",VVe),qVe=[["path",{d:"M7 7m0 2.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667z",key:"svg-0"}],["path",{d:"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1",key:"svg-1"}]],HVe=wt("outline","copy","Copy",qVe),uQ="https://github.com/",o$=S.forwardRef(({value:e,className:r,...n},o)=>{const i=e.url.includes("://")?e.url:new window.URL(e.url,window.location.href).toString();let a=i.startsWith(uQ);return y.jsx(ec,{ref:o,variant:"default",radius:"sm",size:"sm",tt:"none",leftSection:e.title?y.jsx(y.Fragment,{children:e.title}):null,rightSection:y.jsx(UW,{value:i,timeout:1500,children:({copy:l,copied:s})=>y.jsx(lr,{className:fe({opacity:s?1:.45,transition:"fast",_hover:{opacity:1}}),tabIndex:-1,size:"20",variant:s?"light":"transparent",color:s?"teal":"gray","data-active":s,onClick:c=>{c.stopPropagation(),c.preventDefault(),l()},children:s?y.jsx(dQ,{}):y.jsx(HVe,{stroke:2.5})})}),...n,className:Ge(r,"group"),classNames:{root:fe({flexWrap:"nowrap",minHeight:24,maxWidth:500,userSelect:"all",pr:"0",backgroundColor:{base:"transparent",_hover:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]"}}}),section:fe({'&:is([data-position="left"])':{color:"mantine.colors.dimmed",userSelect:"none",pointerEvents:"none",_groupHover:{color:"[var(--badge-color)]",opacity:.7}}})},children:y.jsxs(Ed.a,{href:i,target:"_blank",style:{color:"var(--badge-color)",cursor:"pointer"},css:{transition:"fast",opacity:{base:.7,_hover:1},textDecoration:{base:"none",_hover:"underline"}},children:[a&&y.jsx(FVe,{height:"12",width:"12",style:{verticalAlign:"middle",marginRight:"4px"}}),a?i.replace(uQ,""):i]})})});function UVe(){return S.useContext(GS)}function WVe(){const e=S.useContext(GS);if(!e)throw new Error("No LikeC4ViewModel in context found");return e}const p2="--_blur",h2="--_opacity",GVe=fe({boxSizing:"border-box",margin:"0",padding:"0",position:"fixed",inset:"0",width:"100vw",height:"100vh",maxWidth:"100vw",maxHeight:"100vh",background:"transparent",border:"transparent",_backdrop:{backdropFilter:"auto",backdropBlur:`var(${p2})`,backgroundColor:`[rgb(36 36 36 / var(${h2}, 5%))]`}}),YVe=fe({position:"absolute",pointerEvents:"all",display:"flex",flexDirection:"column",padding:"4",gap:"lg",justifyContent:"stretch",color:"mantine.colors.text",boxShadow:"md",overflow:"hidden",border:"none",background:`[ + `),()=>{x.contains(w)&&x.removeChild(w)}},[r]),y.jsx(QOe,{isPresent:r,childRef:a,sizeRef:l,children:S.cloneElement(e,{ref:c})})}const eLe=({children:e,initial:r,isPresent:n,onExitComplete:o,custom:i,presenceAffectsLayout:a,mode:l,anchorX:s,root:c})=>{const d=ag(tLe),u=S.useId();let p=!0,f=S.useMemo(()=>(p=!1,{id:u,initial:r,isPresent:n,custom:i,onExitComplete:m=>{d.set(m,!0);for(const v of d.values())if(!v)return;o&&o()},register:m=>(d.set(m,!1),()=>d.delete(m))}),[n,d,o]);return a&&p&&(f={...f}),S.useMemo(()=>{d.forEach((m,v)=>d.set(v,!1))},[n]),S.useEffect(()=>{!n&&!d.size&&o&&o()},[n]),l==="popLayout"&&(e=y.jsx(JOe,{isPresent:n,anchorX:s,root:c,children:e})),y.jsx(Z3.Provider,{value:f,children:e})};function tLe(){return new Map}function SK(e=!0){const r=S.useContext(Z3);if(r===null)return[!0,null];const{isPresent:n,onExitComplete:o,register:i}=r,a=S.useId();S.useEffect(()=>{if(e)return i(a)},[e]);const l=S.useCallback(()=>e&&o&&o(a),[a,o,e]);return!n&&o?[!1,l]:[!0]}const Q3=e=>e.key||"";function EK(e){const r=[];return S.Children.forEach(e,n=>{S.isValidElement(n)&&r.push(n)}),r}const Cn=({children:e,custom:r,initial:n=!0,onExitComplete:o,presenceAffectsLayout:i=!0,mode:a="sync",propagate:l=!1,anchorX:s="left",root:c})=>{const[d,u]=SK(l),p=S.useMemo(()=>EK(e),[e]),f=l&&!d?[]:p.map(Q3),m=S.useRef(!0),v=S.useRef(p),w=ag(()=>new Map),[x,k]=S.useState(p),[C,_]=S.useState(p);EC(()=>{m.current=!1,v.current=p;for(let T=0;T{const A=Q3(T),z=l&&!d?!1:p===C||f.includes(A),j=()=>{if(w.has(A))w.set(A,!0);else return;let I=!0;w.forEach(N=>{N||(I=!1)}),I&&(R?.(),_(v.current),l&&u?.(),o&&o())};return y.jsx(eLe,{isPresent:z,initial:!m.current||n?void 0:!1,custom:r,presenceAffectsLayout:i,mode:a,root:c,onExitComplete:z?void 0:j,anchorX:s,children:T},A)})})},rLe=S.createContext(null);function nLe(){const e=S.useRef(!1);return EC(()=>(e.current=!0,()=>{e.current=!1}),[]),e}function oLe(){const e=nLe(),[r,n]=S.useState(0),o=S.useCallback(()=>{e.current&&n(r+1)},[r]);return[S.useCallback(()=>Dr.postRender(o),[o]),r]}const iLe=e=>!e.isLayoutDirty&&e.willUpdate(!1);function aLe(){const e=new Set,r=new WeakMap,n=()=>e.forEach(iLe);return{add:o=>{e.add(o),r.set(o,o.addEventListener("willUpdate",n))},remove:o=>{e.delete(o);const i=r.get(o);i&&(i(),r.delete(o)),n()},dirty:n}}const CK=e=>e===!0,lLe=e=>CK(e===!0)||e==="id",lg=({children:e,id:r,inherit:n=!0})=>{const o=S.useContext(Hy),i=S.useContext(rLe),[a,l]=oLe(),s=S.useRef(null),c=o.id||i;s.current===null&&(lLe(n)&&c&&(r=r?c+"-"+r:c),s.current={id:r,group:CK(n)&&o.group||aLe()});const d=S.useMemo(()=>({...s.current,forceRender:a}),[l]);return y.jsx(Hy.Provider,{value:d,children:e})},CC=S.createContext({strict:!1});function $C(e){for(const r in e)og[r]={...og[r],...e[r]}}function sLe({children:e,features:r,strict:n=!1}){const[,o]=S.useState(!RC(r)),i=S.useRef(void 0);if(!RC(r)){const{renderer:a,...l}=r;i.current=a,$C(l)}return S.useEffect(()=>{RC(r)&&r().then(({renderer:a,...l})=>{$C(l),i.current=a,o(!0)})},[]),y.jsx(CC.Provider,{value:{renderer:i.current,strict:n},children:e})}function RC(e){return typeof e=="function"}const cLe=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function J3(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||cLe.has(e)}let $K=e=>!J3(e);function RK(e){typeof e=="function"&&($K=r=>r.startsWith("on")?!J3(r):e(r))}try{RK(require("@emotion/is-prop-valid").default)}catch{}function dLe(e,r,n){const o={};for(const i in e)i==="values"&&typeof e.values=="object"||($K(i)||n===!0&&J3(i)||!r&&!J3(i)||e.draggable&&i.startsWith("onDrag"))&&(o[i]=e[i]);return o}function uLe({children:e,isValidProp:r,...n}){r&&RK(r),n={...S.useContext(Ep),...n},n.isStatic=ag(()=>n.isStatic);const o=S.useMemo(()=>n,[JSON.stringify(n.transition),n.transformPagePoint,n.reducedMotion]);return y.jsx(Ep.Provider,{value:o,children:e})}const e2=S.createContext({});function pLe(e,r){if(K3(e)){const{initial:n,animate:o}=e;return{initial:n===!1||Vy(n)?n:void 0,animate:Vy(o)?o:void 0}}return e.inherit!==!1?r:{}}function hLe(e){const{initial:r,animate:n}=pLe(e,S.useContext(e2));return S.useMemo(()=>({initial:r,animate:n}),[zK(r),zK(n)])}function zK(e){return Array.isArray(e)?e.join(" "):e}const zC=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function TK(e,r,n){for(const o in r)!to(r[o])&&!hK(o,n)&&(e[o]=r[o])}function fLe({transformTemplate:e},r){return S.useMemo(()=>{const n=zC();return kC(n,r,e),Object.assign({},n.vars,n.style)},[r])}function gLe(e,r){const n=e.style||{},o={};return TK(o,n,e),Object.assign(o,fLe(e,r)),o}function mLe(e,r){const n={},o=gLe(e,r);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,o.userSelect=o.WebkitUserSelect=o.WebkitTouchCallout="none",o.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=o,n}const jK=()=>({...zC(),attrs:{}});function yLe(e,r,n,o){const i=S.useMemo(()=>{const a=jK();return gK(a,r,yK(o),e.transformTemplate,e.style),{...a.attrs,style:{...a.style}}},[r]);if(e.style){const a={};TK(a,e.style,e),i.style={...a,...i.style}}return i}const vLe=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function TC(e){return typeof e!="string"||e.includes("-")?!1:!!(vLe.indexOf(e)>-1||/[A-Z]/u.test(e))}function bLe(e,r,n,{latestValues:o},i,a=!1){const l=(TC(e)?yLe:mLe)(r,o,i,e),s=dLe(r,typeof e=="string",a),c=e!==S.Fragment?{...s,...l,ref:n}:{},{children:d}=r,u=S.useMemo(()=>to(d)?d.get():d,[d]);return S.createElement(e,{...c,children:u})}function t2(e){return to(e)?e.get():e}function xLe({scrapeMotionValuesFromProps:e,createRenderState:r},n,o,i){return{latestValues:wLe(n,o,i,e),renderState:r()}}function wLe(e,r,n,o){const i={},a=o(e,{});for(const f in a)i[f]=t2(a[f]);let{initial:l,animate:s}=e;const c=K3(e),d=lK(e);r&&d&&!c&&e.inherit!==!1&&(l===void 0&&(l=r.initial),s===void 0&&(s=r.animate));let u=n?n.initial===!1:!1;u=u||l===!1;const p=u?s:l;if(p&&typeof p!="boolean"&&!X3(p)){const f=Array.isArray(p)?p:[p];for(let m=0;m(r,n)=>{const o=S.useContext(e2),i=S.useContext(Z3),a=()=>xLe(e,r,o,i);return n?a():ag(a)},kLe=AK({scrapeMotionValuesFromProps:SC,createRenderState:zC}),_Le=AK({scrapeMotionValuesFromProps:vK,createRenderState:jK}),SLe=Symbol.for("motionComponentSymbol");function sg(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function ELe(e,r,n){return S.useCallback(o=>{o&&e.onMount&&e.onMount(o),r&&(o?r.mount(o):r.unmount()),n&&(typeof n=="function"?n(o):sg(n)&&(n.current=o))},[r])}const DK=S.createContext({});function CLe(e,r,n,o,i){const{visualElement:a}=S.useContext(e2),l=S.useContext(CC),s=S.useContext(Z3),c=S.useContext(Ep).reducedMotion,d=S.useRef(null);o=o||l.renderer,!d.current&&o&&(d.current=o(e,{visualState:r,parent:a,props:n,presenceContext:s,blockInitialAnimation:s?s.initial===!1:!1,reducedMotionConfig:c}));const u=d.current,p=S.useContext(DK);u&&!u.projection&&i&&(u.type==="html"||u.type==="svg")&&$Le(d.current,n,i,p);const f=S.useRef(!1);S.useInsertionEffect(()=>{u&&f.current&&u.update(n,s)});const m=n[WX],v=S.useRef(!!m&&!window.MotionHandoffIsComplete?.(m)&&window.MotionHasOptimisedAnimation?.(m));return EC(()=>{u&&(f.current=!0,window.MotionIsMounted=!0,u.updateFeatures(),u.scheduleRenderMicrotask(),v.current&&u.animationState&&u.animationState.animateChanges())}),S.useEffect(()=>{u&&(!v.current&&u.animationState&&u.animationState.animateChanges(),v.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(m)}),v.current=!1),u.enteringChildren=void 0)}),u}function $Le(e,r,n,o){const{layoutId:i,layout:a,drag:l,dragConstraints:s,layoutScroll:c,layoutRoot:d,layoutCrossfade:u}=r;e.projection=new n(e.latestValues,r["data-framer-portal-id"]?void 0:PK(e.parent)),e.projection.setOptions({layoutId:i,layout:a,alwaysMeasureLayout:!!l||s&&sg(s),visualElement:e,animationType:typeof a=="string"?a:"both",initialPromotionConfig:o,crossfade:u,layoutScroll:c,layoutRoot:d})}function PK(e){if(e)return e.options.allowProjection!==!1?e.projection:PK(e.parent)}function r2(e,{forwardMotionProps:r=!1}={},n,o){n&&$C(n);const i=TC(e)?_Le:kLe;function a(s,c){let d;const u={...S.useContext(Ep),...s,layoutId:RLe(s)},{isStatic:p}=u,f=hLe(s),m=i(s,p);if(!p&&vC){zLe();const v=TLe(u);d=v.MeasureLayout,f.visualElement=CLe(e,m,u,o,v.ProjectionNode)}return y.jsxs(e2.Provider,{value:f,children:[d&&f.visualElement?y.jsx(d,{visualElement:f.visualElement,...u}):null,bLe(e,s,ELe(m,f.visualElement,c),m,p,r)]})}a.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const l=S.forwardRef(a);return l[SLe]=e,l}function RLe({layoutId:e}){const r=S.useContext(Hy).id;return r&&e!==void 0?r+"-"+e:e}function zLe(e,r){S.useContext(CC).strict}function TLe(e){const{drag:r,layout:n}=og;if(!r&&!n)return{};const o={...r,...n};return{MeasureLayout:r?.isEnabled(e)||n?.isEnabled(e)?o.MeasureLayout:void 0,ProjectionNode:o.ProjectionNode}}function jLe(e,r){if(typeof Proxy>"u")return r2;const n=new Map,o=(a,l)=>r2(a,l,e,r),i=(a,l)=>o(a,l);return new Proxy(i,{get:(a,l)=>l==="create"?o:(n.has(l)||n.set(l,r2(l,void 0,e,r)),n.get(l))})}const ga=jLe(),ALe=(e,r)=>TC(e)?new bK(r):new fK(r,{allowProjection:e!==S.Fragment});function MK(e,r,n,o=0,i=1){const a=Array.from(e).sort((c,d)=>c.sortNodePosition(d)).indexOf(r),l=e.size,s=(l-1)*o;return typeof n=="function"?n(a,l):i===1?a*o:s-a*o}function jC(e,r,n={}){const o=tg(e,r,n.type==="exit"?e.presenceContext?.custom:void 0);let{transition:i=e.getDefaultTransition()||{}}=o||{};n.transitionOverride&&(i=n.transitionOverride);const a=o?()=>Promise.all(fC(e,o,n)):()=>Promise.resolve(),l=e.variantChildren&&e.variantChildren.size?(c=0)=>{const{delayChildren:d=0,staggerChildren:u,staggerDirection:p}=i;return DLe(e,r,c,d,u,p,n)}:()=>Promise.resolve(),{when:s}=i;if(s){const[c,d]=s==="beforeChildren"?[a,l]:[l,a];return c().then(()=>d())}else return Promise.all([a(),l(n.delay)])}function DLe(e,r,n=0,o=0,i=0,a=1,l){const s=[];for(const c of e.variantChildren)c.notify("AnimationStart",r),s.push(jC(c,r,{...l,delay:n+(typeof o=="function"?0:o)+MK(e.variantChildren,c,o,i,a)}).then(()=>c.notify("AnimationComplete",r)));return Promise.all(s)}function PLe(e,r,n={}){e.notify("AnimationStart",r);let o;if(Array.isArray(r)){const i=r.map(a=>jC(e,a,n));o=Promise.all(i)}else if(typeof r=="string")o=jC(e,r,n);else{const i=typeof r=="function"?tg(e,r,n.custom):r;o=Promise.all(fC(e,i,n))}return o.then(()=>{e.notify("AnimationComplete",r)})}function NK(e,r){if(!Array.isArray(r))return!1;const n=r.length;if(n!==e.length)return!1;for(let o=0;oPromise.all(r.map(({animation:n,options:o})=>PLe(e,n,o)))}function OLe(e){let r=ILe(e),n=IK(),o=!0;const i=c=>(d,u)=>{const p=tg(e,u,c==="exit"?e.presenceContext?.custom:void 0);if(p){const{transition:f,transitionEnd:m,...v}=p;d={...d,...v,...m}}return d};function a(c){r=c(e)}function l(c){const{props:d}=e,u=BK(e.parent)||{},p=[],f=new Set;let m={},v=1/0;for(let x=0;xv&&$,j=!1;const I=Array.isArray(_)?_:[_];let N=I.reduce(i(k),{});R===!1&&(N={});const{prevResolvedValues:L={}}=C,H={...L,...N},P=B=>{z=!0,f.has(B)&&(j=!0,f.delete(B)),C.needsAnimating[B]=!0;const F=e.getValue(B);F&&(F.liveStyle=!1)};for(const B in H){const F=N[B],q=L[B];if(m.hasOwnProperty(B))continue;let G=!1;cC(F)&&cC(q)?G=!NK(F,q):G=F!==q,G?F!=null?P(B):f.add(B):F!==void 0&&f.has(B)?P(B):C.protectedKeys[B]=!0}C.prevProp=_,C.prevResolvedValues=N,C.isActive&&(m={...m,...N}),o&&e.blockInitialAnimation&&(z=!1);const V=T&&A;z&&(!V||j)&&p.push(...I.map(B=>{const F={type:k};if(typeof B=="string"&&o&&!V&&e.manuallyAnimateOnMount&&e.parent){const{parent:q}=e,G=tg(q,B);if(q.enteringChildren&&G){const{delayChildren:U}=G.transition||{};F.delay=MK(q.enteringChildren,e,U)}}return{animation:B,options:F}}))}if(f.size){const x={};if(typeof d.initial!="boolean"){const k=tg(e,Array.isArray(d.initial)?d.initial[0]:d.initial);k&&k.transition&&(x.transition=k.transition)}f.forEach(k=>{const C=e.getBaseTarget(k),_=e.getValue(k);_&&(_.liveStyle=!0),x[k]=C??null}),p.push({animation:x})}let w=!!p.length;return o&&(d.initial===!1||d.initial===d.animate)&&!e.manuallyAnimateOnMount&&(w=!1),o=!1,w?r(p):Promise.resolve()}function s(c,d){if(n[c].isActive===d)return Promise.resolve();e.variantChildren?.forEach(p=>p.animationState?.setActive(c,d)),n[c].isActive=d;const u=l(c);for(const p in n)n[p].protectedKeys={};return u}return{animateChanges:l,setActive:s,setAnimateFunction:a,getState:()=>n,reset:()=>{n=IK()}}}function LLe(e,r){return typeof r=="string"?r!==e:Array.isArray(r)?!NK(r,e):!1}function Cp(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function IK(){return{animate:Cp(!0),whileInView:Cp(),whileHover:Cp(),whileTap:Cp(),whileDrag:Cp(),whileFocus:Cp(),exit:Cp()}}class Td{constructor(r){this.isMounted=!1,this.node=r}update(){}}class FLe extends Td{constructor(r){super(r),r.animationState||(r.animationState=OLe(r))}updateAnimationControlsSubscription(){const{animate:r}=this.node.getProps();X3(r)&&(this.unmountControls=r.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:r}=this.node.getProps(),{animate:n}=this.node.prevProps||{};r!==n&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}}let VLe=0;class qLe extends Td{constructor(){super(...arguments),this.id=VLe++}update(){if(!this.node.presenceContext)return;const{isPresent:r,onExitComplete:n}=this.node.presenceContext,{isPresent:o}=this.node.prevPresenceContext||{};if(!this.node.animationState||r===o)return;const i=this.node.animationState.setActive("exit",!r);n&&!r&&i.then(()=>{n(this.id)})}mount(){const{register:r,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),r&&(this.unmount=r(this.id))}unmount(){}}const HLe={animation:{Feature:FLe},exit:{Feature:qLe}};function Uy(e,r,n,o={passive:!0}){return e.addEventListener(r,n,o),()=>e.removeEventListener(r,n)}function Wy(e){return{point:{x:e.pageX,y:e.pageY}}}const ULe=e=>r=>iC(r)&&e(r,Wy(r));function Gy(e,r,n,o){return Uy(e,r,ULe(n),o)}const OK=1e-4,WLe=1-OK,GLe=1+OK,LK=.01,YLe=0-LK,XLe=0+LK;function Vo(e){return e.max-e.min}function KLe(e,r,n){return Math.abs(e-r)<=n}function FK(e,r,n,o=.5){e.origin=o,e.originPoint=Lr(r.min,r.max,e.origin),e.scale=Vo(n)/Vo(r),e.translate=Lr(n.min,n.max,e.origin)-e.originPoint,(e.scale>=WLe&&e.scale<=GLe||isNaN(e.scale))&&(e.scale=1),(e.translate>=YLe&&e.translate<=XLe||isNaN(e.translate))&&(e.translate=0)}function Yy(e,r,n,o){FK(e.x,r.x,n.x,o?o.originX:void 0),FK(e.y,r.y,n.y,o?o.originY:void 0)}function VK(e,r,n){e.min=n.min+r.min,e.max=e.min+Vo(r)}function ZLe(e,r,n){VK(e.x,r.x,n.x),VK(e.y,r.y,n.y)}function qK(e,r,n){e.min=r.min-n.min,e.max=e.min+Vo(r)}function n2(e,r,n){qK(e.x,r.x,n.x),qK(e.y,r.y,n.y)}function ma(e){return[e("x"),e("y")]}const HK=({current:e})=>e?e.ownerDocument.defaultView:null;class UK{constructor(r,n,{transformPagePoint:o,contextWindow:i=window,dragSnapToOrigin:a=!1,distanceThreshold:l=3}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const f=DC(this.lastMoveEventInfo,this.history),m=this.startEvent!==null,v=XOe(f.offset,{x:0,y:0})>=this.distanceThreshold;if(!m&&!v)return;const{point:w}=f,{timestamp:x}=so;this.history.push({...w,timestamp:x});const{onStart:k,onMove:C}=this.handlers;m||(k&&k(this.lastMoveEvent,f),this.startEvent=this.lastMoveEvent),C&&C(this.lastMoveEvent,f)},this.handlePointerMove=(f,m)=>{this.lastMoveEvent=f,this.lastMoveEventInfo=AC(m,this.transformPagePoint),Dr.update(this.updatePoint,!0)},this.handlePointerUp=(f,m)=>{this.end();const{onEnd:v,onSessionEnd:w,resumeAnimation:x}=this.handlers;if(this.dragSnapToOrigin&&x&&x(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const k=DC(f.type==="pointercancel"?this.lastMoveEventInfo:AC(m,this.transformPagePoint),this.history);this.startEvent&&v&&v(f,k),w&&w(f,k)},!iC(r))return;this.dragSnapToOrigin=a,this.handlers=n,this.transformPagePoint=o,this.distanceThreshold=l,this.contextWindow=i||window;const s=Wy(r),c=AC(s,this.transformPagePoint),{point:d}=c,{timestamp:u}=so;this.history=[{...d,timestamp:u}];const{onSessionStart:p}=n;p&&p(r,DC(c,this.history)),this.removeListeners=Ay(Gy(this.contextWindow,"pointermove",this.handlePointerMove),Gy(this.contextWindow,"pointerup",this.handlePointerUp),Gy(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(r){this.handlers=r}end(){this.removeListeners&&this.removeListeners(),$d(this.updatePoint)}}function AC(e,r){return r?{point:r(e.point)}:e}function WK(e,r){return{x:e.x-r.x,y:e.y-r.y}}function DC({point:e},r){return{point:e,delta:WK(e,GK(r)),offset:WK(e,QLe(r)),velocity:JLe(r,.1)}}function QLe(e){return e[0]}function GK(e){return e[e.length-1]}function JLe(e,r){if(e.length<2)return{x:0,y:0};let n=e.length-1,o=null;const i=GK(e);for(;n>=0&&(o=e[n],!(i.timestamp-o.timestamp>al(r)));)n--;if(!o)return{x:0,y:0};const a=fa(i.timestamp-o.timestamp);if(a===0)return{x:0,y:0};const l={x:(i.x-o.x)/a,y:(i.y-o.y)/a};return l.x===1/0&&(l.x=0),l.y===1/0&&(l.y=0),l}function eFe(e,{min:r,max:n},o){return r!==void 0&&en&&(e=o?Lr(n,e,o.max):Math.min(e,n)),e}function YK(e,r,n){return{min:r!==void 0?e.min+r:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function tFe(e,{top:r,left:n,bottom:o,right:i}){return{x:YK(e.x,n,i),y:YK(e.y,r,o)}}function XK(e,r){let n=r.min-e.min,o=r.max-e.max;return r.max-r.mino?n=Kf(r.min,r.max-o,e.min):o>i&&(n=Kf(e.min,e.max-i,r.min)),oc(0,1,n)}function oFe(e,r){const n={};return r.min!==void 0&&(n.min=r.min-e.min),r.max!==void 0&&(n.max=r.max-e.min),n}const PC=.35;function iFe(e=PC){return e===!1?e=0:e===!0&&(e=PC),{x:KK(e,"left","right"),y:KK(e,"top","bottom")}}function KK(e,r,n){return{min:ZK(e,r),max:ZK(e,n)}}function ZK(e,r){return typeof e=="number"?e:e[r]||0}const aFe=new WeakMap;class lFe{constructor(r){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=En(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=r}start(r,{snapToCursor:n=!1,distanceThreshold:o}={}){const{presenceContext:i}=this.visualElement;if(i&&i.isPresent===!1)return;const a=p=>{const{dragSnapToOrigin:f}=this.getProps();f?this.pauseAnimation():this.stopAnimation(),n&&this.snapToCursor(Wy(p).point)},l=(p,f)=>{const{drag:m,dragPropagation:v,onDragStart:w}=this.getProps();if(m&&!v&&(this.openDragLock&&this.openDragLock(),this.openDragLock=WIe(m),!this.openDragLock))return;this.latestPointerEvent=p,this.latestPanInfo=f,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),ma(k=>{let C=this.getAxisMotionValue(k).get()||0;if(os.test(C)){const{projection:_}=this.visualElement;if(_&&_.layout){const $=_.layout.layoutBox[k];$&&(C=Vo($)*(parseFloat(C)/100))}}this.originPoint[k]=C}),w&&Dr.postRender(()=>w(p,f)),uC(this.visualElement,"transform");const{animationState:x}=this.visualElement;x&&x.setActive("whileDrag",!0)},s=(p,f)=>{this.latestPointerEvent=p,this.latestPanInfo=f;const{dragPropagation:m,dragDirectionLock:v,onDirectionLock:w,onDrag:x}=this.getProps();if(!m&&!this.openDragLock)return;const{offset:k}=f;if(v&&this.currentDirection===null){this.currentDirection=sFe(k),this.currentDirection!==null&&w&&w(this.currentDirection);return}this.updateAxis("x",f.point,k),this.updateAxis("y",f.point,k),this.visualElement.render(),x&&x(p,f)},c=(p,f)=>{this.latestPointerEvent=p,this.latestPanInfo=f,this.stop(p,f),this.latestPointerEvent=null,this.latestPanInfo=null},d=()=>ma(p=>this.getAnimationState(p)==="paused"&&this.getAxisMotionValue(p).animation?.play()),{dragSnapToOrigin:u}=this.getProps();this.panSession=new UK(r,{onSessionStart:a,onStart:l,onMove:s,onSessionEnd:c,resumeAnimation:d},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:o,contextWindow:HK(this.visualElement)})}stop(r,n){const o=r||this.latestPointerEvent,i=n||this.latestPanInfo,a=this.isDragging;if(this.cancel(),!a||!i||!o)return;const{velocity:l}=i;this.startAnimation(l);const{onDragEnd:s}=this.getProps();s&&Dr.postRender(()=>s(o,i))}cancel(){this.isDragging=!1;const{projection:r,animationState:n}=this.visualElement;r&&(r.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:o}=this.getProps();!o&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}updateAxis(r,n,o){const{drag:i}=this.getProps();if(!o||!o2(r,i,this.currentDirection))return;const a=this.getAxisMotionValue(r);let l=this.originPoint[r]+o[r];this.constraints&&this.constraints[r]&&(l=eFe(l,this.constraints[r],this.elastic[r])),a.set(l)}resolveConstraints(){const{dragConstraints:r,dragElastic:n}=this.getProps(),o=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):this.visualElement.projection?.layout,i=this.constraints;r&&sg(r)?this.constraints||(this.constraints=this.resolveRefConstraints()):r&&o?this.constraints=tFe(o.layoutBox,r):this.constraints=!1,this.elastic=iFe(n),i!==this.constraints&&o&&this.constraints&&!this.hasMutatedConstraints&&ma(a=>{this.constraints!==!1&&this.getAxisMotionValue(a)&&(this.constraints[a]=oFe(o.layoutBox[a],this.constraints[a]))})}resolveRefConstraints(){const{dragConstraints:r,onMeasureDragConstraints:n}=this.getProps();if(!r||!sg(r))return!1;const o=r.current,{projection:i}=this.visualElement;if(!i||!i.layout)return!1;const a=ROe(o,i.root,this.visualElement.getTransformPagePoint());let l=rFe(i.layout.layoutBox,a);if(n){const s=n(EOe(l));this.hasMutatedConstraints=!!s,s&&(l=YX(s))}return l}startAnimation(r){const{drag:n,dragMomentum:o,dragElastic:i,dragTransition:a,dragSnapToOrigin:l,onDragTransitionEnd:s}=this.getProps(),c=this.constraints||{},d=ma(u=>{if(!o2(u,n,this.currentDirection))return;let p=c&&c[u]||{};l&&(p={min:0,max:0});const f=i?200:1e6,m=i?40:1e7,v={type:"inertia",velocity:o?r[u]:0,bounceStiffness:f,bounceDamping:m,timeConstant:750,restDelta:1,restSpeed:10,...a,...p};return this.startAxisValueAnimation(u,v)});return Promise.all(d).then(s)}startAxisValueAnimation(r,n){const o=this.getAxisMotionValue(r);return uC(this.visualElement,r),o.start(hC(r,o,0,n,this.visualElement,!1))}stopAnimation(){ma(r=>this.getAxisMotionValue(r).stop())}pauseAnimation(){ma(r=>this.getAxisMotionValue(r).animation?.pause())}getAnimationState(r){return this.getAxisMotionValue(r).animation?.state}getAxisMotionValue(r){const n=`_drag${r.toUpperCase()}`,o=this.visualElement.getProps();return o[n]||this.visualElement.getValue(r,(o.initial?o.initial[r]:void 0)||0)}snapToCursor(r){ma(n=>{const{drag:o}=this.getProps();if(!o2(n,o,this.currentDirection))return;const{projection:i}=this.visualElement,a=this.getAxisMotionValue(n);if(i&&i.layout){const{min:l,max:s}=i.layout.layoutBox[n];a.set(r[n]-Lr(l,s,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:r,dragConstraints:n}=this.getProps(),{projection:o}=this.visualElement;if(!sg(n)||!o||!this.constraints)return;this.stopAnimation();const i={x:0,y:0};ma(l=>{const s=this.getAxisMotionValue(l);if(s&&this.constraints!==!1){const c=s.get();i[l]=nFe({min:c,max:c},this.constraints[l])}});const{transformTemplate:a}=this.visualElement.getProps();this.visualElement.current.style.transform=a?a({},""):"none",o.root&&o.root.updateScroll(),o.updateLayout(),this.resolveConstraints(),ma(l=>{if(!o2(l,r,null))return;const s=this.getAxisMotionValue(l),{min:c,max:d}=this.constraints[l];s.set(Lr(c,d,i[l]))})}addListeners(){if(!this.visualElement.current)return;aFe.set(this.visualElement,this);const r=this.visualElement.current,n=Gy(r,"pointerdown",c=>{const{drag:d,dragListener:u=!0}=this.getProps();d&&u&&this.start(c)}),o=()=>{const{dragConstraints:c}=this.getProps();sg(c)&&c.current&&(this.constraints=this.resolveRefConstraints())},{projection:i}=this.visualElement,a=i.addEventListener("measure",o);i&&!i.layout&&(i.root&&i.root.updateScroll(),i.updateLayout()),Dr.read(o);const l=Uy(window,"resize",()=>this.scalePositionWithinConstraints()),s=i.addEventListener("didUpdate",(({delta:c,hasLayoutChanged:d})=>{this.isDragging&&d&&(ma(u=>{const p=this.getAxisMotionValue(u);p&&(this.originPoint[u]+=c[u].translate,p.set(p.get()+c[u].translate))}),this.visualElement.render())}));return()=>{l(),n(),a(),s&&s()}}getProps(){const r=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:o=!1,dragPropagation:i=!1,dragConstraints:a=!1,dragElastic:l=PC,dragMomentum:s=!0}=r;return{...r,drag:n,dragDirectionLock:o,dragPropagation:i,dragConstraints:a,dragElastic:l,dragMomentum:s}}}function o2(e,r,n){return(r===!0||r===e)&&(n===null||n===e)}function sFe(e,r=10){let n=null;return Math.abs(e.y)>r?n="y":Math.abs(e.x)>r&&(n="x"),n}class cFe extends Td{constructor(r){super(r),this.removeGroupControls=ha,this.removeListeners=ha,this.controls=new lFe(r)}mount(){const{dragControls:r}=this.node.getProps();r&&(this.removeGroupControls=r.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||ha}unmount(){this.removeGroupControls(),this.removeListeners()}}const QK=e=>(r,n)=>{e&&Dr.postRender(()=>e(r,n))};class dFe extends Td{constructor(){super(...arguments),this.removePointerDownListener=ha}onPointerDown(r){this.session=new UK(r,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:HK(this.node)})}createPanHandlers(){const{onPanSessionStart:r,onPanStart:n,onPan:o,onPanEnd:i}=this.node.getProps();return{onSessionStart:QK(r),onStart:QK(n),onMove:o,onEnd:(a,l)=>{delete this.session,i&&Dr.postRender(()=>i(a,l))}}}mount(){this.removePointerDownListener=Gy(this.node.current,"pointerdown",r=>this.onPointerDown(r))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}const i2={hasAnimatedSinceResize:!0,hasEverUpdated:!1};let MC=!1;class uFe extends S.Component{componentDidMount(){const{visualElement:r,layoutGroup:n,switchLayoutGroup:o,layoutId:i}=this.props,{projection:a}=r;a&&(n.group&&n.group.add(a),o&&o.register&&i&&o.register(a),MC&&a.root.didUpdate(),a.addEventListener("animationComplete",()=>{this.safeToRemove()}),a.setOptions({...a.options,onExitComplete:()=>this.safeToRemove()})),i2.hasEverUpdated=!0}getSnapshotBeforeUpdate(r){const{layoutDependency:n,visualElement:o,drag:i,isPresent:a}=this.props,{projection:l}=o;return l&&(l.isPresent=a,MC=!0,i||r.layoutDependency!==n||n===void 0||r.isPresent!==a?l.willUpdate():this.safeToRemove(),r.isPresent!==a&&(a?l.promote():l.relegate()||Dr.postRender(()=>{const s=l.getStack();(!s||!s.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:r}=this.props.visualElement;r&&(r.root.didUpdate(),oC.postRender(()=>{!r.currentAnimation&&r.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:r,layoutGroup:n,switchLayoutGroup:o}=this.props,{projection:i}=r;MC=!0,i&&(i.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(i),o&&o.deregister&&o.deregister(i))}safeToRemove(){const{safeToRemove:r}=this.props;r&&r()}render(){return null}}function JK(e){const[r,n]=SK(),o=S.useContext(Hy);return y.jsx(uFe,{...e,layoutGroup:o,switchLayoutGroup:S.useContext(DK),isPresent:r,safeToRemove:n})}const pFe=(e,r)=>e.depth-r.depth;class hFe{constructor(){this.children=[],this.isDirty=!1}add(r){kE(this.children,r),this.isDirty=!0}remove(r){L3(this.children,r),this.isDirty=!0}forEach(r){this.isDirty&&this.children.sort(pFe),this.isDirty=!1,this.children.forEach(r)}}const eZ=["TopLeft","TopRight","BottomLeft","BottomRight"],fFe=eZ.length,tZ=e=>typeof e=="string"?parseFloat(e):e,rZ=e=>typeof e=="number"||_t.test(e);function gFe(e,r,n,o,i,a){i?(e.opacity=Lr(0,n.opacity??1,mFe(o)),e.opacityExit=Lr(r.opacity??1,0,yFe(o))):a&&(e.opacity=Lr(r.opacity??1,n.opacity??1,o));for(let l=0;lor?1:n(Kf(e,r,o))}function iZ(e,r){e.min=r.min,e.max=r.max}function sl(e,r){iZ(e.x,r.x),iZ(e.y,r.y)}function aZ(e,r){e.translate=r.translate,e.scale=r.scale,e.originPoint=r.originPoint,e.origin=r.origin}function lZ(e,r,n,o,i){return e-=r,e=G3(e,1/n,o),i!==void 0&&(e=G3(e,1/i,o)),e}function vFe(e,r=0,n=1,o=.5,i,a=e,l=e){if(os.test(r)&&(r=parseFloat(r),r=Lr(l.min,l.max,r/100)-l.min),typeof r!="number")return;let s=Lr(a.min,a.max,o);e===a&&(s-=r),e.min=lZ(e.min,r,n,s,i),e.max=lZ(e.max,r,n,s,i)}function sZ(e,r,[n,o,i],a,l){vFe(e,r[n],r[o],r[i],r.scale,a,l)}const bFe=["x","scaleX","originX"],xFe=["y","scaleY","originY"];function cZ(e,r,n,o){sZ(e.x,r,bFe,n?n.x:void 0,o?o.x:void 0),sZ(e.y,r,xFe,n?n.y:void 0,o?o.y:void 0)}function dZ(e){return e.translate===0&&e.scale===1}function uZ(e){return dZ(e.x)&&dZ(e.y)}function pZ(e,r){return e.min===r.min&&e.max===r.max}function wFe(e,r){return pZ(e.x,r.x)&&pZ(e.y,r.y)}function hZ(e,r){return Math.round(e.min)===Math.round(r.min)&&Math.round(e.max)===Math.round(r.max)}function fZ(e,r){return hZ(e.x,r.x)&&hZ(e.y,r.y)}function gZ(e){return Vo(e.x)/Vo(e.y)}function mZ(e,r){return e.translate===r.translate&&e.scale===r.scale&&e.originPoint===r.originPoint}class kFe{constructor(){this.members=[]}add(r){kE(this.members,r),r.scheduleRender()}remove(r){if(L3(this.members,r),r===this.prevLead&&(this.prevLead=void 0),r===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(r){const n=this.members.findIndex(i=>r===i);if(n===0)return!1;let o;for(let i=n;i>=0;i--){const a=this.members[i];if(a.isPresent!==!1){o=a;break}}return o?(this.promote(o),!0):!1}promote(r,n){const o=this.lead;if(r!==o&&(this.prevLead=o,this.lead=r,r.show(),o)){o.instance&&o.scheduleRender(),r.scheduleRender(),r.resumeFrom=o,n&&(r.resumeFrom.preserveOpacity=!0),o.snapshot&&(r.snapshot=o.snapshot,r.snapshot.latestValues=o.animationValues||o.latestValues),r.root&&r.root.isUpdating&&(r.isLayoutDirty=!0);const{crossfade:i}=r.options;i===!1&&o.hide()}}exitAnimationComplete(){this.members.forEach(r=>{const{options:n,resumingFrom:o}=r;n.onExitComplete&&n.onExitComplete(),o&&o.options.onExitComplete&&o.options.onExitComplete()})}scheduleRender(){this.members.forEach(r=>{r.instance&&r.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function _Fe(e,r,n){let o="";const i=e.x.translate/r.x,a=e.y.translate/r.y,l=n?.z||0;if((i||a||l)&&(o=`translate3d(${i}px, ${a}px, ${l}px) `),(r.x!==1||r.y!==1)&&(o+=`scale(${1/r.x}, ${1/r.y}) `),n){const{transformPerspective:d,rotate:u,rotateX:p,rotateY:f,skewX:m,skewY:v}=n;d&&(o=`perspective(${d}px) ${o}`),u&&(o+=`rotate(${u}deg) `),p&&(o+=`rotateX(${p}deg) `),f&&(o+=`rotateY(${f}deg) `),m&&(o+=`skewX(${m}deg) `),v&&(o+=`skewY(${v}deg) `)}const s=e.x.scale*r.x,c=e.y.scale*r.y;return(s!==1||c!==1)&&(o+=`scale(${s}, ${c})`),o||"none"}const NC=["","X","Y","Z"],SFe=1e3;let EFe=0;function BC(e,r,n,o){const{latestValues:i}=r;i[e]&&(n[e]=i[e],r.setStaticValue(e,0),o&&(o[e]=0))}function yZ(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:r}=e.options;if(!r)return;const n=GX(r);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:i,layoutId:a}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",Dr,!(i||a))}const{parent:o}=e;o&&!o.hasCheckedOptimisedAppear&&yZ(o)}function vZ({attachResizeListener:e,defaultParent:r,measureScroll:n,checkIsScrollRoot:o,resetTransform:i}){return class{constructor(a={},l=r?.()){this.id=EFe++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(RFe),this.nodes.forEach(AFe),this.nodes.forEach(DFe),this.nodes.forEach(zFe)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=a,this.root=l?l.root||l:this,this.path=l?[...l.path,l]:[],this.parent=l,this.depth=l?l.depth+1:0;for(let s=0;sthis.root.updateBlockedByResize=!1;Dr.read(()=>{u=window.innerWidth}),e(a,()=>{const f=window.innerWidth;f!==u&&(u=f,this.root.updateBlockedByResize=!0,d&&d(),d=YOe(p,250),i2.hasAnimatedSinceResize&&(i2.hasAnimatedSinceResize=!1,this.nodes.forEach(wZ)))})}l&&this.root.registerSharedNode(l,this),this.options.animate!==!1&&c&&(l||s)&&this.addEventListener("didUpdate",({delta:d,hasLayoutChanged:u,hasRelativeLayoutChanged:p,layout:f})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const m=this.options.transition||c.getDefaultTransition()||IFe,{onLayoutAnimationStart:v,onLayoutAnimationComplete:w}=c.getProps(),x=!this.targetLayout||!fZ(this.targetLayout,f),k=!u&&p;if(this.options.layoutRoot||this.resumeFrom||k||u&&(x||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const C={...tC(m,"layout"),onPlay:v,onComplete:w};(c.shouldReduceMotion||this.options.layoutRoot)&&(C.delay=0,C.type=!1),this.startAnimation(C),this.setAnimationOrigin(d,k)}else u||wZ(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=f})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const a=this.getStack();a&&a.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),$d(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(PFe),this.animationId++)}getTransformTemplate(){const{visualElement:a}=this.options;return a&&a.getProps().transformTemplate}willUpdate(a=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&yZ(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let d=0;d{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!Vo(this.snapshot.measuredBox.x)&&!Vo(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let s=0;s{const $=_/1e3;kZ(u.x,a.x,$),kZ(u.y,a.y,$),this.setTargetDelta(u),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(n2(p,this.layout.layoutBox,this.relativeParent.layout.layoutBox),NFe(this.relativeTarget,this.relativeTargetOrigin,p,$),C&&wFe(this.relativeTarget,C)&&(this.isProjectionDirty=!1),C||(C=En()),sl(C,this.relativeTarget)),v&&(this.animationValues=d,gFe(d,c,this.latestValues,$,k,x)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=$},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(a){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&($d(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Dr.update(()=>{i2.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=_p(0)),this.currentAnimation=xK(this.motionValue,[0,1e3],{...a,velocity:0,isSync:!0,onUpdate:l=>{this.mixTargetDelta(l),a.onUpdate&&a.onUpdate(l)},onStop:()=>{},onComplete:()=>{a.onComplete&&a.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const a=this.getStack();a&&a.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(SFe),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const a=this.getLead();let{targetWithTransforms:l,target:s,layout:c,latestValues:d}=a;if(!(!l||!s||!c)){if(this!==a&&this.layout&&c&&$Z(this.options.animationType,this.layout.layoutBox,c.layoutBox)){s=this.target||En();const u=Vo(this.layout.layoutBox.x);s.x.min=a.target.x.min,s.x.max=s.x.min+u;const p=Vo(this.layout.layoutBox.y);s.y.min=a.target.y.min,s.y.max=s.y.min+p}sl(l,s),ng(l,d),Yy(this.projectionDeltaWithTransform,this.layoutCorrected,l,d)}}registerSharedNode(a,l){this.sharedNodes.has(a)||this.sharedNodes.set(a,new kFe),this.sharedNodes.get(a).add(l);const s=l.options.initialPromotionConfig;l.promote({transition:s?s.transition:void 0,preserveFollowOpacity:s&&s.shouldPreserveFollowOpacity?s.shouldPreserveFollowOpacity(l):void 0})}isLead(){const a=this.getStack();return a?a.lead===this:!0}getLead(){const{layoutId:a}=this.options;return a?this.getStack()?.lead||this:this}getPrevLead(){const{layoutId:a}=this.options;return a?this.getStack()?.prevLead:void 0}getStack(){const{layoutId:a}=this.options;if(a)return this.root.sharedNodes.get(a)}promote({needsReset:a,transition:l,preserveFollowOpacity:s}={}){const c=this.getStack();c&&c.promote(this,s),a&&(this.projectionDelta=void 0,this.needsReset=!0),l&&this.setOptions({transition:l})}relegate(){const a=this.getStack();return a?a.relegate(this):!1}resetSkewAndRotation(){const{visualElement:a}=this.options;if(!a)return;let l=!1;const{latestValues:s}=a;if((s.z||s.rotate||s.rotateX||s.rotateY||s.rotateZ||s.skewX||s.skewY)&&(l=!0),!l)return;const c={};s.z&&BC("z",a,c,this.animationValues);for(let d=0;da.currentAnimation?.stop()),this.root.nodes.forEach(bZ),this.root.sharedNodes.clear()}}}function CFe(e){e.updateLayout()}function $Fe(e){const r=e.resumeFrom?.snapshot||e.snapshot;if(e.isLead()&&e.layout&&r&&e.hasListeners("didUpdate")){const{layoutBox:n,measuredBox:o}=e.layout,{animationType:i}=e.options,a=r.source!==e.layout.source;i==="size"?ma(u=>{const p=a?r.measuredBox[u]:r.layoutBox[u],f=Vo(p);p.min=n[u].min,p.max=p.min+f}):$Z(i,r.layoutBox,n)&&ma(u=>{const p=a?r.measuredBox[u]:r.layoutBox[u],f=Vo(n[u]);p.max=p.min+f,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[u].max=e.relativeTarget[u].min+f)});const l=ig();Yy(l,n,r.layoutBox);const s=ig();a?Yy(s,e.applyTransform(o,!0),r.measuredBox):Yy(s,n,r.layoutBox);const c=!uZ(l);let d=!1;if(!e.resumeFrom){const u=e.getClosestProjectingParent();if(u&&!u.resumeFrom){const{snapshot:p,layout:f}=u;if(p&&f){const m=En();n2(m,r.layoutBox,p.layoutBox);const v=En();n2(v,n,f.layoutBox),fZ(m,v)||(d=!0),u.options.layoutRoot&&(e.relativeTarget=v,e.relativeTargetOrigin=m,e.relativeParent=u)}}}e.notifyListeners("didUpdate",{layout:n,snapshot:r,delta:s,layoutDelta:l,hasLayoutChanged:c,hasRelativeLayoutChanged:d})}else if(e.isLead()){const{onExitComplete:n}=e.options;n&&n()}e.options.transition=void 0}function RFe(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function zFe(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function TFe(e){e.clearSnapshot()}function bZ(e){e.clearMeasurements()}function xZ(e){e.isLayoutDirty=!1}function jFe(e){const{visualElement:r}=e.options;r&&r.getProps().onBeforeLayoutMeasure&&r.notify("BeforeLayoutMeasure"),e.resetTransform()}function wZ(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function AFe(e){e.resolveTargetDelta()}function DFe(e){e.calcProjection()}function PFe(e){e.resetSkewAndRotation()}function MFe(e){e.removeLeadSnapshot()}function kZ(e,r,n){e.translate=Lr(r.translate,0,n),e.scale=Lr(r.scale,1,n),e.origin=r.origin,e.originPoint=r.originPoint}function _Z(e,r,n,o){e.min=Lr(r.min,n.min,o),e.max=Lr(r.max,n.max,o)}function NFe(e,r,n,o){_Z(e.x,r.x,n.x,o),_Z(e.y,r.y,n.y,o)}function BFe(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const IFe={duration:.45,ease:[.4,0,.1,1]},SZ=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),EZ=SZ("applewebkit/")&&!SZ("chrome/")?Math.round:ha;function CZ(e){e.min=EZ(e.min),e.max=EZ(e.max)}function OFe(e){CZ(e.x),CZ(e.y)}function $Z(e,r,n){return e==="position"||e==="preserve-aspect"&&!KLe(gZ(r),gZ(n),.2)}function LFe(e){return e!==e.root&&e.scroll?.wasRoot}const FFe=vZ({attachResizeListener:(e,r)=>Uy(e,"resize",r),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),IC={current:void 0},RZ=vZ({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!IC.current){const e=new FFe({});e.mount(window),e.setOptions({layoutScroll:!0}),IC.current=e}return IC.current},resetTransform:(e,r)=>{e.style.transform=r!==void 0?r:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),VFe={pan:{Feature:dFe},drag:{Feature:cFe,ProjectionNode:RZ,MeasureLayout:JK}};function zZ(e,r,n){const{props:o}=e;e.animationState&&o.whileHover&&e.animationState.setActive("whileHover",n==="Start");const i="onHover"+n,a=o[i];a&&Dr.postRender(()=>a(r,Wy(r)))}class qFe extends Td{mount(){const{current:r}=this.node;r&&(this.unmount=GIe(r,(n,o)=>(zZ(this.node,o,"Start"),i=>zZ(this.node,i,"End"))))}unmount(){}}class HFe extends Td{constructor(){super(...arguments),this.isActive=!1}onFocus(){let r=!1;try{r=this.node.current.matches(":focus-visible")}catch{r=!0}!r||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=Ay(Uy(this.node.current,"focus",()=>this.onFocus()),Uy(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function TZ(e,r,n){const{props:o}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&o.whileTap&&e.animationState.setActive("whileTap",n==="Start");const i="onTap"+(n==="End"?"":n),a=o[i];a&&Dr.postRender(()=>a(r,Wy(r)))}class UFe extends Td{mount(){const{current:r}=this.node;r&&(this.unmount=ZIe(r,(n,o)=>(TZ(this.node,o,"Start"),(i,{success:a})=>TZ(this.node,i,a?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const OC=new WeakMap,LC=new WeakMap,WFe=e=>{const r=OC.get(e.target);r&&r(e)},GFe=e=>{e.forEach(WFe)};function YFe({root:e,...r}){const n=e||document;LC.has(n)||LC.set(n,{});const o=LC.get(n),i=JSON.stringify(r);return o[i]||(o[i]=new IntersectionObserver(GFe,{root:e,...r})),o[i]}function XFe(e,r,n){const o=YFe(r);return OC.set(e,n),o.observe(e),()=>{OC.delete(e),o.unobserve(e)}}const KFe={some:0,all:1};class ZFe extends Td{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:r={}}=this.node.getProps(),{root:n,margin:o,amount:i="some",once:a}=r,l={root:n?n.current:void 0,rootMargin:o,threshold:typeof i=="number"?i:KFe[i]},s=c=>{const{isIntersecting:d}=c;if(this.isInView===d||(this.isInView=d,a&&!d&&this.hasEnteredView))return;d&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",d);const{onViewportEnter:u,onViewportLeave:p}=this.node.getProps(),f=d?u:p;f&&f(c)};return XFe(this.node.current,l,s)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:r,prevProps:n}=this.node;["amount","margin","root"].some(QFe(r,n))&&this.startObserver()}unmount(){}}function QFe({viewport:e={}},{viewport:r={}}={}){return n=>e[n]!==r[n]}const JFe={inView:{Feature:ZFe},tap:{Feature:UFe},focus:{Feature:HFe},hover:{Feature:qFe}},eVe={layout:{ProjectionNode:RZ,MeasureLayout:JK}},tVe={renderer:ALe,...HLe,...JFe},rVe={...tVe,...VFe,...eVe};function jZ(e){const r=ag(()=>_p(e)),{isStatic:n}=S.useContext(Ep);if(n){const[,o]=S.useState(e);S.useEffect(()=>r.on("change",o),[])}return r}function nVe(){!bC.current&&aK();const[e]=S.useState(Y3.current);return e}function AZ(){const e=nVe(),{reducedMotion:r}=S.useContext(Ep);return r==="never"?!1:r==="always"?!0:e}class oVe{constructor(){this.componentControls=new Set}subscribe(r){return this.componentControls.add(r),()=>this.componentControls.delete(r)}start(r,n){this.componentControls.forEach(o=>{o.start(r.nativeEvent||r,n)})}cancel(){this.componentControls.forEach(r=>{r.cancel()})}stop(){this.componentControls.forEach(r=>{r.stop()})}}const iVe=()=>new oVe;function aVe(){return ag(iVe)}const FC=S.createContext(null);FC.displayName="ElementDetailsActorContext";const lVe=()=>{const e=S.useContext(FC);if(e===null)throw new Error("ElementDetailsActorRef is not provided");return e},ya=(e,r,n)=>{const o=i=>({[e]:"__ignore__",...r,...Vu(i)});return{recipeFn:(i,a=!0)=>{const l=cL({conditions:{shift:fL,finalize:hL,breakpoints:{keys:["base","xs","sm","md","lg","xl"]}},utility:{toHash:(c,d)=>d(c.join(":")),transform:(c,d)=>(jke(e,n,i,c),d==="__ignore__"?{className:e}:(d=i7(d),{className:`${e}--${c}_${d}`}))}}),s=o(i);if(a){const c=u7(n,s);return Ge(l(s),fe(c))}return l(s)},getVariantProps:o,__getCompoundVariantCss__:i=>u7(n,o(i))}},is=(e,r)=>{if(e&&!r)return e;if(!e&&r)return r;const n=(...a)=>Ge(e(...a),r(...a)),o=c7(e.variantKeys,r.variantKeys),i=o.reduce((a,l)=>(a[l]=c7(e.variantMap[l],r.variantMap[l]),a),{});return Object.assign(n,{__recipe__:!0,__name__:`${e.__name__} ${r.__name__}`,raw:a=>a,variantKeys:o,variantMap:i,splitVariantProps(a){return Fn(a,o)}})},VC=ya("action-btn",{size:"md",radius:"md",variant:"filled"},[]),DZ={variant:["transparent","filled"],size:["sm","md"],radius:["sm","md"]},PZ=Object.keys(DZ),a2=Object.assign(Kn(VC.recipeFn),{__recipe__:!0,__name__:"actionBtn",__getCompoundVariantCss__:VC.__getCompoundVariantCss__,raw:e=>e,variantKeys:PZ,variantMap:DZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,PZ)},getVariantProps:VC.getVariantProps}),qC=ya("likec4-compound-node",{},[]),MZ={isTransparent:["false","true"],inverseColor:["true","false"],borderStyle:["solid","dashed","dotted","none"]},NZ=Object.keys(MZ),sVe=Object.assign(Kn(qC.recipeFn),{__recipe__:!0,__name__:"compoundNode",__getCompoundVariantCss__:qC.__getCompoundVariantCss__,raw:e=>e,variantKeys:NZ,variantMap:MZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,NZ)},getVariantProps:qC.getVariantProps}),HC=ya("likec4-edge-action-btn",{},[]),BZ={},IZ=Object.keys(BZ),cVe=Object.assign(Kn(HC.recipeFn),{__recipe__:!0,__name__:"edgeActionBtn",__getCompoundVariantCss__:HC.__getCompoundVariantCss__,raw:e=>e,variantKeys:IZ,variantMap:BZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,IZ)},getVariantProps:HC.getVariantProps}),UC=ya("likec4-edge-label",{pointerEvents:"all",isStepEdge:!1,cursor:"default"},[]),OZ={pointerEvents:["none","all"],cursor:["pointer","default"],isStepEdge:["false","true"]},LZ=Object.keys(OZ),dVe=Object.assign(Kn(UC.recipeFn),{__recipe__:!0,__name__:"edgeLabel",__getCompoundVariantCss__:UC.__getCompoundVariantCss__,raw:e=>e,variantKeys:LZ,variantMap:OZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,LZ)},getVariantProps:UC.getVariantProps}),FZ={},uVe=[],pVe=[["path","likec4-edge__path"],["pathBg","likec4-edge__pathBg"],["markersCtx","likec4-edge__markersCtx"],["middlePoint","likec4-edge__middlePoint"]],hVe=pVe.map(([e,r])=>[e,ya(r,FZ,s7(uVe,e))]),fVe=Kn((e={})=>Object.fromEntries(hVe.map(([r,n])=>[r,n.recipeFn(e)]))),VZ=[],gVe=e=>({...FZ,...Vu(e)}),mVe=Object.assign(fVe,{__recipe__:!1,__name__:"edgePath",raw:e=>e,classNameMap:{},variantKeys:VZ,variantMap:{},splitVariantProps(e){return Fn(e,VZ)},getVariantProps:gVe}),WC=ya("likec4-element-node-data",{},[]),qZ={},HZ=Object.keys(qZ),yVe=Object.assign(Kn(WC.recipeFn),{__recipe__:!0,__name__:"elementNodeData",__getCompoundVariantCss__:WC.__getCompoundVariantCss__,raw:e=>e,variantKeys:HZ,variantMap:qZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,HZ)},getVariantProps:WC.getVariantProps}),GC=ya("likec4-element-shape",{},[]),UZ={shapetype:["html","svg"]},WZ=Object.keys(UZ),GZ=Object.assign(Kn(GC.recipeFn),{__recipe__:!0,__name__:"elementShapeRecipe",__getCompoundVariantCss__:GC.__getCompoundVariantCss__,raw:e=>e,variantKeys:WZ,variantMap:UZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,WZ)},getVariantProps:GC.getVariantProps}),YC=ya("likec4-tag",{autoTextColor:!1},[]),YZ={autoTextColor:["false","true"]},XZ=Object.keys(YZ),vVe=Object.assign(Kn(YC.recipeFn),{__recipe__:!0,__name__:"likec4tag",__getCompoundVariantCss__:YC.__getCompoundVariantCss__,raw:e=>e,variantKeys:XZ,variantMap:YZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,XZ)},getVariantProps:YC.getVariantProps}),XC=ya("likec4-markdown-block",{uselikec4palette:!1,value:"markdown"},[]),KZ={uselikec4palette:["true","false"],value:["markdown","plaintext"]},ZZ=Object.keys(KZ),bVe=Object.assign(Kn(XC.recipeFn),{__recipe__:!0,__name__:"markdownBlock",__getCompoundVariantCss__:XC.__getCompoundVariantCss__,raw:e=>e,variantKeys:ZZ,variantMap:KZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,ZZ)},getVariantProps:XC.getVariantProps}),KC=ya("likec4-navigation-panel-icon",{variant:"default",type:"default"},[{type:"warning",variant:"filled",css:{backgroundColor:{base:"likec4.panel.action.warning.bg",_hover:"likec4.panel.action.warning.bg.hover"}}}]),QZ={variant:["default","filled"],type:["default","warning"]},JZ=Object.keys(QZ),eQ=Object.assign(Kn(KC.recipeFn),{__recipe__:!0,__name__:"navigationPanelActionIcon",__getCompoundVariantCss__:KC.__getCompoundVariantCss__,raw:e=>e,variantKeys:JZ,variantMap:QZ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,JZ)},getVariantProps:KC.getVariantProps}),ZC=ya("likec4-overlay",{fullscreen:!1,withBackdrop:!0},[]),tQ={fullscreen:["false","true"],withBackdrop:["false","true"]},rQ=Object.keys(tQ),xVe=Object.assign(Kn(ZC.recipeFn),{__recipe__:!0,__name__:"overlay",__getCompoundVariantCss__:ZC.__getCompoundVariantCss__,raw:e=>e,variantKeys:rQ,variantMap:tQ,merge(e){return is(this,e)},splitVariantProps(e){return Fn(e,rQ)},getVariantProps:ZC.getVariantProps}),nQ={truncateLabel:!1},wVe=[],kVe=[["root","likec4-navlink__root"],["body","likec4-navlink__body"],["section","likec4-navlink__section"],["label","likec4-navlink__label"],["description","likec4-navlink__description"]],_Ve=kVe.map(([e,r])=>[e,ya(r,nQ,s7(wVe,e))]),SVe=Kn((e={})=>Object.fromEntries(_Ve.map(([r,n])=>[r,n.recipeFn(e)]))),oQ=["truncateLabel"],EVe=e=>({...nQ,...Vu(e)}),CVe=Object.assign(SVe,{__recipe__:!1,__name__:"navigationLink",raw:e=>e,classNameMap:{},variantKeys:oQ,variantMap:{truncateLabel:["true","false"]},splitVariantProps(e){return Fn(e,oQ)},getVariantProps:EVe});function iQ(){return pf()}function QC(e,r){return Dt(at(e),r??Ir)}function JC(){return vr()}const $Ve=e=>Math.round(e.transform[2]*100)/100;function RVe(){return Dt($Ve)}const zVe=e=>e.transform[2]<.2;function TVe(){return Dt(zVe)}const{abs:Xy,cos:ac,sin:cg,acos:jVe,atan2:Ky,sqrt:jd,pow:va}=Math;function Zy(e){return e<0?-va(-e,.3333333333333333):va(e,.3333333333333333)}const aQ=Math.PI,l2=2*aQ,Ad=aQ/2,AVe=1e-6,e$=Number.MAX_SAFE_INTEGER||9007199254740991,t$=Number.MIN_SAFE_INTEGER||-9007199254740991,DVe={x:0,y:0,z:0},Oe={Tvalues:[-.06405689286260563,.06405689286260563,-.1911188674736163,.1911188674736163,-.3150426796961634,.3150426796961634,-.4337935076260451,.4337935076260451,-.5454214713888396,.5454214713888396,-.6480936519369755,.6480936519369755,-.7401241915785544,.7401241915785544,-.820001985973903,.820001985973903,-.8864155270044011,.8864155270044011,-.9382745520027328,.9382745520027328,-.9747285559713095,.9747285559713095,-.9951872199970213,.9951872199970213],Cvalues:[.12793819534675216,.12793819534675216,.1258374563468283,.1258374563468283,.12167047292780339,.12167047292780339,.1155056680537256,.1155056680537256,.10744427011596563,.10744427011596563,.09761865210411388,.09761865210411388,.08619016153195327,.08619016153195327,.0733464814110803,.0733464814110803,.05929858491543678,.05929858491543678,.04427743881741981,.04427743881741981,.028531388628933663,.028531388628933663,.0123412297999872,.0123412297999872],arcfn:function(e,r){const n=r(e);let o=n.x*n.x+n.y*n.y;return typeof n.z<"u"&&(o+=n.z*n.z),jd(o)},compute:function(e,r,n){if(e===0)return r[0].t=0,r[0];const o=r.length-1;if(e===1)return r[o].t=1,r[o];const i=1-e;let a=r;if(o===0)return r[0].t=e,r[0];if(o===1){const s={x:i*a[0].x+e*a[1].x,y:i*a[0].y+e*a[1].y,t:e};return n&&(s.z=i*a[0].z+e*a[1].z),s}if(o<4){let s=i*i,c=e*e,d,u,p,f=0;o===2?(a=[a[0],a[1],a[2],DVe],d=s,u=i*e*2,p=c):o===3&&(d=s*i,u=s*e*3,p=i*c*3,f=e*c);const m={x:d*a[0].x+u*a[1].x+p*a[2].x+f*a[3].x,y:d*a[0].y+u*a[1].y+p*a[2].y+f*a[3].y,t:e};return n&&(m.z=d*a[0].z+u*a[1].z+p*a[2].z+f*a[3].z),m}const l=JSON.parse(JSON.stringify(r));for(;l.length>1;){for(let s=0;s1;i--,a--){const l=[];for(let s=0,c;s"u")e=.5;else if(e===0||e===1)return e;const n=va(e,r)+va(1-e,r),o=n-1;return Xy(o/n)},projectionratio:function(e,r){if(r!==2&&r!==3)return!1;if(typeof e>"u")e=.5;else if(e===0||e===1)return e;const n=va(1-e,r),o=va(e,r)+n;return n/o},lli8:function(e,r,n,o,i,a,l,s){const c=(e*o-r*n)*(i-l)-(e-n)*(i*s-a*l),d=(e*o-r*n)*(a-s)-(r-o)*(i*s-a*l),u=(e-n)*(a-s)-(r-o)*(i-l);return u==0?!1:{x:c/u,y:d/u}},lli4:function(e,r,n,o){const i=e.x,a=e.y,l=r.x,s=r.y,c=n.x,d=n.y,u=o.x,p=o.y;return Oe.lli8(i,a,l,s,c,d,u,p)},lli:function(e,r){return Oe.lli4(e,e.c,r,r.c)},makeline:function(e,r){return new Fr(e.x,e.y,(e.x+r.x)/2,(e.y+r.y)/2,r.x,r.y)},findbbox:function(e){let r=e$,n=e$,o=t$,i=t$;return e.forEach(function(a){const l=a.bbox();r>l.x.min&&(r=l.x.min),n>l.y.min&&(n=l.y.min),o0&&(u.c1=c,u.c2=d,u.s1=e,u.s2=n,a.push(u))})}),a},makeshape:function(e,r,n){const o=r.points.length,i=e.points.length,a=Oe.makeline(r.points[o-1],e.points[0]),l=Oe.makeline(e.points[i-1],r.points[0]),s={startcap:a,forward:e,back:r,endcap:l,bbox:Oe.findbbox([a,e,r,l])};return s.intersections=function(c){return Oe.shapeintersections(s,s.bbox,c,c.bbox,n)},s},getminmax:function(e,r,n){if(!n)return{min:0,max:0};let o=e$,i=t$,a,l;n.indexOf(0)===-1&&(n=[0].concat(n)),n.indexOf(1)===-1&&n.push(1);for(let s=0,c=n.length;si&&(i=l[r]);return{min:o,mid:(o+i)/2,max:i,size:i-o}},align:function(e,r){const n=r.p1.x,o=r.p1.y,i=-Ky(r.p2.y-o,r.p2.x-n),a=function(l){return{x:(l.x-n)*ac(i)-(l.y-o)*cg(i),y:(l.x-n)*cg(i)+(l.y-o)*ac(i)}};return e.map(a)},roots:function(e,r){r=r||{p1:{x:0,y:0},p2:{x:1,y:0}};const n=e.length-1,o=Oe.align(e,r),i=function(A){return 0<=A&&A<=1};if(n===2){const A=o[0].y,z=o[1].y,j=o[2].y,I=A-2*z+j;if(I!==0){const N=-jd(z*z-A*j),L=-A+z,H=-(N+L)/I,P=-(-N+L)/I;return[H,P].filter(i)}else if(z!==j&&I===0)return[(2*z-j)/(2*z-2*j)].filter(i);return[]}const a=o[0].y,l=o[1].y,s=o[2].y,c=o[3].y;let d=-a+3*l-3*s+c,u=3*a-6*l+3*s,p=-3*a+3*l,f=a;if(Oe.approximately(d,0)){if(Oe.approximately(u,0))return Oe.approximately(p,0)?[]:[-f/p].filter(i);const A=jd(p*p-4*u*f),z=2*u;return[(A-p)/z,(-p-A)/z].filter(i)}u/=d,p/=d,f/=d;const m=(3*p-u*u)/3,v=m/3,w=(2*u*u*u-9*u*p+27*f)/27,x=w/2,k=x*x+v*v*v;let C,_,$,R,T;if(k<0){const A=-m/3,z=A*A*A,j=jd(z),I=-w/(2*j),N=I<-1?-1:I>1?1:I,L=jVe(N),H=Zy(j),P=2*H;return $=P*ac(L/3)-u/3,R=P*ac((L+l2)/3)-u/3,T=P*ac((L+2*l2)/3)-u/3,[$,R,T].filter(i)}else{if(k===0)return C=x<0?Zy(-x):-Zy(x),$=2*C-u/3,R=-C-u/3,[$,R].filter(i);{const A=jd(k);return C=Zy(-x+A),_=Zy(x+A),[C-_-u/3].filter(i)}}},droots:function(e){if(e.length===3){const r=e[0],n=e[1],o=e[2],i=r-2*n+o;if(i!==0){const a=-jd(n*n-r*o),l=-r+n,s=-(a+l)/i,c=-(-a+l)/i;return[s,c]}else if(n!==o&&i===0)return[(2*n-o)/(2*(n-o))];return[]}if(e.length===2){const r=e[0],n=e[1];return r!==n?[r/(r-n)]:[]}return[]},curvature:function(e,r,n,o,i){let a,l,s,c,d=0,u=0;const p=Oe.compute(e,r),f=Oe.compute(e,n),m=p.x*p.x+p.y*p.y;if(o?(a=jd(va(p.y*f.z-f.y*p.z,2)+va(p.z*f.x-f.z*p.x,2)+va(p.x*f.y-f.x*p.y,2)),l=va(m+p.z*p.z,3/2)):(a=p.x*f.y-p.y*f.x,l=va(m,3/2)),a===0||l===0)return{k:0,r:0};if(d=a/l,u=l/a,!i){const v=Oe.curvature(e-.001,r,n,o,!0).k,w=Oe.curvature(e+.001,r,n,o,!0).k;c=(w-d+(d-v))/2,s=(Xy(w-d)+Xy(d-v))/2}return{k:d,r:u,dk:c,adk:s}},inflections:function(e){if(e.length<4)return[];const r=Oe.align(e,{p1:e[0],p2:e.slice(-1)[0]}),n=r[2].x*r[1].y,o=r[3].x*r[1].y,i=r[1].x*r[2].y,a=r[3].x*r[2].y,l=18*(-3*n+2*o+3*i-a),s=18*(3*n-o-3*i),c=18*(i-n);if(Oe.approximately(l,0)){if(!Oe.approximately(s,0)){let f=-c/s;if(0<=f&&f<=1)return[f]}return[]}const d=2*l;if(Oe.approximately(d,0))return[];const u=s*s-4*l*c;if(u<0)return[];const p=Math.sqrt(u);return[(p-s)/d,-(s+p)/d].filter(function(f){return 0<=f&&f<=1})},bboxoverlap:function(e,r){const n=["x","y"],o=n.length;for(let i=0,a,l,s,c;i=c)return!1;return!0},expandbox:function(e,r){r.x.mine.x.max&&(e.x.max=r.x.max),r.y.max>e.y.max&&(e.y.max=r.y.max),r.z&&r.z.max>e.z.max&&(e.z.max=r.z.max),e.x.mid=(e.x.min+e.x.max)/2,e.y.mid=(e.y.min+e.y.max)/2,e.z&&(e.z.mid=(e.z.min+e.z.max)/2),e.x.size=e.x.max-e.x.min,e.y.size=e.y.max-e.y.min,e.z&&(e.z.size=e.z.max-e.z.min)},pairiteration:function(e,r,n){const o=e.bbox(),i=r.bbox(),a=1e5,l=n||.5;if(o.x.size+o.y.sizeT||T>A)&&(R+=l2),R>A&&(z=A,A=R,R=z)):A4){if(arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");i=!0}}else if(a!==6&&a!==8&&a!==9&&a!==12&&arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");const l=this._3d=!i&&(a===9||a===12)||r&&r[0]&&typeof r[0].z<"u",s=this.points=[];for(let m=0,v=l?3:2;mm+Jy(v.y),0)"u"&&(i=.5),i===0)return new Fr(n,n,o);if(i===1)return new Fr(r,n,n);const a=Fr.getABC(2,r,n,o,i);return new Fr(r,a.A,o)}static cubicFromPoints(r,n,o,i,a){typeof i>"u"&&(i=.5);const l=Fr.getABC(3,r,n,o,i);typeof a>"u"&&(a=Oe.dist(n,l.C));const s=a*(1-i)/i,c=Oe.dist(r,o),d=(o.x-r.x)/c,u=(o.y-r.y)/c,p=a*d,f=a*u,m=s*d,v=s*u,w={x:n.x-p,y:n.y-f},x={x:n.x+m,y:n.y+v},k=l.A,C={x:k.x+(w.x-k.x)/(1-i),y:k.y+(w.y-k.y)/(1-i)},_={x:k.x+(x.x-k.x)/i,y:k.y+(x.y-k.y)/i},$={x:r.x+(C.x-r.x)/i,y:r.y+(C.y-r.y)/i},R={x:o.x+(_.x-o.x)/(1-i),y:o.y+(_.y-o.y)/(1-i)};return new Fr(r,$,R,o)}static getUtils(){return Oe}getUtils(){return Fr.getUtils()}static get PolyBezier(){return Qy}valueOf(){return this.toString()}toString(){return Oe.pointsToString(this.points)}toSVG(){if(this._3d)return!1;const r=this.points,n=r[0].x,o=r[0].y,i=["M",n,o,this.order===2?"Q":"C"];for(let a=1,l=r.length;a0}length(){return Oe.length(this.derivative.bind(this))}static getABC(r=2,n,o,i,a=.5){const l=Oe.projectionratio(a,r),s=1-l,c={x:l*n.x+s*i.x,y:l*n.y+s*i.y},d=Oe.abcratio(a,r);return{A:{x:o.x+(o.x-c.x)/d,y:o.y+(o.y-c.y)/d},B:o,C:c,S:n,E:i}}getABC(r,n){n=n||this.get(r);let o=this.points[0],i=this.points[this.order];return Fr.getABC(this.order,o,n,i,r)}getLUT(r){if(this.verify(),r=r||100,this._lut.length===r+1)return this._lut;this._lut=[],r++,this._lut=[];for(let n=0,o,i;n1?1:p,f=this.compute(p),f.t=p,f.d=d,f}get(r){return this.compute(r)}point(r){return this.points[r]}compute(r){return this.ratios?Oe.computeWithRatios(r,this.points,this.ratios,this._3d):Oe.compute(r,this.points,this._3d,this.ratios)}raise(){const r=this.points,n=[r[0]],o=r.length;for(let i=1,a,l;i1;){o=[];for(let l=0,s,c=n.length-1;l=0&&l<=1}),n=n.concat(r[o].sort(Oe.numberSort))}).bind(this)),r.values=n.sort(Oe.numberSort).filter(function(o,i){return n.indexOf(o)===i}),r}bbox(){const r=this.extrema(),n={};return this.dims.forEach((function(o){n[o]=Oe.getminmax(this,o,r[o])}).bind(this)),n}overlaps(r){const n=this.bbox(),o=r.bbox();return Oe.bboxoverlap(n,o)}offset(r,n){if(typeof n<"u"){const o=this.get(r),i=this.normal(r),a={c:o,n:i,x:o.x+i.x*n,y:o.y+i.y*n};return this._3d&&(a.z=o.z+i.z*n),a}if(this._linear){const o=this.normal(0),i=this.points.map(function(a){const l={x:a.x+r*o.x,y:a.y+r*o.y};return a.z&&o.z&&(l.z=a.z+r*o.z),l});return[new Fr(i)]}return this.reduce().map(function(o){return o._linear?o.offset(r)[0]:o.scale(r)})}simple(){if(this.order===3){const i=Oe.angle(this.points[0],this.points[3],this.points[1]),a=Oe.angle(this.points[0],this.points[3],this.points[2]);if(i>0&&a<0||i<0&&a>0)return!1}const r=this.normal(0),n=this.normal(1);let o=r.x*n.x+r.y*n.y;return this._3d&&(o+=r.z*n.z),Jy(NVe(o))(1-s/i)*n+s/i*o);return new Fr(this.points.map((l,s)=>({x:l.x+r.x*a[s],y:l.y+r.y*a[s]})))}scale(r){const n=this.order;let o=!1;if(typeof r=="function"&&(o=r),o&&n===2)return this.raise().scale(o);const i=this.clockwise,a=this.points;if(this._linear)return this.translate(this.normal(0),o?o(0):r,o?o(1):r);const l=o?o(0):r,s=o?o(1):r,c=[this.offset(0,10),this.offset(1,10)],d=[],u=Oe.lli4(c[0],c[0].c,c[1],c[1].c);if(!u)throw new Error("cannot scale this curve. Try reducing it first.");return[0,1].forEach(function(p){const f=d[p*n]=Oe.copy(a[p*n]);f.x+=(p?s:l)*c[p].n.x,f.y+=(p?s:l)*c[p].n.y}),o?([0,1].forEach(function(p){if(!(n===2&&p)){var f=a[p+1],m={x:f.x-u.x,y:f.y-u.y},v=o?o((p+1)/n):r;o&&!i&&(v=-v);var w=e0(m.x*m.x+m.y*m.y);m.x/=w,m.y/=w,d[p+1]={x:f.x+v*m.x,y:f.y+v*m.y}}}),new Fr(d)):([0,1].forEach(p=>{if(n===2&&p)return;const f=d[p*n],m=this.derivative(p),v={x:f.x+m.x,y:f.y+m.y};d[p+1]=Oe.lli4(f,v,u,a[p+1])}),new Fr(d))}outline(r,n,o,i){if(n=n===void 0?r:n,this._linear){const R=this.normal(0),T=this.points[0],A=this.points[this.points.length-1];let z,j,I;o===void 0&&(o=r,i=n),z={x:T.x+R.x*r,y:T.y+R.y*r},I={x:A.x+R.x*o,y:A.y+R.y*o},j={x:(z.x+I.x)/2,y:(z.y+I.y)/2};const N=[z,j,I];z={x:T.x-R.x*n,y:T.y-R.y*n},I={x:A.x-R.x*i,y:A.y-R.y*i},j={x:(z.x+I.x)/2,y:(z.y+I.y)/2};const L=[I,j,z],H=Oe.makeline(L[2],N[0]),P=Oe.makeline(N[2],L[0]),V=[H,new Fr(N),P,new Fr(L)];return new Qy(V)}const a=this.reduce(),l=a.length,s=[];let c=[],d,u=0,p=this.length();const f=typeof o<"u"&&typeof i<"u";function m(R,T,A,z,j){return function(I){const N=z/A,L=(z+j)/A,H=T-R;return Oe.map(I,0,1,R+N*H,R+L*H)}}a.forEach(function(R){const T=R.length();f?(s.push(R.scale(m(r,o,p,u,T))),c.push(R.scale(m(-n,-i,p,u,T)))):(s.push(R.scale(r)),c.push(R.scale(-n))),u+=T}),c=c.map(function(R){return d=R.points,d[3]?R.points=[d[3],d[2],d[1],d[0]]:R.points=[d[2],d[1],d[0]],R}).reverse();const v=s[0].points[0],w=s[l-1].points[s[l-1].points.length-1],x=c[l-1].points[c[l-1].points.length-1],k=c[0].points[0],C=Oe.makeline(x,v),_=Oe.makeline(w,k),$=[C].concat(s).concat([_]).concat(c);return new Qy($)}outlineshapes(r,n,o){n=n||r;const i=this.outline(r,n).curves,a=[];for(let l=1,s=i.length;l1,c.endcap.virtual=l{var s=this.get(l);return Oe.between(s.x,n,i)&&Oe.between(s.y,o,a)})}selfintersects(r){const n=this.reduce(),o=n.length-2,i=[];for(let a=0,l,s,c;a0&&(a=a.concat(s))}),a}arcs(r){return r=r||.5,this._iterate(r,[])}_error(r,n,o,i){const a=(i-o)/4,l=this.get(o+a),s=this.get(i-a),c=Oe.dist(r,n),d=Oe.dist(r,l),u=Oe.dist(r,s);return Jy(d-c)+Jy(u-c)}_iterate(r,n){let o=0,i=1,a;do{a=0,i=1;let l=this.get(o),s,c,d,u,p=!1,f=!1,m,v=i,w=1;do if(f=p,u=d,v=(o+i)/2,s=this.get(v),c=this.get(i),d=Oe.getccenter(l,s,c),d.interval={start:o,end:i},p=this._error(d,l,o,i)<=r,m=f&&!p,m||(w=i),p){if(i>=1){if(d.interval.end=w=1,u=d,i>1){let x={x:d.x+d.r*PVe(d.e),y:d.y+d.r*MVe(d.e)};d.e+=Oe.angle({x:d.x,y:d.y},x,this.get(1))}break}i=i+(i-o)/2}else i=v;while(!m&&a++<100);if(a>=100)break;u=u||d,n.push(u),o=w}while(i<1);return n}}function cQ(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}const r$=e=>({x:Math.round(e.internals.positionAbsolute.x),y:Math.round(e.internals.positionAbsolute.y),width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0});function n$(e){const{width:r,height:n}=_o(e),{x:o,y:i}=e.internals.positionAbsolute;return{x:Math.round(o+r/2),y:Math.round(i+n/2)}}function s2(e,r,n=0){const{width:o,height:i}=e,a=ko.center(e),l=Qr(r.x,r.y).subtract(a),s=(n+o/2)/l.x,c=(n+i/2)/l.y,d=Math.min(Math.abs(s),Math.abs(c));return Qr(l).multiply(d).add(a).round()}function c2(e){let[r,...n]=e;He(r,"start should be defined");const o=[];for(;xn(n,3);){const[i,a,l,...s]=n,c=new Fr(r[0],r[1],i[0],i[1],a[0],a[1],l[0],l[1]),d=c.inflections();d.length===0&&d.push(.5),d.forEach(u=>{const{x:p,y:f}=c.get(u);o.push({x:Math.round(p),y:Math.round(f)})}),n=s,r=l}return He(n.length===0,"all points should be consumed"),He(xn(o,1),"at least one control point should be generated"),o}function d2(e,r){const n=i9(e)?{x:e[0],y:e[1]}:e,o=i9(r)?{x:r[0],y:r[1]}:r;return IVe(n,o)<2.1}function IVe(e,r){return Math.hypot(r.x-e.x,r.y-e.y)}function nn(e){return e.stopPropagation()}function OVe(e){let[r,...n]=e;He(r,"start should be defined");let o=`M ${r[0]},${r[1]}`;for(;xn(n,3);){const[i,a,l,...s]=n;o=o+` C ${i[0]},${i[1]} ${a[0]},${a[1]} ${l[0]},${l[1]}`,n=s}return He(n.length===0,"all points should be consumed"),o}const u2=S.forwardRef(({tag:e,cursor:r,className:n,style:o,...i},a)=>{const l=_Me(e);return y.jsxs(hr,{ref:a,"data-likec4-tag":e,className:Ge(vVe({autoTextColor:GO(l)}),n),...i,style:{cursor:r,...o},children:[y.jsx("span",{children:"#"}),y.jsx("span",{children:e})]})}),LVe=(e,r)=>e.data.width===r.data.width&&tt(e.data.tags,r.data.tags)&&(e.data.hovered??!1)===(r.data.hovered??!1),t0=S.memo(({id:e,data:{tags:r,width:n,hovered:o=!1}})=>{const{hovered:i,ref:a}=b9(),{hovered:l,ref:s}=b9(),[c,d]=KRe(!1,o?120:300);S.useEffect(()=>{d(x=>x?o||i||l:o&&(i||l))},[i,l,o]);const u=RVe(),p=u>1.2,f=Mt(),m=x=>{f.send({type:"tag.highlight",tag:x})},v=S.useCallback(()=>{f.send({type:"tag.unhighlight"})},[]);if(!r||r.length===0)return null;const w=Math.max(Math.round(n*u)-10,200);return y.jsxs(y.Fragment,{children:[y.jsx("div",{ref:a,className:Ge("likec4-element-tags",qn({pointerEvents:"all",gap:"1",alignItems:"flex-end",justifyItems:"stretch",position:"absolute",width:"100%",bottom:"0",left:"0",padding:"1",_shapeCylinder:{bottom:"[5px]"},_shapeStorage:{bottom:"[5px]"},_shapeQueue:{bottom:"0",paddingLeft:"[14px]"}})),onClick:nn,children:r.map(x=>y.jsx(hr,{"data-likec4-tag":x,className:fe({layerStyle:"likec4.tag",flex:"1",display:"flex",alignItems:"center",justifyContent:"center",maxWidth:50,height:5,_whenHovered:{height:12,borderRadius:4,transitionDelay:".08s"},transition:"fast"})},e+"#"+x))}),y.jsx(r9,{isVisible:c,align:"start",position:Ue.Bottom,children:y.jsx(Or,{ref:s,css:{gap:"0.5",alignItems:"baseline",flexWrap:"wrap",pb:"sm",translate:"auto",x:"[-8px]",maxWidth:w},children:r.map(x=>y.jsx(u2,{tag:x,cursor:"pointer",className:fe({userSelect:"none",...p&&{fontSize:"lg",borderRadius:"[4px]",px:"1.5"}}),onClick:k=>{k.stopPropagation(),f.openSearch(`#${x}`)},onMouseEnter:()=>m(x),onMouseLeave:v},x))})})]})},LVe);t0.displayName="ElementTags";const FVe=S.forwardRef((e,r)=>y.jsx("svg",{height:"24",width:"24",fill:"currentColor",...e,viewBox:"0 0 24 24",ref:r,children:y.jsx("path",{d:"M12 1C5.923 1 1 5.923 1 12c0 4.867 3.149 8.979 7.521 10.436.55.096.756-.233.756-.522 0-.262-.013-1.128-.013-2.049-2.764.509-3.479-.674-3.699-1.292-.124-.317-.66-1.293-1.127-1.554-.385-.207-.936-.715-.014-.729.866-.014 1.485.797 1.691 1.128.99 1.663 2.571 1.196 3.204.907.096-.715.385-1.196.701-1.471-2.448-.275-5.005-1.224-5.005-5.432 0-1.196.426-2.186 1.128-2.956-.111-.275-.496-1.402.11-2.915 0 0 .921-.288 3.024 1.128a10.193 10.193 0 0 1 2.75-.371c.936 0 1.871.123 2.75.371 2.104-1.43 3.025-1.128 3.025-1.128.605 1.513.221 2.64.111 2.915.701.77 1.127 1.747 1.127 2.956 0 4.222-2.571 5.157-5.019 5.432.399.344.743 1.004.743 2.035 0 1.471-.014 2.654-.014 3.025 0 .289.206.632.756.522C19.851 20.979 23 16.854 23 12c0-6.077-4.922-11-11-11Z"})})),VVe=[["path",{d:"M5 12l5 5l10 -10",key:"svg-0"}]],dQ=wt("outline","check","Check",VVe),qVe=[["path",{d:"M7 7m0 2.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667z",key:"svg-0"}],["path",{d:"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1",key:"svg-1"}]],HVe=wt("outline","copy","Copy",qVe),uQ="https://github.com/",o$=S.forwardRef(({value:e,className:r,...n},o)=>{const i=e.url.includes("://")?e.url:new window.URL(e.url,window.location.href).toString();let a=i.startsWith(uQ);return y.jsx(ec,{ref:o,variant:"default",radius:"sm",size:"sm",tt:"none",leftSection:e.title?y.jsx(y.Fragment,{children:e.title}):null,rightSection:y.jsx(UW,{value:i,timeout:1500,children:({copy:l,copied:s})=>y.jsx(lr,{className:fe({opacity:s?1:.45,transition:"fast",_hover:{opacity:1}}),tabIndex:-1,size:"20",variant:s?"light":"transparent",color:s?"teal":"gray","data-active":s,onClick:c=>{c.stopPropagation(),c.preventDefault(),l()},children:s?y.jsx(dQ,{}):y.jsx(HVe,{stroke:2.5})})}),...n,className:Ge(r,"group"),classNames:{root:fe({flexWrap:"nowrap",minHeight:24,maxWidth:500,userSelect:"all",pr:"0",backgroundColor:{base:"transparent",_hover:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]"}}}),section:fe({'&:is([data-position="left"])':{color:"mantine.colors.dimmed",userSelect:"none",pointerEvents:"none",_groupHover:{color:"[var(--badge-color)]",opacity:.7}}})},children:y.jsxs(Ed.a,{href:i,target:"_blank",style:{color:"var(--badge-color)",cursor:"pointer"},css:{transition:"fast",opacity:{base:.7,_hover:1},textDecoration:{base:"none",_hover:"underline"}},children:[a&&y.jsx(FVe,{height:"12",width:"12",style:{verticalAlign:"middle",marginRight:"4px"}}),a?i.replace(uQ,""):i]})})});function UVe(){return S.useContext(GS)}function WVe(){const e=S.useContext(GS);if(!e)throw new Error("No LikeC4ViewModel in context found");return e}const p2="--_blur",h2="--_opacity",GVe=fe({boxSizing:"border-box",margin:"0",padding:"0",position:"fixed",inset:"0",width:"100vw",height:"100vh",maxWidth:"100vw",maxHeight:"100vh",background:"transparent",border:"transparent",_backdrop:{backdropFilter:"auto",backdropBlur:`var(${p2})`,backgroundColor:`[rgb(36 36 36 / var(${h2}, 5%))]`}}),YVe=fe({position:"absolute",pointerEvents:"all",display:"flex",flexDirection:"column",padding:"4",gap:"lg",justifyContent:"stretch",color:"mantine.colors.text",boxShadow:"md",overflow:"hidden",border:"none",background:`[ linear-gradient(180deg, color-mix(in oklab, var(--likec4-palette-fill) 60%, transparent), color-mix(in oklab, var(--likec4-palette-fill) 20%, transparent) 8px, @@ -129,29 +129,29 @@ ${p.message}`)}if(u){i.push(...s.actions),a=s;break}}return a?[a]:void 0}get eve drop-shadow(0 0 3px rgb(0 0 0 / 10%)) drop-shadow(0 1px 8px rgb(0 0 0 / 5%)) drop-shadow(1px 1px 16px rgb(0 0 0 / 2%)) - `},"& img":{objectFit:"contain"}}),f2="--view-title-color",m2="--icon-color",QVe=fe({width:"100%",background:"mantine.colors.body",borderRadius:"sm",padding:"[10px 8px]",transition:"fast",border:"1px dashed",borderColor:"mantine.colors.defaultBorder",[f2]:"{colors.mantine.colors.dark[1]}",_hover:{background:"mantine.colors.defaultHover",[m2]:"{colors.mantine.colors.dark[1]}",[f2]:"{colors.mantine.colors.defaultColor}"},_dark:{background:"mantine.colors.dark[6]"},_light:{[m2]:"{colors.mantine.colors.gray[6]}",[f2]:"{colors.mantine.colors.gray[7]}",_hover:{[m2]:"{colors.mantine.colors.gray[7]}"}},"& .mantine-ThemeIcon-root":{transition:"fast",color:`[var(${m2}, {colors.mantine.colors.dark[2]})]`,"--ti-size":"22px",_hover:{color:"mantine.colors.defaultColor"}},"& > *":{transition:"all 130ms {easings.inOut}"},"&:hover > *":{transitionTimingFunction:"out",transform:"translateX(1.6px)"}}),JVe=fe({transition:"fast",color:`[var(${f2}, {colors.mantine.colors.gray[7]})]`,fontSize:"15px",fontWeight:500,lineHeight:"1.4"}),eqe=fe({flex:1,display:"flex",flexDirection:"column",justifyContent:"stretch",overflow:"hidden",gap:"sm"}),tqe=fe({background:"mantine.colors.gray[1]",borderRadius:"sm",flexWrap:"nowrap",gap:"1.5",padding:"1",_dark:{background:"mantine.colors.dark[7]"}}),rqe=fe({fontSize:"xs",fontWeight:500,flexGrow:1,padding:"[6px 8px]",transition:"fast",borderRadius:"sm",color:"mantine.colors.gray[7]",_hover:{transitionTimingFunction:"out",color:"mantine.colors.defaultColor",background:"mantine.colors.gray[3]"},"&[data-active]":{transition:"none",background:"mantine.colors.white",shadow:"xs",color:"mantine.colors.defaultColor"},_dark:{color:"mantine.colors.dark[1]",_hover:{color:"mantine.colors.white",background:"mantine.colors.dark[6]"},"&:is([data-active])":{color:"mantine.colors.white",background:"mantine.colors.dark[5]"}}}),nqe=fe({flex:1,overflow:"hidden",position:"relative","&:not(:has(.mantine-ScrollArea-root))":{paddingLeft:"1",paddingRight:"1"},"& .mantine-ScrollArea-root":{width:"100%",height:"100%","& > div":{paddingLeft:"1",paddingRight:"1"}}}),oqe=fe({flex:1,display:"grid",gridTemplateColumns:"min-content 1fr",gridAutoRows:"min-content max-content",gap:"[24px 20px]",alignItems:"baseline",justifyItems:"stretch"}),iqe=fe({justifySelf:"end",textAlign:"right",userSelect:"none"}),aqe=fe({position:"absolute",width:"14px",height:"14px",border:"3.5px solid",borderColor:"mantine.colors.dark[3]",borderTop:"none",borderLeft:"none",borderRadius:"2px",bottom:"0.5",right:"0.5",transition:"fast",cursor:"se-resize",_hover:{borderWidth:"4px",borderColor:"mantine.colors.dark[1]"}}),lqe=[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]],a$=wt("outline","chevron-down","ChevronDown",lqe),sqe=[["path",{d:"M9 6l6 6l-6 6",key:"svg-0"}]],Dd=wt("outline","chevron-right","ChevronRight",sqe);function pQ({children:e}){return y.jsx(y.Fragment,{children:e})}function hQ({value:e,isExpanded:r}){const[n,o]=S.useState(!1),i=S.useRef(null);return S.useEffect(()=>{i.current&&o(i.current.scrollWidth>i.current.clientWidth)},[e]),y.jsx(_n,{label:n&&!r?e:null,multiline:!0,w:300,withinPortal:!0,children:y.jsx(it,{ref:i,component:"div",className:fe({fontSize:"sm",padding:"xs",userSelect:"all",color:"mantine.colors.text",lineHeight:1.4,whiteSpace:r?"pre-wrap":"nowrap",overflow:r?"visible":"hidden",textOverflow:r?"unset":"ellipsis",wordBreak:r?"break-word":"normal",minWidth:0,width:"100%"}),children:e})})}function cqe({values:e,isExpanded:r}){return r?y.jsx(Lo,{gap:"xs",children:e.map((n,o)=>y.jsxs(Js,{align:"center",gap:"xs",children:[y.jsx(it,{className:fe({fontSize:"xs",color:"mantine.colors.gray[5]",fontWeight:500,flexShrink:0,_dark:{color:"mantine.colors.dark[3]"}}),children:"•"}),y.jsx(Se,{className:fe({minHeight:"32px",display:"flex",alignItems:"center",flex:1}),children:y.jsx(hQ,{value:n,isExpanded:!0})})]},o))}):y.jsx(Se,{className:fe({minHeight:"32px",display:"flex",alignItems:"center",padding:"xs",gap:"xs",flexWrap:"wrap",minWidth:0,overflow:"hidden"}),children:e.map((n,o)=>y.jsxs(Js,{align:"center",gap:"xs",style:{minWidth:0},children:[y.jsx(it,{className:fe({fontSize:"sm",padding:"[4px 8px]",backgroundColor:"mantine.colors.white",color:"mantine.colors.text",borderRadius:"sm",border:"1px solid",borderColor:"mantine.colors.gray[3]",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"min(200px, 100%)",minWidth:"60px",flex:"0 1 auto",userSelect:"all",_dark:{backgroundColor:"mantine.colors.dark[9]",color:"mantine.colors.text",borderColor:"mantine.colors.dark[4]"}}),title:n,children:n}),o *":{transition:"all 130ms {easings.inOut}"},"&:hover > *":{transitionTimingFunction:"out",transform:"translateX(1.6px)"}}),JVe=fe({transition:"fast",color:`[var(${f2}, {colors.mantine.colors.gray[7]})]`,fontSize:"15px",fontWeight:500,lineHeight:"1.4"}),eqe=fe({flex:1,display:"flex",flexDirection:"column",justifyContent:"stretch",overflow:"hidden",gap:"sm"}),tqe=fe({background:"mantine.colors.gray[1]",borderRadius:"sm",flexWrap:"nowrap",gap:"1.5",padding:"1",_dark:{background:"mantine.colors.dark[7]"}}),rqe=fe({fontSize:"xs",fontWeight:500,flexGrow:1,padding:"[6px 8px]",transition:"fast",borderRadius:"sm",color:"mantine.colors.gray[7]",_hover:{transitionTimingFunction:"out",color:"mantine.colors.defaultColor",background:"mantine.colors.gray[3]"},"&[data-active]":{transition:"none",background:"mantine.colors.white",shadow:"xs",color:"mantine.colors.defaultColor"},_dark:{color:"mantine.colors.dark[1]",_hover:{color:"mantine.colors.white",background:"mantine.colors.dark[6]"},"&:is([data-active])":{color:"mantine.colors.white",background:"mantine.colors.dark[5]"}}}),nqe=fe({flex:1,overflow:"hidden",position:"relative","&:not(:has(.mantine-ScrollArea-root))":{paddingLeft:"1",paddingRight:"1"},"& .mantine-ScrollArea-root":{width:"100%",height:"100%","& > div":{paddingLeft:"1",paddingRight:"1"}}}),oqe=fe({flex:1,display:"grid",gridTemplateColumns:"min-content 1fr",gridAutoRows:"min-content max-content",gap:"[24px 20px]",alignItems:"baseline",justifyItems:"stretch"}),iqe=fe({justifySelf:"end",textAlign:"right",userSelect:"none"}),aqe=fe({position:"absolute",width:"14px",height:"14px",border:"3.5px solid",borderColor:"mantine.colors.dark[3]",borderTop:"none",borderLeft:"none",borderRadius:"2px",bottom:"0.5",right:"0.5",transition:"fast",cursor:"se-resize",_hover:{borderWidth:"4px",borderColor:"mantine.colors.dark[1]"}}),lqe=[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]],a$=wt("outline","chevron-down","ChevronDown",lqe),sqe=[["path",{d:"M9 6l6 6l-6 6",key:"svg-0"}]],Dd=wt("outline","chevron-right","ChevronRight",sqe);function pQ({children:e}){return y.jsx(y.Fragment,{children:e})}function hQ({value:e,isExpanded:r}){const[n,o]=S.useState(!1),i=S.useRef(null);return S.useEffect(()=>{i.current&&o(i.current.scrollWidth>i.current.clientWidth)},[e]),y.jsx(_n,{label:n&&!r?e:null,multiline:!0,w:300,withinPortal:!0,children:y.jsx(it,{ref:i,component:"div",className:fe({fontSize:"sm",padding:"xs",userSelect:"all",color:"mantine.colors.text",lineHeight:1.4,whiteSpace:r?"pre-wrap":"nowrap",overflow:r?"visible":"hidden",textOverflow:r?"unset":"ellipsis",wordBreak:r?"break-word":"normal",minWidth:0,width:"100%"}),children:e})})}function cqe({values:e,isExpanded:r}){return r?y.jsx(Lo,{gap:"xs",children:e.map((n,o)=>y.jsxs(Js,{align:"center",gap:"xs",children:[y.jsx(it,{className:fe({fontSize:"xs",color:"mantine.colors.gray[5]",fontWeight:500,flexShrink:0,_dark:{color:"mantine.colors.dark[3]"}}),children:"•"}),y.jsx(Se,{className:fe({minHeight:"32px",display:"flex",alignItems:"center",flex:1}),children:y.jsx(hQ,{value:n,isExpanded:!0})})]},o))}):y.jsx(Se,{className:fe({minHeight:"32px",display:"flex",alignItems:"center",padding:"xs",gap:"xs",flexWrap:"wrap",minWidth:0,overflow:"hidden"}),children:e.map((n,o)=>y.jsxs(Js,{align:"center",gap:"xs",style:{minWidth:0},children:[y.jsx(it,{className:fe({fontSize:"sm",padding:"[4px 8px]",backgroundColor:"mantine.colors.white",color:"mantine.colors.text",borderRadius:"sm",border:"1px solid",borderColor:"mantine.colors.gray[3]",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"min(200px, 100%)",minWidth:"60px",flex:"0 1 auto",userSelect:"all",_dark:{backgroundColor:"mantine.colors.dark[9]",color:"mantine.colors.text",borderColor:"mantine.colors.dark[4]"}}),title:n,children:n}),ol.trim()).filter(Boolean):[r],o=n.length>1,[i,a]=S.useState(!1);return y.jsxs(y.Fragment,{children:[o?y.jsx(pr,{onClick:()=>{a(!i)},className:fe({fontSize:"xs",color:"mantine.colors.dimmed",justifySelf:"end",textAlign:"right",userSelect:"none",display:"flex",alignItems:"center",justifyContent:"flex-end",gap:"xs",padding:"[4px 8px]",borderRadius:"sm",whiteSpace:"nowrap",transition:"all 150ms ease",_hover:{backgroundColor:"mantine.colors.gray[1]",color:"mantine.colors.primary[6]",_dark:{backgroundColor:"mantine.colors.dark[7]",color:"mantine.colors.primary[4]"}}}),children:y.jsxs(Js,{align:"center",gap:"xs",children:[y.jsxs(it,{component:"span",size:"xs",fw:700,children:[e,":"]}),y.jsx(it,{component:"span",className:fe({fontSize:"xs",fontWeight:500,color:"mantine.colors.gray[6]",backgroundColor:"mantine.colors.gray[1]",padding:"[1px 4px]",borderRadius:"xs",_dark:{color:"mantine.colors.dark[2]",backgroundColor:"mantine.colors.dark[6]"}}),children:n.length}),i?y.jsx(a$,{size:12}):y.jsx(Dd,{size:12})]})}):y.jsxs(it,{component:"div",className:fe({fontSize:"xs",color:"mantine.colors.dimmed",justifySelf:"end",textAlign:"right",userSelect:"none",whiteSpace:"nowrap",padding:"[4px 8px]",fontWeight:700}),children:[e,":"]}),y.jsx(Se,{className:fe({justifySelf:"stretch",alignSelf:"start"}),children:o?y.jsx(cqe,{values:n,isExpanded:i}):y.jsx(Se,{className:fe({minHeight:"32px",display:"flex",alignItems:"center"}),children:y.jsx(hQ,{value:n[0]||"",isExpanded:i})})})]})}const uqe=fe({"&[data-level='1']":{marginBottom:"sm"}}),pqe=fe({cursor:"default",marginTop:"0",marginBottom:"0"}),fQ=fe({transition:"fast",color:"mantine.colors.gray[7]",_dark:{color:"mantine.colors.dark[1]"},"& > *":{transition:"fast"},_hover:{transitionTimingFunction:"out","& > :not([data-no-transform])":{transitionTimingFunction:"out",transform:"translateX(1px)"}}}),hqe=Ge(fQ),fqe=Ge(fQ,fe({cursor:"pointer",width:"100%",justifyContent:"stretch",flexWrap:"nowrap",height:"36px",paddingInlineStart:"[16px]",paddingInlineEnd:"2.5",borderRadius:"sm",alignItems:"center",color:"mantine.colors.gray[7]",_dark:{color:"mantine.colors.gray.lightColor"},_hover:{background:"mantine.colors.gray.lightHover"},"& .tabler-icon":{transition:"fast",width:"90%",opacity:.65}})),mqe=[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 9h.01",key:"svg-1"}],["path",{d:"M11 12h1v4h1",key:"svg-2"}]],r0=wt("outline","info-circle","InfoCircle",mqe),gqe=[["path",{d:"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M12 12m-5 0a5 5 0 1 0 10 0a5 5 0 1 0 -10 0",key:"svg-1"}],["path",{d:"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-2"}]],yqe=wt("outline","target","Target",gqe),vqe=[["path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2",key:"svg-0"}],["path",{d:"M4 16v2a2 2 0 0 0 2 2h2",key:"svg-1"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v2",key:"svg-2"}],["path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2",key:"svg-3"}],["path",{d:"M8 11a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-4"}],["path",{d:"M16 16l-2.5 -2.5",key:"svg-5"}]],ba=wt("outline","zoom-scan","ZoomScan",vqe),bqe=({node:e})=>y.jsxs(en,{className:hqe,gap:6,align:"baseline",wrap:"nowrap",children:[y.jsxs(it,{component:"div",fz:11,c:"dimmed",children:[e.kind,":"]}),y.jsx(it,{component:"div",fz:"sm",fw:"500",children:e.title})]}),xqe=({instance:e})=>{const r=Nt(),n=r.currentView.id,o=[...e.views()];return y.jsxs(en,{className:fqe,gap:4,children:[y.jsx(Ti,{color:"gray",variant:"transparent",size:"xs",flex:0,children:y.jsx(yqe,{stroke:1.2})}),y.jsx(it,{component:"div",fz:"sm",fw:"500",flex:"1 1 100%",children:e.title}),y.jsxs(Se,{onClick:nn,pos:"relative","data-no-transform":!0,flex:0,children:[o.length===0&&y.jsx(Vn,{size:"compact-xs",variant:"transparent",color:"gray",disabled:!0,children:"no views"}),o.length>0&&y.jsxs(tn,{shadow:"md",withinPortal:!1,position:"bottom-start",offset:0,closeOnClickOutside:!0,clickOutsideEvents:["pointerdown","mousedown","click"],closeOnEscape:!0,trapFocus:!0,children:[y.jsx(tn.Target,{children:y.jsxs(Vn,{size:"compact-xs",variant:"subtle",color:"gray",children:[o.length," view",o.length>1?"s":""]})}),y.jsx(tn.Dropdown,{children:o.map(i=>y.jsx(tn.Item,{px:"xs",py:4,disabled:i.id===n,leftSection:y.jsx(Ti,{size:"sm",variant:"transparent",color:"gray",children:y.jsx(ba,{stroke:1.8,opacity:.65})}),styles:{itemSection:{marginInlineEnd:$e(8)}},onClick:a=>{a.stopPropagation(),r.navigateTo(i.id)},children:i.title},i.id))})]})]})]})},wqe=()=>{},kqe=S.memo(({elementFqn:e})=>{const r=Fo().element(e),n=[...r.deployments()],o=_y({multiple:!1});o.setHoveredNode=wqe;const i=S.useMemo(()=>{let a=[],l=new Map;for(const s of r.deployments()){let c={label:y.jsx(xqe,{instance:s}),value:s.id,type:"instance",children:[]};l.set(s.id,c);let d=s.parent;for(;d;){let u=l.get(d.id);if(u){u.children.push(c);break}u={label:y.jsx(bqe,{node:d}),value:d.id,type:"node",children:[c]},l.set(d.id,u),c=u,d=d.parent}!d&&!a.includes(c)&&a.push(c)}return a},[r]);return S.useEffect(()=>{o.expandAllNodes()},[i]),n.length===0?y.jsx(f3,{variant:"light",color:"gray",icon:y.jsx(r0,{}),children:"This element does not have any deployments"}):y.jsx(Ff,{levelOffset:"sm",allowRangeSelection:!1,classNames:{node:uqe,label:pqe},styles:{root:{position:"relative",width:"min-content",minWidth:300}},data:i,tree:o,renderNode:({node:a,selected:l,elementProps:s,hasChildren:c})=>y.jsx(Se,{...s,style:{...!c&&{marginBottom:$e(4)}},children:c?y.jsx(Vn,{fullWidth:!0,color:"gray",variant:l?"transparent":"subtle",size:"xs",justify:"flex-start",styles:{root:{position:"unset",paddingInlineStart:$e(16)}},children:a.label}):a.label})})}),_qe=()=>{},mQ=(e,r)=>{if(e===r)return!0;if(e.length!==r.length)return!1;for(const[n,o]of e.entries())if(!(o===r[n]||Ir(o,r[n])))return!1;return!0};function $p(e,r,n,o){const i=kL();Z5e(i?_qe:e,r,mQ,o)}function Sqe(){const e=typeof window<"u"&&typeof window.devicePixelRatio=="number"?window.devicePixelRatio:1;return ta(Math.floor(e),{min:1,max:4})}let g2;function Md(e){return g2??=Sqe(),g2<2?Math.round(e):Math.round(e*g2)/g2}function Eqe(e){switch(e){case"dots":return Qa.Dots;case"lines":return Qa.Lines;case"cross":return Qa.Cross;default:Qo(e)}}const Cqe=(e,r)=>typeof e.background=="string"&&typeof r.background=="string"?e.background===r.background:tt(e.background,r.background),gQ=S.memo(({background:e})=>typeof e=="string"?y.jsx(bq,{variant:Eqe(e),size:2,gap:20}):y.jsx(bq,{...e}),Cqe);gQ.displayName="Background";const yQ=(e,r)=>(e.data.dimmed??!1)===r?e:{...e,data:{...e.data,dimmed:r}};function $qe(e,r){return r!==void 0?yQ(e,r):n=>yQ(n,e)}const vQ=(e,r)=>(e.data.hovered??!1)===r?e:{...e,data:{...e.data,hovered:r}};function Rqe(e,r){return r!==void 0?vQ(e,r):n=>vQ(n,e)}function bQ(e,r){return Nq(e.data,r)?e:{...e,data:{...e.data,...r}}}function zqe(e,r){return r!==void 0?bQ(e,r):n=>bQ(n,e)}const tr={setDimmed:$qe,setHovered:Rqe,setData:zqe},lc={Compound:1,Edge:20,Element:20,Max:30},xa=.05,l$=3,y2={default:"16px",withControls:{top:"58px",left:"16px",right:"16px",bottom:"16px"}};function s$({nodes:e,edges:r,onEdgesChange:n,onNodesChange:o,className:i,pannable:a=!0,zoomable:l=!0,nodesSelectable:s=!0,nodesDraggable:c=!1,background:d="dots",children:u,colorMode:p,fitViewPadding:f=0,fitView:g=!0,zoomOnDoubleClick:v=!1,onViewportResize:w,onMoveEnd:x,onNodeMouseEnter:k,onNodeMouseLeave:C,onEdgeMouseEnter:_,onEdgeMouseLeave:$,...R}){const T=S.useMemo(()=>({minZoom:xa,maxZoom:1,padding:f,includeHiddenNodes:!1}),[f]),A=d!=="transparent"&&d!=="solid",z=TVe(),j=JC(),{colorScheme:I}=mTe();return p||(p=I==="auto"?"system":I),y.jsxs(zEe,{colorMode:p,nodes:e,edges:r,className:Ge(d==="transparent"&&"bg-transparent",i),...z&&{"data-likec4-zoom-small":!0},zoomOnPinch:l,zoomOnScroll:!a&&l,...!l&&{zoomActivationKeyCode:null},zoomOnDoubleClick:v,maxZoom:l?l$:1,minZoom:l?xa:1,fitView:g,fitViewOptions:T,preventScrolling:l||a,defaultMarkerColor:"var(--xy-edge-stroke)",noDragClassName:"nodrag",noPanClassName:"nopan",noWheelClassName:"nowheel",panOnScroll:a,panOnDrag:a,...!a&&{panActivationKeyCode:null,selectionKeyCode:null},elementsSelectable:s,nodesFocusable:c||s,edgesFocusable:!1,nodesDraggable:c,nodeDragThreshold:4,nodeClickDistance:3,paneClickDistance:3,elevateNodesOnSelect:!1,selectNodesOnDrag:!1,onNodesChange:o,onEdgesChange:n,onMoveEnd:at((P,{x:L,y:H,zoom:M})=>{const V=Md(L),B=Md(H);(L!==V||H!==B)&&j.setState({transform:[V,B,M]}),x?.(P,{x:V,y:B,zoom:M})}),onNodeMouseEnter:at((P,L)=>{if(k){k(P,L);return}o([{id:L.id,type:"replace",item:tr.setHovered(L,!0)}])}),onNodeMouseLeave:at((P,L)=>{if(C){C(P,L);return}o([{id:L.id,type:"replace",item:tr.setHovered(L,!1)}])}),onEdgeMouseEnter:at((P,L)=>{if(_){_(P,L);return}n([{id:L.id,type:"replace",item:tr.setHovered(L,!0)}])}),onEdgeMouseLeave:at((P,L)=>{if($){$(P,L);return}n([{id:L.id,type:"replace",item:tr.setHovered(L,!1)}])}),onNodeDoubleClick:nn,onEdgeDoubleClick:nn,...R,children:[A&&y.jsx(gQ,{background:d}),w&&y.jsx(jqe,{onViewportResize:w}),u]})}const Tqe=({width:e,height:r})=>(e||1)*(r||1),jqe=({onViewportResize:e})=>{const r=Dt(Tqe);return $p(e,[r]),null},xQ=S.createContext(null);function wQ(){return mt(S.useContext(xQ),"No RelationshipsBrowserActorContext")}function v2(e,r=Ir){const n=wQ();return pn(n,e,r)}function n0(){const e=wQ();return S.useMemo(()=>({actor:e,get rootElementId(){return`relationships-browser-${e.sessionId.replaceAll(":","_")}`},getState:()=>e.getSnapshot().context,send:e.send,updateView:r=>{e.getSnapshot().status==="active"&&e.send({type:"update.view",layouted:r})},changeScope:r=>{e.send({type:"change.scope",scope:r})},navigateTo:(r,n)=>{e.send({type:"navigate.to",subject:r,fromNode:n})},fitDiagram:()=>{e.send({type:"fitDiagram"})},close:()=>{e._parent?e._parent?.send({type:"close",actorId:e.id}):e.send({type:"close"})}}),[e])}var c$,kQ;function d$(){if(kQ)return c$;kQ=1;var e="\0",r="\0",n="";class o{_isDirected=!0;_isMultigraph=!1;_isCompound=!1;_label;_defaultNodeLabelFn=()=>{};_defaultEdgeLabelFn=()=>{};_nodes={};_in={};_preds={};_out={};_sucs={};_edgeObjs={};_edgeLabels={};_nodeCount=0;_edgeCount=0;_parent;_children;constructor(u){u&&(this._isDirected=Object.hasOwn(u,"directed")?u.directed:!0,this._isMultigraph=Object.hasOwn(u,"multigraph")?u.multigraph:!1,this._isCompound=Object.hasOwn(u,"compound")?u.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[r]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(u){return this._label=u,this}graph(){return this._label}setDefaultNodeLabel(u){return this._defaultNodeLabelFn=u,typeof u!="function"&&(this._defaultNodeLabelFn=()=>u),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var u=this;return this.nodes().filter(p=>Object.keys(u._in[p]).length===0)}sinks(){var u=this;return this.nodes().filter(p=>Object.keys(u._out[p]).length===0)}setNodes(u,p){var f=arguments,g=this;return u.forEach(function(v){f.length>1?g.setNode(v,p):g.setNode(v)}),this}setNode(u,p){return Object.hasOwn(this._nodes,u)?(arguments.length>1&&(this._nodes[u]=p),this):(this._nodes[u]=arguments.length>1?p:this._defaultNodeLabelFn(u),this._isCompound&&(this._parent[u]=r,this._children[u]={},this._children[r][u]=!0),this._in[u]={},this._preds[u]={},this._out[u]={},this._sucs[u]={},++this._nodeCount,this)}node(u){return this._nodes[u]}hasNode(u){return Object.hasOwn(this._nodes,u)}removeNode(u){var p=this;if(Object.hasOwn(this._nodes,u)){var f=g=>p.removeEdge(p._edgeObjs[g]);delete this._nodes[u],this._isCompound&&(this._removeFromParentsChildList(u),delete this._parent[u],this.children(u).forEach(function(g){p.setParent(g)}),delete this._children[u]),Object.keys(this._in[u]).forEach(f),delete this._in[u],delete this._preds[u],Object.keys(this._out[u]).forEach(f),delete this._out[u],delete this._sucs[u],--this._nodeCount}return this}setParent(u,p){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(p===void 0)p=r;else{p+="";for(var f=p;f!==void 0;f=this.parent(f))if(f===u)throw new Error("Setting "+p+" as parent of "+u+" would create a cycle");this.setNode(p)}return this.setNode(u),this._removeFromParentsChildList(u),this._parent[u]=p,this._children[p][u]=!0,this}_removeFromParentsChildList(u){delete this._children[this._parent[u]][u]}parent(u){if(this._isCompound){var p=this._parent[u];if(p!==r)return p}}children(u=r){if(this._isCompound){var p=this._children[u];if(p)return Object.keys(p)}else{if(u===r)return this.nodes();if(this.hasNode(u))return[]}}predecessors(u){var p=this._preds[u];if(p)return Object.keys(p)}successors(u){var p=this._sucs[u];if(p)return Object.keys(p)}neighbors(u){var p=this.predecessors(u);if(p){const g=new Set(p);for(var f of this.successors(u))g.add(f);return Array.from(g.values())}}isLeaf(u){var p;return this.isDirected()?p=this.successors(u):p=this.neighbors(u),p.length===0}filterNodes(u){var p=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});p.setGraph(this.graph());var f=this;Object.entries(this._nodes).forEach(function([w,x]){u(w)&&p.setNode(w,x)}),Object.values(this._edgeObjs).forEach(function(w){p.hasNode(w.v)&&p.hasNode(w.w)&&p.setEdge(w,f.edge(w))});var g={};function v(w){var x=f.parent(w);return x===void 0||p.hasNode(x)?(g[w]=x,x):x in g?g[x]:v(x)}return this._isCompound&&p.nodes().forEach(w=>p.setParent(w,v(w))),p}setDefaultEdgeLabel(u){return this._defaultEdgeLabelFn=u,typeof u!="function"&&(this._defaultEdgeLabelFn=()=>u),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(u,p){var f=this,g=arguments;return u.reduce(function(v,w){return g.length>1?f.setEdge(v,w,p):f.setEdge(v,w),w}),this}setEdge(){var u,p,f,g,v=!1,w=arguments[0];typeof w=="object"&&w!==null&&"v"in w?(u=w.v,p=w.w,f=w.name,arguments.length===2&&(g=arguments[1],v=!0)):(u=w,p=arguments[1],f=arguments[3],arguments.length>2&&(g=arguments[2],v=!0)),u=""+u,p=""+p,f!==void 0&&(f=""+f);var x=l(this._isDirected,u,p,f);if(Object.hasOwn(this._edgeLabels,x))return v&&(this._edgeLabels[x]=g),this;if(f!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(u),this.setNode(p),this._edgeLabels[x]=v?g:this._defaultEdgeLabelFn(u,p,f);var k=s(this._isDirected,u,p,f);return u=k.v,p=k.w,Object.freeze(k),this._edgeObjs[x]=k,i(this._preds[p],u),i(this._sucs[u],p),this._in[p][x]=k,this._out[u][x]=k,this._edgeCount++,this}edge(u,p,f){var g=arguments.length===1?c(this._isDirected,arguments[0]):l(this._isDirected,u,p,f);return this._edgeLabels[g]}edgeAsObj(){const u=this.edge(...arguments);return typeof u!="object"?{label:u}:u}hasEdge(u,p,f){var g=arguments.length===1?c(this._isDirected,arguments[0]):l(this._isDirected,u,p,f);return Object.hasOwn(this._edgeLabels,g)}removeEdge(u,p,f){var g=arguments.length===1?c(this._isDirected,arguments[0]):l(this._isDirected,u,p,f),v=this._edgeObjs[g];return v&&(u=v.v,p=v.w,delete this._edgeLabels[g],delete this._edgeObjs[g],a(this._preds[p],u),a(this._sucs[u],p),delete this._in[p][g],delete this._out[u][g],this._edgeCount--),this}inEdges(u,p){var f=this._in[u];if(f){var g=Object.values(f);return p?g.filter(v=>v.v===p):g}}outEdges(u,p){var f=this._out[u];if(f){var g=Object.values(f);return p?g.filter(v=>v.w===p):g}}nodeEdges(u,p){var f=this.inEdges(u,p);if(f)return f.concat(this.outEdges(u,p))}}function i(d,u){d[u]?d[u]++:d[u]=1}function a(d,u){--d[u]||delete d[u]}function l(d,u,p,f){var g=""+u,v=""+p;if(!d&&g>v){var w=g;g=v,v=w}return g+n+v+n+(f===void 0?e:f)}function s(d,u,p,f){var g=""+u,v=""+p;if(!d&&g>v){var w=g;g=v,v=w}var x={v:g,w:v};return f&&(x.name=f),x}function c(d,u){return l(d,u.v,u.w,u.name)}return c$=o,c$}var _Q,SQ;function Aqe(){return SQ||(SQ=1,_Q="2.2.4"),_Q}var EQ,CQ;function Dqe(){return CQ||(CQ=1,EQ={Graph:d$(),version:Aqe()}),EQ}var u$,$Q;function Mqe(){if($Q)return u$;$Q=1;var e=d$();u$={write:r,read:i};function r(a){var l={options:{directed:a.isDirected(),multigraph:a.isMultigraph(),compound:a.isCompound()},nodes:n(a),edges:o(a)};return a.graph()!==void 0&&(l.value=structuredClone(a.graph())),l}function n(a){return a.nodes().map(function(l){var s=a.node(l),c=a.parent(l),d={v:l};return s!==void 0&&(d.value=s),c!==void 0&&(d.parent=c),d})}function o(a){return a.edges().map(function(l){var s=a.edge(l),c={v:l.v,w:l.w};return l.name!==void 0&&(c.name=l.name),s!==void 0&&(c.value=s),c})}function i(a){var l=new e(a.options).setGraph(a.value);return a.nodes.forEach(function(s){l.setNode(s.v,s.value),s.parent&&l.setParent(s.v,s.parent)}),a.edges.forEach(function(s){l.setEdge({v:s.v,w:s.w,name:s.name},s.value)}),l}return u$}var p$,RQ;function Nqe(){if(RQ)return p$;RQ=1,p$=e;function e(r){var n={},o=[],i;function a(l){Object.hasOwn(n,l)||(n[l]=!0,i.push(l),r.successors(l).forEach(a),r.predecessors(l).forEach(a))}return r.nodes().forEach(function(l){i=[],a(l),i.length&&o.push(i)}),o}return p$}var h$,zQ;function TQ(){if(zQ)return h$;zQ=1;class e{_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 o=this._keyIndices[n];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,o){var i=this._keyIndices;if(n=String(n),!Object.hasOwn(i,n)){var a=this._arr,l=a.length;return i[n]=l,a.push({key:n,priority:o}),this._decrease(l),!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,o){var i=this._keyIndices[n];if(o>this._arr[i].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[i].priority+" New: "+o);this._arr[i].priority=o,this._decrease(i)}_heapify(n){var o=this._arr,i=2*n,a=i+1,l=n;i>1,!(o[a].priority1;function n(i,a,l,s){return o(i,String(a),l||r,s||function(c){return i.outEdges(c)})}function o(i,a,l,s){var c={},d=new e,u,p,f=function(g){var v=g.v!==u?g.v:g.w,w=c[v],x=l(g),k=p.distance+x;if(x<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+g+" Weight: "+x);k0&&(u=d.removeMin(),p=c[u],p.distance!==Number.POSITIVE_INFINITY);)s(u).forEach(f);return c}return f$}var m$,DQ;function Pqe(){if(DQ)return m$;DQ=1;var e=AQ();m$=r;function r(n,o,i){return n.nodes().reduce(function(a,l){return a[l]=e(n,l,o,i),a},{})}return m$}var g$,MQ;function NQ(){if(MQ)return g$;MQ=1,g$=e;function e(r){var n=0,o=[],i={},a=[];function l(s){var c=i[s]={onStack:!0,lowlink:n,index:n++};if(o.push(s),r.successors(s).forEach(function(p){Object.hasOwn(i,p)?i[p].onStack&&(c.lowlink=Math.min(c.lowlink,i[p].index)):(l(p),c.lowlink=Math.min(c.lowlink,i[p].lowlink))}),c.lowlink===c.index){var d=[],u;do u=o.pop(),i[u].onStack=!1,d.push(u);while(s!==u);a.push(d)}}return r.nodes().forEach(function(s){Object.hasOwn(i,s)||l(s)}),a}return g$}var y$,PQ;function Bqe(){if(PQ)return y$;PQ=1;var e=NQ();y$=r;function r(n){return e(n).filter(function(o){return o.length>1||o.length===1&&n.hasEdge(o[0],o[0])})}return y$}var v$,BQ;function Iqe(){if(BQ)return v$;BQ=1,v$=r;var e=()=>1;function r(o,i,a){return n(o,i||e,a||function(l){return o.outEdges(l)})}function n(o,i,a){var l={},s=o.nodes();return s.forEach(function(c){l[c]={},l[c][c]={distance:0},s.forEach(function(d){c!==d&&(l[c][d]={distance:Number.POSITIVE_INFINITY})}),a(c).forEach(function(d){var u=d.v===c?d.w:d.v,p=i(d);l[c][u]={distance:p,predecessor:c}})}),s.forEach(function(c){var d=l[c];s.forEach(function(u){var p=l[u];s.forEach(function(f){var g=p[c],v=d[f],w=p[f],x=g.distance+v.distance;xi.successors(p):p=>i.neighbors(p),c=l==="post"?r:n,d=[],u={};return a.forEach(p=>{if(!i.hasNode(p))throw new Error("Graph does not have node: "+p);c(p,s,u,d)}),d}function r(i,a,l,s){for(var c=[[i,!1]];c.length>0;){var d=c.pop();d[1]?s.push(d[0]):Object.hasOwn(l,d[0])||(l[d[0]]=!0,c.push([d[0],!0]),o(a(d[0]),u=>c.push([u,!1])))}}function n(i,a,l,s){for(var c=[i];c.length>0;){var d=c.pop();Object.hasOwn(l,d)||(l[d]=!0,s.push(d),o(a(d),u=>c.push(u)))}}function o(i,a){for(var l=i.length;l--;)a(i[l],l,i);return i}return w$}var k$,qQ;function Lqe(){if(qQ)return k$;qQ=1;var e=VQ();k$=r;function r(n,o){return e(n,o,"post")}return k$}var _$,HQ;function Fqe(){if(HQ)return _$;HQ=1;var e=VQ();_$=r;function r(n,o){return e(n,o,"pre")}return _$}var S$,UQ;function Vqe(){if(UQ)return S$;UQ=1;var e=d$(),r=TQ();S$=n;function n(o,i){var a=new e,l={},s=new r,c;function d(p){var f=p.v===c?p.w:p.v,g=s.priority(f);if(g!==void 0){var v=i(p);v0;){if(c=s.removeMin(),Object.hasOwn(l,c))a.setEdge(c,l[c]);else{if(u)throw new Error("Input graph is not connected: "+o);u=!0}o.nodeEdges(c).forEach(d)}return a}return S$}var WQ,GQ;function qqe(){return GQ||(GQ=1,WQ={components:Nqe(),dijkstra:AQ(),dijkstraAll:Pqe(),findCycles:Bqe(),floydWarshall:Iqe(),isAcyclic:Oqe(),postorder:Lqe(),preorder:Fqe(),prim:Vqe(),tarjan:NQ(),topsort:OQ()}),WQ}var E$,YQ;function cl(){if(YQ)return E$;YQ=1;var e=Dqe();return E$={Graph:e.Graph,json:Mqe(),alg:qqe(),version:e.version},E$}var C$,XQ;function Hqe(){if(XQ)return C$;XQ=1;class e{constructor(){let i={};i._next=i._prev=i,this._sentinel=i}dequeue(){let i=this._sentinel,a=i._prev;if(a!==i)return r(a),a}enqueue(i){let a=this._sentinel;i._prev&&i._next&&r(i),i._next=a._next,a._next._prev=i,a._next=i,i._prev=a}toString(){let i=[],a=this._sentinel,l=a._prev;for(;l!==a;)i.push(JSON.stringify(l,n)),l=l._prev;return"["+i.join(", ")+"]"}}function r(o){o._prev._next=o._next,o._next._prev=o._prev,delete o._next,delete o._prev}function n(o,i){if(o!=="_next"&&o!=="_prev")return i}return C$=e,C$}var $$,KQ;function Uqe(){if(KQ)return $$;KQ=1;let e=cl().Graph,r=Hqe();$$=o;let n=()=>1;function o(d,u){if(d.nodeCount()<=1)return[];let p=l(d,u||n);return i(p.graph,p.buckets,p.zeroIdx).flatMap(f=>d.outEdges(f.v,f.w))}function i(d,u,p){let f=[],g=u[u.length-1],v=u[0],w;for(;d.nodeCount();){for(;w=v.dequeue();)a(d,u,p,w);for(;w=g.dequeue();)a(d,u,p,w);if(d.nodeCount()){for(let x=u.length-2;x>0;--x)if(w=u[x].dequeue(),w){f=f.concat(a(d,u,p,w,!0));break}}}return f}function a(d,u,p,f,g){let v=g?[]:void 0;return d.inEdges(f.v).forEach(w=>{let x=d.edge(w),k=d.node(w.v);g&&v.push({v:w.v,w:w.w}),k.out-=x,s(u,p,k)}),d.outEdges(f.v).forEach(w=>{let x=d.edge(w),k=w.w,C=d.node(k);C.in-=x,s(u,p,C)}),d.removeNode(f.v),v}function l(d,u){let p=new e,f=0,g=0;d.nodes().forEach(x=>{p.setNode(x,{v:x,in:0,out:0})}),d.edges().forEach(x=>{let k=p.edge(x.v,x.w)||0,C=u(x),_=k+C;p.setEdge(x.v,x.w,_),g=Math.max(g,p.node(x.v).out+=C),f=Math.max(f,p.node(x.w).in+=C)});let v=c(g+f+3).map(()=>new r),w=f+1;return p.nodes().forEach(x=>{s(v,w,p.node(x))}),{graph:p,buckets:v,zeroIdx:w}}function s(d,u,p){p.out?p.in?d[p.out-p.in+u].enqueue(p):d[d.length-1].enqueue(p):d[0].enqueue(p)}function c(d){const u=[];for(let p=0;pj.setNode(I,z.node(I))),z.edges().forEach(I=>{let P=j.edge(I.v,I.w)||{weight:0,minlen:1},L=z.edge(I);j.setEdge(I.v,I.w,{weight:P.weight+L.weight,minlen:Math.max(P.minlen,L.minlen)})}),j}function o(z){let j=new e({multigraph:z.isMultigraph()}).setGraph(z.graph());return z.nodes().forEach(I=>{z.children(I).length||j.setNode(I,z.node(I))}),z.edges().forEach(I=>{j.setEdge(I,z.edge(I))}),j}function i(z){let j=z.nodes().map(I=>{let P={};return z.outEdges(I).forEach(L=>{P[L.w]=(P[L.w]||0)+z.edge(L).weight}),P});return A(z.nodes(),j)}function a(z){let j=z.nodes().map(I=>{let P={};return z.inEdges(I).forEach(L=>{P[L.v]=(P[L.v]||0)+z.edge(L).weight}),P});return A(z.nodes(),j)}function l(z,j){let I=z.x,P=z.y,L=j.x-I,H=j.y-P,M=z.width/2,V=z.height/2;if(!L&&!H)throw new Error("Not possible to find intersection inside of the rectangle");let B,F;return Math.abs(H)*M>Math.abs(L)*V?(H<0&&(V=-V),B=V*L/H,F=V):(L<0&&(M=-M),B=M,F=M*H/L),{x:I+B,y:P+F}}function s(z){let j=$(v(z)+1).map(()=>[]);return z.nodes().forEach(I=>{let P=z.node(I),L=P.rank;L!==void 0&&(j[L][P.order]=I)}),j}function c(z){let j=z.nodes().map(P=>{let L=z.node(P).rank;return L===void 0?Number.MAX_VALUE:L}),I=g(Math.min,j);z.nodes().forEach(P=>{let L=z.node(P);Object.hasOwn(L,"rank")&&(L.rank-=I)})}function d(z){let j=z.nodes().map(M=>z.node(M).rank),I=g(Math.min,j),P=[];z.nodes().forEach(M=>{let V=z.node(M).rank-I;P[V]||(P[V]=[]),P[V].push(M)});let L=0,H=z.graph().nodeRankFactor;Array.from(P).forEach((M,V)=>{M===void 0&&V%H!==0?--L:M!==void 0&&L&&M.forEach(B=>z.node(B).rank+=L)})}function u(z,j,I,P){let L={width:0,height:0};return arguments.length>=4&&(L.rank=I,L.order=P),r(z,"border",L,j)}function p(z,j=f){const I=[];for(let P=0;Pf){const I=p(j);return z.apply(null,I.map(P=>z.apply(null,P)))}else return z.apply(null,j)}function v(z){const j=z.nodes().map(I=>{let P=z.node(I).rank;return P===void 0?Number.MIN_VALUE:P});return g(Math.max,j)}function w(z,j){let I={lhs:[],rhs:[]};return z.forEach(P=>{j(P)?I.lhs.push(P):I.rhs.push(P)}),I}function x(z,j){let I=Date.now();try{return j()}finally{console.log(z+" time: "+(Date.now()-I)+"ms")}}function k(z,j){return j()}let C=0;function _(z){var j=++C;return z+(""+j)}function $(z,j,I=1){j==null&&(j=z,z=0);let P=H=>HjP[j]),Object.entries(z).reduce((P,[L,H])=>(P[L]=I(H,L),P),{})}function A(z,j){return z.reduce((I,P,L)=>(I[P]=j[L],I),{})}return R$}var z$,QQ;function Wqe(){if(QQ)return z$;QQ=1;let e=Uqe(),r=$n().uniqueId;z$={run:n,undo:i};function n(a){(a.graph().acyclicer==="greedy"?e(a,l(a)):o(a)).forEach(s=>{let c=a.edge(s);a.removeEdge(s),c.forwardName=s.name,c.reversed=!0,a.setEdge(s.w,s.v,c,r("rev"))});function l(s){return c=>s.edge(c).weight}}function o(a){let l=[],s={},c={};function d(u){Object.hasOwn(c,u)||(c[u]=!0,s[u]=!0,a.outEdges(u).forEach(p=>{Object.hasOwn(s,p.w)?l.push(p):d(p.w)}),delete s[u])}return a.nodes().forEach(d),l}function i(a){a.edges().forEach(l=>{let s=a.edge(l);if(s.reversed){a.removeEdge(l);let c=s.forwardName;delete s.reversed,delete s.forwardName,a.setEdge(l.w,l.v,s,c)}})}return z$}var T$,JQ;function Gqe(){if(JQ)return T$;JQ=1;let e=$n();T$={run:r,undo:o};function r(i){i.graph().dummyChains=[],i.edges().forEach(a=>n(i,a))}function n(i,a){let l=a.v,s=i.node(l).rank,c=a.w,d=i.node(c).rank,u=a.name,p=i.edge(a),f=p.labelRank;if(d===s+1)return;i.removeEdge(a);let g,v,w;for(w=0,++s;s{let l=i.node(a),s=l.edgeLabel,c;for(i.setEdge(l.edgeObj,s);l.dummy;)c=i.successors(a)[0],i.removeNode(a),s.points.push({x:l.x,y:l.y}),l.dummy==="edge-label"&&(s.x=l.x,s.y=l.y,s.width=l.width,s.height=l.height),a=c,l=i.node(a)})}return T$}var j$,eJ;function b2(){if(eJ)return j$;eJ=1;const{applyWithChunking:e}=$n();j$={longestPath:r,slack:n};function r(o){var i={};function a(l){var s=o.node(l);if(Object.hasOwn(i,l))return s.rank;i[l]=!0;let c=o.outEdges(l).map(u=>u==null?Number.POSITIVE_INFINITY:a(u.w)-o.edge(u).minlen);var d=e(Math.min,c);return d===Number.POSITIVE_INFINITY&&(d=0),s.rank=d}o.sources().forEach(a)}function n(o,i){return o.node(i.w).rank-o.node(i.v).rank-o.edge(i).minlen}return j$}var A$,tJ;function rJ(){if(tJ)return A$;tJ=1;var e=cl().Graph,r=b2().slack;A$=n;function n(l){var s=new e({directed:!1}),c=l.nodes()[0],d=l.nodeCount();s.setNode(c,{});for(var u,p;o(s,l){var p=u.v,f=d===p?u.w:p;!l.hasNode(f)&&!r(s,u)&&(l.setNode(f,{}),l.setEdge(d,f,{}),c(f))})}return l.nodes().forEach(c),l.nodeCount()}function i(l,s){return s.edges().reduce((c,d)=>{let u=Number.POSITIVE_INFINITY;return l.hasNode(d.v)!==l.hasNode(d.w)&&(u=r(s,d)),us.node(d).rank+=c)}return A$}var D$,nJ;function Yqe(){if(nJ)return D$;nJ=1;var e=rJ(),r=b2().slack,n=b2().longestPath,o=cl().alg.preorder,i=cl().alg.postorder,a=$n().simplify;D$=l,l.initLowLimValues=u,l.initCutValues=s,l.calcCutValue=d,l.leaveEdge=f,l.enterEdge=g,l.exchangeEdges=v;function l(C){C=a(C),n(C);var _=e(C);u(_),s(_,C);for(var $,R;$=f(_);)R=g(_,C,$),v(_,C,$,R)}function s(C,_){var $=i(C,C.nodes());$=$.slice(0,$.length-1),$.forEach(R=>c(C,_,R))}function c(C,_,$){var R=C.node($),T=R.parent;C.edge($,T).cutvalue=d(C,_,$)}function d(C,_,$){var R=C.node($),T=R.parent,A=!0,z=_.edge($,T),j=0;return z||(A=!1,z=_.edge(T,$)),j=z.weight,_.nodeEdges($).forEach(I=>{var P=I.v===$,L=P?I.w:I.v;if(L!==T){var H=P===A,M=_.edge(I).weight;if(j+=H?M:-M,x(C,$,L)){var V=C.edge($,L).cutvalue;j+=H?-V:V}}}),j}function u(C,_){arguments.length<2&&(_=C.nodes()[0]),p(C,{},1,_)}function p(C,_,$,R,T){var A=$,z=C.node(R);return _[R]=!0,C.neighbors(R).forEach(j=>{Object.hasOwn(_,j)||($=p(C,_,$,j,R))}),z.low=A,z.lim=$++,T?z.parent=T:delete z.parent,$}function f(C){return C.edges().find(_=>C.edge(_).cutvalue<0)}function g(C,_,$){var R=$.v,T=$.w;_.hasEdge(R,T)||(R=$.w,T=$.v);var A=C.node(R),z=C.node(T),j=A,I=!1;A.lim>z.lim&&(j=z,I=!0);var P=_.edges().filter(L=>I===k(C,C.node(L.v),j)&&I!==k(C,C.node(L.w),j));return P.reduce((L,H)=>r(_,H)!_.node(T).parent),R=o(C,$);R=R.slice(1),R.forEach(T=>{var A=C.node(T).parent,z=_.edge(T,A),j=!1;z||(z=_.edge(A,T),j=!0),_.node(T).rank=_.node(A).rank+(j?z.minlen:-z.minlen)})}function x(C,_,$){return C.hasEdge(_,$)}function k(C,_,$){return $.low<=_.lim&&_.lim<=$.lim}return D$}var M$,oJ;function Xqe(){if(oJ)return M$;oJ=1;var e=b2(),r=e.longestPath,n=rJ(),o=Yqe();M$=i;function i(c){var d=c.graph().ranker;if(d instanceof Function)return d(c);switch(c.graph().ranker){case"network-simplex":s(c);break;case"tight-tree":l(c);break;case"longest-path":a(c);break;case"none":break;default:s(c)}}var a=r;function l(c){r(c),n(c)}function s(c){o(c)}return M$}var N$,iJ;function Kqe(){if(iJ)return N$;iJ=1,N$=e;function e(o){let i=n(o);o.graph().dummyChains.forEach(a=>{let l=o.node(a),s=l.edgeObj,c=r(o,i,s.v,s.w),d=c.path,u=c.lca,p=0,f=d[p],g=!0;for(;a!==s.w;){if(l=o.node(a),g){for(;(f=d[p])!==u&&o.node(f).maxRankd||u>i[p].lim));for(f=p,p=l;(p=o.parent(p))!==f;)c.push(p);return{path:s.concat(c.reverse()),lca:f}}function n(o){let i={},a=0;function l(s){let c=a;o.children(s).forEach(l),i[s]={low:c,lim:a++}}return o.children().forEach(l),i}return N$}var P$,aJ;function Zqe(){if(aJ)return P$;aJ=1;let e=$n();P$={run:r,cleanup:a};function r(l){let s=e.addDummyNode(l,"root",{},"_root"),c=o(l),d=Object.values(c),u=e.applyWithChunking(Math.max,d)-1,p=2*u+1;l.graph().nestingRoot=s,l.edges().forEach(g=>l.edge(g).minlen*=p);let f=i(l)+1;l.children().forEach(g=>n(l,s,p,f,u,c,g)),l.graph().nodeRankFactor=p}function n(l,s,c,d,u,p,f){let g=l.children(f);if(!g.length){f!==s&&l.setEdge(s,f,{weight:0,minlen:c});return}let v=e.addBorderNode(l,"_bt"),w=e.addBorderNode(l,"_bb"),x=l.node(f);l.setParent(v,f),x.borderTop=v,l.setParent(w,f),x.borderBottom=w,g.forEach(k=>{n(l,s,c,d,u,p,k);let C=l.node(k),_=C.borderTop?C.borderTop:k,$=C.borderBottom?C.borderBottom:k,R=C.borderTop?d:2*d,T=_!==$?1:u-p[f]+1;l.setEdge(v,_,{weight:R,minlen:T,nestingEdge:!0}),l.setEdge($,w,{weight:R,minlen:T,nestingEdge:!0})}),l.parent(f)||l.setEdge(s,v,{weight:0,minlen:u+p[f]})}function o(l){var s={};function c(d,u){var p=l.children(d);p&&p.length&&p.forEach(f=>c(f,u+1)),s[d]=u}return l.children().forEach(d=>c(d,1)),s}function i(l){return l.edges().reduce((s,c)=>s+l.edge(c).weight,0)}function a(l){var s=l.graph();l.removeNode(s.nestingRoot),delete s.nestingRoot,l.edges().forEach(c=>{var d=l.edge(c);d.nestingEdge&&l.removeEdge(c)})}return P$}var B$,lJ;function Qqe(){if(lJ)return B$;lJ=1;let e=$n();B$=r;function r(o){function i(a){let l=o.children(a),s=o.node(a);if(l.length&&l.forEach(i),Object.hasOwn(s,"minRank")){s.borderLeft=[],s.borderRight=[];for(let c=s.minRank,d=s.maxRank+1;co(c.node(d))),c.edges().forEach(d=>o(c.edge(d)))}function o(c){let d=c.width;c.width=c.height,c.height=d}function i(c){c.nodes().forEach(d=>a(c.node(d))),c.edges().forEach(d=>{let u=c.edge(d);u.points.forEach(a),Object.hasOwn(u,"y")&&a(u)})}function a(c){c.y=-c.y}function l(c){c.nodes().forEach(d=>s(c.node(d))),c.edges().forEach(d=>{let u=c.edge(d);u.points.forEach(s),Object.hasOwn(u,"x")&&s(u)})}function s(c){let d=c.x;c.x=c.y,c.y=d}return I$}var O$,cJ;function eHe(){if(cJ)return O$;cJ=1;let e=$n();O$=r;function r(n){let o={},i=n.nodes().filter(d=>!n.children(d).length),a=i.map(d=>n.node(d).rank),l=e.applyWithChunking(Math.max,a),s=e.range(l+1).map(()=>[]);function c(d){if(o[d])return;o[d]=!0;let u=n.node(d);s[u.rank].push(d),n.successors(d).forEach(c)}return i.sort((d,u)=>n.node(d).rank-n.node(u).rank).forEach(c),s}return O$}var L$,dJ;function tHe(){if(dJ)return L$;dJ=1;let e=$n().zipObject;L$=r;function r(o,i){let a=0;for(let l=1;lg)),s=i.flatMap(f=>o.outEdges(f).map(g=>({pos:l[g.w],weight:o.edge(g).weight})).sort((g,v)=>g.pos-v.pos)),c=1;for(;c{let g=f.pos+c;u[g]+=f.weight;let v=0;for(;g>0;)g%2&&(v+=u[g+1]),g=g-1>>1,u[g]+=f.weight;p+=f.weight*v}),p}return L$}var F$,uJ;function rHe(){if(uJ)return F$;uJ=1,F$=e;function e(r,n=[]){return n.map(o=>{let i=r.inEdges(o);if(i.length){let a=i.reduce((l,s)=>{let c=r.edge(s),d=r.node(s.v);return{sum:l.sum+c.weight*d.order,weight:l.weight+c.weight}},{sum:0,weight:0});return{v:o,barycenter:a.sum/a.weight,weight:a.weight}}else return{v:o}})}return F$}var V$,pJ;function nHe(){if(pJ)return V$;pJ=1;let e=$n();V$=r;function r(i,a){let l={};i.forEach((c,d)=>{let u=l[c.v]={indegree:0,in:[],out:[],vs:[c.v],i:d};c.barycenter!==void 0&&(u.barycenter=c.barycenter,u.weight=c.weight)}),a.edges().forEach(c=>{let d=l[c.v],u=l[c.w];d!==void 0&&u!==void 0&&(u.indegree++,d.out.push(l[c.w]))});let s=Object.values(l).filter(c=>!c.indegree);return n(s)}function n(i){let a=[];function l(c){return d=>{d.merged||(d.barycenter===void 0||c.barycenter===void 0||d.barycenter>=c.barycenter)&&o(c,d)}}function s(c){return d=>{d.in.push(c),--d.indegree===0&&i.push(d)}}for(;i.length;){let c=i.pop();a.push(c),c.in.reverse().forEach(l(c)),c.out.forEach(s(c))}return a.filter(c=>!c.merged).map(c=>e.pick(c,["vs","i","barycenter","weight"]))}function o(i,a){let l=0,s=0;i.weight&&(l+=i.barycenter*i.weight,s+=i.weight),a.weight&&(l+=a.barycenter*a.weight,s+=a.weight),i.vs=a.vs.concat(i.vs),i.barycenter=l/s,i.weight=s,i.i=Math.min(a.i,i.i),a.merged=!0}return V$}var q$,hJ;function oHe(){if(hJ)return q$;hJ=1;let e=$n();q$=r;function r(i,a){let l=e.partition(i,v=>Object.hasOwn(v,"barycenter")),s=l.lhs,c=l.rhs.sort((v,w)=>w.i-v.i),d=[],u=0,p=0,f=0;s.sort(o(!!a)),f=n(d,c,f),s.forEach(v=>{f+=v.vs.length,d.push(v.vs),u+=v.barycenter*v.weight,p+=v.weight,f=n(d,c,f)});let g={vs:d.flat(!0)};return p&&(g.barycenter=u/p,g.weight=p),g}function n(i,a,l){let s;for(;a.length&&(s=a[a.length-1]).i<=l;)a.pop(),i.push(s.vs),l++;return l}function o(i){return(a,l)=>a.barycenterl.barycenter?1:i?l.i-a.i:a.i-l.i}return q$}var H$,fJ;function iHe(){if(fJ)return H$;fJ=1;let e=rHe(),r=nHe(),n=oHe();H$=o;function o(l,s,c,d){let u=l.children(s),p=l.node(s),f=p?p.borderLeft:void 0,g=p?p.borderRight:void 0,v={};f&&(u=u.filter(C=>C!==f&&C!==g));let w=e(l,u);w.forEach(C=>{if(l.children(C.v).length){let _=o(l,C.v,c,d);v[C.v]=_,Object.hasOwn(_,"barycenter")&&a(C,_)}});let x=r(w,c);i(x,v);let k=n(x,d);if(f&&(k.vs=[f,k.vs,g].flat(!0),l.predecessors(f).length)){let C=l.node(l.predecessors(f)[0]),_=l.node(l.predecessors(g)[0]);Object.hasOwn(k,"barycenter")||(k.barycenter=0,k.weight=0),k.barycenter=(k.barycenter*k.weight+C.order+_.order)/(k.weight+2),k.weight+=2}return k}function i(l,s){l.forEach(c=>{c.vs=c.vs.flatMap(d=>s[d]?s[d].vs:d)})}function a(l,s){l.barycenter!==void 0?(l.barycenter=(l.barycenter*l.weight+s.barycenter*s.weight)/(l.weight+s.weight),l.weight+=s.weight):(l.barycenter=s.barycenter,l.weight=s.weight)}return H$}var U$,mJ;function aHe(){if(mJ)return U$;mJ=1;let e=cl().Graph,r=$n();U$=n;function n(i,a,l,s){s||(s=i.nodes());let c=o(i),d=new e({compound:!0}).setGraph({root:c}).setDefaultNodeLabel(u=>i.node(u));return s.forEach(u=>{let p=i.node(u),f=i.parent(u);(p.rank===a||p.minRank<=a&&a<=p.maxRank)&&(d.setNode(u),d.setParent(u,f||c),i[l](u).forEach(g=>{let v=g.v===u?g.w:g.v,w=d.edge(v,u),x=w!==void 0?w.weight:0;d.setEdge(v,u,{weight:i.edge(g).weight+x})}),Object.hasOwn(p,"minRank")&&d.setNode(u,{borderLeft:p.borderLeft[a],borderRight:p.borderRight[a]}))}),d}function o(i){for(var a;i.hasNode(a=r.uniqueId("_root")););return a}return U$}var W$,gJ;function lHe(){if(gJ)return W$;gJ=1,W$=e;function e(r,n,o){let i={},a;o.forEach(l=>{let s=r.parent(l),c,d;for(;s;){if(c=r.parent(s),c?(d=i[c],i[c]=s):(d=a,a=s),d&&d!==s){n.setEdge(d,s);return}s=c}})}return W$}var G$,yJ;function sHe(){if(yJ)return G$;yJ=1;let e=eHe(),r=tHe(),n=iHe(),o=aHe(),i=lHe(),a=cl().Graph,l=$n();G$=s;function s(p,f){if(f&&typeof f.customOrder=="function"){f.customOrder(p,s);return}let g=l.maxRank(p),v=c(p,l.range(1,g+1),"inEdges"),w=c(p,l.range(g-1,-1,-1),"outEdges"),x=e(p);if(u(p,x),f&&f.disableOptimalOrderHeuristic)return;let k=Number.POSITIVE_INFINITY,C;for(let _=0,$=0;$<4;++_,++$){d(_%2?v:w,_%4>=2),x=l.buildLayerMatrix(p);let R=r(p,x);R{v.has(x)||v.set(x,[]),v.get(x).push(k)};for(const x of p.nodes()){const k=p.node(x);if(typeof k.rank=="number"&&w(k.rank,x),typeof k.minRank=="number"&&typeof k.maxRank=="number")for(let C=k.minRank;C<=k.maxRank;C++)C!==k.rank&&w(C,x)}return f.map(function(x){return o(p,x,g,v.get(x)||[])})}function d(p,f){let g=new a;p.forEach(function(v){let w=v.graph().root,x=n(v,w,g,f);x.vs.forEach((k,C)=>v.node(k).order=C),i(v,g,x.vs)})}function u(p,f){Object.values(f).forEach(g=>g.forEach((v,w)=>p.node(v).order=w))}return G$}var Y$,vJ;function cHe(){if(vJ)return Y$;vJ=1;let e=cl().Graph,r=$n();Y$={positionX:g,findType1Conflicts:n,findType2Conflicts:o,addConflict:a,hasConflict:l,verticalAlignment:s,horizontalCompaction:c,alignCoordinates:p,findSmallestWidthAlignment:u,balance:f};function n(x,k){let C={};function _($,R){let T=0,A=0,z=$.length,j=R[R.length-1];return R.forEach((I,P)=>{let L=i(x,I),H=L?x.node(L).order:z;(L||I===j)&&(R.slice(A,P+1).forEach(M=>{x.predecessors(M).forEach(V=>{let B=x.node(V),F=B.order;(F{I=R[P],x.node(I).dummy&&x.predecessors(I).forEach(L=>{let H=x.node(L);H.dummy&&(H.orderj)&&a(C,L,I)})})}function $(R,T){let A=-1,z,j=0;return T.forEach((I,P)=>{if(x.node(I).dummy==="border"){let L=x.predecessors(I);L.length&&(z=x.node(L[0]).order,_(T,j,P,A,z),j=P,A=z)}_(T,j,T.length,z,R.length)}),T}return k.length&&k.reduce($),C}function i(x,k){if(x.node(k).dummy)return x.predecessors(k).find(C=>x.node(C).dummy)}function a(x,k,C){if(k>C){let $=k;k=C,C=$}let _=x[k];_||(x[k]=_={}),_[C]=!0}function l(x,k,C){if(k>C){let _=k;k=C,C=_}return!!x[k]&&Object.hasOwn(x[k],C)}function s(x,k,C,_){let $={},R={},T={};return k.forEach(A=>{A.forEach((z,j)=>{$[z]=z,R[z]=z,T[z]=j})}),k.forEach(A=>{let z=-1;A.forEach(j=>{let I=_(j);if(I.length){I=I.sort((L,H)=>T[L]-T[H]);let P=(I.length-1)/2;for(let L=Math.floor(P),H=Math.ceil(P);L<=H;++L){let M=I[L];R[j]===j&&zMath.max(L,R[H.v]+T.edge(H)),0)}function I(P){let L=T.outEdges(P).reduce((M,V)=>Math.min(M,R[V.w]-T.edge(V)),Number.POSITIVE_INFINITY),H=x.node(P);L!==Number.POSITIVE_INFINITY&&H.borderType!==A&&(R[P]=Math.max(R[P],L))}return z(j,T.predecessors.bind(T)),z(I,T.successors.bind(T)),Object.keys(_).forEach(P=>R[P]=R[C[P]]),R}function d(x,k,C,_){let $=new e,R=x.graph(),T=v(R.nodesep,R.edgesep,_);return k.forEach(A=>{let z;A.forEach(j=>{let I=C[j];if($.setNode(I),z){var P=C[z],L=$.edge(P,I);$.setEdge(P,I,Math.max(T(x,j,z),L||0))}z=j})}),$}function u(x,k){return Object.values(k).reduce((C,_)=>{let $=Number.NEGATIVE_INFINITY,R=Number.POSITIVE_INFINITY;Object.entries(_).forEach(([A,z])=>{let j=w(x,A)/2;$=Math.max(z+j,$),R=Math.min(z-j,R)});const T=$-R;return T{["l","r"].forEach(T=>{let A=R+T,z=x[A];if(z===k)return;let j=Object.values(z),I=_-r.applyWithChunking(Math.min,j);T!=="l"&&(I=$-r.applyWithChunking(Math.max,j)),I&&(x[A]=r.mapValues(z,P=>P+I))})})}function f(x,k){return r.mapValues(x.ul,(C,_)=>{if(k)return x[k.toLowerCase()][_];{let $=Object.values(x).map(R=>R[_]).sort((R,T)=>R-T);return($[1]+$[2])/2}})}function g(x){let k=r.buildLayerMatrix(x),C=Object.assign(n(x,k),o(x,k)),_={},$;["u","d"].forEach(T=>{$=T==="u"?k:Object.values(k).reverse(),["l","r"].forEach(A=>{A==="r"&&($=$.map(P=>Object.values(P).reverse()));let z=(T==="u"?x.predecessors:x.successors).bind(x),j=s(x,$,C,z),I=c(x,$,j.root,j.align,A==="r");A==="r"&&(I=r.mapValues(I,P=>-P)),_[T+A]=I})});let R=u(x,_);return p(_,R),f(_,x.graph().align)}function v(x,k,C){return(_,$,R)=>{let T=_.node($),A=_.node(R),z=0,j;if(z+=T.width/2,Object.hasOwn(T,"labelpos"))switch(T.labelpos.toLowerCase()){case"l":j=-T.width/2;break;case"r":j=T.width/2;break}if(j&&(z+=C?j:-j),j=0,z+=(T.dummy?k:x)/2,z+=(A.dummy?k:x)/2,z+=A.width/2,Object.hasOwn(A,"labelpos"))switch(A.labelpos.toLowerCase()){case"l":j=A.width/2;break;case"r":j=-A.width/2;break}return j&&(z+=C?j:-j),j=0,z}}function w(x,k){return x.node(k).width}return Y$}var X$,bJ;function dHe(){if(bJ)return X$;bJ=1;let e=$n(),r=cHe().positionX;X$=n;function n(i){i=e.asNonCompoundGraph(i),o(i),Object.entries(r(i)).forEach(([a,l])=>i.node(a).x=l)}function o(i){let a=e.buildLayerMatrix(i),l=i.graph().ranksep,s=0;a.forEach(c=>{const d=c.reduce((u,p)=>{const f=i.node(p).height;return u>f?u:f},0);c.forEach(u=>i.node(u).y=s+d/2),s+=d+l})}return X$}var K$,xJ;function uHe(){if(xJ)return K$;xJ=1;let e=Wqe(),r=Gqe(),n=Xqe(),o=$n().normalizeRanks,i=Kqe(),a=$n().removeEmptyRanks,l=Zqe(),s=Qqe(),c=Jqe(),d=sHe(),u=dHe(),p=$n(),f=cl().Graph;K$=g;function g(O,W){let Z=W&&W.debugTiming?p.time:p.notime;Z("layout",()=>{let Q=Z(" buildLayoutGraph",()=>z(O));Z(" runLayout",()=>v(Q,Z,W)),Z(" updateInputGraph",()=>w(O,Q))})}function v(O,W,Z){W(" makeSpaceForEdgeLabels",()=>j(O)),W(" removeSelfEdges",()=>q(O)),W(" acyclic",()=>e.run(O)),W(" nestingGraph.run",()=>l.run(O)),W(" rank",()=>n(p.asNonCompoundGraph(O))),W(" injectEdgeLabelProxies",()=>I(O)),W(" removeEmptyRanks",()=>a(O)),W(" nestingGraph.cleanup",()=>l.cleanup(O)),W(" normalizeRanks",()=>o(O)),W(" assignRankMinMax",()=>P(O)),W(" removeEdgeLabelProxies",()=>L(O)),W(" normalize.run",()=>r.run(O)),W(" parentDummyChains",()=>i(O)),W(" addBorderSegments",()=>s(O)),W(" order",()=>d(O,Z)),W(" insertSelfEdges",()=>G(O)),W(" adjustCoordinateSystem",()=>c.adjust(O)),W(" position",()=>u(O)),W(" positionSelfEdges",()=>U(O)),W(" removeBorderNodes",()=>F(O)),W(" normalize.undo",()=>r.undo(O)),W(" fixupEdgeLabelCoords",()=>V(O)),W(" undoCoordinateSystem",()=>c.undo(O)),W(" translateGraph",()=>H(O)),W(" assignNodeIntersects",()=>M(O)),W(" reversePoints",()=>B(O)),W(" acyclic.undo",()=>e.undo(O))}function w(O,W){O.nodes().forEach(Z=>{let Q=O.node(Z),ie=W.node(Z);Q&&(Q.x=ie.x,Q.y=ie.y,Q.rank=ie.rank,W.children(Z).length&&(Q.width=ie.width,Q.height=ie.height))}),O.edges().forEach(Z=>{let Q=O.edge(Z),ie=W.edge(Z);Q.points=ie.points,Object.hasOwn(ie,"x")&&(Q.x=ie.x,Q.y=ie.y)}),O.graph().width=W.graph().width,O.graph().height=W.graph().height}let x=["nodesep","edgesep","ranksep","marginx","marginy"],k={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},C=["acyclicer","ranker","rankdir","align"],_=["width","height","rank"],$={width:0,height:0},R=["minlen","weight","width","height","labeloffset"],T={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},A=["labelpos"];function z(O){let W=new f({multigraph:!0,compound:!0}),Z=K(O.graph());return W.setGraph(Object.assign({},k,Y(Z,x),p.pick(Z,C))),O.nodes().forEach(Q=>{let ie=K(O.node(Q));const te=Y(ie,_);Object.keys($).forEach(re=>{te[re]===void 0&&(te[re]=$[re])}),W.setNode(Q,te),W.setParent(Q,O.parent(Q))}),O.edges().forEach(Q=>{let ie=K(O.edge(Q));W.setEdge(Q,Object.assign({},T,Y(ie,R),p.pick(ie,A)))}),W}function j(O){let W=O.graph();W.ranksep/=2,O.edges().forEach(Z=>{let Q=O.edge(Z);Q.minlen*=2,Q.labelpos.toLowerCase()!=="c"&&(W.rankdir==="TB"||W.rankdir==="BT"?Q.width+=Q.labeloffset:Q.height+=Q.labeloffset)})}function I(O){O.edges().forEach(W=>{let Z=O.edge(W);if(Z.width&&Z.height){let Q=O.node(W.v),ie={rank:(O.node(W.w).rank-Q.rank)/2+Q.rank,e:W};p.addDummyNode(O,"edge-proxy",ie,"_ep")}})}function P(O){let W=0;O.nodes().forEach(Z=>{let Q=O.node(Z);Q.borderTop&&(Q.minRank=O.node(Q.borderTop).rank,Q.maxRank=O.node(Q.borderBottom).rank,W=Math.max(W,Q.maxRank))}),O.graph().maxRank=W}function L(O){O.nodes().forEach(W=>{let Z=O.node(W);Z.dummy==="edge-proxy"&&(O.edge(Z.e).labelRank=Z.rank,O.removeNode(W))})}function H(O){let W=Number.POSITIVE_INFINITY,Z=0,Q=Number.POSITIVE_INFINITY,ie=0,te=O.graph(),re=te.marginx||0,ue=te.marginy||0;function _e(ce){let pe=ce.x,xe=ce.y,je=ce.width,Be=ce.height;W=Math.min(W,pe-je/2),Z=Math.max(Z,pe+je/2),Q=Math.min(Q,xe-Be/2),ie=Math.max(ie,xe+Be/2)}O.nodes().forEach(ce=>_e(O.node(ce))),O.edges().forEach(ce=>{let pe=O.edge(ce);Object.hasOwn(pe,"x")&&_e(pe)}),W-=re,Q-=ue,O.nodes().forEach(ce=>{let pe=O.node(ce);pe.x-=W,pe.y-=Q}),O.edges().forEach(ce=>{let pe=O.edge(ce);pe.points.forEach(xe=>{xe.x-=W,xe.y-=Q}),Object.hasOwn(pe,"x")&&(pe.x-=W),Object.hasOwn(pe,"y")&&(pe.y-=Q)}),te.width=Z-W+re,te.height=ie-Q+ue}function M(O){O.edges().forEach(W=>{let Z=O.edge(W),Q=O.node(W.v),ie=O.node(W.w),te,re;Z.points?(te=Z.points[0],re=Z.points[Z.points.length-1]):(Z.points=[],te=ie,re=Q),Z.points.unshift(p.intersectRect(Q,te)),Z.points.push(p.intersectRect(ie,re))})}function V(O){O.edges().forEach(W=>{let Z=O.edge(W);if(Object.hasOwn(Z,"x"))switch((Z.labelpos==="l"||Z.labelpos==="r")&&(Z.width-=Z.labeloffset),Z.labelpos){case"l":Z.x-=Z.width/2+Z.labeloffset;break;case"r":Z.x+=Z.width/2+Z.labeloffset;break}})}function B(O){O.edges().forEach(W=>{let Z=O.edge(W);Z.reversed&&Z.points.reverse()})}function F(O){O.nodes().forEach(W=>{if(O.children(W).length){let Z=O.node(W),Q=O.node(Z.borderTop),ie=O.node(Z.borderBottom),te=O.node(Z.borderLeft[Z.borderLeft.length-1]),re=O.node(Z.borderRight[Z.borderRight.length-1]);Z.width=Math.abs(re.x-te.x),Z.height=Math.abs(ie.y-Q.y),Z.x=te.x+Z.width/2,Z.y=Q.y+Z.height/2}}),O.nodes().forEach(W=>{O.node(W).dummy==="border"&&O.removeNode(W)})}function q(O){O.edges().forEach(W=>{if(W.v===W.w){var Z=O.node(W.v);Z.selfEdges||(Z.selfEdges=[]),Z.selfEdges.push({e:W,label:O.edge(W)}),O.removeEdge(W)}})}function G(O){var W=p.buildLayerMatrix(O);W.forEach(Z=>{var Q=0;Z.forEach((ie,te)=>{var re=O.node(ie);re.order=te+Q,(re.selfEdges||[]).forEach(ue=>{p.addDummyNode(O,"selfedge",{width:ue.label.width,height:ue.label.height,rank:re.rank,order:te+ ++Q,e:ue.e,label:ue.label},"_se")}),delete re.selfEdges})})}function U(O){O.nodes().forEach(W=>{var Z=O.node(W);if(Z.dummy==="selfedge"){var Q=O.node(Z.e.v),ie=Q.x+Q.width/2,te=Q.y,re=Z.x-ie,ue=Q.height/2;O.setEdge(Z.e,Z.label),O.removeNode(W),Z.label.points=[{x:ie+2*re/3,y:te-ue},{x:ie+5*re/6,y:te-ue},{x:ie+re,y:te},{x:ie+5*re/6,y:te+ue},{x:ie+2*re/3,y:te+ue}],Z.label.x=Z.x,Z.label.y=Z.y}})}function Y(O,W){return p.mapValues(p.pick(O,W),Number)}function K(O){var W={};return O&&Object.entries(O).forEach(([Z,Q])=>{typeof Z=="string"&&(Z=Z.toLowerCase()),W[Z]=Q}),W}return K$}var Z$,wJ;function pHe(){if(wJ)return Z$;wJ=1;let e=$n(),r=cl().Graph;Z$={debugOrdering:n};function n(o){let i=e.buildLayerMatrix(o),a=new r({compound:!0,multigraph:!0}).setGraph({});return o.nodes().forEach(l=>{a.setNode(l,{label:l}),a.setParent(l,"layer"+o.node(l).rank)}),o.edges().forEach(l=>a.setEdge(l.v,l.w,{},l.name)),i.forEach((l,s)=>{let c="layer"+s;a.setNode(c,{rank:"same"}),l.reduce((d,u)=>(a.setEdge(d,u,{style:"invis"}),u))}),a}return Z$}var kJ,_J;function hHe(){return _J||(_J=1,kJ="1.1.8"),kJ}var SJ,EJ;function fHe(){return EJ||(EJ=1,SJ={graphlib:cl(),layout:uHe(),debug:pHe(),util:{time:$n().time,notime:$n().notime},version:hHe()}),SJ}var mHe=fHe();const x2=Y7(mHe),co={dagre:{ranksep:60,nodesep:35,edgesep:25},edgeLabel:{width:140,height:10,minlen:1,weight:1},emptyNodeOffset:120,nodeWidth:330,nodeHeight:180,compound:{labelHeight:2,paddingTop:50,paddingBottom:32}};function gHe(){const e=new x2.graphlib.Graph({directed:!0,compound:!0,multigraph:!0});return e.setGraph({...co.dagre,rankdir:"LR"}),e.setDefaultEdgeLabel(()=>({...co.edgeLabel})),e.setDefaultNodeLabel(()=>({})),e}const Q$="-port";function J$(e,r,n){const o=new Ln(a=>({id:`${e}-${a}`,portId:`${e}-${a}`})),i=hx(r);for(const a of i.sorted){const l=i.children(a).length>0,s=a.id,c=`${e}-${s}`,d=l?`${c}${Q$}`:c;o.set(s,{id:c,portId:d}),n.setNode(c,{column:e,element:a,isCompound:l,portId:d,inPorts:[],outPorts:[],width:co.nodeWidth,height:co.nodeHeight}),l&&(n.setNode(d,{element:a,portId:d,isCompound:l,inPorts:[],outPorts:[],width:co.nodeWidth-co.dagre.ranksep,height:co.compound.labelHeight}),n.setParent(d,c));const u=i.parent(a);u&&n.setParent(c,`${e}-${u.id}`)}return{...i,byId:a=>{const l=i.byId(a),s=o.get(l.id);return{element:l,graph:s}},graphNodes:o}}function yHe(e){return x2.layout(e,{}),r=>{const n=e.node(r),{x:o,y:i,width:a,height:l}=n;return{position:{x:o-Math.round(a/2),y:i-Math.round(l/2)},width:a,height:l}}}var w2;(e=>{e.Empty="@empty"})(w2||(w2={}));function vHe(e,r){const n=gHe(),o=J$("incomers",e.incomers,n),i=J$("subjects",e.subjects,n),a=J$("outgoers",e.outgoers,n),l=[];Jr(XCe(Jr(C1(e.incoming),un($=>({id:$.source.id,sourceFqn:$.source.id,targetFqn:$.target.id,source:o.byId($.source.id).graph,target:i.byId($.target.id).graph,relation:$}))),Jr(C1(e.outgoing),un($=>({id:$.target.id,sourceFqn:$.source.id,targetFqn:$.target.id,source:i.byId($.source.id).graph,target:a.byId($.target.id).graph,relation:$})))),un($=>({...$,expr:`${$.source.id}->${$.target.id}`})),g$e(rp("expr")),f$e($=>{const R=$[0].source,T=$[0].target,A=$[0].expr;n.node(R.id).outPorts.push(T.id),n.node(T.id).inPorts.push(R.id),n.setEdge(R.portId,T.portId,{...co.edgeLabel},A),l.push({name:A,sourceFqn:$[0].sourceFqn,targetFqn:$[0].targetFqn,source:R.id,sourceHandle:R.id+"_out"+(n.node(R.id).outPorts.length-1),target:T.id,targetHandle:T.id+"_in"+(n.node(T.id).inPorts.length-1),relations:un($,rp("relation"))})}));for(const $ of i.graphNodes.values()){const R=$.id,T=n.node(R);if(T.isCompound)continue;const A=Math.max(n.inEdges(R)?.length??0,n.outEdges(R)?.length??0);A>2&&(T.height=T.height+(A-3)*14)}const s=[...o.graphNodes.values(),...i.graphNodes.values(),...a.graphNodes.values()];if(o.graphNodes.size==0){const $="incomers-empty";n.setNode($,{column:"incomers",element:null,isCompound:!1,portId:$,inPorts:[],outPorts:[],width:co.nodeWidth,height:co.nodeHeight});for(const R of i.graphNodes.values())n.setEdge($,R.portId);s.push({id:$,portId:$})}if(a.graphNodes.size==0){const $="outgoers-empty";n.setNode($,{column:"outgoers",element:null,isCompound:!1,portId:$,inPorts:[],outPorts:[],width:co.nodeWidth,height:co.nodeHeight});for(const R of i.graphNodes.values())n.setEdge(R.portId,$);s.push({id:$,portId:$})}const c=n.edgeCount();if(c>10)for(const $ of n.edges())n.setEdge($,{...co.edgeLabel,width:c>25?800:400});const d=yHe(n),u=Jr(s,ep($=>$.id===$.portId),hw($=>[$.id,d($.id)]));function p($){return u[$]??=Jr(n.children($)??[],ep(R=>!R.endsWith(Q$)),un(R=>p(R)),Wq(R=>{He(R.length>0,`Node ${$} has no nested nodes`)}),mw((R,T)=>({minY:Math.min(R.minY,T.position.y),maxY:Math.max(R.maxY,T.position.y+T.height)}),{minY:1/0,maxY:-1/0}),({minY:R,maxY:T})=>{const{position:{x:A},width:z}=d($);return R=R-co.compound.paddingTop,T=T+co.compound.paddingBottom,{position:{x:A,y:R},width:z,height:T-R}})}function f($){const R=n.parent($);return R?f(R)+1:0}function g($){const R=n.children($)??[];return R.length===0?0:1+Math.max(...R.map(g))}const v=($,R,T)=>Jr(T,un((A,z)=>({port:$+"_"+R+z,topY:p(A).position.y})),gw(rp("topY")),un(rp("port")));let w=0,x=0;const[k]=[...i.root];He(k,"Subjects should not be empty");let C=p(i.graphNodes.get(k.id).id);const _=s.map(({id:$})=>{const{element:R,inPorts:T,outPorts:A,column:z}=n.node($);let{position:j,width:I,height:P}=p($);if(!R){if(P=Math.min(C.height,300),j.y=C.position.y+C.height/2-P/2,z==="incomers")I=C.position.x-co.emptyNodeOffset-j.x;else{const q=j.x+I;j.x=C.position.x+C.width+co.emptyNodeOffset,I=q-j.x}return{id:$,parent:null,x:j.x,y:j.y,title:"empty node",description:null,technology:null,tags:[],links:[],color:"muted",shape:"rectangle",style:{border:"dashed",opacity:50},kind:w2.Empty,level:0,labelBBox:{x:j.x,y:j.y,width:I,height:P},children:[],width:I,height:P,column:z,ports:{in:[],out:[]},existsInCurrentView:!1}}const L=n.parent($),H=(n.children($)??[]).filter(q=>!q.endsWith(Q$));w=Math.min(w,j.x),x=Math.min(x,j.y);const M=r?E1(R.scopedViews(),q=>q.id!==r.id)?.id??null:null,V=r?.findNodeWithElement(R.id),B=r&&!V?E1(R.ancestors(),q=>!!r.findNodeWithElement(q.id))?.id:null,F=V??(B&&r?.findNodeWithElement(B));return{id:$,parent:L??null,x:j.x,y:j.y,title:R.title,description:Fs(R.$element)??null,technology:R.technology,tags:[...R.tags],links:null,color:F?.color??R.color,shape:V?.shape??R.shape,icon:V?.icon??R.icon??"none",modelRef:R.id,kind:R.kind,level:f($),labelBBox:{x:j.x,y:j.y,width:I,height:P},style:ud({...(V??F)?.style,...R.$element.style},["color","shape","icon"]),navigateTo:M,...H.length>0&&{depth:g($)},children:H,width:I,height:P,column:z,ports:{in:v($,"in",T),out:v($,"out",A)},existsInCurrentView:!!V}});return{subjectExistsInScope:!r||r.includesElement(k.id),bounds:{x:Math.min(w,0),y:Math.min(x,0),width:n.graph().width??100,height:n.graph().height??100},nodes:_,edges:n.edges().reduce(($,R)=>{const T=n.edge(R),A=R.name;if(!A)return $;const{name:z,source:j,sourceFqn:I,target:P,targetFqn:L,relations:H,sourceHandle:M,targetHandle:V}=mt(Q1(l,U=>U.name===A)),B=fw(H),F=B?.title??"untitled",q=H.length>1,G=fw(yw(H.flatMap(U=>U.navigateTo?.id?U.navigateTo.id:[])));return $.push(_1({id:z,sourceFqn:I,source:j,sourceHandle:M,targetFqn:L,target:P,targetHandle:V,label:q?`${H.length} relationships`:F,navigateTo:G,color:B?.color??"gray",existsInCurrentView:!r||H.every(U=>r.includesRelation(U.id)),points:T.points.map(U=>[U.x,U.y]),line:B?.line??"dashed",head:B?.head,tail:B?.tail,relations:H.map(U=>U.id),parent:null})),$},[])}}function bHe(e,r,n){const o=Fo();return S.useMemo(()=>{const i=r?o.findView(r):null,a=vHe(ZO(e,o,r,n),n==="view"?i:null);return i&&(n==="global"||!a.subjectExistsInScope)&&(a.edges=a.edges.map(l=>(l.existsInCurrentView=l.relations.every(s=>i.includesRelation(s)),l))),Object.assign(a,{subject:e})},[o,e,r,n,ZO])}const o0=(e,r)=>Rb(e.label,r.label);function eR(e){return{label:e.title,value:e.id,children:[...e.children()].map(eR).sort(o0)}}function xHe(e){const r=Fo();return S.useMemo(()=>e?[...r.view(e).roots()].map(eR).sort(o0):[...r.roots()].map(eR).sort(o0),[r,e??null])}const wHe=fe({margin:"0"}),kHe=fe({_hover:{backgroundColor:"mantine.colors.gray[0]",_dark:{backgroundColor:"mantine.colors.defaultHover",color:"mantine.colors.white"}}}),CJ=fe({maxHeight:["70vh","calc(100cqh - 70px)"]}),_He=Object.freeze(Object.defineProperty({__proto__:null,label:kHe,node:wHe,scrollArea:CJ},Symbol.toStringTag,{value:"Module"})),SHe=[["path",{d:"M8 9l4 -4l4 4",key:"svg-0"}],["path",{d:"M16 15l-4 4l-4 -4",key:"svg-1"}]],tR=wt("outline","selector","Selector",SHe),EHe=e=>{const r=e.context.layouted?.subjectExistsInScope??!1;return{subjectId:e.context.subject,viewId:e.context.viewId,scope:e.context.scope,subjectExistsInScope:r,enableSelectSubject:e.context.enableSelectSubject,enableChangeScope:e.context.enableChangeScope}},CHe=()=>{},$He=S.memo(()=>{const e=n0(),{subjectId:r,viewId:n,scope:o,subjectExistsInScope:i,enableSelectSubject:a,enableChangeScope:l}=v2(EHe),s=S.useRef(null),c=S.useRef(null),d=Fo().findElement(r),u=xHe(o==="view"&&n?n:void 0),p=_y({multiple:!1});return p.setHoveredNode=CHe,S.useEffect(()=>{Du(r).reverse().forEach(f=>{p.expand(f)}),p.select(r)},[r]),y.jsxs(en,{ref:s,gap:"xs",pos:"relative",children:[a&&y.jsxs(en,{gap:4,wrap:"nowrap",children:[y.jsx(Se,{fz:"xs",fw:"500",style:{whiteSpace:"nowrap",userSelect:"none"},children:"Relationships of"}),y.jsx(Se,{pos:"relative",children:y.jsxs(br,{position:"bottom-start",shadow:"md",keepMounted:!1,withinPortal:!1,closeOnClickOutside:!0,clickOutsideEvents:["pointerdown","mousedown","click"],offset:4,onOpen:()=>{setTimeout(()=>{c.current?.querySelector(`[data-value="${r}"]`)?.scrollIntoView({behavior:"instant",block:"nearest"})},100)},children:[y.jsx(kd,{children:y.jsx(Vn,{size:"xs",variant:"default",maw:250,rightSection:y.jsx(tR,{size:16}),children:y.jsx(it,{fz:"xs",fw:"500",truncate:!0,children:d?.title??"???"})})}),y.jsx(Qs,{p:0,miw:250,maw:400,children:y.jsx(oi,{scrollbars:"y",type:"never",viewportRef:c,className:CJ,children:y.jsx(Ff,{allowRangeSelection:!1,selectOnClick:!1,tree:p,data:u,classNames:_He,levelOffset:8,styles:{root:{maxWidth:400,overflow:"hidden"},label:{paddingTop:5,paddingBottom:6}},renderNode:({node:f,selected:g,expanded:v,elementProps:w,hasChildren:x})=>y.jsxs(en,{gap:2,wrap:"nowrap",...w,py:"3",children:[y.jsx(lr,{variant:"subtle",size:18,c:"dimmed",style:{visibility:x?"visible":"hidden"},children:y.jsx(Dd,{stroke:3.5,style:{transition:"transform 150ms ease",transform:`rotate(${v?"90deg":"0"})`,width:"80%"}})}),y.jsx(Se,{flex:"1 1 100%",w:"100%",onClick:k=>{k.stopPropagation(),p.select(f.value),p.expand(f.value),e.navigateTo(f.value)},children:y.jsx(it,{fz:"sm",fw:g?"600":"400",truncate:"end",children:f.label})})]})})})})]})})]}),l&&y.jsxs(en,{gap:4,wrap:"nowrap",children:[a&&y.jsx(Se,{fz:"xs",fw:"500",...!i&&{c:"dimmed"},style:{whiteSpace:"nowrap",userSelect:"none"},children:"Scope"}),y.jsx("div",{children:y.jsx(_n,{color:"orange",label:y.jsxs(y.Fragment,{children:["This element does not exist in the current view",o==="view"&&y.jsxs(y.Fragment,{children:[y.jsx("br",{}),"Scope is set to global"]})]}),position:"bottom-start",disabled:i,portalProps:{target:s.current},children:y.jsx(Of,{flex:"1 0 auto",size:"xs",withItemsBorders:!1,value:o,styles:{label:{paddingLeft:8,paddingRight:8}},onChange:f=>{e.changeScope(f)},data:[{label:"Global",value:"global"},{label:y.jsx("span",{children:"Current view"}),value:"view",disabled:!i}]})})})]})]})}),k2=(e,r)=>Math.abs(e-r)<2.5,RHe=(e,r)=>e.id===r.id&&tt(e.selected??!1,r.selected??!1)&&tt(e.animated??!1,r.animated??!1)&&tt(e.source,r.source)&&k2(e.sourceX,r.sourceX)&&k2(e.sourceY,r.sourceY)&&tt(e.sourceHandleId??null,r.sourceHandleId??null)&&tt(e.sourcePosition,r.sourcePosition)&&tt(e.target,r.target)&&k2(e.targetY,r.targetY)&&k2(e.targetX,r.targetX)&&tt(e.targetHandleId??null,r.targetHandleId??null)&&tt(e.targetPosition,r.targetPosition)&&tt(e.data,r.data);function rR(e){const r=S.memo(e,RHe);return r.displayName=`MemoEdge(${e.displayName||e.name})`,r}function $J(e,r){return r2(e,r)}const wa=$J("button"),Rr=$J("div"),i0=S.forwardRef(({edgeProps:{id:e,data:{label:r,technology:n,hovered:o=!1},selected:i=!1,selectable:a=!1},pointerEvents:l="all",className:s,style:c,children:d,...u},p)=>{const f=k1(e)?IO(e):null,g=Zn(r)||Zn(n);return y.jsxs(Rr,{ref:p,className:Ge("likec4-edge-label",dVe({pointerEvents:l,isStepEdge:f!==null,cursor:a||f!==null?"pointer":"default"}),s),"data-edge-id":e,animate:{scale:o&&!i?1.06:1},...u,children:[f!==null&&y.jsx(hr,{className:"likec4-edge-label__step-number",children:f}),g&&y.jsxs(hr,{className:"likec4-edge-label__contents",children:[Zn(r)&&y.jsx(hr,{lineClamp:5,className:"likec4-edge-label__text",children:r}),Zn(n)&&y.jsx(hr,{className:"likec4-edge-label__technology",children:"[ "+n+" ]"}),d]})]})});i0.displayName="EdgeLabel";function _2({icon:e,onClick:r}){return y.jsx(lr,{className:Ge("nodrag nopan",cVe()),onPointerDownCapture:nn,onClick:r,role:"button",onDoubleClick:nn,children:e??y.jsx(ba,{})})}function a0({className:e,component:r="g",selectable:n=!1,selected:o=!1,data:{color:i="gray",hovered:a=!1,active:l=!1,dimmed:s=!1,...c},animated:d,children:u,style:p}){const f={className:Ge(e,"likec4-edge-container",o&&"selected",n&&"selectable"),"data-likec4-color":i,"data-edge-dir":c.dir??"forward","data-edge-active":l,"data-edge-animated":d||l,"data-likec4-hovered":a,...o&&{"data-likec4-selected":o},...s!==!1&&{"data-likec4-dimmed":s}};return r==="svg"?y.jsx("svg",{style:p,...f,children:u}):(He(r==="g",'EdgeContainer: component must be "g" or "svg"'),y.jsx("g",{style:p,...f,children:u}))}const zHe=e=>y.jsx("marker",{viewBox:"-4 -4 14 16",refX:5,refY:4,markerWidth:"7",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M0,0 L7,4 L0,8 L4,4 Z",stroke:"context-stroke",fill:"context-stroke",strokeDasharray:0,strokeWidth:1,strokeLinecap:"round"})}),THe=e=>y.jsx("marker",{viewBox:"-1 -1 12 10",refX:4,refY:3,markerWidth:"8",markerHeight:"6",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M 0 0 L 8 3 L 0 6 L 1 3 z",fill:"context-stroke",strokeWidth:0})}),jHe=e=>y.jsx("marker",{viewBox:"-1 -1 12 12",refX:8,refY:4,markerWidth:"8",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M 8 0 L 0 4 L 8 8 M 8 4 L 0 4",fill:"none",strokeWidth:1})}),AHe=e=>y.jsx("marker",{viewBox:"-1 -1 12 10",refX:4,refY:3,markerWidth:"8",markerHeight:"6",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M 0 0 L 8 3 L 0 6 L 1 3 z",stroke:"context-stroke",fill:"context-stroke",strokeWidth:1.25,strokeLinejoin:"miter",strokeLinecap:"square"})}),DHe=e=>y.jsx("marker",{viewBox:"-4 -4 16 14",refX:5,refY:4,markerWidth:"10",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M5,0 L10,4 L5,8 L0,4 Z",fill:"context-stroke",strokeWidth:0,strokeLinecap:"round"})}),MHe=e=>y.jsx("marker",{viewBox:"-4 -4 16 14",refX:6,refY:4,markerWidth:"10",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M5,0 L10,4 L5,8 L0,4 Z",stroke:"context-stroke",fill:"context-stroke",strokeWidth:1.25,strokeLinecap:"round"})}),NHe=e=>y.jsx("marker",{viewBox:"0 0 10 10",refX:4,refY:4,markerWidth:"6",markerHeight:"6",...e,children:y.jsx("circle",{strokeWidth:0,fill:"context-stroke",cx:4,cy:4,r:3})}),PHe=e=>y.jsx("marker",{viewBox:"0 0 10 10",refX:4,refY:4,markerWidth:"6",markerHeight:"6",...e,children:y.jsx("circle",{strokeWidth:1.25,stroke:"context-stroke",fill:"context-stroke",cx:4,cy:4,r:3})}),RJ={Arrow:THe,Crow:jHe,OArrow:AHe,Open:zHe,Diamond:DHe,ODiamond:MHe,Dot:NHe,ODot:PHe};function zJ(e){if(!(!e||e==="none"))switch(e){case"normal":return"Arrow";case"crow":return"Crow";case"onormal":return"OArrow";case"diamond":return"Diamond";case"odiamond":return"ODiamond";case"open":case"vee":return"Open";case"dot":return"Dot";case"odot":return"ODot";default:Qo(e)}}const l0=S.forwardRef(({edgeProps:{id:e,data:{line:r,dir:n,tail:o,head:i},selectable:a=!0,style:l,interactionWidth:s},isDragging:c=!1,onEdgePointerDown:d,strokeWidth:u,svgPath:p},f)=>{let g=zJ(o),v=zJ(i??"normal");n==="back"&&([g,v]=[v,g]);const w=g?RJ[g]:null,x=v?RJ[v]:null,k=r==="dotted",C=k||r==="dashed";let _;k?_="1,8":C&&(_="8,10");const $=gVe();return y.jsxs(y.Fragment,{children:[a&&y.jsx("path",{className:Ge("react-flow__edge-interaction",fe({fill:"none"})),onPointerDown:d,d:p,style:{strokeWidth:s??10,stroke:"currentcolor",strokeOpacity:0,...c?{display:"none"}:{}}}),y.jsx("circle",{className:Ge("likec4-edge-middle-point",$.middlePoint),"data-edge-id":e,style:{offsetPath:`path("${p}")`}}),y.jsxs("g",{className:$.markersCtx,onPointerDown:d,children:[y.jsxs("defs",{children:[w&&y.jsx(w,{id:"start"+e}),x&&y.jsx(x,{id:"end"+e})]}),y.jsx("path",{className:Ge("react-flow__edge-path","hide-on-reduced-graphics",$.pathBg,c&&fe({display:"none"})),d:p,style:l,strokeLinecap:"round"}),y.jsx("path",{ref:f,className:Ge("react-flow__edge-path",$.path,a&&"react-flow__edge-interaction"),d:p,style:l,strokeWidth:u,strokeLinecap:"round",strokeDasharray:_,markerStart:w?`url(#start${e})`:void 0,markerEnd:x?`url(#end${e})`:void 0})]})]})});l0.displayName="EdgePath";const TJ=e=>{if(e!==void 0)return Iq(e)?`${Math.round(e)}px`:e};function S2({edgeProps:{id:e,selected:r=!1,data:{hovered:n=!1,active:o=!1,dimmed:i=!1,labelBBox:a,color:l="gray"},animated:s},labelPosition:c,className:d,style:u,children:p,...f}){let g=QC(S.useCallback(k=>k.edgeLookup.get(e)?.zIndex??lc.Edge,[e]));(n||o)&&(g+=100);let v=c?.x??a?.x,w=c?.y??a?.y;if(v===void 0||w===void 0)return null;const x=c?.translate??"";return y.jsx(yq,{children:y.jsx("div",{...f,className:Ge("nodrag nopan","likec4-edge-label-container",d),"data-likec4-hovered":n,"data-likec4-color":l,"data-edge-active":o,"data-edge-animated":s||o,...r!==!1&&{"data-likec4-selected":r},...i!==!1&&{"data-likec4-dimmed":i},style:{...a&&{maxWidth:a.width+18},zIndex:g,...u,transform:`translate(${TJ(v)}, ${TJ(w)}) ${x}`},children:p},e)})}const BHe=rR(e=>{const r=n0(),{enableNavigateTo:n}=sr(),{data:{navigateTo:o,relations:i,existsInCurrentView:a}}=e,[l,s,c]=Kx(e),d=Nt(),u=i.length>1||!a,p=u?{...e,data:{...e.data,line:"solid",color:"amber"}}:e;let f=y.jsx(i0,{edgeProps:p,className:fe({transition:"fast"}),children:n&&o&&y.jsx(_2,{...e,onClick:g=>{g.stopPropagation(),d.navigateTo(o)}})});return a||(f=y.jsx(_n,{color:"orange",c:"black",label:"This relationship is not included in the current view",portalProps:{target:`#${r.rootElementId}`},openDelay:800,children:f})),y.jsxs(a0,{...p,children:[y.jsx(l0,{edgeProps:p,svgPath:l,...u&&{strokeWidth:5}}),y.jsx(S2,{edgeProps:p,labelPosition:{x:s,y:c,translate:"translate(-50%, 0)"},style:{maxWidth:Math.min(Math.abs(e.targetX-e.sourceX-70),250)},children:f})]})}),IHe=fe({width:"100%",height:"100%",border:"3px dashed",borderColor:"mantine.colors.defaultBorder",borderRadius:"md",display:"flex",justifyContent:"center",alignItems:"center"});function OHe({data:{column:e}}){return y.jsx(Se,{className:IHe,children:y.jsxs(it,{c:"dimmed",fz:"lg",fw:500,children:["No ",e==="incomers"?"incoming":"outgoing"]})})}const LHe=e=>e.context.view.id;function E2(){const e=Xf();return pn(e,LHe)}const FHe=e=>e.context.view;function VHe(){const e=Xf();return pn(e,FHe,Ir)}const qHe=[["path",{d:"M3 6a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-0"}],["path",{d:"M21 11v-3a2 2 0 0 0 -2 -2h-6l3 3m0 -6l-3 3",key:"svg-1"}],["path",{d:"M3 13v3a2 2 0 0 0 2 2h6l-3 -3m0 6l3 -3",key:"svg-2"}],["path",{d:"M15 18a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-3"}]],s0=wt("outline","transform","Transform",qHe),HHe=[["path",{d:"M4 21v-4a3 3 0 0 1 3 -3h5",key:"svg-0"}],["path",{d:"M9 17l3 -3l-3 -3",key:"svg-1"}],["path",{d:"M14 3v4a1 1 0 0 0 1 1h4",key:"svg-2"}],["path",{d:"M5 11v-6a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2h-9.5",key:"svg-3"}]],dm=wt("outline","file-symlink","FileSymlink",HHe),UHe=[["path",{d:"M13 3l0 7l6 0l-8 11l0 -7l-6 0l8 -11",key:"svg-0"}]],WHe=wt("outline","bolt","Bolt",UHe),GHe=qn({position:"absolute",zIndex:1,justifyContent:"center",alignItems:"center",_smallZoom:{display:"none"}}),YHe=qn({gap:"1.5",justifyContent:"center",alignItems:"center"});function C2({selected:e=!1,data:{hovered:r=!1},buttons:n}){const o=oa();return n.length?y.jsx(hr,{className:GHe,style:{top:"calc(100% - 30px)",transform:"translateX(-50%)",left:"50%",width:"auto",minHeight:30},children:y.jsx(Rr,{layoutRoot:!0,initial:!1,style:{originY:0},animate:{opacity:r||e?1:.75,scale:r?1.1:e?.9:.8,y:r||e?6:0},layoutDependency:`${r}-${e}`,"data-likec4-hovered":r,className:Ge("nodrag nopan",YHe),children:n.map((i,a)=>y.jsx(lr,{component:wa,className:a2({}),initial:!1,whileTap:{scale:1},whileHover:{scale:1.3},onClick:i.onClick,onDoubleClick:nn,children:i.icon||y.jsx(WHe,{})},`${o}-${i.key??a}`))})}):null}const XHe=e=>e.context.subject,KHe=e=>{const{enableNavigateTo:r,enableVscode:n}=sr(),o=Nt(),i=E2(),a=n0(),l=v2(XHe),{navigateTo:s,fqn:c}=e.data,d=S.useMemo(()=>{const u=[];return s&&r&&i!==s&&u.push({key:"navigate",icon:y.jsx(ba,{}),onClick:p=>{p.stopPropagation(),o.navigateTo(s)}}),c!==l&&u.push({key:"relationships",icon:y.jsx(s0,{}),onClick:p=>{p.stopPropagation(),a.navigateTo(c,e.id)}}),n&&u.push({key:"goToSource",icon:y.jsx(dm,{}),onClick:p=>{p.stopPropagation(),o.openSource({element:c})}}),u},[s,r,i,c,l,n,o,a,e.id]);return y.jsx(C2,{buttons:d,...e})};function c0({nodeProps:{data:{hovered:e=!1,dimmed:r=!1,...n}},className:o,children:i,style:a,...l}){let s=ta(n.style.opacity??100,{min:0,max:100});const c=s<99,d=65,u=d+ta((100-d)*(s/100),{min:0,max:100-d}),p=sVe({isTransparent:c,inverseColor:s<60,borderStyle:n.style.border??(c?"dashed":"none")}),f=ta(n.depth??1,{min:1,max:5});return y.jsx(Rr,{className:Ge(p,o),initial:!1,"data-likec4-hovered":e,"data-likec4-color":n.color,"data-compound-depth":f,...r!==!1&&{"data-likec4-dimmed":r},style:{...a,"--_border-transparency":`${u}%`,"--_compound-transparency":`${s}%`},...l,children:i})}function d0({data:e}){const r=bx({element:e,className:"likec4-compound-icon"});return y.jsxs("div",{className:"likec4-compound-title-container",children:[r,y.jsx(it,{component:"h3",className:"likec4-compound-title",truncate:"end",children:e.title})]})}const jJ=T1({base:{transitionDuration:"normal"},variants:{delay:{true:{transitionDelay:{base:"0.2s",_hover:"0s"}}}}}),ZHe=[["path",{d:"M3 4m0 3a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v10a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3z",key:"svg-0"}],["path",{d:"M9 10m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-1"}],["path",{d:"M15 8l2 0",key:"svg-2"}],["path",{d:"M15 12l2 0",key:"svg-3"}],["path",{d:"M7 16l10 0",key:"svg-4"}]],nR=wt("outline","id","Id",ZHe);function AJ({data:{hovered:e=!1},icon:r,onClick:n}){const o=g9(e,e?130:0)[0]&&e;return y.jsx(Rr,{initial:!1,animate:{scale:o?1.2:1},whileHover:{scale:1.4},whileTap:{scale:1},className:"likec4-compound-details details-button",children:y.jsx(lr,{className:Ge("nodrag nopan",jJ({delay:e&&!o}),a2({variant:"transparent"})),onClick:n,onDoubleClick:nn,children:r??y.jsx(nR,{stroke:1.8,style:{width:"75%"}})})})}const QHe=fe({position:"relative",width:"full",height:"full",padding:"0",margin:"0",display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none",_focusVisible:{outline:"none"},_whenSelectable:{pointerEvents:"all",_before:{content:'" "',position:"absolute",top:"[calc(100% - 4px)]",left:"0",width:"full",height:"24px",background:"transparent",pointerEvents:"all"}},_reduceGraphicsOnPan:{_before:{display:"none"}},":where(.react-flow__node.selectable:not(.dragging)) &":{cursor:"pointer"}}),um=S.forwardRef(({nodeProps:{selected:e=!1,selectable:r=!1,data:{hovered:n=!1,dimmed:o=!1,...i}},className:a,style:l,children:s,...c},d)=>{let u=1;switch(!0){case n:u=1.05;break;case e:u=1.02;break}const{size:p,padding:f,textSize:g}=$b(i.style??{});return y.jsx(Rr,{ref:d,className:Ge(QHe,"group","likec4-element-node",a),initial:!1,...r&&{animate:{scale:u},whileTap:{scale:.98}},"data-likec4-hovered":n,"data-likec4-color":i.color,"data-likec4-shape":i.shape,"data-likec4-shape-size":p,"data-likec4-spacing":f,"data-likec4-text-size":g,...o!==!1&&{"data-likec4-dimmed":o},style:{...l},...c,children:s})});um.displayName="ElementNodeContainer";function DJ(e,r,n=.065){const o=Math.round(e/2),i=o,a=Md(n*o),l=r-2*a;return{path:` M ${e},${a} +`).map(l=>l.trim()).filter(Boolean):[r],o=n.length>1,[i,a]=S.useState(!1);return y.jsxs(y.Fragment,{children:[o?y.jsx(pr,{onClick:()=>{a(!i)},className:fe({fontSize:"xs",color:"mantine.colors.dimmed",justifySelf:"end",textAlign:"right",userSelect:"none",display:"flex",alignItems:"center",justifyContent:"flex-end",gap:"xs",padding:"[4px 8px]",borderRadius:"sm",whiteSpace:"nowrap",transition:"all 150ms ease",_hover:{backgroundColor:"mantine.colors.gray[1]",color:"mantine.colors.primary[6]",_dark:{backgroundColor:"mantine.colors.dark[7]",color:"mantine.colors.primary[4]"}}}),children:y.jsxs(Js,{align:"center",gap:"xs",children:[y.jsxs(it,{component:"span",size:"xs",fw:700,children:[e,":"]}),y.jsx(it,{component:"span",className:fe({fontSize:"xs",fontWeight:500,color:"mantine.colors.gray[6]",backgroundColor:"mantine.colors.gray[1]",padding:"[1px 4px]",borderRadius:"xs",_dark:{color:"mantine.colors.dark[2]",backgroundColor:"mantine.colors.dark[6]"}}),children:n.length}),i?y.jsx(a$,{size:12}):y.jsx(Dd,{size:12})]})}):y.jsxs(it,{component:"div",className:fe({fontSize:"xs",color:"mantine.colors.dimmed",justifySelf:"end",textAlign:"right",userSelect:"none",whiteSpace:"nowrap",padding:"[4px 8px]",fontWeight:700}),children:[e,":"]}),y.jsx(Se,{className:fe({justifySelf:"stretch",alignSelf:"start"}),children:o?y.jsx(cqe,{values:n,isExpanded:i}):y.jsx(Se,{className:fe({minHeight:"32px",display:"flex",alignItems:"center"}),children:y.jsx(hQ,{value:n[0]||"",isExpanded:i})})})]})}const uqe=fe({"&[data-level='1']":{marginBottom:"sm"}}),pqe=fe({cursor:"default",marginTop:"0",marginBottom:"0"}),fQ=fe({transition:"fast",color:"mantine.colors.gray[7]",_dark:{color:"mantine.colors.dark[1]"},"& > *":{transition:"fast"},_hover:{transitionTimingFunction:"out","& > :not([data-no-transform])":{transitionTimingFunction:"out",transform:"translateX(1px)"}}}),hqe=Ge(fQ),fqe=Ge(fQ,fe({cursor:"pointer",width:"100%",justifyContent:"stretch",flexWrap:"nowrap",height:"36px",paddingInlineStart:"[16px]",paddingInlineEnd:"2.5",borderRadius:"sm",alignItems:"center",color:"mantine.colors.gray[7]",_dark:{color:"mantine.colors.gray.lightColor"},_hover:{background:"mantine.colors.gray.lightHover"},"& .tabler-icon":{transition:"fast",width:"90%",opacity:.65}})),gqe=[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 9h.01",key:"svg-1"}],["path",{d:"M11 12h1v4h1",key:"svg-2"}]],r0=wt("outline","info-circle","InfoCircle",gqe),mqe=[["path",{d:"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M12 12m-5 0a5 5 0 1 0 10 0a5 5 0 1 0 -10 0",key:"svg-1"}],["path",{d:"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-2"}]],yqe=wt("outline","target","Target",mqe),vqe=[["path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2",key:"svg-0"}],["path",{d:"M4 16v2a2 2 0 0 0 2 2h2",key:"svg-1"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v2",key:"svg-2"}],["path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2",key:"svg-3"}],["path",{d:"M8 11a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-4"}],["path",{d:"M16 16l-2.5 -2.5",key:"svg-5"}]],ba=wt("outline","zoom-scan","ZoomScan",vqe),bqe=({node:e})=>y.jsxs(en,{className:hqe,gap:6,align:"baseline",wrap:"nowrap",children:[y.jsxs(it,{component:"div",fz:11,c:"dimmed",children:[e.kind,":"]}),y.jsx(it,{component:"div",fz:"sm",fw:"500",children:e.title})]}),xqe=({instance:e})=>{const r=Mt(),n=r.currentView.id,o=[...e.views()];return y.jsxs(en,{className:fqe,gap:4,children:[y.jsx(Ti,{color:"gray",variant:"transparent",size:"xs",flex:0,children:y.jsx(yqe,{stroke:1.2})}),y.jsx(it,{component:"div",fz:"sm",fw:"500",flex:"1 1 100%",children:e.title}),y.jsxs(Se,{onClick:nn,pos:"relative","data-no-transform":!0,flex:0,children:[o.length===0&&y.jsx(Vn,{size:"compact-xs",variant:"transparent",color:"gray",disabled:!0,children:"no views"}),o.length>0&&y.jsxs(tn,{shadow:"md",withinPortal:!1,position:"bottom-start",offset:0,closeOnClickOutside:!0,clickOutsideEvents:["pointerdown","mousedown","click"],closeOnEscape:!0,trapFocus:!0,children:[y.jsx(tn.Target,{children:y.jsxs(Vn,{size:"compact-xs",variant:"subtle",color:"gray",children:[o.length," view",o.length>1?"s":""]})}),y.jsx(tn.Dropdown,{children:o.map(i=>y.jsx(tn.Item,{px:"xs",py:4,disabled:i.id===n,leftSection:y.jsx(Ti,{size:"sm",variant:"transparent",color:"gray",children:y.jsx(ba,{stroke:1.8,opacity:.65})}),styles:{itemSection:{marginInlineEnd:$e(8)}},onClick:a=>{a.stopPropagation(),r.navigateTo(i.id)},children:i.title},i.id))})]})]})]})},wqe=()=>{},kqe=S.memo(({elementFqn:e})=>{const r=Fo().element(e),n=[...r.deployments()],o=_y({multiple:!1});o.setHoveredNode=wqe;const i=S.useMemo(()=>{let a=[],l=new Map;for(const s of r.deployments()){let c={label:y.jsx(xqe,{instance:s}),value:s.id,type:"instance",children:[]};l.set(s.id,c);let d=s.parent;for(;d;){let u=l.get(d.id);if(u){u.children.push(c);break}u={label:y.jsx(bqe,{node:d}),value:d.id,type:"node",children:[c]},l.set(d.id,u),c=u,d=d.parent}!d&&!a.includes(c)&&a.push(c)}return a},[r]);return S.useEffect(()=>{o.expandAllNodes()},[i]),n.length===0?y.jsx(f3,{variant:"light",color:"gray",icon:y.jsx(r0,{}),children:"This element does not have any deployments"}):y.jsx(Ff,{levelOffset:"sm",allowRangeSelection:!1,classNames:{node:uqe,label:pqe},styles:{root:{position:"relative",width:"min-content",minWidth:300}},data:i,tree:o,renderNode:({node:a,selected:l,elementProps:s,hasChildren:c})=>y.jsx(Se,{...s,style:{...!c&&{marginBottom:$e(4)}},children:c?y.jsx(Vn,{fullWidth:!0,color:"gray",variant:l?"transparent":"subtle",size:"xs",justify:"flex-start",styles:{root:{position:"unset",paddingInlineStart:$e(16)}},children:a.label}):a.label})})}),_qe=()=>{},gQ=(e,r)=>{if(e===r)return!0;if(e.length!==r.length)return!1;for(const[n,o]of e.entries())if(!(o===r[n]||Ir(o,r[n])))return!1;return!0};function $p(e,r,n,o){const i=kL();Zke(i?_qe:e,r,gQ,o)}function Sqe(){const e=typeof window<"u"&&typeof window.devicePixelRatio=="number"?window.devicePixelRatio:1;return ta(Math.floor(e),{min:1,max:4})}let m2;function Pd(e){return m2??=Sqe(),m2<2?Math.round(e):Math.round(e*m2)/m2}function Eqe(e){switch(e){case"dots":return Qa.Dots;case"lines":return Qa.Lines;case"cross":return Qa.Cross;default:Qo(e)}}const Cqe=(e,r)=>typeof e.background=="string"&&typeof r.background=="string"?e.background===r.background:tt(e.background,r.background),mQ=S.memo(({background:e})=>typeof e=="string"?y.jsx(bq,{variant:Eqe(e),size:2,gap:20}):y.jsx(bq,{...e}),Cqe);mQ.displayName="Background";const yQ=(e,r)=>(e.data.dimmed??!1)===r?e:{...e,data:{...e.data,dimmed:r}};function $qe(e,r){return r!==void 0?yQ(e,r):n=>yQ(n,e)}const vQ=(e,r)=>(e.data.hovered??!1)===r?e:{...e,data:{...e.data,hovered:r}};function Rqe(e,r){return r!==void 0?vQ(e,r):n=>vQ(n,e)}function bQ(e,r){return Mq(e.data,r)?e:{...e,data:{...e.data,...r}}}function zqe(e,r){return r!==void 0?bQ(e,r):n=>bQ(n,e)}const tr={setDimmed:$qe,setHovered:Rqe,setData:zqe},lc={Compound:1,Edge:20,Element:20,Max:30},xa=.05,l$=3,y2={default:"16px",withControls:{top:"58px",left:"16px",right:"16px",bottom:"16px"}};function s$({nodes:e,edges:r,onEdgesChange:n,onNodesChange:o,className:i,pannable:a=!0,zoomable:l=!0,nodesSelectable:s=!0,nodesDraggable:c=!1,background:d="dots",children:u,colorMode:p,fitViewPadding:f=0,fitView:m=!0,zoomOnDoubleClick:v=!1,onViewportResize:w,onMoveEnd:x,onNodeMouseEnter:k,onNodeMouseLeave:C,onEdgeMouseEnter:_,onEdgeMouseLeave:$,...R}){const T=S.useMemo(()=>({minZoom:xa,maxZoom:1,padding:f,includeHiddenNodes:!1}),[f]),A=d!=="transparent"&&d!=="solid",z=TVe(),j=JC(),{colorScheme:I}=gTe();return p||(p=I==="auto"?"system":I),y.jsxs(zEe,{colorMode:p,nodes:e,edges:r,className:Ge(d==="transparent"&&"bg-transparent",i),...z&&{"data-likec4-zoom-small":!0},zoomOnPinch:l,zoomOnScroll:!a&&l,...!l&&{zoomActivationKeyCode:null},zoomOnDoubleClick:v,maxZoom:l?l$:1,minZoom:l?xa:1,fitView:m,fitViewOptions:T,preventScrolling:l||a,defaultMarkerColor:"var(--xy-edge-stroke)",noDragClassName:"nodrag",noPanClassName:"nopan",noWheelClassName:"nowheel",panOnScroll:a,panOnDrag:a,...!a&&{panActivationKeyCode:null,selectionKeyCode:null},elementsSelectable:s,nodesFocusable:c||s,edgesFocusable:!1,nodesDraggable:c,nodeDragThreshold:4,nodeClickDistance:3,paneClickDistance:3,elevateNodesOnSelect:!1,selectNodesOnDrag:!1,onNodesChange:o,onEdgesChange:n,onMoveEnd:at((N,{x:L,y:H,zoom:P})=>{const V=Pd(L),B=Pd(H);(L!==V||H!==B)&&j.setState({transform:[V,B,P]}),x?.(N,{x:V,y:B,zoom:P})}),onNodeMouseEnter:at((N,L)=>{if(k){k(N,L);return}o([{id:L.id,type:"replace",item:tr.setHovered(L,!0)}])}),onNodeMouseLeave:at((N,L)=>{if(C){C(N,L);return}o([{id:L.id,type:"replace",item:tr.setHovered(L,!1)}])}),onEdgeMouseEnter:at((N,L)=>{if(_){_(N,L);return}n([{id:L.id,type:"replace",item:tr.setHovered(L,!0)}])}),onEdgeMouseLeave:at((N,L)=>{if($){$(N,L);return}n([{id:L.id,type:"replace",item:tr.setHovered(L,!1)}])}),onNodeDoubleClick:nn,onEdgeDoubleClick:nn,...R,children:[A&&y.jsx(mQ,{background:d}),w&&y.jsx(jqe,{onViewportResize:w}),u]})}const Tqe=({width:e,height:r})=>(e||1)*(r||1),jqe=({onViewportResize:e})=>{const r=Dt(Tqe);return $p(e,[r]),null},xQ=S.createContext(null);function wQ(){return gt(S.useContext(xQ),"No RelationshipsBrowserActorContext")}function v2(e,r=Ir){const n=wQ();return pn(n,e,r)}function n0(){const e=wQ();return S.useMemo(()=>({actor:e,get rootElementId(){return`relationships-browser-${e.sessionId.replaceAll(":","_")}`},getState:()=>e.getSnapshot().context,send:e.send,updateView:r=>{e.getSnapshot().status==="active"&&e.send({type:"update.view",layouted:r})},changeScope:r=>{e.send({type:"change.scope",scope:r})},navigateTo:(r,n)=>{e.send({type:"navigate.to",subject:r,fromNode:n})},fitDiagram:()=>{e.send({type:"fitDiagram"})},close:()=>{e._parent?e._parent?.send({type:"close",actorId:e.id}):e.send({type:"close"})}}),[e])}var c$,kQ;function d$(){if(kQ)return c$;kQ=1;var e="\0",r="\0",n="";class o{_isDirected=!0;_isMultigraph=!1;_isCompound=!1;_label;_defaultNodeLabelFn=()=>{};_defaultEdgeLabelFn=()=>{};_nodes={};_in={};_preds={};_out={};_sucs={};_edgeObjs={};_edgeLabels={};_nodeCount=0;_edgeCount=0;_parent;_children;constructor(u){u&&(this._isDirected=Object.hasOwn(u,"directed")?u.directed:!0,this._isMultigraph=Object.hasOwn(u,"multigraph")?u.multigraph:!1,this._isCompound=Object.hasOwn(u,"compound")?u.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[r]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(u){return this._label=u,this}graph(){return this._label}setDefaultNodeLabel(u){return this._defaultNodeLabelFn=u,typeof u!="function"&&(this._defaultNodeLabelFn=()=>u),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var u=this;return this.nodes().filter(p=>Object.keys(u._in[p]).length===0)}sinks(){var u=this;return this.nodes().filter(p=>Object.keys(u._out[p]).length===0)}setNodes(u,p){var f=arguments,m=this;return u.forEach(function(v){f.length>1?m.setNode(v,p):m.setNode(v)}),this}setNode(u,p){return Object.hasOwn(this._nodes,u)?(arguments.length>1&&(this._nodes[u]=p),this):(this._nodes[u]=arguments.length>1?p:this._defaultNodeLabelFn(u),this._isCompound&&(this._parent[u]=r,this._children[u]={},this._children[r][u]=!0),this._in[u]={},this._preds[u]={},this._out[u]={},this._sucs[u]={},++this._nodeCount,this)}node(u){return this._nodes[u]}hasNode(u){return Object.hasOwn(this._nodes,u)}removeNode(u){var p=this;if(Object.hasOwn(this._nodes,u)){var f=m=>p.removeEdge(p._edgeObjs[m]);delete this._nodes[u],this._isCompound&&(this._removeFromParentsChildList(u),delete this._parent[u],this.children(u).forEach(function(m){p.setParent(m)}),delete this._children[u]),Object.keys(this._in[u]).forEach(f),delete this._in[u],delete this._preds[u],Object.keys(this._out[u]).forEach(f),delete this._out[u],delete this._sucs[u],--this._nodeCount}return this}setParent(u,p){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(p===void 0)p=r;else{p+="";for(var f=p;f!==void 0;f=this.parent(f))if(f===u)throw new Error("Setting "+p+" as parent of "+u+" would create a cycle");this.setNode(p)}return this.setNode(u),this._removeFromParentsChildList(u),this._parent[u]=p,this._children[p][u]=!0,this}_removeFromParentsChildList(u){delete this._children[this._parent[u]][u]}parent(u){if(this._isCompound){var p=this._parent[u];if(p!==r)return p}}children(u=r){if(this._isCompound){var p=this._children[u];if(p)return Object.keys(p)}else{if(u===r)return this.nodes();if(this.hasNode(u))return[]}}predecessors(u){var p=this._preds[u];if(p)return Object.keys(p)}successors(u){var p=this._sucs[u];if(p)return Object.keys(p)}neighbors(u){var p=this.predecessors(u);if(p){const m=new Set(p);for(var f of this.successors(u))m.add(f);return Array.from(m.values())}}isLeaf(u){var p;return this.isDirected()?p=this.successors(u):p=this.neighbors(u),p.length===0}filterNodes(u){var p=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});p.setGraph(this.graph());var f=this;Object.entries(this._nodes).forEach(function([w,x]){u(w)&&p.setNode(w,x)}),Object.values(this._edgeObjs).forEach(function(w){p.hasNode(w.v)&&p.hasNode(w.w)&&p.setEdge(w,f.edge(w))});var m={};function v(w){var x=f.parent(w);return x===void 0||p.hasNode(x)?(m[w]=x,x):x in m?m[x]:v(x)}return this._isCompound&&p.nodes().forEach(w=>p.setParent(w,v(w))),p}setDefaultEdgeLabel(u){return this._defaultEdgeLabelFn=u,typeof u!="function"&&(this._defaultEdgeLabelFn=()=>u),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(u,p){var f=this,m=arguments;return u.reduce(function(v,w){return m.length>1?f.setEdge(v,w,p):f.setEdge(v,w),w}),this}setEdge(){var u,p,f,m,v=!1,w=arguments[0];typeof w=="object"&&w!==null&&"v"in w?(u=w.v,p=w.w,f=w.name,arguments.length===2&&(m=arguments[1],v=!0)):(u=w,p=arguments[1],f=arguments[3],arguments.length>2&&(m=arguments[2],v=!0)),u=""+u,p=""+p,f!==void 0&&(f=""+f);var x=l(this._isDirected,u,p,f);if(Object.hasOwn(this._edgeLabels,x))return v&&(this._edgeLabels[x]=m),this;if(f!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(u),this.setNode(p),this._edgeLabels[x]=v?m:this._defaultEdgeLabelFn(u,p,f);var k=s(this._isDirected,u,p,f);return u=k.v,p=k.w,Object.freeze(k),this._edgeObjs[x]=k,i(this._preds[p],u),i(this._sucs[u],p),this._in[p][x]=k,this._out[u][x]=k,this._edgeCount++,this}edge(u,p,f){var m=arguments.length===1?c(this._isDirected,arguments[0]):l(this._isDirected,u,p,f);return this._edgeLabels[m]}edgeAsObj(){const u=this.edge(...arguments);return typeof u!="object"?{label:u}:u}hasEdge(u,p,f){var m=arguments.length===1?c(this._isDirected,arguments[0]):l(this._isDirected,u,p,f);return Object.hasOwn(this._edgeLabels,m)}removeEdge(u,p,f){var m=arguments.length===1?c(this._isDirected,arguments[0]):l(this._isDirected,u,p,f),v=this._edgeObjs[m];return v&&(u=v.v,p=v.w,delete this._edgeLabels[m],delete this._edgeObjs[m],a(this._preds[p],u),a(this._sucs[u],p),delete this._in[p][m],delete this._out[u][m],this._edgeCount--),this}inEdges(u,p){var f=this._in[u];if(f){var m=Object.values(f);return p?m.filter(v=>v.v===p):m}}outEdges(u,p){var f=this._out[u];if(f){var m=Object.values(f);return p?m.filter(v=>v.w===p):m}}nodeEdges(u,p){var f=this.inEdges(u,p);if(f)return f.concat(this.outEdges(u,p))}}function i(d,u){d[u]?d[u]++:d[u]=1}function a(d,u){--d[u]||delete d[u]}function l(d,u,p,f){var m=""+u,v=""+p;if(!d&&m>v){var w=m;m=v,v=w}return m+n+v+n+(f===void 0?e:f)}function s(d,u,p,f){var m=""+u,v=""+p;if(!d&&m>v){var w=m;m=v,v=w}var x={v:m,w:v};return f&&(x.name=f),x}function c(d,u){return l(d,u.v,u.w,u.name)}return c$=o,c$}var _Q,SQ;function Aqe(){return SQ||(SQ=1,_Q="2.2.4"),_Q}var EQ,CQ;function Dqe(){return CQ||(CQ=1,EQ={Graph:d$(),version:Aqe()}),EQ}var u$,$Q;function Pqe(){if($Q)return u$;$Q=1;var e=d$();u$={write:r,read:i};function r(a){var l={options:{directed:a.isDirected(),multigraph:a.isMultigraph(),compound:a.isCompound()},nodes:n(a),edges:o(a)};return a.graph()!==void 0&&(l.value=structuredClone(a.graph())),l}function n(a){return a.nodes().map(function(l){var s=a.node(l),c=a.parent(l),d={v:l};return s!==void 0&&(d.value=s),c!==void 0&&(d.parent=c),d})}function o(a){return a.edges().map(function(l){var s=a.edge(l),c={v:l.v,w:l.w};return l.name!==void 0&&(c.name=l.name),s!==void 0&&(c.value=s),c})}function i(a){var l=new e(a.options).setGraph(a.value);return a.nodes.forEach(function(s){l.setNode(s.v,s.value),s.parent&&l.setParent(s.v,s.parent)}),a.edges.forEach(function(s){l.setEdge({v:s.v,w:s.w,name:s.name},s.value)}),l}return u$}var p$,RQ;function Mqe(){if(RQ)return p$;RQ=1,p$=e;function e(r){var n={},o=[],i;function a(l){Object.hasOwn(n,l)||(n[l]=!0,i.push(l),r.successors(l).forEach(a),r.predecessors(l).forEach(a))}return r.nodes().forEach(function(l){i=[],a(l),i.length&&o.push(i)}),o}return p$}var h$,zQ;function TQ(){if(zQ)return h$;zQ=1;class e{_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 o=this._keyIndices[n];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,o){var i=this._keyIndices;if(n=String(n),!Object.hasOwn(i,n)){var a=this._arr,l=a.length;return i[n]=l,a.push({key:n,priority:o}),this._decrease(l),!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,o){var i=this._keyIndices[n];if(o>this._arr[i].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[i].priority+" New: "+o);this._arr[i].priority=o,this._decrease(i)}_heapify(n){var o=this._arr,i=2*n,a=i+1,l=n;i>1,!(o[a].priority1;function n(i,a,l,s){return o(i,String(a),l||r,s||function(c){return i.outEdges(c)})}function o(i,a,l,s){var c={},d=new e,u,p,f=function(m){var v=m.v!==u?m.v:m.w,w=c[v],x=l(m),k=p.distance+x;if(x<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+m+" Weight: "+x);k0&&(u=d.removeMin(),p=c[u],p.distance!==Number.POSITIVE_INFINITY);)s(u).forEach(f);return c}return f$}var g$,DQ;function Nqe(){if(DQ)return g$;DQ=1;var e=AQ();g$=r;function r(n,o,i){return n.nodes().reduce(function(a,l){return a[l]=e(n,l,o,i),a},{})}return g$}var m$,PQ;function MQ(){if(PQ)return m$;PQ=1,m$=e;function e(r){var n=0,o=[],i={},a=[];function l(s){var c=i[s]={onStack:!0,lowlink:n,index:n++};if(o.push(s),r.successors(s).forEach(function(p){Object.hasOwn(i,p)?i[p].onStack&&(c.lowlink=Math.min(c.lowlink,i[p].index)):(l(p),c.lowlink=Math.min(c.lowlink,i[p].lowlink))}),c.lowlink===c.index){var d=[],u;do u=o.pop(),i[u].onStack=!1,d.push(u);while(s!==u);a.push(d)}}return r.nodes().forEach(function(s){Object.hasOwn(i,s)||l(s)}),a}return m$}var y$,NQ;function Bqe(){if(NQ)return y$;NQ=1;var e=MQ();y$=r;function r(n){return e(n).filter(function(o){return o.length>1||o.length===1&&n.hasEdge(o[0],o[0])})}return y$}var v$,BQ;function Iqe(){if(BQ)return v$;BQ=1,v$=r;var e=()=>1;function r(o,i,a){return n(o,i||e,a||function(l){return o.outEdges(l)})}function n(o,i,a){var l={},s=o.nodes();return s.forEach(function(c){l[c]={},l[c][c]={distance:0},s.forEach(function(d){c!==d&&(l[c][d]={distance:Number.POSITIVE_INFINITY})}),a(c).forEach(function(d){var u=d.v===c?d.w:d.v,p=i(d);l[c][u]={distance:p,predecessor:c}})}),s.forEach(function(c){var d=l[c];s.forEach(function(u){var p=l[u];s.forEach(function(f){var m=p[c],v=d[f],w=p[f],x=m.distance+v.distance;xi.successors(p):p=>i.neighbors(p),c=l==="post"?r:n,d=[],u={};return a.forEach(p=>{if(!i.hasNode(p))throw new Error("Graph does not have node: "+p);c(p,s,u,d)}),d}function r(i,a,l,s){for(var c=[[i,!1]];c.length>0;){var d=c.pop();d[1]?s.push(d[0]):Object.hasOwn(l,d[0])||(l[d[0]]=!0,c.push([d[0],!0]),o(a(d[0]),u=>c.push([u,!1])))}}function n(i,a,l,s){for(var c=[i];c.length>0;){var d=c.pop();Object.hasOwn(l,d)||(l[d]=!0,s.push(d),o(a(d),u=>c.push(u)))}}function o(i,a){for(var l=i.length;l--;)a(i[l],l,i);return i}return w$}var k$,qQ;function Lqe(){if(qQ)return k$;qQ=1;var e=VQ();k$=r;function r(n,o){return e(n,o,"post")}return k$}var _$,HQ;function Fqe(){if(HQ)return _$;HQ=1;var e=VQ();_$=r;function r(n,o){return e(n,o,"pre")}return _$}var S$,UQ;function Vqe(){if(UQ)return S$;UQ=1;var e=d$(),r=TQ();S$=n;function n(o,i){var a=new e,l={},s=new r,c;function d(p){var f=p.v===c?p.w:p.v,m=s.priority(f);if(m!==void 0){var v=i(p);v0;){if(c=s.removeMin(),Object.hasOwn(l,c))a.setEdge(c,l[c]);else{if(u)throw new Error("Input graph is not connected: "+o);u=!0}o.nodeEdges(c).forEach(d)}return a}return S$}var WQ,GQ;function qqe(){return GQ||(GQ=1,WQ={components:Mqe(),dijkstra:AQ(),dijkstraAll:Nqe(),findCycles:Bqe(),floydWarshall:Iqe(),isAcyclic:Oqe(),postorder:Lqe(),preorder:Fqe(),prim:Vqe(),tarjan:MQ(),topsort:OQ()}),WQ}var E$,YQ;function cl(){if(YQ)return E$;YQ=1;var e=Dqe();return E$={Graph:e.Graph,json:Pqe(),alg:qqe(),version:e.version},E$}var C$,XQ;function Hqe(){if(XQ)return C$;XQ=1;class e{constructor(){let i={};i._next=i._prev=i,this._sentinel=i}dequeue(){let i=this._sentinel,a=i._prev;if(a!==i)return r(a),a}enqueue(i){let a=this._sentinel;i._prev&&i._next&&r(i),i._next=a._next,a._next._prev=i,a._next=i,i._prev=a}toString(){let i=[],a=this._sentinel,l=a._prev;for(;l!==a;)i.push(JSON.stringify(l,n)),l=l._prev;return"["+i.join(", ")+"]"}}function r(o){o._prev._next=o._next,o._next._prev=o._prev,delete o._next,delete o._prev}function n(o,i){if(o!=="_next"&&o!=="_prev")return i}return C$=e,C$}var $$,KQ;function Uqe(){if(KQ)return $$;KQ=1;let e=cl().Graph,r=Hqe();$$=o;let n=()=>1;function o(d,u){if(d.nodeCount()<=1)return[];let p=l(d,u||n);return i(p.graph,p.buckets,p.zeroIdx).flatMap(f=>d.outEdges(f.v,f.w))}function i(d,u,p){let f=[],m=u[u.length-1],v=u[0],w;for(;d.nodeCount();){for(;w=v.dequeue();)a(d,u,p,w);for(;w=m.dequeue();)a(d,u,p,w);if(d.nodeCount()){for(let x=u.length-2;x>0;--x)if(w=u[x].dequeue(),w){f=f.concat(a(d,u,p,w,!0));break}}}return f}function a(d,u,p,f,m){let v=m?[]:void 0;return d.inEdges(f.v).forEach(w=>{let x=d.edge(w),k=d.node(w.v);m&&v.push({v:w.v,w:w.w}),k.out-=x,s(u,p,k)}),d.outEdges(f.v).forEach(w=>{let x=d.edge(w),k=w.w,C=d.node(k);C.in-=x,s(u,p,C)}),d.removeNode(f.v),v}function l(d,u){let p=new e,f=0,m=0;d.nodes().forEach(x=>{p.setNode(x,{v:x,in:0,out:0})}),d.edges().forEach(x=>{let k=p.edge(x.v,x.w)||0,C=u(x),_=k+C;p.setEdge(x.v,x.w,_),m=Math.max(m,p.node(x.v).out+=C),f=Math.max(f,p.node(x.w).in+=C)});let v=c(m+f+3).map(()=>new r),w=f+1;return p.nodes().forEach(x=>{s(v,w,p.node(x))}),{graph:p,buckets:v,zeroIdx:w}}function s(d,u,p){p.out?p.in?d[p.out-p.in+u].enqueue(p):d[d.length-1].enqueue(p):d[0].enqueue(p)}function c(d){const u=[];for(let p=0;pj.setNode(I,z.node(I))),z.edges().forEach(I=>{let N=j.edge(I.v,I.w)||{weight:0,minlen:1},L=z.edge(I);j.setEdge(I.v,I.w,{weight:N.weight+L.weight,minlen:Math.max(N.minlen,L.minlen)})}),j}function o(z){let j=new e({multigraph:z.isMultigraph()}).setGraph(z.graph());return z.nodes().forEach(I=>{z.children(I).length||j.setNode(I,z.node(I))}),z.edges().forEach(I=>{j.setEdge(I,z.edge(I))}),j}function i(z){let j=z.nodes().map(I=>{let N={};return z.outEdges(I).forEach(L=>{N[L.w]=(N[L.w]||0)+z.edge(L).weight}),N});return A(z.nodes(),j)}function a(z){let j=z.nodes().map(I=>{let N={};return z.inEdges(I).forEach(L=>{N[L.v]=(N[L.v]||0)+z.edge(L).weight}),N});return A(z.nodes(),j)}function l(z,j){let I=z.x,N=z.y,L=j.x-I,H=j.y-N,P=z.width/2,V=z.height/2;if(!L&&!H)throw new Error("Not possible to find intersection inside of the rectangle");let B,F;return Math.abs(H)*P>Math.abs(L)*V?(H<0&&(V=-V),B=V*L/H,F=V):(L<0&&(P=-P),B=P,F=P*H/L),{x:I+B,y:N+F}}function s(z){let j=$(v(z)+1).map(()=>[]);return z.nodes().forEach(I=>{let N=z.node(I),L=N.rank;L!==void 0&&(j[L][N.order]=I)}),j}function c(z){let j=z.nodes().map(N=>{let L=z.node(N).rank;return L===void 0?Number.MAX_VALUE:L}),I=m(Math.min,j);z.nodes().forEach(N=>{let L=z.node(N);Object.hasOwn(L,"rank")&&(L.rank-=I)})}function d(z){let j=z.nodes().map(P=>z.node(P).rank),I=m(Math.min,j),N=[];z.nodes().forEach(P=>{let V=z.node(P).rank-I;N[V]||(N[V]=[]),N[V].push(P)});let L=0,H=z.graph().nodeRankFactor;Array.from(N).forEach((P,V)=>{P===void 0&&V%H!==0?--L:P!==void 0&&L&&P.forEach(B=>z.node(B).rank+=L)})}function u(z,j,I,N){let L={width:0,height:0};return arguments.length>=4&&(L.rank=I,L.order=N),r(z,"border",L,j)}function p(z,j=f){const I=[];for(let N=0;Nf){const I=p(j);return z.apply(null,I.map(N=>z.apply(null,N)))}else return z.apply(null,j)}function v(z){const j=z.nodes().map(I=>{let N=z.node(I).rank;return N===void 0?Number.MIN_VALUE:N});return m(Math.max,j)}function w(z,j){let I={lhs:[],rhs:[]};return z.forEach(N=>{j(N)?I.lhs.push(N):I.rhs.push(N)}),I}function x(z,j){let I=Date.now();try{return j()}finally{console.log(z+" time: "+(Date.now()-I)+"ms")}}function k(z,j){return j()}let C=0;function _(z){var j=++C;return z+(""+j)}function $(z,j,I=1){j==null&&(j=z,z=0);let N=H=>HjN[j]),Object.entries(z).reduce((N,[L,H])=>(N[L]=I(H,L),N),{})}function A(z,j){return z.reduce((I,N,L)=>(I[N]=j[L],I),{})}return R$}var z$,QQ;function Wqe(){if(QQ)return z$;QQ=1;let e=Uqe(),r=$n().uniqueId;z$={run:n,undo:i};function n(a){(a.graph().acyclicer==="greedy"?e(a,l(a)):o(a)).forEach(s=>{let c=a.edge(s);a.removeEdge(s),c.forwardName=s.name,c.reversed=!0,a.setEdge(s.w,s.v,c,r("rev"))});function l(s){return c=>s.edge(c).weight}}function o(a){let l=[],s={},c={};function d(u){Object.hasOwn(c,u)||(c[u]=!0,s[u]=!0,a.outEdges(u).forEach(p=>{Object.hasOwn(s,p.w)?l.push(p):d(p.w)}),delete s[u])}return a.nodes().forEach(d),l}function i(a){a.edges().forEach(l=>{let s=a.edge(l);if(s.reversed){a.removeEdge(l);let c=s.forwardName;delete s.reversed,delete s.forwardName,a.setEdge(l.w,l.v,s,c)}})}return z$}var T$,JQ;function Gqe(){if(JQ)return T$;JQ=1;let e=$n();T$={run:r,undo:o};function r(i){i.graph().dummyChains=[],i.edges().forEach(a=>n(i,a))}function n(i,a){let l=a.v,s=i.node(l).rank,c=a.w,d=i.node(c).rank,u=a.name,p=i.edge(a),f=p.labelRank;if(d===s+1)return;i.removeEdge(a);let m,v,w;for(w=0,++s;s{let l=i.node(a),s=l.edgeLabel,c;for(i.setEdge(l.edgeObj,s);l.dummy;)c=i.successors(a)[0],i.removeNode(a),s.points.push({x:l.x,y:l.y}),l.dummy==="edge-label"&&(s.x=l.x,s.y=l.y,s.width=l.width,s.height=l.height),a=c,l=i.node(a)})}return T$}var j$,eJ;function b2(){if(eJ)return j$;eJ=1;const{applyWithChunking:e}=$n();j$={longestPath:r,slack:n};function r(o){var i={};function a(l){var s=o.node(l);if(Object.hasOwn(i,l))return s.rank;i[l]=!0;let c=o.outEdges(l).map(u=>u==null?Number.POSITIVE_INFINITY:a(u.w)-o.edge(u).minlen);var d=e(Math.min,c);return d===Number.POSITIVE_INFINITY&&(d=0),s.rank=d}o.sources().forEach(a)}function n(o,i){return o.node(i.w).rank-o.node(i.v).rank-o.edge(i).minlen}return j$}var A$,tJ;function rJ(){if(tJ)return A$;tJ=1;var e=cl().Graph,r=b2().slack;A$=n;function n(l){var s=new e({directed:!1}),c=l.nodes()[0],d=l.nodeCount();s.setNode(c,{});for(var u,p;o(s,l){var p=u.v,f=d===p?u.w:p;!l.hasNode(f)&&!r(s,u)&&(l.setNode(f,{}),l.setEdge(d,f,{}),c(f))})}return l.nodes().forEach(c),l.nodeCount()}function i(l,s){return s.edges().reduce((c,d)=>{let u=Number.POSITIVE_INFINITY;return l.hasNode(d.v)!==l.hasNode(d.w)&&(u=r(s,d)),us.node(d).rank+=c)}return A$}var D$,nJ;function Yqe(){if(nJ)return D$;nJ=1;var e=rJ(),r=b2().slack,n=b2().longestPath,o=cl().alg.preorder,i=cl().alg.postorder,a=$n().simplify;D$=l,l.initLowLimValues=u,l.initCutValues=s,l.calcCutValue=d,l.leaveEdge=f,l.enterEdge=m,l.exchangeEdges=v;function l(C){C=a(C),n(C);var _=e(C);u(_),s(_,C);for(var $,R;$=f(_);)R=m(_,C,$),v(_,C,$,R)}function s(C,_){var $=i(C,C.nodes());$=$.slice(0,$.length-1),$.forEach(R=>c(C,_,R))}function c(C,_,$){var R=C.node($),T=R.parent;C.edge($,T).cutvalue=d(C,_,$)}function d(C,_,$){var R=C.node($),T=R.parent,A=!0,z=_.edge($,T),j=0;return z||(A=!1,z=_.edge(T,$)),j=z.weight,_.nodeEdges($).forEach(I=>{var N=I.v===$,L=N?I.w:I.v;if(L!==T){var H=N===A,P=_.edge(I).weight;if(j+=H?P:-P,x(C,$,L)){var V=C.edge($,L).cutvalue;j+=H?-V:V}}}),j}function u(C,_){arguments.length<2&&(_=C.nodes()[0]),p(C,{},1,_)}function p(C,_,$,R,T){var A=$,z=C.node(R);return _[R]=!0,C.neighbors(R).forEach(j=>{Object.hasOwn(_,j)||($=p(C,_,$,j,R))}),z.low=A,z.lim=$++,T?z.parent=T:delete z.parent,$}function f(C){return C.edges().find(_=>C.edge(_).cutvalue<0)}function m(C,_,$){var R=$.v,T=$.w;_.hasEdge(R,T)||(R=$.w,T=$.v);var A=C.node(R),z=C.node(T),j=A,I=!1;A.lim>z.lim&&(j=z,I=!0);var N=_.edges().filter(L=>I===k(C,C.node(L.v),j)&&I!==k(C,C.node(L.w),j));return N.reduce((L,H)=>r(_,H)!_.node(T).parent),R=o(C,$);R=R.slice(1),R.forEach(T=>{var A=C.node(T).parent,z=_.edge(T,A),j=!1;z||(z=_.edge(A,T),j=!0),_.node(T).rank=_.node(A).rank+(j?z.minlen:-z.minlen)})}function x(C,_,$){return C.hasEdge(_,$)}function k(C,_,$){return $.low<=_.lim&&_.lim<=$.lim}return D$}var P$,oJ;function Xqe(){if(oJ)return P$;oJ=1;var e=b2(),r=e.longestPath,n=rJ(),o=Yqe();P$=i;function i(c){var d=c.graph().ranker;if(d instanceof Function)return d(c);switch(c.graph().ranker){case"network-simplex":s(c);break;case"tight-tree":l(c);break;case"longest-path":a(c);break;case"none":break;default:s(c)}}var a=r;function l(c){r(c),n(c)}function s(c){o(c)}return P$}var M$,iJ;function Kqe(){if(iJ)return M$;iJ=1,M$=e;function e(o){let i=n(o);o.graph().dummyChains.forEach(a=>{let l=o.node(a),s=l.edgeObj,c=r(o,i,s.v,s.w),d=c.path,u=c.lca,p=0,f=d[p],m=!0;for(;a!==s.w;){if(l=o.node(a),m){for(;(f=d[p])!==u&&o.node(f).maxRankd||u>i[p].lim));for(f=p,p=l;(p=o.parent(p))!==f;)c.push(p);return{path:s.concat(c.reverse()),lca:f}}function n(o){let i={},a=0;function l(s){let c=a;o.children(s).forEach(l),i[s]={low:c,lim:a++}}return o.children().forEach(l),i}return M$}var N$,aJ;function Zqe(){if(aJ)return N$;aJ=1;let e=$n();N$={run:r,cleanup:a};function r(l){let s=e.addDummyNode(l,"root",{},"_root"),c=o(l),d=Object.values(c),u=e.applyWithChunking(Math.max,d)-1,p=2*u+1;l.graph().nestingRoot=s,l.edges().forEach(m=>l.edge(m).minlen*=p);let f=i(l)+1;l.children().forEach(m=>n(l,s,p,f,u,c,m)),l.graph().nodeRankFactor=p}function n(l,s,c,d,u,p,f){let m=l.children(f);if(!m.length){f!==s&&l.setEdge(s,f,{weight:0,minlen:c});return}let v=e.addBorderNode(l,"_bt"),w=e.addBorderNode(l,"_bb"),x=l.node(f);l.setParent(v,f),x.borderTop=v,l.setParent(w,f),x.borderBottom=w,m.forEach(k=>{n(l,s,c,d,u,p,k);let C=l.node(k),_=C.borderTop?C.borderTop:k,$=C.borderBottom?C.borderBottom:k,R=C.borderTop?d:2*d,T=_!==$?1:u-p[f]+1;l.setEdge(v,_,{weight:R,minlen:T,nestingEdge:!0}),l.setEdge($,w,{weight:R,minlen:T,nestingEdge:!0})}),l.parent(f)||l.setEdge(s,v,{weight:0,minlen:u+p[f]})}function o(l){var s={};function c(d,u){var p=l.children(d);p&&p.length&&p.forEach(f=>c(f,u+1)),s[d]=u}return l.children().forEach(d=>c(d,1)),s}function i(l){return l.edges().reduce((s,c)=>s+l.edge(c).weight,0)}function a(l){var s=l.graph();l.removeNode(s.nestingRoot),delete s.nestingRoot,l.edges().forEach(c=>{var d=l.edge(c);d.nestingEdge&&l.removeEdge(c)})}return N$}var B$,lJ;function Qqe(){if(lJ)return B$;lJ=1;let e=$n();B$=r;function r(o){function i(a){let l=o.children(a),s=o.node(a);if(l.length&&l.forEach(i),Object.hasOwn(s,"minRank")){s.borderLeft=[],s.borderRight=[];for(let c=s.minRank,d=s.maxRank+1;co(c.node(d))),c.edges().forEach(d=>o(c.edge(d)))}function o(c){let d=c.width;c.width=c.height,c.height=d}function i(c){c.nodes().forEach(d=>a(c.node(d))),c.edges().forEach(d=>{let u=c.edge(d);u.points.forEach(a),Object.hasOwn(u,"y")&&a(u)})}function a(c){c.y=-c.y}function l(c){c.nodes().forEach(d=>s(c.node(d))),c.edges().forEach(d=>{let u=c.edge(d);u.points.forEach(s),Object.hasOwn(u,"x")&&s(u)})}function s(c){let d=c.x;c.x=c.y,c.y=d}return I$}var O$,cJ;function eHe(){if(cJ)return O$;cJ=1;let e=$n();O$=r;function r(n){let o={},i=n.nodes().filter(d=>!n.children(d).length),a=i.map(d=>n.node(d).rank),l=e.applyWithChunking(Math.max,a),s=e.range(l+1).map(()=>[]);function c(d){if(o[d])return;o[d]=!0;let u=n.node(d);s[u.rank].push(d),n.successors(d).forEach(c)}return i.sort((d,u)=>n.node(d).rank-n.node(u).rank).forEach(c),s}return O$}var L$,dJ;function tHe(){if(dJ)return L$;dJ=1;let e=$n().zipObject;L$=r;function r(o,i){let a=0;for(let l=1;lm)),s=i.flatMap(f=>o.outEdges(f).map(m=>({pos:l[m.w],weight:o.edge(m).weight})).sort((m,v)=>m.pos-v.pos)),c=1;for(;c{let m=f.pos+c;u[m]+=f.weight;let v=0;for(;m>0;)m%2&&(v+=u[m+1]),m=m-1>>1,u[m]+=f.weight;p+=f.weight*v}),p}return L$}var F$,uJ;function rHe(){if(uJ)return F$;uJ=1,F$=e;function e(r,n=[]){return n.map(o=>{let i=r.inEdges(o);if(i.length){let a=i.reduce((l,s)=>{let c=r.edge(s),d=r.node(s.v);return{sum:l.sum+c.weight*d.order,weight:l.weight+c.weight}},{sum:0,weight:0});return{v:o,barycenter:a.sum/a.weight,weight:a.weight}}else return{v:o}})}return F$}var V$,pJ;function nHe(){if(pJ)return V$;pJ=1;let e=$n();V$=r;function r(i,a){let l={};i.forEach((c,d)=>{let u=l[c.v]={indegree:0,in:[],out:[],vs:[c.v],i:d};c.barycenter!==void 0&&(u.barycenter=c.barycenter,u.weight=c.weight)}),a.edges().forEach(c=>{let d=l[c.v],u=l[c.w];d!==void 0&&u!==void 0&&(u.indegree++,d.out.push(l[c.w]))});let s=Object.values(l).filter(c=>!c.indegree);return n(s)}function n(i){let a=[];function l(c){return d=>{d.merged||(d.barycenter===void 0||c.barycenter===void 0||d.barycenter>=c.barycenter)&&o(c,d)}}function s(c){return d=>{d.in.push(c),--d.indegree===0&&i.push(d)}}for(;i.length;){let c=i.pop();a.push(c),c.in.reverse().forEach(l(c)),c.out.forEach(s(c))}return a.filter(c=>!c.merged).map(c=>e.pick(c,["vs","i","barycenter","weight"]))}function o(i,a){let l=0,s=0;i.weight&&(l+=i.barycenter*i.weight,s+=i.weight),a.weight&&(l+=a.barycenter*a.weight,s+=a.weight),i.vs=a.vs.concat(i.vs),i.barycenter=l/s,i.weight=s,i.i=Math.min(a.i,i.i),a.merged=!0}return V$}var q$,hJ;function oHe(){if(hJ)return q$;hJ=1;let e=$n();q$=r;function r(i,a){let l=e.partition(i,v=>Object.hasOwn(v,"barycenter")),s=l.lhs,c=l.rhs.sort((v,w)=>w.i-v.i),d=[],u=0,p=0,f=0;s.sort(o(!!a)),f=n(d,c,f),s.forEach(v=>{f+=v.vs.length,d.push(v.vs),u+=v.barycenter*v.weight,p+=v.weight,f=n(d,c,f)});let m={vs:d.flat(!0)};return p&&(m.barycenter=u/p,m.weight=p),m}function n(i,a,l){let s;for(;a.length&&(s=a[a.length-1]).i<=l;)a.pop(),i.push(s.vs),l++;return l}function o(i){return(a,l)=>a.barycenterl.barycenter?1:i?l.i-a.i:a.i-l.i}return q$}var H$,fJ;function iHe(){if(fJ)return H$;fJ=1;let e=rHe(),r=nHe(),n=oHe();H$=o;function o(l,s,c,d){let u=l.children(s),p=l.node(s),f=p?p.borderLeft:void 0,m=p?p.borderRight:void 0,v={};f&&(u=u.filter(C=>C!==f&&C!==m));let w=e(l,u);w.forEach(C=>{if(l.children(C.v).length){let _=o(l,C.v,c,d);v[C.v]=_,Object.hasOwn(_,"barycenter")&&a(C,_)}});let x=r(w,c);i(x,v);let k=n(x,d);if(f&&(k.vs=[f,k.vs,m].flat(!0),l.predecessors(f).length)){let C=l.node(l.predecessors(f)[0]),_=l.node(l.predecessors(m)[0]);Object.hasOwn(k,"barycenter")||(k.barycenter=0,k.weight=0),k.barycenter=(k.barycenter*k.weight+C.order+_.order)/(k.weight+2),k.weight+=2}return k}function i(l,s){l.forEach(c=>{c.vs=c.vs.flatMap(d=>s[d]?s[d].vs:d)})}function a(l,s){l.barycenter!==void 0?(l.barycenter=(l.barycenter*l.weight+s.barycenter*s.weight)/(l.weight+s.weight),l.weight+=s.weight):(l.barycenter=s.barycenter,l.weight=s.weight)}return H$}var U$,gJ;function aHe(){if(gJ)return U$;gJ=1;let e=cl().Graph,r=$n();U$=n;function n(i,a,l,s){s||(s=i.nodes());let c=o(i),d=new e({compound:!0}).setGraph({root:c}).setDefaultNodeLabel(u=>i.node(u));return s.forEach(u=>{let p=i.node(u),f=i.parent(u);(p.rank===a||p.minRank<=a&&a<=p.maxRank)&&(d.setNode(u),d.setParent(u,f||c),i[l](u).forEach(m=>{let v=m.v===u?m.w:m.v,w=d.edge(v,u),x=w!==void 0?w.weight:0;d.setEdge(v,u,{weight:i.edge(m).weight+x})}),Object.hasOwn(p,"minRank")&&d.setNode(u,{borderLeft:p.borderLeft[a],borderRight:p.borderRight[a]}))}),d}function o(i){for(var a;i.hasNode(a=r.uniqueId("_root")););return a}return U$}var W$,mJ;function lHe(){if(mJ)return W$;mJ=1,W$=e;function e(r,n,o){let i={},a;o.forEach(l=>{let s=r.parent(l),c,d;for(;s;){if(c=r.parent(s),c?(d=i[c],i[c]=s):(d=a,a=s),d&&d!==s){n.setEdge(d,s);return}s=c}})}return W$}var G$,yJ;function sHe(){if(yJ)return G$;yJ=1;let e=eHe(),r=tHe(),n=iHe(),o=aHe(),i=lHe(),a=cl().Graph,l=$n();G$=s;function s(p,f){if(f&&typeof f.customOrder=="function"){f.customOrder(p,s);return}let m=l.maxRank(p),v=c(p,l.range(1,m+1),"inEdges"),w=c(p,l.range(m-1,-1,-1),"outEdges"),x=e(p);if(u(p,x),f&&f.disableOptimalOrderHeuristic)return;let k=Number.POSITIVE_INFINITY,C;for(let _=0,$=0;$<4;++_,++$){d(_%2?v:w,_%4>=2),x=l.buildLayerMatrix(p);let R=r(p,x);R{v.has(x)||v.set(x,[]),v.get(x).push(k)};for(const x of p.nodes()){const k=p.node(x);if(typeof k.rank=="number"&&w(k.rank,x),typeof k.minRank=="number"&&typeof k.maxRank=="number")for(let C=k.minRank;C<=k.maxRank;C++)C!==k.rank&&w(C,x)}return f.map(function(x){return o(p,x,m,v.get(x)||[])})}function d(p,f){let m=new a;p.forEach(function(v){let w=v.graph().root,x=n(v,w,m,f);x.vs.forEach((k,C)=>v.node(k).order=C),i(v,m,x.vs)})}function u(p,f){Object.values(f).forEach(m=>m.forEach((v,w)=>p.node(v).order=w))}return G$}var Y$,vJ;function cHe(){if(vJ)return Y$;vJ=1;let e=cl().Graph,r=$n();Y$={positionX:m,findType1Conflicts:n,findType2Conflicts:o,addConflict:a,hasConflict:l,verticalAlignment:s,horizontalCompaction:c,alignCoordinates:p,findSmallestWidthAlignment:u,balance:f};function n(x,k){let C={};function _($,R){let T=0,A=0,z=$.length,j=R[R.length-1];return R.forEach((I,N)=>{let L=i(x,I),H=L?x.node(L).order:z;(L||I===j)&&(R.slice(A,N+1).forEach(P=>{x.predecessors(P).forEach(V=>{let B=x.node(V),F=B.order;(F{I=R[N],x.node(I).dummy&&x.predecessors(I).forEach(L=>{let H=x.node(L);H.dummy&&(H.orderj)&&a(C,L,I)})})}function $(R,T){let A=-1,z,j=0;return T.forEach((I,N)=>{if(x.node(I).dummy==="border"){let L=x.predecessors(I);L.length&&(z=x.node(L[0]).order,_(T,j,N,A,z),j=N,A=z)}_(T,j,T.length,z,R.length)}),T}return k.length&&k.reduce($),C}function i(x,k){if(x.node(k).dummy)return x.predecessors(k).find(C=>x.node(C).dummy)}function a(x,k,C){if(k>C){let $=k;k=C,C=$}let _=x[k];_||(x[k]=_={}),_[C]=!0}function l(x,k,C){if(k>C){let _=k;k=C,C=_}return!!x[k]&&Object.hasOwn(x[k],C)}function s(x,k,C,_){let $={},R={},T={};return k.forEach(A=>{A.forEach((z,j)=>{$[z]=z,R[z]=z,T[z]=j})}),k.forEach(A=>{let z=-1;A.forEach(j=>{let I=_(j);if(I.length){I=I.sort((L,H)=>T[L]-T[H]);let N=(I.length-1)/2;for(let L=Math.floor(N),H=Math.ceil(N);L<=H;++L){let P=I[L];R[j]===j&&zMath.max(L,R[H.v]+T.edge(H)),0)}function I(N){let L=T.outEdges(N).reduce((P,V)=>Math.min(P,R[V.w]-T.edge(V)),Number.POSITIVE_INFINITY),H=x.node(N);L!==Number.POSITIVE_INFINITY&&H.borderType!==A&&(R[N]=Math.max(R[N],L))}return z(j,T.predecessors.bind(T)),z(I,T.successors.bind(T)),Object.keys(_).forEach(N=>R[N]=R[C[N]]),R}function d(x,k,C,_){let $=new e,R=x.graph(),T=v(R.nodesep,R.edgesep,_);return k.forEach(A=>{let z;A.forEach(j=>{let I=C[j];if($.setNode(I),z){var N=C[z],L=$.edge(N,I);$.setEdge(N,I,Math.max(T(x,j,z),L||0))}z=j})}),$}function u(x,k){return Object.values(k).reduce((C,_)=>{let $=Number.NEGATIVE_INFINITY,R=Number.POSITIVE_INFINITY;Object.entries(_).forEach(([A,z])=>{let j=w(x,A)/2;$=Math.max(z+j,$),R=Math.min(z-j,R)});const T=$-R;return T{["l","r"].forEach(T=>{let A=R+T,z=x[A];if(z===k)return;let j=Object.values(z),I=_-r.applyWithChunking(Math.min,j);T!=="l"&&(I=$-r.applyWithChunking(Math.max,j)),I&&(x[A]=r.mapValues(z,N=>N+I))})})}function f(x,k){return r.mapValues(x.ul,(C,_)=>{if(k)return x[k.toLowerCase()][_];{let $=Object.values(x).map(R=>R[_]).sort((R,T)=>R-T);return($[1]+$[2])/2}})}function m(x){let k=r.buildLayerMatrix(x),C=Object.assign(n(x,k),o(x,k)),_={},$;["u","d"].forEach(T=>{$=T==="u"?k:Object.values(k).reverse(),["l","r"].forEach(A=>{A==="r"&&($=$.map(N=>Object.values(N).reverse()));let z=(T==="u"?x.predecessors:x.successors).bind(x),j=s(x,$,C,z),I=c(x,$,j.root,j.align,A==="r");A==="r"&&(I=r.mapValues(I,N=>-N)),_[T+A]=I})});let R=u(x,_);return p(_,R),f(_,x.graph().align)}function v(x,k,C){return(_,$,R)=>{let T=_.node($),A=_.node(R),z=0,j;if(z+=T.width/2,Object.hasOwn(T,"labelpos"))switch(T.labelpos.toLowerCase()){case"l":j=-T.width/2;break;case"r":j=T.width/2;break}if(j&&(z+=C?j:-j),j=0,z+=(T.dummy?k:x)/2,z+=(A.dummy?k:x)/2,z+=A.width/2,Object.hasOwn(A,"labelpos"))switch(A.labelpos.toLowerCase()){case"l":j=A.width/2;break;case"r":j=-A.width/2;break}return j&&(z+=C?j:-j),j=0,z}}function w(x,k){return x.node(k).width}return Y$}var X$,bJ;function dHe(){if(bJ)return X$;bJ=1;let e=$n(),r=cHe().positionX;X$=n;function n(i){i=e.asNonCompoundGraph(i),o(i),Object.entries(r(i)).forEach(([a,l])=>i.node(a).x=l)}function o(i){let a=e.buildLayerMatrix(i),l=i.graph().ranksep,s=0;a.forEach(c=>{const d=c.reduce((u,p)=>{const f=i.node(p).height;return u>f?u:f},0);c.forEach(u=>i.node(u).y=s+d/2),s+=d+l})}return X$}var K$,xJ;function uHe(){if(xJ)return K$;xJ=1;let e=Wqe(),r=Gqe(),n=Xqe(),o=$n().normalizeRanks,i=Kqe(),a=$n().removeEmptyRanks,l=Zqe(),s=Qqe(),c=Jqe(),d=sHe(),u=dHe(),p=$n(),f=cl().Graph;K$=m;function m(O,W){let Z=W&&W.debugTiming?p.time:p.notime;Z("layout",()=>{let Q=Z(" buildLayoutGraph",()=>z(O));Z(" runLayout",()=>v(Q,Z,W)),Z(" updateInputGraph",()=>w(O,Q))})}function v(O,W,Z){W(" makeSpaceForEdgeLabels",()=>j(O)),W(" removeSelfEdges",()=>q(O)),W(" acyclic",()=>e.run(O)),W(" nestingGraph.run",()=>l.run(O)),W(" rank",()=>n(p.asNonCompoundGraph(O))),W(" injectEdgeLabelProxies",()=>I(O)),W(" removeEmptyRanks",()=>a(O)),W(" nestingGraph.cleanup",()=>l.cleanup(O)),W(" normalizeRanks",()=>o(O)),W(" assignRankMinMax",()=>N(O)),W(" removeEdgeLabelProxies",()=>L(O)),W(" normalize.run",()=>r.run(O)),W(" parentDummyChains",()=>i(O)),W(" addBorderSegments",()=>s(O)),W(" order",()=>d(O,Z)),W(" insertSelfEdges",()=>G(O)),W(" adjustCoordinateSystem",()=>c.adjust(O)),W(" position",()=>u(O)),W(" positionSelfEdges",()=>U(O)),W(" removeBorderNodes",()=>F(O)),W(" normalize.undo",()=>r.undo(O)),W(" fixupEdgeLabelCoords",()=>V(O)),W(" undoCoordinateSystem",()=>c.undo(O)),W(" translateGraph",()=>H(O)),W(" assignNodeIntersects",()=>P(O)),W(" reversePoints",()=>B(O)),W(" acyclic.undo",()=>e.undo(O))}function w(O,W){O.nodes().forEach(Z=>{let Q=O.node(Z),ie=W.node(Z);Q&&(Q.x=ie.x,Q.y=ie.y,Q.rank=ie.rank,W.children(Z).length&&(Q.width=ie.width,Q.height=ie.height))}),O.edges().forEach(Z=>{let Q=O.edge(Z),ie=W.edge(Z);Q.points=ie.points,Object.hasOwn(ie,"x")&&(Q.x=ie.x,Q.y=ie.y)}),O.graph().width=W.graph().width,O.graph().height=W.graph().height}let x=["nodesep","edgesep","ranksep","marginx","marginy"],k={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},C=["acyclicer","ranker","rankdir","align"],_=["width","height","rank"],$={width:0,height:0},R=["minlen","weight","width","height","labeloffset"],T={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},A=["labelpos"];function z(O){let W=new f({multigraph:!0,compound:!0}),Z=K(O.graph());return W.setGraph(Object.assign({},k,Y(Z,x),p.pick(Z,C))),O.nodes().forEach(Q=>{let ie=K(O.node(Q));const te=Y(ie,_);Object.keys($).forEach(re=>{te[re]===void 0&&(te[re]=$[re])}),W.setNode(Q,te),W.setParent(Q,O.parent(Q))}),O.edges().forEach(Q=>{let ie=K(O.edge(Q));W.setEdge(Q,Object.assign({},T,Y(ie,R),p.pick(ie,A)))}),W}function j(O){let W=O.graph();W.ranksep/=2,O.edges().forEach(Z=>{let Q=O.edge(Z);Q.minlen*=2,Q.labelpos.toLowerCase()!=="c"&&(W.rankdir==="TB"||W.rankdir==="BT"?Q.width+=Q.labeloffset:Q.height+=Q.labeloffset)})}function I(O){O.edges().forEach(W=>{let Z=O.edge(W);if(Z.width&&Z.height){let Q=O.node(W.v),ie={rank:(O.node(W.w).rank-Q.rank)/2+Q.rank,e:W};p.addDummyNode(O,"edge-proxy",ie,"_ep")}})}function N(O){let W=0;O.nodes().forEach(Z=>{let Q=O.node(Z);Q.borderTop&&(Q.minRank=O.node(Q.borderTop).rank,Q.maxRank=O.node(Q.borderBottom).rank,W=Math.max(W,Q.maxRank))}),O.graph().maxRank=W}function L(O){O.nodes().forEach(W=>{let Z=O.node(W);Z.dummy==="edge-proxy"&&(O.edge(Z.e).labelRank=Z.rank,O.removeNode(W))})}function H(O){let W=Number.POSITIVE_INFINITY,Z=0,Q=Number.POSITIVE_INFINITY,ie=0,te=O.graph(),re=te.marginx||0,ue=te.marginy||0;function _e(ce){let pe=ce.x,xe=ce.y,je=ce.width,Be=ce.height;W=Math.min(W,pe-je/2),Z=Math.max(Z,pe+je/2),Q=Math.min(Q,xe-Be/2),ie=Math.max(ie,xe+Be/2)}O.nodes().forEach(ce=>_e(O.node(ce))),O.edges().forEach(ce=>{let pe=O.edge(ce);Object.hasOwn(pe,"x")&&_e(pe)}),W-=re,Q-=ue,O.nodes().forEach(ce=>{let pe=O.node(ce);pe.x-=W,pe.y-=Q}),O.edges().forEach(ce=>{let pe=O.edge(ce);pe.points.forEach(xe=>{xe.x-=W,xe.y-=Q}),Object.hasOwn(pe,"x")&&(pe.x-=W),Object.hasOwn(pe,"y")&&(pe.y-=Q)}),te.width=Z-W+re,te.height=ie-Q+ue}function P(O){O.edges().forEach(W=>{let Z=O.edge(W),Q=O.node(W.v),ie=O.node(W.w),te,re;Z.points?(te=Z.points[0],re=Z.points[Z.points.length-1]):(Z.points=[],te=ie,re=Q),Z.points.unshift(p.intersectRect(Q,te)),Z.points.push(p.intersectRect(ie,re))})}function V(O){O.edges().forEach(W=>{let Z=O.edge(W);if(Object.hasOwn(Z,"x"))switch((Z.labelpos==="l"||Z.labelpos==="r")&&(Z.width-=Z.labeloffset),Z.labelpos){case"l":Z.x-=Z.width/2+Z.labeloffset;break;case"r":Z.x+=Z.width/2+Z.labeloffset;break}})}function B(O){O.edges().forEach(W=>{let Z=O.edge(W);Z.reversed&&Z.points.reverse()})}function F(O){O.nodes().forEach(W=>{if(O.children(W).length){let Z=O.node(W),Q=O.node(Z.borderTop),ie=O.node(Z.borderBottom),te=O.node(Z.borderLeft[Z.borderLeft.length-1]),re=O.node(Z.borderRight[Z.borderRight.length-1]);Z.width=Math.abs(re.x-te.x),Z.height=Math.abs(ie.y-Q.y),Z.x=te.x+Z.width/2,Z.y=Q.y+Z.height/2}}),O.nodes().forEach(W=>{O.node(W).dummy==="border"&&O.removeNode(W)})}function q(O){O.edges().forEach(W=>{if(W.v===W.w){var Z=O.node(W.v);Z.selfEdges||(Z.selfEdges=[]),Z.selfEdges.push({e:W,label:O.edge(W)}),O.removeEdge(W)}})}function G(O){var W=p.buildLayerMatrix(O);W.forEach(Z=>{var Q=0;Z.forEach((ie,te)=>{var re=O.node(ie);re.order=te+Q,(re.selfEdges||[]).forEach(ue=>{p.addDummyNode(O,"selfedge",{width:ue.label.width,height:ue.label.height,rank:re.rank,order:te+ ++Q,e:ue.e,label:ue.label},"_se")}),delete re.selfEdges})})}function U(O){O.nodes().forEach(W=>{var Z=O.node(W);if(Z.dummy==="selfedge"){var Q=O.node(Z.e.v),ie=Q.x+Q.width/2,te=Q.y,re=Z.x-ie,ue=Q.height/2;O.setEdge(Z.e,Z.label),O.removeNode(W),Z.label.points=[{x:ie+2*re/3,y:te-ue},{x:ie+5*re/6,y:te-ue},{x:ie+re,y:te},{x:ie+5*re/6,y:te+ue},{x:ie+2*re/3,y:te+ue}],Z.label.x=Z.x,Z.label.y=Z.y}})}function Y(O,W){return p.mapValues(p.pick(O,W),Number)}function K(O){var W={};return O&&Object.entries(O).forEach(([Z,Q])=>{typeof Z=="string"&&(Z=Z.toLowerCase()),W[Z]=Q}),W}return K$}var Z$,wJ;function pHe(){if(wJ)return Z$;wJ=1;let e=$n(),r=cl().Graph;Z$={debugOrdering:n};function n(o){let i=e.buildLayerMatrix(o),a=new r({compound:!0,multigraph:!0}).setGraph({});return o.nodes().forEach(l=>{a.setNode(l,{label:l}),a.setParent(l,"layer"+o.node(l).rank)}),o.edges().forEach(l=>a.setEdge(l.v,l.w,{},l.name)),i.forEach((l,s)=>{let c="layer"+s;a.setNode(c,{rank:"same"}),l.reduce((d,u)=>(a.setEdge(d,u,{style:"invis"}),u))}),a}return Z$}var kJ,_J;function hHe(){return _J||(_J=1,kJ="1.1.8"),kJ}var SJ,EJ;function fHe(){return EJ||(EJ=1,SJ={graphlib:cl(),layout:uHe(),debug:pHe(),util:{time:$n().time,notime:$n().notime},version:hHe()}),SJ}var gHe=fHe();const x2=Y7(gHe),co={dagre:{ranksep:60,nodesep:35,edgesep:25},edgeLabel:{width:140,height:10,minlen:1,weight:1},emptyNodeOffset:120,nodeWidth:330,nodeHeight:180,compound:{labelHeight:2,paddingTop:50,paddingBottom:32}};function mHe(){const e=new x2.graphlib.Graph({directed:!0,compound:!0,multigraph:!0});return e.setGraph({...co.dagre,rankdir:"LR"}),e.setDefaultEdgeLabel(()=>({...co.edgeLabel})),e.setDefaultNodeLabel(()=>({})),e}const Q$="-port";function J$(e,r,n){const o=new Ln(a=>({id:`${e}-${a}`,portId:`${e}-${a}`})),i=hx(r);for(const a of i.sorted){const l=i.children(a).length>0,s=a.id,c=`${e}-${s}`,d=l?`${c}${Q$}`:c;o.set(s,{id:c,portId:d}),n.setNode(c,{column:e,element:a,isCompound:l,portId:d,inPorts:[],outPorts:[],width:co.nodeWidth,height:co.nodeHeight}),l&&(n.setNode(d,{element:a,portId:d,isCompound:l,inPorts:[],outPorts:[],width:co.nodeWidth-co.dagre.ranksep,height:co.compound.labelHeight}),n.setParent(d,c));const u=i.parent(a);u&&n.setParent(c,`${e}-${u.id}`)}return{...i,byId:a=>{const l=i.byId(a),s=o.get(l.id);return{element:l,graph:s}},graphNodes:o}}function yHe(e){return x2.layout(e,{}),r=>{const n=e.node(r),{x:o,y:i,width:a,height:l}=n;return{position:{x:o-Math.round(a/2),y:i-Math.round(l/2)},width:a,height:l}}}var w2;(e=>{e.Empty="@empty"})(w2||(w2={}));function vHe(e,r){const n=mHe(),o=J$("incomers",e.incomers,n),i=J$("subjects",e.subjects,n),a=J$("outgoers",e.outgoers,n),l=[];Jr(XCe(Jr(C1(e.incoming),un($=>({id:$.source.id,sourceFqn:$.source.id,targetFqn:$.target.id,source:o.byId($.source.id).graph,target:i.byId($.target.id).graph,relation:$}))),Jr(C1(e.outgoing),un($=>({id:$.target.id,sourceFqn:$.source.id,targetFqn:$.target.id,source:i.byId($.source.id).graph,target:a.byId($.target.id).graph,relation:$})))),un($=>({...$,expr:`${$.source.id}->${$.target.id}`})),m$e(rp("expr")),f$e($=>{const R=$[0].source,T=$[0].target,A=$[0].expr;n.node(R.id).outPorts.push(T.id),n.node(T.id).inPorts.push(R.id),n.setEdge(R.portId,T.portId,{...co.edgeLabel},A),l.push({name:A,sourceFqn:$[0].sourceFqn,targetFqn:$[0].targetFqn,source:R.id,sourceHandle:R.id+"_out"+(n.node(R.id).outPorts.length-1),target:T.id,targetHandle:T.id+"_in"+(n.node(T.id).inPorts.length-1),relations:un($,rp("relation"))})}));for(const $ of i.graphNodes.values()){const R=$.id,T=n.node(R);if(T.isCompound)continue;const A=Math.max(n.inEdges(R)?.length??0,n.outEdges(R)?.length??0);A>2&&(T.height=T.height+(A-3)*14)}const s=[...o.graphNodes.values(),...i.graphNodes.values(),...a.graphNodes.values()];if(o.graphNodes.size==0){const $="incomers-empty";n.setNode($,{column:"incomers",element:null,isCompound:!1,portId:$,inPorts:[],outPorts:[],width:co.nodeWidth,height:co.nodeHeight});for(const R of i.graphNodes.values())n.setEdge($,R.portId);s.push({id:$,portId:$})}if(a.graphNodes.size==0){const $="outgoers-empty";n.setNode($,{column:"outgoers",element:null,isCompound:!1,portId:$,inPorts:[],outPorts:[],width:co.nodeWidth,height:co.nodeHeight});for(const R of i.graphNodes.values())n.setEdge(R.portId,$);s.push({id:$,portId:$})}const c=n.edgeCount();if(c>10)for(const $ of n.edges())n.setEdge($,{...co.edgeLabel,width:c>25?800:400});const d=yHe(n),u=Jr(s,ep($=>$.id===$.portId),hw($=>[$.id,d($.id)]));function p($){return u[$]??=Jr(n.children($)??[],ep(R=>!R.endsWith(Q$)),un(R=>p(R)),Wq(R=>{He(R.length>0,`Node ${$} has no nested nodes`)}),gw((R,T)=>({minY:Math.min(R.minY,T.position.y),maxY:Math.max(R.maxY,T.position.y+T.height)}),{minY:1/0,maxY:-1/0}),({minY:R,maxY:T})=>{const{position:{x:A},width:z}=d($);return R=R-co.compound.paddingTop,T=T+co.compound.paddingBottom,{position:{x:A,y:R},width:z,height:T-R}})}function f($){const R=n.parent($);return R?f(R)+1:0}function m($){const R=n.children($)??[];return R.length===0?0:1+Math.max(...R.map(m))}const v=($,R,T)=>Jr(T,un((A,z)=>({port:$+"_"+R+z,topY:p(A).position.y})),mw(rp("topY")),un(rp("port")));let w=0,x=0;const[k]=[...i.root];He(k,"Subjects should not be empty");let C=p(i.graphNodes.get(k.id).id);const _=s.map(({id:$})=>{const{element:R,inPorts:T,outPorts:A,column:z}=n.node($);let{position:j,width:I,height:N}=p($);if(!R){if(N=Math.min(C.height,300),j.y=C.position.y+C.height/2-N/2,z==="incomers")I=C.position.x-co.emptyNodeOffset-j.x;else{const q=j.x+I;j.x=C.position.x+C.width+co.emptyNodeOffset,I=q-j.x}return{id:$,parent:null,x:j.x,y:j.y,title:"empty node",description:null,technology:null,tags:[],links:[],color:"muted",shape:"rectangle",style:{border:"dashed",opacity:50},kind:w2.Empty,level:0,labelBBox:{x:j.x,y:j.y,width:I,height:N},children:[],width:I,height:N,column:z,ports:{in:[],out:[]},existsInCurrentView:!1}}const L=n.parent($),H=(n.children($)??[]).filter(q=>!q.endsWith(Q$));w=Math.min(w,j.x),x=Math.min(x,j.y);const P=r?E1(R.scopedViews(),q=>q.id!==r.id)?.id??null:null,V=r?.findNodeWithElement(R.id),B=r&&!V?E1(R.ancestors(),q=>!!r.findNodeWithElement(q.id))?.id:null,F=V??(B&&r?.findNodeWithElement(B));return{id:$,parent:L??null,x:j.x,y:j.y,title:R.title,description:Fs(R.$element)??null,technology:R.technology,tags:[...R.tags],links:null,color:F?.color??R.color,shape:V?.shape??R.shape,icon:V?.icon??R.icon??"none",modelRef:R.id,kind:R.kind,level:f($),labelBBox:{x:j.x,y:j.y,width:I,height:N},style:ud({...(V??F)?.style,...R.$element.style},["color","shape","icon"]),navigateTo:P,...H.length>0&&{depth:m($)},children:H,width:I,height:N,column:z,ports:{in:v($,"in",T),out:v($,"out",A)},existsInCurrentView:!!V}});return{subjectExistsInScope:!r||r.includesElement(k.id),bounds:{x:Math.min(w,0),y:Math.min(x,0),width:n.graph().width??100,height:n.graph().height??100},nodes:_,edges:n.edges().reduce(($,R)=>{const T=n.edge(R),A=R.name;if(!A)return $;const{name:z,source:j,sourceFqn:I,target:N,targetFqn:L,relations:H,sourceHandle:P,targetHandle:V}=gt(Q1(l,U=>U.name===A)),B=fw(H),F=B?.title??"untitled",q=H.length>1,G=fw(yw(H.flatMap(U=>U.navigateTo?.id?U.navigateTo.id:[])));return $.push(_1({id:z,sourceFqn:I,source:j,sourceHandle:P,targetFqn:L,target:N,targetHandle:V,label:q?`${H.length} relationships`:F,navigateTo:G,color:B?.color??"gray",existsInCurrentView:!r||H.every(U=>r.includesRelation(U.id)),points:T.points.map(U=>[U.x,U.y]),line:B?.line??"dashed",head:B?.head,tail:B?.tail,relations:H.map(U=>U.id),parent:null})),$},[])}}function bHe(e,r,n){const o=Fo();return S.useMemo(()=>{const i=r?o.findView(r):null,a=vHe(ZO(e,o,r,n),n==="view"?i:null);return i&&(n==="global"||!a.subjectExistsInScope)&&(a.edges=a.edges.map(l=>(l.existsInCurrentView=l.relations.every(s=>i.includesRelation(s)),l))),Object.assign(a,{subject:e})},[o,e,r,n,ZO])}const o0=(e,r)=>Rb(e.label,r.label);function eR(e){return{label:e.title,value:e.id,children:[...e.children()].map(eR).sort(o0)}}function xHe(e){const r=Fo();return S.useMemo(()=>e?[...r.view(e).roots()].map(eR).sort(o0):[...r.roots()].map(eR).sort(o0),[r,e??null])}const wHe=fe({margin:"0"}),kHe=fe({_hover:{backgroundColor:"mantine.colors.gray[0]",_dark:{backgroundColor:"mantine.colors.defaultHover",color:"mantine.colors.white"}}}),CJ=fe({maxHeight:["70vh","calc(100cqh - 70px)"]}),_He=Object.freeze(Object.defineProperty({__proto__:null,label:kHe,node:wHe,scrollArea:CJ},Symbol.toStringTag,{value:"Module"})),SHe=[["path",{d:"M8 9l4 -4l4 4",key:"svg-0"}],["path",{d:"M16 15l-4 4l-4 -4",key:"svg-1"}]],tR=wt("outline","selector","Selector",SHe),EHe=e=>{const r=e.context.layouted?.subjectExistsInScope??!1;return{subjectId:e.context.subject,viewId:e.context.viewId,scope:e.context.scope,subjectExistsInScope:r,enableSelectSubject:e.context.enableSelectSubject,enableChangeScope:e.context.enableChangeScope}},CHe=()=>{},$He=S.memo(()=>{const e=n0(),{subjectId:r,viewId:n,scope:o,subjectExistsInScope:i,enableSelectSubject:a,enableChangeScope:l}=v2(EHe),s=S.useRef(null),c=S.useRef(null),d=Fo().findElement(r),u=xHe(o==="view"&&n?n:void 0),p=_y({multiple:!1});return p.setHoveredNode=CHe,S.useEffect(()=>{Du(r).reverse().forEach(f=>{p.expand(f)}),p.select(r)},[r]),y.jsxs(en,{ref:s,gap:"xs",pos:"relative",children:[a&&y.jsxs(en,{gap:4,wrap:"nowrap",children:[y.jsx(Se,{fz:"xs",fw:"500",style:{whiteSpace:"nowrap",userSelect:"none"},children:"Relationships of"}),y.jsx(Se,{pos:"relative",children:y.jsxs(br,{position:"bottom-start",shadow:"md",keepMounted:!1,withinPortal:!1,closeOnClickOutside:!0,clickOutsideEvents:["pointerdown","mousedown","click"],offset:4,onOpen:()=>{setTimeout(()=>{c.current?.querySelector(`[data-value="${r}"]`)?.scrollIntoView({behavior:"instant",block:"nearest"})},100)},children:[y.jsx(kd,{children:y.jsx(Vn,{size:"xs",variant:"default",maw:250,rightSection:y.jsx(tR,{size:16}),children:y.jsx(it,{fz:"xs",fw:"500",truncate:!0,children:d?.title??"???"})})}),y.jsx(Qs,{p:0,miw:250,maw:400,children:y.jsx(oi,{scrollbars:"y",type:"never",viewportRef:c,className:CJ,children:y.jsx(Ff,{allowRangeSelection:!1,selectOnClick:!1,tree:p,data:u,classNames:_He,levelOffset:8,styles:{root:{maxWidth:400,overflow:"hidden"},label:{paddingTop:5,paddingBottom:6}},renderNode:({node:f,selected:m,expanded:v,elementProps:w,hasChildren:x})=>y.jsxs(en,{gap:2,wrap:"nowrap",...w,py:"3",children:[y.jsx(lr,{variant:"subtle",size:18,c:"dimmed",style:{visibility:x?"visible":"hidden"},children:y.jsx(Dd,{stroke:3.5,style:{transition:"transform 150ms ease",transform:`rotate(${v?"90deg":"0"})`,width:"80%"}})}),y.jsx(Se,{flex:"1 1 100%",w:"100%",onClick:k=>{k.stopPropagation(),p.select(f.value),p.expand(f.value),e.navigateTo(f.value)},children:y.jsx(it,{fz:"sm",fw:m?"600":"400",truncate:"end",children:f.label})})]})})})})]})})]}),l&&y.jsxs(en,{gap:4,wrap:"nowrap",children:[a&&y.jsx(Se,{fz:"xs",fw:"500",...!i&&{c:"dimmed"},style:{whiteSpace:"nowrap",userSelect:"none"},children:"Scope"}),y.jsx("div",{children:y.jsx(_n,{color:"orange",label:y.jsxs(y.Fragment,{children:["This element does not exist in the current view",o==="view"&&y.jsxs(y.Fragment,{children:[y.jsx("br",{}),"Scope is set to global"]})]}),position:"bottom-start",disabled:i,portalProps:{target:s.current},children:y.jsx(Of,{flex:"1 0 auto",size:"xs",withItemsBorders:!1,value:o,styles:{label:{paddingLeft:8,paddingRight:8}},onChange:f=>{e.changeScope(f)},data:[{label:"Global",value:"global"},{label:y.jsx("span",{children:"Current view"}),value:"view",disabled:!i}]})})})]})]})}),k2=(e,r)=>Math.abs(e-r)<2.5,RHe=(e,r)=>e.id===r.id&&tt(e.selected??!1,r.selected??!1)&&tt(e.animated??!1,r.animated??!1)&&tt(e.source,r.source)&&k2(e.sourceX,r.sourceX)&&k2(e.sourceY,r.sourceY)&&tt(e.sourceHandleId??null,r.sourceHandleId??null)&&tt(e.sourcePosition,r.sourcePosition)&&tt(e.target,r.target)&&k2(e.targetY,r.targetY)&&k2(e.targetX,r.targetX)&&tt(e.targetHandleId??null,r.targetHandleId??null)&&tt(e.targetPosition,r.targetPosition)&&tt(e.data,r.data);function rR(e){const r=S.memo(e,RHe);return r.displayName=`MemoEdge(${e.displayName||e.name})`,r}function $J(e,r){return r2(e,r)}const wa=$J("button"),Rr=$J("div"),i0=S.forwardRef(({edgeProps:{id:e,data:{label:r,technology:n,hovered:o=!1},selected:i=!1,selectable:a=!1},pointerEvents:l="all",className:s,style:c,children:d,...u},p)=>{const f=k1(e)?IO(e):null,m=Zn(r)||Zn(n);return y.jsxs(Rr,{ref:p,className:Ge("likec4-edge-label",dVe({pointerEvents:l,isStepEdge:f!==null,cursor:a||f!==null?"pointer":"default"}),s),"data-edge-id":e,animate:{scale:o&&!i?1.06:1},...u,children:[f!==null&&y.jsx(hr,{className:"likec4-edge-label__step-number",children:f}),m&&y.jsxs(hr,{className:"likec4-edge-label__contents",children:[Zn(r)&&y.jsx(hr,{lineClamp:5,className:"likec4-edge-label__text",children:r}),Zn(n)&&y.jsx(hr,{className:"likec4-edge-label__technology",children:"[ "+n+" ]"}),d]})]})});i0.displayName="EdgeLabel";function _2({icon:e,onClick:r}){return y.jsx(lr,{className:Ge("nodrag nopan",cVe()),onPointerDownCapture:nn,onClick:r,role:"button",onDoubleClick:nn,children:e??y.jsx(ba,{})})}function a0({className:e,component:r="g",selectable:n=!1,selected:o=!1,data:{color:i="gray",hovered:a=!1,active:l=!1,dimmed:s=!1,...c},animated:d,children:u,style:p}){const f={className:Ge(e,"likec4-edge-container",o&&"selected",n&&"selectable"),"data-likec4-color":i,"data-edge-dir":c.dir??"forward","data-edge-active":l,"data-edge-animated":d||l,"data-likec4-hovered":a,...o&&{"data-likec4-selected":o},...s!==!1&&{"data-likec4-dimmed":s}};return r==="svg"?y.jsx("svg",{style:p,...f,children:u}):(He(r==="g",'EdgeContainer: component must be "g" or "svg"'),y.jsx("g",{style:p,...f,children:u}))}const zHe=e=>y.jsx("marker",{viewBox:"-4 -4 14 16",refX:5,refY:4,markerWidth:"7",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M0,0 L7,4 L0,8 L4,4 Z",stroke:"context-stroke",fill:"context-stroke",strokeDasharray:0,strokeWidth:1,strokeLinecap:"round"})}),THe=e=>y.jsx("marker",{viewBox:"-1 -1 12 10",refX:4,refY:3,markerWidth:"8",markerHeight:"6",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M 0 0 L 8 3 L 0 6 L 1 3 z",fill:"context-stroke",strokeWidth:0})}),jHe=e=>y.jsx("marker",{viewBox:"-1 -1 12 12",refX:8,refY:4,markerWidth:"8",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M 8 0 L 0 4 L 8 8 M 8 4 L 0 4",fill:"none",strokeWidth:1})}),AHe=e=>y.jsx("marker",{viewBox:"-1 -1 12 10",refX:4,refY:3,markerWidth:"8",markerHeight:"6",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M 0 0 L 8 3 L 0 6 L 1 3 z",stroke:"context-stroke",fill:"context-stroke",strokeWidth:1.25,strokeLinejoin:"miter",strokeLinecap:"square"})}),DHe=e=>y.jsx("marker",{viewBox:"-4 -4 16 14",refX:5,refY:4,markerWidth:"10",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M5,0 L10,4 L5,8 L0,4 Z",fill:"context-stroke",strokeWidth:0,strokeLinecap:"round"})}),PHe=e=>y.jsx("marker",{viewBox:"-4 -4 16 14",refX:6,refY:4,markerWidth:"10",markerHeight:"8",preserveAspectRatio:"xMaxYMid meet",orient:"auto-start-reverse",...e,children:y.jsx("path",{d:"M5,0 L10,4 L5,8 L0,4 Z",stroke:"context-stroke",fill:"context-stroke",strokeWidth:1.25,strokeLinecap:"round"})}),MHe=e=>y.jsx("marker",{viewBox:"0 0 10 10",refX:4,refY:4,markerWidth:"6",markerHeight:"6",...e,children:y.jsx("circle",{strokeWidth:0,fill:"context-stroke",cx:4,cy:4,r:3})}),NHe=e=>y.jsx("marker",{viewBox:"0 0 10 10",refX:4,refY:4,markerWidth:"6",markerHeight:"6",...e,children:y.jsx("circle",{strokeWidth:1.25,stroke:"context-stroke",fill:"context-stroke",cx:4,cy:4,r:3})}),RJ={Arrow:THe,Crow:jHe,OArrow:AHe,Open:zHe,Diamond:DHe,ODiamond:PHe,Dot:MHe,ODot:NHe};function zJ(e){if(!(!e||e==="none"))switch(e){case"normal":return"Arrow";case"crow":return"Crow";case"onormal":return"OArrow";case"diamond":return"Diamond";case"odiamond":return"ODiamond";case"open":case"vee":return"Open";case"dot":return"Dot";case"odot":return"ODot";default:Qo(e)}}const l0=S.forwardRef(({edgeProps:{id:e,data:{line:r,dir:n,tail:o,head:i},selectable:a=!0,style:l,interactionWidth:s},isDragging:c=!1,onEdgePointerDown:d,strokeWidth:u,svgPath:p},f)=>{let m=zJ(o),v=zJ(i??"normal");n==="back"&&([m,v]=[v,m]);const w=m?RJ[m]:null,x=v?RJ[v]:null,k=r==="dotted",C=k||r==="dashed";let _;k?_="1,8":C&&(_="8,10");const $=mVe();return y.jsxs(y.Fragment,{children:[a&&y.jsx("path",{className:Ge("react-flow__edge-interaction",fe({fill:"none"})),onPointerDown:d,d:p,style:{strokeWidth:s??10,stroke:"currentcolor",strokeOpacity:0,...c?{display:"none"}:{}}}),y.jsx("circle",{className:Ge("likec4-edge-middle-point",$.middlePoint),"data-edge-id":e,style:{offsetPath:`path("${p}")`}}),y.jsxs("g",{className:$.markersCtx,onPointerDown:d,children:[y.jsxs("defs",{children:[w&&y.jsx(w,{id:"start"+e}),x&&y.jsx(x,{id:"end"+e})]}),y.jsx("path",{className:Ge("react-flow__edge-path","hide-on-reduced-graphics",$.pathBg,c&&fe({display:"none"})),d:p,style:l,strokeLinecap:"round"}),y.jsx("path",{ref:f,className:Ge("react-flow__edge-path",$.path,a&&"react-flow__edge-interaction"),d:p,style:l,strokeWidth:u,strokeLinecap:"round",strokeDasharray:_,markerStart:w?`url(#start${e})`:void 0,markerEnd:x?`url(#end${e})`:void 0})]})]})});l0.displayName="EdgePath";const TJ=e=>{if(e!==void 0)return Iq(e)?`${Math.round(e)}px`:e};function S2({edgeProps:{id:e,selected:r=!1,data:{hovered:n=!1,active:o=!1,dimmed:i=!1,labelBBox:a,color:l="gray"},animated:s},labelPosition:c,className:d,style:u,children:p,...f}){let m=QC(S.useCallback(k=>k.edgeLookup.get(e)?.zIndex??lc.Edge,[e]));(n||o)&&(m+=100);let v=c?.x??a?.x,w=c?.y??a?.y;if(v===void 0||w===void 0)return null;const x=c?.translate??"";return y.jsx(yq,{children:y.jsx("div",{...f,className:Ge("nodrag nopan","likec4-edge-label-container",d),"data-likec4-hovered":n,"data-likec4-color":l,"data-edge-active":o,"data-edge-animated":s||o,...r!==!1&&{"data-likec4-selected":r},...i!==!1&&{"data-likec4-dimmed":i},style:{...a&&{maxWidth:a.width+18},zIndex:m,...u,transform:`translate(${TJ(v)}, ${TJ(w)}) ${x}`},children:p},e)})}const BHe=rR(e=>{const r=n0(),{enableNavigateTo:n}=sr(),{data:{navigateTo:o,relations:i,existsInCurrentView:a}}=e,[l,s,c]=Kx(e),d=Mt(),u=i.length>1||!a,p=u?{...e,data:{...e.data,line:"solid",color:"amber"}}:e;let f=y.jsx(i0,{edgeProps:p,className:fe({transition:"fast"}),children:n&&o&&y.jsx(_2,{...e,onClick:m=>{m.stopPropagation(),d.navigateTo(o)}})});return a||(f=y.jsx(_n,{color:"orange",c:"black",label:"This relationship is not included in the current view",portalProps:{target:`#${r.rootElementId}`},openDelay:800,children:f})),y.jsxs(a0,{...p,children:[y.jsx(l0,{edgeProps:p,svgPath:l,...u&&{strokeWidth:5}}),y.jsx(S2,{edgeProps:p,labelPosition:{x:s,y:c,translate:"translate(-50%, 0)"},style:{maxWidth:Math.min(Math.abs(e.targetX-e.sourceX-70),250)},children:f})]})}),IHe=fe({width:"100%",height:"100%",border:"3px dashed",borderColor:"mantine.colors.defaultBorder",borderRadius:"md",display:"flex",justifyContent:"center",alignItems:"center"});function OHe({data:{column:e}}){return y.jsx(Se,{className:IHe,children:y.jsxs(it,{c:"dimmed",fz:"lg",fw:500,children:["No ",e==="incomers"?"incoming":"outgoing"]})})}const LHe=e=>e.context.view.id;function E2(){const e=Xf();return pn(e,LHe)}const FHe=e=>e.context.view;function VHe(){const e=Xf();return pn(e,FHe,Ir)}const qHe=[["path",{d:"M3 6a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-0"}],["path",{d:"M21 11v-3a2 2 0 0 0 -2 -2h-6l3 3m0 -6l-3 3",key:"svg-1"}],["path",{d:"M3 13v3a2 2 0 0 0 2 2h6l-3 -3m0 6l3 -3",key:"svg-2"}],["path",{d:"M15 18a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-3"}]],s0=wt("outline","transform","Transform",qHe),HHe=[["path",{d:"M4 21v-4a3 3 0 0 1 3 -3h5",key:"svg-0"}],["path",{d:"M9 17l3 -3l-3 -3",key:"svg-1"}],["path",{d:"M14 3v4a1 1 0 0 0 1 1h4",key:"svg-2"}],["path",{d:"M5 11v-6a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2h-9.5",key:"svg-3"}]],dg=wt("outline","file-symlink","FileSymlink",HHe),UHe=[["path",{d:"M13 3l0 7l6 0l-8 11l0 -7l-6 0l8 -11",key:"svg-0"}]],WHe=wt("outline","bolt","Bolt",UHe),GHe=qn({position:"absolute",zIndex:1,justifyContent:"center",alignItems:"center",_smallZoom:{display:"none"}}),YHe=qn({gap:"1.5",justifyContent:"center",alignItems:"center"});function C2({selected:e=!1,data:{hovered:r=!1},buttons:n}){const o=oa();return n.length?y.jsx(hr,{className:GHe,style:{top:"calc(100% - 30px)",transform:"translateX(-50%)",left:"50%",width:"auto",minHeight:30},children:y.jsx(Rr,{layoutRoot:!0,initial:!1,style:{originY:0},animate:{opacity:r||e?1:.75,scale:r?1.1:e?.9:.8,y:r||e?6:0},layoutDependency:`${r}-${e}`,"data-likec4-hovered":r,className:Ge("nodrag nopan",YHe),children:n.map((i,a)=>y.jsx(lr,{component:wa,className:a2({}),initial:!1,whileTap:{scale:1},whileHover:{scale:1.3},onClick:i.onClick,onDoubleClick:nn,children:i.icon||y.jsx(WHe,{})},`${o}-${i.key??a}`))})}):null}const XHe=e=>e.context.subject,KHe=e=>{const{enableNavigateTo:r,enableVscode:n}=sr(),o=Mt(),i=E2(),a=n0(),l=v2(XHe),{navigateTo:s,fqn:c}=e.data,d=S.useMemo(()=>{const u=[];return s&&r&&i!==s&&u.push({key:"navigate",icon:y.jsx(ba,{}),onClick:p=>{p.stopPropagation(),o.navigateTo(s)}}),c!==l&&u.push({key:"relationships",icon:y.jsx(s0,{}),onClick:p=>{p.stopPropagation(),a.navigateTo(c,e.id)}}),n&&u.push({key:"goToSource",icon:y.jsx(dg,{}),onClick:p=>{p.stopPropagation(),o.openSource({element:c})}}),u},[s,r,i,c,l,n,o,a,e.id]);return y.jsx(C2,{buttons:d,...e})};function c0({nodeProps:{data:{hovered:e=!1,dimmed:r=!1,...n}},className:o,children:i,style:a,...l}){let s=ta(n.style.opacity??100,{min:0,max:100});const c=s<99,d=65,u=d+ta((100-d)*(s/100),{min:0,max:100-d}),p=sVe({isTransparent:c,inverseColor:s<60,borderStyle:n.style.border??(c?"dashed":"none")}),f=ta(n.depth??1,{min:1,max:5});return y.jsx(Rr,{className:Ge(p,o),initial:!1,"data-likec4-hovered":e,"data-likec4-color":n.color,"data-compound-depth":f,...r!==!1&&{"data-likec4-dimmed":r},style:{...a,"--_border-transparency":`${u}%`,"--_compound-transparency":`${s}%`},...l,children:i})}function d0({data:e}){const r=bx({element:e,className:"likec4-compound-icon"});return y.jsxs("div",{className:"likec4-compound-title-container",children:[r,y.jsx(it,{component:"h3",className:"likec4-compound-title",truncate:"end",children:e.title})]})}const jJ=T1({base:{transitionDuration:"normal"},variants:{delay:{true:{transitionDelay:{base:"0.2s",_hover:"0s"}}}}}),ZHe=[["path",{d:"M3 4m0 3a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v10a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3z",key:"svg-0"}],["path",{d:"M9 10m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-1"}],["path",{d:"M15 8l2 0",key:"svg-2"}],["path",{d:"M15 12l2 0",key:"svg-3"}],["path",{d:"M7 16l10 0",key:"svg-4"}]],nR=wt("outline","id","Id",ZHe);function AJ({data:{hovered:e=!1},icon:r,onClick:n}){const o=m9(e,e?130:0)[0]&&e;return y.jsx(Rr,{initial:!1,animate:{scale:o?1.2:1},whileHover:{scale:1.4},whileTap:{scale:1},className:"likec4-compound-details details-button",children:y.jsx(lr,{className:Ge("nodrag nopan",jJ({delay:e&&!o}),a2({variant:"transparent"})),onClick:n,onDoubleClick:nn,children:r??y.jsx(nR,{stroke:1.8,style:{width:"75%"}})})})}const QHe=fe({position:"relative",width:"full",height:"full",padding:"0",margin:"0",display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none",_focusVisible:{outline:"none"},_whenSelectable:{pointerEvents:"all",_before:{content:'" "',position:"absolute",top:"[calc(100% - 4px)]",left:"0",width:"full",height:"24px",background:"transparent",pointerEvents:"all"}},_reduceGraphicsOnPan:{_before:{display:"none"}},":where(.react-flow__node.selectable:not(.dragging)) &":{cursor:"pointer"}}),ug=S.forwardRef(({nodeProps:{selected:e=!1,selectable:r=!1,data:{hovered:n=!1,dimmed:o=!1,...i}},className:a,style:l,children:s,...c},d)=>{let u=1;switch(!0){case n:u=1.05;break;case e:u=1.02;break}const{size:p,padding:f,textSize:m}=$b(i.style??{});return y.jsx(Rr,{ref:d,className:Ge(QHe,"group","likec4-element-node",a),initial:!1,...r&&{animate:{scale:u},whileTap:{scale:.98}},"data-likec4-hovered":n,"data-likec4-color":i.color,"data-likec4-shape":i.shape,"data-likec4-shape-size":p,"data-likec4-spacing":f,"data-likec4-text-size":m,...o!==!1&&{"data-likec4-dimmed":o},style:{...l},...c,children:s})});ug.displayName="ElementNodeContainer";function DJ(e,r,n=.065){const o=Math.round(e/2),i=o,a=Pd(n*o),l=r-2*a;return{path:` M ${e},${a} a ${i},${a} 0,0,0 ${-e} 0 l 0,${l} a ${i},${a} 0,0,0 ${e} 0 l 0,${-l} z - `.replace(/\s+/g," ").trim(),ry:a,rx:i}}function MJ(e,r,n=.185){const o=r,i=Math.round(o/2),a=Md(o/2*n),l=e-2*a;return{path:` + `.replace(/\s+/g," ").trim(),ry:a,rx:i}}function PJ(e,r,n=.185){const o=r,i=Math.round(o/2),a=Pd(o/2*n),l=e-2*a;return{path:` M ${a},0 a ${a},${i} 0,0,0 0 ${o} l ${l},0 a ${a},${i} 0,0,0 0 ${-o} - z`.replace(/\s+/g," ").trim(),ry:i,rx:a}}const Rp={width:115,height:120,path:"M57.9197 0C10.9124 0 33.5766 54.75 33.5766 54.75C38.6131 62.25 45.3285 60.75 45.3285 66C45.3285 70.5 39.4526 72 33.5766 72.75C24.3431 72.75 15.9489 71.25 7.55474 84.75C2.51825 93 0 120 0 120H115C115 120 112.482 93 108.285 84.75C99.8905 70.5 91.4963 72.75 82.2628 72C76.3869 71.25 70.5109 69.75 70.5109 65.25C70.5109 60.75 77.2263 62.25 82.2628 54C82.2628 54.75 104.927 0 57.9197 0V0Z"};function NJ({shape:e,w:r,h:n}){switch(e){case"mobile":return y.jsxs(y.Fragment,{children:[y.jsx("rect",{width:r,height:n,rx:6,"data-likec4-fill":"mix-stroke",strokeWidth:0}),y.jsxs("g",{"data-likec4-fill":"fill",strokeWidth:0,children:[y.jsx("circle",{cx:17,cy:n/2,r:12}),y.jsx("rect",{x:33,y:12,width:r-44,height:n-24,rx:5})]})]});case"browser":return y.jsxs(y.Fragment,{children:[y.jsx("rect",{width:r,height:n,rx:6,"data-likec4-fill":"mix-stroke",strokeWidth:0}),y.jsxs("g",{"data-likec4-fill":"fill",strokeWidth:0,children:[y.jsx("circle",{cx:16,cy:17,r:7}),y.jsx("circle",{cx:36,cy:17,r:7}),y.jsx("circle",{cx:56,cy:17,r:7}),y.jsx("rect",{x:70,y:8,width:r-80,height:17,rx:4}),y.jsx("rect",{x:10,y:32,width:r-20,height:n-42,rx:4})]})]});case"person":return y.jsxs(y.Fragment,{children:[y.jsx("rect",{width:r,height:n,rx:6,strokeWidth:0}),y.jsx("svg",{x:r-Rp.width-6,y:n-Rp.height,width:Rp.width,height:Rp.height,viewBox:`0 0 ${Rp.width} ${Rp.height}`,"data-likec4-fill":"mix-stroke",children:y.jsx("path",{strokeWidth:0,d:Rp.path})})]});case"queue":{const{path:o,rx:i,ry:a}=MJ(r,n);return y.jsxs(y.Fragment,{children:[y.jsx("path",{d:o,strokeWidth:2}),y.jsx("ellipse",{cx:i,cy:a,ry:a-.75,rx:i,"data-likec4-fill":"mix-stroke",strokeWidth:2})]})}case"storage":case"cylinder":{const{path:o,rx:i,ry:a}=DJ(r,n);return y.jsxs(y.Fragment,{children:[y.jsx("path",{d:o,strokeWidth:2}),y.jsx("ellipse",{cx:i,cy:a,ry:a,rx:i-.75,"data-likec4-fill":"mix-stroke",strokeWidth:2})]})}default:return Qo(e)}}function JHe({shape:e,w:r,h:n}){let o;switch(e){case"queue":o=y.jsx("path",{d:MJ(r,n).path});break;case"storage":case"cylinder":{o=y.jsx("path",{d:DJ(r,n).path});break}default:{o=y.jsx("rect",{x:-3,y:-3,width:r+6,height:n+6,rx:8});break}}return y.jsx("g",{className:"likec4-shape-outline",children:o})}function eUe({multiple:e,withOutLine:r}){return y.jsxs("div",{className:GZ({shapetype:"html"}),children:[e&&y.jsx("div",{className:"likec4-shape-multiple"}),r&&y.jsx("div",{className:"likec4-shape-outline"})]})}function pm({data:e,width:r,height:n,showSeletionOutline:o=!0}){let i=r&&r>10?r:e.width,a=n&&n>10?n:e.height;const l=e.style?.multiple??!1;if(e.shape==="rectangle")return y.jsx(eUe,{multiple:l,withOutLine:o});const s=GZ({shapetype:"svg"});return y.jsxs(y.Fragment,{children:[l&&y.jsx("svg",{className:s,"data-likec4-shape-multiple":"true",viewBox:`0 0 ${i} ${a}`,children:y.jsx(NJ,{shape:e.shape,w:i,h:a})}),y.jsxs("svg",{className:s,viewBox:`0 0 ${i} ${a}`,children:[o&&y.jsx(JHe,{shape:e.shape,w:i,h:a}),y.jsx(NJ,{shape:e.shape,w:i,h:a})]})]})}const zp=S.forwardRef(({value:e,textScale:r=1,uselikec4palette:n=!1,hideIfEmpty:o=!1,emptyText:i="no content",className:a,style:l,fontSize:s,...c},d)=>{if(e.isEmpty&&o)return null;const u=e.nonEmpty?e.isMarkdown?{dangerouslySetInnerHTML:{__html:e.html}}:{children:y.jsx("p",{children:e.text})}:{children:y.jsx(it,{component:"span",fz:"xs",c:"dimmed",style:{userSelect:"none"},children:i})};return y.jsx(hr,{ref:d,...c,className:Ge(bVe({uselikec4palette:n,value:e.isMarkdown?"markdown":"plaintext"}),a),style:{...l,...s&&{"--text-fz":`var(--font-sizes-${s}, var(--font-sizes-md))`},...r!==1&&{"--mantine-scale":r}},...u})});zp.displayName="Markdown";const PJ=S.forwardRef(({className:e,...r},n)=>y.jsx("div",{...r,ref:n,className:Ge(e,yVe(),"likec4-element")})),BJ=({data:e,...r})=>y.jsx(bx,{element:e,...r}),IJ=S.forwardRef(({className:e,...r},n)=>y.jsx("div",{...r,className:Ge(e,"likec4-element-node-content"),ref:n})),OJ=S.forwardRef(({data:{title:e,style:r},className:n,...o},i)=>{const{size:a}=$b(r),l=a==="sm"||a==="xs";return y.jsx(it,{component:"div",...o,className:Ge(n,"likec4-element-title"),"data-likec4-node-title":"",lineClamp:l?2:3,ref:i,children:e})}),LJ=S.forwardRef(({data:e,children:r,className:n,...o},i)=>{const a=e?.technology??r;return Zn(a)?y.jsx(it,{component:"div",...o,className:Ge(n,"likec4-element-technology"),"data-likec4-node-technology":"",ref:i,children:a}):null}),FJ=S.forwardRef(({data:{description:e,style:r},className:n,...o},i)=>{if(!e)return null;const a=ur.from(e),{size:l}=$b(r);return y.jsx(zp,{...o,className:Ge(n,"likec4-element-description",fe({lineClamp:l==="sm"||l==="xs"?3:5})),"data-likec4-node-description":"",value:a,uselikec4palette:!0,hideIfEmpty:!0,style:{maxHeight:a.isMarkdown?"8rem":void 0},ref:i})});function dl({iconSize:e,data:r}){return y.jsxs(PJ,{style:Iq(e)?{"--likec4-icon-size":`${e}px`}:void 0,children:[y.jsx(BJ,{data:r}),y.jsxs(IJ,{children:[y.jsx(OJ,{data:r}),y.jsx(LJ,{data:r}),y.jsx(FJ,{data:r})]})]})}dl.Root=PJ,dl.Icon=BJ,dl.Content=IJ,dl.Title=OJ,dl.Technology=LJ,dl.Description=FJ;const tUe=fe({position:"absolute",top:"0.5",right:"0.5",_shapeBrowser:{right:"[5px]"},_shapeCylinder:{top:"[14px]"},_shapeStorage:{top:"[14px]"},_shapeQueue:{top:"[1px]",right:"3"},_smallZoom:{display:"none"},_print:{display:"none"}});function oR({selected:e=!1,data:{hovered:r=!1},icon:n,onClick:o}){return y.jsx(hr,{className:Ge(tUe,"details-button"),children:y.jsx(lr,{className:Ge("nodrag nopan",a2({variant:"transparent"})),component:wa,initial:!1,style:{originX:.45,originY:.55},animate:r||e?{scale:1.2,opacity:.8}:{scale:1,opacity:.5},whileHover:{scale:1.4,opacity:1},whileTap:{scale:1.15},onClick:o,onDoubleClick:nn,children:n??y.jsx(nR,{stroke:1.8,style:{width:"75%"}})})})}const rUe=e=>{const r=Nt();return y.jsx(oR,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}})};function nUe(e){const{enableElementTags:r}=sr();return y.jsxs(um,{layoutId:e.id,nodeProps:e,children:[y.jsx(pm,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx(rUe,{...e}),y.jsx(KHe,{...e}),y.jsx(iUe,{...e})]},e.id)}function oUe(e){const r=Nt();return y.jsxs(c0,{layoutId:e.id,nodeProps:e,children:[y.jsx(d0,{...e}),y.jsx(AJ,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}}),y.jsx(aUe,{...e})]},e.id)}const iUe=({data:{ports:e,height:r}})=>y.jsxs(y.Fragment,{children:[e.in.map((n,o)=>y.jsx(Oo,{id:n,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${15+(o+1)*((r-30)/(e.in.length+1))}px`}},n)),e.out.map((n,o)=>y.jsx(Oo,{id:n,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${15+(o+1)*((r-30)/(e.out.length+1))}px`}},n))]}),aUe=({data:e})=>y.jsxs(y.Fragment,{children:[e.ports.in.map((r,n)=>y.jsx(Oo,{id:r,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r)),e.ports.out.map((r,n)=>y.jsx(Oo,{id:r,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r))]}),lUe=[["path",{d:"M15 6l-6 6l6 6",key:"svg-0"}]],VJ=wt("outline","chevron-left","ChevronLeft",lUe),sUe={element:nUe,compound:oUe,empty:OHe},cUe={relationship:BHe};function qJ({actorRef:e}){const r=S.useRef(null);return r.current==null&&(r.current={initialNodes:[],initialEdges:[]}),y.jsx(xQ.Provider,{value:e,children:y.jsx(lw,{...r.current,children:y.jsx(lm,{id:e.sessionId,inherit:!1,children:y.jsx(Cn,{children:y.jsx(pUe,{})})})})})}const dUe=e=>({isActive:e.hasTag("active"),nodes:e.context.xynodes,edges:e.context.xyedges}),uUe=(e,r)=>e.isActive===r.isActive&&Ir(e.nodes,r.nodes)&&Ir(e.edges,r.edges),pUe=S.memo(()=>{const e=n0(),{isActive:r,nodes:n,edges:o}=v2(dUe,uUe);return y.jsx(s$,{id:e.rootElementId,nodes:n,edges:o,className:Ge(r?"initialized":"not-initialized","relationships-browser"),nodeTypes:sUe,edgeTypes:cUe,fitView:!1,onNodeClick:at((i,a)=>{i.stopPropagation(),e.send({type:"xyflow.nodeClick",node:a})}),onEdgeClick:at((i,a)=>{i.stopPropagation(),e.send({type:"xyflow.edgeClick",edge:a})}),onPaneClick:at(i=>{i.stopPropagation(),e.send({type:"xyflow.paneClick"})}),onDoubleClick:at(i=>{e.send({type:"xyflow.paneDblClick"})}),onViewportResize:at(()=>{e.send({type:"xyflow.resized"})}),onNodesChange:at(i=>{e.send({type:"xyflow.applyNodeChanges",changes:i})}),onEdgesChange:at(i=>{e.send({type:"xyflow.applyEdgeChanges",changes:i})}),onEdgeMouseEnter:at((i,a)=>{a.data.hovered||e.send({type:"xyflow.edgeMouseEnter",edge:a})}),onEdgeMouseLeave:at((i,a)=>{a.data.hovered&&e.send({type:"xyflow.edgeMouseLeave",edge:a})}),onSelectionChange:at(i=>{e.send({type:"xyflow.selectionChange",...i})}),nodesDraggable:!1,nodesSelectable:!0,pannable:!0,zoomable:!0,children:y.jsx(fUe,{})})}),hUe=e=>({subjectId:e.context.subject,viewId:e.context.viewId,scope:e.context.scope,closeable:e.context.closeable}),fUe=S.memo(()=>{const e=n0(),{subjectId:r,viewId:n,scope:o,closeable:i}=v2(hUe),a=vr(),l=pf();S.useEffect(()=>{l.viewportInitialized&&e.send({type:"xyflow.init",instance:l,store:a})},[a,l.viewportInitialized,e]);const s=bHe(r,n,o),[c,d,{history:u,current:p}]=RH(r);S.useEffect(()=>{c!==r&&d.set(r)},[r]),S.useEffect(()=>{c!==r&&e.navigateTo(c)},[c,e]),_L(()=>{e.updateView(s)},[s,e]);const f=p>0,g=p+1d.back(),onStepForward:()=>d.forward()}),i&&y.jsx(sd,{position:"top-right",children:y.jsx(lr,{variant:"default",color:"gray",onClick:v=>{v.stopPropagation(),e.close()},children:y.jsx(fp,{})})})]})}),mUe=({hasStepBack:e,hasStepForward:r,onStepBack:n,onStepForward:o})=>y.jsx(sd,{position:"top-left",children:y.jsxs(en,{gap:4,wrap:"nowrap",children:[y.jsxs(Cn,{mode:"popLayout",children:[e&&y.jsx(ma.div,{layout:!0,initial:{opacity:.05,transform:"translateX(-5px)"},animate:{opacity:1,transform:"translateX(0)"},exit:{opacity:.05,transform:"translateX(-10px)"},children:y.jsx(lr,{variant:"default",color:"gray",onClick:i=>{i.stopPropagation(),n()},children:y.jsx(VJ,{})})},"back"),r&&y.jsx(ma.div,{layout:!0,initial:{opacity:.05,transform:"translateX(5px)"},animate:{opacity:1,transform:"translateX(0)"},exit:{opacity:0,transform:"translateX(5px)"},children:y.jsx(lr,{variant:"default",color:"gray",onClick:i=>{i.stopPropagation(),o()},children:y.jsx(Dd,{})})},"forward")]}),y.jsx($He,{})]})}),gUe=fe({display:"inline-block",fontSize:"sm",fontWeight:500,whiteSpace:"nowrap",padding:"[3px 6px]",borderRadius:3,background:"var(--likec4-palette-fill)/75",lineHeight:1.2,color:"var(--likec4-palette-hiContrast)"}),yUe=fe({_light:{background:"mantine.colors.gray[1]","&[data-missing":{}},"&[data-missing]":{color:"mantine.colors.orange[4]",background:"mantine.colors.orange[8]/15",borderColor:"mantine.colors.orange[5]/20",_light:{color:"mantine.colors.orange[8]"}}}),vUe=fe({flex:"1 1 100%",position:"relative",width:"100%",height:"100%",background:"mantine.colors.body",border:"1px solid {colors.mantine.colors.defaultBorder}",borderRadius:"sm",_light:{borderColor:"mantine.colors.gray[3]",background:"mantine.colors.gray[1]"}});fe({_before:{content:'"scope:"',position:"absolute",top:"0",left:"2",fontSize:"xxs",fontWeight:500,lineHeight:"1",color:"mantine.colors.dimmed",opacity:.85,transform:"translateY(-100%) translateY(-2px)"},_light:{"& .mantine-SegmentedControl-root":{background:"mantine.colors.gray[3]"}}}),fe({display:"inline-block",fontSize:"xl",fontWeight:600,padding:"[1px 5px]",minWidth:24,textAlign:"center",borderRadius:"sm",background:"mantine.colors.dark[7]",color:"mantine.colors.defaultColor","&[data-zero]":{color:"mantine.colors.dimmed"},"&[data-missing]":{color:"mantine.colors.orange[4]",background:"mantine.colors.orange[8]/20"}});const bUe=[["path",{d:"M5 12l14 0",key:"svg-0"}],["path",{d:"M13 18l6 -6",key:"svg-1"}],["path",{d:"M13 6l6 6",key:"svg-2"}]],hm=wt("outline","arrow-right","ArrowRight",bUe),xUe=[["path",{d:"M12 6h-6a2 2 0 0 0 -2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-6",key:"svg-0"}],["path",{d:"M11 13l9 -9",key:"svg-1"}],["path",{d:"M15 4h5v5",key:"svg-2"}]],HJ=wt("outline","external-link","ExternalLink",xUe),wUe=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,withinPortal:!1});function kUe({node:e,element:r}){const n=Nt(),o=lVe(),i=pn(o,S.useCallback(u=>u.children[`${o.id}-relationships`],[o.id])),a=[...r.incoming()].map(u=>u.id),l=[...r.outgoing()].map(u=>u.id),s=e?yw([...e.incoming()].flatMap(u=>u.$edge.relations)):[],c=e?yw([...e.outgoing()].flatMap(u=>u.$edge.relations)):[],d=[...a,...l].filter(u=>!s.includes(u)&&!c.includes(u)).length;return y.jsxs(Lo,{gap:"xs",pos:"relative",w:"100%",h:"100%",children:[a.length+l.length>0&&y.jsxs(en,{gap:"xs",wrap:"nowrap",align:"center",children:[y.jsx(Se,{children:y.jsxs(en,{gap:8,mb:4,wrap:"nowrap",children:[y.jsx(UJ,{title:"incoming",total:a.length,included:s.length}),y.jsx(Ti,{size:"sm",variant:"transparent",c:"dimmed",children:y.jsx(hm,{style:{width:16}})}),y.jsx(it,{className:gUe,children:Jg(r.id)}),y.jsx(Ti,{size:"sm",variant:"transparent",c:"dimmed",children:y.jsx(hm,{style:{width:16}})}),y.jsx(UJ,{title:"outgoing",total:l.length,included:c.length})]})}),d>0&&y.jsx(wUe,{label:"Current view does not include some relationships",children:y.jsxs(en,{mt:"xs",gap:6,c:"orange",style:{cursor:"pointer"},children:[y.jsx(r0,{style:{width:14}}),y.jsxs(it,{fz:"sm",children:[d," relationship",d>1?"s are":" is"," hidden"]})]})})]}),y.jsx(Se,{className:vUe,children:i&&y.jsxs(y.Fragment,{children:[y.jsx(qJ,{actorRef:i}),y.jsx(Se,{pos:"absolute",top:12,right:12,children:y.jsx(lr,{size:"md",variant:"default",radius:"sm",onClick:u=>{u.stopPropagation();const{subject:p,scope:f,viewId:g}=i.getSnapshot().context;n.overlays().send({type:"open.relationshipsBrowser",subject:p,scope:f,viewId:g})},children:y.jsx(HJ,{stroke:1.6,style:{width:"70%"}})})})]})})]})}function UJ({title:e,total:r,included:n}){return y.jsx(Af,{withBorder:!0,shadow:"none",className:yUe,px:"md",py:"xs",radius:"md",mod:{zero:r===0,missing:r!==n},children:y.jsxs(Lo,{gap:4,align:"flex-end",children:[y.jsx(it,{component:"div",c:r!==n?"orange":"dimmed",tt:"uppercase",fw:600,fz:10,lh:1,children:e}),y.jsx(it,{fw:600,fz:"xl",component:"div",lh:1,children:r!==n?y.jsxs(y.Fragment,{children:[n," / ",r]}):y.jsx(y.Fragment,{children:r})})]})})}const _Ue=fe({marginTop:"sm",marginBottom:"sm"}),SUe=fe({display:"inline-flex",transition:"fast",border:"1px dashed",borderColor:"mantine.colors.defaultBorder",borderRadius:"sm",px:"md",py:"xs",alignItems:"center",cursor:"pointer",color:"mantine.colors.gray[7]",_dark:{color:"mantine.colors.dark[1]"},"& > *":{transition:"fast"},_hover:{transitionTimingFunction:"out",borderStyle:"solid",color:"mantine.colors.defaultColor",background:"mantine.colors.defaultHover","& > *":{transitionTimingFunction:"out",transform:"translateX(1px)"}}}),iR=({element:e})=>y.jsx(Se,{className:SUe,children:y.jsx(it,{component:"div",fz:"sm",fw:"500",children:e.title})}),EUe=()=>{};function CUe({element:e}){const r=_y({multiple:!1});r.setHoveredNode=EUe;const n=S.useMemo(()=>{let o=1;const i=l=>({label:l,value:`msg${o++}`,type:"message",children:[]}),a={label:y.jsx(iR,{type:"current",element:e}),value:e.id,element:e,type:"current",children:[...e.children()].map(l=>({label:y.jsx(iR,{type:"descedant",element:l}),value:l.id,element:l,type:"descedant",children:[]}))};return a.children.length===0&&a.children.push(i(y.jsx(_3,{radius:"sm",children:"no nested"}))),[[...e.ancestors()].reduce((l,s)=>({label:y.jsx(iR,{type:"ancestor",element:s}),value:s.id,element:s,type:"ancestor",children:[l]}),a)]},[e]);return S.useEffect(()=>{r.expandAllNodes()},[n]),y.jsxs(y.Fragment,{children:[y.jsxs(f3,{variant:"light",color:"orange",title:"In development",icon:y.jsx(r0,{}),children:["We need your feedback. Share your thoughts and ideas -"," ",y.jsx(mS,{fz:"sm",fw:500,underline:"hover",c:"orange",href:"https://github.com/likec4/likec4/discussions/",target:"_blank",children:"GitHub discussions"})]}),y.jsx(Ff,{levelOffset:"xl",allowRangeSelection:!1,expandOnClick:!1,expandOnSpace:!1,classNames:{label:_Ue},data:n,tree:r})]})}const $Ue=[["path",{d:"M12 4l-8 4l8 4l8 -4l-8 -4",key:"svg-0"}],["path",{d:"M4 12l8 4l8 -4",key:"svg-1"}],["path",{d:"M4 16l8 4l8 -4",key:"svg-2"}]],aR=wt("outline","stack-2","Stack2",$Ue),WJ=sp.withProps({mb:8,labelPosition:"left",variant:"dashed"}),GJ=_n.withProps({color:"dark",fz:"xs",openDelay:400,closeDelay:150,label:"",children:null,offset:4}),YJ=it.withProps({component:"div",fz:11,fw:500,c:"dimmed",lh:1}),u0=it.withProps({component:"div",fz:"xs",c:"dimmed",className:iqe}),fm=24,RUe=["Properties","Relationships","Views","Structure","Deployments"];function zUe({viewId:e,fromNode:r,rectFromNode:n,fqn:o,onClose:i}){const[a,l]=S.useState(!1),s=fze(),c=s.width||window.innerWidth||1200,d=s.height||window.innerHeight||800,[u,p]=cze({key:"likec4:element-details:active-tab",defaultValue:"Properties"}),f=Nt(),g=WVe(),v=r?g.findNode(r):g.findNodeWithElement(o),w=g.$model.element(o),[x,k]=Jr([...w.views()],un(K=>K.$view),qq(K=>K._type==="element"&&K.viewOf===o));let C=v?.navigateTo?.$view??w.defaultView?.$view??null;C?.id===e&&(C=null);const _=fw(w.links),$=aVe(),R=(v?.$node.children?.length??0)>0,T=Math.min(700,c-fm*2),A=Math.min(650,d-fm*2),z=n?{x:n.x+(R?n.width-T/2:n.width/2),y:n.y+(R?0:n.height/2)}:{x:c/2,y:d/2},j=n?Math.min(n.width/T,n.height/A,.9):1,I=Math.round(ta(z.x-T/2,{min:fm,max:c-T-fm})),P=Math.round(ta(z.y-(R?0:60),{min:fm,max:d-A-fm})),L=ta((z.x-I)/T,{min:.1,max:.9}),H=ta((z.y-P)/A,{min:.1,max:.9}),M=jZ(T),V=jZ(A);$p(()=>{M.set(T),V.set(A)},[T,A]);const B=S.useCallback((K,O)=>{M.set(Math.max(M.get()+O.delta.x,320)),V.set(Math.max(V.get()+O.delta.y,300))},[]),F=S.useRef(null),q=Zh(i),G=h7(()=>{q.current()},[],50),U=v?.$node.notation??null,Y=bx({element:{id:o,title:w.title,icon:v?.icon??w.icon},className:ZVe});return wx(()=>{F.current?.open||F.current?.showModal()},20),wx(()=>{l(!0)},220),y.jsx(ma.dialog,{ref:F,className:Ge(GVe,ny.classNames.fullWidth),layout:!0,initial:{[p2]:"0px",[h2]:"5%"},animate:{[p2]:"3px",[h2]:"60%"},exit:{[p2]:"0px",[h2]:"0%",transition:{duration:.1}},onClick:K=>{K.stopPropagation(),K.target?.nodeName?.toUpperCase()==="DIALOG"&&F.current?.close()},onDoubleClick:nn,onPointerDown:nn,onClose:K=>{K.stopPropagation(),G()},children:y.jsx(ny,{forwardProps:!0,removeScrollBar:!1,children:y.jsxs(ma.div,{layout:!0,layoutRoot:!0,drag:!0,dragControls:$,dragElastic:0,dragMomentum:!1,dragListener:!1,"data-likec4-color":v?.color??w.color,className:YVe,initial:{top:P,left:I,width:T,height:A,opacity:0,originX:L,originY:H,scale:Math.max(j,.65)},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.9,translateY:-10,transition:{duration:.1}},style:{width:M,height:V},children:[y.jsxs("div",{className:XVe,onPointerDown:K=>$.start(K),children:[y.jsxs(Or,{alignItems:"start",justify:"space-between",gap:"sm",mb:"sm",flexWrap:"nowrap",children:[y.jsxs(Or,{alignItems:"start",gap:"sm",style:{cursor:"default"},flexWrap:"nowrap",children:[Y,y.jsxs("div",{children:[y.jsx(it,{component:"div",className:KVe,children:w.title}),U&&y.jsx(it,{component:"div",c:"dimmed",fz:"sm",fw:500,lh:1.3,lineClamp:1,children:U})]})]}),y.jsx(lp,{size:"lg",onClick:K=>{K.stopPropagation(),G()}})]}),y.jsxs(Or,{alignItems:"baseline",gap:"sm",flexWrap:"nowrap",children:[y.jsxs("div",{children:[y.jsx(YJ,{children:"kind"}),y.jsx(ec,{radius:"sm",size:"sm",fw:600,color:"gray",style:{cursor:"pointer"},onClick:K=>{K.stopPropagation(),f.openSearch(`kind:${w.kind}`)},children:w.kind})]}),y.jsxs("div",{style:{flex:1},children:[y.jsx(YJ,{children:"tags"}),y.jsxs(Js,{gap:4,flex:1,mt:6,wrap:"wrap",children:[w.tags.map(K=>y.jsx(u2,{tag:K,cursor:"pointer",onClick:O=>{O.stopPropagation(),f.openSearch(`#${K}`)}},K)),w.tags.length===0&&y.jsx(ec,{radius:"sm",size:"sm",fw:600,color:"gray",children:"—"})]})]}),y.jsxs(s3,{style:{alignSelf:"flex-start"},children:[_&&y.jsx(lr,{component:"a",href:_.url,target:"_blank",size:"lg",variant:"default",radius:"sm",children:y.jsx(HJ,{stroke:1.6,style:{width:"65%"}})}),y.jsx(LNe,{feature:"Vscode",children:y.jsx(GJ,{label:"Open source",children:y.jsx(lr,{size:"lg",variant:"default",radius:"sm",onClick:K=>{K.stopPropagation(),f.openSource({element:w.id})},children:y.jsx(dm,{stroke:1.8,style:{width:"62%"}})})})}),C&&y.jsx(GJ,{label:"Open default view",children:y.jsx(lr,{size:"lg",variant:"default",radius:"sm",onClick:K=>{K.stopPropagation(),f.navigateTo(C.id,r??void 0)},children:y.jsx(ba,{style:{width:"70%"}})})})]})]})]}),y.jsx(pQ,{children:y.jsxs(up,{value:u,onChange:K=>p(K),variant:"none",classNames:{root:eqe,list:tqe,tab:rqe,panel:nqe},children:[y.jsx(ky,{children:RUe.map(K=>y.jsx(Lf,{value:K,children:K},K))}),y.jsx(rc,{value:"Properties",children:y.jsx(es,{scrollbars:"y",type:"scroll",offsetScrollbars:!0,children:y.jsxs(Se,{className:oqe,pt:"xs",children:[w.hasSummary&&y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:"summary"}),y.jsx(zp,{value:w.summary})]}),y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:"description"}),y.jsx(zp,{value:w.description,emptyText:"no description"})]}),w.technology&&y.jsx(TUe,{title:"technology",children:w.technology}),w.links.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:"links"}),y.jsx(Or,{gap:"xs",flexWrap:"wrap",children:w.links.map((K,O)=>y.jsx(o$,{value:K},O))})]}),w.$element.metadata&&y.jsx(jUe,{value:w.$element.metadata})]})})}),y.jsx(rc,{value:"Relationships",children:y.jsx(mp,{overrides:{enableRelationshipBrowser:!1,enableNavigateTo:!1},children:a&&u==="Relationships"&&y.jsx(kUe,{element:w,node:v??null})})}),y.jsx(rc,{value:"Views",children:y.jsx(es,{scrollbars:"y",type:"auto",children:y.jsxs(Lo,{gap:"lg",children:[x.length>0&&y.jsxs(Se,{children:[y.jsx(WJ,{label:"views of the element (scoped)"}),y.jsx(Lo,{gap:"sm",children:x.map(K=>y.jsx(XJ,{view:K,onNavigateTo:O=>f.navigateTo(O,r??void 0)},K.id))})]}),k.length>0&&y.jsxs(Se,{children:[y.jsx(WJ,{label:"views including this element"}),y.jsx(Lo,{gap:"sm",children:k.map(K=>y.jsx(XJ,{view:K,onNavigateTo:O=>f.navigateTo(O,r??void 0)},K.id))})]})]})})}),y.jsx(rc,{value:"Structure",children:y.jsx(es,{scrollbars:"y",type:"auto",children:y.jsx(CUe,{element:w})})}),y.jsx(rc,{value:"Deployments",children:y.jsx(es,{scrollbars:"y",type:"auto",children:y.jsx(kqe,{elementFqn:w.id})})})]})}),y.jsx(ma.div,{className:aqe,drag:!0,dragElastic:0,dragMomentum:!1,onDrag:B,dragConstraints:{top:0,left:0,right:0,bottom:0}})]})})})}const XJ=({view:e,onNavigateTo:r})=>y.jsx(pr,{className:QVe,onClick:n=>r(e.id,n),children:y.jsxs(en,{gap:6,align:"start",wrap:"nowrap",children:[y.jsx(Ti,{size:"sm",variant:"transparent",children:e._type==="deployment"?y.jsx(aR,{stroke:1.8}):y.jsx(ba,{stroke:1.8})}),y.jsx(Se,{children:y.jsx(it,{component:"div",className:JVe,lineClamp:1,children:e.title||"untitled"})})]})});function TUe({title:e,emptyValue:r="undefined",children:n,style:o,...i}){return y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:e}),y.jsx(it,{component:"div",...ty(n)&&{c:"dimmed"},fz:"md",style:{whiteSpace:"preserve-breaks",userSelect:"all",...o},...i,children:n||r})]})}function jUe({value:e}){const r=uw(e).sort(([n],[o])=>n.localeCompare(o));return y.jsx(pQ,{children:y.jsxs(y.Fragment,{children:[y.jsx(u0,{style:{justifySelf:"end",textAlign:"right"},children:"metadata"}),y.jsx(Se,{className:fe({display:"grid",gridTemplateColumns:"min-content 1fr",gridAutoRows:"min-content",gap:"[12px 16px]",alignItems:"baseline",justifyItems:"stretch"}),children:r.map(([n,o])=>y.jsx(dqe,{label:n,value:o},n))})]})})}const AUe=e=>({viewId:e.context.currentView.id,fromNode:e.context.initiatedFrom.node,rectFromNode:e.context.initiatedFrom.clientRect,fqn:e.context.subject});function DUe({actorRef:e,onClose:r}){const n=pn(e,AUe,Ir);return y.jsx(FC.Provider,{value:e,children:y.jsx(zUe,{onClose:r,...n})})}const $2="--_blur",R2="--_opacity",MUe="--_level",p0=S.forwardRef(({onClose:e,className:r,classes:n,overlayLevel:o=0,children:i,fullscreen:a=!1,withBackdrop:l=!0,backdrop:s,openDelay:c=130,...d},u)=>{const[p,f]=S.useState(c===0),g=bH(p),v=S.useRef(null),w=S.useRef(!1),x=AZ()!==!0,k=S.useRef(e);k.current=e;const C=h7(()=>{w.current||(w.current=!0,k.current())},[],50);S.useLayoutEffect(()=>{v.current?.open||v.current?.showModal()},[]),wx(()=>{f(!0)},c>0?c:void 0);const _=xVe({fullscreen:a,withBackdrop:l});let $=o>0?"50%":"60%";return s?.opacity!==void 0&&($=`${s.opacity*100}%`),y.jsx(ma.dialog,{ref:$r(v,g,u),className:Ge(n?.dialog,r,_,a&&ny.classNames.fullWidth),layout:!0,style:{[MUe]:o},...x?{initial:{[$2]:"0px",[R2]:"0%",scale:.85,opacity:0},animate:{[$2]:o>0?"4px":"8px",[R2]:$,scale:1,opacity:1,translateY:0},exit:{opacity:0,scale:.98,translateY:-20,[$2]:"0px",[R2]:"0%"}}:{initial:{[$2]:"8px",[R2]:$}},onClick:R=>{if(R.stopPropagation(),R.target?.nodeName?.toUpperCase()==="DIALOG"){v.current?.close();return}},onCancel:R=>{R.preventDefault(),R.stopPropagation(),C()},onDoubleClick:nn,onPointerDown:nn,onClose:R=>{R.stopPropagation(),C()},...d,children:y.jsx(ny,{forwardProps:!0,children:y.jsx("div",{className:Ge(n?.body,"likec4-overlay-body"),children:p&&y.jsx(y.Fragment,{children:i})})})})});p0.displayName="Overlay";const z2=(e,r)=>e.size>2&&r.size!==e.size?new Set(Jc([...hx(e).flatten(),...r])):e.size>1?new Set(Jc([...e])):e;function NUe(e,r){const n=new Set,o=new Set,i=new Set,a={sources:new Set,targets:new Set},l=(s,c)=>{c==="source"?(n.add(s),a.sources.add(s)):(i.add(s),a.targets.add(s))};for(const s of e){const c=r.findEdge(s),d=c?[...c.relationships("model")]:[];if(!c||!xn(d,1)||!c.source.hasElement()||!c.target.hasElement())continue;const u=c.source.element,p=c.target.element;l(u,"source"),l(p,"target");for(const f of d){if(o.add(f),f.source!==u){l(f.source,"source");for(const g of f.source.ancestors()){if(g===u)break;n.add(g)}}if(f.target!==p){l(f.target,"target");for(const g of f.target.ancestors()){if(g===p)break;i.add(g)}}}}return{sources:z2(n,a.sources),targets:z2(i,a.targets),relationships:o}}function PUe({source:e,target:r}){const n=new Set,o=new Set,i=new Set,a={sources:new Set,targets:new Set},l=(c,d)=>{d==="source"?(n.add(c),a.sources.add(c)):(i.add(c),a.targets.add(c))};e&&l(e,"source"),r&&l(r,"target");const[s]=Vke.findConnection(e,r,"directed");if(!s)return{sources:n,targets:i,relationships:o};for(const c of s.relations){const d=c.source,u=c.target;if(l(d,"source"),l(u,"target"),o.add(c),e!==d){He(Yn(e,d),`${e.id} is not an ancestor of ${d.id}`);for(const p of d.ancestors()){if(p===e)break;n.add(p)}}if(r!==u){He(Yn(r,u),`${r.id} is not an ancestor of ${u.id}`);for(const p of u.ancestors()){if(p===r)break;i.add(p)}}}return{sources:z2(n,a.sources),targets:z2(i,a.targets),relationships:o}}const KJ=S.createContext(null);function lR(){return mt(S.useContext(KJ),"No RelationshipDetailsActorContext")}function ZJ(e,r=Ir){const n=at(e),o=lR();return pn(o,n,r)}function sR(){const e=lR();return S.useMemo(()=>({actor:e,get rootElementId(){return`relationship-details-${e.sessionId.replaceAll(":","_")}`},getState:()=>e.getSnapshot().context,send:e.send,navigateTo:(...r)=>{r.length===1?e.send({type:"navigate.to",params:{edgeId:r[0]}}):e.send({type:"navigate.to",params:{source:r[0],target:r[1]}})},fitDiagram:()=>{e.send({type:"fitDiagram"})},close:()=>{e._parent?e._parent?.send({type:"close",actorId:e.id}):e.send({type:"close"})}}),[e])}const ul={dagre:{ranksep:60,nodesep:35,edgesep:25},edgeLabel:{width:220,height:14},nodeWidth:330,nodeHeight:180,compound:{labelHeight:2,paddingTop:50,paddingBottom:32}};function BUe(){const e=new x2.graphlib.Graph({directed:!0,compound:!0,multigraph:!0});return e.setGraph({...ul.dagre,rankdir:"LR"}),e.setDefaultEdgeLabel(()=>({...ul.edgeLabel})),e.setDefaultNodeLabel(()=>({})),e}const cR="-port";function QJ(e,r,n){const o=new Ln(a=>({id:`${e}-${a}`,portId:`${e}-${a}`})),i=hx(r);for(const a of i.sorted){const l=i.children(a).length>0,s=a.id,c=`${e}-${s}`,d=l?`${c}${cR}`:c;o.set(s,{id:c,portId:d}),n.setNode(c,{column:e,element:a,isCompound:l,portId:d,inPorts:[],outPorts:[],width:ul.nodeWidth,height:ul.nodeHeight}),l&&(n.setNode(d,{element:a,portId:d,isCompound:l,inPorts:[],outPorts:[],width:ul.nodeWidth-ul.dagre.ranksep,height:ul.compound.labelHeight}),n.setParent(d,c));const u=i.parent(a);u&&n.setParent(c,`${e}-${u.id}`)}return{...i,byId:a=>{const l=i.byId(a),s=o.get(l.id);return{element:l,graph:s}},graphNodes:o}}function IUe(e){return x2.layout(e,{}),r=>{const n=e.node(r),{x:o,y:i,width:a,height:l}=n;return{position:{x:o-Math.round(a/2),y:i-Math.round(l/2)},width:a,height:l}}}function OUe(e,r){const n=BUe(),o=QJ("sources",e.sources,n),i=QJ("targets",e.targets,n),a=Array.from(e.relationships).map(k=>{const C=o.byId(k.source.id).graph,_=i.byId(k.target.id).graph,$=k.id;return n.node(C.id).outPorts.push(_.id),n.node(_.id).inPorts.push(C.id),n.setEdge(C.portId,_.portId,{...ul.edgeLabel},$),{name:$,source:C.id,sourceHandle:C.id+"_out"+(n.node(C.id).outPorts.length-1),target:_.id,targetHandle:_.id+"_in"+(n.node(_.id).inPorts.length-1),relationship:k}}),l=[...o.graphNodes.values(),...i.graphNodes.values()];for(const{id:k}of l){const C=n.node(k);if(C.isCompound)continue;const _=Math.max(n.inEdges(k)?.length??0,n.outEdges(k)?.length??0);_>3&&(C.height=C.height+(_-4)*14)}const s=n.edgeCount();if(s>5)for(const k of n.edges())n.setEdge(k,{...ul.edgeLabel,width:s>10?800:400});const c=IUe(n),d=Jr(l,ep(k=>k.id===k.portId),hw(k=>[k.id,c(k.id)]));function u(k){return d[k]??=Jr(n.children(k)??[],ep(C=>!C.endsWith(cR)),un(C=>u(C)),Wq(C=>{He(C.length>0,`Node ${k} has no nested nodes`)}),mw((C,_)=>({minY:Math.min(C.minY,_.position.y),maxY:Math.max(C.maxY,_.position.y+_.height)}),{minY:1/0,maxY:-1/0}),({minY:C,maxY:_})=>{const{position:{x:$},width:R}=c(k);return C=C-ul.compound.paddingTop,_=_+ul.compound.paddingBottom,{position:{x:$,y:C},width:R,height:_-C}})}function p(k){const C=n.parent(k);return C?p(C)+1:0}function f(k){const C=n.children(k)??[];return C.length===0?0:1+Math.max(...C.map(f))}const g=(k,C,_)=>Jr(_,un(($,R)=>({port:k+"_"+C+R,topY:u($).position.y})),gw(rp("topY")),un(rp("port")));let v=0,w=0;const x=l.map(({id:k})=>{const{element:C,inPorts:_,outPorts:$,column:R}=n.node(k);let{position:T,width:A,height:z}=u(k);const j=n.parent(k),I=(n.children(k)??[]).filter(V=>!V.endsWith(cR));v=Math.min(v,T.x),w=Math.min(w,T.y);const P=r?E1(C.scopedViews(),V=>V.id!==r.id)?.id??null:null,L=r?.findNodeWithElement(C.id),H=r&&!L?E1(C.ancestors(),V=>!!r.findNodeWithElement(V.id))?.id:null,M=L??(H&&r?.findNodeWithElement(H));return _1({id:k,parent:j??null,x:T.x,y:T.y,title:C.title,description:Fs(C.$element)??null,technology:C.technology,tags:[...C.tags],links:null,color:M?.color??C.color,shape:L?.shape??C.shape,icon:L?.icon??C.icon??"none",modelRef:C.id,kind:C.kind,level:p(k),labelBBox:{x:T.x,y:T.y,width:A,height:z},style:ud({...(L??M)?.style,...C.$element.style},["shape","color","icon"]),navigateTo:P,...I.length>0&&{depth:f(k)},children:I,width:A,height:z,column:R,ports:{in:g(k,"in",_),out:g(k,"out",$)}})});return{bounds:{x:Math.min(v,0),y:Math.min(w,0),width:n.graph().width??100,height:n.graph().height??100},nodes:x,edges:n.edges().reduce((k,C)=>{const _=n.edge(C),$=C.name;if(!$)return k;const{name:R,source:T,target:A,relationship:z,sourceHandle:j,targetHandle:I}=Q1(a,V=>V.name===$),P=z.title??"untitled",L=z.navigateTo?.id??null,H=Fs(z.$relationship)??null,M=z.technology??null;return k.push({id:R,source:T,sourceHandle:j,target:A,targetHandle:I,label:P,color:z.color,description:H,...L&&{navigateTo:L},...M&&{technology:M},points:_.points.map(V=>[V.x,V.y]),line:z.line,relationId:z.id,parent:null}),k},[])}}const dR=fe.raw({display:"inline-flex",alignItems:"center",padding:"[6px 2px 0 2px]","& .mantine-Text-root":{color:"mantine.colors.text/90",fontSize:"xs",fontWeight:500,lineHeight:"1.2"}}),JJ=fe({paddingLeft:"1",gridColumn:1},dR),LUe=fe({gridColumn:2},dR),eee=fe({gridColumn:3,paddingRight:"1"},dR),tee="likec4-edge-label",FUe=Ge(tee,fe({display:"grid",gridColumnStart:1,gridColumnEnd:4,borderBottom:"1px solid",borderBottomColor:"mantine.colors.defaultBorder",marginBottom:"0",padding:"[0 4px 5px 4px]",width:"100%","& .mantine-Text-root":{fontSize:"xxs",fontWeight:400,lineHeight:"xs",color:"mantine.colors.dimmed"}})),VUe=fe({display:"contents",[`&:last-child .${tee}`]:{borderBottom:"none",marginBottom:"0"},"& > *":{transition:"all 0.15s ease-in"},"&:is(:hover, [data-selected=true]) > *":{transition:"all 0.15s ease-out",cursor:"pointer",backgroundColor:"mantine.colors.defaultHover"}}),qUe=fe({display:"grid",gridTemplateColumns:"1fr 30px 1fr",gridAutoRows:"min-content max-content",gap:"0",alignItems:"stretch"});fe({display:"grid",gridTemplateColumns:"min-content 1fr",gridAutoRows:"min-content max-content",gap:"[10px 12px]",alignItems:"baseline",justifyItems:"start"});const HUe=fe({maxHeight:["70vh","calc(100cqh - 70px)"]}),UUe=({edge:e,view:r})=>{const n=sR(),o=S.useRef(null),i=r.nodes.find(s=>s.id===e.source),a=r.nodes.find(s=>s.id===e.target),l=r.edges.flatMap(s=>{const c=r.nodes.find(u=>u.id===s.source),d=r.nodes.find(u=>u.id===s.target);return c&&d?{id:s.id,source:c,target:d,label:s.label}:[]});return!i||!a||l.length===0?null:y.jsxs(br,{position:"bottom-start",shadow:"md",keepMounted:!0,withinPortal:!1,closeOnClickOutside:!0,clickOutsideEvents:["pointerdown","mousedown","click"],onOpen:()=>{setTimeout(()=>{o.current?.querySelector(`[data-edge-id="${e.id}"]`)?.scrollIntoView({behavior:"instant",block:"nearest"})},100)},children:[y.jsx(kd,{children:y.jsxs(Vn,{size:"xs",variant:"default",fw:"500",style:{padding:"0.25rem 0.75rem"},rightSection:y.jsx(tR,{size:16}),children:[y.jsx(Se,{className:JJ,maw:160,p:0,mod:{"likec4-color":i.color},children:y.jsx(it,{component:"span",truncate:!0,children:i.title})}),y.jsx(Ti,{color:"dark",variant:"transparent",size:"xs",children:y.jsx(hm,{style:{width:"80%"}})}),y.jsx(Se,{className:eee,maw:160,p:0,mod:{"likec4-color":a.color},children:y.jsx(it,{component:"span",truncate:!0,children:a.title})})]})}),y.jsx(Qs,{p:0,miw:250,maw:400,children:y.jsx(oi,{className:HUe,scrollbars:"y",type:"never",viewportRef:o,children:y.jsx(Se,{className:qUe,p:"xs",maw:400,children:l.map(s=>y.jsxs("div",{className:VUe,"data-selected":s.id===e.id,onClick:c=>{c.stopPropagation(),n.navigateTo(s.id)},children:[y.jsx(Se,{className:JJ,mod:{"edge-id":s.id,"likec4-color":s.source.color},children:y.jsx(it,{component:"span",truncate:!0,children:s.source.title})}),y.jsx(Se,{className:LUe,children:y.jsx(Ti,{color:"dark",variant:"transparent",size:"xs",children:y.jsx(hm,{style:{width:"80%"}})})}),y.jsx(Se,{className:eee,mod:{"likec4-color":s.target.color},children:y.jsx(it,{component:"span",truncate:!0,children:s.target.title})}),y.jsx(Se,{className:FUe,children:y.jsx(it,{component:"span",truncate:!0,children:s.label||"untitled"})})]},s.id))})})})]})},WUe=rR(e=>{const{enableNavigateTo:r}=sr(),{data:{navigateTo:n}}=e,[o,i,a]=Kx(e),l=Nt();return y.jsxs(a0,{...e,children:[y.jsx(l0,{edgeProps:e,svgPath:o}),y.jsx(S2,{edgeProps:e,labelPosition:{x:i,y:a,translate:"translate(-50%, 0)"},style:{maxWidth:Math.abs(e.targetX-e.sourceX-100)},children:y.jsx(i0,{edgeProps:e,children:r&&n&&y.jsx(_2,{...e,onClick:s=>{s.stopPropagation(),l.navigateTo(n)}})})})]})}),GUe=e=>{const{enableNavigateTo:r,enableVscode:n}=sr(),o=Nt(),i=E2(),a=[],{navigateTo:l,fqn:s}=e.data;return l&&r&&i!==l&&a.push({key:"navigate",icon:y.jsx(ba,{}),onClick:c=>{c.stopPropagation(),o.navigateTo(l)}}),s&&a.push({key:"relationships",icon:y.jsx(s0,{}),onClick:c=>{c.stopPropagation(),o.openRelationshipsBrowser(s)}}),s&&n&&a.push({key:"goToSource",icon:y.jsx(dm,{}),onClick:c=>{c.stopPropagation(),o.openSource({element:s})}}),y.jsx(C2,{buttons:a,...e})};function YUe(e,r){return e.id===r.id&&tt(e.type,r.type)&&tt(e.selected??!1,r.selected??!1)&&tt(e.dragging??!1,r.dragging??!1)&&tt(e.width??0,r.width??0)&&tt(e.height??0,r.height??0)&&tt(e.zIndex??0,r.zIndex??0)&&tt(e.data,r.data)}const ree=Symbol.for("isMemoized");function sc(e,r="Node"){if(e.hasOwnProperty(ree))return e;const n=S.memo(e,YUe);return n.displayName=r,Object.defineProperty(n,ree,{enumerable:!1,writable:!1,value:!0}),n}const nee=e=>{const r=Nt();return y.jsx(oR,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}})},XUe=sc(e=>{const{enableElementTags:r}=sr();return y.jsxs(um,{nodeProps:e,children:[y.jsx(pm,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx(nee,{...e}),y.jsx(GUe,{...e}),y.jsx(ZUe,{...e})]})}),KUe=sc(e=>y.jsxs(c0,{nodeProps:e,children:[y.jsx(nee,{...e}),y.jsx(d0,{...e}),y.jsx(QUe,{...e})]})),ZUe=({data:{ports:e,height:r}})=>y.jsxs(y.Fragment,{children:[e.in.map((n,o)=>y.jsx(Oo,{id:n,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${15+(o+1)*((r-30)/(e.in.length+1))}px`}},n)),e.out.map((n,o)=>y.jsx(Oo,{id:n,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${15+(o+1)*((r-30)/(e.out.length+1))}px`}},n))]}),QUe=({data:e})=>y.jsxs(y.Fragment,{children:[e.ports.in.map((r,n)=>y.jsx(Oo,{id:r,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r)),e.ports.out.map((r,n)=>y.jsx(Oo,{id:r,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r))]}),JUe={element:XUe,compound:KUe},eWe={relationship:WUe};function tWe({actorRef:e}){const r=S.useRef(null);return r.current==null&&(r.current={defaultNodes:[],defaultEdges:[]}),y.jsx(KJ.Provider,{value:e,children:y.jsx(lw,{...r.current,children:y.jsx(lm,{id:e.sessionId,inherit:!1,children:y.jsxs(Cn,{children:[y.jsx(iWe,{},"xyflow"),y.jsx(nWe,{},"sync")]})})})})}const rWe=e=>({...e.context.subject,viewId:e.context.viewId}),nWe=S.memo(()=>{const e=lR(),r=pn(e,rWe,tt),n=Fo(),o=n.findView(r.viewId)??null,i=S.useMemo(()=>{let s;if("edgeId"in r&&Zn(r.edgeId)){He(o,`view ${r.viewId} not found`);const c=mt(o.findEdge(r.edgeId),`edge ${r.edgeId} not found in ${r.viewId}`);s=NUe([c.id],o)}else if(r.source&&r.target)s=PUe({source:n.element(r.source),target:n.element(r.target)});else return null;return OUe(s,o)},[r,o,n]),a=vr(),l=pf();return S.useEffect(()=>{l.viewportInitialized&&e.send({type:"xyflow.init",instance:l,store:a})},[a,l.viewportInitialized,e]),S.useEffect(()=>{i!==null&&e.send({type:"update.layoutData",data:i})},[i,e]),null}),oWe=({context:e})=>({initialized:e.initialized.xydata&&e.initialized.xyflow,nodes:e.xynodes,edges:e.xyedges}),iWe=S.memo(()=>{const e=sR(),{initialized:r,nodes:n,edges:o}=ZJ(oWe,tt);return y.jsxs(s$,{id:e.rootElementId,nodes:n,edges:o,className:Ge(r?"initialized":"not-initialized","likec4-relationship-details"),nodeTypes:JUe,edgeTypes:eWe,onNodesChange:Qn(i=>{e.send({type:"xyflow.applyNodeChanges",changes:i})}),onEdgesChange:Qn(i=>{e.send({type:"xyflow.applyEdgeChanges",changes:i})}),fitViewPadding:.05,onNodeClick:Qn((i,a)=>{i.stopPropagation(),e.send({type:"xyflow.nodeClick",node:a})}),onEdgeClick:Qn((i,a)=>{i.stopPropagation(),e.send({type:"xyflow.edgeClick",edge:a})}),onPaneClick:Qn(()=>{e.send({type:"xyflow.paneClick"})}),onDoubleClick:Qn(()=>{e.send({type:"xyflow.paneDblClick"})}),onViewportResize:Qn(()=>{e.send({type:"xyflow.resized"})}),onEdgeMouseEnter:Qn((i,a)=>{a.data.hovered||e.send({type:"xyflow.edgeMouseEnter",edge:a})}),onEdgeMouseLeave:Qn((i,a)=>{a.data.hovered&&e.send({type:"xyflow.edgeMouseLeave",edge:a})}),onSelectionChange:Qn(i=>{e.send({type:"xyflow.selectionChange",...i})}),nodesDraggable:!1,nodesSelectable:!0,fitView:!1,pannable:!0,zoomable:!0,children:[y.jsx(lWe,{}),y.jsx(sd,{position:"top-right",children:y.jsx(lr,{variant:"default",color:"gray",onClick:i=>{i.stopPropagation(),e.close()},children:y.jsx(fp,{})})})]})}),aWe=({context:e})=>({subject:e.subject,viewId:e.viewId}),lWe=S.memo(()=>{const{subject:e,viewId:r}=ZJ(aWe,tt),n=Fo().findView(r);if(!n||!n.isDiagram())return null;const o=[...n.edges()];let i="edgeId"in e&&Zn(e.edgeId)?o.find(a=>a.id===e.edgeId):Q1(o,a=>a.source.element?.id===e.source&&a.target.element?.id===e.target)||Q1(o,a=>(a.source.element?.id===e.source||Yn(a.source.element?.id??"__",e.source??"__"))&&(a.target.element?.id===e.target||Yn(a.target.element?.id??"__",e.target??"__")));return i?y.jsx(sWe,{edge:i.$edge,view:n.$view}):null}),sWe=({edge:e,view:r})=>{const n=sR(),o=e.id,[i,a,{history:l,current:s}]=RH(e.id);S.useEffect(()=>{i!==o&&a.set(o)},[o]),S.useEffect(()=>{i!==o&&n.navigateTo(i)},[i]);const c=s>0,d=s+1{u.stopPropagation(),a.back()},children:y.jsx(VJ,{})})},"back"),d&&y.jsx(ma.div,{layout:!0,initial:{opacity:.05,transform:"translateX(5px)"},animate:{opacity:1,transform:"translateX(0)"},exit:{opacity:0,transform:"translateX(5px)"},children:y.jsx(lr,{variant:"default",color:"gray",onClick:u=>{u.stopPropagation(),a.forward()},children:y.jsx(Dd,{})})},"forward"),y.jsx(en,{gap:"xs",wrap:"nowrap",ml:"sm",children:y.jsx(UUe,{edge:e,view:r})})]})})})},cWe=e=>e.context.overlays.map(r=>{switch(r.type){case"relationshipsBrowser":return e.children[r.id]?{type:r.type,actorRef:e.children[r.id]}:null;case"relationshipDetails":return e.children[r.id]?{type:r.type,actorRef:e.children[r.id]}:null;case"elementDetails":return e.children[r.id]?{type:r.type,actorRef:e.children[r.id]}:null;default:Qo(r)}}).filter(Bq),dWe=(e,r)=>e.length===r.length&&e.every((n,o)=>n.actorRef===r[o].actorRef);function uWe({overlaysActorRef:e}){const r=Nt(),n=pn(e,cWe,dWe),o=AZ()??!1,i=n.some(s=>s.type==="elementDetails");S.useEffect(()=>{const s=r.getContext().xystore.getState().domNode?.querySelector(".react-flow__renderer");if(!s||o)return;const c=GOe(s,{opacity:i?.7:1,filter:i?"grayscale(1)":"grayscale(0)",transform:i?"perspective(400px) translateZ(-12px) translateY(3px)":"translateY(0)"},{duration:i?.35:.17});let d=null;return i||(d=setTimeout(()=>{s.style.transform="",s.style.filter="",d=null},450)),()=>{d&&clearTimeout(d),c.stop()}},[i]);const a=s=>{e.send({type:"close",actorId:s.id})},l=n.map((s,c)=>{switch(s.type){case"relationshipsBrowser":return y.jsx(p0,{overlayLevel:c,onClose:()=>a(s.actorRef),children:y.jsx(qJ,{actorRef:s.actorRef})},s.actorRef.sessionId);case"relationshipDetails":return y.jsx(p0,{overlayLevel:c,onClose:()=>a(s.actorRef),children:y.jsx(tWe,{actorRef:s.actorRef})},s.actorRef.sessionId);case"elementDetails":return y.jsx(DUe,{actorRef:s.actorRef,onClose:()=>a(s.actorRef)},s.actorRef.sessionId);default:Qo(s)}});return y.jsx(mp.Overlays,{children:y.jsx(QS,{onReset:()=>e.send({type:"close.all"}),children:y.jsx(lm,{children:y.jsx(Cn,{mode:"popLayout",children:l})})})})}const[pWe,Nd]=na("SearchActorContext"),hWe=e=>e.context.searchValue;function fWe(){const e=Nd(),r=pn(e,hWe),n=S.useCallback(o=>{e.send({type:"change.search",search:o})},[e]);return[r,n]}const mWe=e=>{const r=e.context.searchValue.trim().toLowerCase();return r.length>1?r:""};function uR(){const e=Nd();return S.useDeferredValue(pn(e,mWe))}function gWe(){const e=Nd();return S.useCallback(r=>{e.send({type:"change.search",search:r})},[e])}const yWe=e=>e.context.pickViewFor;function vWe(){const e=Nd();return pn(e,yWe)}const pR=fe.raw({outline:"none",background:"mantine.colors.primary[8]",borderColor:"mantine.colors.primary[9]"}),T2=".mantine-Tree-node:focus > .mantine-Tree-label &",bWe=fe.raw({display:"flex",width:"100%",background:"mantine.colors.body",rounded:"sm",padding:"[12px 8px 12px 14px]",minHeight:"60px",gap:"2",border:"1px solid",borderColor:"mantine.colors.defaultBorder",_hover:{...pR,borderColor:"mantine.colors.primary[9]",background:"mantine.colors.primary[8]/60"},_focus:pR,[T2]:pR,_dark:{borderColor:"transparent",background:"mantine.colors.dark[6]/80"},_light:{background:"mantine.colors.white/80",_hover:{borderColor:"mantine.colors.primary[6]",backgroundColor:"mantine.colors.primary[5]"}}}),j2="likec4-focusable",A2={ref:"var(--likec4-icon-size, 24px)"},xWe=fe.raw({color:{base:"mantine.colors.dimmed",_light:"mantine.colors.gray[5]",_groupHover:"mantine.colors.primary[0]",_groupFocus:"mantine.colors.primary[0]"},[T2]:{color:"mantine.colors.primary[0]"},flex:`0 0 ${A2.ref}`,height:A2.ref,width:A2.ref,display:"flex",alignItems:"center",justifyContent:"center",alignSelf:"flex-start","--ti-size":A2.ref,"& svg, & img":{width:"100%",height:"auto",maxHeight:"100%",pointerEvents:"none"},"& img":{objectFit:"contain"},"&.likec4-shape-icon svg":{strokeWidth:1.5}}),wWe=fe.raw({fontSize:"16px",fontWeight:500,lineHeight:"1.1",":where([data-disabled]) &":{opacity:.4},color:{base:"mantine.colors.dark[1]",_light:"mantine.colors.gray[7]",_groupHover:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"},_groupFocus:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"}},[T2]:{color:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"}}}),oee=fe.raw({color:{base:"mantine.colors.dimmed",_groupHover:{base:"mantine.colors.primary[1]",_light:"mantine.colors.primary[0]"},_groupFocus:"mantine.colors.primary[0]"},[T2]:{color:"mantine.colors.primary[0]"}}),kWe=fe.raw(oee,{marginTop:"1",fontSize:"12px",lineHeight:"1.4",":where([data-disabled]) &":{opacity:.85}}),_We=fe({width:"100%",height:"100%",border:"2px dashed",borderColor:"mantine.colors.defaultBorder",rounded:"md",display:"flex",justifyContent:"center",alignItems:"center",fontSize:"md",color:"mantine.colors.dimmed",padding:"md",paddingBlock:"xl"}),iee=A5e({slots:["root","icon","title","description","descriptionColor"],className:"search-button",base:{root:bWe,icon:xWe,title:wWe,description:kWe,descriptionColor:oee}}),hR="@container likec4-tree (max-width: 450px)",SWe=fe({outline:"none",marginBottom:"2"}),EWe=fe(LG.raw({containerName:"likec4-tree"}),{containerType:"inline-size",height:"100%"}),CWe=fe({display:"flex",alignItems:"baseline",outline:"none !important",gap:"1"}),$We=fe({marginTop:"2"}),RWe=fe({color:"mantine.colors.dimmed"}),zWe=fe({[hR]:{flexDirection:"column-reverse",alignItems:"flex-start",gap:"0.5"}}),TWe=fe({fontSize:"10px",lineHeight:"1.3",display:"block",fontWeight:500,whiteSpace:"nowrap",padding:"[1px 5px]",borderRadius:"4px",background:"mantine.colors.dark[9]/30",_light:{background:"mantine.colors.gray[3]/20"}}),jWe=fe({"--likec4-icon-size":"24px",[hR]:{"--likec4-icon-size":"18px"}}),AWe=fe({flex:0,fontSize:"10px",fontWeight:500,whiteSpace:"nowrap",lineHeight:"1.1",[hR]:{display:"none"}});function ka(e){e.stopPropagation(),e.preventDefault()}function aee(e){const r=e.getBoundingClientRect();return r.y+Math.floor(r.height/2)}function h0(e){if(!e){console.error("moveFocusToSearchInput: from is null or undefined");return}const r=e.getRootNode();if(!ey(r.querySelector)){console.error("moveFocusToSearchInput: root.querySelector is not a function");return}let n=r.querySelector("[data-likec4-search-input]");if(n){const o=n.value.length;n.focus(),n.setSelectionRange(o,o)}}function D2(e){if(!e){console.error("focusToFirstFoundElement: from is null or undefined");return}const r=e.getRootNode();if(!ey(r.querySelector)){console.error("focusToFirstFoundElement: root.querySelector is not a function");return}r.querySelector(`[data-likec4-search] .${j2}`)?.focus()}function lee(e,r,n=`.${j2}`){if(!e)return console.error("queryAllFocusable: from is null or undefined"),[];const o=e.getRootNode();return ey(o.querySelectorAll)?[...o.querySelectorAll(`[data-likec4-search-${r}] ${n}`)]:(console.error("queryAllFocusable: root.querySelectorAll is not a function"),[])}function see(e){setTimeout(e,300)}const DWe="likec4-view-btn",MWe=Ge(fe({flexWrap:"nowrap",display:"flex","&[data-disabled] .mantine-ThemeIcon-root":{opacity:.45}}),DWe);fe({marginTop:"1",fontSize:"13px",lineHeight:"1.4",":where(.likec4-view-btn[data-disabled]) &":{opacity:.85}});const cee=()=>y.jsx(hr,{className:_We,children:"Nothing found"}),NWe=S.memo(()=>{const e=S.useRef(null);let r=[...Fo().views()],n=uR();return n&&(n.startsWith("kind:")?r=[]:r=r.filter(o=>n.startsWith("#")?o.tags.some(i=>i.toLocaleLowerCase().includes(n.slice(1))):`${o.id} ${o.title} ${o.description.text}`.toLocaleLowerCase().includes(n))),y.jsxs(Lo,{ref:e,renderRoot:o=>y.jsx(Rr,{layout:!0,...o}),gap:8,"data-likec4-search-views":!0,onKeyDown:o=>{if(o.key==="ArrowLeft"||o.key==="ArrowRight"){const i=o.target.getBoundingClientRect().y,a=lee(e.current,"elements",".likec4-element-button");let l=a.length>1?a.find((s,c,d)=>aee(s)>i||c===d.length-1):null;l??=hf(a),l&&(o.stopPropagation(),l.focus());return}},children:[r.length===0&&y.jsx(cee,{}),r.length>0&&y.jsx(o3,{children:y.jsx(pr,{"data-likec4-view":!0,tabIndex:-1,onFocus:o=>{o.stopPropagation(),h0(e.current)}})}),r.map((o,i)=>y.jsx(Rr,{layoutId:`@view${o.id}`,children:y.jsx(fR,{view:o,search:n,tabIndex:i===0?0:-1})},o.id))]})}),M2=iee();function fR({className:e,view:r,loop:n=!1,search:o,focusOnElement:i,...a}){const l=Nd(),s=Nt(),c=r.id,d=E2(),u=c===d,p=()=>{l.send({type:"close"}),see(()=>{if(u&&i){s.focusOnElement(i);return}s.navigateTo(c,void 0,i)})};return y.jsxs(pr,{...a,className:Ge(M2.root,"group",j2,MWe,e),"data-likec4-view":r.id,...u&&!i&&{"data-disabled":!0},onClick:f=>{f.stopPropagation(),p()},onKeyDown:iy({siblingSelector:"[data-likec4-view]",parentSelector:"[data-likec4-search-views]",activateOnFocus:!1,loop:n,orientation:"vertical",onKeyDown:f=>{f.nativeEvent.code==="Space"&&(f.stopPropagation(),p())}}),children:[y.jsx(Ti,{variant:"transparent",className:M2.icon,children:r.isDeploymentView()?y.jsx(aR,{stroke:1.8}):y.jsx(ba,{stroke:1.8})}),y.jsxs(hr,{style:{flexGrow:1},children:[y.jsxs(en,{gap:"xs",wrap:"nowrap",align:"center",children:[y.jsx(tc,{component:"div",highlight:o,className:M2.title,children:r.title||"untitled"}),u&&y.jsx(ec,{size:"xs",fz:9,radius:"sm",children:"current"})]}),y.jsx(tc,{highlight:r.description.nonEmpty?o:"",component:"div",className:M2.description,lineClamp:1,children:r.description.text||"No description"})]})]})}const mm=iee(),PWe=S.memo(()=>{const e=Fo(),r=uR(),n=S.useMemo(()=>{const i=r.split(".");let a;tp(i)||i[0]==="kind:"?a=e.elements():a=Is(e.elements(),d=>r.startsWith("kind:")?d.kind.toLocaleLowerCase().startsWith(r.slice(5)):r.startsWith("#")?d.tags.some(u=>u.toLocaleLowerCase().includes(r.slice(1))):(d.title+" "+d.id+" "+d.summary.text).toLocaleLowerCase().includes(r));const l={},{all:s,roots:c}=Jr([...a],Jc,mw((d,u)=>{const p={label:u.title,value:u.id,element:u,searchTerms:i,children:[]};l[p.value]=p;const f=d.all.findLast(g=>Yn(g.value,p.value));return f?(f.children.push(p),f.children.length>1&&f.children.sort(o0)):d.roots.push(p),d.all.push(p),d},{all:[],roots:[]}));return{all:s,byid:l,roots:c.sort(o0)}},[e,r]),o=dee();return n.all.length===0?y.jsx(cee,{}):y.jsx(IWe,{data:n,handleClick:o})}),BWe=()=>{};function IWe({data:{all:e,byid:r,roots:n},handleClick:o}){const i=_y({multiple:!1});i.setHoveredNode=BWe,S.useEffect(()=>{i.collapseAllNodes();for(const l of e)l.children.length>0&&i.expand(l.value)},[e]);const a=at(l=>{const s=l.target,c=s.getAttribute("data-value"),d=!!c&&r[c];if(d){if(l.key==="ArrowUp"){c===n[0]?.value&&(ka(l),h0(s));return}if(l.key==="ArrowRight"){if(d.children.length>0&&i.expandedState[c]===!1)return;const u=(l.target.querySelector(".mantine-Tree-label")??s).getBoundingClientRect().y,p=lee(s,"views");let f=p.length>1?p.find((g,v,w)=>aee(g)>u||v===w.length-1):null;f??=hf(p),f&&(ka(l),f.focus());return}if(l.key===" "||l.key==="Enter"){ka(l),o(d.element);return}}});return y.jsx(Ff,{"data-likec4-search-elements":!0,allowRangeSelection:!1,clearSelectionOnOutsideClick:!0,selectOnClick:!1,tree:i,data:n,levelOffset:"lg",classNames:{root:EWe,node:Ge(j2,SWe),label:CWe,subtree:$We},onKeyDownCapture:a,renderNode:OWe})}function OWe({node:e,elementProps:r,hasChildren:n,expanded:o}){const{element:i,searchTerms:a}=e,l=G5e({element:{id:i.id,title:i.title,shape:i.shape,icon:i.icon},className:Ge(mm.icon,jWe)}),s=[...i.views()],c=dee(),d=`@tree.${e.value}`;return y.jsxs(Rr,{layoutId:d,...r,children:[y.jsx(lr,{variant:"transparent",size:16,tabIndex:-1,className:Ge(RWe),style:{visibility:n?"visible":"hidden"},children:y.jsx(Dd,{stroke:3.5,style:{transition:"transform 150ms ease",transform:`rotate(${o?"90deg":"0"})`,width:"100%"}})}),y.jsxs(pr,{component:wa,layout:!0,tabIndex:-1,"data-value":i.id,className:Ge(mm.root,"group","likec4-element-button"),...s.length>0&&{onClick:u=>{(!n||o)&&(u.stopPropagation(),c(i))}},children:[l,y.jsxs(Se,{style:{flexGrow:1},children:[y.jsxs(en,{gap:"xs",wrap:"nowrap",align:"center",className:zWe,children:[y.jsx(tc,{component:"div",highlight:a,className:mm.title,children:e.label}),y.jsx(_n,{label:i.id,withinPortal:!1,fz:"xs",disabled:!i.id.includes("."),children:y.jsx(tc,{component:"div",highlight:a,className:Ge(TWe,mm.descriptionColor),children:Jg(i.id)})})]}),y.jsx(tc,{component:"div",highlight:a,className:mm.description,lineClamp:1,children:i.summary.text||"No description"})]}),y.jsx(it,{component:"div",className:Ge(AWe,mm.descriptionColor),fz:"xs",children:s.length===0?"No views":y.jsxs(y.Fragment,{children:[s.length," view",s.length>1?"s":""]})})]})]})}function dee(){const e=Nt(),r=Nd();return at(n=>{const o=[...n.views()];if(o.length===0)return;const i=n.id,a=fw(o)?.id;if(!a){r.send({type:"pickview.open",elementFqn:i});return}const l=a===e.currentView.id;r.send({type:"close"}),see(()=>{if(l){e.focusOnElement(i);return}e.navigateTo(a,void 0,i)})})}const LWe=fe({border:"transparent",background:{base:"transparent",_focusWithin:{base:"mantine.colors.gray[4]/55 !important",_dark:"mantine.colors.dark[5]/55 !important"},_groupHover:{base:"mantine.colors.gray[3]/35",_dark:"mantine.colors.dark[5]/35"}}}),FWe=fe({position:"absolute",inset:"0",width:"100%",height:"100%",backgroundColor:"[rgb(34 34 34 / 0.7)]",zIndex:902,backdropFilter:"auto",backdropBlur:"10px",_light:{backgroundColor:"[rgb(255 255 255 / 0.6)]"}}),VWe=fe({position:"absolute",top:"[2rem]",left:"[50%]",width:"100%",maxWidth:"600px",minWidth:"200px",transform:"translateX(-50%)",zIndex:903}),uee=fe({marginTop:"2","& + &":{marginTop:"[32px]"}});fe({height:["100%","100cqh"],"& .mantine-ScrollArea-viewport":{minHeight:"100%","& > div":{minHeight:"100%",height:"100%"}}});function qWe({elementFqn:e}){const r=Nd(),n=Fo().element(e),o=[],i=[];for(const l of n.views())l.viewOf===n?o.push(l):i.push(l);const a=()=>{r.send({type:"pickview.close"})};return kf("keydown",l=>{try{l.key==="Escape"&&(l.stopPropagation(),l.preventDefault(),a())}catch(s){console.warn(s)}},{capture:!0}),y.jsxs(y.Fragment,{children:[y.jsx(Rr,{className:FWe,onClick:l=>{l.stopPropagation(),a()}},"pickview-backdrop"),y.jsx(l3,{children:y.jsxs(Rr,{initial:{opacity:0,scale:.95,originY:0,translateX:"-50%",translateY:-20},animate:{opacity:1,scale:1,translateY:0},exit:{opacity:0,scale:.98,translateY:-20,transition:{duration:.1}},className:VWe,"data-likec4-search-views":!0,children:[y.jsxs(en,{px:"sm",py:"md",justify:"space-between",children:[y.jsx(pp,{order:2,lh:1,children:"Select view"}),y.jsx(lr,{size:"md",variant:"default",onClick:l=>{l.stopPropagation(),a()},children:y.jsx(fp,{})})]}),y.jsxs(oi,{mah:"calc(100vh - 110px)",type:"never",children:[o.length>0&&y.jsxs(Lo,{gap:"sm",px:"sm",className:uee,children:[y.jsx(pp,{order:6,c:"dimmed",children:"scoped views of the element"}),o.map((l,s)=>y.jsx(fR,{view:l,search:"",loop:!0,focusOnElement:e,mod:{autofocus:s===0}},l.id))]}),i.length>0&&y.jsxs(Lo,{gap:"sm",px:"sm",className:uee,children:[y.jsx(pp,{order:6,c:"dimmed",children:"views including this element"}),i.map((l,s)=>y.jsx(fR,{view:l,search:"",loop:!0,focusOnElement:e,mod:{autofocus:s===0&&o.length===0}},l.id))]})]})]},"pickview")})]})}function HWe(){const e=S.useRef(null);let r=Fo().tagsSortedByUsage,n=gWe(),o=uR(),i=r.length,a=!1;if(o.startsWith("#")){const l=o.slice(1);r=r.filter(({tag:s})=>s.toLocaleLowerCase().includes(l)),a=r.length!==i}return r.length===0?null:(r=r.slice(0,15),y.jsxs(Or,{ref:e,css:{gap:"md",paddingLeft:"[48px]",flexWrap:"nowrap"},children:[y.jsx(Or,{css:{gap:"1.5",flexWrap:"wrap",opacity:a?1:.3,grayscale:a?0:.9,filter:"auto",transition:"fast",_groupHover:{opacity:1,grayscale:0},_groupFocusWithin:{opacity:1,grayscale:0}},children:r.map(({tag:l})=>y.jsx(u2,{tag:l,className:fe({userSelect:"none",cursor:"pointer"}),onClick:s=>{s.stopPropagation(),n(`#${l}`),setTimeout(()=>{D2(e.current)},350)}},l))}),a&&y.jsx(Vn,{size:"compact-xs",variant:"light",onClick:l=>{l.stopPropagation(),n(""),h0(e.current)},rightSection:y.jsx(fp,{size:14}),children:"Clear"})]}))}const UWe=[["path",{d:"M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0",key:"svg-0"}],["path",{d:"M21 21l-6 -6",key:"svg-1"}]],mR=wt("outline","search","Search",UWe);function pee(e){return e.match(/^(k|ki|kin|kind|kind:)$/)!=null}const WWe=["#","kind:"],GWe=S.memo(()=>{const e=Nd(),r=Fo(),n=S.useRef(null),{ref:o,focused:i}=kze(),[a,l]=fWe(),s=IW({scrollBehavior:"smooth",loop:!1});kf("keydown",u=>{try{!i&&(u.key==="Backspace"||u.key.startsWith("Arrow")||u.key.match(new RegExp("^\\p{L}$","u")))&&h0(n.current)}catch(p){console.warn(p)}});let c=[],d=!1;switch(!0){case a.startsWith("#"):{const u=a.toLocaleLowerCase().slice(1),p=r.tags.filter(f=>f.toLocaleLowerCase().includes(u));p.length===0?(d=!1,c=[y.jsx(fy,{children:"No tags found"},"empty-tags")]):(d=r.tags.some(f=>f.toLocaleLowerCase()===u),c=p.map(f=>y.jsxs(my,{value:`#${f}`,children:[y.jsx(it,{component:"span",opacity:.5,mr:1,fz:"sm",children:"#"}),f]},f)));break}case a.startsWith("kind:"):case pee(a):{const u=a.length>5?a.slice(5).toLocaleLowerCase():"";let p=l9(r.specification.elements);u&&(p=p.filter(f=>f.toLocaleLowerCase().includes(u))),p.length===0?(d=!1,c=[y.jsx(fy,{children:"No kinds found"},"empty-kinds")]):(d=p.some(f=>f.toLocaleLowerCase()===u),c=p.map(f=>y.jsxs(my,{value:`kind:${f}`,children:[y.jsx(it,{component:"span",opacity:.5,mr:1,fz:"sm",children:"kind:"}),f]},f)));break}}return y.jsxs(eo,{onOptionSubmit:u=>{l(u),s.resetSelectedOption(),WWe.includes(u)||(s.closeDropdown(),setTimeout(()=>{D2(n.current)},350))},width:"max-content",position:"bottom-start",shadow:"md",offset:{mainAxis:4,crossAxis:50},store:s,withinPortal:!1,children:[y.jsx(kS,{children:y.jsx(zi,{ref:$r(n,o),placeholder:"Search by title, description or start with # or kind:",autoFocus:!0,"data-autofocus":!0,"data-likec4-search-input":!0,tabIndex:0,classNames:{input:LWe},size:"lg",value:a,leftSection:y.jsx(mR,{style:{width:$e(20)},stroke:2}),rightSection:y.jsx(zi.ClearButton,{onClick:u=>{u.stopPropagation();const p=e.getSnapshot().context.openedWithSearch;a===""||a===p?e.send({type:"close"}):l("")}}),rightSectionPointerEvents:"auto",onChange:u=>{l(u.currentTarget.value),s.openDropdown(),s.updateSelectedOptionIndex()},onClick:()=>s.openDropdown(),onFocus:()=>s.openDropdown(),onBlur:()=>s.closeDropdown(),onKeyDownCapture:u=>{if(u.key==="Tab"){switch(!0){case s.getSelectedOptionIndex()>=0:return s.clickSelectedOption(),ka(u);case c.length===1:return s.selectFirstOption()&&s.clickSelectedOption(),ka(u);case pee(a):return l("kind:"),ka(u)}return}if(u.key==="Backspace"&&s.dropdownOpened){if(a==="kind:")return l(""),s.resetSelectedOption(),ka(u);if(a.startsWith("kind:")&&d)return l("kind:"),s.resetSelectedOption(),ka(u);if(a.startsWith("#")&&d)return l("#"),s.resetSelectedOption(),ka(u)}if(u.key==="Escape"&&s.dropdownOpened&&c.length>0){ka(u),s.closeDropdown();return}if(u.key==="ArrowUp"&&s.dropdownOpened&&a===""&&s.getSelectedOptionIndex()===0){s.closeDropdown(),ka(u);return}if(u.key==="ArrowDown"&&(!s.dropdownOpened||c.length===0||d||a===""&&s.getSelectedOptionIndex()===c.length-1)){s.closeDropdown(),ka(u),D2(n.current);return}}})}),y.jsx(m3,{hidden:c.length===0,style:{minWidth:300},children:y.jsx(g3,{children:y.jsx(oi,{mah:"min(322px, calc(100cqh - 50px))",type:"scroll",children:c})})})]})}),YWe=fe({backgroundColor:"[rgb(34 34 34 / var(--_opacity, 95%))]",_light:{backgroundColor:"[rgb(250 250 250 / var(--_opacity, 95%))]"},backdropFilter:"auto",backdropBlur:"var(--_blur, 10px)"}),XWe=fe({width:"100%",height:"100%",maxHeight:"100vh",overflow:"hidden",display:"flex",flexDirection:"column",justifyContent:"stretch",gap:"sm",paddingTop:"[20px]",paddingLeft:"md",paddingRight:"md",paddingBottom:"sm",background:"[transparent]"}),KWe=e=>!e.matches("inactive");function ZWe({searchActorRef:e}){const r=pn(e,KWe),n=()=>{e.send({type:"open"})},o=at(()=>{e.send({type:"close"})});return bze([["mod+k",n,{preventDefault:!0}],["mod+f",n,{preventDefault:!0}]]),y.jsx(pWe,{value:e,children:y.jsx(mp.Overlays,{children:y.jsx(HG,{FallbackComponent:UG,onReset:o,children:y.jsx(Cn,{children:r&&y.jsx(p0,{fullscreen:!0,withBackdrop:!1,backdrop:{opacity:.9},classes:{dialog:YWe,body:XWe},openDelay:0,onClose:o,"data-likec4-search":"true",children:y.jsx(QWe,{searchActorRef:e})})})})})})}const hee=fe({height:["100%","100cqh"],"& .mantine-ScrollArea-viewport":{minHeight:"100%","& > div":{minHeight:"100%",height:"100%"}}}),QWe=({searchActorRef:e})=>{const r=S.useRef(null),n=vWe();return wx(()=>{Zn(e.getSnapshot().context.openedWithSearch)&&D2(r.current)},150),y.jsxs(hr,{ref:r,display:"contents",children:[y.jsx(en,{className:"group",wrap:"nowrap",onClick:o=>{o.stopPropagation(),h0(r.current)},children:y.jsxs(hp,{flex:1,px:"sm",children:[y.jsx(GWe,{}),y.jsx(HWe,{})]})}),y.jsxs(yy,{children:[y.jsx(cp,{span:6,children:y.jsx(pp,{component:"div",order:6,c:"dimmed",pl:"sm",children:"Elements"})}),y.jsx(cp,{span:6,children:y.jsx(pp,{component:"div",order:6,c:"dimmed",pl:"sm",children:"Views"})})]}),y.jsxs(yy,{className:fe({containerName:"likec4-search-elements",containerType:"size",overflow:"hidden",flexGrow:1}),children:[y.jsx(cp,{span:6,children:y.jsx(es,{type:"scroll",className:hee,pr:"xs",scrollbars:"y",children:y.jsx(Cn,{children:y.jsx(lm,{id:"likec4-search-elements",children:y.jsx(PWe,{})})})})}),y.jsx(cp,{span:6,children:y.jsx(es,{type:"scroll",className:hee,pr:"xs",scrollbars:"y",children:y.jsx(Cn,{children:y.jsx(lm,{id:"likec4-search-views",children:y.jsx(NWe,{})})})})})]}),n&&y.jsx(qWe,{elementFqn:n})]})};function JWe({children:e}){const r=S.useContext(WS);if(!r)throw new Error("PortalToContainer must be used within RootContainer");return y.jsx(py,{target:r.ref.current??`#${r.id}`,children:e})}const fee={onNavigateTo:null,onNodeClick:null,onNodeContextMenu:null,onCanvasContextMenu:null,onEdgeClick:null,onEdgeContextMenu:null,onCanvasClick:null,onCanvasDblClick:null,onBurgerMenuClick:null,onOpenSource:null,onInitialized:null,onLayoutTypeChange:null},gR=l9(fee),mee=S.createContext({...hw(gR,e=>[e,null]),handlersRef:{current:fee}});function eGe({handlers:e,children:r}){const n=Zh(e),o=gR.map(a=>ey(e[a])),i=S.useMemo(()=>({...hw(gR,a=>n.current[a]?[a,(...l)=>n.current[a]?.(...l)]:[a,null]),handlersRef:n}),[n,...o]);return y.jsx(mee.Provider,{value:i,children:r})}function gm(){return S.useContext(mee)}const gee=(e,r)=>e.find(o=>"modelFqn"in o.data&&o.data.modelFqn===r)||null;function zr(e){return{get overlaysActorRef(){return e.get("overlays")??null},get diagramActorRef(){return mt(e.get("diagram"),"Diagram actor not found")},get searchActorRef(){return e.get("search")??null},get editorActorRef(){return e.get("editor")??null}}}zr.editorActor=({system:e})=>e.get("editor"),zr.overlaysActor=({system:e})=>e.get("overlays"),zr.diagramActor=({system:e})=>e.get("diagram"),zr.searchActor=({system:e})=>e.get("search");function ym(e,r){return e.view.nodes.find(n=>n.id===r)??null}function yR(e,r){return e.view.edges.find(n=>n.id===r)??null}function tGe(e){const r=new Map,n=e.context.xynodes.reduce((o,i)=>{let a=i.position;if(i.parentId){const c=r.get(i.parentId)??{x:0,y:0};a={x:a.x+c.x,y:a.y+c.y}}if(r.set(i.id,a),i.hidden||i.data.dimmed)return o;const l=i.measured?.width??i.width??i.initialWidth,s=i.measured?.height??i.height??i.initialHeight;return o.minX=Math.min(o.minX,a.x),o.minY=Math.min(o.minY,a.y),o.maxX=Math.max(o.maxX,a.x+l),o.maxY=Math.max(o.maxY,a.y+s),o},{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0});return n.minX===1/0?{bounds:e.context.view.bounds}:{duration:350,bounds:{x:n.minX-10,y:n.minY-10,width:n.maxX-n.minX+20,height:n.maxY-n.minY+20}}}const rGe=32;function nGe(e){const r=mt(e.context.activeWalkthrough),n=mt(e.context.xyedges.find(c=>c.id===r.stepId)),o=e.context.xystore.getState(),i=mt(o.nodeLookup.get(n.source)),a=mt(o.nodeLookup.get(n.target)),l=EF([i,a],o);let s;if(r.parallelPrefix){const c=e.context.xynodes.find(d=>d.type==="seq-parallel"&&d.data.parallelPrefix===r.parallelPrefix);c&&(s={x:c.position.x,y:c.position.y,..._o(c)})}return s??=oGe(n,o),s?s=ko.merge(s,l):s=l,{duration:350,bounds:ko.expand(s,rGe)}}function oGe(e,r){const n=r.nodeLookup.get(e.source),o=r.nodeLookup.get(e.target);if(!n||!o)return null;const i=WF({id:e.id,sourceNode:n,targetNode:o,sourceHandle:e.sourceHandle||null,targetHandle:e.targetHandle||null,connectionMode:r.connectionMode});return i?ko.fromPoints([[i.sourceX,i.sourceY],[i.targetX,i.targetY]]):null}function vR(e){switch(e.type){case"element":case"compound-element":case"seq-actor":return e.data.modelFqn;case"deployment":case"compound-deployment":return e.data.modelFqn??e.data.deploymentFqn;case"seq-parallel":case"view-group":return null;default:Qo(e)}}function iGe(e,r){const n=e.lastOnNavigate?.fromNode,o=n&&e.xynodes.find(l=>l.id===n),i=o&&vR(o),a=i&&r.xynodes.find(l=>vR(l)===i);return{fromNode:o,toNode:a}}function aGe(e,r){let{width:n,height:o,transform:i}=e.xystore.getState();const a=Math.max(i[2],1);return Ws(r,n,o,xa,a,e.fitViewPadding)}const lGe=ns({delays:{"open timeout":({context:e})=>e.openTimeout,"close timeout":600,"long idle":1500},actions:{"update edgeId":Bt(({context:e,event:r})=>(ht(r,["xyedge.select","xyedge.mouseEnter"]),{edgeId:r.edgeId,edgeSelected:e.edgeSelected||r.type==="xyedge.select"})),"increase open timeout":Bt(()=>({openTimeout:800})),"decrease open timeout":Bt(()=>({openTimeout:300})),"reset edgeId":Bt({edgeId:null,edgeSelected:!1})},guards:{"edge was selected":({context:e})=>e.edgeSelected,"edge was hovered":({context:e})=>!e.edgeSelected}}).createMachine({id:"breadcrumbs",context:()=>({edgeId:null,edgeSelected:!1,openTimeout:800}),initial:"idle",on:{close:{target:"#idle",actions:["reset edgeId","increase open timeout"]}},states:{idle:{id:"idle",on:{"xyedge.mouseEnter":{target:"opening",actions:"update edgeId"},"xyedge.select":{target:"active",actions:"update edgeId"}},after:{"long idle":{actions:"increase open timeout"}}},opening:{on:{"xyedge.mouseLeave":{target:"idle"},"xyedge.select":{target:"active",actions:"update edgeId"}},after:{"open timeout":{actions:"decrease open timeout",target:"active"}}},active:{tags:["opened"],initial:"opened",exit:"reset edgeId",on:{"xyedge.unselect":{target:"idle",actions:"increase open timeout"},"xyedge.select":{actions:"update edgeId"}},states:{opened:{on:{"dropdown.mouseEnter":{target:"hovered"},"xyedge.mouseLeave":{guard:"edge was hovered",target:"closing"}}},hovered:{on:{"dropdown.mouseLeave":[{guard:"edge was selected",target:"opened"},{target:"closing"}]}},closing:{on:{"xyedge.mouseEnter":{guard:"edge was hovered",target:"opened",actions:"update edgeId"},"xyedge.select":{target:"opened",actions:"update edgeId"},"dropdown.mouseEnter":{target:"hovered"}},after:{"close timeout":{target:"#idle"}}}}}}}),sGe=lGe,yee=fe({display:"block",fontSize:"xxs",fontWeight:500,whiteSpace:"nowrap",paddingX:"1",paddingY:"0.5",borderRadius:"[2px]",background:{_light:"var(--likec4-palette-fill)/90",_dark:"var(--likec4-palette-fill)/60"},lineHeight:"1",color:{_light:"var(--likec4-palette-hiContrast)",_dark:"var(--likec4-palette-loContrast)"}}),cGe=fe({whiteSpaceCollapse:"preserve-breaks",fontSize:"sm",lineHeight:"sm",userSelect:"all"});function dGe(e){let r=null;for(const n of e.xyedges)if(n.selected){if(r){r=null;break}r=n.data.id}return{viewId:e.view.id,selected:r}}const uGe=S.memo(()=>{const e=Fo(),r=vE(sGe),n=Nt(),{viewId:o,selected:i}=pa(dGe),a=pn(r,g=>g.hasTag("opened")?g.context.edgeId:null);ji("navigateTo",()=>{r.send({type:"close"})}),ji("edgeMouseEnter",({edge:g})=>{r.send({type:"xyedge.mouseEnter",edgeId:g.data.id})}),ji("edgeMouseLeave",()=>{r.send({type:"xyedge.mouseLeave"})}),ji("walkthroughStarted",()=>{r.send({type:"close"})}),S.useEffect(()=>{i?r.send({type:"xyedge.select",edgeId:i}):r.send({type:"xyedge.unselect"})},[i]);const l=S.useCallback(g=>{if(!a)return;r.send({type:"dropdown.mouseEnter"});const v=n.findEdge(a);v&&!v.data.hovered&&n.send({type:"xyflow.edgeMouseEnter",edge:v,event:g})},[r,n,a]),s=S.useCallback(g=>{if(!a)return;r.send({type:"dropdown.mouseLeave"});const v=n.findEdge(a);v?.data.hovered&&n.send({type:"xyflow.edgeMouseLeave",edge:v,event:g})},[r,n,a]),{diagramEdge:c,sourceNode:d,targetNode:u}=pa(g=>{const v=a?yR(g,a):null,w=v?ym(g,v.source):null,x=v?ym(g,v.target):null;return{diagramEdge:v,sourceNode:w,targetNode:x}},Ir,[a]);if(!c||!d||!u||tp(c.relations))return null;const[p,f]=Jr(c.relations,un(g=>{try{return e.relationship(g)}catch(v){return console.error(`View is cached and likec4model missing relationship ${g} from ${d.id} -> ${u.id}`,v),null}}),ep(Zn),qq(g=>g.source.id===d.id&&g.target.id===u.id));return p.length===0&&f.length===0?(console.warn("No relationships found diagram edge",{diagramEdge:c,sourceNode:d,targetNode:u}),null):y.jsx(JWe,{children:y.jsx(fGe,{viewId:o,direct:p,nested:f,diagramEdge:c,sourceNode:d,targetNode:u,onMouseEnter:l,onMouseLeave:s})})}),pGe=(e,r)=>r?.querySelector(`.likec4-edge-label[data-edge-id="${e}"]`)??r?.querySelector(`.likec4-edge-middle-point[data-edge-id="${e}"]`)??null,hGe=8,fGe=({viewId:e,diagramEdge:r,direct:n,nested:o,sourceNode:i,targetNode:a,onMouseEnter:l,onMouseLeave:s})=>{const c=S.useRef(null),{enableNavigateTo:d,enableVscode:u,enableCompareWithLatest:p}=sr(),{onOpenSource:f}=gm(),g=dNe(),[v,w]=S.useState(null);S.useLayoutEffect(()=>{w(pGe(r.id,g.current))},[r]),S.useEffect(()=>{const C=v,_=c.current;if(!C||!_)return;let $=!1;const R=Kw(C,_,()=>{$U(C,_,{placement:"bottom-start",middleware:[_U(4),Zje({crossAxis:!0,allowedPlacements:["bottom-start","bottom-end","left-start","top-start","top-end","right-start","right-end","left-end"]}),SU({apply({availableHeight:T,availableWidth:A,elements:z}){$||Object.assign(z.floating.style,{maxWidth:`${ta(Md(A),{min:220,max:400})}px`,maxHeight:`${ta(Md(T),{min:100,max:500})}px`})}}),EU({padding:hGe*2})]}).then(({x:T,y:A,middlewareData:z})=>{$||(_.style.transform=`translate(${Md(T)}px, ${Md(A)}px)`,_.style.visibility=z.hide?.referenceHidden?"hidden":"visible")})},{ancestorResize:!1,animationFrame:!0});return()=>{$=!0,R()}},[v]);const x=Nt(),k=S.useCallback((C,_)=>y.jsxs(S.Fragment,{children:[_>0&&y.jsx(sp,{}),y.jsx(gGe,{viewId:e,relationship:C,sourceNode:i,targetNode:a,onNavigateTo:d?$=>{x.navigateTo($)}:void 0,...f&&u&&{onOpenSource:()=>f({relation:C.id})}})]},C.id),[e,i,a,x,d,f,u]);return y.jsx(oi,{ref:c,onMouseEnter:l,onMouseLeave:s,type:"auto",scrollbars:"y",scrollbarSize:6,styles:{viewport:{overscrollBehavior:"contain",minWidth:200,minHeight:40}},className:Ge(fe({layerStyle:"likec4.dropdown",p:"0",pointerEvents:{base:"all",_whenPanning:"none"},position:"absolute",top:"0",left:"0",width:"max-content",cursor:"default"})),children:y.jsxs(hp,{css:{gap:"3",padding:"4",paddingTop:"2"},children:[p&&y.jsx(mGe,{diagramEdge:r}),y.jsx(Vn,{variant:"default",color:"gray",size:"compact-xs",style:{alignSelf:"flex-start",fontWeight:500,"--button-fz":"var(--font-sizes-xxs)"},onClick:C=>{C.stopPropagation(),x.openRelationshipDetails(r.id)},children:"browse relationships"}),n.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(vm,{children:"DIRECT RELATIONSHIPS"}),n.map(k)]}),o.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(vm,{css:{mt:n.length>0?"2":"0"},children:"RESOLVED FROM NESTED"}),o.map(k)]})]})})},mGe=({diagramEdge:e})=>{const r=e.drifts;return!r||r.length===0?null:y.jsx(xy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"Changes:",children:r.map(n=>y.jsxs(it,{mt:2,size:"sm",lh:"xs",children:["- ",n]},n))})},gGe=S.forwardRef(({viewId:e,relationship:r,sourceNode:n,targetNode:o,onNavigateTo:i,onOpenSource:a},l)=>{const s=vee(r,"source",n),c=vee(r,"target",o),d=i&&r.navigateTo?.id!==e?r.navigateTo?.id:void 0,u=r.links,p=r.hasMetadata()?uw(r.getMetadata()).sort(([g],[v])=>g.localeCompare(v)):null,f=p&&y.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[y.jsx("div",{style:{fontWeight:600,fontSize:"10px",color:"#868e96",marginBottom:"2px",letterSpacing:"0.5px",textTransform:"uppercase"},children:"Metadata"}),y.jsx("div",{style:{borderTop:"1px solid rgba(0, 0, 0, 0.1)",paddingTop:"6px",display:"flex",flexDirection:"column",gap:"6px"},children:p.map(([g,v])=>{const w=Array.isArray(v)?v.join(", "):v;return y.jsxs("div",{style:{display:"flex",gap:"12px",fontSize:"12px",lineHeight:"1.4"},children:[y.jsxs("span",{style:{fontWeight:600,minWidth:"110px",color:"#495057"},children:[g,":"]}),y.jsx("span",{style:{color:"#212529",wordBreak:"break-word",flex:1},children:w})]},g)})})]});return y.jsxs(hp,{ref:l,className:qG({block:"2",inline:"2",paddingY:"2.5",paddingX:"2",gap:"1",rounded:"sm",backgroundColor:{_hover:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]/70"}}}),children:[y.jsx(Or,{gap:"0.5",children:y.jsxs(dp,{openDelay:200,children:[y.jsx(f0,{label:s.full,offset:2,position:"top-start",children:y.jsx(it,{component:"div","data-likec4-color":n.color,className:yee,children:s.short})}),y.jsx(hm,{stroke:2.5,size:"11px",opacity:.65}),y.jsx(f0,{label:c.full,offset:2,position:"top-start",children:y.jsx(it,{component:"div","data-likec4-color":o.color,className:yee,children:c.short})}),d&&y.jsx(f0,{label:"Open dynamic view",children:y.jsx(lr,{size:"sm",radius:"sm",variant:"default",onClick:g=>{g.stopPropagation(),i?.(d)},style:{alignSelf:"flex-end"},role:"button",children:y.jsx(ba,{size:"80%",stroke:2})})}),a&&y.jsx(f0,{label:"Open source",children:y.jsx(lr,{size:"sm",radius:"sm",variant:"default",onClick:g=>{g.stopPropagation(),a()},role:"button",children:y.jsx(dm,{size:"80%",stroke:2})})})]})}),y.jsxs(Or,{gap:"xs",alignItems:"center",children:[y.jsx(hr,{className:cGe,children:r.title||"untitled"}),f&&y.jsx(f0,{label:f,w:350,position:"right",offset:10,openDelay:300,withArrow:!0,bg:"white",c:"dark",withinPortal:!0,styles:{tooltip:{boxShadow:"0 4px 12px rgba(0, 0, 0, 0.15)",border:"1px solid #dee2e6"}},children:y.jsx(hr,{display:"inline-flex",children:y.jsx(r0,{size:14,opacity:.5,style:{flexShrink:0,cursor:"help"}})})})]}),r.kind&&y.jsxs(Or,{gap:"2",children:[y.jsx(vm,{children:"kind"}),y.jsx(it,{size:"xs",className:fe({userSelect:"all"}),children:r.kind})]}),r.technology&&y.jsxs(Or,{gap:"2",children:[y.jsx(vm,{children:"technology"}),y.jsx(it,{size:"xs",className:fe({userSelect:"all"}),children:r.technology})]}),r.summary.nonEmpty&&y.jsxs(y.Fragment,{children:[y.jsx(vm,{children:"description"}),y.jsx(hr,{css:{paddingLeft:"2.5",py:"1.5",borderLeft:"2px dotted",borderLeftColor:{base:"mantine.colors.gray[3]",_dark:"mantine.colors.dark[4]"}},children:y.jsx(zp,{value:r.summary,fontSize:"sm",textScale:.875})})]}),u.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(vm,{children:"links"}),y.jsx(Or,{gap:"1",flexWrap:"wrap",children:u.map(g=>y.jsx(o$,{size:"sm",value:g},g.url))})]})]})}),vm=Ed("div",{base:{display:"block",fontSize:"xxs",fontWeight:500,userSelect:"none",lineHeight:"sm",color:"mantine.colors.dimmed"}}),f0=_n.withProps({color:"dark",fz:"xs",label:"",children:null,offset:8,withinPortal:!1});function vee(e,r,n){const o=e.isDeploymentRelation()?n.id:n.modelRef||"",i=e[r].id,a=Jg(o)+i.slice(o.length);return{full:i,short:a}}function bm(){const e=uNe();return S.useMemo(()=>e?{portalProps:{target:e},withinPortal:!0}:{withinPortal:!1},[e])}const yGe=ns({delays:{"open timeout":500,"close timeout":350},actions:{"update activatedBy":Bt({activatedBy:({context:e,event:r})=>{switch(!0){case r.type.includes("click"):return"click";case r.type.includes("mouseEnter"):return"hover";default:return e.activatedBy}}}),"keep dropdown open":Bt({activatedBy:"click"}),"update selected folder":Bt(({event:e})=>e.type==="breadcrumbs.click.root"?{selectedFolder:""}:(ht(e,["breadcrumbs.click.folder","select.folder"]),{selectedFolder:e.folderPath})),"reset selected folder":Bt({selectedFolder:({context:e})=>e.viewModel?.folder.path??""}),"update inputs":Bt(({context:e,event:r})=>{ht(r,"update.inputs");const n=r.inputs.viewModel?.id!==e.viewModel?.id;let o=e.selectedFolder;return r.inputs.viewModel?.folder.path.startsWith(o)||(o=r.inputs.viewModel?.folder.path??""),{view:r.inputs.view,viewModel:r.inputs.viewModel,selectedFolder:o,activatedBy:n?"hover":e.activatedBy}}),"reset search query":Bt({searchQuery:""}),"update search query":Bt(({event:e})=>(ht(e,"searchQuery.change"),{searchQuery:e.value??""})),"emit navigateTo":mE(({event:e})=>(ht(e,"select.view"),{type:"navigateTo",viewId:e.viewId}))},guards:{"was opened on hover":({context:e})=>e.activatedBy==="hover","has search query":({context:e})=>!tp(e.searchQuery),"search query is empty":({context:e})=>tp(e.searchQuery)}}).createMachine({id:"breadcrumbs",context:({input:e})=>({...e,breadcrumbs:[],activatedBy:"hover",selectedFolder:"",searchQuery:"",folderColumns:[]}),initial:"idle",entry:["update activatedBy","reset selected folder"],on:{"update.inputs":{actions:"update inputs"},"searchQuery.change":{actions:["update search query",ai({type:"searchQuery.changed"})]}},states:{idle:{id:"idle",on:{"breadcrumbs.mouseEnter.*":{target:"pending",actions:"update activatedBy"},"breadcrumbs.click.*":{target:"active",actions:"update activatedBy"}}},pending:{on:{"breadcrumbs.mouseEnter.*":{actions:"update activatedBy"},"breadcrumbs.mouseLeave.*":{target:"idle"},"breadcrumbs.click.*":{target:"active",actions:"update activatedBy"}},after:{"open timeout":{target:"active"}}},active:{tags:["active"],initial:"decide",on:{"dropdown.dismiss":{target:"#idle"},"breadcrumbs.mouseLeave":{guard:"was opened on hover",target:".closing"},"dropdown.mouseLeave":{guard:"was opened on hover",target:".closing"},"searchQuery.changed":{target:".decide"}},states:{decide:{always:[{guard:"has search query",target:"search"},{target:"opened"}]},opened:{on:{"searchQuery.changed":{guard:"has search query",actions:"keep dropdown open",target:"search"},"breadcrumbs.click.viewtitle":{actions:"reset selected folder"},"breadcrumbs.click.*":{actions:"update selected folder"},"select.folder":{actions:["keep dropdown open","update selected folder"]},"select.view":{actions:["emit navigateTo"]}}},search:{on:{"breadcrumbs.click.viewtitle":{actions:["reset search query","reset selected folder"],target:"opened"},"breadcrumbs.click.*":{actions:["reset search query","update selected folder"],target:"opened"},"select.view":{actions:["emit navigateTo"]}}},closing:{on:{"breadcrumbs.mouseEnter.*":{target:"decide"},"dropdown.mouseEnter":{target:"decide"}},after:{"close timeout":{target:"#idle"}}}}}}}),vGe=yGe,bR=S.createContext(null);bR.displayName="NavigationPanelActorSafeContext";const bGe=bR.Provider,xR=()=>{const e=S.useContext(bR);if(e===null)throw new Error("NavigationPanelActorRef is not found in the context");return e};function wR(e,r=Ir){const n=xR();return pn(n,e,r)}function xGe(e,r=Ir){return wR(n=>e(n.context),r)}function m0(){const e=xR();return S.useMemo(()=>({actorRef:e,send:r=>e.send(r),selectFolder:r=>e.send({type:"select.folder",folderPath:r}),selectView:r=>e.send({type:"select.view",viewId:r}),isOpened:()=>e.getSnapshot().hasTag("active"),clearSearch:()=>e.send({type:"searchQuery.change",value:""}),closeDropdown:()=>e.send({type:"dropdown.dismiss"})}),[e])}const bee=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,withinPortal:!1}),xee=()=>y.jsx(Ti,{component:Rr,variant:"transparent",size:16,className:fe({display:{base:"none","@/md":"flex"},color:{base:"mantine.colors.gray[5]",_dark:"mantine.colors.dark[3]"}}),children:y.jsx(Dd,{})});y3.withProps({separator:y.jsx(xee,{}),separatorMargin:4});const cc=S.forwardRef(({variant:e="default",className:r,disabled:n=!1,type:o,...i},a)=>y.jsx(lr,{size:"md",variant:"transparent",radius:"sm",component:wa,...!n&&{whileHover:{scale:1.085},whileTap:{scale:1,translateY:1}},disabled:n,...i,className:Ge(r,eQ({variant:e,type:o})),ref:a})),N2=T1({base:{fontSize:"sm",fontWeight:"500",transition:"fast",color:{base:"likec4.panel.action",_hover:"likec4.panel.action.hover"}},variants:{truncate:{true:{truncate:!0}},dimmed:{true:{color:{base:"likec4.panel.text.dimmed",_hover:"likec4.panel.action"}}}}}),wGe=S.forwardRef((e,r)=>y.jsxs("svg",{ref:r,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 222 56",...e,children:[y.jsx("path",{fill:"#5E98AF",d:"M33.95 33.78V0H2.37A2.37 2.37 0 0 0 0 2.35V33.9h33.95v-.12ZM38.57 33.78H55.6v-14.6c0-1.3-1.06-2.35-2.36-2.35H38.57v16.95ZM33.95 38.37H17.04v14.6c0 1.29 1.06 2.35 2.36 2.35h14.67V38.37h-.12ZM38.57 38.37v16.95h14.67c1.3 0 2.36-1.06 2.36-2.36v-14.6H38.57Z"}),y.jsx("path",{className:fe({fill:"[#FCFBF7]",_light:{fill:"[#222221]"}}),d:"M71.61 12.08c-.06 3.61.3 29.95.23 31.87 0 1.8 0 3.6.06 5.41 0 .3.18.58.47.58 4.1.18 8.13-.17 12.22-.11 1.34.05 2.69 0 3.97 0 1.29-.06 1.4-.59 1.35-1.63-.06-1.63-.06-3.08-.06-4.65-.06-.82-.53-1.11-1.23-1.11-2.4.06-4.8-.06-7.19.06-.4.06-.82.06-1.23.06-.7-.06-.87-.24-.93-1v-.86c-.18-4.83.17-9.83.17-14.66-.06-4.07 0-7.73-.06-11.34 0-1.57 0-3.14-.05-4.65-.06-.93 0-1.92-.24-2.85-.11-.35-.29-.81-.7-.81h-5.5c-.93 0-1.22.64-1.28 1.57v4.12ZM103.81 35c-.17-6.63-.1-13.67-.05-20.24 0-2.04-.12-4.25-.12-6.28 0-2.21-.87-2.1-2.04-2.15-1.7-.06-2.46-.06-4.15-.06-1.11-.06-1.58.23-1.58 1.34 0 5.7-.18 21.8-.12 24.13.06 2.33.3 12.91.18 15.24-.06.81 0 1.62.06 2.44.05.29.23.58.7.58 1.93-.12 3.74-.12 5.67-.17.7-.06 1.28-.24 1.58-1 .05-.4-.12-11.04-.12-13.83Zm13.92 4.47c0-2.03-.3-7.56-.23-8.72 0-.17.11-.4.17-.4.12 0 .35.11.41.17 1.87 2.44 10.64 19.36 11.7 19.42.28.06.58.06.87.06 1.99-.12 3.74 0 5.73 0 2.04 0 .7-1.98.35-2.5-.53-.76-7.48-13.14-7.9-13.9-1.16-1.98-2.16-4.13-3.32-6.05-.12-.23-.24-.58-.18-.81.12-.7.3-1.34.59-1.98a93.18 93.18 0 0 1 4.55-8.14c1.88-2.97 2.93-4.83 4.45-7.5.35-.64.58-1.34.82-2.1.05-.29-.18-.58-.53-.58-1.11-.05-5.15 0-6.43 0-.59 0-1.17.12-1.46.64-.76 1.46-8.6 15.7-9.35 16.98-.06.12-.24.18-.41.18 0 0-.12-.18-.12-.3-.06-3.25.53-13.9.4-16.04-.05-1.28-.28-1.4-1.57-1.46-1.4-.05-3.33-.05-4.73-.05-1.3 0-1.4.7-1.58 1.62-.06.18-.06 5.64-.06 8.09 0 3.54-.3 25.76.11 32.8 0 .7.18 1.1.77 1.1 1.57-.12 3.91 0 5.49 0 1.11 0 1.29-.12 1.29-1.98 0-2.5.23-4.77.23-7.85 0-.23-.06-.46-.06-.7Zm25.66-1.4h-.06c0 1.46-.05 2.97 0 4.49.06 1.86.18 3.72.3 5.58 0 .64.17.81.76.93 1.22.29 2.4.35 3.62.35 3.16-.12 6.31.11 9.47 0 1.29-.06 1.87.06 3.16-.18 1.17-.23 1.58-.87 1.58-2.61-.12-1.1-.06-1.57-.06-2.91 0-1.92-1.35-2.56-2.52-2.5-.81.06-4.73-.06-6.31-.06-2.63.06-2.22.4-2.22-2.33 0-2.2.06-5.05.06-7.32 0-1.22.11-1.63 1.28-1.63h7.31c1.17.17 1.99-.64 1.99-1.86 0-1.22.12-1.28.12-2.5l-.18-1.75c-.12-.99-.47-1.33-1.46-1.33-.64 0-1.29.05-1.93.11-2.52.18-3.68-.17-6.14 0-.82 0-.93-.11-1-.87-.23-2.27 0-4.77.24-7.04.06-.93.3-1.1 1.17-1.16l8.24-.06c1.11-.11 1.46-.06 1.4-1.16-.11-1.69.06-3.43-.11-5.12-.12-.93-.41-1.1-1.46-1.1-1.76.05-2.17.05-3.92.17-1.75.06-8.77.06-10.46.06-2.46 0-2.63-.18-2.7 2.8-.1 2.32-.05 4.7-.05 7.09 0 4.07-.23 18.66-.12 21.92Zm47.76-24.82c.06-1.92 0-3.5 0-5.35 0-2.15-3.92-1.92-5.32-1.86a18.95 18.95 0 0 0-15.08 9.77c-.82 1.57-1.4 3.2-1.81 4.88a34 34 0 0 0-.59 12.15c.41 3.78 1.4 7.56 3.74 10.59 4.04 5.3 11.46 7.15 17.83 6.16.3-.06.59-.11.82-.29.18-.11.35-.35.35-.58l.18-3.31c.06-1.05 0-1 0-2.04 0-1.4-2.93-.35-4.74-.35-1.75 0-3.62-.06-5.2-.87-2.8-1.57-4.38-4.71-5.26-7.68-1-3.2-1.23-6.63-.64-9.88.7-4.25 2.74-9.13 7.25-10.59 2.57-.87 5.31-.58 7.89-.29.35.06.58-.17.58-.46Zm26.77 15.3c.06-2.5 0-14.84 0-18.38.06-.82 0-1.63-.11-2.45-.06-.99-.24-1.28-1.29-1.33h-4.44c-.82 0-1.35.4-1.82 1.27-1.34 3.2-10.75 24.02-12.15 26.58-.53.99-1 1.63-1 2.68v4.24c0 .76-.06 1.28 1.23 1.28l11.1-.06c1.47 0 1.47.3 1.47 1.1 0 .88-.12 4.9-.12 5.3 0 .58.12 1.16 1.23 1.16h5.08c1.23 0 1.23-.7 1.23-2.03.06-1.17-.06-3.5-.06-4.66 0-.93.18-.98 1.76-.98 1.22 0 1.75-.12 1.75-.88.06-1.57 0-2.67 0-4.42 0-1.04-.93-.98-2.92-.98-.65 0-.7-.18-.7-1.05-.12-1.8-.24-4.6-.24-6.4Zm-7.25-5.94c-.05.7-.11 10.82-.11 12.27-.06.81-.24 1.05-1 1.1-1.93.06-3.85.06-5.78.06-.47 0-.65-.4-.41-.87.23-.4 4.85-11.57 6.13-14.48.18-.17.24-.35.41-.52.18-.12.41-.18.59-.23.06 0 .23.29.23.46 0 .76-.06 1.51-.06 2.21Z"})]})),kGe=S.forwardRef((e,r)=>y.jsx("svg",{ref:r,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 56 56",...e,children:y.jsx("path",{fill:"#5E98AF",d:"M33.95 33.78V0H2.37A2.37 2.37 0 0 0 0 2.35V33.9h33.95v-.12ZM38.57 33.78H55.6v-14.6c0-1.3-1.06-2.35-2.36-2.35H38.57v16.95ZM33.95 38.37H17.04v14.6c0 1.29 1.06 2.35 2.36 2.35h14.67V38.37h-.12ZM38.57 38.37v16.95h14.67c1.3 0 2.36-1.06 2.36-2.36v-14.6H38.57Z"})})),_Ge=()=>{const e=m0(),{onBurgerMenuClick:r}=gm();return y.jsx(Rr,{layout:"position",children:y.jsxs(pr,{onMouseEnter:()=>{e.send({type:"breadcrumbs.mouseEnter.root"})},onMouseLeave:()=>{e.send({type:"breadcrumbs.mouseLeave.root"})},onClick:n=>{n.stopPropagation(),r&&e.isOpened()&&setTimeout(()=>{r()},100),e.send({type:"breadcrumbs.click.root"})},className:Ge("mantine-active",qn({padding:"0.5",width:{base:"[20px]","@/md":"[64px]"}})),children:[y.jsx(wGe,{className:fe({display:{base:"none","@/md":"block"}})}),y.jsx(kGe,{className:fe({display:{base:"block","@/md":"none"}})})]})})},SGe=[["path",{d:"M5 12l14 0",key:"svg-0"}],["path",{d:"M5 12l6 6",key:"svg-1"}],["path",{d:"M5 12l6 -6",key:"svg-2"}]],EGe=wt("outline","arrow-left","ArrowLeft",SGe),CGe=()=>{const e=Nt(),{hasStepBack:r,hasStepForward:n}=pa(o=>({hasStepBack:o.navigationHistory.currentIndex>0,hasStepForward:o.navigationHistory.currentIndex{o.stopPropagation(),e.navigate("back")},children:y.jsx(EGe,{size:14})}),y.jsx(cc,{disabled:!n,onClick:o=>{o.stopPropagation(),e.navigate("forward")},children:y.jsx(hm,{size:14})})]})},$Ge=[["path",{d:"M9 15l6 -6",key:"svg-0"}],["path",{d:"M11 6l.463 -.536a5 5 0 0 1 7.071 7.072l-.534 .464",key:"svg-1"}],["path",{d:"M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463",key:"svg-2"}]],RGe=wt("outline","link","Link",$Ge),zGe=({context:e})=>{const r=e.view;return{id:r.id,title:e.viewModel?.title??(r.title&&n7(r.title))??"Untitled View",description:e.viewModel?.description??ur.from(r.description),tags:r.tags??[],links:r.links??[]}},TGe=e=>{const[r,n]=S.useState(!1),o=wR(zGe,tt),i=bm();return y.jsxs(br,{position:"bottom-end",shadow:"xl",clickOutsideEvents:["pointerdown","mousedown","click"],offset:{mainAxis:4},opened:r,onChange:n,...i,...e,children:[y.jsx(jGe,{linksCount:o.links.length,onOpen:()=>n(!0)}),r&&y.jsx(AGe,{data:o,onClose:()=>n(!1)})]})},jGe=({linksCount:e,onOpen:r})=>y.jsx(br.Target,{children:y.jsxs(pr,{component:wa,layout:"position",whileTap:{scale:.95,translateY:1},onClick:n=>{n.stopPropagation(),r()},className:Ge("group",qn({gap:"2",paddingInline:"2",paddingBlock:"1",rounded:"sm",userSelect:"none",cursor:"pointer",color:{base:"likec4.panel.action",_hover:"likec4.panel.action.hover"},backgroundColor:{_hover:"likec4.panel.action.bg.hover"},display:{base:"none","@/xs":"flex"}}),""),children:[y.jsx(nR,{size:16,stroke:1.8}),e>0&&y.jsxs(Or,{gap:"[1px]",children:[y.jsx(RGe,{size:14,stroke:2}),y.jsx(hr,{css:{fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8},children:e})]})]})}),wee=Ed("div",{base:{fontSize:"xs",color:"mantine.colors.dimmed",fontWeight:500,userSelect:"none",mb:"xxs"}}),AGe=({data:{id:e,title:r,description:n,tags:o,links:i},onClose:a})=>{const l=Nt();return ji("paneClick",a),ji("nodeClick",a),y.jsxs(br.Dropdown,{className:Ge("nowheel nopan nodrag",Ey({margin:"xs",layerStyle:"likec4.dropdown",gap:"md",padding:"md",paddingBottom:"lg",pointerEvents:"all",maxWidth:"calc(100cqw - 52px)",minWidth:"200px",maxHeight:"calc(100cqh - 100px)",width:"max-content",cursor:"default",overflow:"auto",overscrollBehavior:"contain","@/sm":{minWidth:400,maxWidth:550},"@/lg":{maxWidth:700}})),children:[y.jsxs("section",{children:[y.jsx(it,{component:"div",fw:500,size:"xl",lh:"sm",children:r}),y.jsxs(Or,{alignItems:"flex-start",mt:"1",children:[y.jsx(DGe,{label:"id",value:e}),y.jsx(Or,{gap:"xs",flexWrap:"wrap",children:o.map(s=>y.jsx(u2,{tag:s,cursor:"pointer",onClick:c=>{c.stopPropagation(),l.openSearch(`#${s}`)}},s))})]})]}),i.length>0&&y.jsxs("section",{className:qn({alignItems:"baseline"}),children:[y.jsx(wee,{children:"Links"}),y.jsx(Or,{gap:"xs",flexWrap:"wrap",children:i.map((s,c)=>y.jsx(o$,{value:s},`${c}-${s.url}`))})]}),n.isEmpty&&y.jsx(it,{component:"div",fw:500,size:"xs",c:"dimmed",style:{userSelect:"none"},children:"No description"}),n.nonEmpty&&y.jsxs("section",{children:[y.jsx(wee,{children:"Description"}),y.jsx(zp,{value:n,fontSize:"sm",emptyText:"No description",className:fe({userSelect:"all"})})]})]})},DGe=({label:e,value:r})=>y.jsxs(Or,{gap:"0.5",children:[y.jsx(MGe,{children:e}),y.jsx(ec,{size:"sm",radius:"sm",variant:"light",color:"gray",tt:"none",fw:500,classNames:{root:fe({width:"max-content",overflow:"visible",px:"1",color:{_dark:"mantine.colors.gray[4]",_light:"mantine.colors.gray[8]"}}),label:fe({overflow:"visible"}),section:fe({opacity:.5,userSelect:"none",marginInlineEnd:"0.5"})},children:r})]}),MGe=Ed("div",{base:{color:"mantine.colors.dimmed",fontWeight:500,fontSize:"xxs",userSelect:"none"}}),NGe=()=>{const e=E2(),{enableVscode:r}=sr(),{onOpenSource:n}=gm();return r?y.jsx(bee,{label:"Open View Source",children:y.jsx(cc,{onClick:o=>{o.stopPropagation(),n?.({view:e})},children:y.jsx(dm,{style:{width:"60%",height:"60%"}})})}):null};function kee(e,r){if(e._type==="dynamic")try{if(r??=e.variant,r==="sequence")return e.sequenceLayout.bounds}catch{}return e.bounds}function PGe({points:e,controlPoints:r,labelBBox:n}){let o=1/0,i=1/0,a=-1/0,l=-1/0;if(r)for(const s of r)o=Math.min(o,s.x),i=Math.min(i,s.y),a=Math.max(a,s.x),l=Math.max(l,s.y);else for(const[s,c]of e)o=Math.min(o,s),i=Math.min(i,c),a=Math.max(a,s),l=Math.max(l,c);return n&&(o=Math.min(o,n.x),i=Math.min(i,n.y),a=Math.max(a,n.x+n.width),l=Math.max(l,n.y+n.height)),{x:o,y:i,width:a-o,height:l-i}}function BGe({nodes:e,edges:r}){return ko.expand(ko.merge(...e,...r.map(PGe)),10)}function _ee(e){const{view:{drifts:r,_layout:n,...o},xynodes:i,xystore:a}=e,{nodeLookup:l,edgeLookup:s}=a.getState(),c=new Set,d=un(o.nodes,p=>{const f=l.get(p.id);if(!f)return console.error(`Internal node not found for ${p.id}`),p;const g=i.find(k=>k.id===p.id)?.data??f.data,v=f.internals.positionAbsolute,{width:w,height:x}=_o(f);return(!d2(v,p)||p.width!==w||p.height!==x)&&c.add(p.id),{...p,shape:g.shape,color:g.color,style:{...g.style},x:Math.floor(v.x),y:Math.floor(v.y),width:Math.ceil(w),height:Math.ceil(x)}}),u=un(o.edges,p=>{const f=s.get(p.id);if(!f)return console.error(`Internal edge not found for ${p.id}`),p;const g=f.data;let v=g.controlPoints??[];const w=c.has(f.source)||c.has(f.target);v.length===0&&w&&(v=c2(g.points));const x={...ud(p,["controlPoints","labelBBox"]),points:g.points};return g.labelBBox&&(x.labelBBox=g.labelBBox),xn(v,1)&&(x.controlPoints=v),x});return{op:"save-view-snapshot",layout:{...o,_layout:"manual",bounds:BGe({nodes:d,edges:u}),nodes:d,edges:u}}}const IGe=function(e){return e.get("diagram")},See=function(e){return e.get("diagram").getSnapshot().context},Eee=()=>Rn.raise({type:"sync"},{delay:200,id:"sync"}),xm=()=>Rn.cancel("sync"),Cee=(e=50)=>Rn.raise(({event:r})=>r,{delay:e}),$ee=e=>e.op==="reset-manual-layout"||e.op==="save-view-snapshot",Ree=ep(S$e($ee)),zee=()=>Rn.assign(({system:e})=>{const r=See(e);return{beforeEditing:{xynodes:r.xynodes.map(({measured:n,...o})=>({...ud(o,["selected","dragging","resizing"]),data:ud(o.data,["dimmed","hovered"]),measured:n,initialWidth:n?.width??o.width??o.initialWidth,initialHeight:n?.height??o.height??o.initialHeight})),xyedges:r.xyedges.map(n=>({...ud(n,["selected"]),data:ud(n.data,["active","dimmed","hovered"])})),change:_ee(r),view:r.view,synched:!1}}}),OGe=()=>Rn.enqueueActions(({enqueue:e,event:r})=>{e(zee()),r.type==="edit.start"&&e.assign({editing:r.subject})}),LGe=()=>Rn.stopChild("hotkey"),kR=()=>Rn.enqueueActions(({check:e,enqueue:r,self:n})=>{const o=e("can undo"),i=n.getSnapshot().children.hotkey;if(!o&&i){r.stopChild(i);return}o&&!i&&r.spawnChild("hotkey",{id:"hotkey"})}),Tee=()=>Rn.assign(({context:e})=>{const r=e.beforeEditing;return r?{beforeEditing:null,editing:null,history:[...e.history,r]}:{editing:null}}),_R=()=>Rn.enqueueActions(({event:e,enqueue:r})=>{if(e.type==="edit.finish"&&e.wasChanged){r(Tee()),r(Eee());return}r.assign({beforeEditing:null,editing:null})}),FGe=()=>Rn.assign(({context:e})=>({beforeEditing:e.beforeEditing&&e.beforeEditing.synched===!1?{...e.beforeEditing,synched:!0}:e.beforeEditing,history:e.history.map(r=>({...r,synched:!0}))})),VGe=()=>Rn.assign(({context:e})=>e.history.length<=1?{history:[]}:{history:e.history.slice(0,e.history.length-1)}),qGe=()=>Rn.enqueueActions(({context:e,enqueue:r,system:n})=>{const o=dd(e.history);if(!o)return;r(xm()),r(VGe()),r(kR());const i=IGe(n);r.sendTo(i,{type:"update.view",view:o.view,xyedges:o.xyedges,xynodes:o.xynodes,source:"editor"}),r.assign({pendingChanges:[]}),o.synched?r.raise({type:"change",change:o.change},{delay:50}):r(Eee())}),SR=()=>Rn.assign(({context:e,system:r})=>{const n=See(r),o=_ee(n);return{pendingChanges:[...Ree(e.pendingChanges),o]}}),HGe=B3(({sendBack:e})=>{const r=$w([["mod + z",n=>{n.stopPropagation(),e({type:"undo"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r,{capture:!0}),()=>{document.body.removeEventListener("keydown",r,{capture:!0})}}),UGe=zy(()=>{throw new Error("Not implemented")}),WGe=zy(()=>{throw new Error("Not implemented")}),jee=function(e){return e.system.get("diagram")},Rn=ns({delays:{"350ms":350,waitBeforeSync:2e3},actors:{applyLatest:UGe,executeChange:WGe,hotkey:HGe},guards:{"has pending":({context:e})=>e.pendingChanges.length>0,"can undo":({context:e})=>e.history.length>0}}),Hn={idle:{target:"#idle"},editing:{target:"#editing"},afterEdit:{target:"#afterEdit"},pending:{target:"#pending"},applyLatestToManual:{target:"#applyLatestToManual"},executeChanges:{target:"#executeChanges"}},GGe=Rn.createStateConfig({id:"idle",on:{sync:{...Hn.pending},"edit.start":{...Hn.editing}}}),YGe=Rn.createStateConfig({id:"editing",tags:"pending",entry:[OGe(),xm()],on:{change:{actions:_R(),...Hn.executeChanges},"edit.finish":{actions:_R(),...Hn.afterEdit},undo:{actions:_R(),...Hn.idle}}}),XGe=Rn.createStateConfig({id:"pending",tags:["pending"],entry:kR(),on:{sync:{reenter:!0,...Hn.pending},"edit.start":{actions:[SR()],...Hn.editing}},after:{waitBeforeSync:{actions:[SR()],...Hn.executeChanges}}}),KGe=Rn.createStateConfig({id:"afterEdit",always:[{guard:"has pending",...Hn.pending},{...Hn.idle}]}),ZGe=Rn.createStateConfig({id:"applyLatestToManual",entry:[xm(),zee()],initial:"call",on:{"*":{actions:[yE(({event:e})=>`applyLatestToManual received unexpected event: ${e.type}`),Cee(350)]}},states:{call:{invoke:{src:"applyLatest",input:({context:e})=>{const r=e.beforeEditing?.change.layout;return{current:r&&r._layout==="manual"?r:void 0,viewId:e.viewId}},onDone:{actions:jy(jee,({event:e})=>({type:"update.view",view:e.output.updated}),{delay:10}),target:"wait"},onError:{actions:[Bt({beforeEditing:null,pendingChanges:[]}),({event:e})=>{console.error(e.error)}],...Hn.idle}}},wait:{entry:Tee(),after:{"350ms":{actions:[SR(),kR()],...Hn.executeChanges}}}}}),QGe=Rn.createStateConfig({id:"executeChanges",entry:[Bt(({event:e,context:r})=>{if(e.type==="change"){if($ee(e.change))return{pendingChanges:[...Ree(r.pendingChanges),e.change]};if(!r.pendingChanges.includes(e.change))return{pendingChanges:[...r.pendingChanges,e.change]}}return{}}),xm()],invoke:{src:"executeChange",input:({context:e})=>({changes:e.pendingChanges,viewId:e.viewId}),onDone:{actions:rs(({context:e,enqueue:r})=>{const n=Q1(e.pendingChanges,o=>o.op==="save-view-snapshot");n&&r.sendTo(jee,{type:"update.view-bounds",bounds:n.layout.bounds}),r.assign({pendingChanges:[]})}),...Hn.idle},onError:{actions:({event:e})=>{console.error(e.error)},...Hn.afterEdit}},on:{"*":{actions:Cee()}}}),JGe=Rn.createMachine({id:"editor",context:({input:e})=>({viewId:e.viewId,beforeEditing:null,editing:null,pendingChanges:[],history:[]}),initial:"idle",states:{idle:GGe,editing:YGe,pending:XGe,afterEdit:KGe,applyLatestToManual:ZGe,executeChanges:QGe},on:{cancel:{actions:[xm(),Bt({editing:null,beforeEditing:null,pendingChanges:[]})],...Hn.idle},synced:{actions:FGe()},undo:{guard:"can undo",actions:qGe(),...Hn.idle},change:{...Hn.executeChanges},applyLatestToManual:{...Hn.applyLatestToManual},reset:{actions:[xm(),Bt({history:[],editing:null,beforeEditing:null,pendingChanges:[]}),LGe()],...Hn.idle}}}),Aee=JGe,Dee={};function Mee(e,r){return e===r?e:(r=r.map(n=>{const o=e.find(l=>l.id===n.id&&l.type===n.type&&l.source===n.source&&l.target===n.target);if(!o)return n;const i=tt(o.data,n.data),a=i?o.data:n.data;return i&&tt(o.hidden,n.hidden??o.hidden)&&tt(o.selected,n.selected??o.selected)&&tt(o.selectable,n.selectable??o.selectable)&&tt(o.focusable,n.focusable??o.focusable)&&tt(o.animated,n.animated??o.animated)&&tt(o.className,n.className)&&tt(o.zIndex,n.zIndex??o.zIndex)&&tt(o.label,n.label)&&tt(o.sourceHandle,n.sourceHandle)&&tt(o.targetHandle,n.targetHandle)&&tt(o.style??Dee,n.style??Dee)?o:{...ry(o,ra),...ry(n,ra),data:a}}),Oq(e,r)?e:r)}function ER(e,r){return ra(r)?Mee(e,r):(r=e,n=>Mee(n,r))}const P2={};function Nee(e,r){return e===r?e:(r=r.map(n=>{const o=e.find(p=>p.id===n.id&&p.type===n.type);if(!o)return n;const i=Nq(o.data,n.data);let a=i?o.data:n.data;i||(ra(o.data.hovered)&&!ra(n.data.hovered)&&(a={...a,hovered:o.data.hovered}),ra(o.data.dimmed)&&!ra(n.data.dimmed)&&(a={...a,dimmed:o.data.dimmed}));const{width:l,height:s}=_o(o),c=Object.hasOwn(o,"handles")||Object.hasOwn(n,"handles"),d=!c||tt(o.handles??[],n.handles??[]);if(i&&d&&tt(l,n.width??n.initialWidth)&&tt(s,n.height??n.initialHeight)&&tt(o.parentId??null,n.parentId??null)&&tt(o.hidden,n.hidden??o.hidden)&&tt(o.selected,n.selected??o.selected)&&tt(o.selectable,n.selectable??o.selectable)&&tt(o.focusable,n.focusable??o.focusable)&&tt(o.draggable,n.draggable??o.draggable)&&tt(o.dragHandle,n.dragHandle)&&tt(o.className,n.className)&&tt(o.zIndex,n.zIndex??o.zIndex)&&tt(o.position,n.position)&&tt(o.domAttributes??P2,n.domAttributes??P2)&&tt(o.style??P2,n.style??P2))return o;const u=c&&d?o.handles:n.handles;return{...ry(o,(p,f)=>ra(p)&&f!=="parentId"),..."measured"in o&&{measured:{width:n.width??n.initialWidth,height:n.height??n.initialHeight}},...ry(n,ra),width:n.width??n.initialWidth,height:n.height??n.initialHeight,...u&&{handles:u},data:a}}),Oq(e,r)?e:r)}function B2(e,r){return ra(r)?Nee(e,r):(r=e,n=>Nee(n,r))}const CR={top:"40px",bottom:"22px",left:"22px",right:"22px"};function Pee(e){const r=[],n=[],o=new Map,i=x8.from(e.nodes.reduce((s,c)=>(o.set(c.id,c),c.parent||s.push({node:c,parent:null}),s),[])),a=s=>mt(o.get(s),`Node not found: ${s}`);let l;for(;l=i.dequeue();){const{node:s,parent:c}=l,d=xn(s.children,1)||s.kind==w1;if(d)for(const w of s.children)i.enqueue({node:a(w),parent:s});const u={x:s.x,y:s.y};c&&(u.x-=c.x,u.y-=c.y);const p=s.id,f={id:p,position:u,zIndex:d?lc.Compound:lc.Element,style:{width:s.width,height:s.height},initialWidth:s.width,initialHeight:s.height,...c&&{parentId:c.id}},g=s.modelRef??null,v={navigateTo:s.navigateTo??null};switch(!0){case s.kind===w2.Empty:{r.push({...f,type:"empty",data:{column:s.column}});break}case(d&&!!g):{r.push({...f,type:"compound",data:{id:p,column:s.column,title:s.title,color:s.color,shape:s.shape,style:s.style,depth:s.depth??0,icon:s.icon??"none",ports:s.ports,existsInCurrentView:s.existsInCurrentView,fqn:g,...v}});break}default:He(g,"Element should have either modelRef or deploymentRef"),r.push({...f,type:"element",data:{id:p,column:s.column,fqn:g,title:s.title,technology:s.technology,description:s.description,height:s.height,width:s.width,color:s.color,shape:s.shape,icon:s.icon??"none",ports:s.ports,style:s.style,existsInCurrentView:s.existsInCurrentView,tags:s.tags,...v}})}}for(const s of e.edges){const c=s.source,d=s.target,u=s.id;if(!xn(s.points,2)){console.error("edge should have at least 2 points",s);continue}if(!xn(s.relations,1)){console.error("edge should have at least 1 relation",s);continue}n.push({id:u,type:"relationship",source:c,target:d,sourceHandle:s.sourceHandle,targetHandle:s.targetHandle,data:{sourceFqn:s.sourceFqn,targetFqn:s.targetFqn,relations:s.relations,color:s.color??"gray",label:s.label,navigateTo:s.navigateTo??null,line:s.line??"dashed",existsInCurrentView:s.existsInCurrentView},interactionWidth:20})}return{xynodes:r,xyedges:n}}const Bee=e=>e.find(r=>r.data.column==="subjects"&&ty(r.parentId)),eYe=zy(async({input:e,self:r,signal:n})=>{const{subjectId:o,navigateFromNode:i,xyflow:a,xystore:l,update:s}=e;let{nodes:c,width:d,height:u}=l.getState();const p=Pee(s),f=()=>{const{nodes:j,edges:I}=l.getState();return{xynodes:B2(j,p.xynodes),xyedges:ER(I,p.xyedges)}},g=mt(r._parent);let v=a.getZoom();const w=Math.max(v,1),x=Ws(s.bounds,d,u,xa,w,CR),k=p.xynodes.find(j=>j.type!=="empty"&&j.data.column==="subjects"&&j.data.fqn===o)??Bee(p.xynodes),C=Bee(c),_=i?c.find(j=>j.id===i):c.find(j=>j.type!=="empty"&&j.data.column!=="subjects"&&j.data.fqn===o);if(!k||!_||k.type==="empty"||!C||k.data.fqn===C.data.fqn)return await a.setViewport(x),f();const $={x:k.position.x+(k.initialWidth??0)/2,y:k.position.y+(k.initialHeight??0)/2},R=a.getInternalNode(C.id),T=n$(R),A=new Set;if(c.forEach(j=>{if(j.id!==_.id){if(j.data.column==="subjects"){A.add(j.id);return}j.parentId&&(j.parentId===_.id||A.has(j.parentId))&&A.add(j.id)}}),c=B2(c,c.flatMap(j=>A.has(j.id)?[]:j.id!==_.id?{...j,data:{...j.data,dimmed:j.data.column==="subjects"?"immediate":!0}}:{...ud(j,["parentId"]),position:{x:T.x-j.initialWidth/2,y:T.y-j.initialHeight/2},zIndex:lc.Max,hidden:!1,data:{...j.data,dimmed:!1}})),g.send({type:"update.xydata",xynodes:c,xyedges:[]}),await XO(120),p.xynodes=p.xynodes.map(tr.setDimmed(!1)),n.aborted)return f();const z=300;return a.setCenter(T.x,T.y,{zoom:v,duration:z,interpolate:"smooth"}),await XO(z),await a.setCenter($.x,$.y,{zoom:v}),f()}),dc=ns({actors:{layouter:eYe},guards:{hasViewId:({context:e})=>e.viewId!==null,isReady:({context:e})=>e.xyflow!==null&&e.xystore!==null&&e.layouted!==null,anotherSubject:({context:e,event:r})=>r.type==="update.view"?e.layouted?.subject!==r.layouted.subject:!1}}),Iee=()=>dc.assign(({event:e})=>(ht(e,"xyflow.init"),{xyflow:e.instance,xystore:e.store})),Oee=()=>dc.assign(({event:e})=>(ht(e,"update.view"),{layouted:e.layouted,...Pee(e.layouted)})),tYe=()=>dc.createAction(({context:e})=>{He(e.xystore,"xystore is not initialized");const{domNode:r,updateNodeInternals:n}=e.xystore.getState(),o=new Set(e.xyedges.flatMap(l=>[l.source,l.target]));if(o.size===0||!r)return;const i=new Map,a=r.querySelectorAll(".react-flow__node");for(const l of a){const s=l.getAttribute("data-id");s&&o.has(s)&&i.set(s,{id:s,nodeElement:l,force:!0})}n(i,{triggerFitView:!1})}),$R=e=>dc.createAction(({context:r,event:n})=>{e??=n.type==="fitDiagram"?n:{};let{duration:o,bounds:i}=e??{};o??=450;const{xyflow:a,xystore:l}=r;He(a,"xyflow is not initialized"),He(l,"xystore is not initialized"),i??=r.layouted?.bounds;const s=Math.max(a.getZoom(),1);if(i){const{width:c,height:d}=l.getState(),u=Ws(i,c,d,xa,s,CR);a.setViewport(u,o>0?{duration:o,interpolate:"smooth"}:void 0).catch(console.error)}else a.fitView({minZoom:xa,maxZoom:s,padding:CR,...o>0&&{duration:o,interpolate:"smooth"}}).catch(console.error)}),rYe=()=>dc.assign(({context:e,event:r})=>(ht(r,"xyflow.applyNodeChanges"),{xynodes:rw(r.changes,e.xynodes)})),nYe=()=>dc.assign(({context:e,event:r})=>(ht(r,"xyflow.applyEdgeChanges"),{xyedges:nw(r.changes,e.xyedges)})),Lee=()=>dc.enqueueActions(({system:e,event:r})=>{if(r.type!=="xyflow.edgeClick")return;const n=zr(e).diagramActorRef,o=r.edge.data.relations;xn(o,1)&&n.send({type:"open.source",relation:o[0]})}),Fee=()=>dc.assign({xyflow:null,layouted:null,xystore:null,xyedges:[],xynodes:[]}),oYe=dc.createMachine({id:"relationships-browser",context:({input:e})=>({subject:e.subject,viewId:e.viewId,scope:e.viewId?e.scope:"global",closeable:e.closeable??!0,enableSelectSubject:e.enableSelectSubject??!0,enableChangeScope:e.enableChangeScope??!0,xyflow:null,xystore:null,layouted:null,navigateFromNode:null,xynodes:[],xyedges:[]}),initial:"initializing",on:{"xyflow.applyNodeChanges":{actions:rYe()},"xyflow.applyEdgeChanges":{actions:nYe()}},states:{initializing:{on:{"xyflow.init":{actions:Iee(),target:"isReady"},"update.view":{actions:Oee(),target:"isReady"},stop:"closed",close:"closed"}},isReady:{always:[{guard:"isReady",actions:[$R({duration:0}),ai({type:"xyflow.updateNodeInternals"},{delay:150})],target:"active"},{target:"initializing"}]},active:{initial:"idle",tags:["active"],on:{"xyflow.nodeClick":{actions:rs(({event:e,enqueue:r})=>{if("fqn"in e.node.data){const n=e.node.data.fqn;r.raise({type:"navigate.to",subject:n,fromNode:e.node.id})}})},"xyflow.edgeClick":[{guard:"hasViewId",actions:rs(({event:e,context:r,system:n,enqueue:o})=>{e.edge.selected||e.edge.data.relations.length>1?o.sendTo(zr(n).overlaysActorRef,{type:"open.relationshipDetails",viewId:r.viewId,source:e.edge.data.sourceFqn,target:e.edge.data.targetFqn}):o(Lee())})},{actions:Lee()}],"navigate.to":{actions:[Bt({subject:({event:e})=>e.subject,viewId:({event:e,context:r})=>e.viewId??r.viewId??null,navigateFromNode:({event:e})=>e.fromNode??null})]},"xyflow.paneDblClick":{actions:$R()},"update.view":{actions:Oee(),target:".layouting"},"change.scope":{actions:Bt({scope:({event:e})=>e.scope})},"xyflow.updateNodeInternals":{actions:tYe()},fitDiagram:{actions:$R()},"xyflow.resized":{actions:[ua("fitDiagram"),ai({type:"fitDiagram"},{id:"fitDiagram",delay:300})]},"xyflow.init":{actions:Iee()},"xyflow.unmount":{target:"initializing"},close:"closed"},states:{idle:{on:{"xyflow.edgeMouseEnter":{actions:[Bt({xyedges:({context:e,event:r})=>{const n=e.xyedges.some(o=>o.data.dimmed!==!1||o.selected);return e.xyedges.map(o=>o.id===r.edge.id?tr.setData(o,{hovered:!0,dimmed:!1}):n&&!o.selected?tr.setDimmed(o,"immediate"):o)}}),ua("undim.edges"),ua("dim.nonhovered.edges"),ai({type:"dim.nonhovered.edges"},{id:"dim.nonhovered.edges",delay:200})]},"xyflow.edgeMouseLeave":{actions:[Bt({xyedges:({context:e,event:r})=>e.xyedges.map(n=>n.id===r.edge.id?tr.setHovered(n,!1):n)}),ua("dim.nonhovered.edges"),ai({type:"undim.edges"},{id:"undim.edges",delay:400})]},"dim.nonhovered.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.map(r=>r.data.hovered?r:tr.setDimmed(r,r.data.dimmed==="immediate"?"immediate":!0))})},"undim.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.map(tr.setDimmed(!1))})},"xyflow.selectionChange":{actions:rs(({event:e,context:r,enqueue:n})=>{e.edges.length===0&&r.xyedges.some(o=>o.data.dimmed)&&!r.xyedges.some(o=>o.data.hovered)&&n.raise({type:"undim.edges"})})}}},layouting:{invoke:{id:"layouter",src:"layouter",input:({context:e})=>({subjectId:e.subject,navigateFromNode:e.navigateFromNode,xyflow:mt(e.xyflow),xystore:mt(e.xystore),update:mt(e.layouted)}),onDone:{target:"idle",actions:rs(({enqueue:e,event:r})=>{e.assign({xynodes:r.output.xynodes,xyedges:r.output.xyedges,navigateFromNode:null}),e.raise({type:"fitDiagram",duration:200},{id:"fitDiagram",delay:50});for(let n=1;n<8;n++)e.raise({type:"xyflow.updateNodeInternals"},{delay:120+n*75})})}},on:{"update.xydata":{actions:Bt({xynodes:({event:e})=>e.xynodes,xyedges:({event:e})=>e.xyedges})},"xyflow.applyEdgeChanges":{},"xyflow.applyNodeChanges":{}}}}},closed:{id:"closed",type:"final",entry:Fee()}},exit:Fee()}),Vee=oYe,iYe=ns({actors:{relationshipsBrowserLogic:Vee}}).createMachine({id:"element-details",context:({input:e})=>({...e,initiatedFrom:{node:e.initiatedFrom?.node??null,clientRect:e.initiatedFrom?.clientRect??null}}),initial:"active",states:{active:{entry:T3("relationshipsBrowserLogic",{id:({self:e})=>`${e.id}-relationships`,input:({context:e})=>({subject:e.subject,viewId:e.currentView.id,scope:"view",enableSelectSubject:!1,enableChangeScope:!0,closeable:!1})}),exit:[jy(({self:e})=>`${e.id}-relationships`,{type:"close"}),$y(({self:e})=>`${e.id}-relationships`)],on:{"change.subject":{actions:Bt({subject:({event:e})=>e.subject})},close:"closed"}},closed:{id:"closed",type:"final"}}}),aYe=iYe;function lYe(e){const r=[],n=[],o=new Map,i=x8.from(e.nodes.reduce((s,c)=>(o.set(c.id,c),c.parent||s.push({node:c,parent:null}),s),[])),a=s=>mt(o.get(s),`Node not found: ${s}`);let l;for(;l=i.dequeue();){const{node:s,parent:c}=l,d=xn(s.children,1);if(d)for(const w of s.children)i.enqueue({node:a(w),parent:s});const u={x:s.x,y:s.y};c&&(u.x-=c.x,u.y-=c.y);const p=s.id,f={id:p,draggable:!1,deletable:!1,position:u,zIndex:d?lc.Compound:lc.Element,style:{width:s.width,height:s.height},initialWidth:s.width,initialHeight:s.height,...c&&{parentId:c.id}},g=s.modelRef,v={navigateTo:s.navigateTo??null};switch(!0){case d:{r.push({...f,type:"compound",data:{id:p,column:s.column,title:s.title,color:s.color,style:s.style,depth:s.depth??0,icon:s.icon??"none",ports:s.ports,fqn:g,...v}});break}default:r.push({...f,type:"element",data:{id:p,column:s.column,fqn:g,title:s.title,technology:s.technology,description:s.description??null,height:s.height,width:s.width,color:s.color,shape:s.shape,icon:s.icon??"none",ports:s.ports,style:s.style,tags:s.tags,...v}})}}for(const{source:s,target:c,relationId:d,label:u,technology:p,description:f,navigateTo:g=null,color:v="gray",line:w="dashed",...x}of e.edges){const k=x.id;n.push({id:k,type:"relationship",source:s,target:c,sourceHandle:x.sourceHandle,targetHandle:x.targetHandle,deletable:!1,data:{relationId:d,label:u,color:v,navigateTo:g,line:w,description:f??null,...p&&{technology:p}}})}return{xynodes:r,xyedges:n,bounds:e.bounds}}function qee(e){return"edgeId"in e?(He(pw(e.edgeId),"edgeId is required"),{edgeId:e.edgeId}):{source:e.source,target:e.target}}const Hee={x:"22px",y:"22px"},sYe=ns({actions:{"xyflow:fitDiagram":({context:e},r)=>{let{duration:n,bounds:o}=r??{};n??=450;const{xyflow:i,xystore:a}=e;He(i,"xyflow is not initialized"),He(a,"xystore is not initialized"),o??=e.bounds;const l=Math.max(i.getZoom(),1);if(o){const{width:s,height:c}=a.getState(),d=Ws(o,s,c,xa,l,Hee);i.setViewport(d,n>0?{duration:n}:void 0).catch(console.error)}else i.fitView({minZoom:xa,maxZoom:l,padding:Hee,...n>0&&{duration:n,interpolate:"smooth"}}).catch(console.error)},"xyflow:updateNodeInternals":({context:e})=>{He(e.xystore,"xystore is not initialized");const{domNode:r,updateNodeInternals:n}=e.xystore.getState(),o=new Set(e.xyedges.flatMap(a=>[a.source,a.target]));if(o.size===0||!r)return;const i=new Map;for(const a of o){const l=r.querySelector(`.react-flow__node[data-id="${a}"]`);l&&i.set(a,{id:a,nodeElement:l,force:!0})}n(i,{triggerFitView:!1})},updateXYFlow:Bt(({context:e,event:r})=>{ht(r,"xyflow.init");let n=e.initialized;return n.xyflow||(n={...n,xyflow:!0}),{initialized:n,xyflow:r.instance,xystore:r.store}}),updateLayoutData:Bt(({context:e,event:r})=>{ht(r,"update.layoutData");const{xynodes:n,xyedges:o,bounds:i}=lYe(r.data);let a=e.initialized;return a.xydata||(a={...a,xydata:!0}),{initialized:a,xynodes:B2(e.xynodes,n),xyedges:ER(e.xyedges,o),bounds:Ir(e.bounds,i)?e.bounds:i}}),"open relationship source":rs(({system:e,event:r})=>{if(r.type!=="xyflow.edgeClick")return;const n=zr(e).diagramActorRef,o=r.edge.data.relationId;o&&n.send({type:"open.source",relation:o})})},guards:{isReady:({context:e})=>e.initialized.xydata&&e.initialized.xyflow,"enable: navigate.to":()=>!0}}).createMachine({initial:"initializing",context:({input:e})=>({subject:qee(e),viewId:e.viewId,bounds:{x:0,y:0,width:200,height:200},initialized:{xydata:!1,xyflow:!1},xyflow:null,xystore:null,xynodes:[],xyedges:[]}),states:{initializing:{on:{"xyflow.init":{actions:"updateXYFlow",target:"isReady"},"update.layoutData":{actions:"updateLayoutData",target:"isReady"},close:{target:"closed"}}},isReady:{always:[{guard:"isReady",actions:[{type:"xyflow:fitDiagram",params:{duration:0}},ai({type:"xyflow.updateNodeInternals"},{delay:50})],target:"ready"},{target:"initializing"}]},ready:{on:{"xyflow.edgeMouseEnter":{actions:[Bt({xyedges:({context:e,event:r})=>{const n=e.xyedges.some(o=>o.data.dimmed===!0||o.data.dimmed==="immediate");return e.xyedges.map(o=>o.id===r.edge.id?tr.setData(o,{hovered:!0,dimmed:!1}):n&&!o.selected?tr.setDimmed(o,"immediate"):o)}}),ua("undim.edges"),ua("dim.nonhovered.edges"),ai({type:"dim.nonhovered.edges"},{id:"dim.nonhovered.edges",delay:100})]},"xyflow.edgeMouseLeave":{actions:[Bt({xyedges:({context:e,event:r})=>e.xyedges.map(n=>n.id===r.edge.id?tr.setHovered(n,!1):n)}),ua("dim.nonhovered.edges"),ai({type:"undim.edges"},{id:"undim.edges",delay:400})]},"dim.nonhovered.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.map(r=>tr.setDimmed(r,r.data.hovered!==!0))})},"undim.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.some(r=>r.selected===!0)?e.xyedges.map(r=>tr.setDimmed(r,r.selected!==!0?r.data.dimmed||"immediate":!1)):e.xyedges.map(tr.setDimmed(!1))})},"xyflow.selectionChange":{actions:rs(({event:e,context:r,enqueue:n})=>{e.edges.length===0&&r.xyedges.some(o=>o.data.dimmed)&&!r.xyedges.some(o=>o.data.hovered)&&n.raise({type:"undim.edges"})})},"update.layoutData":{actions:["updateLayoutData",ua("fitDiagram"),ai({type:"fitDiagram",duration:0},{id:"fitDiagram",delay:50}),ai({type:"xyflow.updateNodeInternals"},{delay:75})]},"xyflow.init":{actions:"updateXYFlow"},"xyflow.applyNodeChanges":{actions:Bt({xynodes:({context:e,event:r})=>rw(r.changes,e.xynodes)})},"xyflow.applyEdgeChanges":{actions:Bt({xyedges:({context:e,event:r})=>nw(r.changes,e.xyedges)})},"xyflow.paneDblClick":{actions:"xyflow:fitDiagram"},"xyflow.edgeClick":{actions:"open relationship source"},"navigate.to":{actions:Bt({subject:({event:e})=>qee(e.params),viewId:({context:e,event:r})=>r.params.viewId??e.viewId})},close:{target:"closed"}},exit:Bt({xyedges:[],xynodes:[],initialized:{xydata:!1,xyflow:!1},xyflow:null,xystore:null})},closed:{type:"final"}},on:{fitDiagram:{actions:{type:"xyflow:fitDiagram",params:rp("event")}},"xyflow.resized":{actions:[ua("fitDiagram"),ai({type:"fitDiagram"},{id:"fitDiagram",delay:200})]},"xyflow.updateNodeInternals":{actions:"xyflow:updateNodeInternals"}}}),cYe=sYe;var Pd={},ft={},Uee=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},wm={},Wee;function RR(){if(Wee)return wm;Wee=1,Object.defineProperty(wm,"__esModule",{value:!0});function e(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof Uee<"u")return Uee}function r(){const i=e();if(i.__xstate__)return i.__xstate__}function n(i){if(typeof window>"u")return;const a=r();a&&a.register(i)}const o=i=>{if(typeof window>"u")return;const a=r();a&&a.register(i)};return wm.devToolsAdapter=o,wm.getGlobal=e,wm.registerService=n,wm}var Gee;function I2(){if(Gee)return ft;Gee=1;var e=RR();class r{constructor(ee){this._process=ee,this._active=!1,this._current=null,this._last=null}start(){this._active=!0,this.flush()}clear(){this._current&&(this._current.next=null,this._last=this._current)}enqueue(ee){const oe={value:ee,next:null};if(this._current){this._last.next=oe,this._last=oe;return}this._current=oe,this._last=oe,this._active&&this.flush()}flush(){for(;this._current;){const ee=this._current;this._process(ee.value),this._current=ee.next}this._last=null}}const n=".",o="",i="",a="#",l="*",s="xstate.init",c="xstate.error",d="xstate.stop";function u(J,ee){return{type:`xstate.after.${J}.${ee}`}}function p(J,ee){return{type:`xstate.done.state.${J}`,output:ee}}function f(J,ee){return{type:`xstate.done.actor.${J}`,output:ee,actorId:J}}function g(J,ee){return{type:`xstate.error.actor.${J}`,error:ee,actorId:J}}function v(J){return{type:s,input:J}}function w(J){setTimeout(()=>{throw J})}const x=typeof Symbol=="function"&&Symbol.observable||"@@observable";function k(J,ee){const oe=_(J),ae=_(ee);return typeof ae=="string"?typeof oe=="string"?ae===oe:!1:typeof oe=="string"?oe in ae:Object.keys(oe).every(le=>le in ae?k(oe[le],ae[le]):!1)}function C(J){if(j(J))return J;const ee=[];let oe="";for(let ae=0;aetypeof ee>"u"||typeof ee=="string"?{target:ee}:ee)}function L(J){if(!(J===void 0||J===o))return A(J)}function H(J,ee,oe){const ae=typeof J=="object",le=ae?J:void 0;return{next:(ae?J.next:J)?.bind(le),error:(ae?J.error:ee)?.bind(le),complete:(ae?J.complete:oe)?.bind(le)}}function M(J,ee){return`${ee}.${J}`}function V(J,ee){const oe=ee.match(/^xstate\.invoke\.(\d+)\.(.*)/);if(!oe)return J.implementations.actors[ee];const[,ae,le]=oe,ve=J.getStateNodeById(le).config.invoke;return(Array.isArray(ve)?ve[ae]:ve).src}function B(J){return[...new Set([...J._nodes.flatMap(ee=>ee.ownEvents)])]}function F(J,ee){return`${J.sessionId}.${ee}`}let q=0;function G(J,ee){const oe=new Map,ae=new Map,le=new WeakMap,ve=new Set,De={},{clock:Fe,logger:rt}=ee,lt={schedule:(Ze,pt,vt,Lt,No=Math.random().toString(36).slice(2))=>{const uh={source:Ze,target:pt,event:vt,delay:Lt,id:No,startedAt:Date.now()},Vi=F(Ze,No);Ke._snapshot._scheduledEvents[Vi]=uh;const su=Fe.setTimeout(()=>{delete De[Vi],delete Ke._snapshot._scheduledEvents[Vi],Ke._relay(Ze,pt,vt)},Lt);De[Vi]=su},cancel:(Ze,pt)=>{const vt=F(Ze,pt),Lt=De[vt];delete De[vt],delete Ke._snapshot._scheduledEvents[vt],Lt!==void 0&&Fe.clearTimeout(Lt)},cancelAll:Ze=>{for(const pt in Ke._snapshot._scheduledEvents){const vt=Ke._snapshot._scheduledEvents[pt];vt.source===Ze&<.cancel(Ze,vt.id)}}},Ot=Ze=>{if(!ve.size)return;const pt={...Ze,rootId:J.sessionId};ve.forEach(vt=>vt.next?.(pt))},Ke={_snapshot:{_scheduledEvents:(ee?.snapshot&&ee.snapshot.scheduler)??{}},_bookId:()=>`x:${q++}`,_register:(Ze,pt)=>(oe.set(Ze,pt),Ze),_unregister:Ze=>{oe.delete(Ze.sessionId);const pt=le.get(Ze);pt!==void 0&&(ae.delete(pt),le.delete(Ze))},get:Ze=>ae.get(Ze),getAll:()=>Object.fromEntries(ae.entries()),_set:(Ze,pt)=>{const vt=ae.get(Ze);if(vt&&vt!==pt)throw new Error(`Actor with system ID '${Ze}' already exists.`);ae.set(Ze,pt),le.set(pt,Ze)},inspect:Ze=>{const pt=H(Ze);return ve.add(pt),{unsubscribe(){ve.delete(pt)}}},_sendInspectionEvent:Ot,_relay:(Ze,pt,vt)=>{Ke._sendInspectionEvent({type:"@xstate.event",sourceRef:Ze,actorRef:pt,event:vt}),pt._send(vt)},scheduler:lt,getSnapshot:()=>({_scheduledEvents:{...Ke._snapshot._scheduledEvents}}),start:()=>{const Ze=Ke._snapshot._scheduledEvents;Ke._snapshot._scheduledEvents={};for(const pt in Ze){const{source:vt,target:Lt,event:No,delay:uh,id:Vi}=Ze[pt];lt.schedule(vt,Lt,No,uh,Vi)}},_clock:Fe,_logger:rt};return Ke}let U=!1;const Y=1;let K=(function(J){return J[J.NotStarted=0]="NotStarted",J[J.Running=1]="Running",J[J.Stopped=2]="Stopped",J})({});const O={clock:{setTimeout:(J,ee)=>setTimeout(J,ee),clearTimeout:J=>clearTimeout(J)},logger:console.log.bind(console),devTools:!1};class W{constructor(ee,oe){this.logic=ee,this._snapshot=void 0,this.clock=void 0,this.options=void 0,this.id=void 0,this.mailbox=new r(this._process.bind(this)),this.observers=new Set,this.eventListeners=new Map,this.logger=void 0,this._processingStatus=K.NotStarted,this._parent=void 0,this._syncSnapshot=void 0,this.ref=void 0,this._actorScope=void 0,this.systemId=void 0,this.sessionId=void 0,this.system=void 0,this._doneEvent=void 0,this.src=void 0,this._deferred=[];const ae={...O,...oe},{clock:le,logger:ve,parent:De,syncSnapshot:Fe,id:rt,systemId:lt,inspect:Ot}=ae;this.system=De?De.system:G(this,{clock:le,logger:ve}),Ot&&!De&&this.system.inspect(H(Ot)),this.sessionId=this.system._bookId(),this.id=rt??this.sessionId,this.logger=oe?.logger??this.system._logger,this.clock=oe?.clock??this.system._clock,this._parent=De,this._syncSnapshot=Fe,this.options=ae,this.src=ae.src??ee,this.ref=this,this._actorScope={self:this,id:this.id,sessionId:this.sessionId,logger:this.logger,defer:Ke=>{this._deferred.push(Ke)},system:this.system,stopChild:Ke=>{if(Ke._parent!==this)throw new Error(`Cannot stop child actor ${Ke.id} of ${this.id} because it is not a child`);Ke._stop()},emit:Ke=>{const Ze=this.eventListeners.get(Ke.type),pt=this.eventListeners.get("*");if(!Ze&&!pt)return;const vt=[...Ze?Ze.values():[],...pt?pt.values():[]];for(const Lt of vt)try{Lt(Ke)}catch(No){w(No)}},actionExecutor:Ke=>{const Ze=()=>{if(this._actorScope.system._sendInspectionEvent({type:"@xstate.action",actorRef:this,action:{type:Ke.type,params:Ke.params}}),!Ke.exec)return;const pt=U;try{U=!0,Ke.exec(Ke.info,Ke.params)}finally{U=pt}};this._processingStatus===K.Running?Ze():this._deferred.push(Ze)}},this.send=this.send.bind(this),this.system._sendInspectionEvent({type:"@xstate.actor",actorRef:this}),lt&&(this.systemId=lt,this.system._set(lt,this)),this._initState(oe?.snapshot??oe?.state),lt&&this._snapshot.status!=="active"&&this.system._unregister(this)}_initState(ee){try{this._snapshot=ee?this.logic.restoreSnapshot?this.logic.restoreSnapshot(ee,this._actorScope):ee:this.logic.getInitialSnapshot(this._actorScope,this.options?.input)}catch(oe){this._snapshot={status:"error",output:void 0,error:oe}}}update(ee,oe){this._snapshot=ee;let ae;for(;ae=this._deferred.shift();)try{ae()}catch(le){this._deferred.length=0,this._snapshot={...ee,status:"error",error:le}}switch(this._snapshot.status){case"active":for(const le of this.observers)try{le.next?.(ee)}catch(ve){w(ve)}break;case"done":for(const le of this.observers)try{le.next?.(ee)}catch(ve){w(ve)}this._stopProcedure(),this._complete(),this._doneEvent=f(this.id,this._snapshot.output),this._parent&&this.system._relay(this,this._parent,this._doneEvent);break;case"error":this._error(this._snapshot.error);break}this.system._sendInspectionEvent({type:"@xstate.snapshot",actorRef:this,event:oe,snapshot:ee})}subscribe(ee,oe,ae){const le=H(ee,oe,ae);if(this._processingStatus!==K.Stopped)this.observers.add(le);else switch(this._snapshot.status){case"done":try{le.complete?.()}catch(ve){w(ve)}break;case"error":{const ve=this._snapshot.error;if(!le.error)w(ve);else try{le.error(ve)}catch(De){w(De)}break}}return{unsubscribe:()=>{this.observers.delete(le)}}}on(ee,oe){let ae=this.eventListeners.get(ee);ae||(ae=new Set,this.eventListeners.set(ee,ae));const le=oe.bind(void 0);return ae.add(le),{unsubscribe:()=>{ae.delete(le)}}}start(){if(this._processingStatus===K.Running)return this;this._syncSnapshot&&this.subscribe({next:oe=>{oe.status==="active"&&this.system._relay(this,this._parent,{type:`xstate.snapshot.${this.id}`,snapshot:oe})},error:()=>{}}),this.system._register(this.sessionId,this),this.systemId&&this.system._set(this.systemId,this),this._processingStatus=K.Running;const ee=v(this.options.input);switch(this.system._sendInspectionEvent({type:"@xstate.event",sourceRef:this._parent,actorRef:this,event:ee}),this._snapshot.status){case"done":return this.update(this._snapshot,ee),this;case"error":return this._error(this._snapshot.error),this}if(this._parent||this.system.start(),this.logic.start)try{this.logic.start(this._snapshot,this._actorScope)}catch(oe){return this._snapshot={...this._snapshot,status:"error",error:oe},this._error(oe),this}return this.update(this._snapshot,ee),this.options.devTools&&this.attachDevTools(),this.mailbox.start(),this}_process(ee){let oe,ae;try{oe=this.logic.transition(this._snapshot,ee,this._actorScope)}catch(le){ae={err:le}}if(ae){const{err:le}=ae;this._snapshot={...this._snapshot,status:"error",error:le},this._error(le);return}this.update(oe,ee),ee.type===d&&(this._stopProcedure(),this._complete())}_stop(){return this._processingStatus===K.Stopped?this:(this.mailbox.clear(),this._processingStatus===K.NotStarted?(this._processingStatus=K.Stopped,this):(this.mailbox.enqueue({type:d}),this))}stop(){if(this._parent)throw new Error("A non-root actor cannot be stopped directly.");return this._stop()}_complete(){for(const ee of this.observers)try{ee.complete?.()}catch(oe){w(oe)}this.observers.clear()}_reportError(ee){if(!this.observers.size){this._parent||w(ee);return}let oe=!1;for(const ae of this.observers){const le=ae.error;oe||=!le;try{le?.(ee)}catch(ve){w(ve)}}this.observers.clear(),oe&&w(ee)}_error(ee){this._stopProcedure(),this._reportError(ee),this._parent&&this.system._relay(this,this._parent,g(this.id,ee))}_stopProcedure(){return this._processingStatus!==K.Running?this:(this.system.scheduler.cancelAll(this),this.mailbox.clear(),this.mailbox=new r(this._process.bind(this)),this._processingStatus=K.Stopped,this.system._unregister(this),this)}_send(ee){this._processingStatus!==K.Stopped&&this.mailbox.enqueue(ee)}send(ee){this.system._relay(void 0,this,ee)}attachDevTools(){const{devTools:ee}=this.options;ee&&(typeof ee=="function"?ee:e.devToolsAdapter)(this)}toJSON(){return{xstate$$type:Y,id:this.id}}getPersistedSnapshot(ee){return this.logic.getPersistedSnapshot(this._snapshot,ee)}[x](){return this}getSnapshot(){return this._snapshot}}function Z(J,...[ee]){return new W(J,ee)}const Q=Z;function ie(J,ee,oe,ae,{sendId:le}){const ve=typeof le=="function"?le(oe,ae):le;return[ee,{sendId:ve},void 0]}function te(J,ee){J.defer(()=>{J.system.scheduler.cancel(J.self,ee.sendId)})}function re(J){function ee(oe,ae){}return ee.type="xstate.cancel",ee.sendId=J,ee.resolve=ie,ee.execute=te,ee}function ue(J,ee,oe,ae,{id:le,systemId:ve,src:De,input:Fe,syncSnapshot:rt}){const lt=typeof De=="string"?V(ee.machine,De):De,Ot=typeof le=="function"?le(oe):le;let Ke,Ze;return lt&&(Ze=typeof Fe=="function"?Fe({context:ee.context,event:oe.event,self:J.self}):Fe,Ke=Z(lt,{id:Ot,src:De,parent:J.self,syncSnapshot:rt,systemId:ve,input:Ze})),[Gr(ee,{children:{...ee.children,[Ot]:Ke}}),{id:le,systemId:ve,actorRef:Ke,src:De,input:Ze},void 0]}function _e(J,{actorRef:ee}){ee&&J.defer(()=>{ee._processingStatus!==K.Stopped&&ee.start()})}function ce(...[J,{id:ee,systemId:oe,input:ae,syncSnapshot:le=!1}={}]){function ve(De,Fe){}return ve.type="xstate.spawnChild",ve.id=ee,ve.systemId=oe,ve.src=J,ve.input=ae,ve.syncSnapshot=le,ve.resolve=ue,ve.execute=_e,ve}function pe(J,ee,oe,ae,{actorRef:le}){const ve=typeof le=="function"?le(oe,ae):le,De=typeof ve=="string"?ee.children[ve]:ve;let Fe=ee.children;return De&&(Fe={...Fe},delete Fe[De.id]),[Gr(ee,{children:Fe}),De,void 0]}function xe(J,ee){if(ee){if(J.system._unregister(ee),ee._processingStatus!==K.Running){J.stopChild(ee);return}J.defer(()=>{J.stopChild(ee)})}}function je(J){function ee(oe,ae){}return ee.type="xstate.stopChild",ee.actorRef=J,ee.resolve=pe,ee.execute=xe,ee}const Be=je;function Je(J,ee,{stateValue:oe}){if(typeof oe=="string"&&Ht(oe)){const ae=J.machine.getStateNodeById(oe);return J._nodes.some(le=>le===ae)}return J.matches(oe)}function st(J){function ee(){return!1}return ee.check=Je,ee.stateValue=J,ee}function Le(J,{context:ee,event:oe},{guards:ae}){return!Et(ae[0],ee,oe,J)}function St(J){function ee(oe,ae){return!1}return ee.check=Le,ee.guards=[J],ee}function Ve(J,{context:ee,event:oe},{guards:ae}){return ae.every(le=>Et(le,ee,oe,J))}function qe(J){function ee(oe,ae){return!1}return ee.check=Ve,ee.guards=J,ee}function Xe(J,{context:ee,event:oe},{guards:ae}){return ae.some(le=>Et(le,ee,oe,J))}function It(J){function ee(oe,ae){return!1}return ee.check=Xe,ee.guards=J,ee}function Et(J,ee,oe,ae){const{machine:le}=ae,ve=typeof J=="function",De=ve?J:le.implementations.guards[typeof J=="string"?J:J.type];if(!ve&&!De)throw new Error(`Guard '${typeof J=="string"?J:J.type}' is not implemented.'.`);if(typeof De!="function")return Et(De,ee,oe,ae);const Fe={context:ee,event:oe},rt=ve||typeof J=="string"?void 0:"params"in J?typeof J.params=="function"?J.params({context:ee,event:oe}):J.params:void 0;return"check"in De?De.check(ae,Fe,De):De(Fe,rt)}const be=J=>J.type==="atomic"||J.type==="final";function ke(J){return Object.values(J.states).filter(ee=>ee.type!=="history")}function Ye(J,ee){const oe=[];if(ee===J)return oe;let ae=J.parent;for(;ae&&ae!==ee;)oe.push(ae),ae=ae.parent;return oe}function yt(J){const ee=new Set(J),oe=Tr(ee);for(const ae of ee)if(ae.type==="compound"&&(!oe.get(ae)||!oe.get(ae).length))ui(ae).forEach(le=>ee.add(le));else if(ae.type==="parallel"){for(const le of ke(ae))if(le.type!=="history"&&!ee.has(le)){const ve=ui(le);for(const De of ve)ee.add(De)}}for(const ae of ee){let le=ae.parent;for(;le;)ee.add(le),le=le.parent}return ee}function xt(J,ee){const oe=ee.get(J);if(!oe)return{};if(J.type==="compound"){const le=oe[0];if(le){if(be(le))return le.key}else return{}}const ae={};for(const le of oe)ae[le.key]=xt(le,ee);return ae}function Tr(J){const ee=new Map;for(const oe of J)ee.has(oe)||ee.set(oe,[]),oe.parent&&(ee.has(oe.parent)||ee.set(oe.parent,[]),ee.get(oe.parent).push(oe));return ee}function er(J,ee){const oe=yt(ee);return xt(J,Tr(oe))}function qt(J,ee){return ee.type==="compound"?ke(ee).some(oe=>oe.type==="final"&&J.has(oe)):ee.type==="parallel"?ke(ee).every(oe=>qt(J,oe)):ee.type==="final"}const Ht=J=>J[0]===a;function Kr(J,ee){return J.transitions.get(ee)||[...J.transitions.keys()].filter(oe=>{if(oe===l)return!0;if(!oe.endsWith(".*"))return!1;const ae=oe.split("."),le=ee.split(".");for(let ve=0;veae.length-oe.length).flatMap(oe=>J.transitions.get(oe))}function Gt(J){const ee=J.config.after;if(!ee)return[];const oe=ae=>{const le=u(ae,J.id),ve=le.type;return J.entry.push(lu(le,{id:ve,delay:ae})),J.exit.push(re(ve)),ve};return Object.keys(ee).flatMap(ae=>{const le=ee[ae],ve=typeof le=="string"?{target:le}:le,De=Number.isNaN(+ae)?ae:+ae,Fe=oe(De);return A(ve).map(rt=>({...rt,event:Fe,delay:De}))}).map(ae=>{const{delay:le}=ae;return{...ln(J,ae.event,ae),delay:le}})}function ln(J,ee,oe){const ae=L(oe.target),le=oe.reenter??!1,ve=oo(J,ae),De={...oe,actions:A(oe.actions),guard:oe.guard,target:ve,source:J,reenter:le,eventType:ee,toJSON:()=>({...De,source:`#${J.id}`,target:ve?ve.map(Fe=>`#${Fe.id}`):void 0})};return De}function Wn(J){const ee=new Map;if(J.config.on)for(const oe of Object.keys(J.config.on)){if(oe===i)throw new Error('Null events ("") cannot be specified as a transition key. Use `always: { ... }` instead.');const ae=J.config.on[oe];ee.set(oe,P(ae).map(le=>ln(J,oe,le)))}if(J.config.onDone){const oe=`xstate.done.state.${J.id}`;ee.set(oe,P(J.config.onDone).map(ae=>ln(J,oe,ae)))}for(const oe of J.invoke){if(oe.onDone){const ae=`xstate.done.actor.${oe.id}`;ee.set(ae,P(oe.onDone).map(le=>ln(J,ae,le)))}if(oe.onError){const ae=`xstate.error.actor.${oe.id}`;ee.set(ae,P(oe.onError).map(le=>ln(J,ae,le)))}if(oe.onSnapshot){const ae=`xstate.snapshot.${oe.id}`;ee.set(ae,P(oe.onSnapshot).map(le=>ln(J,ae,le)))}}for(const oe of J.after){let ae=ee.get(oe.eventType);ae||(ae=[],ee.set(oe.eventType,ae)),ae.push(oe)}return ee}function fn(J,ee){const oe=typeof ee=="string"?J.states[ee]:ee?J.states[ee.target]:void 0;if(!oe&&ee)throw new Error(`Initial state node "${ee}" not found on parent state node #${J.id}`);const ae={source:J,actions:!ee||typeof ee=="string"?[]:A(ee.actions),eventType:null,reenter:!1,target:oe?[oe]:[],toJSON:()=>({...ae,source:`#${J.id}`,target:oe?[`#${oe.id}`]:[]})};return ae}function oo(J,ee){if(ee!==void 0)return ee.map(oe=>{if(typeof oe!="string")return oe;if(Ht(oe))return J.machine.getStateNodeById(oe);const ae=oe[0]===n;if(ae&&!J.parent)return xs(J,oe.slice(1));const le=ae?J.key+oe:oe;if(J.parent)try{return xs(J.parent,le)}catch(ve){throw new Error(`Invalid transition definition for state node '${J.id}': -${ve.message}`)}else throw new Error(`Invalid target: "${oe}" is not a valid target from the root node. Did you mean ".${oe}"?`)})}function Yo(J){const ee=L(J.config.target);return ee?{target:ee.map(oe=>typeof oe=="string"?xs(J.parent,oe):oe)}:J.parent.initial}function jo(J){return J.type==="history"}function ui(J){const ee=Dl(J);for(const oe of ee)for(const ae of Ye(oe,J))ee.add(ae);return ee}function Dl(J){const ee=new Set;function oe(ae){if(!ee.has(ae)){if(ee.add(ae),ae.type==="compound")oe(ae.initial.target[0]);else if(ae.type==="parallel")for(const le of ke(ae))oe(le)}}return oe(J),ee}function Ao(J,ee){if(Ht(ee))return J.machine.getStateNodeById(ee);if(!J.states)throw new Error(`Unable to retrieve child state '${ee}' from '${J.id}'; no child states exist.`);const oe=J.states[ee];if(!oe)throw new Error(`Child state '${ee}' does not exist on '${J.id}'`);return oe}function xs(J,ee){if(typeof ee=="string"&&Ht(ee))try{return J.machine.getStateNodeById(ee)}catch{}const oe=C(ee).slice();let ae=J;for(;oe.length;){const le=oe.shift();if(!le.length)break;ae=Ao(ae,le)}return ae}function ws(J,ee){if(typeof ee=="string"){const le=J.states[ee];if(!le)throw new Error(`State '${ee}' does not exist on '${J.id}'`);return[J,le]}const oe=Object.keys(ee),ae=oe.map(le=>Ao(J,le)).filter(Boolean);return[J.machine.root,J].concat(ae,oe.reduce((le,ve)=>{const De=Ao(J,ve);if(!De)return le;const Fe=ws(De,ee[ve]);return le.concat(Fe)},[]))}function zc(J,ee,oe,ae){const le=Ao(J,ee).next(oe,ae);return!le||!le.length?J.next(oe,ae):le}function Ml(J,ee,oe,ae){const le=Object.keys(ee),ve=Ao(J,le[0]),De=ks(ve,ee[le[0]],oe,ae);return!De||!De.length?J.next(oe,ae):De}function lh(J,ee,oe,ae){const le=[];for(const ve of Object.keys(ee)){const De=ee[ve];if(!De)continue;const Fe=Ao(J,ve),rt=ks(Fe,De,oe,ae);rt&&le.push(...rt)}return le.length?le:J.next(oe,ae)}function ks(J,ee,oe,ae){return typeof ee=="string"?zc(J,ee,oe,ae):Object.keys(ee).length===1?Ml(J,ee,oe,ae):lh(J,ee,oe,ae)}function tu(J){return Object.keys(J.states).map(ee=>J.states[ee]).filter(ee=>ee.type==="history")}function Xo(J,ee){let oe=J;for(;oe.parent&&oe.parent!==ee;)oe=oe.parent;return oe.parent===ee}function Tc(J,ee){const oe=new Set(J),ae=new Set(ee);for(const le of oe)if(ae.has(le))return!0;for(const le of ae)if(oe.has(le))return!0;return!1}function _s(J,ee,oe){const ae=new Set;for(const le of J){let ve=!1;const De=new Set;for(const Fe of ae)if(Tc(Nr([le],ee,oe),Nr([Fe],ee,oe)))if(Xo(le.source,Fe.source))De.add(Fe);else{ve=!0;break}if(!ve){for(const Fe of De)ae.delete(Fe);ae.add(le)}}return Array.from(ae)}function ru(J){const[ee,...oe]=J;for(const ae of Ye(ee,void 0))if(oe.every(le=>Xo(le,ae)))return ae}function Ss(J,ee){if(!J.target)return[];const oe=new Set;for(const ae of J.target)if(jo(ae))if(ee[ae.id])for(const le of ee[ae.id])oe.add(le);else for(const le of Ss(Yo(ae),ee))oe.add(le);else oe.add(ae);return[...oe]}function Ko(J,ee){const oe=Ss(J,ee);if(!oe)return;if(!J.reenter&&oe.every(le=>le===J.source||Xo(le,J.source)))return J.source;const ae=ru(oe.concat(J.source));if(ae)return ae;if(!J.reenter)return J.source.machine.root}function Nr(J,ee,oe){const ae=new Set;for(const le of J)if(le.target?.length){const ve=Ko(le,oe);le.reenter&&le.source===ve&&ae.add(ve);for(const De of ee)Xo(De,ve)&&ae.add(De)}return[...ae]}function Mn(J,ee){if(J.length!==ee.size)return!1;for(const oe of J)if(!ee.has(oe))return!1;return!0}function Do(J,ee,oe,ae,le,ve){if(!J.length)return ee;const De=new Set(ee._nodes);let Fe=ee.historyValue;const rt=_s(J,De,Fe);let lt=ee;le||([lt,Fe]=za(lt,ae,oe,rt,De,Fe,ve,oe.actionExecutor)),lt=ho(lt,ae,oe,rt.flatMap(Ke=>Ke.actions),ve,void 0),lt=jc(lt,ae,oe,rt,De,ve,Fe,le);const Ot=[...De];lt.status==="done"&&(lt=ho(lt,ae,oe,Ot.sort((Ke,Ze)=>Ze.order-Ke.order).flatMap(Ke=>Ke.exit),ve,void 0));try{return Fe===ee.historyValue&&Mn(ee._nodes,De)?lt:Gr(lt,{_nodes:Ot,historyValue:Fe})}catch(Ke){throw Ke}}function Nl(J,ee,oe,ae,le){if(ae.output===void 0)return;const ve=p(le.id,le.output!==void 0&&le.parent?z(le.output,J.context,ee,oe.self):void 0);return z(ae.output,J.context,ve,oe.self)}function jc(J,ee,oe,ae,le,ve,De,Fe){let rt=J;const lt=new Set,Ot=new Set;sh(ae,De,Ot,lt),Fe&&Ot.add(J.machine.root);const Ke=new Set;for(const Ze of[...lt].sort((pt,vt)=>pt.order-vt.order)){le.add(Ze);const pt=[];pt.push(...Ze.entry);for(const vt of Ze.invoke)pt.push(ce(vt.src,{...vt,syncSnapshot:!!vt.onSnapshot}));if(Ot.has(Ze)){const vt=Ze.initial.actions;pt.push(...vt)}if(rt=ho(rt,ee,oe,pt,ve,Ze.invoke.map(vt=>vt.id)),Ze.type==="final"){const vt=Ze.parent;let Lt=vt?.type==="parallel"?vt:vt?.parent,No=Lt||Ze;for(vt?.type==="compound"&&ve.push(p(vt.id,Ze.output!==void 0?z(Ze.output,rt.context,ee,oe.self):void 0));Lt?.type==="parallel"&&!Ke.has(Lt)&&qt(le,Lt);)Ke.add(Lt),ve.push(p(Lt.id)),No=Lt,Lt=Lt.parent;if(Lt)continue;rt=Gr(rt,{status:"done",output:Nl(rt,ee,oe,rt.machine.root,No)})}}return rt}function sh(J,ee,oe,ae){for(const le of J){const ve=Ko(le,ee);for(const Fe of le.target||[])!jo(Fe)&&(le.source!==Fe||le.source!==ve||le.reenter)&&(ae.add(Fe),oe.add(Fe)),Li(Fe,ee,oe,ae);const De=Ss(le,ee);for(const Fe of De){const rt=Ye(Fe,ve);ve?.type==="parallel"&&rt.push(ve),Ra(ae,ee,oe,rt,!le.source.parent&&le.reenter?void 0:ve)}}}function Li(J,ee,oe,ae){if(jo(J))if(ee[J.id]){const le=ee[J.id];for(const ve of le)ae.add(ve),Li(ve,ee,oe,ae);for(const ve of le)Pl(ve,J.parent,ae,ee,oe)}else{const le=Yo(J);for(const ve of le.target)ae.add(ve),le===J.parent?.initial&&oe.add(J.parent),Li(ve,ee,oe,ae);for(const ve of le.target)Pl(ve,J.parent,ae,ee,oe)}else if(J.type==="compound"){const[le]=J.initial.target;jo(le)||(ae.add(le),oe.add(le)),Li(le,ee,oe,ae),Pl(le,J,ae,ee,oe)}else if(J.type==="parallel")for(const le of ke(J).filter(ve=>!jo(ve)))[...ae].some(ve=>Xo(ve,le))||(jo(le)||(ae.add(le),oe.add(le)),Li(le,ee,oe,ae))}function Ra(J,ee,oe,ae,le){for(const ve of ae)if((!le||Xo(ve,le))&&J.add(ve),ve.type==="parallel")for(const De of ke(ve).filter(Fe=>!jo(Fe)))[...J].some(Fe=>Xo(Fe,De))||(J.add(De),Li(De,ee,oe,J))}function Pl(J,ee,oe,ae,le){Ra(oe,ae,le,Ye(J,ee))}function za(J,ee,oe,ae,le,ve,De,Fe){let rt=J;const lt=Nr(ae,le,ve);lt.sort((Ke,Ze)=>Ze.order-Ke.order);let Ot;for(const Ke of lt)for(const Ze of tu(Ke)){let pt;Ze.history==="deep"?pt=vt=>be(vt)&&Xo(vt,Ke):pt=vt=>vt.parent===Ke,Ot??={...ve},Ot[Ze.id]=Array.from(le).filter(pt)}for(const Ke of lt)rt=ho(rt,ee,oe,[...Ke.exit,...Ke.invoke.map(Ze=>je(Ze.id))],De,void 0),le.delete(Ke);return[rt,Ot||ve]}function Ta(J,ee){return J.implementations.actions[ee]}function pi(J,ee,oe,ae,le,ve){const{machine:De}=J;let Fe=J;for(const rt of ae){const lt=typeof rt=="function",Ot=lt?rt:Ta(De,typeof rt=="string"?rt:rt.type),Ke={context:Fe.context,event:ee,self:oe.self,system:oe.system},Ze=lt||typeof rt=="string"?void 0:"params"in rt?typeof rt.params=="function"?rt.params({context:Fe.context,event:ee}):rt.params:void 0;if(!Ot||!("resolve"in Ot)){oe.actionExecutor({type:typeof rt=="string"?rt:typeof rt=="object"?rt.type:rt.name||"(anonymous)",info:Ke,params:Ze,exec:Ot});continue}const pt=Ot,[vt,Lt,No]=pt.resolve(oe,Fe,Ke,Ze,Ot,le);Fe=vt,"retryResolve"in pt&&ve?.push([pt,Lt]),"execute"in pt&&oe.actionExecutor({type:pt.type,info:Ke,params:Lt,exec:pt.execute.bind(null,oe,Lt)}),No&&(Fe=pi(Fe,ee,oe,No,le,ve))}return Fe}function ho(J,ee,oe,ae,le,ve){const De=ve?[]:void 0,Fe=pi(J,ee,oe,ae,{internalQueue:le,deferredActorIds:ve},De);return De?.forEach(([rt,lt])=>{rt.retryResolve(oe,Fe,lt)}),Fe}function Wr(J,ee,oe,ae){let le=J;const ve=[];function De(lt,Ot,Ke){oe.system._sendInspectionEvent({type:"@xstate.microstep",actorRef:oe.self,event:Ot,snapshot:lt,_transitions:Ke}),ve.push(lt)}if(ee.type===d)return le=Gr(Ac(le,ee,oe),{status:"stopped"}),De(le,ee,[]),{snapshot:le,microstates:ve};let Fe=ee;if(Fe.type!==s){const lt=Fe,Ot=I(lt),Ke=Dc(lt,le);if(Ot&&!Ke.length)return le=Gr(J,{status:"error",error:lt.error}),De(le,lt,[]),{snapshot:le,microstates:ve};le=Do(Ke,J,oe,Fe,!1,ae),De(le,lt,Ke)}let rt=!0;for(;le.status==="active";){let lt=rt?Fi(le,Fe):[];const Ot=lt.length?le:void 0;if(!lt.length){if(!ae.length)break;Fe=ae.shift(),lt=Dc(Fe,le)}le=Do(lt,le,oe,Fe,!1,ae),rt=le!==Ot,De(le,Fe,lt)}return le.status!=="active"&&Ac(le,Fe,oe),{snapshot:le,microstates:ve}}function Ac(J,ee,oe){return ho(J,ee,oe,Object.values(J.children).map(ae=>je(ae)),[],void 0)}function Dc(J,ee){return ee.machine.getTransitionData(ee,J)}function Fi(J,ee){const oe=new Set,ae=J._nodes.filter(be);for(const le of ae)e:for(const ve of[le].concat(Ye(le,void 0)))if(ve.always){for(const De of ve.always)if(De.guard===void 0||Et(De.guard,J.context,ee,J)){oe.add(De);break e}}return _s(Array.from(oe),new Set(J._nodes),J.historyValue)}function ja(J,ee){const oe=yt(ws(J,ee));return er(J,[...oe])}function nu(J){return!!J&&typeof J=="object"&&"machine"in J&&"value"in J}const Es=function(J){return k(J,this.value)},ou=function(J){return this.tags.has(J)},ch=function(J){const ee=this.machine.getTransitionData(this,J);return!!ee?.length&&ee.some(oe=>oe.target!==void 0||oe.actions.length)},Cs=function(){const{_nodes:J,tags:ee,machine:oe,getMeta:ae,toJSON:le,can:ve,hasTag:De,matches:Fe,...rt}=this;return{...rt,tags:Array.from(ee)}},$s=function(){return this._nodes.reduce((J,ee)=>(ee.meta!==void 0&&(J[ee.id]=ee.meta),J),{})};function Mo(J,ee){return{status:J.status,output:J.output,error:J.error,machine:ee,context:J.context,_nodes:J._nodes,value:er(ee.root,J._nodes),tags:new Set(J._nodes.flatMap(oe=>oe.tags)),children:J.children,historyValue:J.historyValue||{},matches:Es,hasTag:ou,can:ch,getMeta:$s,toJSON:Cs}}function Gr(J,ee={}){return Mo({...J,...ee},J.machine)}function iu(J){if(typeof J!="object"||J===null)return{};const ee={};for(const oe in J){const ae=J[oe];Array.isArray(ae)&&(ee[oe]=ae.map(le=>({id:le.id})))}return ee}function dh(J,ee){const{_nodes:oe,tags:ae,machine:le,children:ve,context:De,can:Fe,hasTag:rt,matches:lt,getMeta:Ot,toJSON:Ke,...Ze}=J,pt={};for(const vt in ve){const Lt=ve[vt];pt[vt]={snapshot:Lt.getPersistedSnapshot(ee),src:Lt.src,systemId:Lt.systemId,syncSnapshot:Lt._syncSnapshot}}return{...Ze,context:Aa(De),children:pt,historyValue:iu(Ze.historyValue)}}function Aa(J){let ee;for(const oe in J){const ae=J[oe];if(ae&&typeof ae=="object")if("sessionId"in ae&&"send"in ae&&"ref"in ae)ee??=Array.isArray(J)?J.slice():{...J},ee[oe]={xstate$$type:Y,id:ae.id};else{const le=Aa(ae);le!==ae&&(ee??=Array.isArray(J)?J.slice():{...J},ee[oe]=le)}}return ee??J}function au(J,ee,oe,ae,{event:le,id:ve,delay:De},{internalQueue:Fe}){const rt=ee.machine.implementations.delays;if(typeof le=="string")throw new Error(`Only event objects may be used with raise; use raise({ type: "${le}" }) instead`);const lt=typeof le=="function"?le(oe,ae):le;let Ot;if(typeof De=="string"){const Ke=rt&&rt[De];Ot=typeof Ke=="function"?Ke(oe,ae):Ke}else Ot=typeof De=="function"?De(oe,ae):De;return typeof Ot!="number"&&Fe.push(lt),[ee,{event:lt,id:ve,delay:Ot},void 0]}function Da(J,ee){const{event:oe,delay:ae,id:le}=ee;if(typeof ae=="number"){J.defer(()=>{const ve=J.self;J.system.scheduler.schedule(ve,ve,oe,ae,le)});return}}function lu(J,ee){function oe(ae,le){}return oe.type="xstate.raise",oe.event=J,oe.id=ee?.id,oe.delay=ee?.delay,oe.resolve=au,oe.execute=Da,oe}return ft.$$ACTOR_TYPE=Y,ft.Actor=W,ft.NULL_EVENT=i,ft.ProcessingStatus=K,ft.STATE_DELIMITER=n,ft.XSTATE_ERROR=c,ft.XSTATE_STOP=d,ft.and=qe,ft.cancel=re,ft.cloneMachineSnapshot=Gr,ft.createActor=Z,ft.createErrorActorEvent=g,ft.createInitEvent=v,ft.createInvokeId=M,ft.createMachineSnapshot=Mo,ft.evaluateGuard=Et,ft.formatInitialTransition=fn,ft.formatTransition=ln,ft.formatTransitions=Wn,ft.getAllOwnEventDescriptors=B,ft.getAllStateNodes=yt,ft.getCandidates=Kr,ft.getDelayedTransitions=Gt,ft.getInitialStateNodes=Dl,ft.getPersistedSnapshot=dh,ft.getStateNodeByPath=xs,ft.getStateNodes=ws,ft.interpret=Q,ft.isInFinalState=qt,ft.isMachineSnapshot=nu,ft.isStateId=Ht,ft.macrostep=Wr,ft.mapValues=R,ft.matchesState=k,ft.microstep=Do,ft.not=St,ft.or=It,ft.pathToStateValue=$,ft.raise=lu,ft.resolveActionsAndContext=ho,ft.resolveReferencedActor=V,ft.resolveStateValue=ja,ft.spawnChild=ce,ft.stateIn=st,ft.stop=Be,ft.stopChild=je,ft.toArray=A,ft.toObserver=H,ft.toStatePath=C,ft.toTransitionConfigArray=P,ft.transitionNode=ks,ft}var Yee;function dYe(){if(Yee)return Pd;Yee=1,Object.defineProperty(Pd,"__esModule",{value:!0});var e=I2();return RR(),Pd.and=e.and,Pd.evaluateGuard=e.evaluateGuard,Pd.not=e.not,Pd.or=e.or,Pd.stateIn=e.stateIn,Pd}var Bd=dYe();const uYe=B3(({sendBack:e})=>{const r=$w([["Escape",n=>{n.stopPropagation(),e({type:"close"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r,{capture:!0}),()=>{document.body.removeEventListener("keydown",r,{capture:!0})}}),pl=ns({actors:{relationshipDetails:cYe,elementDetails:aYe,relationshipsBrowser:Vee,hotkey:uYe},guards:{"has overlays?":({context:e})=>e.overlays.length>0,"close specific overlay?":({context:e,event:r})=>(ht(r,"close"),pw(r.actorId)&&e.overlays.some(n=>n.id===r.actorId)),"last: is relationshipDetails?":({context:e})=>dd(e.overlays)?.type==="relationshipDetails","last: is relationshipsBrowser?":({context:e})=>dd(e.overlays)?.type==="relationshipsBrowser"}}),pYe=()=>pl.enqueueActions(({context:e,enqueue:r})=>{if(e.overlays.length===0)return;const n=dd(e.overlays)?.id;n&&(r.sendTo(n,{type:"close"}),r.stopChild(n),r.assign({overlays:e.overlays.filter(o=>o.id!==n)}))}),hYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"close");const o=n.actorId;if(!pw(o))return;const i=e.overlays.find(a=>a.id===o)?.id;i&&(r.sendTo(i,{type:"close"}),r.stopChild(i),r.assign({overlays:e.overlays.filter(a=>a.id!==i)}))}),Xee=()=>pl.enqueueActions(({context:e,enqueue:r})=>{for(const{id:n}of U$e(e.overlays))r.sendTo(n,{type:"close"}),r.stopChild(n);r.assign({overlays:[]})}),fYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{if(ht(n,"open.elementDetails"),e.overlays.some(i=>i.type==="elementDetails"&&i.subject===n.subject))return;const o=`elementDetails-${e.seq}`;r.spawnChild("elementDetails",{id:o,input:n,syncSnapshot:!0}),r.assign({seq:e.seq+1,overlays:[...e.overlays,{id:o,type:"elementDetails",subject:n.subject}]})}),mYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"open.relationshipDetails");const o=dd(e.overlays);if(o?.type==="relationshipDetails"){r.sendTo(o.id,{...n,type:"navigate.to"});return}const i=`relationshipDetails-${e.seq}`;r.spawnChild("relationshipDetails",{id:i,input:n,syncSnapshot:!0}),r.assign({seq:e.seq+1,overlays:[...e.overlays,{id:i,type:"relationshipDetails"}]})}),gYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"open.relationshipsBrowser");const o=dd(e.overlays);if(o?.type==="relationshipsBrowser"){r.sendTo(o.id,{type:"navigate.to",subject:n.subject,viewId:n.viewId});return}const i=`relationshipsBrowser-${e.seq}`;r.spawnChild("relationshipsBrowser",{id:i,input:n,syncSnapshot:!0}),r.assign({seq:e.seq+1,overlays:[...e.overlays,{id:i,type:"relationshipsBrowser",subject:n.subject}]})}),Kee=()=>pl.enqueueActions(({enqueue:e,event:r})=>{switch(ht(r,["open.elementDetails","open.relationshipDetails","open.relationshipsBrowser"]),r.type){case"open.elementDetails":e(fYe());break;case"open.relationshipDetails":e(mYe());break;case"open.relationshipsBrowser":e(gYe());break}}),yYe=()=>pl.spawnChild("hotkey",{id:"hotkey"}),Zee=()=>pl.stopChild("hotkey"),Qee=()=>pl.enqueueActions(({enqueue:e,context:r})=>{r.overlays.length===0&&e.raise({type:"close"})}),vYe=pl.createMachine({id:"overlays",context:()=>({seq:1,overlays:[]}),initial:"idle",states:{idle:{on:{"open.*":{actions:Kee(),target:"active"}}},active:{entry:[yYe()],exit:[Zee()],on:{"open.*":{actions:Kee()},close:[{guard:Bd.not("has overlays?"),target:"idle"},{guard:"close specific overlay?",actions:[hYe(),Qee()]},{actions:[pYe(),Qee()]}],"close.all":{actions:[Xee()],target:"idle"}}},final:{entry:[Xee(),Zee()],type:"final"}}}),bYe=vYe,xYe=ns({actions:{"change searchValue":Bt({searchValue:({event:e,context:r})=>(ht(e,["change.search","open"]),e.search??r.searchValue)}),"reset pickViewFor":Bt({pickViewFor:()=>null})}}).createMachine({id:"search",context:{openedWithSearch:null,searchValue:"",pickViewFor:null},initial:"inactive",on:{close:{target:".inactive",actions:"reset pickViewFor"}},states:{inactive:{on:{open:{target:"opened",actions:[Bt({openedWithSearch:({event:e})=>e.search??null,searchValue:({event:e,context:r})=>e.search??r.searchValue})]}}},opened:{on:{open:{actions:"change searchValue"},"change.search":{actions:"change searchValue"},"pickview.open":{target:"pickView",actions:Bt({pickViewFor:({event:e})=>e.elementFqn})}}},pickView:{on:{"pickview.close":{target:"opened",actions:"reset pickViewFor"}}}}}),wYe=xYe,kYe=B3(({sendBack:e})=>{const r=$w([["Escape",o=>{o.stopPropagation(),e({type:"key.esc"})},{preventDefault:!0}]]),n=$w([["ArrowLeft",o=>{o.stopPropagation(),e({type:"key.arrow.left"})},{preventDefault:!0}],["ArrowUp",o=>{o.stopPropagation(),e({type:"key.arrow.up"})},{preventDefault:!0}],["ArrowRight",o=>{o.stopPropagation(),e({type:"key.arrow.right"})},{preventDefault:!0}],["ArrowDown",o=>{o.stopPropagation(),e({type:"key.arrow.down"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r),document.body.addEventListener("keydown",n,{capture:!0}),()=>{document.body.removeEventListener("keydown",r),document.body.removeEventListener("keydown",n,{capture:!0})}}),_Ye=B3(({sendBack:e})=>{const r=()=>{e({type:"media.print.on"})},n=()=>{e({type:"media.print.off"})};return window.addEventListener("beforeprint",r),window.addEventListener("afterprint",n),()=>{window.removeEventListener("beforeprint",r),window.removeEventListener("afterprint",n)}}),O2=e=>{let r=e.toggledFeatures;const n=Zn(e.activeWalkthrough),o=e.features.enableCompareWithLatest&&(r.enableCompareWithLatest??!1)&&Zn(e.view._layout)&&!n,i=e.features.enableReadOnly||(r.enableReadOnly??!1)||n||e.dynamicViewVariant==="sequence"&&e.view._type==="dynamic"||o&&e.view._layout==="auto";return{enableCompareWithLatest:o,enableReadOnly:i}},zR=e=>O2(e).enableReadOnly,Qe=ns({actors:{hotkeyActorLogic:kYe,overlaysActorLogic:bYe,searchActorLogic:wYe,mediaPrintActorLogic:_Ye,editorActor:Aee},guards:{isReady:({context:e})=>e.initialized.xydata&&e.initialized.xyflow,"enabled: Editor":({context:e})=>e.features.enableEditor,"enabled: FitView":({context:e})=>e.features.enableFitView,"enabled: FocusMode":({context:e})=>e.features.enableFocusMode&&zR(e),"enabled: Readonly":({context:e})=>zR(e),"enabled: RelationshipDetails":({context:e})=>e.features.enableRelationshipDetails,"enabled: Search":({context:e})=>e.features.enableSearch,"enabled: ElementDetails":({context:e})=>e.features.enableElementDetails,"enabled: OpenSource":({context:e})=>e.features.enableVscode,"enabled: DynamicViewWalkthrough":({context:e})=>e.features.enableDynamicViewWalkthrough,"focus.node: autoUnfocus":({event:e})=>(ht(e,"focus.node"),e.autoUnfocus===!0),"enabled: Overlays":({context:e})=>e.features.enableElementDetails||e.features.enableRelationshipBrowser||e.features.enableRelationshipDetails,"not readonly":({context:e})=>!zR(e),"is dynamic view":({context:e})=>e.view._type==="dynamic","is same view":({context:e,event:r})=>{if(ht(r,["update.view","navigate.to"]),r.type==="update.view")return e.view.id===r.view.id;if(r.type==="navigate.to")return e.view.id===r.viewId;Qo(r.type)},"is another view":({context:e,event:r})=>{if(ht(r,["update.view","navigate.to"]),r.type==="update.view")return e.view.id!==r.view.id;if(r.type==="navigate.to")return e.view.id!==r.viewId;Qo(r.type)},"click: node has modelFqn":({event:e})=>(ht(e,"xyflow.nodeClick"),"modelFqn"in e.node.data),"click: selected node":({event:e})=>(ht(e,"xyflow.nodeClick"),e.node.selected===!0),"click: same node":({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),e.lastClickedNode?.id===r.node.id),"click: focused node":({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),e.focusedNode===r.node.id),"click: node has connections":({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),e.xyedges.some(n=>n.source===r.node.id||n.target===r.node.id)),"click: selected edge":({event:e})=>(ht(e,["xyflow.edgeClick","xyflow.edgeDoubleClick"]),e.edge.selected===!0||e.edge.data.active===!0)}}),zn={idle:"#idle",focused:"#focused",walkthrough:"#walkthrough",printing:"#printing",navigating:"#navigating"},SYe=[["path",{d:"M3 13a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v6a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2z",key:"svg-0"}],["path",{d:"M9 16a1 1 0 1 0 2 0a1 1 0 0 0 -2 0",key:"svg-1"}],["path",{d:"M13 11v-4a4 4 0 1 1 8 0v4",key:"svg-2"}]],Jee=wt("outline","lock-open-2","LockOpen2",SYe),EYe=[["path",{d:"M5 13a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v6a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-6z",key:"svg-0"}],["path",{d:"M11 16a1 1 0 1 0 2 0a1 1 0 0 0 -2 0",key:"svg-1"}],["path",{d:"M8 11v-4a4 4 0 1 1 8 0v4",key:"svg-2"}]],CYe=wt("outline","lock","Lock",EYe),$Ye=e=>{const r=O2(e).enableCompareWithLatest&&!!e.view.drifts&&e.view._layout==="auto",n=e.view._type==="dynamic"&&e.dynamicViewVariant==="sequence",o=!Zn(e.activeWalkthrough);return{visible:e.features.enableEditor&&o,disabled:r||n,isReadOnly:e.toggledFeatures.enableReadOnly??!1}},RYe=()=>{const{visible:e,disabled:r,isReadOnly:n}=pa($Ye),o=Nt();return y.jsx(Cn,{mode:"popLayout",children:e&&y.jsxs(pr,{component:wa,layout:"position",layoutDependency:n,disabled:r,onClick:i=>{i.stopPropagation(),!r&&o.toggleFeature("ReadOnly")},initial:{opacity:0,scale:.6},animate:{opacity:1,scale:r?.95:1},exit:{opacity:0,scale:.6},whileTap:{translateY:1},className:Ge("group",qn({gap:"0.5",paddingInline:"xxs",paddingBlock:"xxs",userSelect:"none",layerStyle:"likec4.panel.action",backgroundColor:{base:"none",_notDisabled:{_hover:"likec4.panel.action.bg.hover"}}})),children:[y.jsx(Jee,{size:14,stroke:2,style:{display:n?"none":void 0}}),y.jsx(CYe,{size:14,stroke:2,style:{display:n?void 0:"none"}}),y.jsx(Rr,{className:fe({fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8}),style:{display:n?"block":"none"},children:"Edit"})]})})},zYe=[["path",{d:"M6 4v16a1 1 0 0 0 1.524 .852l13 -8a1 1 0 0 0 0 -1.704l-13 -8a1 1 0 0 0 -1.524 .852z",key:"svg-0"}]],TYe=wt("filled","player-play-filled","PlayerPlayFilled",zYe),ete=S.forwardRef((e,r)=>y.jsx(Vn,{variant:"filled",size:"xs",fw:"500",...e,ref:r,component:wa,whileTap:{scale:.95},layout:"position",layoutId:"trigger-dynamic-walkthrough",className:fe({flexShrink:0})}));function jYe(){const{enableReadOnly:e,enableCompareWithLatest:r}=sr(),n=Nt(),o=m0();let i="Start Dynamic View Walkthrough";switch(!0){case!e:i="Walkthrough not available in Edit mode";break;case r:i="Walkthrough not available when Compare is active";break}return y.jsx(bee,{label:i,children:y.jsx(ete,{onClick:a=>{a.stopPropagation(),o.closeDropdown(),n.startWalkthrough()},initial:{opacity:0,scale:.6,translateX:-10},animate:{opacity:1,scale:1,translateX:0},exit:{opacity:0,translateX:-20},size:"compact-xs",h:26,disabled:!e||r,classNames:{label:fe({display:{base:"none","@/md":"inherit"}}),section:fe({marginInlineStart:{base:"0","@/md":"2"}})},rightSection:y.jsx(TYe,{size:10}),children:"Start"})})}const AYe=S.forwardRef(({value:e,onChange:r},n)=>y.jsx(Rr,{ref:n,layout:"position",children:y.jsx(Of,{size:"xs",value:e,component:Rr,onChange:o=>{He(o==="diagram"||o==="sequence","Invalid dynamic view variant"),r(o)},classNames:{label:fe({fontSize:"xxs"})},data:[{value:"diagram",label:"Diagram"},{value:"sequence",label:"Sequence"}]})}));function DYe(){const e=pa(n=>n.dynamicViewVariant),r=Nt();return y.jsxs(Cn,{children:[y.jsx(AYe,{value:e,onChange:n=>{r.switchDynamicViewVariant(n)}}),y.jsx(jYe,{},"trigger-dynamic-walkthrough")]})}const tte=S.memo(()=>{const{enableSearch:e,enableCompareWithLatest:r}=sr(),n=Nt(),o=lf();return y.jsx(Cn,{children:e&&!r&&y.jsxs(pr,{component:wa,layout:"position",onClick:i=>{i.stopPropagation(),n.openSearch()},whileTap:{scale:.95,translateY:1},className:Ge("group",qn({gap:"xxs",paddingInline:"sm",paddingBlock:"xxs",userSelect:"none",layerStyle:"likec4.panel.action.filled",display:{base:"none","@/md":"flex"}})),children:[y.jsx(mR,{size:14,stroke:2.5}),y.jsx(hr,{css:{fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8,whiteSpace:"nowrap"},children:o?"⌘ + K":"Ctrl + K"})]})})});tte.displayName="SearchControl";const MYe=({context:e})=>{const r=e.view.drifts??null;if(!e.features.enableCompareWithLatest||!r||r.length===0)return{hasEditor:!1,isEnabled:!1,isEditable:!1,isActive:!1,drifts:[],canApplyLatest:!1,layout:e.view._layout??"auto"};const{enableCompareWithLatest:n,enableReadOnly:o}=O2(e);return{hasEditor:e.features.enableEditor,isEnabled:!0,isEditable:!o,isActive:n===!0,drifts:r,canApplyLatest:!r.includes("type-changed"),layout:e.view._layout??"auto"}};function TR(){const e=Xf(),r=pn(e,MYe,Ir),n=at(l=>{if(!r.isEnabled){console.warn("Compare with latest feature is not enabled");return}e.send({type:"emit.onLayoutTypeChange",layoutType:l})}),o=at(l=>{if(!r.isEnabled){console.warn("Compare with latest feature is not enabled");return}const s=l?l==="on":!r.isActive;r.isActive&&!s&&r.layout==="auto"&&n("manual"),e.send({type:"toggle.feature",feature:"CompareWithLatest",forceValue:s})}),i=at(()=>{if(!r.isEnabled){console.warn("Compare with latest feature is not enabled");return}e.send({type:"layout.resetManualLayout"})}),a=at(()=>{if(!r.isEnabled){console.warn("Compare with latest feature is not enabled");return}mt(e.system?.get("editor"),"editor actor not found").send({type:"applyLatestToManual"}),r.isActive&&e.send({type:"toggle.feature",feature:"CompareWithLatest",forceValue:!1})});return[r,{toggleCompare:o,switchLayout:n,resetManualLayout:i,applyLatestToManual:a}]}const NYe=[["path",{d:"M12 9v4",key:"svg-0"}],["path",{d:"M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0z",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]],rte=wt("outline","alert-triangle","AlertTriangle",NYe),nte=S.memo(()=>{const[e,{toggleCompare:r}]=TR(),n=bm(),{drifts:o,isActive:i,isEnabled:a}=e;return y.jsx(Cn,{propagate:!0,children:a&&!i&&y.jsxs(Bf,{position:"bottom-start",openDelay:600,closeDelay:200,floatingStrategy:"absolute",offset:{mainAxis:4,crossAxis:-22},...n,children:[y.jsx(AS,{children:y.jsx(pr,{component:wa,layout:"position",onClick:l=>{l.stopPropagation(),r()},whileTap:{scale:.95,translateY:1},className:Ge("group",eQ({variant:"filled",type:"warning"}),qn({gap:"xxs",padding:"1.5",rounded:"sm",userSelect:"none",cursor:"pointer",fontSize:"xs",fontWeight:600})),children:i?y.jsx(y.Fragment,{children:"Stop Compare"}):y.jsx(rte,{size:18})})}),y.jsx(TS,{p:"0",children:y.jsxs(xy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"View is out of sync",children:[y.jsx(it,{mt:2,size:"sm",lh:"xs",children:"Model has changed since this view was last updated."}),y.jsxs(it,{mt:4,size:"sm",lh:"xs",children:["Detected changes:",o.map(l=>y.jsxs(S.Fragment,{children:[y.jsx("br",{}),y.jsxs("span",{children:["- ",l]})]},l))]}),y.jsx(Vn,{mt:"xs",size:"compact-sm",variant:"default",onClick:l=>{l.stopPropagation(),r()},children:"Compare with current state"})]})})]})})});nte.displayName="ManualLayoutWarning";const PYe=({context:e})=>{const r=e.view,n=e.viewModel?.folder;return{folders:!n||n.isRoot?[]:n.breadcrumbs.map(o=>({folderPath:o.path,title:o.title})),viewId:r.id,viewTitle:e.viewModel?.title??(r.title&&n7(r.title))??"Untitled View",isDynamicView:(e.viewModel?._type??r._type)==="dynamic"}},ote=S.memo(()=>{const e=m0(),{enableNavigationButtons:r,enableDynamicViewWalkthrough:n}=sr(),{folders:o,viewTitle:i,isDynamicView:a}=pn(e.actorRef,PYe,tt),l=o.flatMap(({folderPath:c,title:d},u)=>[y.jsx(pr,{component:wa,className:Ge(N2({dimmed:!0,truncate:!0}),"mantine-active",fe({userSelect:"none",maxWidth:"200px",display:{base:"none","@/md":"block"}})),initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},title:d,onMouseEnter:()=>e.send({type:"breadcrumbs.mouseEnter.folder",folderPath:c}),onMouseLeave:()=>e.send({type:"breadcrumbs.mouseLeave.folder",folderPath:c}),onClick:p=>{p.stopPropagation(),e.send({type:"breadcrumbs.click.folder",folderPath:c})},children:d},c),y.jsx(xee,{},`separator-${u}`)]),s=y.jsx(pr,{component:wa,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:Ge("mantine-active",N2({truncate:!0}),fe({userSelect:"none"})),title:i,onMouseEnter:()=>e.send({type:"breadcrumbs.mouseEnter.viewtitle"}),onMouseLeave:()=>e.send({type:"breadcrumbs.mouseLeave.viewtitle"}),onClick:c=>{c.stopPropagation(),e.send({type:"breadcrumbs.click.viewtitle"})},children:i},"view-title");return y.jsxs(Cn,{propagate:!0,mode:"popLayout",children:[y.jsx(_Ge,{},"burger-button"),r&&y.jsx(CGe,{},"nav-buttons"),y.jsxs(Rr,{layout:"position",className:qn({gap:"1",flexShrink:1,flexGrow:1,overflow:"hidden"}),children:[l,s]},"breadcrumbs"),y.jsxs(Rr,{layout:"position",className:qn({gap:"0.5",flexGrow:0,_empty:{display:"none"}}),children:[y.jsx(TGe,{onOpen:()=>e.closeDropdown()}),y.jsx(NGe,{}),y.jsx(RYe,{})]},"actions"),n&&a&&y.jsx(DYe,{},"dynamic-view-controls"),y.jsx(tte,{},"search-control"),y.jsx(nte,{},"outdated-manual-layout-warning")]})});ote.displayName="NavigationPanelControls";const jR=S.forwardRef(({className:e,truncateLabel:r=!0,...n},o)=>y.jsx(IS,{...n,component:"button",classNames:CVe({truncateLabel:r}),className:Ge("group","mantine-active",e),ref:o}));jR.displayName="NavigationLink";const BYe=S.createContext(null),IYe=[],OYe=()=>{},LYe={projects:IYe,onProjectChange:OYe};function FYe(){return S.useContext(BYe)??LYe}function VYe(){const e=S.useContext(Sy);if(!e)throw new Error("No LikeC4ModelProvider found");return e.projectId}const qYe=S.memo(e=>{const{projects:r,onProjectChange:n}=FYe(),o=VYe();return r.length<=1?null:y.jsxs(Or,{gap:"0.5",alignItems:"baseline",children:[y.jsx(hr,{css:{fontWeight:"400",fontSize:"xxs",color:"likec4.panel.text.dimmed",userSelect:"none"},children:"Project"}),y.jsxs(tn,{withinPortal:!1,shadow:"md",position:"bottom-start",offset:{mainAxis:2},children:[y.jsx(w3,{children:y.jsx(Vn,{tabIndex:-1,autoFocus:!1,variant:"subtle",size:"compact-xs",color:"gray",classNames:{root:fe({fontWeight:"400",fontSize:"xxs",height:"auto",lineHeight:1.1,color:{_light:"mantine.colors.gray[9]"}}),section:fe({'&:is([data-position="right"])':{marginInlineStart:"1"}})},rightSection:y.jsx(a$,{opacity:.5,size:12,stroke:1.5}),children:o})}),y.jsx(vy,{children:r.map(({id:i,title:a})=>y.jsx(by,{onClick:l=>{if(o===i){l.stopPropagation();return}n(i)},children:a??i},i))})]})]})}),HYe=[["path",{d:"M10.52 2.614a2.095 2.095 0 0 1 2.835 -.117l.126 .117l7.905 7.905c.777 .777 .816 2.013 .117 2.836l-.117 .126l-7.905 7.905a2.094 2.094 0 0 1 -2.836 .117l-.126 -.117l-7.907 -7.906a2.096 2.096 0 0 1 -.115 -2.835l.117 -.126l7.905 -7.905zm5.969 9.535l.01 -.116l-.003 -.12l-.016 -.114l-.03 -.11l-.044 -.112l-.052 -.098l-.076 -.105l-.07 -.081l-3.5 -3.5l-.095 -.083a1 1 0 0 0 -1.226 0l-.094 .083l-.083 .094a1 1 0 0 0 0 1.226l.083 .094l1.792 1.793h-5.085l-.117 .007a1 1 0 0 0 0 1.986l.117 .007h5.085l-1.792 1.793l-.083 .094a1 1 0 0 0 1.403 1.403l.094 -.083l3.5 -3.5l.097 -.112l.05 -.074l.037 -.067l.05 -.112l.023 -.076l.025 -.117z",key:"svg-0"}]],UYe=wt("filled","direction-sign-filled","DirectionSignFilled",HYe),WYe=[["path",{d:"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z",key:"svg-0"}]],GYe=wt("filled","star-filled","StarFilled",WYe),YYe=[["path",{d:"M9 3a1 1 0 0 1 .608 .206l.1 .087l2.706 2.707h6.586a3 3 0 0 1 2.995 2.824l.005 .176v8a3 3 0 0 1 -2.824 2.995l-.176 .005h-14a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-11a3 3 0 0 1 2.824 -2.995l.176 -.005h4z",key:"svg-0"}]],XYe=wt("filled","folder-filled","FolderFilled",YYe),ite=iy({siblingSelector:"[data-likec4-focusable]",parentSelector:"[data-likec4-breadcrumbs-dropdown]",activateOnFocus:!1,loop:!0,orientation:"vertical"});function KYe(e){return e.context.searchQuery.trim().length>=2}const ate=S.memo(()=>{const e=m0(),r=wR(KYe);ji("paneClick",()=>{e.closeDropdown()}),ji("nodeClick",()=>{e.closeDropdown()}),ji("edgeClick",()=>{e.closeDropdown()});const n=Eze(o=>{e.send({type:"searchQuery.change",value:o})},250);return y.jsxs(Qs,{className:Ge("nowheel",Ey({layerStyle:"likec4.dropdown",gap:"xs",pointerEvents:"all"})),"data-likec4-breadcrumbs-dropdown":!0,onMouseLeave:()=>e.send({type:"dropdown.mouseLeave"}),onMouseEnter:()=>e.send({type:"dropdown.mouseEnter"}),children:[y.jsx(qYe,{}),y.jsx(Or,{gap:"xs",children:y.jsx(sXe,{defaultValue:e.actorRef.getSnapshot().context.searchQuery,onChange:n})}),y.jsx(oi,{scrollbars:"x",type:"auto",offsetScrollbars:"present",classNames:{root:fe({maxWidth:["calc(100vw - 50px)","calc(100cqw - 50px)"]})},styles:{viewport:{overscrollBehavior:"none"}},children:r?y.jsx(JYe,{}):y.jsx(iXe,{})})]})});ate.displayName="NavigationPanelDropdown";function ZYe(e){return gx(e.context.searchQuery)}const QYe=JP(_i),JYe=S.memo(()=>{const e=Fo(),r=m0(),n=pn(r.actorRef,ZYe),o=S.useDeferredValue(n),i=o.includes(_i),a=i?o.split(_i):o,[l,s]=S.useState([]);return S.useEffect(()=>{s(c=>{const d=Jr(e.views(),Is(u=>i&&u.$view.title?gx(u.$view.title).toLowerCase().includes(o):u.id.toLowerCase().includes(o)||!!u.title?.toLowerCase().includes(o)),jke(20),C1(),G$e((u,p)=>QYe(u.folder.path,p.folder.path)));return Ir(d,c)?c:d})},[e,o,i]),l.length===0?y.jsx("div",{children:"no results"}):y.jsx(oi,{scrollbars:"xy",offsetScrollbars:!1,className:fe({width:"100%",maxWidth:["calc(100vw - 250px)","calc(100cqw - 250px)"],maxHeight:["calc(100vh - 200px)","calc(100cqh - 200px)"]}),children:y.jsx(hp,{gap:"0.5",children:l.map(c=>y.jsx(tXe,{view:c,highlight:a,onClick:d=>{d.stopPropagation(),r.selectView(c.id)},"data-likec4-focusable":!0,onKeyDown:ite},c.id))})})}),eXe=qn({gap:"xxs",rounded:"sm",px:"xs",py:"xxs",_hover:{backgroundColor:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]"}},_focus:{outline:"none",color:"mantine.colors.primary.lightColor!",backgroundColor:"mantine.colors.primary.lightHover!"}}),lte=fe({_groupFocus:{color:"[inherit!]",transition:"none"}});function tXe({view:e,highlight:r,...n}){const o=e.folder,i=cte[e.id==="index"?"index":e._type],a=y.jsx(tc,{component:"div",className:Ge(lte,N2({truncate:!0}),fe({"& > mark":{backgroundColor:{base:"mantine.colors.yellow[2]/90",_dark:"mantine.colors.yellow[5]/80",_groupFocus:"[transparent]"},color:{_groupFocus:"[inherit!]"}}})),maw:350,highlight:r,children:e.title??e.id},e.id),l=Ge(n.className,"group",eXe);if(o.isRoot)return y.jsxs(pr,{...n,className:l,children:[i,a]});const s=o.breadcrumbs.map(c=>y.jsx(tc,{component:"div",className:Ge(fe({_groupHover:{color:"mantine.colors.dimmed"}}),lte,N2({dimmed:!0,truncate:!0})),maw:170,highlight:i9(r)?r:[],children:c.title},c.path));return s.push(y.jsxs(Or,{gap:"[4px]",children:[i,a]})),y.jsxs(pr,{...n,className:l,children:[ste,y.jsx(y3,{separator:y.jsx(Dd,{size:12,stroke:1.5}),separatorMargin:3,children:s})]})}const rXe=y.jsx(Dd,{size:12,stroke:1.5,className:"mantine-rotate-rtl"}),ste=y.jsx(XYe,{size:16,className:fe({opacity:{base:.3,_groupHover:.5,_groupActive:.5,_groupFocus:.5}})}),L2=fe({opacity:{base:.3,_dark:.5,_groupHover:.8,_groupActive:.8,_groupFocus:.8}}),cte={index:y.jsx(GYe,{size:16,className:L2}),element:y.jsx(ba,{size:18,stroke:2,className:L2}),deployment:y.jsx(aR,{size:16,stroke:1.5,className:L2}),dynamic:y.jsx(UYe,{size:18,className:L2})},nXe=oi.withProps({scrollbars:"y",className:fe({maxHeight:["calc(100vh - 160px)","calc(100cqh - 160px)"]})});function dte(e,r){return{folderPath:e.path,items:[...e.folders.map(n=>({type:"folder",folderPath:n.path,title:n.title,selected:r.selectedFolder.startsWith(n.path)})),...e.views.map(n=>({type:"view",viewType:n.id==="index"?"index":n._type,viewId:n.id,title:n.title??n.id,description:n.description.nonEmpty&&n.description.text||null,selected:n.id===r.viewModel?.id}))]}}const oXe=e=>{const r=e.viewModel;if(!r)return[];const n=r.$model,o=[dte(n.rootViewFolder,e)],i=n.viewFolder(e.selectedFolder);if(!i.isRoot)for(const a of i.breadcrumbs)o.push(dte(a,e));return o},iXe=S.memo(()=>{const e=xGe(oXe,tt);return y.jsx(Or,{gap:"xs",alignItems:"stretch",children:e.flatMap((r,n)=>[n>0&&y.jsx(sp,{orientation:"vertical"},"divider"+n),y.jsx(aXe,{data:r,isLast:n>0&&n==e.length-1},r.folderPath)])})});function aXe({data:e,isLast:r}){const n=S.useRef(null),o=xR(),i=a=>l=>{l.stopPropagation(),a.type==="folder"?o.send({type:"select.folder",folderPath:a.folderPath}):o.send({type:"select.view",viewId:a.viewId})};return Q5e(()=>{r&&n.current&&n.current.scrollIntoView({block:"nearest",inline:"nearest",behavior:"smooth"})}),y.jsx(hr,{mb:"1",ref:n,children:y.jsx(nXe,{children:y.jsx(hp,{gap:"0.5",children:e.items.map((a,l)=>y.jsx(lXe,{columnItem:a,onClick:i(a)},`${e.folderPath}/${a.type}/${l}`))})})})}function lXe({columnItem:e,...r}){switch(e.type){case"folder":return y.jsx(jR,{variant:"light",active:e.selected,label:e.title,leftSection:ste,rightSection:rXe,maw:"300px",miw:"200px",...r},e.folderPath);case"view":return y.jsx(jR,{variant:"filled",active:e.selected,label:e.title,description:e.description,leftSection:cte[e.viewType],maw:"300px",miw:"200px",...r},e.viewId);default:Qo(e)}}function sXe(e){const[r,n]=Ys({...e,finalValue:""});return y.jsx(zi,{size:"xs",placeholder:"Search by title or id",variant:"unstyled",height:$e(26),value:r,onKeyDown:ite,onChange:o=>n(o.currentTarget.value),"data-likec4-focusable":!0,classNames:{wrapper:fe({flexGrow:1,backgroundColor:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]/80",_hover:{base:"mantine.colors.gray[2]",_dark:"mantine.colors.dark[4]"},_focus:{base:"mantine.colors.gray[2]",_dark:"mantine.colors.dark[4]"}},rounded:"sm"}),input:fe({_placeholder:{color:"mantine.colors.dimmed"},_focus:{outline:"none"}})},style:{"--input-fz":"var(--mantine-font-size-sm)"},leftSection:y.jsx(mR,{size:14}),rightSectionPointerEvents:"all",rightSectionWidth:"min-content",rightSection:!e.value||tp(e.value)?null:y.jsx(Vn,{variant:"subtle",h:"100%",size:"compact-xs",color:"gray",onClick:o=>{o.stopPropagation(),n("")},children:"clear"})})}const cXe=Ed("div",{base:{fontSize:"xs",color:"mantine.colors.dimmed",fontWeight:500,userSelect:"none",mb:"xxs"}});function dXe(e){const r=_$e(e.activeWalkthrough),n=r?e.xyedges.findIndex(o=>o.id===e.activeWalkthrough?.stepId):-1;return{isActive:r,isParallel:r&&Zn(e.activeWalkthrough?.parallelPrefix),hasNext:r&&n0,notes:r?e.xyedges[n]?.data?.notes??null:null}}const uXe=S.memo(()=>{const{isActive:e,notes:r}=pa(dXe),n=r?ur.from(r):ur.EMPTY;return y.jsx(Cn,{children:e&&!n.isEmpty&&y.jsx(ma.div,{layout:"position",className:fe({position:"relative"}),initial:{opacity:0,translateX:-20},animate:{opacity:1,translateX:0},exit:{opacity:0,translateX:-20},children:y.jsxs(oi,{className:Ey({position:"absolute",layerStyle:"likec4.dropdown",gap:"sm",padding:"md",paddingTop:"xxs",pointerEvents:"all",maxWidth:"calc(100cqw - 32px)",minWidth:"calc(100cqw - 50px)",maxHeight:"calc(100cqh - 100px)",width:"max-content",cursor:"default",overflow:"auto",overscrollBehavior:"contain","@/sm":{minWidth:400,maxWidth:550},"@/lg":{maxWidth:700}}),type:"scroll",children:[y.jsx(cXe,{children:"Notes"}),y.jsx(zp,{value:n,fontSize:"sm",emptyText:"No description",className:fe({userSelect:"all"})})]})})})});function pXe({disabled:e=!1,onApplyLatestToManual:r,onResetManualLayout:n}){return y.jsxs(tn,{withinPortal:!1,floatingStrategy:"absolute",shadow:"lg",position:"bottom-start",offset:{mainAxis:4},disabled:e,children:[y.jsx(tn.Target,{children:y.jsxs(pr,{disabled:e,className:Ge("mantine-active",qn({gap:"2",py:"1.5",px:"2",lineHeight:"1",textStyle:"xs",fontWeight:"medium",layerStyle:"likec4.panel.action",userSelect:"none"})),children:[y.jsx(hr,{children:"Actions"}),y.jsx(a$,{size:12,stroke:2,opacity:.7})]})}),y.jsxs(tn.Dropdown,{children:[y.jsxs(tn.Item,{disabled:!r,onClick:r,rightSection:r&&y.jsx(_n,{onClick:nn,position:"right-start",label:y.jsxs(y.Fragment,{children:["Applies changes from the latest auto-layouted",y.jsx("br",{}),"to saved snapshot, preserving (as possible)",y.jsx("br",{}),"manual adjustments.",y.jsx("br",{}),y.jsx("br",{}),"You can undo this action."]}),children:y.jsx(r0,{size:14,stroke:1.7,opacity:.5})}),children:["Sync with latest",!r&&y.jsx(hr,{textStyle:"xs",children:"view type is changed"})]}),y.jsx(tn.Item,{onClick:n,children:"Remove manual layout"})]})]})}function hXe({value:e,onChange:r}){const n=S.useMemo(()=>[{value:"manual",label:"Saved manual"},{value:"auto",label:"Latest auto"}],[]);return y.jsx(Rr,{layout:"position",children:y.jsx(Of,{size:"xs",color:e==="manual"?"orange":"green",value:e,component:Rr,onChange:o=>{He(o==="manual"||o==="auto","Invalid layout type"),r(o)},classNames:{label:fe({fontSize:"xxs",fontWeight:"medium"})},data:n})})}const ute=sp.withProps({mx:2,size:"xs",orientation:"vertical"});function fXe(){const[e,{toggleCompare:r,switchLayout:n,resetManualLayout:o,applyLatestToManual:i}]=TR();return y.jsxs(y.Fragment,{children:[y.jsx(hr,{css:{textStyle:"xs",color:"likec4.panel.text",userSelect:"none"},children:"Compare"}),y.jsx(hXe,{value:e.layout,onChange:n}),e.hasEditor&&y.jsxs(Or,{gap:"1",children:[y.jsx(ute,{}),y.jsx(pXe,{disabled:e.layout==="auto",onResetManualLayout:o,onApplyLatestToManual:e.canApplyLatest?i:void 0}),y.jsx(ute,{})]}),y.jsx(cc,{size:"sm",onClick:a=>{a.stopPropagation(),r()},children:y.jsx(fp,{})})]})}const pte=S.memo(()=>{const{enableCompareWithLatest:e}=sr();return y.jsx(Cn,{children:e&&y.jsx(Rr,{layout:"position",className:qn({gap:"2",layerStyle:"likec4.panel",position:"relative",px:"2",py:"1",pl:"3",pointerEvents:"all"}),initial:{opacity:0,translateX:-20},animate:{opacity:1,translateX:0},exit:{opacity:0,translateX:-20},children:y.jsx(fXe,{})})})});pte.displayName="ComparePanel";const g0=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,position:"right"}),mXe=[["path",{d:"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2",key:"svg-1"}],["path",{d:"M4 16v2a2 2 0 0 0 2 2h2",key:"svg-2"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v2",key:"svg-3"}],["path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2",key:"svg-4"}]],gXe=wt("outline","focus-centered","FocusCentered",mXe),yXe=()=>{const e=Nt();return y.jsx(g0,{label:"Center camera",children:y.jsx(cc,{onClick:()=>e.fitDiagram(),children:y.jsx(gXe,{})})})};fe({gap:"xxs",_empty:{display:"none"}}),fe({top:"md",left:"md",margin:"0",pointerEvents:"none","& :where(button, .action-icon, [role='dialog'])":{pointerEvents:"all"},"& .action-icon":{"--ai-size":"2rem"},"& .tabler-icon":{width:"65%",height:"65%"},_reduceGraphics:{"& .action-icon":{"--ai-radius":"0px"}}}),fe({shadow:{base:"md",_whenPanning:"none"}}),fe({"& .tabler-icon":{width:"65%",height:"65%"}});const F2=fe({flex:"1 1 40%",textAlign:"center",fontWeight:500,padding:"[4px 6px]",fontSize:"11px",zIndex:1}),vXe=fe({background:"mantine.colors.gray[2]",borderRadius:"sm",border:"1px solid",borderColor:"mantine.colors.gray[4]",_dark:{background:"mantine.colors.dark[5]",borderColor:"mantine.colors.dark[4]"}}),bXe=fe({position:"relative",borderRadius:"sm",background:"mantine.colors.gray[3]",boxShadow:"inset 1px 1px 3px 0px #00000024",_dark:{background:"mantine.colors.dark[7]"}}),xXe=fe({position:"absolute",width:8,height:8,border:"2px solid",borderColor:"mantine.colors.gray[5]",borderRadius:3,transform:"translate(-50%, -50%)"}),wXe=[["path",{d:"M5 4h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-6a1 1 0 0 1 1 -1",key:"svg-0"}],["path",{d:"M5 16h4a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-2a1 1 0 0 1 1 -1",key:"svg-1"}],["path",{d:"M15 12h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-6a1 1 0 0 1 1 -1",key:"svg-2"}],["path",{d:"M15 4h4a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-2a1 1 0 0 1 1 -1",key:"svg-3"}]],kXe=wt("outline","layout-dashboard","LayoutDashboard",wXe),_Xe=e=>({viewId:e.view.id,isManualLayout:e.view._layout==="manual",autoLayout:e.view.autoLayout}),SXe=()=>{const e=Nt(),[r,n]=S.useState(null),[o,i]=S.useState({}),{autoLayout:a,viewId:l,isManualLayout:s}=pa(_Xe),{ref:c,hovered:d}=b9(),u=g=>v=>{o[g]=v,i(o)},p=g=>v=>{v.stopPropagation(),e.fitDiagram(),e.triggerChange({op:"change-autolayout",layout:{...a,direction:g}})},f=(g,v)=>{e.fitDiagram(),e.triggerChange({op:"change-autolayout",layout:{...a,nodeSep:g,rankSep:v}})};return s?null:y.jsxs(br,{position:"right-start",clickOutsideEvents:["pointerdown"],radius:"xs",shadow:"lg",offset:{mainAxis:10},children:[y.jsx(kd,{children:y.jsx(g0,{label:"Change Auto Layout",children:y.jsx(cc,{children:y.jsx(kXe,{})})})}),y.jsx(Qs,{className:"likec4-top-left-panel",p:8,pt:6,opacity:d?.6:1,children:y.jsxs(Se,{pos:"relative",ref:n,children:[y.jsx(h3,{target:o[a.direction],parent:r,className:vXe}),y.jsx(Se,{mb:10,children:y.jsx(it,{inline:!0,fz:"xs",c:"dimmed",fw:500,children:"Auto layout:"})}),y.jsxs(Js,{gap:2,wrap:"wrap",justify:"stretch",maw:160,children:[y.jsx(pr,{className:F2,ref:u("TB"),onClick:p("TB"),children:"Top-Bottom"}),y.jsx(pr,{className:F2,ref:u("BT"),onClick:p("BT"),children:"Bottom-Top"}),y.jsx(pr,{className:F2,ref:u("LR"),onClick:p("LR"),children:"Left-Right"}),y.jsx(pr,{className:F2,ref:u("RL"),onClick:p("RL"),children:"Right-Left"})]}),y.jsx(Se,{my:10,children:y.jsx(it,{inline:!0,fz:"xs",c:"dimmed",fw:500,children:"Spacing:"})}),y.jsx(EXe,{ref:c,isVertical:a.direction==="TB"||a.direction==="BT",nodeSep:a.nodeSep,rankSep:a.rankSep,onChange:f},l)]})})]})},km=400,EXe=S.forwardRef(({isVertical:e,nodeSep:r,rankSep:n,onChange:o},i)=>{e||([r,n]=[n,r]);const a=h7(({x:f,y:g})=>{e||([f,g]=[g,f]),o(Math.round(f*km),Math.round(g*km))},[o,e],250,2e3),[l,s]=Ys({defaultValue:dze({x:(r??100)/km,y:(n??120)/km}),onChange:a}),{ref:c}=kH(s);let d=Math.round(l.x*km),u=Math.round(l.y*km);e||([d,u]=[u,d]);const p=$r(c,i);return y.jsxs(Se,{ref:p,className:bXe,pt:"100%",children:[y.jsx(Se,{className:xXe,style:{left:`${l.x*100}%`,top:`${l.y*100}%`}}),y.jsx(Se,{pos:"absolute",left:2,bottom:2,children:y.jsxs(it,{component:"div",fz:8,c:"dimmed",fw:500,children:[u,", ",d]})})]})}),CXe=[["path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z",key:"svg-0"}],["path",{d:"M10 4l4 16",key:"svg-1"}],["path",{d:"M12 12l-8 2",key:"svg-2"}]],$Xe=wt("outline","layout-collage","LayoutCollage",CXe),RXe=[["path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z",key:"svg-0"}],["path",{d:"M4 12h8",key:"svg-1"}],["path",{d:"M12 15h8",key:"svg-2"}],["path",{d:"M12 9h8",key:"svg-3"}],["path",{d:"M12 4v16",key:"svg-4"}]],hte=wt("outline","layout-board-split","LayoutBoardSplit",RXe),zXe=[["path",{d:"M4 4l0 16",key:"svg-0"}],["path",{d:"M8 9m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z",key:"svg-1"}]],TXe=wt("outline","layout-align-left","LayoutAlignLeft",zXe),jXe=[["path",{d:"M12 4l0 5",key:"svg-0"}],["path",{d:"M12 15l0 5",key:"svg-1"}],["path",{d:"M6 9m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z",key:"svg-2"}]],AXe=wt("outline","layout-align-center","LayoutAlignCenter",jXe),DXe=[["path",{d:"M20 4l0 16",key:"svg-0"}],["path",{d:"M4 9m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z",key:"svg-1"}]],MXe=wt("outline","layout-align-right","LayoutAlignRight",DXe),NXe=[["path",{d:"M4 4l16 0",key:"svg-0"}],["path",{d:"M9 8m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",key:"svg-1"}]],PXe=wt("outline","layout-align-top","LayoutAlignTop",NXe),BXe=[["path",{d:"M4 12l5 0",key:"svg-0"}],["path",{d:"M15 12l5 0",key:"svg-1"}],["path",{d:"M9 6m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",key:"svg-2"}]],IXe=wt("outline","layout-align-middle","LayoutAlignMiddle",BXe),OXe=[["path",{d:"M4 20l16 0",key:"svg-0"}],["path",{d:"M9 4m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",key:"svg-1"}]],LXe=wt("outline","layout-align-bottom","LayoutAlignBottom",OXe),FXe=[["path",{d:"M6 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-0"}],["path",{d:"M18 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-1"}],["path",{d:"M12 19h4.5c.71 0 1.372 -.212 1.924 -.576m1.545 -2.459a3.5 3.5 0 0 0 -3.469 -3.965h-.499m-4 0h-3.501a3.5 3.5 0 0 1 -2.477 -5.972m2.477 -1.028h3.5",key:"svg-2"}],["path",{d:"M3 3l18 18",key:"svg-3"}]],VXe=wt("outline","route-off","RouteOff",FXe),uc=({label:e,icon:r,onClick:n})=>y.jsx(g0,{label:e,withinPortal:!1,position:"top",children:y.jsx(cc,{classNames:{root:"action-icon",icon:fe({"& > svg":{width:"70%",height:"70%"}})},onClick:n,children:r})}),fte=S.memo(()=>{const e=Nt(),r=bm();return y.jsxs(br,{position:"right",offset:{mainAxis:12},clickOutsideEvents:["pointerdown"],...r,children:[y.jsx(kd,{children:y.jsx(g0,{label:"Manual layouting tools",children:y.jsx(cc,{children:y.jsx($Xe,{})})})}),y.jsx(Qs,{className:qn({gap:"0.5",layerStyle:"likec4.panel",padding:"1",pointerEvents:"all"}),children:y.jsxs(dp,{children:[y.jsx(uc,{label:"Align in columns",icon:y.jsx(hte,{}),onClick:n=>{n.stopPropagation(),e.align("Column")}}),y.jsx(uc,{label:"Align left",icon:y.jsx(TXe,{}),onClick:n=>{n.stopPropagation(),e.align("Left")}}),y.jsx(uc,{label:"Align center",icon:y.jsx(AXe,{}),onClick:n=>{n.stopPropagation(),e.align("Center")}}),y.jsx(uc,{label:"Align right",icon:y.jsx(MXe,{}),onClick:n=>{n.stopPropagation(),e.align("Right")}}),y.jsx(uc,{label:"Align in rows",icon:y.jsx(hte,{style:{transform:"rotate(90deg)"}}),onClick:n=>{n.stopPropagation(),e.align("Row")}}),y.jsx(uc,{label:"Align top",icon:y.jsx(PXe,{}),onClick:n=>{n.stopPropagation(),e.align("Top")}}),y.jsx(uc,{label:"Align middle",icon:y.jsx(IXe,{}),onClick:n=>{n.stopPropagation(),e.align("Middle")}}),y.jsx(uc,{label:"Align bottom",icon:y.jsx(LXe,{}),onClick:n=>{n.stopPropagation(),e.align("Bottom")}}),y.jsx(uc,{label:"Reset all control points",icon:y.jsx(VXe,{}),onClick:n=>{n.stopPropagation(),e.resetEdgeControlPoints()}})]})})]})});fte.displayName="ManualLayoutToolsButton";const qXe=()=>{const e=Nt();return y.jsx(g0,{label:"Switch to Read-only",children:y.jsx(cc,{onClick:()=>e.toggleFeature("ReadOnly"),children:y.jsx(Jee,{size:14,stroke:2})})})};function HXe(){const{enableReadOnly:e}=sr();return y.jsx(Cn,{children:!e&&y.jsx(Rr,{layout:"position",className:Ey({gap:"xs",layerStyle:"likec4.panel",position:"relative",cursor:"pointer",padding:"xxs",pointerEvents:"all"}),initial:{opacity:0,translateX:-20},animate:{opacity:1,translateX:0},exit:{opacity:0,translateX:-20},children:y.jsxs(dp,{openDelay:600,closeDelay:120,children:[y.jsx(SXe,{}),y.jsx(fte,{}),y.jsx(yXe,{}),y.jsx(qXe,{})]})})})}const UXe=[["path",{d:"M17 4h-10a3 3 0 0 0 -3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3 -3v-10a3 3 0 0 0 -3 -3z",key:"svg-0"}]],WXe=wt("filled","player-stop-filled","PlayerStopFilled",UXe),GXe=[["path",{d:"M19.496 4.136l-12 7a1 1 0 0 0 0 1.728l12 7a1 1 0 0 0 1.504 -.864v-14a1 1 0 0 0 -1.504 -.864z",key:"svg-0"}],["path",{d:"M4 4a1 1 0 0 1 .993 .883l.007 .117v14a1 1 0 0 1 -1.993 .117l-.007 -.117v-14a1 1 0 0 1 1 -1z",key:"svg-1"}]],YXe=wt("filled","player-skip-back-filled","PlayerSkipBackFilled",GXe),XXe=[["path",{d:"M3 5v14a1 1 0 0 0 1.504 .864l12 -7a1 1 0 0 0 0 -1.728l-12 -7a1 1 0 0 0 -1.504 .864z",key:"svg-0"}],["path",{d:"M20 4a1 1 0 0 1 .993 .883l.007 .117v14a1 1 0 0 1 -1.993 .117l-.007 -.117v-14a1 1 0 0 1 1 -1z",key:"svg-1"}]],KXe=wt("filled","player-skip-forward-filled","PlayerSkipForwardFilled",XXe),mte=Vn.withProps({component:wa,layout:"position",whileTap:{scale:.95},variant:"light",size:"xs",fw:"500"}),ZXe=()=>{const{portalProps:e}=bm();return y.jsx(py,{...e,children:y.jsx(hr,{css:{position:"absolute",margin:"0",padding:"0",top:"0",left:"0",width:"100%",height:"100%",border:"2px solid",borderColor:"mantine.colors.orange[6]",pointerEvents:"none",md:{borderWidth:4}}})})};function QXe(){const e=Nt(),{isParallel:r,hasNext:n,hasPrevious:o,currentStep:i,totalSteps:a}=pa(l=>{const s=l.xyedges.findIndex(c=>c.id===l.activeWalkthrough?.stepId);return{isParallel:Zn(l.activeWalkthrough?.parallelPrefix),hasNext:s0,currentStep:s+1,totalSteps:l.xyedges.length}});return y.jsxs(Cn,{propagate:!0,mode:"popLayout",children:[y.jsx(ete,{variant:"light",size:"xs",color:"orange",mr:"sm",onClick:l=>{l.stopPropagation(),e.stopWalkthrough()},rightSection:y.jsx(WXe,{size:10}),children:"Stop"},"stop-walkthrough"),y.jsx(mte,{disabled:!o,onClick:()=>e.walkthroughStep("previous"),leftSection:y.jsx(YXe,{size:10}),children:"Previous"},"prev"),y.jsxs(ec,{component:Rr,layout:"position",size:"md",radius:"sm",variant:r?"gradient":"transparent",gradient:{from:"red",to:"orange",deg:90},rightSection:y.jsx(Rr,{className:fe({fontSize:"xxs",display:r?"block":"none"}),children:"parallel"}),className:fe({alignItems:"baseline"}),children:[i," / ",a]},"step-badge"),y.jsx(mte,{disabled:!n,onClick:()=>e.walkthroughStep("next"),rightSection:y.jsx(KXe,{size:10}),children:"Next"},"next"),r&&y.jsx(ZXe,{},"parallel-frame")]})}const gte=S.memo(()=>{const e=Nt(),r=VHe(),n=UVe(),o=vE(vGe,{input:{view:r,viewModel:n}});return S.useEffect(()=>{const i=o.on("navigateTo",a=>{e.navigateTo(a.viewId)});return()=>i.unsubscribe()},[o,e]),S.useEffect(()=>{o.send({type:"update.inputs",inputs:{viewModel:n,view:r}})},[n,r]),y.jsx(hp,{css:{alignItems:"flex-start",pointerEvents:"none",position:"absolute",top:"0",left:"0",margin:"0",width:"100%",gap:"xxs",maxWidth:["calc(100vw)","calc(100cqw)"],"@/sm":{margin:"xs",gap:"xs",width:"max-content",maxWidth:["calc(100vw - 2 * {spacing.md})","calc(100cqw - 2 * {spacing.md})"]},_print:{display:"none"}},children:y.jsxs(bGe,{value:o,children:[y.jsx(JXe,{actor:o}),y.jsx(pte,{}),y.jsx(uXe,{}),y.jsx(HXe,{})]})})});gte.displayName="NavigationPanel";const JXe=({actor:e})=>{const r=pn(e,o=>o.hasTag("active")),n=bm();return y.jsxs(br,{offset:{mainAxis:4},opened:r,position:"bottom-start",trapFocus:r,...n,clickOutsideEvents:["pointerdown","mousedown","click"],onDismiss:()=>e.send({type:"dropdown.dismiss"}),children:[y.jsx(eKe,{actor:e}),r&&y.jsx(ate,{})]})},eKe=({actor:e})=>{const r=pa(n=>n.activeWalkthrough!==null);return y.jsx(lm,{children:y.jsx(kd,{children:y.jsx(Rr,{layout:!0,layoutDependency:r,className:qn({layerStyle:"likec4.panel",position:"relative",gap:"xs",cursor:"pointer",pointerEvents:"all",width:"100%"}),onMouseLeave:()=>e.send({type:"breadcrumbs.mouseLeave"}),children:y.jsx(Cn,{children:r?y.jsx(QXe,{}):y.jsx(ote,{})})})})})},AR=fe({position:"absolute",bottom:"0",right:"0",padding:"2",margin:"0",width:"min-content",height:"min-content",_print:{display:"none"}}),tKe=fe({"--ai-radius":"0px",_noReduceGraphics:{"--ai-radius":"{radii.md}"}}),rKe=fe({cursor:"default",userSelect:"none",minWidth:200,maxWidth:"calc(100vw - 20px)",backgroundColor:"mantine.colors.body/80",sm:{minWidth:300,maxWidth:"65vw"},md:{maxWidth:"40vw"},_dark:{backgroundColor:"mantine.colors.dark[6]/80"}}),nKe=fe({padding:"xxs"}),oKe=fe({backgroundColor:"transparent",transition:"all 100ms ease-in",_hover:{transition:"all 120ms ease-out",backgroundColor:"mantine.colors.primary[2]/50"},_dark:{_hover:{backgroundColor:"mantine.colors.dark[3]/40"}}});fe({fill:"var(--likec4-palette-fill)",stroke:"var(--likec4-palette-stroke)",strokeWidth:1,overflow:"visible",width:"100%",height:"auto",filter:` + z`.replace(/\s+/g," ").trim(),ry:i,rx:a}}const Rp={width:115,height:120,path:"M57.9197 0C10.9124 0 33.5766 54.75 33.5766 54.75C38.6131 62.25 45.3285 60.75 45.3285 66C45.3285 70.5 39.4526 72 33.5766 72.75C24.3431 72.75 15.9489 71.25 7.55474 84.75C2.51825 93 0 120 0 120H115C115 120 112.482 93 108.285 84.75C99.8905 70.5 91.4963 72.75 82.2628 72C76.3869 71.25 70.5109 69.75 70.5109 65.25C70.5109 60.75 77.2263 62.25 82.2628 54C82.2628 54.75 104.927 0 57.9197 0V0Z"};function MJ({shape:e,w:r,h:n}){switch(e){case"mobile":return y.jsxs(y.Fragment,{children:[y.jsx("rect",{width:r,height:n,rx:6,"data-likec4-fill":"mix-stroke",strokeWidth:0}),y.jsxs("g",{"data-likec4-fill":"fill",strokeWidth:0,children:[y.jsx("circle",{cx:17,cy:n/2,r:12}),y.jsx("rect",{x:33,y:12,width:r-44,height:n-24,rx:5})]})]});case"browser":return y.jsxs(y.Fragment,{children:[y.jsx("rect",{width:r,height:n,rx:6,"data-likec4-fill":"mix-stroke",strokeWidth:0}),y.jsxs("g",{"data-likec4-fill":"fill",strokeWidth:0,children:[y.jsx("circle",{cx:16,cy:17,r:7}),y.jsx("circle",{cx:36,cy:17,r:7}),y.jsx("circle",{cx:56,cy:17,r:7}),y.jsx("rect",{x:70,y:8,width:r-80,height:17,rx:4}),y.jsx("rect",{x:10,y:32,width:r-20,height:n-42,rx:4})]})]});case"person":return y.jsxs(y.Fragment,{children:[y.jsx("rect",{width:r,height:n,rx:6,strokeWidth:0}),y.jsx("svg",{x:r-Rp.width-6,y:n-Rp.height,width:Rp.width,height:Rp.height,viewBox:`0 0 ${Rp.width} ${Rp.height}`,"data-likec4-fill":"mix-stroke",children:y.jsx("path",{strokeWidth:0,d:Rp.path})})]});case"queue":{const{path:o,rx:i,ry:a}=PJ(r,n);return y.jsxs(y.Fragment,{children:[y.jsx("path",{d:o,strokeWidth:2}),y.jsx("ellipse",{cx:i,cy:a,ry:a-.75,rx:i,"data-likec4-fill":"mix-stroke",strokeWidth:2})]})}case"storage":case"cylinder":{const{path:o,rx:i,ry:a}=DJ(r,n);return y.jsxs(y.Fragment,{children:[y.jsx("path",{d:o,strokeWidth:2}),y.jsx("ellipse",{cx:i,cy:a,ry:a,rx:i-.75,"data-likec4-fill":"mix-stroke",strokeWidth:2})]})}default:return Qo(e)}}function JHe({shape:e,w:r,h:n}){let o;switch(e){case"queue":o=y.jsx("path",{d:PJ(r,n).path});break;case"storage":case"cylinder":{o=y.jsx("path",{d:DJ(r,n).path});break}default:{o=y.jsx("rect",{x:-3,y:-3,width:r+6,height:n+6,rx:8});break}}return y.jsx("g",{className:"likec4-shape-outline",children:o})}function eUe({multiple:e,withOutLine:r}){return y.jsxs("div",{className:GZ({shapetype:"html"}),children:[e&&y.jsx("div",{className:"likec4-shape-multiple"}),r&&y.jsx("div",{className:"likec4-shape-outline"})]})}function pg({data:e,width:r,height:n,showSeletionOutline:o=!0}){let i=r&&r>10?r:e.width,a=n&&n>10?n:e.height;const l=e.style?.multiple??!1;if(e.shape==="rectangle")return y.jsx(eUe,{multiple:l,withOutLine:o});const s=GZ({shapetype:"svg"});return y.jsxs(y.Fragment,{children:[l&&y.jsx("svg",{className:s,"data-likec4-shape-multiple":"true",viewBox:`0 0 ${i} ${a}`,children:y.jsx(MJ,{shape:e.shape,w:i,h:a})}),y.jsxs("svg",{className:s,viewBox:`0 0 ${i} ${a}`,children:[o&&y.jsx(JHe,{shape:e.shape,w:i,h:a}),y.jsx(MJ,{shape:e.shape,w:i,h:a})]})]})}const zp=S.forwardRef(({value:e,textScale:r=1,uselikec4palette:n=!1,hideIfEmpty:o=!1,emptyText:i="no content",className:a,style:l,fontSize:s,...c},d)=>{if(e.isEmpty&&o)return null;const u=e.nonEmpty?e.isMarkdown?{dangerouslySetInnerHTML:{__html:e.html}}:{children:y.jsx("p",{children:e.text})}:{children:y.jsx(it,{component:"span",fz:"xs",c:"dimmed",style:{userSelect:"none"},children:i})};return y.jsx(hr,{ref:d,...c,className:Ge(bVe({uselikec4palette:n,value:e.isMarkdown?"markdown":"plaintext"}),a),style:{...l,...s&&{"--text-fz":`var(--font-sizes-${s}, var(--font-sizes-md))`},...r!==1&&{"--mantine-scale":r}},...u})});zp.displayName="Markdown";const NJ=S.forwardRef(({className:e,...r},n)=>y.jsx("div",{...r,ref:n,className:Ge(e,yVe(),"likec4-element")})),BJ=({data:e,...r})=>y.jsx(bx,{element:e,...r}),IJ=S.forwardRef(({className:e,...r},n)=>y.jsx("div",{...r,className:Ge(e,"likec4-element-node-content"),ref:n})),OJ=S.forwardRef(({data:{title:e,style:r},className:n,...o},i)=>{const{size:a}=$b(r),l=a==="sm"||a==="xs";return y.jsx(it,{component:"div",...o,className:Ge(n,"likec4-element-title"),"data-likec4-node-title":"",lineClamp:l?2:3,ref:i,children:e})}),LJ=S.forwardRef(({data:e,children:r,className:n,...o},i)=>{const a=e?.technology??r;return Zn(a)?y.jsx(it,{component:"div",...o,className:Ge(n,"likec4-element-technology"),"data-likec4-node-technology":"",ref:i,children:a}):null}),FJ=S.forwardRef(({data:{description:e,style:r},className:n,...o},i)=>{if(!e)return null;const a=ur.from(e),{size:l}=$b(r);return y.jsx(zp,{...o,className:Ge(n,"likec4-element-description",fe({lineClamp:l==="sm"||l==="xs"?3:5})),"data-likec4-node-description":"",value:a,uselikec4palette:!0,hideIfEmpty:!0,style:{maxHeight:a.isMarkdown?"8rem":void 0},ref:i})});function dl({iconSize:e,data:r}){return y.jsxs(NJ,{style:Iq(e)?{"--likec4-icon-size":`${e}px`}:void 0,children:[y.jsx(BJ,{data:r}),y.jsxs(IJ,{children:[y.jsx(OJ,{data:r}),y.jsx(LJ,{data:r}),y.jsx(FJ,{data:r})]})]})}dl.Root=NJ,dl.Icon=BJ,dl.Content=IJ,dl.Title=OJ,dl.Technology=LJ,dl.Description=FJ;const tUe=fe({position:"absolute",top:"0.5",right:"0.5",_shapeBrowser:{right:"[5px]"},_shapeCylinder:{top:"[14px]"},_shapeStorage:{top:"[14px]"},_shapeQueue:{top:"[1px]",right:"3"},_smallZoom:{display:"none"},_print:{display:"none"}});function oR({selected:e=!1,data:{hovered:r=!1},icon:n,onClick:o}){return y.jsx(hr,{className:Ge(tUe,"details-button"),children:y.jsx(lr,{className:Ge("nodrag nopan",a2({variant:"transparent"})),component:wa,initial:!1,style:{originX:.45,originY:.55},animate:r||e?{scale:1.2,opacity:.8}:{scale:1,opacity:.5},whileHover:{scale:1.4,opacity:1},whileTap:{scale:1.15},onClick:o,onDoubleClick:nn,children:n??y.jsx(nR,{stroke:1.8,style:{width:"75%"}})})})}const rUe=e=>{const r=Mt();return y.jsx(oR,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}})};function nUe(e){const{enableElementTags:r}=sr();return y.jsxs(ug,{layoutId:e.id,nodeProps:e,children:[y.jsx(pg,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx(rUe,{...e}),y.jsx(KHe,{...e}),y.jsx(iUe,{...e})]},e.id)}function oUe(e){const r=Mt();return y.jsxs(c0,{layoutId:e.id,nodeProps:e,children:[y.jsx(d0,{...e}),y.jsx(AJ,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}}),y.jsx(aUe,{...e})]},e.id)}const iUe=({data:{ports:e,height:r}})=>y.jsxs(y.Fragment,{children:[e.in.map((n,o)=>y.jsx(Oo,{id:n,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${15+(o+1)*((r-30)/(e.in.length+1))}px`}},n)),e.out.map((n,o)=>y.jsx(Oo,{id:n,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${15+(o+1)*((r-30)/(e.out.length+1))}px`}},n))]}),aUe=({data:e})=>y.jsxs(y.Fragment,{children:[e.ports.in.map((r,n)=>y.jsx(Oo,{id:r,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r)),e.ports.out.map((r,n)=>y.jsx(Oo,{id:r,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r))]}),lUe=[["path",{d:"M15 6l-6 6l6 6",key:"svg-0"}]],VJ=wt("outline","chevron-left","ChevronLeft",lUe),sUe={element:nUe,compound:oUe,empty:OHe},cUe={relationship:BHe};function qJ({actorRef:e}){const r=S.useRef(null);return r.current==null&&(r.current={initialNodes:[],initialEdges:[]}),y.jsx(xQ.Provider,{value:e,children:y.jsx(lw,{...r.current,children:y.jsx(lg,{id:e.sessionId,inherit:!1,children:y.jsx(Cn,{children:y.jsx(pUe,{})})})})})}const dUe=e=>({isActive:e.hasTag("active"),nodes:e.context.xynodes,edges:e.context.xyedges}),uUe=(e,r)=>e.isActive===r.isActive&&Ir(e.nodes,r.nodes)&&Ir(e.edges,r.edges),pUe=S.memo(()=>{const e=n0(),{isActive:r,nodes:n,edges:o}=v2(dUe,uUe);return y.jsx(s$,{id:e.rootElementId,nodes:n,edges:o,className:Ge(r?"initialized":"not-initialized","relationships-browser"),nodeTypes:sUe,edgeTypes:cUe,fitView:!1,onNodeClick:at((i,a)=>{i.stopPropagation(),e.send({type:"xyflow.nodeClick",node:a})}),onEdgeClick:at((i,a)=>{i.stopPropagation(),e.send({type:"xyflow.edgeClick",edge:a})}),onPaneClick:at(i=>{i.stopPropagation(),e.send({type:"xyflow.paneClick"})}),onDoubleClick:at(i=>{e.send({type:"xyflow.paneDblClick"})}),onViewportResize:at(()=>{e.send({type:"xyflow.resized"})}),onNodesChange:at(i=>{e.send({type:"xyflow.applyNodeChanges",changes:i})}),onEdgesChange:at(i=>{e.send({type:"xyflow.applyEdgeChanges",changes:i})}),onEdgeMouseEnter:at((i,a)=>{a.data.hovered||e.send({type:"xyflow.edgeMouseEnter",edge:a})}),onEdgeMouseLeave:at((i,a)=>{a.data.hovered&&e.send({type:"xyflow.edgeMouseLeave",edge:a})}),onSelectionChange:at(i=>{e.send({type:"xyflow.selectionChange",...i})}),nodesDraggable:!1,nodesSelectable:!0,pannable:!0,zoomable:!0,children:y.jsx(fUe,{})})}),hUe=e=>({subjectId:e.context.subject,viewId:e.context.viewId,scope:e.context.scope,closeable:e.context.closeable}),fUe=S.memo(()=>{const e=n0(),{subjectId:r,viewId:n,scope:o,closeable:i}=v2(hUe),a=vr(),l=pf();S.useEffect(()=>{l.viewportInitialized&&e.send({type:"xyflow.init",instance:l,store:a})},[a,l.viewportInitialized,e]);const s=bHe(r,n,o),[c,d,{history:u,current:p}]=RH(r);S.useEffect(()=>{c!==r&&d.set(r)},[r]),S.useEffect(()=>{c!==r&&e.navigateTo(c)},[c,e]),_L(()=>{e.updateView(s)},[s,e]);const f=p>0,m=p+1d.back(),onStepForward:()=>d.forward()}),i&&y.jsx(sd,{position:"top-right",children:y.jsx(lr,{variant:"default",color:"gray",onClick:v=>{v.stopPropagation(),e.close()},children:y.jsx(fp,{})})})]})}),gUe=({hasStepBack:e,hasStepForward:r,onStepBack:n,onStepForward:o})=>y.jsx(sd,{position:"top-left",children:y.jsxs(en,{gap:4,wrap:"nowrap",children:[y.jsxs(Cn,{mode:"popLayout",children:[e&&y.jsx(ga.div,{layout:!0,initial:{opacity:.05,transform:"translateX(-5px)"},animate:{opacity:1,transform:"translateX(0)"},exit:{opacity:.05,transform:"translateX(-10px)"},children:y.jsx(lr,{variant:"default",color:"gray",onClick:i=>{i.stopPropagation(),n()},children:y.jsx(VJ,{})})},"back"),r&&y.jsx(ga.div,{layout:!0,initial:{opacity:.05,transform:"translateX(5px)"},animate:{opacity:1,transform:"translateX(0)"},exit:{opacity:0,transform:"translateX(5px)"},children:y.jsx(lr,{variant:"default",color:"gray",onClick:i=>{i.stopPropagation(),o()},children:y.jsx(Dd,{})})},"forward")]}),y.jsx($He,{})]})}),mUe=fe({display:"inline-block",fontSize:"sm",fontWeight:500,whiteSpace:"nowrap",padding:"[3px 6px]",borderRadius:3,background:"var(--likec4-palette-fill)/75",lineHeight:1.2,color:"var(--likec4-palette-hiContrast)"}),yUe=fe({_light:{background:"mantine.colors.gray[1]","&[data-missing":{}},"&[data-missing]":{color:"mantine.colors.orange[4]",background:"mantine.colors.orange[8]/15",borderColor:"mantine.colors.orange[5]/20",_light:{color:"mantine.colors.orange[8]"}}}),vUe=fe({flex:"1 1 100%",position:"relative",width:"100%",height:"100%",background:"mantine.colors.body",border:"1px solid {colors.mantine.colors.defaultBorder}",borderRadius:"sm",_light:{borderColor:"mantine.colors.gray[3]",background:"mantine.colors.gray[1]"}});fe({_before:{content:'"scope:"',position:"absolute",top:"0",left:"2",fontSize:"xxs",fontWeight:500,lineHeight:"1",color:"mantine.colors.dimmed",opacity:.85,transform:"translateY(-100%) translateY(-2px)"},_light:{"& .mantine-SegmentedControl-root":{background:"mantine.colors.gray[3]"}}}),fe({display:"inline-block",fontSize:"xl",fontWeight:600,padding:"[1px 5px]",minWidth:24,textAlign:"center",borderRadius:"sm",background:"mantine.colors.dark[7]",color:"mantine.colors.defaultColor","&[data-zero]":{color:"mantine.colors.dimmed"},"&[data-missing]":{color:"mantine.colors.orange[4]",background:"mantine.colors.orange[8]/20"}});const bUe=[["path",{d:"M5 12l14 0",key:"svg-0"}],["path",{d:"M13 18l6 -6",key:"svg-1"}],["path",{d:"M13 6l6 6",key:"svg-2"}]],hg=wt("outline","arrow-right","ArrowRight",bUe),xUe=[["path",{d:"M12 6h-6a2 2 0 0 0 -2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-6",key:"svg-0"}],["path",{d:"M11 13l9 -9",key:"svg-1"}],["path",{d:"M15 4h5v5",key:"svg-2"}]],HJ=wt("outline","external-link","ExternalLink",xUe),wUe=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,withinPortal:!1});function kUe({node:e,element:r}){const n=Mt(),o=lVe(),i=pn(o,S.useCallback(u=>u.children[`${o.id}-relationships`],[o.id])),a=[...r.incoming()].map(u=>u.id),l=[...r.outgoing()].map(u=>u.id),s=e?yw([...e.incoming()].flatMap(u=>u.$edge.relations)):[],c=e?yw([...e.outgoing()].flatMap(u=>u.$edge.relations)):[],d=[...a,...l].filter(u=>!s.includes(u)&&!c.includes(u)).length;return y.jsxs(Lo,{gap:"xs",pos:"relative",w:"100%",h:"100%",children:[a.length+l.length>0&&y.jsxs(en,{gap:"xs",wrap:"nowrap",align:"center",children:[y.jsx(Se,{children:y.jsxs(en,{gap:8,mb:4,wrap:"nowrap",children:[y.jsx(UJ,{title:"incoming",total:a.length,included:s.length}),y.jsx(Ti,{size:"sm",variant:"transparent",c:"dimmed",children:y.jsx(hg,{style:{width:16}})}),y.jsx(it,{className:mUe,children:Jm(r.id)}),y.jsx(Ti,{size:"sm",variant:"transparent",c:"dimmed",children:y.jsx(hg,{style:{width:16}})}),y.jsx(UJ,{title:"outgoing",total:l.length,included:c.length})]})}),d>0&&y.jsx(wUe,{label:"Current view does not include some relationships",children:y.jsxs(en,{mt:"xs",gap:6,c:"orange",style:{cursor:"pointer"},children:[y.jsx(r0,{style:{width:14}}),y.jsxs(it,{fz:"sm",children:[d," relationship",d>1?"s are":" is"," hidden"]})]})})]}),y.jsx(Se,{className:vUe,children:i&&y.jsxs(y.Fragment,{children:[y.jsx(qJ,{actorRef:i}),y.jsx(Se,{pos:"absolute",top:12,right:12,children:y.jsx(lr,{size:"md",variant:"default",radius:"sm",onClick:u=>{u.stopPropagation();const{subject:p,scope:f,viewId:m}=i.getSnapshot().context;n.overlays().send({type:"open.relationshipsBrowser",subject:p,scope:f,viewId:m})},children:y.jsx(HJ,{stroke:1.6,style:{width:"70%"}})})})]})})]})}function UJ({title:e,total:r,included:n}){return y.jsx(Af,{withBorder:!0,shadow:"none",className:yUe,px:"md",py:"xs",radius:"md",mod:{zero:r===0,missing:r!==n},children:y.jsxs(Lo,{gap:4,align:"flex-end",children:[y.jsx(it,{component:"div",c:r!==n?"orange":"dimmed",tt:"uppercase",fw:600,fz:10,lh:1,children:e}),y.jsx(it,{fw:600,fz:"xl",component:"div",lh:1,children:r!==n?y.jsxs(y.Fragment,{children:[n," / ",r]}):y.jsx(y.Fragment,{children:r})})]})})}const _Ue=fe({marginTop:"sm",marginBottom:"sm"}),SUe=fe({display:"inline-flex",transition:"fast",border:"1px dashed",borderColor:"mantine.colors.defaultBorder",borderRadius:"sm",px:"md",py:"xs",alignItems:"center",cursor:"pointer",color:"mantine.colors.gray[7]",_dark:{color:"mantine.colors.dark[1]"},"& > *":{transition:"fast"},_hover:{transitionTimingFunction:"out",borderStyle:"solid",color:"mantine.colors.defaultColor",background:"mantine.colors.defaultHover","& > *":{transitionTimingFunction:"out",transform:"translateX(1px)"}}}),iR=({element:e})=>y.jsx(Se,{className:SUe,children:y.jsx(it,{component:"div",fz:"sm",fw:"500",children:e.title})}),EUe=()=>{};function CUe({element:e}){const r=_y({multiple:!1});r.setHoveredNode=EUe;const n=S.useMemo(()=>{let o=1;const i=l=>({label:l,value:`msg${o++}`,type:"message",children:[]}),a={label:y.jsx(iR,{type:"current",element:e}),value:e.id,element:e,type:"current",children:[...e.children()].map(l=>({label:y.jsx(iR,{type:"descedant",element:l}),value:l.id,element:l,type:"descedant",children:[]}))};return a.children.length===0&&a.children.push(i(y.jsx(_3,{radius:"sm",children:"no nested"}))),[[...e.ancestors()].reduce((l,s)=>({label:y.jsx(iR,{type:"ancestor",element:s}),value:s.id,element:s,type:"ancestor",children:[l]}),a)]},[e]);return S.useEffect(()=>{r.expandAllNodes()},[n]),y.jsxs(y.Fragment,{children:[y.jsxs(f3,{variant:"light",color:"orange",title:"In development",icon:y.jsx(r0,{}),children:["We need your feedback. Share your thoughts and ideas -"," ",y.jsx(gS,{fz:"sm",fw:500,underline:"hover",c:"orange",href:"https://github.com/likec4/likec4/discussions/",target:"_blank",children:"GitHub discussions"})]}),y.jsx(Ff,{levelOffset:"xl",allowRangeSelection:!1,expandOnClick:!1,expandOnSpace:!1,classNames:{label:_Ue},data:n,tree:r})]})}const $Ue=[["path",{d:"M12 4l-8 4l8 4l8 -4l-8 -4",key:"svg-0"}],["path",{d:"M4 12l8 4l8 -4",key:"svg-1"}],["path",{d:"M4 16l8 4l8 -4",key:"svg-2"}]],aR=wt("outline","stack-2","Stack2",$Ue),WJ=sp.withProps({mb:8,labelPosition:"left",variant:"dashed"}),GJ=_n.withProps({color:"dark",fz:"xs",openDelay:400,closeDelay:150,label:"",children:null,offset:4}),YJ=it.withProps({component:"div",fz:11,fw:500,c:"dimmed",lh:1}),u0=it.withProps({component:"div",fz:"xs",c:"dimmed",className:iqe}),fg=24,RUe=["Properties","Relationships","Views","Structure","Deployments"];function zUe({viewId:e,fromNode:r,rectFromNode:n,fqn:o,onClose:i}){const[a,l]=S.useState(!1),s=fze(),c=s.width||window.innerWidth||1200,d=s.height||window.innerHeight||800,[u,p]=cze({key:"likec4:element-details:active-tab",defaultValue:"Properties"}),f=Mt(),m=WVe(),v=r?m.findNode(r):m.findNodeWithElement(o),w=m.$model.element(o),[x,k]=Jr([...w.views()],un(K=>K.$view),qq(K=>K._type==="element"&&K.viewOf===o));let C=v?.navigateTo?.$view??w.defaultView?.$view??null;C?.id===e&&(C=null);const _=fw(w.links),$=aVe(),R=(v?.$node.children?.length??0)>0,T=Math.min(700,c-fg*2),A=Math.min(650,d-fg*2),z=n?{x:n.x+(R?n.width-T/2:n.width/2),y:n.y+(R?0:n.height/2)}:{x:c/2,y:d/2},j=n?Math.min(n.width/T,n.height/A,.9):1,I=Math.round(ta(z.x-T/2,{min:fg,max:c-T-fg})),N=Math.round(ta(z.y-(R?0:60),{min:fg,max:d-A-fg})),L=ta((z.x-I)/T,{min:.1,max:.9}),H=ta((z.y-N)/A,{min:.1,max:.9}),P=jZ(T),V=jZ(A);$p(()=>{P.set(T),V.set(A)},[T,A]);const B=S.useCallback((K,O)=>{P.set(Math.max(P.get()+O.delta.x,320)),V.set(Math.max(V.get()+O.delta.y,300))},[]),F=S.useRef(null),q=Zh(i),G=h7(()=>{q.current()},[],50),U=v?.$node.notation??null,Y=bx({element:{id:o,title:w.title,icon:v?.icon??w.icon},className:ZVe});return wx(()=>{F.current?.open||F.current?.showModal()},20),wx(()=>{l(!0)},220),y.jsx(ga.dialog,{ref:F,className:Ge(GVe,ny.classNames.fullWidth),layout:!0,initial:{[p2]:"0px",[h2]:"5%"},animate:{[p2]:"3px",[h2]:"60%"},exit:{[p2]:"0px",[h2]:"0%",transition:{duration:.1}},onClick:K=>{K.stopPropagation(),K.target?.nodeName?.toUpperCase()==="DIALOG"&&F.current?.close()},onDoubleClick:nn,onPointerDown:nn,onClose:K=>{K.stopPropagation(),G()},children:y.jsx(ny,{forwardProps:!0,removeScrollBar:!1,children:y.jsxs(ga.div,{layout:!0,layoutRoot:!0,drag:!0,dragControls:$,dragElastic:0,dragMomentum:!1,dragListener:!1,"data-likec4-color":v?.color??w.color,className:YVe,initial:{top:N,left:I,width:T,height:A,opacity:0,originX:L,originY:H,scale:Math.max(j,.65)},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.9,translateY:-10,transition:{duration:.1}},style:{width:P,height:V},children:[y.jsxs("div",{className:XVe,onPointerDown:K=>$.start(K),children:[y.jsxs(Or,{alignItems:"start",justify:"space-between",gap:"sm",mb:"sm",flexWrap:"nowrap",children:[y.jsxs(Or,{alignItems:"start",gap:"sm",style:{cursor:"default"},flexWrap:"nowrap",children:[Y,y.jsxs("div",{children:[y.jsx(it,{component:"div",className:KVe,children:w.title}),U&&y.jsx(it,{component:"div",c:"dimmed",fz:"sm",fw:500,lh:1.3,lineClamp:1,children:U})]})]}),y.jsx(lp,{size:"lg",onClick:K=>{K.stopPropagation(),G()}})]}),y.jsxs(Or,{alignItems:"baseline",gap:"sm",flexWrap:"nowrap",children:[y.jsxs("div",{children:[y.jsx(YJ,{children:"kind"}),y.jsx(ec,{radius:"sm",size:"sm",fw:600,color:"gray",style:{cursor:"pointer"},onClick:K=>{K.stopPropagation(),f.openSearch(`kind:${w.kind}`)},children:w.kind})]}),y.jsxs("div",{style:{flex:1},children:[y.jsx(YJ,{children:"tags"}),y.jsxs(Js,{gap:4,flex:1,mt:6,wrap:"wrap",children:[w.tags.map(K=>y.jsx(u2,{tag:K,cursor:"pointer",onClick:O=>{O.stopPropagation(),f.openSearch(`#${K}`)}},K)),w.tags.length===0&&y.jsx(ec,{radius:"sm",size:"sm",fw:600,color:"gray",children:"—"})]})]}),y.jsxs(s3,{style:{alignSelf:"flex-start"},children:[_&&y.jsx(lr,{component:"a",href:_.url,target:"_blank",size:"lg",variant:"default",radius:"sm",children:y.jsx(HJ,{stroke:1.6,style:{width:"65%"}})}),y.jsx(LMe,{feature:"Vscode",children:y.jsx(GJ,{label:"Open source",children:y.jsx(lr,{size:"lg",variant:"default",radius:"sm",onClick:K=>{K.stopPropagation(),f.openSource({element:w.id})},children:y.jsx(dg,{stroke:1.8,style:{width:"62%"}})})})}),C&&y.jsx(GJ,{label:"Open default view",children:y.jsx(lr,{size:"lg",variant:"default",radius:"sm",onClick:K=>{K.stopPropagation(),f.navigateTo(C.id,r??void 0)},children:y.jsx(ba,{style:{width:"70%"}})})})]})]})]}),y.jsx(pQ,{children:y.jsxs(up,{value:u,onChange:K=>p(K),variant:"none",classNames:{root:eqe,list:tqe,tab:rqe,panel:nqe},children:[y.jsx(ky,{children:RUe.map(K=>y.jsx(Lf,{value:K,children:K},K))}),y.jsx(rc,{value:"Properties",children:y.jsx(es,{scrollbars:"y",type:"scroll",offsetScrollbars:!0,children:y.jsxs(Se,{className:oqe,pt:"xs",children:[w.hasSummary&&y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:"summary"}),y.jsx(zp,{value:w.summary})]}),y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:"description"}),y.jsx(zp,{value:w.description,emptyText:"no description"})]}),w.technology&&y.jsx(TUe,{title:"technology",children:w.technology}),w.links.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:"links"}),y.jsx(Or,{gap:"xs",flexWrap:"wrap",children:w.links.map((K,O)=>y.jsx(o$,{value:K},O))})]}),w.$element.metadata&&y.jsx(jUe,{value:w.$element.metadata})]})})}),y.jsx(rc,{value:"Relationships",children:y.jsx(gp,{overrides:{enableRelationshipBrowser:!1,enableNavigateTo:!1},children:a&&u==="Relationships"&&y.jsx(kUe,{element:w,node:v??null})})}),y.jsx(rc,{value:"Views",children:y.jsx(es,{scrollbars:"y",type:"auto",children:y.jsxs(Lo,{gap:"lg",children:[x.length>0&&y.jsxs(Se,{children:[y.jsx(WJ,{label:"views of the element (scoped)"}),y.jsx(Lo,{gap:"sm",children:x.map(K=>y.jsx(XJ,{view:K,onNavigateTo:O=>f.navigateTo(O,r??void 0)},K.id))})]}),k.length>0&&y.jsxs(Se,{children:[y.jsx(WJ,{label:"views including this element"}),y.jsx(Lo,{gap:"sm",children:k.map(K=>y.jsx(XJ,{view:K,onNavigateTo:O=>f.navigateTo(O,r??void 0)},K.id))})]})]})})}),y.jsx(rc,{value:"Structure",children:y.jsx(es,{scrollbars:"y",type:"auto",children:y.jsx(CUe,{element:w})})}),y.jsx(rc,{value:"Deployments",children:y.jsx(es,{scrollbars:"y",type:"auto",children:y.jsx(kqe,{elementFqn:w.id})})})]})}),y.jsx(ga.div,{className:aqe,drag:!0,dragElastic:0,dragMomentum:!1,onDrag:B,dragConstraints:{top:0,left:0,right:0,bottom:0}})]})})})}const XJ=({view:e,onNavigateTo:r})=>y.jsx(pr,{className:QVe,onClick:n=>r(e.id,n),children:y.jsxs(en,{gap:6,align:"start",wrap:"nowrap",children:[y.jsx(Ti,{size:"sm",variant:"transparent",children:e._type==="deployment"?y.jsx(aR,{stroke:1.8}):y.jsx(ba,{stroke:1.8})}),y.jsx(Se,{children:y.jsx(it,{component:"div",className:JVe,lineClamp:1,children:e.title||"untitled"})})]})});function TUe({title:e,emptyValue:r="undefined",children:n,style:o,...i}){return y.jsxs(y.Fragment,{children:[y.jsx(u0,{children:e}),y.jsx(it,{component:"div",...ty(n)&&{c:"dimmed"},fz:"md",style:{whiteSpace:"preserve-breaks",userSelect:"all",...o},...i,children:n||r})]})}function jUe({value:e}){const r=uw(e).sort(([n],[o])=>n.localeCompare(o));return y.jsx(pQ,{children:y.jsxs(y.Fragment,{children:[y.jsx(u0,{style:{justifySelf:"end",textAlign:"right"},children:"metadata"}),y.jsx(Se,{className:fe({display:"grid",gridTemplateColumns:"min-content 1fr",gridAutoRows:"min-content",gap:"[12px 16px]",alignItems:"baseline",justifyItems:"stretch"}),children:r.map(([n,o])=>y.jsx(dqe,{label:n,value:o},n))})]})})}const AUe=e=>({viewId:e.context.currentView.id,fromNode:e.context.initiatedFrom.node,rectFromNode:e.context.initiatedFrom.clientRect,fqn:e.context.subject});function DUe({actorRef:e,onClose:r}){const n=pn(e,AUe,Ir);return y.jsx(FC.Provider,{value:e,children:y.jsx(zUe,{onClose:r,...n})})}const $2="--_blur",R2="--_opacity",PUe="--_level",p0=S.forwardRef(({onClose:e,className:r,classes:n,overlayLevel:o=0,children:i,fullscreen:a=!1,withBackdrop:l=!0,backdrop:s,openDelay:c=130,...d},u)=>{const[p,f]=S.useState(c===0),m=bH(p),v=S.useRef(null),w=S.useRef(!1),x=AZ()!==!0,k=S.useRef(e);k.current=e;const C=h7(()=>{w.current||(w.current=!0,k.current())},[],50);S.useLayoutEffect(()=>{v.current?.open||v.current?.showModal()},[]),wx(()=>{f(!0)},c>0?c:void 0);const _=xVe({fullscreen:a,withBackdrop:l});let $=o>0?"50%":"60%";return s?.opacity!==void 0&&($=`${s.opacity*100}%`),y.jsx(ga.dialog,{ref:$r(v,m,u),className:Ge(n?.dialog,r,_,a&&ny.classNames.fullWidth),layout:!0,style:{[PUe]:o},...x?{initial:{[$2]:"0px",[R2]:"0%",scale:.85,opacity:0},animate:{[$2]:o>0?"4px":"8px",[R2]:$,scale:1,opacity:1,translateY:0},exit:{opacity:0,scale:.98,translateY:-20,[$2]:"0px",[R2]:"0%"}}:{initial:{[$2]:"8px",[R2]:$}},onClick:R=>{if(R.stopPropagation(),R.target?.nodeName?.toUpperCase()==="DIALOG"){v.current?.close();return}},onCancel:R=>{R.preventDefault(),R.stopPropagation(),C()},onDoubleClick:nn,onPointerDown:nn,onClose:R=>{R.stopPropagation(),C()},...d,children:y.jsx(ny,{forwardProps:!0,children:y.jsx("div",{className:Ge(n?.body,"likec4-overlay-body"),children:p&&y.jsx(y.Fragment,{children:i})})})})});p0.displayName="Overlay";const z2=(e,r)=>e.size>2&&r.size!==e.size?new Set(Jc([...hx(e).flatten(),...r])):e.size>1?new Set(Jc([...e])):e;function MUe(e,r){const n=new Set,o=new Set,i=new Set,a={sources:new Set,targets:new Set},l=(s,c)=>{c==="source"?(n.add(s),a.sources.add(s)):(i.add(s),a.targets.add(s))};for(const s of e){const c=r.findEdge(s),d=c?[...c.relationships("model")]:[];if(!c||!xn(d,1)||!c.source.hasElement()||!c.target.hasElement())continue;const u=c.source.element,p=c.target.element;l(u,"source"),l(p,"target");for(const f of d){if(o.add(f),f.source!==u){l(f.source,"source");for(const m of f.source.ancestors()){if(m===u)break;n.add(m)}}if(f.target!==p){l(f.target,"target");for(const m of f.target.ancestors()){if(m===p)break;i.add(m)}}}}return{sources:z2(n,a.sources),targets:z2(i,a.targets),relationships:o}}function NUe({source:e,target:r}){const n=new Set,o=new Set,i=new Set,a={sources:new Set,targets:new Set},l=(c,d)=>{d==="source"?(n.add(c),a.sources.add(c)):(i.add(c),a.targets.add(c))};e&&l(e,"source"),r&&l(r,"target");const[s]=V5e.findConnection(e,r,"directed");if(!s)return{sources:n,targets:i,relationships:o};for(const c of s.relations){const d=c.source,u=c.target;if(l(d,"source"),l(u,"target"),o.add(c),e!==d){He(Yn(e,d),`${e.id} is not an ancestor of ${d.id}`);for(const p of d.ancestors()){if(p===e)break;n.add(p)}}if(r!==u){He(Yn(r,u),`${r.id} is not an ancestor of ${u.id}`);for(const p of u.ancestors()){if(p===r)break;i.add(p)}}}return{sources:z2(n,a.sources),targets:z2(i,a.targets),relationships:o}}const KJ=S.createContext(null);function lR(){return gt(S.useContext(KJ),"No RelationshipDetailsActorContext")}function ZJ(e,r=Ir){const n=at(e),o=lR();return pn(o,n,r)}function sR(){const e=lR();return S.useMemo(()=>({actor:e,get rootElementId(){return`relationship-details-${e.sessionId.replaceAll(":","_")}`},getState:()=>e.getSnapshot().context,send:e.send,navigateTo:(...r)=>{r.length===1?e.send({type:"navigate.to",params:{edgeId:r[0]}}):e.send({type:"navigate.to",params:{source:r[0],target:r[1]}})},fitDiagram:()=>{e.send({type:"fitDiagram"})},close:()=>{e._parent?e._parent?.send({type:"close",actorId:e.id}):e.send({type:"close"})}}),[e])}const ul={dagre:{ranksep:60,nodesep:35,edgesep:25},edgeLabel:{width:220,height:14},nodeWidth:330,nodeHeight:180,compound:{labelHeight:2,paddingTop:50,paddingBottom:32}};function BUe(){const e=new x2.graphlib.Graph({directed:!0,compound:!0,multigraph:!0});return e.setGraph({...ul.dagre,rankdir:"LR"}),e.setDefaultEdgeLabel(()=>({...ul.edgeLabel})),e.setDefaultNodeLabel(()=>({})),e}const cR="-port";function QJ(e,r,n){const o=new Ln(a=>({id:`${e}-${a}`,portId:`${e}-${a}`})),i=hx(r);for(const a of i.sorted){const l=i.children(a).length>0,s=a.id,c=`${e}-${s}`,d=l?`${c}${cR}`:c;o.set(s,{id:c,portId:d}),n.setNode(c,{column:e,element:a,isCompound:l,portId:d,inPorts:[],outPorts:[],width:ul.nodeWidth,height:ul.nodeHeight}),l&&(n.setNode(d,{element:a,portId:d,isCompound:l,inPorts:[],outPorts:[],width:ul.nodeWidth-ul.dagre.ranksep,height:ul.compound.labelHeight}),n.setParent(d,c));const u=i.parent(a);u&&n.setParent(c,`${e}-${u.id}`)}return{...i,byId:a=>{const l=i.byId(a),s=o.get(l.id);return{element:l,graph:s}},graphNodes:o}}function IUe(e){return x2.layout(e,{}),r=>{const n=e.node(r),{x:o,y:i,width:a,height:l}=n;return{position:{x:o-Math.round(a/2),y:i-Math.round(l/2)},width:a,height:l}}}function OUe(e,r){const n=BUe(),o=QJ("sources",e.sources,n),i=QJ("targets",e.targets,n),a=Array.from(e.relationships).map(k=>{const C=o.byId(k.source.id).graph,_=i.byId(k.target.id).graph,$=k.id;return n.node(C.id).outPorts.push(_.id),n.node(_.id).inPorts.push(C.id),n.setEdge(C.portId,_.portId,{...ul.edgeLabel},$),{name:$,source:C.id,sourceHandle:C.id+"_out"+(n.node(C.id).outPorts.length-1),target:_.id,targetHandle:_.id+"_in"+(n.node(_.id).inPorts.length-1),relationship:k}}),l=[...o.graphNodes.values(),...i.graphNodes.values()];for(const{id:k}of l){const C=n.node(k);if(C.isCompound)continue;const _=Math.max(n.inEdges(k)?.length??0,n.outEdges(k)?.length??0);_>3&&(C.height=C.height+(_-4)*14)}const s=n.edgeCount();if(s>5)for(const k of n.edges())n.setEdge(k,{...ul.edgeLabel,width:s>10?800:400});const c=IUe(n),d=Jr(l,ep(k=>k.id===k.portId),hw(k=>[k.id,c(k.id)]));function u(k){return d[k]??=Jr(n.children(k)??[],ep(C=>!C.endsWith(cR)),un(C=>u(C)),Wq(C=>{He(C.length>0,`Node ${k} has no nested nodes`)}),gw((C,_)=>({minY:Math.min(C.minY,_.position.y),maxY:Math.max(C.maxY,_.position.y+_.height)}),{minY:1/0,maxY:-1/0}),({minY:C,maxY:_})=>{const{position:{x:$},width:R}=c(k);return C=C-ul.compound.paddingTop,_=_+ul.compound.paddingBottom,{position:{x:$,y:C},width:R,height:_-C}})}function p(k){const C=n.parent(k);return C?p(C)+1:0}function f(k){const C=n.children(k)??[];return C.length===0?0:1+Math.max(...C.map(f))}const m=(k,C,_)=>Jr(_,un(($,R)=>({port:k+"_"+C+R,topY:u($).position.y})),mw(rp("topY")),un(rp("port")));let v=0,w=0;const x=l.map(({id:k})=>{const{element:C,inPorts:_,outPorts:$,column:R}=n.node(k);let{position:T,width:A,height:z}=u(k);const j=n.parent(k),I=(n.children(k)??[]).filter(V=>!V.endsWith(cR));v=Math.min(v,T.x),w=Math.min(w,T.y);const N=r?E1(C.scopedViews(),V=>V.id!==r.id)?.id??null:null,L=r?.findNodeWithElement(C.id),H=r&&!L?E1(C.ancestors(),V=>!!r.findNodeWithElement(V.id))?.id:null,P=L??(H&&r?.findNodeWithElement(H));return _1({id:k,parent:j??null,x:T.x,y:T.y,title:C.title,description:Fs(C.$element)??null,technology:C.technology,tags:[...C.tags],links:null,color:P?.color??C.color,shape:L?.shape??C.shape,icon:L?.icon??C.icon??"none",modelRef:C.id,kind:C.kind,level:p(k),labelBBox:{x:T.x,y:T.y,width:A,height:z},style:ud({...(L??P)?.style,...C.$element.style},["shape","color","icon"]),navigateTo:N,...I.length>0&&{depth:f(k)},children:I,width:A,height:z,column:R,ports:{in:m(k,"in",_),out:m(k,"out",$)}})});return{bounds:{x:Math.min(v,0),y:Math.min(w,0),width:n.graph().width??100,height:n.graph().height??100},nodes:x,edges:n.edges().reduce((k,C)=>{const _=n.edge(C),$=C.name;if(!$)return k;const{name:R,source:T,target:A,relationship:z,sourceHandle:j,targetHandle:I}=Q1(a,V=>V.name===$),N=z.title??"untitled",L=z.navigateTo?.id??null,H=Fs(z.$relationship)??null,P=z.technology??null;return k.push({id:R,source:T,sourceHandle:j,target:A,targetHandle:I,label:N,color:z.color,description:H,...L&&{navigateTo:L},...P&&{technology:P},points:_.points.map(V=>[V.x,V.y]),line:z.line,relationId:z.id,parent:null}),k},[])}}const dR=fe.raw({display:"inline-flex",alignItems:"center",padding:"[6px 2px 0 2px]","& .mantine-Text-root":{color:"mantine.colors.text/90",fontSize:"xs",fontWeight:500,lineHeight:"1.2"}}),JJ=fe({paddingLeft:"1",gridColumn:1},dR),LUe=fe({gridColumn:2},dR),eee=fe({gridColumn:3,paddingRight:"1"},dR),tee="likec4-edge-label",FUe=Ge(tee,fe({display:"grid",gridColumnStart:1,gridColumnEnd:4,borderBottom:"1px solid",borderBottomColor:"mantine.colors.defaultBorder",marginBottom:"0",padding:"[0 4px 5px 4px]",width:"100%","& .mantine-Text-root":{fontSize:"xxs",fontWeight:400,lineHeight:"xs",color:"mantine.colors.dimmed"}})),VUe=fe({display:"contents",[`&:last-child .${tee}`]:{borderBottom:"none",marginBottom:"0"},"& > *":{transition:"all 0.15s ease-in"},"&:is(:hover, [data-selected=true]) > *":{transition:"all 0.15s ease-out",cursor:"pointer",backgroundColor:"mantine.colors.defaultHover"}}),qUe=fe({display:"grid",gridTemplateColumns:"1fr 30px 1fr",gridAutoRows:"min-content max-content",gap:"0",alignItems:"stretch"});fe({display:"grid",gridTemplateColumns:"min-content 1fr",gridAutoRows:"min-content max-content",gap:"[10px 12px]",alignItems:"baseline",justifyItems:"start"});const HUe=fe({maxHeight:["70vh","calc(100cqh - 70px)"]}),UUe=({edge:e,view:r})=>{const n=sR(),o=S.useRef(null),i=r.nodes.find(s=>s.id===e.source),a=r.nodes.find(s=>s.id===e.target),l=r.edges.flatMap(s=>{const c=r.nodes.find(u=>u.id===s.source),d=r.nodes.find(u=>u.id===s.target);return c&&d?{id:s.id,source:c,target:d,label:s.label}:[]});return!i||!a||l.length===0?null:y.jsxs(br,{position:"bottom-start",shadow:"md",keepMounted:!0,withinPortal:!1,closeOnClickOutside:!0,clickOutsideEvents:["pointerdown","mousedown","click"],onOpen:()=>{setTimeout(()=>{o.current?.querySelector(`[data-edge-id="${e.id}"]`)?.scrollIntoView({behavior:"instant",block:"nearest"})},100)},children:[y.jsx(kd,{children:y.jsxs(Vn,{size:"xs",variant:"default",fw:"500",style:{padding:"0.25rem 0.75rem"},rightSection:y.jsx(tR,{size:16}),children:[y.jsx(Se,{className:JJ,maw:160,p:0,mod:{"likec4-color":i.color},children:y.jsx(it,{component:"span",truncate:!0,children:i.title})}),y.jsx(Ti,{color:"dark",variant:"transparent",size:"xs",children:y.jsx(hg,{style:{width:"80%"}})}),y.jsx(Se,{className:eee,maw:160,p:0,mod:{"likec4-color":a.color},children:y.jsx(it,{component:"span",truncate:!0,children:a.title})})]})}),y.jsx(Qs,{p:0,miw:250,maw:400,children:y.jsx(oi,{className:HUe,scrollbars:"y",type:"never",viewportRef:o,children:y.jsx(Se,{className:qUe,p:"xs",maw:400,children:l.map(s=>y.jsxs("div",{className:VUe,"data-selected":s.id===e.id,onClick:c=>{c.stopPropagation(),n.navigateTo(s.id)},children:[y.jsx(Se,{className:JJ,mod:{"edge-id":s.id,"likec4-color":s.source.color},children:y.jsx(it,{component:"span",truncate:!0,children:s.source.title})}),y.jsx(Se,{className:LUe,children:y.jsx(Ti,{color:"dark",variant:"transparent",size:"xs",children:y.jsx(hg,{style:{width:"80%"}})})}),y.jsx(Se,{className:eee,mod:{"likec4-color":s.target.color},children:y.jsx(it,{component:"span",truncate:!0,children:s.target.title})}),y.jsx(Se,{className:FUe,children:y.jsx(it,{component:"span",truncate:!0,children:s.label||"untitled"})})]},s.id))})})})]})},WUe=rR(e=>{const{enableNavigateTo:r}=sr(),{data:{navigateTo:n}}=e,[o,i,a]=Kx(e),l=Mt();return y.jsxs(a0,{...e,children:[y.jsx(l0,{edgeProps:e,svgPath:o}),y.jsx(S2,{edgeProps:e,labelPosition:{x:i,y:a,translate:"translate(-50%, 0)"},style:{maxWidth:Math.abs(e.targetX-e.sourceX-100)},children:y.jsx(i0,{edgeProps:e,children:r&&n&&y.jsx(_2,{...e,onClick:s=>{s.stopPropagation(),l.navigateTo(n)}})})})]})}),GUe=e=>{const{enableNavigateTo:r,enableVscode:n}=sr(),o=Mt(),i=E2(),a=[],{navigateTo:l,fqn:s}=e.data;return l&&r&&i!==l&&a.push({key:"navigate",icon:y.jsx(ba,{}),onClick:c=>{c.stopPropagation(),o.navigateTo(l)}}),s&&a.push({key:"relationships",icon:y.jsx(s0,{}),onClick:c=>{c.stopPropagation(),o.openRelationshipsBrowser(s)}}),s&&n&&a.push({key:"goToSource",icon:y.jsx(dg,{}),onClick:c=>{c.stopPropagation(),o.openSource({element:s})}}),y.jsx(C2,{buttons:a,...e})};function YUe(e,r){return e.id===r.id&&tt(e.type,r.type)&&tt(e.selected??!1,r.selected??!1)&&tt(e.dragging??!1,r.dragging??!1)&&tt(e.width??0,r.width??0)&&tt(e.height??0,r.height??0)&&tt(e.zIndex??0,r.zIndex??0)&&tt(e.data,r.data)}const ree=Symbol.for("isMemoized");function sc(e,r="Node"){if(e.hasOwnProperty(ree))return e;const n=S.memo(e,YUe);return n.displayName=r,Object.defineProperty(n,ree,{enumerable:!1,writable:!1,value:!0}),n}const nee=e=>{const r=Mt();return y.jsx(oR,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}})},XUe=sc(e=>{const{enableElementTags:r}=sr();return y.jsxs(ug,{nodeProps:e,children:[y.jsx(pg,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx(nee,{...e}),y.jsx(GUe,{...e}),y.jsx(ZUe,{...e})]})}),KUe=sc(e=>y.jsxs(c0,{nodeProps:e,children:[y.jsx(nee,{...e}),y.jsx(d0,{...e}),y.jsx(QUe,{...e})]})),ZUe=({data:{ports:e,height:r}})=>y.jsxs(y.Fragment,{children:[e.in.map((n,o)=>y.jsx(Oo,{id:n,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${15+(o+1)*((r-30)/(e.in.length+1))}px`}},n)),e.out.map((n,o)=>y.jsx(Oo,{id:n,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${15+(o+1)*((r-30)/(e.out.length+1))}px`}},n))]}),QUe=({data:e})=>y.jsxs(y.Fragment,{children:[e.ports.in.map((r,n)=>y.jsx(Oo,{id:r,type:"target",position:Ue.Left,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r)),e.ports.out.map((r,n)=>y.jsx(Oo,{id:r,type:"source",position:Ue.Right,style:{visibility:"hidden",top:`${20*(n+1)}px`}},r))]}),JUe={element:XUe,compound:KUe},eWe={relationship:WUe};function tWe({actorRef:e}){const r=S.useRef(null);return r.current==null&&(r.current={defaultNodes:[],defaultEdges:[]}),y.jsx(KJ.Provider,{value:e,children:y.jsx(lw,{...r.current,children:y.jsx(lg,{id:e.sessionId,inherit:!1,children:y.jsxs(Cn,{children:[y.jsx(iWe,{},"xyflow"),y.jsx(nWe,{},"sync")]})})})})}const rWe=e=>({...e.context.subject,viewId:e.context.viewId}),nWe=S.memo(()=>{const e=lR(),r=pn(e,rWe,tt),n=Fo(),o=n.findView(r.viewId)??null,i=S.useMemo(()=>{let s;if("edgeId"in r&&Zn(r.edgeId)){He(o,`view ${r.viewId} not found`);const c=gt(o.findEdge(r.edgeId),`edge ${r.edgeId} not found in ${r.viewId}`);s=MUe([c.id],o)}else if(r.source&&r.target)s=NUe({source:n.element(r.source),target:n.element(r.target)});else return null;return OUe(s,o)},[r,o,n]),a=vr(),l=pf();return S.useEffect(()=>{l.viewportInitialized&&e.send({type:"xyflow.init",instance:l,store:a})},[a,l.viewportInitialized,e]),S.useEffect(()=>{i!==null&&e.send({type:"update.layoutData",data:i})},[i,e]),null}),oWe=({context:e})=>({initialized:e.initialized.xydata&&e.initialized.xyflow,nodes:e.xynodes,edges:e.xyedges}),iWe=S.memo(()=>{const e=sR(),{initialized:r,nodes:n,edges:o}=ZJ(oWe,tt);return y.jsxs(s$,{id:e.rootElementId,nodes:n,edges:o,className:Ge(r?"initialized":"not-initialized","likec4-relationship-details"),nodeTypes:JUe,edgeTypes:eWe,onNodesChange:Qn(i=>{e.send({type:"xyflow.applyNodeChanges",changes:i})}),onEdgesChange:Qn(i=>{e.send({type:"xyflow.applyEdgeChanges",changes:i})}),fitViewPadding:.05,onNodeClick:Qn((i,a)=>{i.stopPropagation(),e.send({type:"xyflow.nodeClick",node:a})}),onEdgeClick:Qn((i,a)=>{i.stopPropagation(),e.send({type:"xyflow.edgeClick",edge:a})}),onPaneClick:Qn(()=>{e.send({type:"xyflow.paneClick"})}),onDoubleClick:Qn(()=>{e.send({type:"xyflow.paneDblClick"})}),onViewportResize:Qn(()=>{e.send({type:"xyflow.resized"})}),onEdgeMouseEnter:Qn((i,a)=>{a.data.hovered||e.send({type:"xyflow.edgeMouseEnter",edge:a})}),onEdgeMouseLeave:Qn((i,a)=>{a.data.hovered&&e.send({type:"xyflow.edgeMouseLeave",edge:a})}),onSelectionChange:Qn(i=>{e.send({type:"xyflow.selectionChange",...i})}),nodesDraggable:!1,nodesSelectable:!0,fitView:!1,pannable:!0,zoomable:!0,children:[y.jsx(lWe,{}),y.jsx(sd,{position:"top-right",children:y.jsx(lr,{variant:"default",color:"gray",onClick:i=>{i.stopPropagation(),e.close()},children:y.jsx(fp,{})})})]})}),aWe=({context:e})=>({subject:e.subject,viewId:e.viewId}),lWe=S.memo(()=>{const{subject:e,viewId:r}=ZJ(aWe,tt),n=Fo().findView(r);if(!n||!n.isDiagram())return null;const o=[...n.edges()];let i="edgeId"in e&&Zn(e.edgeId)?o.find(a=>a.id===e.edgeId):Q1(o,a=>a.source.element?.id===e.source&&a.target.element?.id===e.target)||Q1(o,a=>(a.source.element?.id===e.source||Yn(a.source.element?.id??"__",e.source??"__"))&&(a.target.element?.id===e.target||Yn(a.target.element?.id??"__",e.target??"__")));return i?y.jsx(sWe,{edge:i.$edge,view:n.$view}):null}),sWe=({edge:e,view:r})=>{const n=sR(),o=e.id,[i,a,{history:l,current:s}]=RH(e.id);S.useEffect(()=>{i!==o&&a.set(o)},[o]),S.useEffect(()=>{i!==o&&n.navigateTo(i)},[i]);const c=s>0,d=s+1{u.stopPropagation(),a.back()},children:y.jsx(VJ,{})})},"back"),d&&y.jsx(ga.div,{layout:!0,initial:{opacity:.05,transform:"translateX(5px)"},animate:{opacity:1,transform:"translateX(0)"},exit:{opacity:0,transform:"translateX(5px)"},children:y.jsx(lr,{variant:"default",color:"gray",onClick:u=>{u.stopPropagation(),a.forward()},children:y.jsx(Dd,{})})},"forward"),y.jsx(en,{gap:"xs",wrap:"nowrap",ml:"sm",children:y.jsx(UUe,{edge:e,view:r})})]})})})},cWe=e=>e.context.overlays.map(r=>{switch(r.type){case"relationshipsBrowser":return e.children[r.id]?{type:r.type,actorRef:e.children[r.id]}:null;case"relationshipDetails":return e.children[r.id]?{type:r.type,actorRef:e.children[r.id]}:null;case"elementDetails":return e.children[r.id]?{type:r.type,actorRef:e.children[r.id]}:null;default:Qo(r)}}).filter(Bq),dWe=(e,r)=>e.length===r.length&&e.every((n,o)=>n.actorRef===r[o].actorRef);function uWe({overlaysActorRef:e}){const r=Mt(),n=pn(e,cWe,dWe),o=AZ()??!1,i=n.some(s=>s.type==="elementDetails");S.useEffect(()=>{const s=r.getContext().xystore.getState().domNode?.querySelector(".react-flow__renderer");if(!s||o)return;const c=GOe(s,{opacity:i?.7:1,filter:i?"grayscale(1)":"grayscale(0)",transform:i?"perspective(400px) translateZ(-12px) translateY(3px)":"translateY(0)"},{duration:i?.35:.17});let d=null;return i||(d=setTimeout(()=>{s.style.transform="",s.style.filter="",d=null},450)),()=>{d&&clearTimeout(d),c.stop()}},[i]);const a=s=>{e.send({type:"close",actorId:s.id})},l=n.map((s,c)=>{switch(s.type){case"relationshipsBrowser":return y.jsx(p0,{overlayLevel:c,onClose:()=>a(s.actorRef),children:y.jsx(qJ,{actorRef:s.actorRef})},s.actorRef.sessionId);case"relationshipDetails":return y.jsx(p0,{overlayLevel:c,onClose:()=>a(s.actorRef),children:y.jsx(tWe,{actorRef:s.actorRef})},s.actorRef.sessionId);case"elementDetails":return y.jsx(DUe,{actorRef:s.actorRef,onClose:()=>a(s.actorRef)},s.actorRef.sessionId);default:Qo(s)}});return y.jsx(gp.Overlays,{children:y.jsx(QS,{onReset:()=>e.send({type:"close.all"}),children:y.jsx(lg,{children:y.jsx(Cn,{mode:"popLayout",children:l})})})})}const[pWe,Md]=na("SearchActorContext"),hWe=e=>e.context.searchValue;function fWe(){const e=Md(),r=pn(e,hWe),n=S.useCallback(o=>{e.send({type:"change.search",search:o})},[e]);return[r,n]}const gWe=e=>{const r=e.context.searchValue.trim().toLowerCase();return r.length>1?r:""};function uR(){const e=Md();return S.useDeferredValue(pn(e,gWe))}function mWe(){const e=Md();return S.useCallback(r=>{e.send({type:"change.search",search:r})},[e])}const yWe=e=>e.context.pickViewFor;function vWe(){const e=Md();return pn(e,yWe)}const pR=fe.raw({outline:"none",background:"mantine.colors.primary[8]",borderColor:"mantine.colors.primary[9]"}),T2=".mantine-Tree-node:focus > .mantine-Tree-label &",bWe=fe.raw({display:"flex",width:"100%",background:"mantine.colors.body",rounded:"sm",padding:"[12px 8px 12px 14px]",minHeight:"60px",gap:"2",border:"1px solid",borderColor:"mantine.colors.defaultBorder",_hover:{...pR,borderColor:"mantine.colors.primary[9]",background:"mantine.colors.primary[8]/60"},_focus:pR,[T2]:pR,_dark:{borderColor:"transparent",background:"mantine.colors.dark[6]/80"},_light:{background:"mantine.colors.white/80",_hover:{borderColor:"mantine.colors.primary[6]",backgroundColor:"mantine.colors.primary[5]"}}}),j2="likec4-focusable",A2={ref:"var(--likec4-icon-size, 24px)"},xWe=fe.raw({color:{base:"mantine.colors.dimmed",_light:"mantine.colors.gray[5]",_groupHover:"mantine.colors.primary[0]",_groupFocus:"mantine.colors.primary[0]"},[T2]:{color:"mantine.colors.primary[0]"},flex:`0 0 ${A2.ref}`,height:A2.ref,width:A2.ref,display:"flex",alignItems:"center",justifyContent:"center",alignSelf:"flex-start","--ti-size":A2.ref,"& svg, & img":{width:"100%",height:"auto",maxHeight:"100%",pointerEvents:"none"},"& img":{objectFit:"contain"},"&.likec4-shape-icon svg":{strokeWidth:1.5}}),wWe=fe.raw({fontSize:"16px",fontWeight:500,lineHeight:"1.1",":where([data-disabled]) &":{opacity:.4},color:{base:"mantine.colors.dark[1]",_light:"mantine.colors.gray[7]",_groupHover:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"},_groupFocus:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"}},[T2]:{color:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"}}}),oee=fe.raw({color:{base:"mantine.colors.dimmed",_groupHover:{base:"mantine.colors.primary[1]",_light:"mantine.colors.primary[0]"},_groupFocus:"mantine.colors.primary[0]"},[T2]:{color:"mantine.colors.primary[0]"}}),kWe=fe.raw(oee,{marginTop:"1",fontSize:"12px",lineHeight:"1.4",":where([data-disabled]) &":{opacity:.85}}),_We=fe({width:"100%",height:"100%",border:"2px dashed",borderColor:"mantine.colors.defaultBorder",rounded:"md",display:"flex",justifyContent:"center",alignItems:"center",fontSize:"md",color:"mantine.colors.dimmed",padding:"md",paddingBlock:"xl"}),iee=Ake({slots:["root","icon","title","description","descriptionColor"],className:"search-button",base:{root:bWe,icon:xWe,title:wWe,description:kWe,descriptionColor:oee}}),hR="@container likec4-tree (max-width: 450px)",SWe=fe({outline:"none",marginBottom:"2"}),EWe=fe(LG.raw({containerName:"likec4-tree"}),{containerType:"inline-size",height:"100%"}),CWe=fe({display:"flex",alignItems:"baseline",outline:"none !important",gap:"1"}),$We=fe({marginTop:"2"}),RWe=fe({color:"mantine.colors.dimmed"}),zWe=fe({[hR]:{flexDirection:"column-reverse",alignItems:"flex-start",gap:"0.5"}}),TWe=fe({fontSize:"10px",lineHeight:"1.3",display:"block",fontWeight:500,whiteSpace:"nowrap",padding:"[1px 5px]",borderRadius:"4px",background:"mantine.colors.dark[9]/30",_light:{background:"mantine.colors.gray[3]/20"}}),jWe=fe({"--likec4-icon-size":"24px",[hR]:{"--likec4-icon-size":"18px"}}),AWe=fe({flex:0,fontSize:"10px",fontWeight:500,whiteSpace:"nowrap",lineHeight:"1.1",[hR]:{display:"none"}});function ka(e){e.stopPropagation(),e.preventDefault()}function aee(e){const r=e.getBoundingClientRect();return r.y+Math.floor(r.height/2)}function h0(e){if(!e){console.error("moveFocusToSearchInput: from is null or undefined");return}const r=e.getRootNode();if(!ey(r.querySelector)){console.error("moveFocusToSearchInput: root.querySelector is not a function");return}let n=r.querySelector("[data-likec4-search-input]");if(n){const o=n.value.length;n.focus(),n.setSelectionRange(o,o)}}function D2(e){if(!e){console.error("focusToFirstFoundElement: from is null or undefined");return}const r=e.getRootNode();if(!ey(r.querySelector)){console.error("focusToFirstFoundElement: root.querySelector is not a function");return}r.querySelector(`[data-likec4-search] .${j2}`)?.focus()}function lee(e,r,n=`.${j2}`){if(!e)return console.error("queryAllFocusable: from is null or undefined"),[];const o=e.getRootNode();return ey(o.querySelectorAll)?[...o.querySelectorAll(`[data-likec4-search-${r}] ${n}`)]:(console.error("queryAllFocusable: root.querySelectorAll is not a function"),[])}function see(e){setTimeout(e,300)}const DWe="likec4-view-btn",PWe=Ge(fe({flexWrap:"nowrap",display:"flex","&[data-disabled] .mantine-ThemeIcon-root":{opacity:.45}}),DWe);fe({marginTop:"1",fontSize:"13px",lineHeight:"1.4",":where(.likec4-view-btn[data-disabled]) &":{opacity:.85}});const cee=()=>y.jsx(hr,{className:_We,children:"Nothing found"}),MWe=S.memo(()=>{const e=S.useRef(null);let r=[...Fo().views()],n=uR();return n&&(n.startsWith("kind:")?r=[]:r=r.filter(o=>n.startsWith("#")?o.tags.some(i=>i.toLocaleLowerCase().includes(n.slice(1))):`${o.id} ${o.title} ${o.description.text}`.toLocaleLowerCase().includes(n))),y.jsxs(Lo,{ref:e,renderRoot:o=>y.jsx(Rr,{layout:!0,...o}),gap:8,"data-likec4-search-views":!0,onKeyDown:o=>{if(o.key==="ArrowLeft"||o.key==="ArrowRight"){const i=o.target.getBoundingClientRect().y,a=lee(e.current,"elements",".likec4-element-button");let l=a.length>1?a.find((s,c,d)=>aee(s)>i||c===d.length-1):null;l??=hf(a),l&&(o.stopPropagation(),l.focus());return}},children:[r.length===0&&y.jsx(cee,{}),r.length>0&&y.jsx(o3,{children:y.jsx(pr,{"data-likec4-view":!0,tabIndex:-1,onFocus:o=>{o.stopPropagation(),h0(e.current)}})}),r.map((o,i)=>y.jsx(Rr,{layoutId:`@view${o.id}`,children:y.jsx(fR,{view:o,search:n,tabIndex:i===0?0:-1})},o.id))]})}),P2=iee();function fR({className:e,view:r,loop:n=!1,search:o,focusOnElement:i,...a}){const l=Md(),s=Mt(),c=r.id,d=E2(),u=c===d,p=()=>{l.send({type:"close"}),see(()=>{if(u&&i){s.focusOnElement(i);return}s.navigateTo(c,void 0,i)})};return y.jsxs(pr,{...a,className:Ge(P2.root,"group",j2,PWe,e),"data-likec4-view":r.id,...u&&!i&&{"data-disabled":!0},onClick:f=>{f.stopPropagation(),p()},onKeyDown:iy({siblingSelector:"[data-likec4-view]",parentSelector:"[data-likec4-search-views]",activateOnFocus:!1,loop:n,orientation:"vertical",onKeyDown:f=>{f.nativeEvent.code==="Space"&&(f.stopPropagation(),p())}}),children:[y.jsx(Ti,{variant:"transparent",className:P2.icon,children:r.isDeploymentView()?y.jsx(aR,{stroke:1.8}):y.jsx(ba,{stroke:1.8})}),y.jsxs(hr,{style:{flexGrow:1},children:[y.jsxs(en,{gap:"xs",wrap:"nowrap",align:"center",children:[y.jsx(tc,{component:"div",highlight:o,className:P2.title,children:r.title||"untitled"}),u&&y.jsx(ec,{size:"xs",fz:9,radius:"sm",children:"current"})]}),y.jsx(tc,{highlight:r.description.nonEmpty?o:"",component:"div",className:P2.description,lineClamp:1,children:r.description.text||"No description"})]})]})}const gg=iee(),NWe=S.memo(()=>{const e=Fo(),r=uR(),n=S.useMemo(()=>{const i=r.split(".");let a;tp(i)||i[0]==="kind:"?a=e.elements():a=Is(e.elements(),d=>r.startsWith("kind:")?d.kind.toLocaleLowerCase().startsWith(r.slice(5)):r.startsWith("#")?d.tags.some(u=>u.toLocaleLowerCase().includes(r.slice(1))):(d.title+" "+d.id+" "+d.summary.text).toLocaleLowerCase().includes(r));const l={},{all:s,roots:c}=Jr([...a],Jc,gw((d,u)=>{const p={label:u.title,value:u.id,element:u,searchTerms:i,children:[]};l[p.value]=p;const f=d.all.findLast(m=>Yn(m.value,p.value));return f?(f.children.push(p),f.children.length>1&&f.children.sort(o0)):d.roots.push(p),d.all.push(p),d},{all:[],roots:[]}));return{all:s,byid:l,roots:c.sort(o0)}},[e,r]),o=dee();return n.all.length===0?y.jsx(cee,{}):y.jsx(IWe,{data:n,handleClick:o})}),BWe=()=>{};function IWe({data:{all:e,byid:r,roots:n},handleClick:o}){const i=_y({multiple:!1});i.setHoveredNode=BWe,S.useEffect(()=>{i.collapseAllNodes();for(const l of e)l.children.length>0&&i.expand(l.value)},[e]);const a=at(l=>{const s=l.target,c=s.getAttribute("data-value"),d=!!c&&r[c];if(d){if(l.key==="ArrowUp"){c===n[0]?.value&&(ka(l),h0(s));return}if(l.key==="ArrowRight"){if(d.children.length>0&&i.expandedState[c]===!1)return;const u=(l.target.querySelector(".mantine-Tree-label")??s).getBoundingClientRect().y,p=lee(s,"views");let f=p.length>1?p.find((m,v,w)=>aee(m)>u||v===w.length-1):null;f??=hf(p),f&&(ka(l),f.focus());return}if(l.key===" "||l.key==="Enter"){ka(l),o(d.element);return}}});return y.jsx(Ff,{"data-likec4-search-elements":!0,allowRangeSelection:!1,clearSelectionOnOutsideClick:!0,selectOnClick:!1,tree:i,data:n,levelOffset:"lg",classNames:{root:EWe,node:Ge(j2,SWe),label:CWe,subtree:$We},onKeyDownCapture:a,renderNode:OWe})}function OWe({node:e,elementProps:r,hasChildren:n,expanded:o}){const{element:i,searchTerms:a}=e,l=Gke({element:{id:i.id,title:i.title,shape:i.shape,icon:i.icon},className:Ge(gg.icon,jWe)}),s=[...i.views()],c=dee(),d=`@tree.${e.value}`;return y.jsxs(Rr,{layoutId:d,...r,children:[y.jsx(lr,{variant:"transparent",size:16,tabIndex:-1,className:Ge(RWe),style:{visibility:n?"visible":"hidden"},children:y.jsx(Dd,{stroke:3.5,style:{transition:"transform 150ms ease",transform:`rotate(${o?"90deg":"0"})`,width:"100%"}})}),y.jsxs(pr,{component:wa,layout:!0,tabIndex:-1,"data-value":i.id,className:Ge(gg.root,"group","likec4-element-button"),...s.length>0&&{onClick:u=>{(!n||o)&&(u.stopPropagation(),c(i))}},children:[l,y.jsxs(Se,{style:{flexGrow:1},children:[y.jsxs(en,{gap:"xs",wrap:"nowrap",align:"center",className:zWe,children:[y.jsx(tc,{component:"div",highlight:a,className:gg.title,children:e.label}),y.jsx(_n,{label:i.id,withinPortal:!1,fz:"xs",disabled:!i.id.includes("."),children:y.jsx(tc,{component:"div",highlight:a,className:Ge(TWe,gg.descriptionColor),children:Jm(i.id)})})]}),y.jsx(tc,{component:"div",highlight:a,className:gg.description,lineClamp:1,children:i.summary.text||"No description"})]}),y.jsx(it,{component:"div",className:Ge(AWe,gg.descriptionColor),fz:"xs",children:s.length===0?"No views":y.jsxs(y.Fragment,{children:[s.length," view",s.length>1?"s":""]})})]})]})}function dee(){const e=Mt(),r=Md();return at(n=>{const o=[...n.views()];if(o.length===0)return;const i=n.id,a=fw(o)?.id;if(!a){r.send({type:"pickview.open",elementFqn:i});return}const l=a===e.currentView.id;r.send({type:"close"}),see(()=>{if(l){e.focusOnElement(i);return}e.navigateTo(a,void 0,i)})})}const LWe=fe({border:"transparent",background:{base:"transparent",_focusWithin:{base:"mantine.colors.gray[4]/55 !important",_dark:"mantine.colors.dark[5]/55 !important"},_groupHover:{base:"mantine.colors.gray[3]/35",_dark:"mantine.colors.dark[5]/35"}}}),FWe=fe({position:"absolute",inset:"0",width:"100%",height:"100%",backgroundColor:"[rgb(34 34 34 / 0.7)]",zIndex:902,backdropFilter:"auto",backdropBlur:"10px",_light:{backgroundColor:"[rgb(255 255 255 / 0.6)]"}}),VWe=fe({position:"absolute",top:"[2rem]",left:"[50%]",width:"100%",maxWidth:"600px",minWidth:"200px",transform:"translateX(-50%)",zIndex:903}),uee=fe({marginTop:"2","& + &":{marginTop:"[32px]"}});fe({height:["100%","100cqh"],"& .mantine-ScrollArea-viewport":{minHeight:"100%","& > div":{minHeight:"100%",height:"100%"}}});function qWe({elementFqn:e}){const r=Md(),n=Fo().element(e),o=[],i=[];for(const l of n.views())l.viewOf===n?o.push(l):i.push(l);const a=()=>{r.send({type:"pickview.close"})};return kf("keydown",l=>{try{l.key==="Escape"&&(l.stopPropagation(),l.preventDefault(),a())}catch(s){console.warn(s)}},{capture:!0}),y.jsxs(y.Fragment,{children:[y.jsx(Rr,{className:FWe,onClick:l=>{l.stopPropagation(),a()}},"pickview-backdrop"),y.jsx(l3,{children:y.jsxs(Rr,{initial:{opacity:0,scale:.95,originY:0,translateX:"-50%",translateY:-20},animate:{opacity:1,scale:1,translateY:0},exit:{opacity:0,scale:.98,translateY:-20,transition:{duration:.1}},className:VWe,"data-likec4-search-views":!0,children:[y.jsxs(en,{px:"sm",py:"md",justify:"space-between",children:[y.jsx(pp,{order:2,lh:1,children:"Select view"}),y.jsx(lr,{size:"md",variant:"default",onClick:l=>{l.stopPropagation(),a()},children:y.jsx(fp,{})})]}),y.jsxs(oi,{mah:"calc(100vh - 110px)",type:"never",children:[o.length>0&&y.jsxs(Lo,{gap:"sm",px:"sm",className:uee,children:[y.jsx(pp,{order:6,c:"dimmed",children:"scoped views of the element"}),o.map((l,s)=>y.jsx(fR,{view:l,search:"",loop:!0,focusOnElement:e,mod:{autofocus:s===0}},l.id))]}),i.length>0&&y.jsxs(Lo,{gap:"sm",px:"sm",className:uee,children:[y.jsx(pp,{order:6,c:"dimmed",children:"views including this element"}),i.map((l,s)=>y.jsx(fR,{view:l,search:"",loop:!0,focusOnElement:e,mod:{autofocus:s===0&&o.length===0}},l.id))]})]})]},"pickview")})]})}function HWe(){const e=S.useRef(null);let r=Fo().tagsSortedByUsage,n=mWe(),o=uR(),i=r.length,a=!1;if(o.startsWith("#")){const l=o.slice(1);r=r.filter(({tag:s})=>s.toLocaleLowerCase().includes(l)),a=r.length!==i}return r.length===0?null:(r=r.slice(0,15),y.jsxs(Or,{ref:e,css:{gap:"md",paddingLeft:"[48px]",flexWrap:"nowrap"},children:[y.jsx(Or,{css:{gap:"1.5",flexWrap:"wrap",opacity:a?1:.3,grayscale:a?0:.9,filter:"auto",transition:"fast",_groupHover:{opacity:1,grayscale:0},_groupFocusWithin:{opacity:1,grayscale:0}},children:r.map(({tag:l})=>y.jsx(u2,{tag:l,className:fe({userSelect:"none",cursor:"pointer"}),onClick:s=>{s.stopPropagation(),n(`#${l}`),setTimeout(()=>{D2(e.current)},350)}},l))}),a&&y.jsx(Vn,{size:"compact-xs",variant:"light",onClick:l=>{l.stopPropagation(),n(""),h0(e.current)},rightSection:y.jsx(fp,{size:14}),children:"Clear"})]}))}const UWe=[["path",{d:"M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0",key:"svg-0"}],["path",{d:"M21 21l-6 -6",key:"svg-1"}]],gR=wt("outline","search","Search",UWe);function pee(e){return e.match(/^(k|ki|kin|kind|kind:)$/)!=null}const WWe=["#","kind:"],GWe=S.memo(()=>{const e=Md(),r=Fo(),n=S.useRef(null),{ref:o,focused:i}=kze(),[a,l]=fWe(),s=IW({scrollBehavior:"smooth",loop:!1});kf("keydown",u=>{try{!i&&(u.key==="Backspace"||u.key.startsWith("Arrow")||u.key.match(new RegExp("^\\p{L}$","u")))&&h0(n.current)}catch(p){console.warn(p)}});let c=[],d=!1;switch(!0){case a.startsWith("#"):{const u=a.toLocaleLowerCase().slice(1),p=r.tags.filter(f=>f.toLocaleLowerCase().includes(u));p.length===0?(d=!1,c=[y.jsx(fy,{children:"No tags found"},"empty-tags")]):(d=r.tags.some(f=>f.toLocaleLowerCase()===u),c=p.map(f=>y.jsxs(gy,{value:`#${f}`,children:[y.jsx(it,{component:"span",opacity:.5,mr:1,fz:"sm",children:"#"}),f]},f)));break}case a.startsWith("kind:"):case pee(a):{const u=a.length>5?a.slice(5).toLocaleLowerCase():"";let p=l9(r.specification.elements);u&&(p=p.filter(f=>f.toLocaleLowerCase().includes(u))),p.length===0?(d=!1,c=[y.jsx(fy,{children:"No kinds found"},"empty-kinds")]):(d=p.some(f=>f.toLocaleLowerCase()===u),c=p.map(f=>y.jsxs(gy,{value:`kind:${f}`,children:[y.jsx(it,{component:"span",opacity:.5,mr:1,fz:"sm",children:"kind:"}),f]},f)));break}}return y.jsxs(eo,{onOptionSubmit:u=>{l(u),s.resetSelectedOption(),WWe.includes(u)||(s.closeDropdown(),setTimeout(()=>{D2(n.current)},350))},width:"max-content",position:"bottom-start",shadow:"md",offset:{mainAxis:4,crossAxis:50},store:s,withinPortal:!1,children:[y.jsx(kS,{children:y.jsx(zi,{ref:$r(n,o),placeholder:"Search by title, description or start with # or kind:",autoFocus:!0,"data-autofocus":!0,"data-likec4-search-input":!0,tabIndex:0,classNames:{input:LWe},size:"lg",value:a,leftSection:y.jsx(gR,{style:{width:$e(20)},stroke:2}),rightSection:y.jsx(zi.ClearButton,{onClick:u=>{u.stopPropagation();const p=e.getSnapshot().context.openedWithSearch;a===""||a===p?e.send({type:"close"}):l("")}}),rightSectionPointerEvents:"auto",onChange:u=>{l(u.currentTarget.value),s.openDropdown(),s.updateSelectedOptionIndex()},onClick:()=>s.openDropdown(),onFocus:()=>s.openDropdown(),onBlur:()=>s.closeDropdown(),onKeyDownCapture:u=>{if(u.key==="Tab"){switch(!0){case s.getSelectedOptionIndex()>=0:return s.clickSelectedOption(),ka(u);case c.length===1:return s.selectFirstOption()&&s.clickSelectedOption(),ka(u);case pee(a):return l("kind:"),ka(u)}return}if(u.key==="Backspace"&&s.dropdownOpened){if(a==="kind:")return l(""),s.resetSelectedOption(),ka(u);if(a.startsWith("kind:")&&d)return l("kind:"),s.resetSelectedOption(),ka(u);if(a.startsWith("#")&&d)return l("#"),s.resetSelectedOption(),ka(u)}if(u.key==="Escape"&&s.dropdownOpened&&c.length>0){ka(u),s.closeDropdown();return}if(u.key==="ArrowUp"&&s.dropdownOpened&&a===""&&s.getSelectedOptionIndex()===0){s.closeDropdown(),ka(u);return}if(u.key==="ArrowDown"&&(!s.dropdownOpened||c.length===0||d||a===""&&s.getSelectedOptionIndex()===c.length-1)){s.closeDropdown(),ka(u),D2(n.current);return}}})}),y.jsx(g3,{hidden:c.length===0,style:{minWidth:300},children:y.jsx(m3,{children:y.jsx(oi,{mah:"min(322px, calc(100cqh - 50px))",type:"scroll",children:c})})})]})}),YWe=fe({backgroundColor:"[rgb(34 34 34 / var(--_opacity, 95%))]",_light:{backgroundColor:"[rgb(250 250 250 / var(--_opacity, 95%))]"},backdropFilter:"auto",backdropBlur:"var(--_blur, 10px)"}),XWe=fe({width:"100%",height:"100%",maxHeight:"100vh",overflow:"hidden",display:"flex",flexDirection:"column",justifyContent:"stretch",gap:"sm",paddingTop:"[20px]",paddingLeft:"md",paddingRight:"md",paddingBottom:"sm",background:"[transparent]"}),KWe=e=>!e.matches("inactive");function ZWe({searchActorRef:e}){const r=pn(e,KWe),n=()=>{e.send({type:"open"})},o=at(()=>{e.send({type:"close"})});return bze([["mod+k",n,{preventDefault:!0}],["mod+f",n,{preventDefault:!0}]]),y.jsx(pWe,{value:e,children:y.jsx(gp.Overlays,{children:y.jsx(HG,{FallbackComponent:UG,onReset:o,children:y.jsx(Cn,{children:r&&y.jsx(p0,{fullscreen:!0,withBackdrop:!1,backdrop:{opacity:.9},classes:{dialog:YWe,body:XWe},openDelay:0,onClose:o,"data-likec4-search":"true",children:y.jsx(QWe,{searchActorRef:e})})})})})})}const hee=fe({height:["100%","100cqh"],"& .mantine-ScrollArea-viewport":{minHeight:"100%","& > div":{minHeight:"100%",height:"100%"}}}),QWe=({searchActorRef:e})=>{const r=S.useRef(null),n=vWe();return wx(()=>{Zn(e.getSnapshot().context.openedWithSearch)&&D2(r.current)},150),y.jsxs(hr,{ref:r,display:"contents",children:[y.jsx(en,{className:"group",wrap:"nowrap",onClick:o=>{o.stopPropagation(),h0(r.current)},children:y.jsxs(hp,{flex:1,px:"sm",children:[y.jsx(GWe,{}),y.jsx(HWe,{})]})}),y.jsxs(yy,{children:[y.jsx(cp,{span:6,children:y.jsx(pp,{component:"div",order:6,c:"dimmed",pl:"sm",children:"Elements"})}),y.jsx(cp,{span:6,children:y.jsx(pp,{component:"div",order:6,c:"dimmed",pl:"sm",children:"Views"})})]}),y.jsxs(yy,{className:fe({containerName:"likec4-search-elements",containerType:"size",overflow:"hidden",flexGrow:1}),children:[y.jsx(cp,{span:6,children:y.jsx(es,{type:"scroll",className:hee,pr:"xs",scrollbars:"y",children:y.jsx(Cn,{children:y.jsx(lg,{id:"likec4-search-elements",children:y.jsx(NWe,{})})})})}),y.jsx(cp,{span:6,children:y.jsx(es,{type:"scroll",className:hee,pr:"xs",scrollbars:"y",children:y.jsx(Cn,{children:y.jsx(lg,{id:"likec4-search-views",children:y.jsx(MWe,{})})})})})]}),n&&y.jsx(qWe,{elementFqn:n})]})};function JWe({children:e}){const r=S.useContext(WS);if(!r)throw new Error("PortalToContainer must be used within RootContainer");return y.jsx(py,{target:r.ref.current??`#${r.id}`,children:e})}const fee={onNavigateTo:null,onNodeClick:null,onNodeContextMenu:null,onCanvasContextMenu:null,onEdgeClick:null,onEdgeContextMenu:null,onCanvasClick:null,onCanvasDblClick:null,onBurgerMenuClick:null,onOpenSource:null,onInitialized:null,onLayoutTypeChange:null},mR=l9(fee),gee=S.createContext({...hw(mR,e=>[e,null]),handlersRef:{current:fee}});function eGe({handlers:e,children:r}){const n=Zh(e),o=mR.map(a=>ey(e[a])),i=S.useMemo(()=>({...hw(mR,a=>n.current[a]?[a,(...l)=>n.current[a]?.(...l)]:[a,null]),handlersRef:n}),[n,...o]);return y.jsx(gee.Provider,{value:i,children:r})}function mg(){return S.useContext(gee)}const mee=(e,r)=>e.find(o=>"modelFqn"in o.data&&o.data.modelFqn===r)||null;function zr(e){return{get overlaysActorRef(){return e.get("overlays")??null},get diagramActorRef(){return gt(e.get("diagram"),"Diagram actor not found")},get searchActorRef(){return e.get("search")??null},get editorActorRef(){return e.get("editor")??null}}}zr.editorActor=({system:e})=>e.get("editor"),zr.overlaysActor=({system:e})=>e.get("overlays"),zr.diagramActor=({system:e})=>e.get("diagram"),zr.searchActor=({system:e})=>e.get("search");function yg(e,r){return e.view.nodes.find(n=>n.id===r)??null}function yR(e,r){return e.view.edges.find(n=>n.id===r)??null}function tGe(e){const r=new Map,n=e.context.xynodes.reduce((o,i)=>{let a=i.position;if(i.parentId){const c=r.get(i.parentId)??{x:0,y:0};a={x:a.x+c.x,y:a.y+c.y}}if(r.set(i.id,a),i.hidden||i.data.dimmed)return o;const l=i.measured?.width??i.width??i.initialWidth,s=i.measured?.height??i.height??i.initialHeight;return o.minX=Math.min(o.minX,a.x),o.minY=Math.min(o.minY,a.y),o.maxX=Math.max(o.maxX,a.x+l),o.maxY=Math.max(o.maxY,a.y+s),o},{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0});return n.minX===1/0?{bounds:e.context.view.bounds}:{duration:350,bounds:{x:n.minX-10,y:n.minY-10,width:n.maxX-n.minX+20,height:n.maxY-n.minY+20}}}const rGe=32;function nGe(e){const r=gt(e.context.activeWalkthrough),n=gt(e.context.xyedges.find(c=>c.id===r.stepId)),o=e.context.xystore.getState(),i=gt(o.nodeLookup.get(n.source)),a=gt(o.nodeLookup.get(n.target)),l=EF([i,a],o);let s;if(r.parallelPrefix){const c=e.context.xynodes.find(d=>d.type==="seq-parallel"&&d.data.parallelPrefix===r.parallelPrefix);c&&(s={x:c.position.x,y:c.position.y,..._o(c)})}return s??=oGe(n,o),s?s=ko.merge(s,l):s=l,{duration:350,bounds:ko.expand(s,rGe)}}function oGe(e,r){const n=r.nodeLookup.get(e.source),o=r.nodeLookup.get(e.target);if(!n||!o)return null;const i=WF({id:e.id,sourceNode:n,targetNode:o,sourceHandle:e.sourceHandle||null,targetHandle:e.targetHandle||null,connectionMode:r.connectionMode});return i?ko.fromPoints([[i.sourceX,i.sourceY],[i.targetX,i.targetY]]):null}function vR(e){switch(e.type){case"element":case"compound-element":case"seq-actor":return e.data.modelFqn;case"deployment":case"compound-deployment":return e.data.modelFqn??e.data.deploymentFqn;case"seq-parallel":case"view-group":return null;default:Qo(e)}}function iGe(e,r){const n=e.lastOnNavigate?.fromNode,o=n&&e.xynodes.find(l=>l.id===n),i=o&&vR(o),a=i&&r.xynodes.find(l=>vR(l)===i);return{fromNode:o,toNode:a}}function aGe(e,r){let{width:n,height:o,transform:i}=e.xystore.getState();const a=Math.max(i[2],1);return Ws(r,n,o,xa,a,e.fitViewPadding)}const lGe=ns({delays:{"open timeout":({context:e})=>e.openTimeout,"close timeout":600,"long idle":1500},actions:{"update edgeId":Bt(({context:e,event:r})=>(ht(r,["xyedge.select","xyedge.mouseEnter"]),{edgeId:r.edgeId,edgeSelected:e.edgeSelected||r.type==="xyedge.select"})),"increase open timeout":Bt(()=>({openTimeout:800})),"decrease open timeout":Bt(()=>({openTimeout:300})),"reset edgeId":Bt({edgeId:null,edgeSelected:!1})},guards:{"edge was selected":({context:e})=>e.edgeSelected,"edge was hovered":({context:e})=>!e.edgeSelected}}).createMachine({id:"breadcrumbs",context:()=>({edgeId:null,edgeSelected:!1,openTimeout:800}),initial:"idle",on:{close:{target:"#idle",actions:["reset edgeId","increase open timeout"]}},states:{idle:{id:"idle",on:{"xyedge.mouseEnter":{target:"opening",actions:"update edgeId"},"xyedge.select":{target:"active",actions:"update edgeId"}},after:{"long idle":{actions:"increase open timeout"}}},opening:{on:{"xyedge.mouseLeave":{target:"idle"},"xyedge.select":{target:"active",actions:"update edgeId"}},after:{"open timeout":{actions:"decrease open timeout",target:"active"}}},active:{tags:["opened"],initial:"opened",exit:"reset edgeId",on:{"xyedge.unselect":{target:"idle",actions:"increase open timeout"},"xyedge.select":{actions:"update edgeId"}},states:{opened:{on:{"dropdown.mouseEnter":{target:"hovered"},"xyedge.mouseLeave":{guard:"edge was hovered",target:"closing"}}},hovered:{on:{"dropdown.mouseLeave":[{guard:"edge was selected",target:"opened"},{target:"closing"}]}},closing:{on:{"xyedge.mouseEnter":{guard:"edge was hovered",target:"opened",actions:"update edgeId"},"xyedge.select":{target:"opened",actions:"update edgeId"},"dropdown.mouseEnter":{target:"hovered"}},after:{"close timeout":{target:"#idle"}}}}}}}),sGe=lGe,yee=fe({display:"block",fontSize:"xxs",fontWeight:500,whiteSpace:"nowrap",paddingX:"1",paddingY:"0.5",borderRadius:"[2px]",background:{_light:"var(--likec4-palette-fill)/90",_dark:"var(--likec4-palette-fill)/60"},lineHeight:"1",color:{_light:"var(--likec4-palette-hiContrast)",_dark:"var(--likec4-palette-loContrast)"}}),cGe=fe({whiteSpaceCollapse:"preserve-breaks",fontSize:"sm",lineHeight:"sm",userSelect:"all"});function dGe(e){let r=null;for(const n of e.xyedges)if(n.selected){if(r){r=null;break}r=n.data.id}return{viewId:e.view.id,selected:r}}const uGe=S.memo(()=>{const e=Fo(),r=vE(sGe),n=Mt(),{viewId:o,selected:i}=pa(dGe),a=pn(r,m=>m.hasTag("opened")?m.context.edgeId:null);ji("navigateTo",()=>{r.send({type:"close"})}),ji("edgeMouseEnter",({edge:m})=>{r.send({type:"xyedge.mouseEnter",edgeId:m.data.id})}),ji("edgeMouseLeave",()=>{r.send({type:"xyedge.mouseLeave"})}),ji("walkthroughStarted",()=>{r.send({type:"close"})}),S.useEffect(()=>{i?r.send({type:"xyedge.select",edgeId:i}):r.send({type:"xyedge.unselect"})},[i]);const l=S.useCallback(m=>{if(!a)return;r.send({type:"dropdown.mouseEnter"});const v=n.findEdge(a);v&&!v.data.hovered&&n.send({type:"xyflow.edgeMouseEnter",edge:v,event:m})},[r,n,a]),s=S.useCallback(m=>{if(!a)return;r.send({type:"dropdown.mouseLeave"});const v=n.findEdge(a);v?.data.hovered&&n.send({type:"xyflow.edgeMouseLeave",edge:v,event:m})},[r,n,a]),{diagramEdge:c,sourceNode:d,targetNode:u}=pa(m=>{const v=a?yR(m,a):null,w=v?yg(m,v.source):null,x=v?yg(m,v.target):null;return{diagramEdge:v,sourceNode:w,targetNode:x}},Ir,[a]);if(!c||!d||!u||tp(c.relations))return null;const[p,f]=Jr(c.relations,un(m=>{try{return e.relationship(m)}catch(v){return console.error(`View is cached and likec4model missing relationship ${m} from ${d.id} -> ${u.id}`,v),null}}),ep(Zn),qq(m=>m.source.id===d.id&&m.target.id===u.id));return p.length===0&&f.length===0?(console.warn("No relationships found diagram edge",{diagramEdge:c,sourceNode:d,targetNode:u}),null):y.jsx(JWe,{children:y.jsx(fGe,{viewId:o,direct:p,nested:f,diagramEdge:c,sourceNode:d,targetNode:u,onMouseEnter:l,onMouseLeave:s})})}),pGe=(e,r)=>r?.querySelector(`.likec4-edge-label[data-edge-id="${e}"]`)??r?.querySelector(`.likec4-edge-middle-point[data-edge-id="${e}"]`)??null,hGe=8,fGe=({viewId:e,diagramEdge:r,direct:n,nested:o,sourceNode:i,targetNode:a,onMouseEnter:l,onMouseLeave:s})=>{const c=S.useRef(null),{enableNavigateTo:d,enableVscode:u,enableCompareWithLatest:p}=sr(),{onOpenSource:f}=mg(),m=dMe(),[v,w]=S.useState(null);S.useLayoutEffect(()=>{w(pGe(r.id,m.current))},[r]),S.useEffect(()=>{const C=v,_=c.current;if(!C||!_)return;let $=!1;const R=Kw(C,_,()=>{$U(C,_,{placement:"bottom-start",middleware:[_U(4),Zje({crossAxis:!0,allowedPlacements:["bottom-start","bottom-end","left-start","top-start","top-end","right-start","right-end","left-end"]}),SU({apply({availableHeight:T,availableWidth:A,elements:z}){$||Object.assign(z.floating.style,{maxWidth:`${ta(Pd(A),{min:220,max:400})}px`,maxHeight:`${ta(Pd(T),{min:100,max:500})}px`})}}),EU({padding:hGe*2})]}).then(({x:T,y:A,middlewareData:z})=>{$||(_.style.transform=`translate(${Pd(T)}px, ${Pd(A)}px)`,_.style.visibility=z.hide?.referenceHidden?"hidden":"visible")})},{ancestorResize:!1,animationFrame:!0});return()=>{$=!0,R()}},[v]);const x=Mt(),k=S.useCallback((C,_)=>y.jsxs(S.Fragment,{children:[_>0&&y.jsx(sp,{}),y.jsx(mGe,{viewId:e,relationship:C,sourceNode:i,targetNode:a,onNavigateTo:d?$=>{x.navigateTo($)}:void 0,...f&&u&&{onOpenSource:()=>f({relation:C.id})}})]},C.id),[e,i,a,x,d,f,u]);return y.jsx(oi,{ref:c,onMouseEnter:l,onMouseLeave:s,type:"auto",scrollbars:"y",scrollbarSize:6,styles:{viewport:{overscrollBehavior:"contain",minWidth:200,minHeight:40}},className:Ge(fe({layerStyle:"likec4.dropdown",p:"0",pointerEvents:{base:"all",_whenPanning:"none"},position:"absolute",top:"0",left:"0",width:"max-content",cursor:"default"})),children:y.jsxs(hp,{css:{gap:"3",padding:"4",paddingTop:"2"},children:[p&&y.jsx(gGe,{diagramEdge:r}),y.jsx(Vn,{variant:"default",color:"gray",size:"compact-xs",style:{alignSelf:"flex-start",fontWeight:500,"--button-fz":"var(--font-sizes-xxs)"},onClick:C=>{C.stopPropagation(),x.openRelationshipDetails(r.id)},children:"browse relationships"}),n.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(vg,{children:"DIRECT RELATIONSHIPS"}),n.map(k)]}),o.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(vg,{css:{mt:n.length>0?"2":"0"},children:"RESOLVED FROM NESTED"}),o.map(k)]})]})})},gGe=({diagramEdge:e})=>{const r=e.drifts;return!r||r.length===0?null:y.jsx(xy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"Changes:",children:r.map(n=>y.jsxs(it,{mt:2,size:"sm",lh:"xs",children:["- ",n]},n))})},mGe=S.forwardRef(({viewId:e,relationship:r,sourceNode:n,targetNode:o,onNavigateTo:i,onOpenSource:a},l)=>{const s=vee(r,"source",n),c=vee(r,"target",o),d=i&&r.navigateTo?.id!==e?r.navigateTo?.id:void 0,u=r.links,p=r.hasMetadata()?uw(r.getMetadata()).sort(([m],[v])=>m.localeCompare(v)):null,f=p&&y.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[y.jsx("div",{style:{fontWeight:600,fontSize:"10px",color:"#868e96",marginBottom:"2px",letterSpacing:"0.5px",textTransform:"uppercase"},children:"Metadata"}),y.jsx("div",{style:{borderTop:"1px solid rgba(0, 0, 0, 0.1)",paddingTop:"6px",display:"flex",flexDirection:"column",gap:"6px"},children:p.map(([m,v])=>{const w=Array.isArray(v)?v.join(", "):v;return y.jsxs("div",{style:{display:"flex",gap:"12px",fontSize:"12px",lineHeight:"1.4"},children:[y.jsxs("span",{style:{fontWeight:600,minWidth:"110px",color:"#495057"},children:[m,":"]}),y.jsx("span",{style:{color:"#212529",wordBreak:"break-word",flex:1},children:w})]},m)})})]});return y.jsxs(hp,{ref:l,className:qG({block:"2",inline:"2",paddingY:"2.5",paddingX:"2",gap:"1",rounded:"sm",backgroundColor:{_hover:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]/70"}}}),children:[y.jsx(Or,{gap:"0.5",children:y.jsxs(dp,{openDelay:200,children:[y.jsx(f0,{label:s.full,offset:2,position:"top-start",children:y.jsx(it,{component:"div","data-likec4-color":n.color,className:yee,children:s.short})}),y.jsx(hg,{stroke:2.5,size:"11px",opacity:.65}),y.jsx(f0,{label:c.full,offset:2,position:"top-start",children:y.jsx(it,{component:"div","data-likec4-color":o.color,className:yee,children:c.short})}),d&&y.jsx(f0,{label:"Open dynamic view",children:y.jsx(lr,{size:"sm",radius:"sm",variant:"default",onClick:m=>{m.stopPropagation(),i?.(d)},style:{alignSelf:"flex-end"},role:"button",children:y.jsx(ba,{size:"80%",stroke:2})})}),a&&y.jsx(f0,{label:"Open source",children:y.jsx(lr,{size:"sm",radius:"sm",variant:"default",onClick:m=>{m.stopPropagation(),a()},role:"button",children:y.jsx(dg,{size:"80%",stroke:2})})})]})}),y.jsxs(Or,{gap:"xs",alignItems:"center",children:[y.jsx(hr,{className:cGe,children:r.title||"untitled"}),f&&y.jsx(f0,{label:f,w:350,position:"right",offset:10,openDelay:300,withArrow:!0,bg:"white",c:"dark",withinPortal:!0,styles:{tooltip:{boxShadow:"0 4px 12px rgba(0, 0, 0, 0.15)",border:"1px solid #dee2e6"}},children:y.jsx(hr,{display:"inline-flex",children:y.jsx(r0,{size:14,opacity:.5,style:{flexShrink:0,cursor:"help"}})})})]}),r.kind&&y.jsxs(Or,{gap:"2",children:[y.jsx(vg,{children:"kind"}),y.jsx(it,{size:"xs",className:fe({userSelect:"all"}),children:r.kind})]}),r.technology&&y.jsxs(Or,{gap:"2",children:[y.jsx(vg,{children:"technology"}),y.jsx(it,{size:"xs",className:fe({userSelect:"all"}),children:r.technology})]}),r.summary.nonEmpty&&y.jsxs(y.Fragment,{children:[y.jsx(vg,{children:"description"}),y.jsx(hr,{css:{paddingLeft:"2.5",py:"1.5",borderLeft:"2px dotted",borderLeftColor:{base:"mantine.colors.gray[3]",_dark:"mantine.colors.dark[4]"}},children:y.jsx(zp,{value:r.summary,fontSize:"sm",textScale:.875})})]}),u.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(vg,{children:"links"}),y.jsx(Or,{gap:"1",flexWrap:"wrap",children:u.map(m=>y.jsx(o$,{size:"sm",value:m},m.url))})]})]})}),vg=Ed("div",{base:{display:"block",fontSize:"xxs",fontWeight:500,userSelect:"none",lineHeight:"sm",color:"mantine.colors.dimmed"}}),f0=_n.withProps({color:"dark",fz:"xs",label:"",children:null,offset:8,withinPortal:!1});function vee(e,r,n){const o=e.isDeploymentRelation()?n.id:n.modelRef||"",i=e[r].id,a=Jm(o)+i.slice(o.length);return{full:i,short:a}}function bg(){const e=uMe();return S.useMemo(()=>e?{portalProps:{target:e},withinPortal:!0}:{withinPortal:!1},[e])}const yGe=ns({delays:{"open timeout":500,"close timeout":350},actions:{"update activatedBy":Bt({activatedBy:({context:e,event:r})=>{switch(!0){case r.type.includes("click"):return"click";case r.type.includes("mouseEnter"):return"hover";default:return e.activatedBy}}}),"keep dropdown open":Bt({activatedBy:"click"}),"update selected folder":Bt(({event:e})=>e.type==="breadcrumbs.click.root"?{selectedFolder:""}:(ht(e,["breadcrumbs.click.folder","select.folder"]),{selectedFolder:e.folderPath})),"reset selected folder":Bt({selectedFolder:({context:e})=>e.viewModel?.folder.path??""}),"update inputs":Bt(({context:e,event:r})=>{ht(r,"update.inputs");const n=r.inputs.viewModel?.id!==e.viewModel?.id;let o=e.selectedFolder;return r.inputs.viewModel?.folder.path.startsWith(o)||(o=r.inputs.viewModel?.folder.path??""),{view:r.inputs.view,viewModel:r.inputs.viewModel,selectedFolder:o,activatedBy:n?"hover":e.activatedBy}}),"reset search query":Bt({searchQuery:""}),"update search query":Bt(({event:e})=>(ht(e,"searchQuery.change"),{searchQuery:e.value??""})),"emit navigateTo":gE(({event:e})=>(ht(e,"select.view"),{type:"navigateTo",viewId:e.viewId}))},guards:{"was opened on hover":({context:e})=>e.activatedBy==="hover","has search query":({context:e})=>!tp(e.searchQuery),"search query is empty":({context:e})=>tp(e.searchQuery)}}).createMachine({id:"breadcrumbs",context:({input:e})=>({...e,breadcrumbs:[],activatedBy:"hover",selectedFolder:"",searchQuery:"",folderColumns:[]}),initial:"idle",entry:["update activatedBy","reset selected folder"],on:{"update.inputs":{actions:"update inputs"},"searchQuery.change":{actions:["update search query",ai({type:"searchQuery.changed"})]}},states:{idle:{id:"idle",on:{"breadcrumbs.mouseEnter.*":{target:"pending",actions:"update activatedBy"},"breadcrumbs.click.*":{target:"active",actions:"update activatedBy"}}},pending:{on:{"breadcrumbs.mouseEnter.*":{actions:"update activatedBy"},"breadcrumbs.mouseLeave.*":{target:"idle"},"breadcrumbs.click.*":{target:"active",actions:"update activatedBy"}},after:{"open timeout":{target:"active"}}},active:{tags:["active"],initial:"decide",on:{"dropdown.dismiss":{target:"#idle"},"breadcrumbs.mouseLeave":{guard:"was opened on hover",target:".closing"},"dropdown.mouseLeave":{guard:"was opened on hover",target:".closing"},"searchQuery.changed":{target:".decide"}},states:{decide:{always:[{guard:"has search query",target:"search"},{target:"opened"}]},opened:{on:{"searchQuery.changed":{guard:"has search query",actions:"keep dropdown open",target:"search"},"breadcrumbs.click.viewtitle":{actions:"reset selected folder"},"breadcrumbs.click.*":{actions:"update selected folder"},"select.folder":{actions:["keep dropdown open","update selected folder"]},"select.view":{actions:["emit navigateTo"]}}},search:{on:{"breadcrumbs.click.viewtitle":{actions:["reset search query","reset selected folder"],target:"opened"},"breadcrumbs.click.*":{actions:["reset search query","update selected folder"],target:"opened"},"select.view":{actions:["emit navigateTo"]}}},closing:{on:{"breadcrumbs.mouseEnter.*":{target:"decide"},"dropdown.mouseEnter":{target:"decide"}},after:{"close timeout":{target:"#idle"}}}}}}}),vGe=yGe,bR=S.createContext(null);bR.displayName="NavigationPanelActorSafeContext";const bGe=bR.Provider,xR=()=>{const e=S.useContext(bR);if(e===null)throw new Error("NavigationPanelActorRef is not found in the context");return e};function wR(e,r=Ir){const n=xR();return pn(n,e,r)}function xGe(e,r=Ir){return wR(n=>e(n.context),r)}function g0(){const e=xR();return S.useMemo(()=>({actorRef:e,send:r=>e.send(r),selectFolder:r=>e.send({type:"select.folder",folderPath:r}),selectView:r=>e.send({type:"select.view",viewId:r}),isOpened:()=>e.getSnapshot().hasTag("active"),clearSearch:()=>e.send({type:"searchQuery.change",value:""}),closeDropdown:()=>e.send({type:"dropdown.dismiss"})}),[e])}const bee=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,withinPortal:!1}),xee=()=>y.jsx(Ti,{component:Rr,variant:"transparent",size:16,className:fe({display:{base:"none","@/md":"flex"},color:{base:"mantine.colors.gray[5]",_dark:"mantine.colors.dark[3]"}}),children:y.jsx(Dd,{})});y3.withProps({separator:y.jsx(xee,{}),separatorMargin:4});const cc=S.forwardRef(({variant:e="default",className:r,disabled:n=!1,type:o,...i},a)=>y.jsx(lr,{size:"md",variant:"transparent",radius:"sm",component:wa,...!n&&{whileHover:{scale:1.085},whileTap:{scale:1,translateY:1}},disabled:n,...i,className:Ge(r,eQ({variant:e,type:o})),ref:a})),M2=T1({base:{fontSize:"sm",fontWeight:"500",transition:"fast",color:{base:"likec4.panel.action",_hover:"likec4.panel.action.hover"}},variants:{truncate:{true:{truncate:!0}},dimmed:{true:{color:{base:"likec4.panel.text.dimmed",_hover:"likec4.panel.action"}}}}}),wGe=S.forwardRef((e,r)=>y.jsxs("svg",{ref:r,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 222 56",...e,children:[y.jsx("path",{fill:"#5E98AF",d:"M33.95 33.78V0H2.37A2.37 2.37 0 0 0 0 2.35V33.9h33.95v-.12ZM38.57 33.78H55.6v-14.6c0-1.3-1.06-2.35-2.36-2.35H38.57v16.95ZM33.95 38.37H17.04v14.6c0 1.29 1.06 2.35 2.36 2.35h14.67V38.37h-.12ZM38.57 38.37v16.95h14.67c1.3 0 2.36-1.06 2.36-2.36v-14.6H38.57Z"}),y.jsx("path",{className:fe({fill:"[#FCFBF7]",_light:{fill:"[#222221]"}}),d:"M71.61 12.08c-.06 3.61.3 29.95.23 31.87 0 1.8 0 3.6.06 5.41 0 .3.18.58.47.58 4.1.18 8.13-.17 12.22-.11 1.34.05 2.69 0 3.97 0 1.29-.06 1.4-.59 1.35-1.63-.06-1.63-.06-3.08-.06-4.65-.06-.82-.53-1.11-1.23-1.11-2.4.06-4.8-.06-7.19.06-.4.06-.82.06-1.23.06-.7-.06-.87-.24-.93-1v-.86c-.18-4.83.17-9.83.17-14.66-.06-4.07 0-7.73-.06-11.34 0-1.57 0-3.14-.05-4.65-.06-.93 0-1.92-.24-2.85-.11-.35-.29-.81-.7-.81h-5.5c-.93 0-1.22.64-1.28 1.57v4.12ZM103.81 35c-.17-6.63-.1-13.67-.05-20.24 0-2.04-.12-4.25-.12-6.28 0-2.21-.87-2.1-2.04-2.15-1.7-.06-2.46-.06-4.15-.06-1.11-.06-1.58.23-1.58 1.34 0 5.7-.18 21.8-.12 24.13.06 2.33.3 12.91.18 15.24-.06.81 0 1.62.06 2.44.05.29.23.58.7.58 1.93-.12 3.74-.12 5.67-.17.7-.06 1.28-.24 1.58-1 .05-.4-.12-11.04-.12-13.83Zm13.92 4.47c0-2.03-.3-7.56-.23-8.72 0-.17.11-.4.17-.4.12 0 .35.11.41.17 1.87 2.44 10.64 19.36 11.7 19.42.28.06.58.06.87.06 1.99-.12 3.74 0 5.73 0 2.04 0 .7-1.98.35-2.5-.53-.76-7.48-13.14-7.9-13.9-1.16-1.98-2.16-4.13-3.32-6.05-.12-.23-.24-.58-.18-.81.12-.7.3-1.34.59-1.98a93.18 93.18 0 0 1 4.55-8.14c1.88-2.97 2.93-4.83 4.45-7.5.35-.64.58-1.34.82-2.1.05-.29-.18-.58-.53-.58-1.11-.05-5.15 0-6.43 0-.59 0-1.17.12-1.46.64-.76 1.46-8.6 15.7-9.35 16.98-.06.12-.24.18-.41.18 0 0-.12-.18-.12-.3-.06-3.25.53-13.9.4-16.04-.05-1.28-.28-1.4-1.57-1.46-1.4-.05-3.33-.05-4.73-.05-1.3 0-1.4.7-1.58 1.62-.06.18-.06 5.64-.06 8.09 0 3.54-.3 25.76.11 32.8 0 .7.18 1.1.77 1.1 1.57-.12 3.91 0 5.49 0 1.11 0 1.29-.12 1.29-1.98 0-2.5.23-4.77.23-7.85 0-.23-.06-.46-.06-.7Zm25.66-1.4h-.06c0 1.46-.05 2.97 0 4.49.06 1.86.18 3.72.3 5.58 0 .64.17.81.76.93 1.22.29 2.4.35 3.62.35 3.16-.12 6.31.11 9.47 0 1.29-.06 1.87.06 3.16-.18 1.17-.23 1.58-.87 1.58-2.61-.12-1.1-.06-1.57-.06-2.91 0-1.92-1.35-2.56-2.52-2.5-.81.06-4.73-.06-6.31-.06-2.63.06-2.22.4-2.22-2.33 0-2.2.06-5.05.06-7.32 0-1.22.11-1.63 1.28-1.63h7.31c1.17.17 1.99-.64 1.99-1.86 0-1.22.12-1.28.12-2.5l-.18-1.75c-.12-.99-.47-1.33-1.46-1.33-.64 0-1.29.05-1.93.11-2.52.18-3.68-.17-6.14 0-.82 0-.93-.11-1-.87-.23-2.27 0-4.77.24-7.04.06-.93.3-1.1 1.17-1.16l8.24-.06c1.11-.11 1.46-.06 1.4-1.16-.11-1.69.06-3.43-.11-5.12-.12-.93-.41-1.1-1.46-1.1-1.76.05-2.17.05-3.92.17-1.75.06-8.77.06-10.46.06-2.46 0-2.63-.18-2.7 2.8-.1 2.32-.05 4.7-.05 7.09 0 4.07-.23 18.66-.12 21.92Zm47.76-24.82c.06-1.92 0-3.5 0-5.35 0-2.15-3.92-1.92-5.32-1.86a18.95 18.95 0 0 0-15.08 9.77c-.82 1.57-1.4 3.2-1.81 4.88a34 34 0 0 0-.59 12.15c.41 3.78 1.4 7.56 3.74 10.59 4.04 5.3 11.46 7.15 17.83 6.16.3-.06.59-.11.82-.29.18-.11.35-.35.35-.58l.18-3.31c.06-1.05 0-1 0-2.04 0-1.4-2.93-.35-4.74-.35-1.75 0-3.62-.06-5.2-.87-2.8-1.57-4.38-4.71-5.26-7.68-1-3.2-1.23-6.63-.64-9.88.7-4.25 2.74-9.13 7.25-10.59 2.57-.87 5.31-.58 7.89-.29.35.06.58-.17.58-.46Zm26.77 15.3c.06-2.5 0-14.84 0-18.38.06-.82 0-1.63-.11-2.45-.06-.99-.24-1.28-1.29-1.33h-4.44c-.82 0-1.35.4-1.82 1.27-1.34 3.2-10.75 24.02-12.15 26.58-.53.99-1 1.63-1 2.68v4.24c0 .76-.06 1.28 1.23 1.28l11.1-.06c1.47 0 1.47.3 1.47 1.1 0 .88-.12 4.9-.12 5.3 0 .58.12 1.16 1.23 1.16h5.08c1.23 0 1.23-.7 1.23-2.03.06-1.17-.06-3.5-.06-4.66 0-.93.18-.98 1.76-.98 1.22 0 1.75-.12 1.75-.88.06-1.57 0-2.67 0-4.42 0-1.04-.93-.98-2.92-.98-.65 0-.7-.18-.7-1.05-.12-1.8-.24-4.6-.24-6.4Zm-7.25-5.94c-.05.7-.11 10.82-.11 12.27-.06.81-.24 1.05-1 1.1-1.93.06-3.85.06-5.78.06-.47 0-.65-.4-.41-.87.23-.4 4.85-11.57 6.13-14.48.18-.17.24-.35.41-.52.18-.12.41-.18.59-.23.06 0 .23.29.23.46 0 .76-.06 1.51-.06 2.21Z"})]})),kGe=S.forwardRef((e,r)=>y.jsx("svg",{ref:r,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 56 56",...e,children:y.jsx("path",{fill:"#5E98AF",d:"M33.95 33.78V0H2.37A2.37 2.37 0 0 0 0 2.35V33.9h33.95v-.12ZM38.57 33.78H55.6v-14.6c0-1.3-1.06-2.35-2.36-2.35H38.57v16.95ZM33.95 38.37H17.04v14.6c0 1.29 1.06 2.35 2.36 2.35h14.67V38.37h-.12ZM38.57 38.37v16.95h14.67c1.3 0 2.36-1.06 2.36-2.36v-14.6H38.57Z"})})),_Ge=()=>{const e=g0(),{onBurgerMenuClick:r}=mg();return y.jsx(Rr,{layout:"position",children:y.jsxs(pr,{onMouseEnter:()=>{e.send({type:"breadcrumbs.mouseEnter.root"})},onMouseLeave:()=>{e.send({type:"breadcrumbs.mouseLeave.root"})},onClick:n=>{n.stopPropagation(),r&&e.isOpened()&&setTimeout(()=>{r()},100),e.send({type:"breadcrumbs.click.root"})},className:Ge("mantine-active",qn({padding:"0.5",width:{base:"[20px]","@/md":"[64px]"}})),children:[y.jsx(wGe,{className:fe({display:{base:"none","@/md":"block"}})}),y.jsx(kGe,{className:fe({display:{base:"block","@/md":"none"}})})]})})},SGe=[["path",{d:"M5 12l14 0",key:"svg-0"}],["path",{d:"M5 12l6 6",key:"svg-1"}],["path",{d:"M5 12l6 -6",key:"svg-2"}]],EGe=wt("outline","arrow-left","ArrowLeft",SGe),CGe=()=>{const e=Mt(),{hasStepBack:r,hasStepForward:n}=pa(o=>({hasStepBack:o.navigationHistory.currentIndex>0,hasStepForward:o.navigationHistory.currentIndex{o.stopPropagation(),e.navigate("back")},children:y.jsx(EGe,{size:14})}),y.jsx(cc,{disabled:!n,onClick:o=>{o.stopPropagation(),e.navigate("forward")},children:y.jsx(hg,{size:14})})]})},$Ge=[["path",{d:"M9 15l6 -6",key:"svg-0"}],["path",{d:"M11 6l.463 -.536a5 5 0 0 1 7.071 7.072l-.534 .464",key:"svg-1"}],["path",{d:"M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463",key:"svg-2"}]],RGe=wt("outline","link","Link",$Ge),zGe=({context:e})=>{const r=e.view;return{id:r.id,title:e.viewModel?.title??(r.title&&n7(r.title))??"Untitled View",description:e.viewModel?.description??ur.from(r.description),tags:r.tags??[],links:r.links??[]}},TGe=e=>{const[r,n]=S.useState(!1),o=wR(zGe,tt),i=bg();return y.jsxs(br,{position:"bottom-end",shadow:"xl",clickOutsideEvents:["pointerdown","mousedown","click"],offset:{mainAxis:4},opened:r,onChange:n,...i,...e,children:[y.jsx(jGe,{linksCount:o.links.length,onOpen:()=>n(!0)}),r&&y.jsx(AGe,{data:o,onClose:()=>n(!1)})]})},jGe=({linksCount:e,onOpen:r})=>y.jsx(br.Target,{children:y.jsxs(pr,{component:wa,layout:"position",whileTap:{scale:.95,translateY:1},onClick:n=>{n.stopPropagation(),r()},className:Ge("group",qn({gap:"2",paddingInline:"2",paddingBlock:"1",rounded:"sm",userSelect:"none",cursor:"pointer",color:{base:"likec4.panel.action",_hover:"likec4.panel.action.hover"},backgroundColor:{_hover:"likec4.panel.action.bg.hover"},display:{base:"none","@/xs":"flex"}}),""),children:[y.jsx(nR,{size:16,stroke:1.8}),e>0&&y.jsxs(Or,{gap:"[1px]",children:[y.jsx(RGe,{size:14,stroke:2}),y.jsx(hr,{css:{fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8},children:e})]})]})}),wee=Ed("div",{base:{fontSize:"xs",color:"mantine.colors.dimmed",fontWeight:500,userSelect:"none",mb:"xxs"}}),AGe=({data:{id:e,title:r,description:n,tags:o,links:i},onClose:a})=>{const l=Mt();return ji("paneClick",a),ji("nodeClick",a),y.jsxs(br.Dropdown,{className:Ge("nowheel nopan nodrag",Ey({margin:"xs",layerStyle:"likec4.dropdown",gap:"md",padding:"md",paddingBottom:"lg",pointerEvents:"all",maxWidth:"calc(100cqw - 52px)",minWidth:"200px",maxHeight:"calc(100cqh - 100px)",width:"max-content",cursor:"default",overflow:"auto",overscrollBehavior:"contain","@/sm":{minWidth:400,maxWidth:550},"@/lg":{maxWidth:700}})),children:[y.jsxs("section",{children:[y.jsx(it,{component:"div",fw:500,size:"xl",lh:"sm",children:r}),y.jsxs(Or,{alignItems:"flex-start",mt:"1",children:[y.jsx(DGe,{label:"id",value:e}),y.jsx(Or,{gap:"xs",flexWrap:"wrap",children:o.map(s=>y.jsx(u2,{tag:s,cursor:"pointer",onClick:c=>{c.stopPropagation(),l.openSearch(`#${s}`)}},s))})]})]}),i.length>0&&y.jsxs("section",{className:qn({alignItems:"baseline"}),children:[y.jsx(wee,{children:"Links"}),y.jsx(Or,{gap:"xs",flexWrap:"wrap",children:i.map((s,c)=>y.jsx(o$,{value:s},`${c}-${s.url}`))})]}),n.isEmpty&&y.jsx(it,{component:"div",fw:500,size:"xs",c:"dimmed",style:{userSelect:"none"},children:"No description"}),n.nonEmpty&&y.jsxs("section",{children:[y.jsx(wee,{children:"Description"}),y.jsx(zp,{value:n,fontSize:"sm",emptyText:"No description",className:fe({userSelect:"all"})})]})]})},DGe=({label:e,value:r})=>y.jsxs(Or,{gap:"0.5",children:[y.jsx(PGe,{children:e}),y.jsx(ec,{size:"sm",radius:"sm",variant:"light",color:"gray",tt:"none",fw:500,classNames:{root:fe({width:"max-content",overflow:"visible",px:"1",color:{_dark:"mantine.colors.gray[4]",_light:"mantine.colors.gray[8]"}}),label:fe({overflow:"visible"}),section:fe({opacity:.5,userSelect:"none",marginInlineEnd:"0.5"})},children:r})]}),PGe=Ed("div",{base:{color:"mantine.colors.dimmed",fontWeight:500,fontSize:"xxs",userSelect:"none"}}),MGe=()=>{const e=E2(),{enableVscode:r}=sr(),{onOpenSource:n}=mg();return r?y.jsx(bee,{label:"Open View Source",children:y.jsx(cc,{onClick:o=>{o.stopPropagation(),n?.({view:e})},children:y.jsx(dg,{style:{width:"60%",height:"60%"}})})}):null};function kee(e,r){if(e._type==="dynamic")try{if(r??=e.variant,r==="sequence")return e.sequenceLayout.bounds}catch{}return e.bounds}function NGe({points:e,controlPoints:r,labelBBox:n}){let o=1/0,i=1/0,a=-1/0,l=-1/0;if(r)for(const s of r)o=Math.min(o,s.x),i=Math.min(i,s.y),a=Math.max(a,s.x),l=Math.max(l,s.y);else for(const[s,c]of e)o=Math.min(o,s),i=Math.min(i,c),a=Math.max(a,s),l=Math.max(l,c);return n&&(o=Math.min(o,n.x),i=Math.min(i,n.y),a=Math.max(a,n.x+n.width),l=Math.max(l,n.y+n.height)),{x:o,y:i,width:a-o,height:l-i}}function BGe({nodes:e,edges:r}){return ko.expand(ko.merge(...e,...r.map(NGe)),10)}function _ee(e){const{view:{drifts:r,_layout:n,...o},xynodes:i,xystore:a}=e,{nodeLookup:l,edgeLookup:s}=a.getState(),c=new Set,d=un(o.nodes,p=>{const f=l.get(p.id);if(!f)return console.error(`Internal node not found for ${p.id}`),p;const m=i.find(k=>k.id===p.id)?.data??f.data,v=f.internals.positionAbsolute,{width:w,height:x}=_o(f);return(!d2(v,p)||p.width!==w||p.height!==x)&&c.add(p.id),{...p,shape:m.shape,color:m.color,style:{...m.style},x:Math.floor(v.x),y:Math.floor(v.y),width:Math.ceil(w),height:Math.ceil(x)}}),u=un(o.edges,p=>{const f=s.get(p.id);if(!f)return console.error(`Internal edge not found for ${p.id}`),p;const m=f.data;let v=m.controlPoints??[];const w=c.has(f.source)||c.has(f.target);v.length===0&&w&&(v=c2(m.points));const x={...ud(p,["controlPoints","labelBBox"]),points:m.points};return m.labelBBox&&(x.labelBBox=m.labelBBox),xn(v,1)&&(x.controlPoints=v),x});return{op:"save-view-snapshot",layout:{...o,_layout:"manual",bounds:BGe({nodes:d,edges:u}),nodes:d,edges:u}}}const IGe=function(e){return e.get("diagram")},See=function(e){return e.get("diagram").getSnapshot().context},Eee=()=>Rn.raise({type:"sync"},{delay:200,id:"sync"}),xg=()=>Rn.cancel("sync"),Cee=(e=50)=>Rn.raise(({event:r})=>r,{delay:e}),$ee=e=>e.op==="reset-manual-layout"||e.op==="save-view-snapshot",Ree=ep(S$e($ee)),zee=()=>Rn.assign(({system:e})=>{const r=See(e);return{beforeEditing:{xynodes:r.xynodes.map(({measured:n,...o})=>({...ud(o,["selected","dragging","resizing"]),data:ud(o.data,["dimmed","hovered"]),measured:n,initialWidth:n?.width??o.width??o.initialWidth,initialHeight:n?.height??o.height??o.initialHeight})),xyedges:r.xyedges.map(n=>({...ud(n,["selected"]),data:ud(n.data,["active","dimmed","hovered"])})),change:_ee(r),view:r.view,synched:!1}}}),OGe=()=>Rn.enqueueActions(({enqueue:e,event:r})=>{e(zee()),r.type==="edit.start"&&e.assign({editing:r.subject})}),LGe=()=>Rn.stopChild("hotkey"),kR=()=>Rn.enqueueActions(({check:e,enqueue:r,self:n})=>{const o=e("can undo"),i=n.getSnapshot().children.hotkey;if(!o&&i){r.stopChild(i);return}o&&!i&&r.spawnChild("hotkey",{id:"hotkey"})}),Tee=()=>Rn.assign(({context:e})=>{const r=e.beforeEditing;return r?{beforeEditing:null,editing:null,history:[...e.history,r]}:{editing:null}}),_R=()=>Rn.enqueueActions(({event:e,enqueue:r})=>{if(e.type==="edit.finish"&&e.wasChanged){r(Tee()),r(Eee());return}r.assign({beforeEditing:null,editing:null})}),FGe=()=>Rn.assign(({context:e})=>({beforeEditing:e.beforeEditing&&e.beforeEditing.synched===!1?{...e.beforeEditing,synched:!0}:e.beforeEditing,history:e.history.map(r=>({...r,synched:!0}))})),VGe=()=>Rn.assign(({context:e})=>e.history.length<=1?{history:[]}:{history:e.history.slice(0,e.history.length-1)}),qGe=()=>Rn.enqueueActions(({context:e,enqueue:r,system:n})=>{const o=dd(e.history);if(!o)return;r(xg()),r(VGe()),r(kR());const i=IGe(n);r.sendTo(i,{type:"update.view",view:o.view,xyedges:o.xyedges,xynodes:o.xynodes,source:"editor"}),r.assign({pendingChanges:[]}),o.synched?r.raise({type:"change",change:o.change},{delay:50}):r(Eee())}),SR=()=>Rn.assign(({context:e,system:r})=>{const n=See(r),o=_ee(n);return{pendingChanges:[...Ree(e.pendingChanges),o]}}),HGe=B3(({sendBack:e})=>{const r=$w([["mod + z",n=>{n.stopPropagation(),e({type:"undo"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r,{capture:!0}),()=>{document.body.removeEventListener("keydown",r,{capture:!0})}}),UGe=zy(()=>{throw new Error("Not implemented")}),WGe=zy(()=>{throw new Error("Not implemented")}),jee=function(e){return e.system.get("diagram")},Rn=ns({delays:{"350ms":350,waitBeforeSync:2e3},actors:{applyLatest:UGe,executeChange:WGe,hotkey:HGe},guards:{"has pending":({context:e})=>e.pendingChanges.length>0,"can undo":({context:e})=>e.history.length>0}}),Hn={idle:{target:"#idle"},editing:{target:"#editing"},afterEdit:{target:"#afterEdit"},pending:{target:"#pending"},applyLatestToManual:{target:"#applyLatestToManual"},executeChanges:{target:"#executeChanges"}},GGe=Rn.createStateConfig({id:"idle",on:{sync:{...Hn.pending},"edit.start":{...Hn.editing}}}),YGe=Rn.createStateConfig({id:"editing",tags:"pending",entry:[OGe(),xg()],on:{change:{actions:_R(),...Hn.executeChanges},"edit.finish":{actions:_R(),...Hn.afterEdit},undo:{actions:_R(),...Hn.idle}}}),XGe=Rn.createStateConfig({id:"pending",tags:["pending"],entry:kR(),on:{sync:{reenter:!0,...Hn.pending},"edit.start":{actions:[SR()],...Hn.editing}},after:{waitBeforeSync:{actions:[SR()],...Hn.executeChanges}}}),KGe=Rn.createStateConfig({id:"afterEdit",always:[{guard:"has pending",...Hn.pending},{...Hn.idle}]}),ZGe=Rn.createStateConfig({id:"applyLatestToManual",entry:[xg(),zee()],initial:"call",on:{"*":{actions:[yE(({event:e})=>`applyLatestToManual received unexpected event: ${e.type}`),Cee(350)]}},states:{call:{invoke:{src:"applyLatest",input:({context:e})=>{const r=e.beforeEditing?.change.layout;return{current:r&&r._layout==="manual"?r:void 0,viewId:e.viewId}},onDone:{actions:jy(jee,({event:e})=>({type:"update.view",view:e.output.updated}),{delay:10}),target:"wait"},onError:{actions:[Bt({beforeEditing:null,pendingChanges:[]}),({event:e})=>{console.error(e.error)}],...Hn.idle}}},wait:{entry:Tee(),after:{"350ms":{actions:[SR(),kR()],...Hn.executeChanges}}}}}),QGe=Rn.createStateConfig({id:"executeChanges",entry:[Bt(({event:e,context:r})=>{if(e.type==="change"){if($ee(e.change))return{pendingChanges:[...Ree(r.pendingChanges),e.change]};if(!r.pendingChanges.includes(e.change))return{pendingChanges:[...r.pendingChanges,e.change]}}return{}}),xg()],invoke:{src:"executeChange",input:({context:e})=>({changes:e.pendingChanges,viewId:e.viewId}),onDone:{actions:rs(({context:e,enqueue:r})=>{const n=Q1(e.pendingChanges,o=>o.op==="save-view-snapshot");n&&r.sendTo(jee,{type:"update.view-bounds",bounds:n.layout.bounds}),r.assign({pendingChanges:[]})}),...Hn.idle},onError:{actions:({event:e})=>{console.error(e.error)},...Hn.afterEdit}},on:{"*":{actions:Cee()}}}),JGe=Rn.createMachine({id:"editor",context:({input:e})=>({viewId:e.viewId,beforeEditing:null,editing:null,pendingChanges:[],history:[]}),initial:"idle",states:{idle:GGe,editing:YGe,pending:XGe,afterEdit:KGe,applyLatestToManual:ZGe,executeChanges:QGe},on:{cancel:{actions:[xg(),Bt({editing:null,beforeEditing:null,pendingChanges:[]})],...Hn.idle},synced:{actions:FGe()},undo:{guard:"can undo",actions:qGe(),...Hn.idle},change:{...Hn.executeChanges},applyLatestToManual:{...Hn.applyLatestToManual},reset:{actions:[xg(),Bt({history:[],editing:null,beforeEditing:null,pendingChanges:[]}),LGe()],...Hn.idle}}}),Aee=JGe,Dee={};function Pee(e,r){return e===r?e:(r=r.map(n=>{const o=e.find(l=>l.id===n.id&&l.type===n.type&&l.source===n.source&&l.target===n.target);if(!o)return n;const i=tt(o.data,n.data),a=i?o.data:n.data;return i&&tt(o.hidden,n.hidden??o.hidden)&&tt(o.selected,n.selected??o.selected)&&tt(o.selectable,n.selectable??o.selectable)&&tt(o.focusable,n.focusable??o.focusable)&&tt(o.animated,n.animated??o.animated)&&tt(o.className,n.className)&&tt(o.zIndex,n.zIndex??o.zIndex)&&tt(o.label,n.label)&&tt(o.sourceHandle,n.sourceHandle)&&tt(o.targetHandle,n.targetHandle)&&tt(o.style??Dee,n.style??Dee)?o:{...ry(o,ra),...ry(n,ra),data:a}}),Oq(e,r)?e:r)}function ER(e,r){return ra(r)?Pee(e,r):(r=e,n=>Pee(n,r))}const N2={};function Mee(e,r){return e===r?e:(r=r.map(n=>{const o=e.find(p=>p.id===n.id&&p.type===n.type);if(!o)return n;const i=Mq(o.data,n.data);let a=i?o.data:n.data;i||(ra(o.data.hovered)&&!ra(n.data.hovered)&&(a={...a,hovered:o.data.hovered}),ra(o.data.dimmed)&&!ra(n.data.dimmed)&&(a={...a,dimmed:o.data.dimmed}));const{width:l,height:s}=_o(o),c=Object.hasOwn(o,"handles")||Object.hasOwn(n,"handles"),d=!c||tt(o.handles??[],n.handles??[]);if(i&&d&&tt(l,n.width??n.initialWidth)&&tt(s,n.height??n.initialHeight)&&tt(o.parentId??null,n.parentId??null)&&tt(o.hidden,n.hidden??o.hidden)&&tt(o.selected,n.selected??o.selected)&&tt(o.selectable,n.selectable??o.selectable)&&tt(o.focusable,n.focusable??o.focusable)&&tt(o.draggable,n.draggable??o.draggable)&&tt(o.dragHandle,n.dragHandle)&&tt(o.className,n.className)&&tt(o.zIndex,n.zIndex??o.zIndex)&&tt(o.position,n.position)&&tt(o.domAttributes??N2,n.domAttributes??N2)&&tt(o.style??N2,n.style??N2))return o;const u=c&&d?o.handles:n.handles;return{...ry(o,(p,f)=>ra(p)&&f!=="parentId"),..."measured"in o&&{measured:{width:n.width??n.initialWidth,height:n.height??n.initialHeight}},...ry(n,ra),width:n.width??n.initialWidth,height:n.height??n.initialHeight,...u&&{handles:u},data:a}}),Oq(e,r)?e:r)}function B2(e,r){return ra(r)?Mee(e,r):(r=e,n=>Mee(n,r))}const CR={top:"40px",bottom:"22px",left:"22px",right:"22px"};function Nee(e){const r=[],n=[],o=new Map,i=x8.from(e.nodes.reduce((s,c)=>(o.set(c.id,c),c.parent||s.push({node:c,parent:null}),s),[])),a=s=>gt(o.get(s),`Node not found: ${s}`);let l;for(;l=i.dequeue();){const{node:s,parent:c}=l,d=xn(s.children,1)||s.kind==w1;if(d)for(const w of s.children)i.enqueue({node:a(w),parent:s});const u={x:s.x,y:s.y};c&&(u.x-=c.x,u.y-=c.y);const p=s.id,f={id:p,position:u,zIndex:d?lc.Compound:lc.Element,style:{width:s.width,height:s.height},initialWidth:s.width,initialHeight:s.height,...c&&{parentId:c.id}},m=s.modelRef??null,v={navigateTo:s.navigateTo??null};switch(!0){case s.kind===w2.Empty:{r.push({...f,type:"empty",data:{column:s.column}});break}case(d&&!!m):{r.push({...f,type:"compound",data:{id:p,column:s.column,title:s.title,color:s.color,shape:s.shape,style:s.style,depth:s.depth??0,icon:s.icon??"none",ports:s.ports,existsInCurrentView:s.existsInCurrentView,fqn:m,...v}});break}default:He(m,"Element should have either modelRef or deploymentRef"),r.push({...f,type:"element",data:{id:p,column:s.column,fqn:m,title:s.title,technology:s.technology,description:s.description,height:s.height,width:s.width,color:s.color,shape:s.shape,icon:s.icon??"none",ports:s.ports,style:s.style,existsInCurrentView:s.existsInCurrentView,tags:s.tags,...v}})}}for(const s of e.edges){const c=s.source,d=s.target,u=s.id;if(!xn(s.points,2)){console.error("edge should have at least 2 points",s);continue}if(!xn(s.relations,1)){console.error("edge should have at least 1 relation",s);continue}n.push({id:u,type:"relationship",source:c,target:d,sourceHandle:s.sourceHandle,targetHandle:s.targetHandle,data:{sourceFqn:s.sourceFqn,targetFqn:s.targetFqn,relations:s.relations,color:s.color??"gray",label:s.label,navigateTo:s.navigateTo??null,line:s.line??"dashed",existsInCurrentView:s.existsInCurrentView},interactionWidth:20})}return{xynodes:r,xyedges:n}}const Bee=e=>e.find(r=>r.data.column==="subjects"&&ty(r.parentId)),eYe=zy(async({input:e,self:r,signal:n})=>{const{subjectId:o,navigateFromNode:i,xyflow:a,xystore:l,update:s}=e;let{nodes:c,width:d,height:u}=l.getState();const p=Nee(s),f=()=>{const{nodes:j,edges:I}=l.getState();return{xynodes:B2(j,p.xynodes),xyedges:ER(I,p.xyedges)}},m=gt(r._parent);let v=a.getZoom();const w=Math.max(v,1),x=Ws(s.bounds,d,u,xa,w,CR),k=p.xynodes.find(j=>j.type!=="empty"&&j.data.column==="subjects"&&j.data.fqn===o)??Bee(p.xynodes),C=Bee(c),_=i?c.find(j=>j.id===i):c.find(j=>j.type!=="empty"&&j.data.column!=="subjects"&&j.data.fqn===o);if(!k||!_||k.type==="empty"||!C||k.data.fqn===C.data.fqn)return await a.setViewport(x),f();const $={x:k.position.x+(k.initialWidth??0)/2,y:k.position.y+(k.initialHeight??0)/2},R=a.getInternalNode(C.id),T=n$(R),A=new Set;if(c.forEach(j=>{if(j.id!==_.id){if(j.data.column==="subjects"){A.add(j.id);return}j.parentId&&(j.parentId===_.id||A.has(j.parentId))&&A.add(j.id)}}),c=B2(c,c.flatMap(j=>A.has(j.id)?[]:j.id!==_.id?{...j,data:{...j.data,dimmed:j.data.column==="subjects"?"immediate":!0}}:{...ud(j,["parentId"]),position:{x:T.x-j.initialWidth/2,y:T.y-j.initialHeight/2},zIndex:lc.Max,hidden:!1,data:{...j.data,dimmed:!1}})),m.send({type:"update.xydata",xynodes:c,xyedges:[]}),await XO(120),p.xynodes=p.xynodes.map(tr.setDimmed(!1)),n.aborted)return f();const z=300;return a.setCenter(T.x,T.y,{zoom:v,duration:z,interpolate:"smooth"}),await XO(z),await a.setCenter($.x,$.y,{zoom:v}),f()}),dc=ns({actors:{layouter:eYe},guards:{hasViewId:({context:e})=>e.viewId!==null,isReady:({context:e})=>e.xyflow!==null&&e.xystore!==null&&e.layouted!==null,anotherSubject:({context:e,event:r})=>r.type==="update.view"?e.layouted?.subject!==r.layouted.subject:!1}}),Iee=()=>dc.assign(({event:e})=>(ht(e,"xyflow.init"),{xyflow:e.instance,xystore:e.store})),Oee=()=>dc.assign(({event:e})=>(ht(e,"update.view"),{layouted:e.layouted,...Nee(e.layouted)})),tYe=()=>dc.createAction(({context:e})=>{He(e.xystore,"xystore is not initialized");const{domNode:r,updateNodeInternals:n}=e.xystore.getState(),o=new Set(e.xyedges.flatMap(l=>[l.source,l.target]));if(o.size===0||!r)return;const i=new Map,a=r.querySelectorAll(".react-flow__node");for(const l of a){const s=l.getAttribute("data-id");s&&o.has(s)&&i.set(s,{id:s,nodeElement:l,force:!0})}n(i,{triggerFitView:!1})}),$R=e=>dc.createAction(({context:r,event:n})=>{e??=n.type==="fitDiagram"?n:{};let{duration:o,bounds:i}=e??{};o??=450;const{xyflow:a,xystore:l}=r;He(a,"xyflow is not initialized"),He(l,"xystore is not initialized"),i??=r.layouted?.bounds;const s=Math.max(a.getZoom(),1);if(i){const{width:c,height:d}=l.getState(),u=Ws(i,c,d,xa,s,CR);a.setViewport(u,o>0?{duration:o,interpolate:"smooth"}:void 0).catch(console.error)}else a.fitView({minZoom:xa,maxZoom:s,padding:CR,...o>0&&{duration:o,interpolate:"smooth"}}).catch(console.error)}),rYe=()=>dc.assign(({context:e,event:r})=>(ht(r,"xyflow.applyNodeChanges"),{xynodes:rw(r.changes,e.xynodes)})),nYe=()=>dc.assign(({context:e,event:r})=>(ht(r,"xyflow.applyEdgeChanges"),{xyedges:nw(r.changes,e.xyedges)})),Lee=()=>dc.enqueueActions(({system:e,event:r})=>{if(r.type!=="xyflow.edgeClick")return;const n=zr(e).diagramActorRef,o=r.edge.data.relations;xn(o,1)&&n.send({type:"open.source",relation:o[0]})}),Fee=()=>dc.assign({xyflow:null,layouted:null,xystore:null,xyedges:[],xynodes:[]}),oYe=dc.createMachine({id:"relationships-browser",context:({input:e})=>({subject:e.subject,viewId:e.viewId,scope:e.viewId?e.scope:"global",closeable:e.closeable??!0,enableSelectSubject:e.enableSelectSubject??!0,enableChangeScope:e.enableChangeScope??!0,xyflow:null,xystore:null,layouted:null,navigateFromNode:null,xynodes:[],xyedges:[]}),initial:"initializing",on:{"xyflow.applyNodeChanges":{actions:rYe()},"xyflow.applyEdgeChanges":{actions:nYe()}},states:{initializing:{on:{"xyflow.init":{actions:Iee(),target:"isReady"},"update.view":{actions:Oee(),target:"isReady"},stop:"closed",close:"closed"}},isReady:{always:[{guard:"isReady",actions:[$R({duration:0}),ai({type:"xyflow.updateNodeInternals"},{delay:150})],target:"active"},{target:"initializing"}]},active:{initial:"idle",tags:["active"],on:{"xyflow.nodeClick":{actions:rs(({event:e,enqueue:r})=>{if("fqn"in e.node.data){const n=e.node.data.fqn;r.raise({type:"navigate.to",subject:n,fromNode:e.node.id})}})},"xyflow.edgeClick":[{guard:"hasViewId",actions:rs(({event:e,context:r,system:n,enqueue:o})=>{e.edge.selected||e.edge.data.relations.length>1?o.sendTo(zr(n).overlaysActorRef,{type:"open.relationshipDetails",viewId:r.viewId,source:e.edge.data.sourceFqn,target:e.edge.data.targetFqn}):o(Lee())})},{actions:Lee()}],"navigate.to":{actions:[Bt({subject:({event:e})=>e.subject,viewId:({event:e,context:r})=>e.viewId??r.viewId??null,navigateFromNode:({event:e})=>e.fromNode??null})]},"xyflow.paneDblClick":{actions:$R()},"update.view":{actions:Oee(),target:".layouting"},"change.scope":{actions:Bt({scope:({event:e})=>e.scope})},"xyflow.updateNodeInternals":{actions:tYe()},fitDiagram:{actions:$R()},"xyflow.resized":{actions:[ua("fitDiagram"),ai({type:"fitDiagram"},{id:"fitDiagram",delay:300})]},"xyflow.init":{actions:Iee()},"xyflow.unmount":{target:"initializing"},close:"closed"},states:{idle:{on:{"xyflow.edgeMouseEnter":{actions:[Bt({xyedges:({context:e,event:r})=>{const n=e.xyedges.some(o=>o.data.dimmed!==!1||o.selected);return e.xyedges.map(o=>o.id===r.edge.id?tr.setData(o,{hovered:!0,dimmed:!1}):n&&!o.selected?tr.setDimmed(o,"immediate"):o)}}),ua("undim.edges"),ua("dim.nonhovered.edges"),ai({type:"dim.nonhovered.edges"},{id:"dim.nonhovered.edges",delay:200})]},"xyflow.edgeMouseLeave":{actions:[Bt({xyedges:({context:e,event:r})=>e.xyedges.map(n=>n.id===r.edge.id?tr.setHovered(n,!1):n)}),ua("dim.nonhovered.edges"),ai({type:"undim.edges"},{id:"undim.edges",delay:400})]},"dim.nonhovered.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.map(r=>r.data.hovered?r:tr.setDimmed(r,r.data.dimmed==="immediate"?"immediate":!0))})},"undim.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.map(tr.setDimmed(!1))})},"xyflow.selectionChange":{actions:rs(({event:e,context:r,enqueue:n})=>{e.edges.length===0&&r.xyedges.some(o=>o.data.dimmed)&&!r.xyedges.some(o=>o.data.hovered)&&n.raise({type:"undim.edges"})})}}},layouting:{invoke:{id:"layouter",src:"layouter",input:({context:e})=>({subjectId:e.subject,navigateFromNode:e.navigateFromNode,xyflow:gt(e.xyflow),xystore:gt(e.xystore),update:gt(e.layouted)}),onDone:{target:"idle",actions:rs(({enqueue:e,event:r})=>{e.assign({xynodes:r.output.xynodes,xyedges:r.output.xyedges,navigateFromNode:null}),e.raise({type:"fitDiagram",duration:200},{id:"fitDiagram",delay:50});for(let n=1;n<8;n++)e.raise({type:"xyflow.updateNodeInternals"},{delay:120+n*75})})}},on:{"update.xydata":{actions:Bt({xynodes:({event:e})=>e.xynodes,xyedges:({event:e})=>e.xyedges})},"xyflow.applyEdgeChanges":{},"xyflow.applyNodeChanges":{}}}}},closed:{id:"closed",type:"final",entry:Fee()}},exit:Fee()}),Vee=oYe,iYe=ns({actors:{relationshipsBrowserLogic:Vee}}).createMachine({id:"element-details",context:({input:e})=>({...e,initiatedFrom:{node:e.initiatedFrom?.node??null,clientRect:e.initiatedFrom?.clientRect??null}}),initial:"active",states:{active:{entry:T3("relationshipsBrowserLogic",{id:({self:e})=>`${e.id}-relationships`,input:({context:e})=>({subject:e.subject,viewId:e.currentView.id,scope:"view",enableSelectSubject:!1,enableChangeScope:!0,closeable:!1})}),exit:[jy(({self:e})=>`${e.id}-relationships`,{type:"close"}),$y(({self:e})=>`${e.id}-relationships`)],on:{"change.subject":{actions:Bt({subject:({event:e})=>e.subject})},close:"closed"}},closed:{id:"closed",type:"final"}}}),aYe=iYe;function lYe(e){const r=[],n=[],o=new Map,i=x8.from(e.nodes.reduce((s,c)=>(o.set(c.id,c),c.parent||s.push({node:c,parent:null}),s),[])),a=s=>gt(o.get(s),`Node not found: ${s}`);let l;for(;l=i.dequeue();){const{node:s,parent:c}=l,d=xn(s.children,1);if(d)for(const w of s.children)i.enqueue({node:a(w),parent:s});const u={x:s.x,y:s.y};c&&(u.x-=c.x,u.y-=c.y);const p=s.id,f={id:p,draggable:!1,deletable:!1,position:u,zIndex:d?lc.Compound:lc.Element,style:{width:s.width,height:s.height},initialWidth:s.width,initialHeight:s.height,...c&&{parentId:c.id}},m=s.modelRef,v={navigateTo:s.navigateTo??null};switch(!0){case d:{r.push({...f,type:"compound",data:{id:p,column:s.column,title:s.title,color:s.color,style:s.style,depth:s.depth??0,icon:s.icon??"none",ports:s.ports,fqn:m,...v}});break}default:r.push({...f,type:"element",data:{id:p,column:s.column,fqn:m,title:s.title,technology:s.technology,description:s.description??null,height:s.height,width:s.width,color:s.color,shape:s.shape,icon:s.icon??"none",ports:s.ports,style:s.style,tags:s.tags,...v}})}}for(const{source:s,target:c,relationId:d,label:u,technology:p,description:f,navigateTo:m=null,color:v="gray",line:w="dashed",...x}of e.edges){const k=x.id;n.push({id:k,type:"relationship",source:s,target:c,sourceHandle:x.sourceHandle,targetHandle:x.targetHandle,deletable:!1,data:{relationId:d,label:u,color:v,navigateTo:m,line:w,description:f??null,...p&&{technology:p}}})}return{xynodes:r,xyedges:n,bounds:e.bounds}}function qee(e){return"edgeId"in e?(He(pw(e.edgeId),"edgeId is required"),{edgeId:e.edgeId}):{source:e.source,target:e.target}}const Hee={x:"22px",y:"22px"},sYe=ns({actions:{"xyflow:fitDiagram":({context:e},r)=>{let{duration:n,bounds:o}=r??{};n??=450;const{xyflow:i,xystore:a}=e;He(i,"xyflow is not initialized"),He(a,"xystore is not initialized"),o??=e.bounds;const l=Math.max(i.getZoom(),1);if(o){const{width:s,height:c}=a.getState(),d=Ws(o,s,c,xa,l,Hee);i.setViewport(d,n>0?{duration:n}:void 0).catch(console.error)}else i.fitView({minZoom:xa,maxZoom:l,padding:Hee,...n>0&&{duration:n,interpolate:"smooth"}}).catch(console.error)},"xyflow:updateNodeInternals":({context:e})=>{He(e.xystore,"xystore is not initialized");const{domNode:r,updateNodeInternals:n}=e.xystore.getState(),o=new Set(e.xyedges.flatMap(a=>[a.source,a.target]));if(o.size===0||!r)return;const i=new Map;for(const a of o){const l=r.querySelector(`.react-flow__node[data-id="${a}"]`);l&&i.set(a,{id:a,nodeElement:l,force:!0})}n(i,{triggerFitView:!1})},updateXYFlow:Bt(({context:e,event:r})=>{ht(r,"xyflow.init");let n=e.initialized;return n.xyflow||(n={...n,xyflow:!0}),{initialized:n,xyflow:r.instance,xystore:r.store}}),updateLayoutData:Bt(({context:e,event:r})=>{ht(r,"update.layoutData");const{xynodes:n,xyedges:o,bounds:i}=lYe(r.data);let a=e.initialized;return a.xydata||(a={...a,xydata:!0}),{initialized:a,xynodes:B2(e.xynodes,n),xyedges:ER(e.xyedges,o),bounds:Ir(e.bounds,i)?e.bounds:i}}),"open relationship source":rs(({system:e,event:r})=>{if(r.type!=="xyflow.edgeClick")return;const n=zr(e).diagramActorRef,o=r.edge.data.relationId;o&&n.send({type:"open.source",relation:o})})},guards:{isReady:({context:e})=>e.initialized.xydata&&e.initialized.xyflow,"enable: navigate.to":()=>!0}}).createMachine({initial:"initializing",context:({input:e})=>({subject:qee(e),viewId:e.viewId,bounds:{x:0,y:0,width:200,height:200},initialized:{xydata:!1,xyflow:!1},xyflow:null,xystore:null,xynodes:[],xyedges:[]}),states:{initializing:{on:{"xyflow.init":{actions:"updateXYFlow",target:"isReady"},"update.layoutData":{actions:"updateLayoutData",target:"isReady"},close:{target:"closed"}}},isReady:{always:[{guard:"isReady",actions:[{type:"xyflow:fitDiagram",params:{duration:0}},ai({type:"xyflow.updateNodeInternals"},{delay:50})],target:"ready"},{target:"initializing"}]},ready:{on:{"xyflow.edgeMouseEnter":{actions:[Bt({xyedges:({context:e,event:r})=>{const n=e.xyedges.some(o=>o.data.dimmed===!0||o.data.dimmed==="immediate");return e.xyedges.map(o=>o.id===r.edge.id?tr.setData(o,{hovered:!0,dimmed:!1}):n&&!o.selected?tr.setDimmed(o,"immediate"):o)}}),ua("undim.edges"),ua("dim.nonhovered.edges"),ai({type:"dim.nonhovered.edges"},{id:"dim.nonhovered.edges",delay:100})]},"xyflow.edgeMouseLeave":{actions:[Bt({xyedges:({context:e,event:r})=>e.xyedges.map(n=>n.id===r.edge.id?tr.setHovered(n,!1):n)}),ua("dim.nonhovered.edges"),ai({type:"undim.edges"},{id:"undim.edges",delay:400})]},"dim.nonhovered.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.map(r=>tr.setDimmed(r,r.data.hovered!==!0))})},"undim.edges":{actions:Bt({xyedges:({context:e})=>e.xyedges.some(r=>r.selected===!0)?e.xyedges.map(r=>tr.setDimmed(r,r.selected!==!0?r.data.dimmed||"immediate":!1)):e.xyedges.map(tr.setDimmed(!1))})},"xyflow.selectionChange":{actions:rs(({event:e,context:r,enqueue:n})=>{e.edges.length===0&&r.xyedges.some(o=>o.data.dimmed)&&!r.xyedges.some(o=>o.data.hovered)&&n.raise({type:"undim.edges"})})},"update.layoutData":{actions:["updateLayoutData",ua("fitDiagram"),ai({type:"fitDiagram",duration:0},{id:"fitDiagram",delay:50}),ai({type:"xyflow.updateNodeInternals"},{delay:75})]},"xyflow.init":{actions:"updateXYFlow"},"xyflow.applyNodeChanges":{actions:Bt({xynodes:({context:e,event:r})=>rw(r.changes,e.xynodes)})},"xyflow.applyEdgeChanges":{actions:Bt({xyedges:({context:e,event:r})=>nw(r.changes,e.xyedges)})},"xyflow.paneDblClick":{actions:"xyflow:fitDiagram"},"xyflow.edgeClick":{actions:"open relationship source"},"navigate.to":{actions:Bt({subject:({event:e})=>qee(e.params),viewId:({context:e,event:r})=>r.params.viewId??e.viewId})},close:{target:"closed"}},exit:Bt({xyedges:[],xynodes:[],initialized:{xydata:!1,xyflow:!1},xyflow:null,xystore:null})},closed:{type:"final"}},on:{fitDiagram:{actions:{type:"xyflow:fitDiagram",params:rp("event")}},"xyflow.resized":{actions:[ua("fitDiagram"),ai({type:"fitDiagram"},{id:"fitDiagram",delay:200})]},"xyflow.updateNodeInternals":{actions:"xyflow:updateNodeInternals"}}}),cYe=sYe;var Nd={},ft={},Uee=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},wg={},Wee;function RR(){if(Wee)return wg;Wee=1,Object.defineProperty(wg,"__esModule",{value:!0});function e(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof Uee<"u")return Uee}function r(){const i=e();if(i.__xstate__)return i.__xstate__}function n(i){if(typeof window>"u")return;const a=r();a&&a.register(i)}const o=i=>{if(typeof window>"u")return;const a=r();a&&a.register(i)};return wg.devToolsAdapter=o,wg.getGlobal=e,wg.registerService=n,wg}var Gee;function I2(){if(Gee)return ft;Gee=1;var e=RR();class r{constructor(ee){this._process=ee,this._active=!1,this._current=null,this._last=null}start(){this._active=!0,this.flush()}clear(){this._current&&(this._current.next=null,this._last=this._current)}enqueue(ee){const oe={value:ee,next:null};if(this._current){this._last.next=oe,this._last=oe;return}this._current=oe,this._last=oe,this._active&&this.flush()}flush(){for(;this._current;){const ee=this._current;this._process(ee.value),this._current=ee.next}this._last=null}}const n=".",o="",i="",a="#",l="*",s="xstate.init",c="xstate.error",d="xstate.stop";function u(J,ee){return{type:`xstate.after.${J}.${ee}`}}function p(J,ee){return{type:`xstate.done.state.${J}`,output:ee}}function f(J,ee){return{type:`xstate.done.actor.${J}`,output:ee,actorId:J}}function m(J,ee){return{type:`xstate.error.actor.${J}`,error:ee,actorId:J}}function v(J){return{type:s,input:J}}function w(J){setTimeout(()=>{throw J})}const x=typeof Symbol=="function"&&Symbol.observable||"@@observable";function k(J,ee){const oe=_(J),ae=_(ee);return typeof ae=="string"?typeof oe=="string"?ae===oe:!1:typeof oe=="string"?oe in ae:Object.keys(oe).every(le=>le in ae?k(oe[le],ae[le]):!1)}function C(J){if(j(J))return J;const ee=[];let oe="";for(let ae=0;aetypeof ee>"u"||typeof ee=="string"?{target:ee}:ee)}function L(J){if(!(J===void 0||J===o))return A(J)}function H(J,ee,oe){const ae=typeof J=="object",le=ae?J:void 0;return{next:(ae?J.next:J)?.bind(le),error:(ae?J.error:ee)?.bind(le),complete:(ae?J.complete:oe)?.bind(le)}}function P(J,ee){return`${ee}.${J}`}function V(J,ee){const oe=ee.match(/^xstate\.invoke\.(\d+)\.(.*)/);if(!oe)return J.implementations.actors[ee];const[,ae,le]=oe,ve=J.getStateNodeById(le).config.invoke;return(Array.isArray(ve)?ve[ae]:ve).src}function B(J){return[...new Set([...J._nodes.flatMap(ee=>ee.ownEvents)])]}function F(J,ee){return`${J.sessionId}.${ee}`}let q=0;function G(J,ee){const oe=new Map,ae=new Map,le=new WeakMap,ve=new Set,De={},{clock:Fe,logger:rt}=ee,lt={schedule:(Ze,pt,vt,Lt,Mo=Math.random().toString(36).slice(2))=>{const uh={source:Ze,target:pt,event:vt,delay:Lt,id:Mo,startedAt:Date.now()},Vi=F(Ze,Mo);Ke._snapshot._scheduledEvents[Vi]=uh;const su=Fe.setTimeout(()=>{delete De[Vi],delete Ke._snapshot._scheduledEvents[Vi],Ke._relay(Ze,pt,vt)},Lt);De[Vi]=su},cancel:(Ze,pt)=>{const vt=F(Ze,pt),Lt=De[vt];delete De[vt],delete Ke._snapshot._scheduledEvents[vt],Lt!==void 0&&Fe.clearTimeout(Lt)},cancelAll:Ze=>{for(const pt in Ke._snapshot._scheduledEvents){const vt=Ke._snapshot._scheduledEvents[pt];vt.source===Ze&<.cancel(Ze,vt.id)}}},Ot=Ze=>{if(!ve.size)return;const pt={...Ze,rootId:J.sessionId};ve.forEach(vt=>vt.next?.(pt))},Ke={_snapshot:{_scheduledEvents:(ee?.snapshot&&ee.snapshot.scheduler)??{}},_bookId:()=>`x:${q++}`,_register:(Ze,pt)=>(oe.set(Ze,pt),Ze),_unregister:Ze=>{oe.delete(Ze.sessionId);const pt=le.get(Ze);pt!==void 0&&(ae.delete(pt),le.delete(Ze))},get:Ze=>ae.get(Ze),getAll:()=>Object.fromEntries(ae.entries()),_set:(Ze,pt)=>{const vt=ae.get(Ze);if(vt&&vt!==pt)throw new Error(`Actor with system ID '${Ze}' already exists.`);ae.set(Ze,pt),le.set(pt,Ze)},inspect:Ze=>{const pt=H(Ze);return ve.add(pt),{unsubscribe(){ve.delete(pt)}}},_sendInspectionEvent:Ot,_relay:(Ze,pt,vt)=>{Ke._sendInspectionEvent({type:"@xstate.event",sourceRef:Ze,actorRef:pt,event:vt}),pt._send(vt)},scheduler:lt,getSnapshot:()=>({_scheduledEvents:{...Ke._snapshot._scheduledEvents}}),start:()=>{const Ze=Ke._snapshot._scheduledEvents;Ke._snapshot._scheduledEvents={};for(const pt in Ze){const{source:vt,target:Lt,event:Mo,delay:uh,id:Vi}=Ze[pt];lt.schedule(vt,Lt,Mo,uh,Vi)}},_clock:Fe,_logger:rt};return Ke}let U=!1;const Y=1;let K=(function(J){return J[J.NotStarted=0]="NotStarted",J[J.Running=1]="Running",J[J.Stopped=2]="Stopped",J})({});const O={clock:{setTimeout:(J,ee)=>setTimeout(J,ee),clearTimeout:J=>clearTimeout(J)},logger:console.log.bind(console),devTools:!1};class W{constructor(ee,oe){this.logic=ee,this._snapshot=void 0,this.clock=void 0,this.options=void 0,this.id=void 0,this.mailbox=new r(this._process.bind(this)),this.observers=new Set,this.eventListeners=new Map,this.logger=void 0,this._processingStatus=K.NotStarted,this._parent=void 0,this._syncSnapshot=void 0,this.ref=void 0,this._actorScope=void 0,this.systemId=void 0,this.sessionId=void 0,this.system=void 0,this._doneEvent=void 0,this.src=void 0,this._deferred=[];const ae={...O,...oe},{clock:le,logger:ve,parent:De,syncSnapshot:Fe,id:rt,systemId:lt,inspect:Ot}=ae;this.system=De?De.system:G(this,{clock:le,logger:ve}),Ot&&!De&&this.system.inspect(H(Ot)),this.sessionId=this.system._bookId(),this.id=rt??this.sessionId,this.logger=oe?.logger??this.system._logger,this.clock=oe?.clock??this.system._clock,this._parent=De,this._syncSnapshot=Fe,this.options=ae,this.src=ae.src??ee,this.ref=this,this._actorScope={self:this,id:this.id,sessionId:this.sessionId,logger:this.logger,defer:Ke=>{this._deferred.push(Ke)},system:this.system,stopChild:Ke=>{if(Ke._parent!==this)throw new Error(`Cannot stop child actor ${Ke.id} of ${this.id} because it is not a child`);Ke._stop()},emit:Ke=>{const Ze=this.eventListeners.get(Ke.type),pt=this.eventListeners.get("*");if(!Ze&&!pt)return;const vt=[...Ze?Ze.values():[],...pt?pt.values():[]];for(const Lt of vt)try{Lt(Ke)}catch(Mo){w(Mo)}},actionExecutor:Ke=>{const Ze=()=>{if(this._actorScope.system._sendInspectionEvent({type:"@xstate.action",actorRef:this,action:{type:Ke.type,params:Ke.params}}),!Ke.exec)return;const pt=U;try{U=!0,Ke.exec(Ke.info,Ke.params)}finally{U=pt}};this._processingStatus===K.Running?Ze():this._deferred.push(Ze)}},this.send=this.send.bind(this),this.system._sendInspectionEvent({type:"@xstate.actor",actorRef:this}),lt&&(this.systemId=lt,this.system._set(lt,this)),this._initState(oe?.snapshot??oe?.state),lt&&this._snapshot.status!=="active"&&this.system._unregister(this)}_initState(ee){try{this._snapshot=ee?this.logic.restoreSnapshot?this.logic.restoreSnapshot(ee,this._actorScope):ee:this.logic.getInitialSnapshot(this._actorScope,this.options?.input)}catch(oe){this._snapshot={status:"error",output:void 0,error:oe}}}update(ee,oe){this._snapshot=ee;let ae;for(;ae=this._deferred.shift();)try{ae()}catch(le){this._deferred.length=0,this._snapshot={...ee,status:"error",error:le}}switch(this._snapshot.status){case"active":for(const le of this.observers)try{le.next?.(ee)}catch(ve){w(ve)}break;case"done":for(const le of this.observers)try{le.next?.(ee)}catch(ve){w(ve)}this._stopProcedure(),this._complete(),this._doneEvent=f(this.id,this._snapshot.output),this._parent&&this.system._relay(this,this._parent,this._doneEvent);break;case"error":this._error(this._snapshot.error);break}this.system._sendInspectionEvent({type:"@xstate.snapshot",actorRef:this,event:oe,snapshot:ee})}subscribe(ee,oe,ae){const le=H(ee,oe,ae);if(this._processingStatus!==K.Stopped)this.observers.add(le);else switch(this._snapshot.status){case"done":try{le.complete?.()}catch(ve){w(ve)}break;case"error":{const ve=this._snapshot.error;if(!le.error)w(ve);else try{le.error(ve)}catch(De){w(De)}break}}return{unsubscribe:()=>{this.observers.delete(le)}}}on(ee,oe){let ae=this.eventListeners.get(ee);ae||(ae=new Set,this.eventListeners.set(ee,ae));const le=oe.bind(void 0);return ae.add(le),{unsubscribe:()=>{ae.delete(le)}}}start(){if(this._processingStatus===K.Running)return this;this._syncSnapshot&&this.subscribe({next:oe=>{oe.status==="active"&&this.system._relay(this,this._parent,{type:`xstate.snapshot.${this.id}`,snapshot:oe})},error:()=>{}}),this.system._register(this.sessionId,this),this.systemId&&this.system._set(this.systemId,this),this._processingStatus=K.Running;const ee=v(this.options.input);switch(this.system._sendInspectionEvent({type:"@xstate.event",sourceRef:this._parent,actorRef:this,event:ee}),this._snapshot.status){case"done":return this.update(this._snapshot,ee),this;case"error":return this._error(this._snapshot.error),this}if(this._parent||this.system.start(),this.logic.start)try{this.logic.start(this._snapshot,this._actorScope)}catch(oe){return this._snapshot={...this._snapshot,status:"error",error:oe},this._error(oe),this}return this.update(this._snapshot,ee),this.options.devTools&&this.attachDevTools(),this.mailbox.start(),this}_process(ee){let oe,ae;try{oe=this.logic.transition(this._snapshot,ee,this._actorScope)}catch(le){ae={err:le}}if(ae){const{err:le}=ae;this._snapshot={...this._snapshot,status:"error",error:le},this._error(le);return}this.update(oe,ee),ee.type===d&&(this._stopProcedure(),this._complete())}_stop(){return this._processingStatus===K.Stopped?this:(this.mailbox.clear(),this._processingStatus===K.NotStarted?(this._processingStatus=K.Stopped,this):(this.mailbox.enqueue({type:d}),this))}stop(){if(this._parent)throw new Error("A non-root actor cannot be stopped directly.");return this._stop()}_complete(){for(const ee of this.observers)try{ee.complete?.()}catch(oe){w(oe)}this.observers.clear()}_reportError(ee){if(!this.observers.size){this._parent||w(ee);return}let oe=!1;for(const ae of this.observers){const le=ae.error;oe||=!le;try{le?.(ee)}catch(ve){w(ve)}}this.observers.clear(),oe&&w(ee)}_error(ee){this._stopProcedure(),this._reportError(ee),this._parent&&this.system._relay(this,this._parent,m(this.id,ee))}_stopProcedure(){return this._processingStatus!==K.Running?this:(this.system.scheduler.cancelAll(this),this.mailbox.clear(),this.mailbox=new r(this._process.bind(this)),this._processingStatus=K.Stopped,this.system._unregister(this),this)}_send(ee){this._processingStatus!==K.Stopped&&this.mailbox.enqueue(ee)}send(ee){this.system._relay(void 0,this,ee)}attachDevTools(){const{devTools:ee}=this.options;ee&&(typeof ee=="function"?ee:e.devToolsAdapter)(this)}toJSON(){return{xstate$$type:Y,id:this.id}}getPersistedSnapshot(ee){return this.logic.getPersistedSnapshot(this._snapshot,ee)}[x](){return this}getSnapshot(){return this._snapshot}}function Z(J,...[ee]){return new W(J,ee)}const Q=Z;function ie(J,ee,oe,ae,{sendId:le}){const ve=typeof le=="function"?le(oe,ae):le;return[ee,{sendId:ve},void 0]}function te(J,ee){J.defer(()=>{J.system.scheduler.cancel(J.self,ee.sendId)})}function re(J){function ee(oe,ae){}return ee.type="xstate.cancel",ee.sendId=J,ee.resolve=ie,ee.execute=te,ee}function ue(J,ee,oe,ae,{id:le,systemId:ve,src:De,input:Fe,syncSnapshot:rt}){const lt=typeof De=="string"?V(ee.machine,De):De,Ot=typeof le=="function"?le(oe):le;let Ke,Ze;return lt&&(Ze=typeof Fe=="function"?Fe({context:ee.context,event:oe.event,self:J.self}):Fe,Ke=Z(lt,{id:Ot,src:De,parent:J.self,syncSnapshot:rt,systemId:ve,input:Ze})),[Gr(ee,{children:{...ee.children,[Ot]:Ke}}),{id:le,systemId:ve,actorRef:Ke,src:De,input:Ze},void 0]}function _e(J,{actorRef:ee}){ee&&J.defer(()=>{ee._processingStatus!==K.Stopped&&ee.start()})}function ce(...[J,{id:ee,systemId:oe,input:ae,syncSnapshot:le=!1}={}]){function ve(De,Fe){}return ve.type="xstate.spawnChild",ve.id=ee,ve.systemId=oe,ve.src=J,ve.input=ae,ve.syncSnapshot=le,ve.resolve=ue,ve.execute=_e,ve}function pe(J,ee,oe,ae,{actorRef:le}){const ve=typeof le=="function"?le(oe,ae):le,De=typeof ve=="string"?ee.children[ve]:ve;let Fe=ee.children;return De&&(Fe={...Fe},delete Fe[De.id]),[Gr(ee,{children:Fe}),De,void 0]}function xe(J,ee){if(ee){if(J.system._unregister(ee),ee._processingStatus!==K.Running){J.stopChild(ee);return}J.defer(()=>{J.stopChild(ee)})}}function je(J){function ee(oe,ae){}return ee.type="xstate.stopChild",ee.actorRef=J,ee.resolve=pe,ee.execute=xe,ee}const Be=je;function Je(J,ee,{stateValue:oe}){if(typeof oe=="string"&&Ht(oe)){const ae=J.machine.getStateNodeById(oe);return J._nodes.some(le=>le===ae)}return J.matches(oe)}function st(J){function ee(){return!1}return ee.check=Je,ee.stateValue=J,ee}function Le(J,{context:ee,event:oe},{guards:ae}){return!Et(ae[0],ee,oe,J)}function St(J){function ee(oe,ae){return!1}return ee.check=Le,ee.guards=[J],ee}function Ve(J,{context:ee,event:oe},{guards:ae}){return ae.every(le=>Et(le,ee,oe,J))}function qe(J){function ee(oe,ae){return!1}return ee.check=Ve,ee.guards=J,ee}function Xe(J,{context:ee,event:oe},{guards:ae}){return ae.some(le=>Et(le,ee,oe,J))}function It(J){function ee(oe,ae){return!1}return ee.check=Xe,ee.guards=J,ee}function Et(J,ee,oe,ae){const{machine:le}=ae,ve=typeof J=="function",De=ve?J:le.implementations.guards[typeof J=="string"?J:J.type];if(!ve&&!De)throw new Error(`Guard '${typeof J=="string"?J:J.type}' is not implemented.'.`);if(typeof De!="function")return Et(De,ee,oe,ae);const Fe={context:ee,event:oe},rt=ve||typeof J=="string"?void 0:"params"in J?typeof J.params=="function"?J.params({context:ee,event:oe}):J.params:void 0;return"check"in De?De.check(ae,Fe,De):De(Fe,rt)}const be=J=>J.type==="atomic"||J.type==="final";function ke(J){return Object.values(J.states).filter(ee=>ee.type!=="history")}function Ye(J,ee){const oe=[];if(ee===J)return oe;let ae=J.parent;for(;ae&&ae!==ee;)oe.push(ae),ae=ae.parent;return oe}function yt(J){const ee=new Set(J),oe=Tr(ee);for(const ae of ee)if(ae.type==="compound"&&(!oe.get(ae)||!oe.get(ae).length))ui(ae).forEach(le=>ee.add(le));else if(ae.type==="parallel"){for(const le of ke(ae))if(le.type!=="history"&&!ee.has(le)){const ve=ui(le);for(const De of ve)ee.add(De)}}for(const ae of ee){let le=ae.parent;for(;le;)ee.add(le),le=le.parent}return ee}function xt(J,ee){const oe=ee.get(J);if(!oe)return{};if(J.type==="compound"){const le=oe[0];if(le){if(be(le))return le.key}else return{}}const ae={};for(const le of oe)ae[le.key]=xt(le,ee);return ae}function Tr(J){const ee=new Map;for(const oe of J)ee.has(oe)||ee.set(oe,[]),oe.parent&&(ee.has(oe.parent)||ee.set(oe.parent,[]),ee.get(oe.parent).push(oe));return ee}function er(J,ee){const oe=yt(ee);return xt(J,Tr(oe))}function qt(J,ee){return ee.type==="compound"?ke(ee).some(oe=>oe.type==="final"&&J.has(oe)):ee.type==="parallel"?ke(ee).every(oe=>qt(J,oe)):ee.type==="final"}const Ht=J=>J[0]===a;function Kr(J,ee){return J.transitions.get(ee)||[...J.transitions.keys()].filter(oe=>{if(oe===l)return!0;if(!oe.endsWith(".*"))return!1;const ae=oe.split("."),le=ee.split(".");for(let ve=0;veae.length-oe.length).flatMap(oe=>J.transitions.get(oe))}function Gt(J){const ee=J.config.after;if(!ee)return[];const oe=ae=>{const le=u(ae,J.id),ve=le.type;return J.entry.push(lu(le,{id:ve,delay:ae})),J.exit.push(re(ve)),ve};return Object.keys(ee).flatMap(ae=>{const le=ee[ae],ve=typeof le=="string"?{target:le}:le,De=Number.isNaN(+ae)?ae:+ae,Fe=oe(De);return A(ve).map(rt=>({...rt,event:Fe,delay:De}))}).map(ae=>{const{delay:le}=ae;return{...ln(J,ae.event,ae),delay:le}})}function ln(J,ee,oe){const ae=L(oe.target),le=oe.reenter??!1,ve=oo(J,ae),De={...oe,actions:A(oe.actions),guard:oe.guard,target:ve,source:J,reenter:le,eventType:ee,toJSON:()=>({...De,source:`#${J.id}`,target:ve?ve.map(Fe=>`#${Fe.id}`):void 0})};return De}function Wn(J){const ee=new Map;if(J.config.on)for(const oe of Object.keys(J.config.on)){if(oe===i)throw new Error('Null events ("") cannot be specified as a transition key. Use `always: { ... }` instead.');const ae=J.config.on[oe];ee.set(oe,N(ae).map(le=>ln(J,oe,le)))}if(J.config.onDone){const oe=`xstate.done.state.${J.id}`;ee.set(oe,N(J.config.onDone).map(ae=>ln(J,oe,ae)))}for(const oe of J.invoke){if(oe.onDone){const ae=`xstate.done.actor.${oe.id}`;ee.set(ae,N(oe.onDone).map(le=>ln(J,ae,le)))}if(oe.onError){const ae=`xstate.error.actor.${oe.id}`;ee.set(ae,N(oe.onError).map(le=>ln(J,ae,le)))}if(oe.onSnapshot){const ae=`xstate.snapshot.${oe.id}`;ee.set(ae,N(oe.onSnapshot).map(le=>ln(J,ae,le)))}}for(const oe of J.after){let ae=ee.get(oe.eventType);ae||(ae=[],ee.set(oe.eventType,ae)),ae.push(oe)}return ee}function fn(J,ee){const oe=typeof ee=="string"?J.states[ee]:ee?J.states[ee.target]:void 0;if(!oe&&ee)throw new Error(`Initial state node "${ee}" not found on parent state node #${J.id}`);const ae={source:J,actions:!ee||typeof ee=="string"?[]:A(ee.actions),eventType:null,reenter:!1,target:oe?[oe]:[],toJSON:()=>({...ae,source:`#${J.id}`,target:oe?[`#${oe.id}`]:[]})};return ae}function oo(J,ee){if(ee!==void 0)return ee.map(oe=>{if(typeof oe!="string")return oe;if(Ht(oe))return J.machine.getStateNodeById(oe);const ae=oe[0]===n;if(ae&&!J.parent)return xs(J,oe.slice(1));const le=ae?J.key+oe:oe;if(J.parent)try{return xs(J.parent,le)}catch(ve){throw new Error(`Invalid transition definition for state node '${J.id}': +${ve.message}`)}else throw new Error(`Invalid target: "${oe}" is not a valid target from the root node. Did you mean ".${oe}"?`)})}function Yo(J){const ee=L(J.config.target);return ee?{target:ee.map(oe=>typeof oe=="string"?xs(J.parent,oe):oe)}:J.parent.initial}function jo(J){return J.type==="history"}function ui(J){const ee=Dl(J);for(const oe of ee)for(const ae of Ye(oe,J))ee.add(ae);return ee}function Dl(J){const ee=new Set;function oe(ae){if(!ee.has(ae)){if(ee.add(ae),ae.type==="compound")oe(ae.initial.target[0]);else if(ae.type==="parallel")for(const le of ke(ae))oe(le)}}return oe(J),ee}function Ao(J,ee){if(Ht(ee))return J.machine.getStateNodeById(ee);if(!J.states)throw new Error(`Unable to retrieve child state '${ee}' from '${J.id}'; no child states exist.`);const oe=J.states[ee];if(!oe)throw new Error(`Child state '${ee}' does not exist on '${J.id}'`);return oe}function xs(J,ee){if(typeof ee=="string"&&Ht(ee))try{return J.machine.getStateNodeById(ee)}catch{}const oe=C(ee).slice();let ae=J;for(;oe.length;){const le=oe.shift();if(!le.length)break;ae=Ao(ae,le)}return ae}function ws(J,ee){if(typeof ee=="string"){const le=J.states[ee];if(!le)throw new Error(`State '${ee}' does not exist on '${J.id}'`);return[J,le]}const oe=Object.keys(ee),ae=oe.map(le=>Ao(J,le)).filter(Boolean);return[J.machine.root,J].concat(ae,oe.reduce((le,ve)=>{const De=Ao(J,ve);if(!De)return le;const Fe=ws(De,ee[ve]);return le.concat(Fe)},[]))}function zc(J,ee,oe,ae){const le=Ao(J,ee).next(oe,ae);return!le||!le.length?J.next(oe,ae):le}function Pl(J,ee,oe,ae){const le=Object.keys(ee),ve=Ao(J,le[0]),De=ks(ve,ee[le[0]],oe,ae);return!De||!De.length?J.next(oe,ae):De}function lh(J,ee,oe,ae){const le=[];for(const ve of Object.keys(ee)){const De=ee[ve];if(!De)continue;const Fe=Ao(J,ve),rt=ks(Fe,De,oe,ae);rt&&le.push(...rt)}return le.length?le:J.next(oe,ae)}function ks(J,ee,oe,ae){return typeof ee=="string"?zc(J,ee,oe,ae):Object.keys(ee).length===1?Pl(J,ee,oe,ae):lh(J,ee,oe,ae)}function tu(J){return Object.keys(J.states).map(ee=>J.states[ee]).filter(ee=>ee.type==="history")}function Xo(J,ee){let oe=J;for(;oe.parent&&oe.parent!==ee;)oe=oe.parent;return oe.parent===ee}function Tc(J,ee){const oe=new Set(J),ae=new Set(ee);for(const le of oe)if(ae.has(le))return!0;for(const le of ae)if(oe.has(le))return!0;return!1}function _s(J,ee,oe){const ae=new Set;for(const le of J){let ve=!1;const De=new Set;for(const Fe of ae)if(Tc(Mr([le],ee,oe),Mr([Fe],ee,oe)))if(Xo(le.source,Fe.source))De.add(Fe);else{ve=!0;break}if(!ve){for(const Fe of De)ae.delete(Fe);ae.add(le)}}return Array.from(ae)}function ru(J){const[ee,...oe]=J;for(const ae of Ye(ee,void 0))if(oe.every(le=>Xo(le,ae)))return ae}function Ss(J,ee){if(!J.target)return[];const oe=new Set;for(const ae of J.target)if(jo(ae))if(ee[ae.id])for(const le of ee[ae.id])oe.add(le);else for(const le of Ss(Yo(ae),ee))oe.add(le);else oe.add(ae);return[...oe]}function Ko(J,ee){const oe=Ss(J,ee);if(!oe)return;if(!J.reenter&&oe.every(le=>le===J.source||Xo(le,J.source)))return J.source;const ae=ru(oe.concat(J.source));if(ae)return ae;if(!J.reenter)return J.source.machine.root}function Mr(J,ee,oe){const ae=new Set;for(const le of J)if(le.target?.length){const ve=Ko(le,oe);le.reenter&&le.source===ve&&ae.add(ve);for(const De of ee)Xo(De,ve)&&ae.add(De)}return[...ae]}function Pn(J,ee){if(J.length!==ee.size)return!1;for(const oe of J)if(!ee.has(oe))return!1;return!0}function Do(J,ee,oe,ae,le,ve){if(!J.length)return ee;const De=new Set(ee._nodes);let Fe=ee.historyValue;const rt=_s(J,De,Fe);let lt=ee;le||([lt,Fe]=za(lt,ae,oe,rt,De,Fe,ve,oe.actionExecutor)),lt=ho(lt,ae,oe,rt.flatMap(Ke=>Ke.actions),ve,void 0),lt=jc(lt,ae,oe,rt,De,ve,Fe,le);const Ot=[...De];lt.status==="done"&&(lt=ho(lt,ae,oe,Ot.sort((Ke,Ze)=>Ze.order-Ke.order).flatMap(Ke=>Ke.exit),ve,void 0));try{return Fe===ee.historyValue&&Pn(ee._nodes,De)?lt:Gr(lt,{_nodes:Ot,historyValue:Fe})}catch(Ke){throw Ke}}function Ml(J,ee,oe,ae,le){if(ae.output===void 0)return;const ve=p(le.id,le.output!==void 0&&le.parent?z(le.output,J.context,ee,oe.self):void 0);return z(ae.output,J.context,ve,oe.self)}function jc(J,ee,oe,ae,le,ve,De,Fe){let rt=J;const lt=new Set,Ot=new Set;sh(ae,De,Ot,lt),Fe&&Ot.add(J.machine.root);const Ke=new Set;for(const Ze of[...lt].sort((pt,vt)=>pt.order-vt.order)){le.add(Ze);const pt=[];pt.push(...Ze.entry);for(const vt of Ze.invoke)pt.push(ce(vt.src,{...vt,syncSnapshot:!!vt.onSnapshot}));if(Ot.has(Ze)){const vt=Ze.initial.actions;pt.push(...vt)}if(rt=ho(rt,ee,oe,pt,ve,Ze.invoke.map(vt=>vt.id)),Ze.type==="final"){const vt=Ze.parent;let Lt=vt?.type==="parallel"?vt:vt?.parent,Mo=Lt||Ze;for(vt?.type==="compound"&&ve.push(p(vt.id,Ze.output!==void 0?z(Ze.output,rt.context,ee,oe.self):void 0));Lt?.type==="parallel"&&!Ke.has(Lt)&&qt(le,Lt);)Ke.add(Lt),ve.push(p(Lt.id)),Mo=Lt,Lt=Lt.parent;if(Lt)continue;rt=Gr(rt,{status:"done",output:Ml(rt,ee,oe,rt.machine.root,Mo)})}}return rt}function sh(J,ee,oe,ae){for(const le of J){const ve=Ko(le,ee);for(const Fe of le.target||[])!jo(Fe)&&(le.source!==Fe||le.source!==ve||le.reenter)&&(ae.add(Fe),oe.add(Fe)),Li(Fe,ee,oe,ae);const De=Ss(le,ee);for(const Fe of De){const rt=Ye(Fe,ve);ve?.type==="parallel"&&rt.push(ve),Ra(ae,ee,oe,rt,!le.source.parent&&le.reenter?void 0:ve)}}}function Li(J,ee,oe,ae){if(jo(J))if(ee[J.id]){const le=ee[J.id];for(const ve of le)ae.add(ve),Li(ve,ee,oe,ae);for(const ve of le)Nl(ve,J.parent,ae,ee,oe)}else{const le=Yo(J);for(const ve of le.target)ae.add(ve),le===J.parent?.initial&&oe.add(J.parent),Li(ve,ee,oe,ae);for(const ve of le.target)Nl(ve,J.parent,ae,ee,oe)}else if(J.type==="compound"){const[le]=J.initial.target;jo(le)||(ae.add(le),oe.add(le)),Li(le,ee,oe,ae),Nl(le,J,ae,ee,oe)}else if(J.type==="parallel")for(const le of ke(J).filter(ve=>!jo(ve)))[...ae].some(ve=>Xo(ve,le))||(jo(le)||(ae.add(le),oe.add(le)),Li(le,ee,oe,ae))}function Ra(J,ee,oe,ae,le){for(const ve of ae)if((!le||Xo(ve,le))&&J.add(ve),ve.type==="parallel")for(const De of ke(ve).filter(Fe=>!jo(Fe)))[...J].some(Fe=>Xo(Fe,De))||(J.add(De),Li(De,ee,oe,J))}function Nl(J,ee,oe,ae,le){Ra(oe,ae,le,Ye(J,ee))}function za(J,ee,oe,ae,le,ve,De,Fe){let rt=J;const lt=Mr(ae,le,ve);lt.sort((Ke,Ze)=>Ze.order-Ke.order);let Ot;for(const Ke of lt)for(const Ze of tu(Ke)){let pt;Ze.history==="deep"?pt=vt=>be(vt)&&Xo(vt,Ke):pt=vt=>vt.parent===Ke,Ot??={...ve},Ot[Ze.id]=Array.from(le).filter(pt)}for(const Ke of lt)rt=ho(rt,ee,oe,[...Ke.exit,...Ke.invoke.map(Ze=>je(Ze.id))],De,void 0),le.delete(Ke);return[rt,Ot||ve]}function Ta(J,ee){return J.implementations.actions[ee]}function pi(J,ee,oe,ae,le,ve){const{machine:De}=J;let Fe=J;for(const rt of ae){const lt=typeof rt=="function",Ot=lt?rt:Ta(De,typeof rt=="string"?rt:rt.type),Ke={context:Fe.context,event:ee,self:oe.self,system:oe.system},Ze=lt||typeof rt=="string"?void 0:"params"in rt?typeof rt.params=="function"?rt.params({context:Fe.context,event:ee}):rt.params:void 0;if(!Ot||!("resolve"in Ot)){oe.actionExecutor({type:typeof rt=="string"?rt:typeof rt=="object"?rt.type:rt.name||"(anonymous)",info:Ke,params:Ze,exec:Ot});continue}const pt=Ot,[vt,Lt,Mo]=pt.resolve(oe,Fe,Ke,Ze,Ot,le);Fe=vt,"retryResolve"in pt&&ve?.push([pt,Lt]),"execute"in pt&&oe.actionExecutor({type:pt.type,info:Ke,params:Lt,exec:pt.execute.bind(null,oe,Lt)}),Mo&&(Fe=pi(Fe,ee,oe,Mo,le,ve))}return Fe}function ho(J,ee,oe,ae,le,ve){const De=ve?[]:void 0,Fe=pi(J,ee,oe,ae,{internalQueue:le,deferredActorIds:ve},De);return De?.forEach(([rt,lt])=>{rt.retryResolve(oe,Fe,lt)}),Fe}function Wr(J,ee,oe,ae){let le=J;const ve=[];function De(lt,Ot,Ke){oe.system._sendInspectionEvent({type:"@xstate.microstep",actorRef:oe.self,event:Ot,snapshot:lt,_transitions:Ke}),ve.push(lt)}if(ee.type===d)return le=Gr(Ac(le,ee,oe),{status:"stopped"}),De(le,ee,[]),{snapshot:le,microstates:ve};let Fe=ee;if(Fe.type!==s){const lt=Fe,Ot=I(lt),Ke=Dc(lt,le);if(Ot&&!Ke.length)return le=Gr(J,{status:"error",error:lt.error}),De(le,lt,[]),{snapshot:le,microstates:ve};le=Do(Ke,J,oe,Fe,!1,ae),De(le,lt,Ke)}let rt=!0;for(;le.status==="active";){let lt=rt?Fi(le,Fe):[];const Ot=lt.length?le:void 0;if(!lt.length){if(!ae.length)break;Fe=ae.shift(),lt=Dc(Fe,le)}le=Do(lt,le,oe,Fe,!1,ae),rt=le!==Ot,De(le,Fe,lt)}return le.status!=="active"&&Ac(le,Fe,oe),{snapshot:le,microstates:ve}}function Ac(J,ee,oe){return ho(J,ee,oe,Object.values(J.children).map(ae=>je(ae)),[],void 0)}function Dc(J,ee){return ee.machine.getTransitionData(ee,J)}function Fi(J,ee){const oe=new Set,ae=J._nodes.filter(be);for(const le of ae)e:for(const ve of[le].concat(Ye(le,void 0)))if(ve.always){for(const De of ve.always)if(De.guard===void 0||Et(De.guard,J.context,ee,J)){oe.add(De);break e}}return _s(Array.from(oe),new Set(J._nodes),J.historyValue)}function ja(J,ee){const oe=yt(ws(J,ee));return er(J,[...oe])}function nu(J){return!!J&&typeof J=="object"&&"machine"in J&&"value"in J}const Es=function(J){return k(J,this.value)},ou=function(J){return this.tags.has(J)},ch=function(J){const ee=this.machine.getTransitionData(this,J);return!!ee?.length&&ee.some(oe=>oe.target!==void 0||oe.actions.length)},Cs=function(){const{_nodes:J,tags:ee,machine:oe,getMeta:ae,toJSON:le,can:ve,hasTag:De,matches:Fe,...rt}=this;return{...rt,tags:Array.from(ee)}},$s=function(){return this._nodes.reduce((J,ee)=>(ee.meta!==void 0&&(J[ee.id]=ee.meta),J),{})};function Po(J,ee){return{status:J.status,output:J.output,error:J.error,machine:ee,context:J.context,_nodes:J._nodes,value:er(ee.root,J._nodes),tags:new Set(J._nodes.flatMap(oe=>oe.tags)),children:J.children,historyValue:J.historyValue||{},matches:Es,hasTag:ou,can:ch,getMeta:$s,toJSON:Cs}}function Gr(J,ee={}){return Po({...J,...ee},J.machine)}function iu(J){if(typeof J!="object"||J===null)return{};const ee={};for(const oe in J){const ae=J[oe];Array.isArray(ae)&&(ee[oe]=ae.map(le=>({id:le.id})))}return ee}function dh(J,ee){const{_nodes:oe,tags:ae,machine:le,children:ve,context:De,can:Fe,hasTag:rt,matches:lt,getMeta:Ot,toJSON:Ke,...Ze}=J,pt={};for(const vt in ve){const Lt=ve[vt];pt[vt]={snapshot:Lt.getPersistedSnapshot(ee),src:Lt.src,systemId:Lt.systemId,syncSnapshot:Lt._syncSnapshot}}return{...Ze,context:Aa(De),children:pt,historyValue:iu(Ze.historyValue)}}function Aa(J){let ee;for(const oe in J){const ae=J[oe];if(ae&&typeof ae=="object")if("sessionId"in ae&&"send"in ae&&"ref"in ae)ee??=Array.isArray(J)?J.slice():{...J},ee[oe]={xstate$$type:Y,id:ae.id};else{const le=Aa(ae);le!==ae&&(ee??=Array.isArray(J)?J.slice():{...J},ee[oe]=le)}}return ee??J}function au(J,ee,oe,ae,{event:le,id:ve,delay:De},{internalQueue:Fe}){const rt=ee.machine.implementations.delays;if(typeof le=="string")throw new Error(`Only event objects may be used with raise; use raise({ type: "${le}" }) instead`);const lt=typeof le=="function"?le(oe,ae):le;let Ot;if(typeof De=="string"){const Ke=rt&&rt[De];Ot=typeof Ke=="function"?Ke(oe,ae):Ke}else Ot=typeof De=="function"?De(oe,ae):De;return typeof Ot!="number"&&Fe.push(lt),[ee,{event:lt,id:ve,delay:Ot},void 0]}function Da(J,ee){const{event:oe,delay:ae,id:le}=ee;if(typeof ae=="number"){J.defer(()=>{const ve=J.self;J.system.scheduler.schedule(ve,ve,oe,ae,le)});return}}function lu(J,ee){function oe(ae,le){}return oe.type="xstate.raise",oe.event=J,oe.id=ee?.id,oe.delay=ee?.delay,oe.resolve=au,oe.execute=Da,oe}return ft.$$ACTOR_TYPE=Y,ft.Actor=W,ft.NULL_EVENT=i,ft.ProcessingStatus=K,ft.STATE_DELIMITER=n,ft.XSTATE_ERROR=c,ft.XSTATE_STOP=d,ft.and=qe,ft.cancel=re,ft.cloneMachineSnapshot=Gr,ft.createActor=Z,ft.createErrorActorEvent=m,ft.createInitEvent=v,ft.createInvokeId=P,ft.createMachineSnapshot=Po,ft.evaluateGuard=Et,ft.formatInitialTransition=fn,ft.formatTransition=ln,ft.formatTransitions=Wn,ft.getAllOwnEventDescriptors=B,ft.getAllStateNodes=yt,ft.getCandidates=Kr,ft.getDelayedTransitions=Gt,ft.getInitialStateNodes=Dl,ft.getPersistedSnapshot=dh,ft.getStateNodeByPath=xs,ft.getStateNodes=ws,ft.interpret=Q,ft.isInFinalState=qt,ft.isMachineSnapshot=nu,ft.isStateId=Ht,ft.macrostep=Wr,ft.mapValues=R,ft.matchesState=k,ft.microstep=Do,ft.not=St,ft.or=It,ft.pathToStateValue=$,ft.raise=lu,ft.resolveActionsAndContext=ho,ft.resolveReferencedActor=V,ft.resolveStateValue=ja,ft.spawnChild=ce,ft.stateIn=st,ft.stop=Be,ft.stopChild=je,ft.toArray=A,ft.toObserver=H,ft.toStatePath=C,ft.toTransitionConfigArray=N,ft.transitionNode=ks,ft}var Yee;function dYe(){if(Yee)return Nd;Yee=1,Object.defineProperty(Nd,"__esModule",{value:!0});var e=I2();return RR(),Nd.and=e.and,Nd.evaluateGuard=e.evaluateGuard,Nd.not=e.not,Nd.or=e.or,Nd.stateIn=e.stateIn,Nd}var Bd=dYe();const uYe=B3(({sendBack:e})=>{const r=$w([["Escape",n=>{n.stopPropagation(),e({type:"close"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r,{capture:!0}),()=>{document.body.removeEventListener("keydown",r,{capture:!0})}}),pl=ns({actors:{relationshipDetails:cYe,elementDetails:aYe,relationshipsBrowser:Vee,hotkey:uYe},guards:{"has overlays?":({context:e})=>e.overlays.length>0,"close specific overlay?":({context:e,event:r})=>(ht(r,"close"),pw(r.actorId)&&e.overlays.some(n=>n.id===r.actorId)),"last: is relationshipDetails?":({context:e})=>dd(e.overlays)?.type==="relationshipDetails","last: is relationshipsBrowser?":({context:e})=>dd(e.overlays)?.type==="relationshipsBrowser"}}),pYe=()=>pl.enqueueActions(({context:e,enqueue:r})=>{if(e.overlays.length===0)return;const n=dd(e.overlays)?.id;n&&(r.sendTo(n,{type:"close"}),r.stopChild(n),r.assign({overlays:e.overlays.filter(o=>o.id!==n)}))}),hYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"close");const o=n.actorId;if(!pw(o))return;const i=e.overlays.find(a=>a.id===o)?.id;i&&(r.sendTo(i,{type:"close"}),r.stopChild(i),r.assign({overlays:e.overlays.filter(a=>a.id!==i)}))}),Xee=()=>pl.enqueueActions(({context:e,enqueue:r})=>{for(const{id:n}of U$e(e.overlays))r.sendTo(n,{type:"close"}),r.stopChild(n);r.assign({overlays:[]})}),fYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{if(ht(n,"open.elementDetails"),e.overlays.some(i=>i.type==="elementDetails"&&i.subject===n.subject))return;const o=`elementDetails-${e.seq}`;r.spawnChild("elementDetails",{id:o,input:n,syncSnapshot:!0}),r.assign({seq:e.seq+1,overlays:[...e.overlays,{id:o,type:"elementDetails",subject:n.subject}]})}),gYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"open.relationshipDetails");const o=dd(e.overlays);if(o?.type==="relationshipDetails"){r.sendTo(o.id,{...n,type:"navigate.to"});return}const i=`relationshipDetails-${e.seq}`;r.spawnChild("relationshipDetails",{id:i,input:n,syncSnapshot:!0}),r.assign({seq:e.seq+1,overlays:[...e.overlays,{id:i,type:"relationshipDetails"}]})}),mYe=()=>pl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"open.relationshipsBrowser");const o=dd(e.overlays);if(o?.type==="relationshipsBrowser"){r.sendTo(o.id,{type:"navigate.to",subject:n.subject,viewId:n.viewId});return}const i=`relationshipsBrowser-${e.seq}`;r.spawnChild("relationshipsBrowser",{id:i,input:n,syncSnapshot:!0}),r.assign({seq:e.seq+1,overlays:[...e.overlays,{id:i,type:"relationshipsBrowser",subject:n.subject}]})}),Kee=()=>pl.enqueueActions(({enqueue:e,event:r})=>{switch(ht(r,["open.elementDetails","open.relationshipDetails","open.relationshipsBrowser"]),r.type){case"open.elementDetails":e(fYe());break;case"open.relationshipDetails":e(gYe());break;case"open.relationshipsBrowser":e(mYe());break}}),yYe=()=>pl.spawnChild("hotkey",{id:"hotkey"}),Zee=()=>pl.stopChild("hotkey"),Qee=()=>pl.enqueueActions(({enqueue:e,context:r})=>{r.overlays.length===0&&e.raise({type:"close"})}),vYe=pl.createMachine({id:"overlays",context:()=>({seq:1,overlays:[]}),initial:"idle",states:{idle:{on:{"open.*":{actions:Kee(),target:"active"}}},active:{entry:[yYe()],exit:[Zee()],on:{"open.*":{actions:Kee()},close:[{guard:Bd.not("has overlays?"),target:"idle"},{guard:"close specific overlay?",actions:[hYe(),Qee()]},{actions:[pYe(),Qee()]}],"close.all":{actions:[Xee()],target:"idle"}}},final:{entry:[Xee(),Zee()],type:"final"}}}),bYe=vYe,xYe=ns({actions:{"change searchValue":Bt({searchValue:({event:e,context:r})=>(ht(e,["change.search","open"]),e.search??r.searchValue)}),"reset pickViewFor":Bt({pickViewFor:()=>null})}}).createMachine({id:"search",context:{openedWithSearch:null,searchValue:"",pickViewFor:null},initial:"inactive",on:{close:{target:".inactive",actions:"reset pickViewFor"}},states:{inactive:{on:{open:{target:"opened",actions:[Bt({openedWithSearch:({event:e})=>e.search??null,searchValue:({event:e,context:r})=>e.search??r.searchValue})]}}},opened:{on:{open:{actions:"change searchValue"},"change.search":{actions:"change searchValue"},"pickview.open":{target:"pickView",actions:Bt({pickViewFor:({event:e})=>e.elementFqn})}}},pickView:{on:{"pickview.close":{target:"opened",actions:"reset pickViewFor"}}}}}),wYe=xYe,kYe=B3(({sendBack:e})=>{const r=$w([["Escape",o=>{o.stopPropagation(),e({type:"key.esc"})},{preventDefault:!0}]]),n=$w([["ArrowLeft",o=>{o.stopPropagation(),e({type:"key.arrow.left"})},{preventDefault:!0}],["ArrowUp",o=>{o.stopPropagation(),e({type:"key.arrow.up"})},{preventDefault:!0}],["ArrowRight",o=>{o.stopPropagation(),e({type:"key.arrow.right"})},{preventDefault:!0}],["ArrowDown",o=>{o.stopPropagation(),e({type:"key.arrow.down"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r),document.body.addEventListener("keydown",n,{capture:!0}),()=>{document.body.removeEventListener("keydown",r),document.body.removeEventListener("keydown",n,{capture:!0})}}),_Ye=B3(({sendBack:e})=>{const r=()=>{e({type:"media.print.on"})},n=()=>{e({type:"media.print.off"})};return window.addEventListener("beforeprint",r),window.addEventListener("afterprint",n),()=>{window.removeEventListener("beforeprint",r),window.removeEventListener("afterprint",n)}}),O2=e=>{let r=e.toggledFeatures;const n=Zn(e.activeWalkthrough),o=e.features.enableCompareWithLatest&&(r.enableCompareWithLatest??!1)&&Zn(e.view._layout)&&!n,i=e.features.enableReadOnly||(r.enableReadOnly??!1)||n||e.dynamicViewVariant==="sequence"&&e.view._type==="dynamic"||o&&e.view._layout==="auto";return{enableCompareWithLatest:o,enableReadOnly:i}},zR=e=>O2(e).enableReadOnly,Qe=ns({actors:{hotkeyActorLogic:kYe,overlaysActorLogic:bYe,searchActorLogic:wYe,mediaPrintActorLogic:_Ye,editorActor:Aee},guards:{isReady:({context:e})=>e.initialized.xydata&&e.initialized.xyflow,"enabled: Editor":({context:e})=>e.features.enableEditor,"enabled: FitView":({context:e})=>e.features.enableFitView,"enabled: FocusMode":({context:e})=>e.features.enableFocusMode&&zR(e),"enabled: Readonly":({context:e})=>zR(e),"enabled: RelationshipDetails":({context:e})=>e.features.enableRelationshipDetails,"enabled: Search":({context:e})=>e.features.enableSearch,"enabled: ElementDetails":({context:e})=>e.features.enableElementDetails,"enabled: OpenSource":({context:e})=>e.features.enableVscode,"enabled: DynamicViewWalkthrough":({context:e})=>e.features.enableDynamicViewWalkthrough,"focus.node: autoUnfocus":({event:e})=>(ht(e,"focus.node"),e.autoUnfocus===!0),"enabled: Overlays":({context:e})=>e.features.enableElementDetails||e.features.enableRelationshipBrowser||e.features.enableRelationshipDetails,"not readonly":({context:e})=>!zR(e),"is dynamic view":({context:e})=>e.view._type==="dynamic","is same view":({context:e,event:r})=>{if(ht(r,["update.view","navigate.to"]),r.type==="update.view")return e.view.id===r.view.id;if(r.type==="navigate.to")return e.view.id===r.viewId;Qo(r.type)},"is another view":({context:e,event:r})=>{if(ht(r,["update.view","navigate.to"]),r.type==="update.view")return e.view.id!==r.view.id;if(r.type==="navigate.to")return e.view.id!==r.viewId;Qo(r.type)},"click: node has modelFqn":({event:e})=>(ht(e,"xyflow.nodeClick"),"modelFqn"in e.node.data),"click: selected node":({event:e})=>(ht(e,"xyflow.nodeClick"),e.node.selected===!0),"click: same node":({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),e.lastClickedNode?.id===r.node.id),"click: focused node":({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),e.focusedNode===r.node.id),"click: node has connections":({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),e.xyedges.some(n=>n.source===r.node.id||n.target===r.node.id)),"click: selected edge":({event:e})=>(ht(e,["xyflow.edgeClick","xyflow.edgeDoubleClick"]),e.edge.selected===!0||e.edge.data.active===!0)}}),zn={idle:"#idle",focused:"#focused",walkthrough:"#walkthrough",printing:"#printing",navigating:"#navigating"},SYe=[["path",{d:"M3 13a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v6a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2z",key:"svg-0"}],["path",{d:"M9 16a1 1 0 1 0 2 0a1 1 0 0 0 -2 0",key:"svg-1"}],["path",{d:"M13 11v-4a4 4 0 1 1 8 0v4",key:"svg-2"}]],Jee=wt("outline","lock-open-2","LockOpen2",SYe),EYe=[["path",{d:"M5 13a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v6a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-6z",key:"svg-0"}],["path",{d:"M11 16a1 1 0 1 0 2 0a1 1 0 0 0 -2 0",key:"svg-1"}],["path",{d:"M8 11v-4a4 4 0 1 1 8 0v4",key:"svg-2"}]],CYe=wt("outline","lock","Lock",EYe),$Ye=e=>{const r=O2(e).enableCompareWithLatest&&!!e.view.drifts&&e.view._layout==="auto",n=e.view._type==="dynamic"&&e.dynamicViewVariant==="sequence",o=!Zn(e.activeWalkthrough);return{visible:e.features.enableEditor&&o,disabled:r||n,isReadOnly:e.toggledFeatures.enableReadOnly??!1}},RYe=()=>{const{visible:e,disabled:r,isReadOnly:n}=pa($Ye),o=Mt();return y.jsx(Cn,{mode:"popLayout",children:e&&y.jsxs(pr,{component:wa,layout:"position",layoutDependency:n,disabled:r,onClick:i=>{i.stopPropagation(),!r&&o.toggleFeature("ReadOnly")},initial:{opacity:0,scale:.6},animate:{opacity:1,scale:r?.95:1},exit:{opacity:0,scale:.6},whileTap:{translateY:1},className:Ge("group",qn({gap:"0.5",paddingInline:"xxs",paddingBlock:"xxs",userSelect:"none",layerStyle:"likec4.panel.action",backgroundColor:{base:"none",_notDisabled:{_hover:"likec4.panel.action.bg.hover"}}})),children:[y.jsx(Jee,{size:14,stroke:2,style:{display:n?"none":void 0}}),y.jsx(CYe,{size:14,stroke:2,style:{display:n?void 0:"none"}}),y.jsx(Rr,{className:fe({fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8}),style:{display:n?"block":"none"},children:"Edit"})]})})},zYe=[["path",{d:"M6 4v16a1 1 0 0 0 1.524 .852l13 -8a1 1 0 0 0 0 -1.704l-13 -8a1 1 0 0 0 -1.524 .852z",key:"svg-0"}]],TYe=wt("filled","player-play-filled","PlayerPlayFilled",zYe),ete=S.forwardRef((e,r)=>y.jsx(Vn,{variant:"filled",size:"xs",fw:"500",...e,ref:r,component:wa,whileTap:{scale:.95},layout:"position",layoutId:"trigger-dynamic-walkthrough",className:fe({flexShrink:0})}));function jYe(){const{enableReadOnly:e,enableCompareWithLatest:r}=sr(),n=Mt(),o=g0();let i="Start Dynamic View Walkthrough";switch(!0){case!e:i="Walkthrough not available in Edit mode";break;case r:i="Walkthrough not available when Compare is active";break}return y.jsx(bee,{label:i,children:y.jsx(ete,{onClick:a=>{a.stopPropagation(),o.closeDropdown(),n.startWalkthrough()},initial:{opacity:0,scale:.6,translateX:-10},animate:{opacity:1,scale:1,translateX:0},exit:{opacity:0,translateX:-20},size:"compact-xs",h:26,disabled:!e||r,classNames:{label:fe({display:{base:"none","@/md":"inherit"}}),section:fe({marginInlineStart:{base:"0","@/md":"2"}})},rightSection:y.jsx(TYe,{size:10}),children:"Start"})})}const AYe=S.forwardRef(({value:e,onChange:r},n)=>y.jsx(Rr,{ref:n,layout:"position",children:y.jsx(Of,{size:"xs",value:e,component:Rr,onChange:o=>{He(o==="diagram"||o==="sequence","Invalid dynamic view variant"),r(o)},classNames:{label:fe({fontSize:"xxs"})},data:[{value:"diagram",label:"Diagram"},{value:"sequence",label:"Sequence"}]})}));function DYe(){const e=pa(n=>n.dynamicViewVariant),r=Mt();return y.jsxs(Cn,{children:[y.jsx(AYe,{value:e,onChange:n=>{r.switchDynamicViewVariant(n)}}),y.jsx(jYe,{},"trigger-dynamic-walkthrough")]})}const tte=S.memo(()=>{const{enableSearch:e,enableCompareWithLatest:r}=sr(),n=Mt(),o=lf();return y.jsx(Cn,{children:e&&!r&&y.jsxs(pr,{component:wa,layout:"position",onClick:i=>{i.stopPropagation(),n.openSearch()},whileTap:{scale:.95,translateY:1},className:Ge("group",qn({gap:"xxs",paddingInline:"sm",paddingBlock:"xxs",userSelect:"none",layerStyle:"likec4.panel.action.filled",display:{base:"none","@/md":"flex"}})),children:[y.jsx(gR,{size:14,stroke:2.5}),y.jsx(hr,{css:{fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8,whiteSpace:"nowrap"},children:o?"⌘ + K":"Ctrl + K"})]})})});tte.displayName="SearchControl";const PYe=({context:e})=>{const r=e.view.drifts??null;if(!e.features.enableCompareWithLatest||!r||r.length===0)return{hasEditor:!1,isEnabled:!1,isEditable:!1,isActive:!1,drifts:[],canApplyLatest:!1,layout:e.view._layout??"auto"};const{enableCompareWithLatest:n,enableReadOnly:o}=O2(e);return{hasEditor:e.features.enableEditor,isEnabled:!0,isEditable:!o,isActive:n===!0,drifts:r,canApplyLatest:!r.includes("type-changed"),layout:e.view._layout??"auto"}};function TR(){const e=Xf(),r=pn(e,PYe,Ir),n=at(l=>{if(!r.isEnabled){console.warn("Compare with latest feature is not enabled");return}e.send({type:"emit.onLayoutTypeChange",layoutType:l})}),o=at(l=>{if(!r.isEnabled){console.warn("Compare with latest feature is not enabled");return}const s=l?l==="on":!r.isActive;r.isActive&&!s&&r.layout==="auto"&&n("manual"),e.send({type:"toggle.feature",feature:"CompareWithLatest",forceValue:s})}),i=at(()=>{if(!r.isEnabled){console.warn("Compare with latest feature is not enabled");return}e.send({type:"layout.resetManualLayout"})}),a=at(()=>{if(!r.isEnabled){console.warn("Compare with latest feature is not enabled");return}gt(e.system?.get("editor"),"editor actor not found").send({type:"applyLatestToManual"}),r.isActive&&e.send({type:"toggle.feature",feature:"CompareWithLatest",forceValue:!1})});return[r,{toggleCompare:o,switchLayout:n,resetManualLayout:i,applyLatestToManual:a}]}const MYe=[["path",{d:"M12 9v4",key:"svg-0"}],["path",{d:"M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0z",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]],rte=wt("outline","alert-triangle","AlertTriangle",MYe),nte=S.memo(()=>{const[e,{toggleCompare:r}]=TR(),n=bg(),{drifts:o,isActive:i,isEnabled:a}=e;return y.jsx(Cn,{propagate:!0,children:a&&!i&&y.jsxs(Bf,{position:"bottom-start",openDelay:600,closeDelay:200,floatingStrategy:"absolute",offset:{mainAxis:4,crossAxis:-22},...n,children:[y.jsx(AS,{children:y.jsx(pr,{component:wa,layout:"position",onClick:l=>{l.stopPropagation(),r()},whileTap:{scale:.95,translateY:1},className:Ge("group",eQ({variant:"filled",type:"warning"}),qn({gap:"xxs",padding:"1.5",rounded:"sm",userSelect:"none",cursor:"pointer",fontSize:"xs",fontWeight:600})),children:i?y.jsx(y.Fragment,{children:"Stop Compare"}):y.jsx(rte,{size:18})})}),y.jsx(TS,{p:"0",children:y.jsxs(xy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"View is out of sync",children:[y.jsx(it,{mt:2,size:"sm",lh:"xs",children:"Model has changed since this view was last updated."}),y.jsxs(it,{mt:4,size:"sm",lh:"xs",children:["Detected changes:",o.map(l=>y.jsxs(S.Fragment,{children:[y.jsx("br",{}),y.jsxs("span",{children:["- ",l]})]},l))]}),y.jsx(Vn,{mt:"xs",size:"compact-sm",variant:"default",onClick:l=>{l.stopPropagation(),r()},children:"Compare with current state"})]})})]})})});nte.displayName="ManualLayoutWarning";const NYe=({context:e})=>{const r=e.view,n=e.viewModel?.folder;return{folders:!n||n.isRoot?[]:n.breadcrumbs.map(o=>({folderPath:o.path,title:o.title})),viewId:r.id,viewTitle:e.viewModel?.title??(r.title&&n7(r.title))??"Untitled View",isDynamicView:(e.viewModel?._type??r._type)==="dynamic"}},ote=S.memo(()=>{const e=g0(),{enableNavigationButtons:r,enableDynamicViewWalkthrough:n}=sr(),{folders:o,viewTitle:i,isDynamicView:a}=pn(e.actorRef,NYe,tt),l=o.flatMap(({folderPath:c,title:d},u)=>[y.jsx(pr,{component:wa,className:Ge(M2({dimmed:!0,truncate:!0}),"mantine-active",fe({userSelect:"none",maxWidth:"200px",display:{base:"none","@/md":"block"}})),initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},title:d,onMouseEnter:()=>e.send({type:"breadcrumbs.mouseEnter.folder",folderPath:c}),onMouseLeave:()=>e.send({type:"breadcrumbs.mouseLeave.folder",folderPath:c}),onClick:p=>{p.stopPropagation(),e.send({type:"breadcrumbs.click.folder",folderPath:c})},children:d},c),y.jsx(xee,{},`separator-${u}`)]),s=y.jsx(pr,{component:wa,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:Ge("mantine-active",M2({truncate:!0}),fe({userSelect:"none"})),title:i,onMouseEnter:()=>e.send({type:"breadcrumbs.mouseEnter.viewtitle"}),onMouseLeave:()=>e.send({type:"breadcrumbs.mouseLeave.viewtitle"}),onClick:c=>{c.stopPropagation(),e.send({type:"breadcrumbs.click.viewtitle"})},children:i},"view-title");return y.jsxs(Cn,{propagate:!0,mode:"popLayout",children:[y.jsx(_Ge,{},"burger-button"),r&&y.jsx(CGe,{},"nav-buttons"),y.jsxs(Rr,{layout:"position",className:qn({gap:"1",flexShrink:1,flexGrow:1,overflow:"hidden"}),children:[l,s]},"breadcrumbs"),y.jsxs(Rr,{layout:"position",className:qn({gap:"0.5",flexGrow:0,_empty:{display:"none"}}),children:[y.jsx(TGe,{onOpen:()=>e.closeDropdown()}),y.jsx(MGe,{}),y.jsx(RYe,{})]},"actions"),n&&a&&y.jsx(DYe,{},"dynamic-view-controls"),y.jsx(tte,{},"search-control"),y.jsx(nte,{},"outdated-manual-layout-warning")]})});ote.displayName="NavigationPanelControls";const jR=S.forwardRef(({className:e,truncateLabel:r=!0,...n},o)=>y.jsx(IS,{...n,component:"button",classNames:CVe({truncateLabel:r}),className:Ge("group","mantine-active",e),ref:o}));jR.displayName="NavigationLink";const BYe=S.createContext(null),IYe=[],OYe=()=>{},LYe={projects:IYe,onProjectChange:OYe};function FYe(){return S.useContext(BYe)??LYe}function VYe(){const e=S.useContext(Sy);if(!e)throw new Error("No LikeC4ModelProvider found");return e.projectId}const qYe=S.memo(e=>{const{projects:r,onProjectChange:n}=FYe(),o=VYe();return r.length<=1?null:y.jsxs(Or,{gap:"0.5",alignItems:"baseline",children:[y.jsx(hr,{css:{fontWeight:"400",fontSize:"xxs",color:"likec4.panel.text.dimmed",userSelect:"none"},children:"Project"}),y.jsxs(tn,{withinPortal:!1,shadow:"md",position:"bottom-start",offset:{mainAxis:2},children:[y.jsx(w3,{children:y.jsx(Vn,{tabIndex:-1,autoFocus:!1,variant:"subtle",size:"compact-xs",color:"gray",classNames:{root:fe({fontWeight:"400",fontSize:"xxs",height:"auto",lineHeight:1.1,color:{_light:"mantine.colors.gray[9]"}}),section:fe({'&:is([data-position="right"])':{marginInlineStart:"1"}})},rightSection:y.jsx(a$,{opacity:.5,size:12,stroke:1.5}),children:o})}),y.jsx(vy,{children:r.map(({id:i,title:a})=>y.jsx(by,{onClick:l=>{if(o===i){l.stopPropagation();return}n(i)},children:a??i},i))})]})]})}),HYe=[["path",{d:"M10.52 2.614a2.095 2.095 0 0 1 2.835 -.117l.126 .117l7.905 7.905c.777 .777 .816 2.013 .117 2.836l-.117 .126l-7.905 7.905a2.094 2.094 0 0 1 -2.836 .117l-.126 -.117l-7.907 -7.906a2.096 2.096 0 0 1 -.115 -2.835l.117 -.126l7.905 -7.905zm5.969 9.535l.01 -.116l-.003 -.12l-.016 -.114l-.03 -.11l-.044 -.112l-.052 -.098l-.076 -.105l-.07 -.081l-3.5 -3.5l-.095 -.083a1 1 0 0 0 -1.226 0l-.094 .083l-.083 .094a1 1 0 0 0 0 1.226l.083 .094l1.792 1.793h-5.085l-.117 .007a1 1 0 0 0 0 1.986l.117 .007h5.085l-1.792 1.793l-.083 .094a1 1 0 0 0 1.403 1.403l.094 -.083l3.5 -3.5l.097 -.112l.05 -.074l.037 -.067l.05 -.112l.023 -.076l.025 -.117z",key:"svg-0"}]],UYe=wt("filled","direction-sign-filled","DirectionSignFilled",HYe),WYe=[["path",{d:"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z",key:"svg-0"}]],GYe=wt("filled","star-filled","StarFilled",WYe),YYe=[["path",{d:"M9 3a1 1 0 0 1 .608 .206l.1 .087l2.706 2.707h6.586a3 3 0 0 1 2.995 2.824l.005 .176v8a3 3 0 0 1 -2.824 2.995l-.176 .005h-14a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-11a3 3 0 0 1 2.824 -2.995l.176 -.005h4z",key:"svg-0"}]],XYe=wt("filled","folder-filled","FolderFilled",YYe),ite=iy({siblingSelector:"[data-likec4-focusable]",parentSelector:"[data-likec4-breadcrumbs-dropdown]",activateOnFocus:!1,loop:!0,orientation:"vertical"});function KYe(e){return e.context.searchQuery.trim().length>=2}const ate=S.memo(()=>{const e=g0(),r=wR(KYe);ji("paneClick",()=>{e.closeDropdown()}),ji("nodeClick",()=>{e.closeDropdown()}),ji("edgeClick",()=>{e.closeDropdown()});const n=Eze(o=>{e.send({type:"searchQuery.change",value:o})},250);return y.jsxs(Qs,{className:Ge("nowheel",Ey({layerStyle:"likec4.dropdown",gap:"xs",pointerEvents:"all"})),"data-likec4-breadcrumbs-dropdown":!0,onMouseLeave:()=>e.send({type:"dropdown.mouseLeave"}),onMouseEnter:()=>e.send({type:"dropdown.mouseEnter"}),children:[y.jsx(qYe,{}),y.jsx(Or,{gap:"xs",children:y.jsx(sXe,{defaultValue:e.actorRef.getSnapshot().context.searchQuery,onChange:n})}),y.jsx(oi,{scrollbars:"x",type:"auto",offsetScrollbars:"present",classNames:{root:fe({maxWidth:["calc(100vw - 50px)","calc(100cqw - 50px)"]})},styles:{viewport:{overscrollBehavior:"none"}},children:r?y.jsx(JYe,{}):y.jsx(iXe,{})})]})});ate.displayName="NavigationPanelDropdown";function ZYe(e){return mx(e.context.searchQuery)}const QYe=JN(_i),JYe=S.memo(()=>{const e=Fo(),r=g0(),n=pn(r.actorRef,ZYe),o=S.useDeferredValue(n),i=o.includes(_i),a=i?o.split(_i):o,[l,s]=S.useState([]);return S.useEffect(()=>{s(c=>{const d=Jr(e.views(),Is(u=>i&&u.$view.title?mx(u.$view.title).toLowerCase().includes(o):u.id.toLowerCase().includes(o)||!!u.title?.toLowerCase().includes(o)),j5e(20),C1(),G$e((u,p)=>QYe(u.folder.path,p.folder.path)));return Ir(d,c)?c:d})},[e,o,i]),l.length===0?y.jsx("div",{children:"no results"}):y.jsx(oi,{scrollbars:"xy",offsetScrollbars:!1,className:fe({width:"100%",maxWidth:["calc(100vw - 250px)","calc(100cqw - 250px)"],maxHeight:["calc(100vh - 200px)","calc(100cqh - 200px)"]}),children:y.jsx(hp,{gap:"0.5",children:l.map(c=>y.jsx(tXe,{view:c,highlight:a,onClick:d=>{d.stopPropagation(),r.selectView(c.id)},"data-likec4-focusable":!0,onKeyDown:ite},c.id))})})}),eXe=qn({gap:"xxs",rounded:"sm",px:"xs",py:"xxs",_hover:{backgroundColor:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]"}},_focus:{outline:"none",color:"mantine.colors.primary.lightColor!",backgroundColor:"mantine.colors.primary.lightHover!"}}),lte=fe({_groupFocus:{color:"[inherit!]",transition:"none"}});function tXe({view:e,highlight:r,...n}){const o=e.folder,i=cte[e.id==="index"?"index":e._type],a=y.jsx(tc,{component:"div",className:Ge(lte,M2({truncate:!0}),fe({"& > mark":{backgroundColor:{base:"mantine.colors.yellow[2]/90",_dark:"mantine.colors.yellow[5]/80",_groupFocus:"[transparent]"},color:{_groupFocus:"[inherit!]"}}})),maw:350,highlight:r,children:e.title??e.id},e.id),l=Ge(n.className,"group",eXe);if(o.isRoot)return y.jsxs(pr,{...n,className:l,children:[i,a]});const s=o.breadcrumbs.map(c=>y.jsx(tc,{component:"div",className:Ge(fe({_groupHover:{color:"mantine.colors.dimmed"}}),lte,M2({dimmed:!0,truncate:!0})),maw:170,highlight:i9(r)?r:[],children:c.title},c.path));return s.push(y.jsxs(Or,{gap:"[4px]",children:[i,a]})),y.jsxs(pr,{...n,className:l,children:[ste,y.jsx(y3,{separator:y.jsx(Dd,{size:12,stroke:1.5}),separatorMargin:3,children:s})]})}const rXe=y.jsx(Dd,{size:12,stroke:1.5,className:"mantine-rotate-rtl"}),ste=y.jsx(XYe,{size:16,className:fe({opacity:{base:.3,_groupHover:.5,_groupActive:.5,_groupFocus:.5}})}),L2=fe({opacity:{base:.3,_dark:.5,_groupHover:.8,_groupActive:.8,_groupFocus:.8}}),cte={index:y.jsx(GYe,{size:16,className:L2}),element:y.jsx(ba,{size:18,stroke:2,className:L2}),deployment:y.jsx(aR,{size:16,stroke:1.5,className:L2}),dynamic:y.jsx(UYe,{size:18,className:L2})},nXe=oi.withProps({scrollbars:"y",className:fe({maxHeight:["calc(100vh - 160px)","calc(100cqh - 160px)"]})});function dte(e,r){return{folderPath:e.path,items:[...e.folders.map(n=>({type:"folder",folderPath:n.path,title:n.title,selected:r.selectedFolder.startsWith(n.path)})),...e.views.map(n=>({type:"view",viewType:n.id==="index"?"index":n._type,viewId:n.id,title:n.title??n.id,description:n.description.nonEmpty&&n.description.text||null,selected:n.id===r.viewModel?.id}))]}}const oXe=e=>{const r=e.viewModel;if(!r)return[];const n=r.$model,o=[dte(n.rootViewFolder,e)],i=n.viewFolder(e.selectedFolder);if(!i.isRoot)for(const a of i.breadcrumbs)o.push(dte(a,e));return o},iXe=S.memo(()=>{const e=xGe(oXe,tt);return y.jsx(Or,{gap:"xs",alignItems:"stretch",children:e.flatMap((r,n)=>[n>0&&y.jsx(sp,{orientation:"vertical"},"divider"+n),y.jsx(aXe,{data:r,isLast:n>0&&n==e.length-1},r.folderPath)])})});function aXe({data:e,isLast:r}){const n=S.useRef(null),o=xR(),i=a=>l=>{l.stopPropagation(),a.type==="folder"?o.send({type:"select.folder",folderPath:a.folderPath}):o.send({type:"select.view",viewId:a.viewId})};return Qke(()=>{r&&n.current&&n.current.scrollIntoView({block:"nearest",inline:"nearest",behavior:"smooth"})}),y.jsx(hr,{mb:"1",ref:n,children:y.jsx(nXe,{children:y.jsx(hp,{gap:"0.5",children:e.items.map((a,l)=>y.jsx(lXe,{columnItem:a,onClick:i(a)},`${e.folderPath}/${a.type}/${l}`))})})})}function lXe({columnItem:e,...r}){switch(e.type){case"folder":return y.jsx(jR,{variant:"light",active:e.selected,label:e.title,leftSection:ste,rightSection:rXe,maw:"300px",miw:"200px",...r},e.folderPath);case"view":return y.jsx(jR,{variant:"filled",active:e.selected,label:e.title,description:e.description,leftSection:cte[e.viewType],maw:"300px",miw:"200px",...r},e.viewId);default:Qo(e)}}function sXe(e){const[r,n]=Ys({...e,finalValue:""});return y.jsx(zi,{size:"xs",placeholder:"Search by title or id",variant:"unstyled",height:$e(26),value:r,onKeyDown:ite,onChange:o=>n(o.currentTarget.value),"data-likec4-focusable":!0,classNames:{wrapper:fe({flexGrow:1,backgroundColor:{base:"mantine.colors.gray[1]",_dark:"mantine.colors.dark[5]/80",_hover:{base:"mantine.colors.gray[2]",_dark:"mantine.colors.dark[4]"},_focus:{base:"mantine.colors.gray[2]",_dark:"mantine.colors.dark[4]"}},rounded:"sm"}),input:fe({_placeholder:{color:"mantine.colors.dimmed"},_focus:{outline:"none"}})},style:{"--input-fz":"var(--mantine-font-size-sm)"},leftSection:y.jsx(gR,{size:14}),rightSectionPointerEvents:"all",rightSectionWidth:"min-content",rightSection:!e.value||tp(e.value)?null:y.jsx(Vn,{variant:"subtle",h:"100%",size:"compact-xs",color:"gray",onClick:o=>{o.stopPropagation(),n("")},children:"clear"})})}const cXe=Ed("div",{base:{fontSize:"xs",color:"mantine.colors.dimmed",fontWeight:500,userSelect:"none",mb:"xxs"}});function dXe(e){const r=_$e(e.activeWalkthrough),n=r?e.xyedges.findIndex(o=>o.id===e.activeWalkthrough?.stepId):-1;return{isActive:r,isParallel:r&&Zn(e.activeWalkthrough?.parallelPrefix),hasNext:r&&n0,notes:r?e.xyedges[n]?.data?.notes??null:null}}const uXe=S.memo(()=>{const{isActive:e,notes:r}=pa(dXe),n=r?ur.from(r):ur.EMPTY;return y.jsx(Cn,{children:e&&!n.isEmpty&&y.jsx(ga.div,{layout:"position",className:fe({position:"relative"}),initial:{opacity:0,translateX:-20},animate:{opacity:1,translateX:0},exit:{opacity:0,translateX:-20},children:y.jsxs(oi,{className:Ey({position:"absolute",layerStyle:"likec4.dropdown",gap:"sm",padding:"md",paddingTop:"xxs",pointerEvents:"all",maxWidth:"calc(100cqw - 32px)",minWidth:"calc(100cqw - 50px)",maxHeight:"calc(100cqh - 100px)",width:"max-content",cursor:"default",overflow:"auto",overscrollBehavior:"contain","@/sm":{minWidth:400,maxWidth:550},"@/lg":{maxWidth:700}}),type:"scroll",children:[y.jsx(cXe,{children:"Notes"}),y.jsx(zp,{value:n,fontSize:"sm",emptyText:"No description",className:fe({userSelect:"all"})})]})})})});function pXe({disabled:e=!1,onApplyLatestToManual:r,onResetManualLayout:n}){return y.jsxs(tn,{withinPortal:!1,floatingStrategy:"absolute",shadow:"lg",position:"bottom-start",offset:{mainAxis:4},disabled:e,children:[y.jsx(tn.Target,{children:y.jsxs(pr,{disabled:e,className:Ge("mantine-active",qn({gap:"2",py:"1.5",px:"2",lineHeight:"1",textStyle:"xs",fontWeight:"medium",layerStyle:"likec4.panel.action",userSelect:"none"})),children:[y.jsx(hr,{children:"Actions"}),y.jsx(a$,{size:12,stroke:2,opacity:.7})]})}),y.jsxs(tn.Dropdown,{children:[y.jsxs(tn.Item,{disabled:!r,onClick:r,rightSection:r&&y.jsx(_n,{onClick:nn,position:"right-start",label:y.jsxs(y.Fragment,{children:["Applies changes from the latest auto-layouted",y.jsx("br",{}),"to saved snapshot, preserving (as possible)",y.jsx("br",{}),"manual adjustments.",y.jsx("br",{}),y.jsx("br",{}),"You can undo this action."]}),children:y.jsx(r0,{size:14,stroke:1.7,opacity:.5})}),children:["Sync with latest",!r&&y.jsx(hr,{textStyle:"xs",children:"view type is changed"})]}),y.jsx(tn.Item,{onClick:n,children:"Remove manual layout"})]})]})}function hXe({value:e,onChange:r}){const n=S.useMemo(()=>[{value:"manual",label:"Saved manual"},{value:"auto",label:"Latest auto"}],[]);return y.jsx(Rr,{layout:"position",children:y.jsx(Of,{size:"xs",color:e==="manual"?"orange":"green",value:e,component:Rr,onChange:o=>{He(o==="manual"||o==="auto","Invalid layout type"),r(o)},classNames:{label:fe({fontSize:"xxs",fontWeight:"medium"})},data:n})})}const ute=sp.withProps({mx:2,size:"xs",orientation:"vertical"});function fXe(){const[e,{toggleCompare:r,switchLayout:n,resetManualLayout:o,applyLatestToManual:i}]=TR();return y.jsxs(y.Fragment,{children:[y.jsx(hr,{css:{textStyle:"xs",color:"likec4.panel.text",userSelect:"none"},children:"Compare"}),y.jsx(hXe,{value:e.layout,onChange:n}),e.hasEditor&&y.jsxs(Or,{gap:"1",children:[y.jsx(ute,{}),y.jsx(pXe,{disabled:e.layout==="auto",onResetManualLayout:o,onApplyLatestToManual:e.canApplyLatest?i:void 0}),y.jsx(ute,{})]}),y.jsx(cc,{size:"sm",onClick:a=>{a.stopPropagation(),r()},children:y.jsx(fp,{})})]})}const pte=S.memo(()=>{const{enableCompareWithLatest:e}=sr();return y.jsx(Cn,{children:e&&y.jsx(Rr,{layout:"position",className:qn({gap:"2",layerStyle:"likec4.panel",position:"relative",px:"2",py:"1",pl:"3",pointerEvents:"all"}),initial:{opacity:0,translateX:-20},animate:{opacity:1,translateX:0},exit:{opacity:0,translateX:-20},children:y.jsx(fXe,{})})})});pte.displayName="ComparePanel";const m0=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,position:"right"}),gXe=[["path",{d:"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2",key:"svg-1"}],["path",{d:"M4 16v2a2 2 0 0 0 2 2h2",key:"svg-2"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v2",key:"svg-3"}],["path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2",key:"svg-4"}]],mXe=wt("outline","focus-centered","FocusCentered",gXe),yXe=()=>{const e=Mt();return y.jsx(m0,{label:"Center camera",children:y.jsx(cc,{onClick:()=>e.fitDiagram(),children:y.jsx(mXe,{})})})};fe({gap:"xxs",_empty:{display:"none"}}),fe({top:"md",left:"md",margin:"0",pointerEvents:"none","& :where(button, .action-icon, [role='dialog'])":{pointerEvents:"all"},"& .action-icon":{"--ai-size":"2rem"},"& .tabler-icon":{width:"65%",height:"65%"},_reduceGraphics:{"& .action-icon":{"--ai-radius":"0px"}}}),fe({shadow:{base:"md",_whenPanning:"none"}}),fe({"& .tabler-icon":{width:"65%",height:"65%"}});const F2=fe({flex:"1 1 40%",textAlign:"center",fontWeight:500,padding:"[4px 6px]",fontSize:"11px",zIndex:1}),vXe=fe({background:"mantine.colors.gray[2]",borderRadius:"sm",border:"1px solid",borderColor:"mantine.colors.gray[4]",_dark:{background:"mantine.colors.dark[5]",borderColor:"mantine.colors.dark[4]"}}),bXe=fe({position:"relative",borderRadius:"sm",background:"mantine.colors.gray[3]",boxShadow:"inset 1px 1px 3px 0px #00000024",_dark:{background:"mantine.colors.dark[7]"}}),xXe=fe({position:"absolute",width:8,height:8,border:"2px solid",borderColor:"mantine.colors.gray[5]",borderRadius:3,transform:"translate(-50%, -50%)"}),wXe=[["path",{d:"M5 4h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-6a1 1 0 0 1 1 -1",key:"svg-0"}],["path",{d:"M5 16h4a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-2a1 1 0 0 1 1 -1",key:"svg-1"}],["path",{d:"M15 12h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-6a1 1 0 0 1 1 -1",key:"svg-2"}],["path",{d:"M15 4h4a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-2a1 1 0 0 1 1 -1",key:"svg-3"}]],kXe=wt("outline","layout-dashboard","LayoutDashboard",wXe),_Xe=e=>({viewId:e.view.id,isManualLayout:e.view._layout==="manual",autoLayout:e.view.autoLayout}),SXe=()=>{const e=Mt(),[r,n]=S.useState(null),[o,i]=S.useState({}),{autoLayout:a,viewId:l,isManualLayout:s}=pa(_Xe),{ref:c,hovered:d}=b9(),u=m=>v=>{o[m]=v,i(o)},p=m=>v=>{v.stopPropagation(),e.fitDiagram(),e.triggerChange({op:"change-autolayout",layout:{...a,direction:m}})},f=(m,v)=>{e.fitDiagram(),e.triggerChange({op:"change-autolayout",layout:{...a,nodeSep:m,rankSep:v}})};return s?null:y.jsxs(br,{position:"right-start",clickOutsideEvents:["pointerdown"],radius:"xs",shadow:"lg",offset:{mainAxis:10},children:[y.jsx(kd,{children:y.jsx(m0,{label:"Change Auto Layout",children:y.jsx(cc,{children:y.jsx(kXe,{})})})}),y.jsx(Qs,{className:"likec4-top-left-panel",p:8,pt:6,opacity:d?.6:1,children:y.jsxs(Se,{pos:"relative",ref:n,children:[y.jsx(h3,{target:o[a.direction],parent:r,className:vXe}),y.jsx(Se,{mb:10,children:y.jsx(it,{inline:!0,fz:"xs",c:"dimmed",fw:500,children:"Auto layout:"})}),y.jsxs(Js,{gap:2,wrap:"wrap",justify:"stretch",maw:160,children:[y.jsx(pr,{className:F2,ref:u("TB"),onClick:p("TB"),children:"Top-Bottom"}),y.jsx(pr,{className:F2,ref:u("BT"),onClick:p("BT"),children:"Bottom-Top"}),y.jsx(pr,{className:F2,ref:u("LR"),onClick:p("LR"),children:"Left-Right"}),y.jsx(pr,{className:F2,ref:u("RL"),onClick:p("RL"),children:"Right-Left"})]}),y.jsx(Se,{my:10,children:y.jsx(it,{inline:!0,fz:"xs",c:"dimmed",fw:500,children:"Spacing:"})}),y.jsx(EXe,{ref:c,isVertical:a.direction==="TB"||a.direction==="BT",nodeSep:a.nodeSep,rankSep:a.rankSep,onChange:f},l)]})})]})},kg=400,EXe=S.forwardRef(({isVertical:e,nodeSep:r,rankSep:n,onChange:o},i)=>{e||([r,n]=[n,r]);const a=h7(({x:f,y:m})=>{e||([f,m]=[m,f]),o(Math.round(f*kg),Math.round(m*kg))},[o,e],250,2e3),[l,s]=Ys({defaultValue:dze({x:(r??100)/kg,y:(n??120)/kg}),onChange:a}),{ref:c}=kH(s);let d=Math.round(l.x*kg),u=Math.round(l.y*kg);e||([d,u]=[u,d]);const p=$r(c,i);return y.jsxs(Se,{ref:p,className:bXe,pt:"100%",children:[y.jsx(Se,{className:xXe,style:{left:`${l.x*100}%`,top:`${l.y*100}%`}}),y.jsx(Se,{pos:"absolute",left:2,bottom:2,children:y.jsxs(it,{component:"div",fz:8,c:"dimmed",fw:500,children:[u,", ",d]})})]})}),CXe=[["path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z",key:"svg-0"}],["path",{d:"M10 4l4 16",key:"svg-1"}],["path",{d:"M12 12l-8 2",key:"svg-2"}]],$Xe=wt("outline","layout-collage","LayoutCollage",CXe),RXe=[["path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z",key:"svg-0"}],["path",{d:"M4 12h8",key:"svg-1"}],["path",{d:"M12 15h8",key:"svg-2"}],["path",{d:"M12 9h8",key:"svg-3"}],["path",{d:"M12 4v16",key:"svg-4"}]],hte=wt("outline","layout-board-split","LayoutBoardSplit",RXe),zXe=[["path",{d:"M4 4l0 16",key:"svg-0"}],["path",{d:"M8 9m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z",key:"svg-1"}]],TXe=wt("outline","layout-align-left","LayoutAlignLeft",zXe),jXe=[["path",{d:"M12 4l0 5",key:"svg-0"}],["path",{d:"M12 15l0 5",key:"svg-1"}],["path",{d:"M6 9m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z",key:"svg-2"}]],AXe=wt("outline","layout-align-center","LayoutAlignCenter",jXe),DXe=[["path",{d:"M20 4l0 16",key:"svg-0"}],["path",{d:"M4 9m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z",key:"svg-1"}]],PXe=wt("outline","layout-align-right","LayoutAlignRight",DXe),MXe=[["path",{d:"M4 4l16 0",key:"svg-0"}],["path",{d:"M9 8m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",key:"svg-1"}]],NXe=wt("outline","layout-align-top","LayoutAlignTop",MXe),BXe=[["path",{d:"M4 12l5 0",key:"svg-0"}],["path",{d:"M15 12l5 0",key:"svg-1"}],["path",{d:"M9 6m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",key:"svg-2"}]],IXe=wt("outline","layout-align-middle","LayoutAlignMiddle",BXe),OXe=[["path",{d:"M4 20l16 0",key:"svg-0"}],["path",{d:"M9 4m0 2a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2z",key:"svg-1"}]],LXe=wt("outline","layout-align-bottom","LayoutAlignBottom",OXe),FXe=[["path",{d:"M6 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-0"}],["path",{d:"M18 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-1"}],["path",{d:"M12 19h4.5c.71 0 1.372 -.212 1.924 -.576m1.545 -2.459a3.5 3.5 0 0 0 -3.469 -3.965h-.499m-4 0h-3.501a3.5 3.5 0 0 1 -2.477 -5.972m2.477 -1.028h3.5",key:"svg-2"}],["path",{d:"M3 3l18 18",key:"svg-3"}]],VXe=wt("outline","route-off","RouteOff",FXe),uc=({label:e,icon:r,onClick:n})=>y.jsx(m0,{label:e,withinPortal:!1,position:"top",children:y.jsx(cc,{classNames:{root:"action-icon",icon:fe({"& > svg":{width:"70%",height:"70%"}})},onClick:n,children:r})}),fte=S.memo(()=>{const e=Mt(),r=bg();return y.jsxs(br,{position:"right",offset:{mainAxis:12},clickOutsideEvents:["pointerdown"],...r,children:[y.jsx(kd,{children:y.jsx(m0,{label:"Manual layouting tools",children:y.jsx(cc,{children:y.jsx($Xe,{})})})}),y.jsx(Qs,{className:qn({gap:"0.5",layerStyle:"likec4.panel",padding:"1",pointerEvents:"all"}),children:y.jsxs(dp,{children:[y.jsx(uc,{label:"Align in columns",icon:y.jsx(hte,{}),onClick:n=>{n.stopPropagation(),e.align("Column")}}),y.jsx(uc,{label:"Align left",icon:y.jsx(TXe,{}),onClick:n=>{n.stopPropagation(),e.align("Left")}}),y.jsx(uc,{label:"Align center",icon:y.jsx(AXe,{}),onClick:n=>{n.stopPropagation(),e.align("Center")}}),y.jsx(uc,{label:"Align right",icon:y.jsx(PXe,{}),onClick:n=>{n.stopPropagation(),e.align("Right")}}),y.jsx(uc,{label:"Align in rows",icon:y.jsx(hte,{style:{transform:"rotate(90deg)"}}),onClick:n=>{n.stopPropagation(),e.align("Row")}}),y.jsx(uc,{label:"Align top",icon:y.jsx(NXe,{}),onClick:n=>{n.stopPropagation(),e.align("Top")}}),y.jsx(uc,{label:"Align middle",icon:y.jsx(IXe,{}),onClick:n=>{n.stopPropagation(),e.align("Middle")}}),y.jsx(uc,{label:"Align bottom",icon:y.jsx(LXe,{}),onClick:n=>{n.stopPropagation(),e.align("Bottom")}}),y.jsx(uc,{label:"Reset all control points",icon:y.jsx(VXe,{}),onClick:n=>{n.stopPropagation(),e.resetEdgeControlPoints()}})]})})]})});fte.displayName="ManualLayoutToolsButton";const qXe=()=>{const e=Mt();return y.jsx(m0,{label:"Switch to Read-only",children:y.jsx(cc,{onClick:()=>e.toggleFeature("ReadOnly"),children:y.jsx(Jee,{size:14,stroke:2})})})};function HXe(){const{enableReadOnly:e}=sr();return y.jsx(Cn,{children:!e&&y.jsx(Rr,{layout:"position",className:Ey({gap:"xs",layerStyle:"likec4.panel",position:"relative",cursor:"pointer",padding:"xxs",pointerEvents:"all"}),initial:{opacity:0,translateX:-20},animate:{opacity:1,translateX:0},exit:{opacity:0,translateX:-20},children:y.jsxs(dp,{openDelay:600,closeDelay:120,children:[y.jsx(SXe,{}),y.jsx(fte,{}),y.jsx(yXe,{}),y.jsx(qXe,{})]})})})}const UXe=[["path",{d:"M17 4h-10a3 3 0 0 0 -3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3 -3v-10a3 3 0 0 0 -3 -3z",key:"svg-0"}]],WXe=wt("filled","player-stop-filled","PlayerStopFilled",UXe),GXe=[["path",{d:"M19.496 4.136l-12 7a1 1 0 0 0 0 1.728l12 7a1 1 0 0 0 1.504 -.864v-14a1 1 0 0 0 -1.504 -.864z",key:"svg-0"}],["path",{d:"M4 4a1 1 0 0 1 .993 .883l.007 .117v14a1 1 0 0 1 -1.993 .117l-.007 -.117v-14a1 1 0 0 1 1 -1z",key:"svg-1"}]],YXe=wt("filled","player-skip-back-filled","PlayerSkipBackFilled",GXe),XXe=[["path",{d:"M3 5v14a1 1 0 0 0 1.504 .864l12 -7a1 1 0 0 0 0 -1.728l-12 -7a1 1 0 0 0 -1.504 .864z",key:"svg-0"}],["path",{d:"M20 4a1 1 0 0 1 .993 .883l.007 .117v14a1 1 0 0 1 -1.993 .117l-.007 -.117v-14a1 1 0 0 1 1 -1z",key:"svg-1"}]],KXe=wt("filled","player-skip-forward-filled","PlayerSkipForwardFilled",XXe),gte=Vn.withProps({component:wa,layout:"position",whileTap:{scale:.95},variant:"light",size:"xs",fw:"500"}),ZXe=()=>{const{portalProps:e}=bg();return y.jsx(py,{...e,children:y.jsx(hr,{css:{position:"absolute",margin:"0",padding:"0",top:"0",left:"0",width:"100%",height:"100%",border:"2px solid",borderColor:"mantine.colors.orange[6]",pointerEvents:"none",md:{borderWidth:4}}})})};function QXe(){const e=Mt(),{isParallel:r,hasNext:n,hasPrevious:o,currentStep:i,totalSteps:a}=pa(l=>{const s=l.xyedges.findIndex(c=>c.id===l.activeWalkthrough?.stepId);return{isParallel:Zn(l.activeWalkthrough?.parallelPrefix),hasNext:s0,currentStep:s+1,totalSteps:l.xyedges.length}});return y.jsxs(Cn,{propagate:!0,mode:"popLayout",children:[y.jsx(ete,{variant:"light",size:"xs",color:"orange",mr:"sm",onClick:l=>{l.stopPropagation(),e.stopWalkthrough()},rightSection:y.jsx(WXe,{size:10}),children:"Stop"},"stop-walkthrough"),y.jsx(gte,{disabled:!o,onClick:()=>e.walkthroughStep("previous"),leftSection:y.jsx(YXe,{size:10}),children:"Previous"},"prev"),y.jsxs(ec,{component:Rr,layout:"position",size:"md",radius:"sm",variant:r?"gradient":"transparent",gradient:{from:"red",to:"orange",deg:90},rightSection:y.jsx(Rr,{className:fe({fontSize:"xxs",display:r?"block":"none"}),children:"parallel"}),className:fe({alignItems:"baseline"}),children:[i," / ",a]},"step-badge"),y.jsx(gte,{disabled:!n,onClick:()=>e.walkthroughStep("next"),rightSection:y.jsx(KXe,{size:10}),children:"Next"},"next"),r&&y.jsx(ZXe,{},"parallel-frame")]})}const mte=S.memo(()=>{const e=Mt(),r=VHe(),n=UVe(),o=vE(vGe,{input:{view:r,viewModel:n}});return S.useEffect(()=>{const i=o.on("navigateTo",a=>{e.navigateTo(a.viewId)});return()=>i.unsubscribe()},[o,e]),S.useEffect(()=>{o.send({type:"update.inputs",inputs:{viewModel:n,view:r}})},[n,r]),y.jsx(hp,{css:{alignItems:"flex-start",pointerEvents:"none",position:"absolute",top:"0",left:"0",margin:"0",width:"100%",gap:"xxs",maxWidth:["calc(100vw)","calc(100cqw)"],"@/sm":{margin:"xs",gap:"xs",width:"max-content",maxWidth:["calc(100vw - 2 * {spacing.md})","calc(100cqw - 2 * {spacing.md})"]},_print:{display:"none"}},children:y.jsxs(bGe,{value:o,children:[y.jsx(JXe,{actor:o}),y.jsx(pte,{}),y.jsx(uXe,{}),y.jsx(HXe,{})]})})});mte.displayName="NavigationPanel";const JXe=({actor:e})=>{const r=pn(e,o=>o.hasTag("active")),n=bg();return y.jsxs(br,{offset:{mainAxis:4},opened:r,position:"bottom-start",trapFocus:r,...n,clickOutsideEvents:["pointerdown","mousedown","click"],onDismiss:()=>e.send({type:"dropdown.dismiss"}),children:[y.jsx(eKe,{actor:e}),r&&y.jsx(ate,{})]})},eKe=({actor:e})=>{const r=pa(n=>n.activeWalkthrough!==null);return y.jsx(lg,{children:y.jsx(kd,{children:y.jsx(Rr,{layout:!0,layoutDependency:r,className:qn({layerStyle:"likec4.panel",position:"relative",gap:"xs",cursor:"pointer",pointerEvents:"all",width:"100%"}),onMouseLeave:()=>e.send({type:"breadcrumbs.mouseLeave"}),children:y.jsx(Cn,{children:r?y.jsx(QXe,{}):y.jsx(ote,{})})})})})},AR=fe({position:"absolute",bottom:"0",right:"0",padding:"2",margin:"0",width:"min-content",height:"min-content",_print:{display:"none"}}),tKe=fe({"--ai-radius":"0px",_noReduceGraphics:{"--ai-radius":"{radii.md}"}}),rKe=fe({cursor:"default",userSelect:"none",minWidth:200,maxWidth:"calc(100vw - 20px)",backgroundColor:"mantine.colors.body/80",sm:{minWidth:300,maxWidth:"65vw"},md:{maxWidth:"40vw"},_dark:{backgroundColor:"mantine.colors.dark[6]/80"}}),nKe=fe({padding:"xxs"}),oKe=fe({backgroundColor:"transparent",transition:"all 100ms ease-in",_hover:{transition:"all 120ms ease-out",backgroundColor:"mantine.colors.primary[2]/50"},_dark:{_hover:{backgroundColor:"mantine.colors.dark[3]/40"}}});fe({fill:"var(--likec4-palette-fill)",stroke:"var(--likec4-palette-stroke)",strokeWidth:1,overflow:"visible",width:"100%",height:"auto",filter:` drop-shadow(0 2px 3px rgb(0 0 0 / 22%)) drop-shadow(0 1px 8px rgb(0 0 0 / 10%)) - `});const iKe=fe({fontWeight:500,letterSpacing:"0.2px",paddingTop:"0",paddingBottom:"0",textTransform:"lowercase",transition:"all 150ms ease-in-out",cursor:"pointer","--badge-radius":"2px","--badge-fz":"9.5px","--badge-padding-x":"3px","--badge-height":"13.5px","--badge-lh":"1","--badge-bg":"var(--likec4-palette-fill)","--badge-color":"var(--likec4-palette-hiContrast)"}),aKe=[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 16v.01",key:"svg-1"}],["path",{d:"M12 13a2 2 0 0 0 .914 -3.782a1.98 1.98 0 0 0 -2.414 .483",key:"svg-2"}]],lKe=wt("outline","help-circle","HelpCircle",aKe),sKe=[["path",{d:"M7 7l10 10",key:"svg-0"}],["path",{d:"M17 8l0 9l-9 0",key:"svg-1"}]],cKe=wt("outline","arrow-down-right","ArrowDownRight",sKe),dKe=({value:e})=>{const{title:r,color:n="primary",shape:o="rectangle"}=e,[i,a]=S.useState(null),l=Nt(),s=300,c=200;return y.jsx(b3,{shadow:"none",px:"xs",py:"sm",className:Ge(oKe),"data-likec4-color":n,onMouseEnter:()=>{a(null),l.highlightNotation(e)},onMouseLeave:()=>{a(null),l.unhighlightNotation()},children:y.jsxs(en,{gap:"sm",align:"stretch",wrap:"nowrap",children:[y.jsx(Se,{flex:"0 0 70px",style:{position:"relative",width:70,height:GCe(70*(c/s),0)},children:y.jsx(pm,{data:{shape:o,width:s,height:c}})}),y.jsxs(Lo,{gap:4,flex:1,children:[y.jsx(en,{gap:4,flex:"0 0 auto",children:e.kinds.map(d=>y.jsx(ec,{className:Ge(iKe),onMouseEnter:()=>{a(d),l.highlightNotation(e,d)},onMouseLeave:()=>{a(null),l.highlightNotation(e)},opacity:Bq(i)&&i!==d?.25:1,children:d},d))}),y.jsx(it,{component:"div",fz:"sm",fw:500,lh:"1.25",style:{textWrap:"pretty"},children:r})]})]})})},uKe=e=>({id:e.view.id,notations:e.view.notation?.nodes??[]}),pKe=S.memo(()=>{const e=QC(s=>s.height),{id:r,notations:n}=pa(uKe),[o,i]=sze({key:"notation-webview-collapsed",defaultValue:!0}),a=n.length>0,l=bm();return y.jsxs(Cn,{children:[!a&&y.jsx(ma.div,{initial:{opacity:.75,translateX:"50%"},animate:{opacity:1,translateX:0},exit:{translateX:"100%",opacity:.6},className:AR,children:y.jsx(_n,{label:"View has no notations",color:"orange",...l,children:y.jsx(Ti,{size:"lg",variant:"light",color:"orange",radius:"md",children:y.jsx(rte,{})})})},"empty"),a&&o&&y.jsx(ma.div,{initial:{opacity:.75,translateX:"50%"},animate:{opacity:1,translateX:0},exit:{translateX:"100%",opacity:.6},className:AR,children:y.jsx(_n,{label:"Show notation",color:"dark",fz:"xs",...l,children:y.jsx(lr,{size:"lg",variant:"default",color:"gray",className:tKe,onClick:()=>i(!1),children:y.jsx(lKe,{stroke:1.5})})})},"collapsed"),a&&!o&&y.jsx(ma.div,{initial:{opacity:.75,scale:.2},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.25},className:Ge("react-flow__panel",AR),style:{transformOrigin:"bottom right"},children:y.jsx(Af,{radius:"sm",withBorder:!0,shadow:"lg",className:rKe,children:y.jsxs(up,{defaultValue:"first",radius:"xs",children:[y.jsxs(ky,{children:[y.jsx(lr,{size:"md",variant:"subtle",color:"gray",ml:2,style:{alignSelf:"center"},onClick:()=>i(!0),children:y.jsx(cKe,{stroke:2})}),y.jsx(Lf,{value:"first",fz:"xs",children:"Elements"}),y.jsx(Lf,{value:"second",fz:"xs",disabled:!0,children:"Relationships"})]}),y.jsx(rc,{value:"first",className:nKe,hidden:o,children:y.jsx(oi,{viewportProps:{style:{maxHeight:`min(40vh, ${Math.max(e-60,50)}px)`}},children:y.jsx(Lo,{gap:0,children:n.map((s,c)=>y.jsx(dKe,{value:s},c))})})})]})})},r)]})}),hKe=S.memo(()=>{const[{layout:e,isActive:r},{toggleCompare:n}]=TR(),o=e==="manual"?"var(--mantine-color-orange-6)":"var(--mantine-color-green-6)";return y.jsx(hr,{className:qn({position:"absolute",top:"0",left:"0",width:"full",height:"full",border:"default",borderWidth:4,pointerEvents:"none",alignItems:"flex-start",justifyContent:"center"}),style:{zIndex:"9999",display:r?void 0:"none",borderColor:o},children:y.jsx(fKe,{style:{backgroundColor:o},onClick:i=>{i.stopPropagation(),n()},children:"Close compare"})})}),fKe=pr.withProps({className:fe({fontSize:"xs",fontWeight:"medium",py:"1.5",lineHeight:"1",borderBottomLeftRadius:"sm",borderBottomRightRadius:"sm",transform:"translateY(-4px)",px:"4",color:"mantine.colors.gray[9]",pointerEvents:"all",_active:{transform:"translateY(-3px)"}})}),yte=S.memo(()=>{const{enableControls:e,enableNotations:r,enableSearch:n,enableRelationshipDetails:o,enableReadOnly:i,enableCompareWithLatest:a}=sr(),l=e6e(),s=oBe(),c=aBe(),d=S.useCallback(()=>{console.warn("DiagramUI: resetting error boundary and rerendering..."),l()},[]);return y.jsxs(QS,{onReset:d,children:[e&&y.jsx(gte,{}),s&&y.jsx(uWe,{overlaysActorRef:s}),r&&y.jsx(pKe,{}),n&&c&&y.jsx(ZWe,{searchActorRef:c}),o&&i&&y.jsx(uGe,{}),a&&y.jsx(hKe,{})]})});yte.displayName="DiagramUI";function vte({edgeProps:{data:e},svgPath:r}){const n=e.drifts;return!n||n.length===0?null:y.jsx("path",{className:Ge("react-flow__edge-path",fe({pointerEvents:"none",stroke:"likec4.compare.manual.outline",fill:"none",strokeWidth:{base:"8px",_whenHovered:"12px"},strokeOpacity:.5})),d:r,strokeLinecap:"round"})}const mKe=fe({overflow:"visible",position:"absolute",pointerEvents:"none",top:"0",left:"0",mixBlendMode:{_dark:"screen",_light:"multiply"}}),gKe=fe({fill:"[var(--xy-edge-stroke)]",stroke:"transparent",fillOpacity:.5,strokeWidth:10,r:4,cursor:"grab",pointerEvents:"all",visibility:"hidden",transitionDuration:"120ms",transitionProperty:"visibility, fill, fill-opacity, r",transitionTimingFunction:"inOut",transitionDelay:"20ms",":where([data-likec4-selected='true'], [data-likec4-hovered='true']) &":{visibility:"visible",fillOpacity:1,transitionTimingFunction:"out",transitionDelay:"0ms"},":where([data-likec4-selected='true']) &":{r:6},":is([data-likec4-hovered='true']) &":{r:8},_hover:{fill:"mantine.colors.primary.filledHover",r:10,transitionDuration:"100ms"},_groupActive:{cursor:"grabbing"}});function yKe({sourceX:e,sourceY:r,targetX:n,targetY:o,data:i}){const[a,l]=S.useState(()=>i.controlPoints??c2(i.points));$p(()=>{const c=i.controlPoints??c2(i.points);l(d=>tt(d,c)?d:c)},[i.controlPoints?.map(c=>`${Math.round(c.x)},${Math.round(c.y)}`).join("|")??"",i.points.map(c=>`${Math.round(c[0])},${Math.round(c[1])}`).join("|")]);const s=at(({x:c,y:d})=>{const u=Qr(e,r),p=Qr(n,o),f=[i.dir==="back"?p:u,...a.map(Qr)||[],i.dir==="back"?u:p],g=Qr(c,d).round();let v=0,w=1/0;for(let k=0;k=0))throw new Error(`invalid digits: ${e}`);if(r>15)return xte;const n=10**r;return function(o){this._+=o[0];for(let i=1,a=o.length;iTp)if(!(Math.abs(p*c-d*u)>Tp)||!a)this._append`L${this._x1=r},${this._y1=n}`;else{let g=o-l,v=i-s,w=c*c+d*d,x=g*g+v*v,k=Math.sqrt(w),C=Math.sqrt(f),_=a*Math.tan((DR-Math.acos((w+f-x)/(2*k*C)))/2),$=_/C,R=_/k;Math.abs($-1)>Tp&&this._append`L${r+$*u},${n+$*p}`,this._append`A${a},${a},0,0,${+(p*g>u*v)},${this._x1=r+R*c},${this._y1=n+R*d}`}}arc(r,n,o,i,a,l){if(r=+r,n=+n,o=+o,l=!!l,o<0)throw new Error(`negative radius: ${o}`);let s=o*Math.cos(i),c=o*Math.sin(i),d=r+s,u=n+c,p=1^l,f=l?i-a:a-i;this._x1===null?this._append`M${d},${u}`:(Math.abs(this._x1-d)>Tp||Math.abs(this._y1-u)>Tp)&&this._append`L${d},${u}`,o&&(f<0&&(f=f%MR+MR),f>vKe?this._append`A${o},${o},0,1,${p},${r-s},${n-c}A${o},${o},0,1,${p},${this._x1=d},${this._y1=u}`:f>Tp&&this._append`A${o},${o},0,${+(f>=DR)},${p},${this._x1=r+o*Math.cos(a)},${this._y1=n+o*Math.sin(a)}`)}rect(r,n,o,i){this._append`M${this._x0=this._x1=+r},${this._y0=this._y1=+n}h${o=+o}v${+i}h${-o}Z`}toString(){return this._}}function wKe(e){let r=3;return e.digits=function(n){if(!arguments.length)return r;if(n==null)r=null;else{const o=Math.floor(n);if(!(o>=0))throw new RangeError(`invalid digits: ${n}`);r=o}return e},()=>new xKe(r)}function kKe(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function wte(e){this._context=e}wte.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,r){switch(e=+e,r=+r,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break;case 1:this._point=2;default:this._context.lineTo(e,r);break}}};function _Ke(e){return new wte(e)}function SKe(e){return e[0]}function EKe(e){return e[1]}function CKe(e,r){var n=_m(!0),o=null,i=_Ke,a=null,l=wKe(s);e=typeof e=="function"?e:e===void 0?SKe:_m(e),r=typeof r=="function"?r:r===void 0?EKe:_m(r);function s(c){var d,u=(c=kKe(c)).length,p,f=!1,g;for(o==null&&(a=i(g=l())),d=0;d<=u;++d)!(dbte){var s=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,c=3*e._l01_a*(e._l01_a+e._l12_a);o=(o*s-e._x0*e._l12_2a+e._x2*e._l01_2a)/c,i=(i*s-e._y0*e._l12_2a+e._y2*e._l01_2a)/c}if(e._l23_a>bte){var d=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,u=3*e._l23_a*(e._l23_a+e._l12_a);a=(a*d+e._x1*e._l23_2a-r*e._l12_2a)/u,l=(l*d+e._y1*e._l23_2a-n*e._l12_2a)/u}e._context.bezierCurveTo(o,i,a,l,e._x2,e._y2)}function _te(e,r){this._context=e,this._alpha=r}_te.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,r){if(e=+e,r=+r,this._point){var n=this._x2-e,o=this._y2-r;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+o*o,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break;case 1:this._point=2;break;case 2:this._point=3;default:kte(this,e,r);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=r}},(function e(r){function n(o){return r?new _te(o,r):new PR(o,0)}return n.alpha=function(o){return e(+o)},n})(.5);function Ste(e,r){this._context=e,this._alpha=r}Ste.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,r){if(e=+e,r=+r,this._point){var n=this._x2-e,o=this._y2-r;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+o*o,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:kte(this,e,r);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=r}};const $Ke=(function e(r){function n(o){return r?new Ste(o,r):new BR(o,0)}return n.alpha=function(o){return e(+o)},n})(.5),RKe=CKe().curve($Ke.alpha(.7)).x(e=>Math.round(e.x)).y(e=>Math.round(e.y)),zKe=(e,r)=>cQ(e.sourceNode,r.sourceNode)&&cQ(e.targetNode,r.targetNode);function TKe({props:{sourceX:e,sourceY:r,source:n,target:o,targetX:i,targetY:a,data:l},controlPoints:s,isControlPointDragging:c}){const{sourceNode:d,targetNode:u}=QC(S.useCallback(({nodeLookup:p})=>{const f=mt(p.get(n),`source node ${n} not found`),g=mt(p.get(o),`target node ${o} not found`);return{sourceNode:r$(f),targetNode:r$(g)}},[n,o]),zKe);if(Zn(l.controlPoints)||c){const p={x:e,y:r},f={x:i,y:a},g=6,v=l.dir==="back"?[f,s2(u,hf(s)??p,g),...s,s2(d,dd(s)??f,g),p]:[p,s2(d,hf(s)??f,g),...s,s2(u,dd(s)??p,g),f];return mt(RKe(v))}return OVe(l.points)}const Ete=e=>{const r=e.getPointAtLength(e.getTotalLength()*.5);return{x:Math.round(r.x),y:Math.round(r.y)}},Cte=rR(e=>{const[r,n]=S.useState(!1),o=S.useRef(r);o.current=r;const i=iQ(),a=Nt(),{enableNavigateTo:l,enableReadOnly:s,enableCompareWithLatest:c}=sr(),d=!s,{id:u,selected:p=!1,data:{labelBBox:f,labelXY:g,...v}}=e,w=l&&!r?v.navigateTo:void 0,{controlPoints:x,setControlPoints:k,insertControlPoint:C}=yKe(e);let _=TKe({props:e,controlPoints:x,isControlPointDragging:r}),$=f?.x??0,R=f?.y??0;const[T,A]=S.useState({x:g?.x??$,y:g?.y??R});$p(()=>{if(o.current)return;const V={x:$,y:R};A(B=>d2(B,V)?B:V)},[$,R]);const z=S.useRef(null);S.useEffect(()=>{const V=z.current;if(!V||!r)return;const B=Ete(V);A(F=>d2(F,B)?F:B)},[_,r]);const j=at(V=>{const B=z.current?Ete(z.current):null;f&&B?a.updateEdgeData(u,{controlPoints:V,labelBBox:{...f,...B}}):a.updateEdgeData(u,{controlPoints:V}),a.stopEditing(!0),n(!1)}),I=at(()=>{a.startEditing("edge"),n(!0)}),P=at(()=>{a.stopEditing(),n(!1)}),L=at(V=>{k(V),requestAnimationFrame(()=>{j(V)})}),H=at(V=>{a.startEditing("edge"),n(!0),k(V),requestAnimationFrame(()=>{j(V)})}),M=at(V=>{if(V.pointerType!=="mouse"||V.button!==2&&!p)return;V.stopPropagation(),V.preventDefault(),a.startEditing("edge");const B=C(i.screenToFlowPosition({x:V.clientX,y:V.clientY},{snapToGrid:!1}));a.updateEdgeData(u,{controlPoints:B}),a.stopEditing(!0)});return r&&!e.data.hovered&&(e={...e,data:{...e.data,hovered:!0}}),y.jsxs(y.Fragment,{children:[y.jsxs(a0,{...e,className:fe({"& .react-flow__edge-interaction":{cursor:d&&p?"copy":void 0}}),children:[y.jsx(l0,{edgeProps:e,svgPath:_,ref:z,isDragging:r,...d&&{onEdgePointerDown:M}}),c&&y.jsx(vte,{edgeProps:e,svgPath:_}),f&&y.jsx(S2,{edgeProps:e,labelPosition:r?T:{x:$,y:R},children:y.jsx(i0,{pointerEvents:d?"none":"all",edgeProps:e,children:w&&y.jsx(_2,{onClick:V=>{V.stopPropagation(),a.navigateTo(w)}})})})]}),d&&x.length>0&&y.jsx(jKe,{isControlPointDragging:r,edgeProps:e,controlPoints:x,onMove:k,onStartMove:I,onCancelMove:P,onFinishMove:L,onDelete:H,zIndex:9999})]})});Cte.displayName="RelationshipEdge";function jKe({isControlPointDragging:e,edgeProps:r,controlPoints:n,onMove:o,onStartMove:i,onCancelMove:a,onFinishMove:l,onDelete:s,zIndex:c}){const d=JC(),u=iQ(),p=r.data.id,f=(x,k,C)=>{let _=!1,$={x:k.clientX,y:k.clientY},R=null,T=n;const A=j=>{const I={x:j.clientX,y:j.clientY};d2($,I)||(_||(_=!0,i()),$=I,R??=requestAnimationFrame(()=>{R=null,T=T.slice();const{x:P,y:L}=u.screenToFlowPosition($,{snapToGrid:!1});T[x]={x:Math.round(P),y:Math.round(L)},o(T)})),j.stopPropagation()},z=j=>{j.stopPropagation(),C.removeEventListener("pointermove",A,{capture:!0}),C.removeEventListener("click",IR,{capture:!0}),_?l(T):a()};C.addEventListener("pointermove",A,{capture:!0}),C.addEventListener("pointerup",z,{once:!0,capture:!0}),C.addEventListener("click",IR,{capture:!0,once:!0})},g=(x,k)=>{if(n.length<=1)return;k.stopPropagation(),k.preventDefault();const C=n.slice();C.splice(x,1),setTimeout(()=>{s(C)},10)},v=at(x=>{const{domNode:k,addSelectedEdges:C,edges:_,unselectNodesAndEdges:$}=d.getState();if(!k||x.pointerType!=="mouse")return;const R=parseFloat(x.currentTarget.getAttribute("data-control-point-index")||"");if(isNaN(R))throw new Error("data-control-point-index is not a number");switch(x.button){case 0:{x.stopPropagation(),$({edges:_.filter(T=>T.selected&&T.id!==p)}),C([p]),f(R,x,k);break}case 2:g(R,x);break}}),w=at(x=>{const{domNode:k}=d.getState();if(!k||x.pointerType!=="mouse")return;const C=parseFloat(x.currentTarget.getAttribute("data-control-point-index")||"");if(isNaN(C))throw new Error("data-control-point-index is not a number");g(C,x)});return y.jsx(yq,{children:y.jsx(a0,{component:"svg",className:mKe,...r,style:{...r.style,zIndex:c},children:y.jsx("g",{"data-active":e?!0:void 0,className:"group",onContextMenu:IR,children:n.map((x,k)=>y.jsx("circle",{"data-control-point-index":k,onPointerDownCapture:v,onDoubleClick:w,className:Ge("nodrag nopan",gKe),cx:x.x,cy:x.y},"controlPoints"+p+"#"+k))})})})}const IR=e=>{e.stopPropagation(),e.preventDefault()},V2=16;function AKe(e){const{enableNavigateTo:r,enableCompareWithLatest:n}=sr(),o=Nt(),{navigateTo:i}=e.data,a=e.source===e.target,l=e.sourceX>e.targetX,[s]=Zx({sourceX:e.sourceX,sourceY:e.sourceY,sourcePosition:e.sourcePosition,targetX:e.targetX,targetY:e.targetY,targetPosition:e.targetPosition,...a&&{offset:30,borderRadius:16}});let c=e.sourceX;switch(!0){case a:c=e.sourceX+24+V2;break;case l:c=e.sourceX-V2;break;default:c=e.sourceX+V2;break}return y.jsxs(a0,{...e,children:[y.jsx(l0,{edgeProps:e,svgPath:s}),n&&y.jsx(vte,{edgeProps:e,svgPath:s}),y.jsx(S2,{edgeProps:e,labelPosition:{x:c,y:e.sourceY+(a?0:V2),translate:l?"translate(-100%, 0)":void 0},children:y.jsx(i0,{edgeProps:e,children:r&&i&&y.jsx(_2,{onClick:d=>{d.stopPropagation(),o.navigateTo(i)}})})})]})}const DKe=(e,r)=>tt(e.data.id,r.data.id)&&tt(e.selected??!1,r.selected??!1)&&tt(e.data.modelFqn??null,r.data.modelFqn??null)&&tt(e.data.navigateTo??null,r.data.navigateTo??null)&&tt(e.data.hovered??!1,r.data.hovered??!1)&&(!e.extraButtons&&!r.extraButtons||Ir(e.extraButtons,r.extraButtons)),$te=S.memo(({extraButtons:e,...r})=>{const{enableNavigateTo:n,enableRelationshipBrowser:o}=sr(),i=Nt(),{id:a,navigateTo:l,modelFqn:s}=r.data;let c=S.useMemo(()=>{const d=[];return l&&n&&d.push({key:"navigate",icon:y.jsx(ba,{}),onClick:u=>{u.stopPropagation(),i.navigateTo(l,a)}}),o&&d.push({key:"relationships",icon:y.jsx(s0,{}),onClick:u=>{u.stopPropagation(),i.openRelationshipsBrowser(s)}}),d},[n,o,s,l,a,i]);return e&&xn(e,1)&&(c=[...c,...e]),y.jsx(C2,{...r,buttons:c})},DKe),MKe=({extraButtons:e,...r})=>{const{enableNavigateTo:n,enableRelationshipBrowser:o}=sr(),i=Nt(),{id:a,navigateTo:l,modelFqn:s}=r.data;let c=S.useMemo(()=>{const d=[];return l&&n&&d.push({key:"navigate",icon:y.jsx(ba,{}),onClick:u=>{u.stopPropagation(),i.navigateTo(l,a)}}),o&&s&&d.push({key:"relationships",icon:y.jsx(s0,{}),onClick:u=>{u.stopPropagation(),i.openRelationshipsBrowser(s)}}),d},[n,o,s,l,a]);return e&&xn(e,1)&&(c=[...c,...e]),y.jsx(C2,{...r,buttons:c})};function Sm({nodeProps:{data:e},position:r="bottom"}){const n=e.drifts;if(!n||n.length===0)return null;const o=r==="top"?Ue.Top:Ue.Bottom;return y.jsx(hr,{className:"likec4-node-drifts",css:{display:"contents","& + .likec4-element-shape":{outlineColor:"likec4.compare.manual.outline",outlineWidth:"4px",outlineStyle:"dashed",outlineOffset:"1.5"}},children:y.jsx(r9,{isVisible:e.hovered===!0,align:"start",position:o,children:y.jsx(xy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"Changes:",children:n.map(i=>y.jsxs(it,{mt:2,size:"sm",lh:"xs",children:["- ",i]},i))})})})}function NKe({data:{hovered:e=!1},icon:r,onClick:n}){const o=g9(e,e?130:0)[0]&&e;return y.jsx(Rr,{initial:!1,animate:{scale:o?1.2:1,x:o?-1:0,y:o?-1:0},whileHover:{scale:1.4,x:-3,y:-1},className:"likec4-compound-navigation compound-action",whileTap:{scale:1},onClick:nn,children:y.jsx(lr,{className:Ge("nodrag nopan",jJ({delay:e&&!o}),a2({variant:"transparent"})),onClick:n,onDoubleClick:nn,children:r??y.jsx(ba,{stroke:2})})})}const Rte=e=>{const{enableNavigateTo:r}=sr(),n=Nt(),{navigateTo:o}=e.data;return o&&r?y.jsx(NKe,{onClick:i=>{i.stopPropagation(),n.navigateTo(o,e.id)},...e}):null},zte=_n.withProps({color:"dark",fz:"xs",openDelay:400,closeDelay:150,label:"",children:null,offset:4,withinPortal:!1});function q2({fqn:e}){const r=Nt();return y.jsx(zte,{label:"Browse relationships",children:y.jsx(lr,{size:"sm",variant:"subtle",color:"gray",onClick:n=>{n.stopPropagation(),r.openRelationshipsBrowser(e)},children:y.jsx(s0,{stroke:2,style:{width:"72%",height:"72%"}})})})}function H2(e){const{onOpenSource:r}=gm();return r?y.jsx(zte,{label:"Open source",children:y.jsx(lr,{size:"sm",variant:"subtle",color:"gray",onClick:n=>{n.stopPropagation(),e.elementId?r?.({element:e.elementId}):e.deploymentId&&r?.({deployment:e.deploymentId})},children:y.jsx(dm,{stroke:1.8,style:{width:"70%"}})})}):null}function Tte(){const e=S.useContext(Sy);e||console.error("No LikeC4ModelContext found");const r=e?.$styles??XP.DEFAULT,[n,o]=S.useState(r);return S.useEffect(()=>{o(i=>i.equals(r)?i:r)},[r]),n}const jte=["primary","secondary","muted"];function U2({elementColor:e,elementOpacity:r,onColorPreview:n,isOpacityEditable:o=!1,onChange:i,...a}){const{theme:l}=Tte();return y.jsxs(br,{clickOutsideEvents:["pointerdown","mousedown","click"],position:"right-end",offset:2,withinPortal:!1,...a,children:[y.jsx(kd,{children:y.jsx(Vn,{variant:"subtle",color:"gray",size:"compact-xs",px:3,children:y.jsx(gy,{color:l.colors[e].elements.fill,size:14,withShadow:!0,style:{color:"#fff",cursor:"pointer"}})})}),y.jsxs(Qs,{p:"xs",children:[y.jsx(PKe,{theme:l,elementColor:e,onColorPreview:n,onChange:s=>i({color:s})}),o&&y.jsxs(y.Fragment,{children:[y.jsx(qS,{h:"xs"}),y.jsx(sp,{label:"opacity",labelPosition:"left"}),y.jsx(qS,{h:"xs"}),y.jsx(BKe,{elementOpacity:r,onOpacityChange:s=>{i({opacity:s})}})]})]})]})}function PKe({theme:e,elementColor:r,onColorPreview:n,onChange:o}){const i=l=>s=>{s.stopPropagation(),n(null),r!==l&&o(l)},a=l9(e.colors).filter(l=>!jte.includes(l));return y.jsx(Lo,{gap:2,onMouseLeave:()=>n(null),children:y.jsxs(dp,{openDelay:1e3,closeDelay:300,children:[y.jsx(Js,{maw:120,gap:"6",justify:"flex-start",align:"flex-start",direction:"row",wrap:"wrap",children:jte.map(l=>y.jsx(_n,{label:l,fz:"xs",color:"dark",offset:2,withinPortal:!1,transitionProps:{duration:140,transition:"slide-up"},children:y.jsx(gy,{color:e.colors[l].elements.fill,size:18,withShadow:!0,onMouseEnter:()=>n(l),onClick:i(l),style:{color:"#fff",cursor:"pointer"},children:r===l&&y.jsx(OW,{style:{width:$e(10),height:$e(10)}})})},l))}),y.jsx(Js,{mt:"sm",maw:110,gap:"6",justify:"flex-start",align:"flex-start",direction:"row",wrap:"wrap",children:a.map(l=>y.jsx(_n,{label:l,fz:"xs",color:"dark",offset:2,transitionProps:{duration:140,transition:"slide-up"},children:y.jsx(gy,{color:e.colors[l].elements.fill,size:18,onMouseEnter:()=>n(l),onClick:i(l),style:{color:"#fff",cursor:"pointer"},children:r===l&&y.jsx(OW,{style:{width:$e(10),height:$e(10)}})})},l))})]})})}function BKe({elementOpacity:e=100,onOpacityChange:r}){const[n,o]=S.useState(e);return t6e(()=>{o(e)},[e]),y.jsx(VS,{size:"sm",color:"dark",value:n,onChange:o,onChangeEnd:r})}const IKe=fe({color:"mantine.colors.dimmed",fontSize:"10px",fontWeight:600,maxWidth:"220px",cursor:"default",userSelect:"all",textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap"}),OKe=()=>pa(e=>e.xynodes.filter(r=>r.selected).length);function W2({title:e,children:r,nodeProps:n,...o}){const i=OKe(),{selected:a=!1,dragging:l=!1,data:{hovered:s=!1}}=n,c=s&&i===0||a&&i===1;let d=150;c?a?d=100:d=1e3:i>0&&(d=50);const[u]=g9(c,d);return u?y.jsx(r9,{isVisible:!l,offset:4,...o,children:y.jsx(Af,{className:Ge("nodrag","nopan"),px:5,pb:8,pt:4,radius:"sm",shadow:"xl",onDoubleClickCapture:nn,onPointerDown:nn,onClick:nn,onDoubleClick:nn,withBorder:!0,children:y.jsxs(Lo,{gap:"6px",children:[y.jsx(Se,{px:"4px",children:y.jsx(it,{className:IKe,children:e})}),y.jsx(en,{gap:4,children:r})]})})}):null}function G2(e,r){const n=Nt(),[o,i]=S.useState(null),a=at(s=>{if(s===null){if(!o)return;i(null),n.updateNodeData(r.data.id,{color:o});return}i(c=>c??r.data.color),n.updateNodeData(r.data.id,{color:s})}),l=at(s=>{const{shape:c,color:d,...u}=s;n.updateNodeData(r.data.id,{...c&&{shape:c},...d&&{color:d},style:u}),n.triggerChange({op:"change-element-style",style:s,targets:[e]})});return{elementColor:o??r.data.color,onColorPreview:a,onChange:l}}function LKe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{style:o,modelFqn:i}}=e,{elementColor:a,onColorPreview:l,onChange:s}=G2(i,e),c=o?.opacity??100;return y.jsxs(W2,{nodeProps:e,title:i,align:"start",children:[y.jsx(U2,{elementColor:a,onColorPreview:l,isOpacityEditable:!0,elementOpacity:c,onChange:s,position:"left-start"}),y.jsx(Ate,{elementBorderStyle:o?.border??(c<99?"dashed":"none"),onChange:s}),r&&y.jsx(H2,{elementId:i}),n&&y.jsx(q2,{fqn:i})]})}function FKe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{deploymentFqn:o,style:i,modelFqn:a}}=e,{elementColor:l,onColorPreview:s,onChange:c}=G2(o,e);return y.jsxs(W2,{nodeProps:e,title:o,align:"start",children:[y.jsx(U2,{elementColor:l,onColorPreview:s,isOpacityEditable:!0,elementOpacity:i?.opacity,onChange:c,position:"left-start"}),y.jsx(Ate,{elementBorderStyle:i?.border,onChange:c}),r&&y.jsx(H2,{deploymentId:o}),n&&a&&y.jsx(q2,{fqn:a})]})}function Ate({elementBorderStyle:e="dashed",onChange:r}){const[n,o]=S.useState(e);return S.useEffect(()=>{o(e)},[e]),y.jsx(Se,{children:y.jsx(Of,{size:"xs",fullWidth:!0,withItemsBorders:!1,value:n,onChange:i=>{const a=i;o(a),r({border:a})},styles:{label:{paddingTop:"0.5",paddingBottom:"0.5"}},data:[{label:"Solid",value:"solid"},{label:"Dashed",value:"dashed"},{label:"Dotted",value:"dotted"},{label:"None",value:"none"}]})})}function VKe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{shape:o,modelFqn:i}}=e,{elementColor:a,onColorPreview:l,onChange:s}=G2(i,e);return y.jsxs(W2,{nodeProps:e,title:i,align:"start",children:[y.jsx(Dte,{elementShape:o,onChange:s}),y.jsx(U2,{elementColor:a,onColorPreview:l,onChange:s,position:"right-end"}),r&&y.jsx(H2,{elementId:i}),n&&y.jsx(q2,{fqn:i})]})}function qKe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{shape:o,deploymentFqn:i,modelFqn:a}}=e,{elementColor:l,onColorPreview:s,onChange:c}=G2(i,e);return y.jsxs(W2,{nodeProps:e,title:i,align:"start",children:[y.jsx(Dte,{elementShape:o,onChange:c}),y.jsx(U2,{elementColor:l,onColorPreview:s,onChange:c,position:"right-end"}),r&&y.jsx(H2,{deploymentId:i}),n&&a&&y.jsx(q2,{fqn:a})]})}function Dte({elementShape:e,onChange:r}){return y.jsxs(tn,{openDelay:300,closeDelay:450,floatingStrategy:"fixed",closeOnClickOutside:!0,clickOutsideEvents:["pointerdown","mousedown","click"],closeOnEscape:!0,closeOnItemClick:!1,position:"top-start",offset:2,styles:{item:{padding:"calc(var(--mantine-spacing-xs) / 1.5) var(--mantine-spacing-xs)"}},withinPortal:!1,children:[y.jsx(w3,{children:y.jsx(Vn,{variant:"light",color:"gray",size:"compact-xs",rightSection:y.jsx(tR,{size:12}),children:e})}),y.jsx(vy,{onDoubleClick:nn,onClick:nn,children:n0e.map(n=>y.jsx(by,{fz:12,fw:500,value:n,rightSection:e===n?y.jsx(dQ,{size:12}):void 0,onClick:o=>{o.stopPropagation(),r({shape:n})},children:n},n))})]})}const HKe=[Ue.Top,Ue.Right,Ue.Bottom,Ue.Left],y0=S.memo(()=>y.jsx(y.Fragment,{children:HKe.map(e=>y.jsxs(S.Fragment,{children:[y.jsx(Oo,{type:"source",position:e,className:"likec4-node-handle-center"}),y.jsx(Oo,{type:"target",position:e,className:"likec4-node-handle-center"})]},e))}));function OR(e){const r=Nt(),n=e.data.modelFqn;return n?y.jsx(oR,{...e,onClick:o=>{o.stopPropagation(),r.openElementDetails(n,e.id)}}):null}function Mte(e){const r=Nt(),n=e.data.modelFqn;return n?y.jsx(AJ,{...e,onClick:o=>{o.stopPropagation(),r.openElementDetails(n,e.id)}}):null}function UKe(e){const{enableElementTags:r,enableElementDetails:n,enableReadOnly:o,enableCompareWithLatest:i}=sr();return y.jsxs(um,{nodeProps:e,children:[i&&y.jsx(Sm,{nodeProps:e}),y.jsx(pm,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx($te,{...e}),n&&y.jsx(OR,{...e}),!o&&y.jsx(VKe,{...e}),y.jsx(y0,{})]})}function WKe(e){const{enableElementTags:r,enableElementDetails:n,enableReadOnly:o,enableCompareWithLatest:i}=sr();return y.jsxs(um,{nodeProps:e,children:[i&&y.jsx(Sm,{nodeProps:e}),y.jsx(pm,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx(MKe,{...e}),n&&y.jsx(OR,{...e}),!o&&y.jsx(qKe,{...e}),y.jsx(y0,{})]})}const LR=fe({outlineColor:"likec4.compare.manual.outline",outlineWidth:"4px",outlineStyle:"dashed",outlineOffset:"1.5"}),FR=e=>e.data.drifts&&e.data.drifts.length>0;function GKe(e){const{enableElementDetails:r,enableReadOnly:n,enableCompareWithLatest:o}=sr(),i=o&&FR(e);return y.jsxs(c0,{className:i?LR:void 0,nodeProps:e,children:[o&&y.jsx(Sm,{nodeProps:e}),y.jsx(d0,{...e}),y.jsx(Rte,{...e}),r&&y.jsx(Mte,{...e}),!n&&y.jsx(LKe,{...e}),y.jsx(y0,{})]})}function YKe(e){const{enableElementDetails:r,enableReadOnly:n,enableCompareWithLatest:o}=sr(),i=o&&FR(e);return y.jsxs(c0,{className:i?LR:void 0,nodeProps:e,children:[o&&y.jsx(Sm,{nodeProps:e}),y.jsx(d0,{...e}),y.jsx(Rte,{...e}),r&&y.jsx(Mte,{...e}),!n&&y.jsx(FKe,{...e}),y.jsx(y0,{})]})}function XKe(e){const{enableCompareWithLatest:r}=sr(),n=r&&FR(e);return y.jsxs(c0,{className:n?LR:void 0,nodeProps:e,children:[r&&y.jsx(Sm,{nodeProps:e}),y.jsx(d0,{...e}),y.jsx(y0,{})]})}const KKe={left:Ue.Left,right:Ue.Right,top:Ue.Top,bottom:Ue.Bottom},ZKe=({data:e,port:r})=>y.jsxs(y.Fragment,{children:[y.jsx(hr,{"data-likec4-color":e.color,className:fe({position:"absolute",backgroundColor:"var(--likec4-palette-fill)",rounded:"xs",width:{base:"5px",_whenHovered:"7px",_whenSelected:"7px"},transition:"fast",translateX:"-1/2",translateY:"-1/2",translate:"auto"}),style:{top:r.cy,left:r.cx,height:r.height}}),y.jsx(Oo,{id:r.id,type:r.type,position:KKe[r.position],style:{top:r.cy-3,left:r.cx-3,width:6,height:6,right:"unset",bottom:"unset",visibility:"hidden",transform:r.position==="left"?"translate(-150%, 0)":"translate(100%, 0)"}})]}),QKe=e=>Zn(e.modelFqn);function JKe(e){const{enableElementDetails:r,enableCompareWithLatest:n}=sr(),o=e.data,{id:i,positionAbsoluteY:a,data:{viewHeight:l,hovered:s=!1,ports:c}}=e;return y.jsxs(y.Fragment,{children:[y.jsx(hr,{"data-likec4-color":"gray",className:fe({position:"absolute",rounded:"xs",top:"1",pointerEvents:"none",transition:"fast",translateX:"-1/2",translate:"auto"}),style:{backgroundColor:"var(--likec4-palette-stroke)",opacity:s?.6:.4,left:"50%",width:s?3:2,height:l-a,zIndex:-1,pointerEvents:"none"}}),y.jsxs(um,{nodeProps:e,children:[n&&y.jsx(Sm,{nodeProps:e}),y.jsx(pm,{...e}),y.jsx(dl,{...e}),QKe(o)&&y.jsxs(y.Fragment,{children:[y.jsx($te,{...e,data:o}),r&&y.jsx(OR,{id:i,data:o})]})]}),c.map(d=>y.jsx(ZKe,{port:d,data:e.data},d.id))]})}function eZe(e){return y.jsx(hr,{"data-likec4-color":e.data.color,css:{width:"100%",height:"100%",border:"default",rounded:"sm",borderWidth:1,"--_color":{base:"var(--likec4-palette-stroke)",_dark:"[color-mix(in oklab, var(--likec4-palette-hiContrast) 40%, var(--likec4-palette-fill))]"},borderColor:"[var(--_color)/30]",backgroundColor:"var(--likec4-palette-fill)/15",pointerEvents:"none",paddingLeft:"2",paddingTop:"0.5",fontSize:"xs",fontWeight:"bold",letterSpacing:".75px",color:"[var(--_color)/75]"},children:"PARALLEL"})}const jp={ElementNode:UKe,DeploymentNode:WKe,CompoundElementNode:GKe,CompoundDeploymentNode:YKe,ViewGroupNode:XKe,SequenceActorNode:JKe,SequenceParallelArea:eZe},Nte={RelationshipEdge:Cte,SequenceStepEdge:AKe};var Pte=Symbol.for("immer-nothing"),Bte=Symbol.for("immer-draftable"),qo=Symbol.for("immer-state");function hl(e,...r){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Ai=Object,Em=Ai.getPrototypeOf,Y2="constructor",X2="prototype",VR="configurable",K2="enumerable",Z2="writable",v0="value",Id=e=>!!e&&!!e[qo];function pc(e){return e?Ote(e)||J2(e)||!!e[Bte]||!!e[Y2]?.[Bte]||e4(e)||t4(e):!1}var tZe=Ai[X2][Y2].toString(),Ite=new WeakMap;function Ote(e){if(!e||!HR(e))return!1;const r=Em(e);if(r===null||r===Ai[X2])return!0;const n=Ai.hasOwnProperty.call(r,Y2)&&r[Y2];if(n===Object)return!0;if(!Cm(n))return!1;let o=Ite.get(n);return o===void 0&&(o=Function.toString.call(n),Ite.set(n,o)),o===tZe}function b0(e,r,n=!0){x0(e)===0?(n?Reflect.ownKeys(e):Ai.keys(e)).forEach(o=>{r(o,e[o],e)}):e.forEach((o,i)=>r(i,o,e))}function x0(e){const r=e[qo];return r?r.type_:J2(e)?1:e4(e)?2:t4(e)?3:0}var Lte=(e,r,n=x0(e))=>n===2?e.has(r):Ai[X2].hasOwnProperty.call(e,r),qR=(e,r,n=x0(e))=>n===2?e.get(r):e[r],Q2=(e,r,n,o=x0(e))=>{o===2?e.set(r,n):o===3?e.add(n):e[r]=n};function rZe(e,r){return e===r?e!==0||1/e===1/r:e!==e&&r!==r}var J2=Array.isArray,e4=e=>e instanceof Map,t4=e=>e instanceof Set,HR=e=>typeof e=="object",Cm=e=>typeof e=="function",UR=e=>typeof e=="boolean",hc=e=>e.copy_||e.base_,WR=e=>e.modified_?e.copy_:e.base_;function GR(e,r){if(e4(e))return new Map(e);if(t4(e))return new Set(e);if(J2(e))return Array[X2].slice.call(e);const n=Ote(e);if(r===!0||r==="class_only"&&!n){const o=Ai.getOwnPropertyDescriptors(e);delete o[qo];let i=Reflect.ownKeys(o);for(let a=0;a1&&Ai.defineProperties(e,{set:r4,add:r4,clear:r4,delete:r4}),Ai.freeze(e),r&&b0(e,(n,o)=>{YR(o,!0)},!1)),e}function nZe(){hl(2)}var r4={[v0]:nZe};function n4(e){return e===null||!HR(e)?!0:Ai.isFrozen(e)}var o4="MapSet",XR="Patches",Fte={};function $m(e){const r=Fte[e];return r||hl(0,e),r}var oZe=e=>!!Fte[e],w0,Vte=()=>w0,iZe=(e,r)=>({drafts_:[],parent_:e,immer_:r,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:oZe(o4)?$m(o4):void 0});function qte(e,r){r&&(e.patchPlugin_=$m(XR),e.patches_=[],e.inversePatches_=[],e.patchListener_=r)}function KR(e){ZR(e),e.drafts_.forEach(aZe),e.drafts_=null}function ZR(e){e===w0&&(w0=e.parent_)}var Hte=e=>w0=iZe(w0,e);function aZe(e){const r=e[qo];r.type_===0||r.type_===1?r.revoke_():r.revoked_=!0}function Ute(e,r){r.unfinalizedDrafts_=r.drafts_.length;const n=r.drafts_[0];if(e!==void 0&&e!==n){n[qo].modified_&&(KR(r),hl(4)),pc(e)&&(e=Wte(r,e));const{patchPlugin_:o}=r;o&&o.generateReplacementPatches_(n[qo].base_,e,r)}else e=Wte(r,n);return lZe(r,e,!0),KR(r),r.patches_&&r.patchListener_(r.patches_,r.inversePatches_),e!==Pte?e:void 0}function Wte(e,r){if(n4(r))return r;const n=r[qo];if(!n)return QR(r,e.handledSet_,e);if(!i4(n,e))return r;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:o}=n;if(o)for(;o.length>0;)o.pop()(e);Xte(n,e)}return n.copy_}function lZe(e,r,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&YR(r,n)}function Gte(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var i4=(e,r)=>e.scope_===r,sZe=[];function Yte(e,r,n,o){const i=hc(e),a=e.type_;if(o!==void 0&&qR(i,o,a)===r){Q2(i,o,n,a);return}if(!e.draftLocations_){const s=e.draftLocations_=new Map;b0(i,(c,d)=>{if(Id(d)){const u=s.get(d)||[];u.push(c),s.set(d,u)}})}const l=e.draftLocations_.get(r)??sZe;for(const s of l)Q2(i,s,n,a)}function cZe(e,r,n){e.callbacks_.push(function(o){const i=r;if(!i||!i4(i,o))return;o.mapSetPlugin_?.fixSetContents(i);const a=WR(i);Yte(e,i.draft_??i,a,n),Xte(i,o)})}function Xte(e,r){if(e.modified_&&!e.finalized_&&(e.type_===3||(e.assigned_?.size??0)>0)){const{patchPlugin_:n}=r;if(n){const o=n.getPath(e);o&&n.generatePatches_(e,o,r)}Gte(e)}}function dZe(e,r,n){const{scope_:o}=e;if(Id(n)){const i=n[qo];i4(i,o)&&i.callbacks_.push(function(){a4(e);const a=WR(i);Yte(e,n,a,r)})}else pc(n)&&e.callbacks_.push(function(){const i=hc(e);qR(i,r,e.type_)===n&&o.drafts_.length>1&&(e.assigned_.get(r)??!1)===!0&&e.copy_&&QR(qR(e.copy_,r,e.type_),o.handledSet_,o)})}function QR(e,r,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||Id(e)||r.has(e)||!pc(e)||n4(e)||(r.add(e),b0(e,(o,i)=>{if(Id(i)){const a=i[qo];if(i4(a,n)){const l=WR(a);Q2(e,o,l,e.type_),Gte(a)}}else pc(i)&&QR(i,r,n)})),e}function uZe(e,r){const n=J2(e),o={type_:n?1:0,scope_:r?r.scope_:Vte(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:r,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let i=o,a=JR;n&&(i=[o],a=k0);const{revoke:l,proxy:s}=Proxy.revocable(i,a);return o.draft_=s,o.revoke_=l,[s,o]}var JR={get(e,r){if(r===qo)return e;const n=hc(e);if(!Lte(n,r,e.type_))return pZe(e,n,r);const o=n[r];if(e.finalized_||!pc(o))return o;if(o===ez(e.base_,r)){a4(e);const i=e.type_===1?+r:r,a=rz(e.scope_,o,e,i);return e.copy_[i]=a}return o},has(e,r){return r in hc(e)},ownKeys(e){return Reflect.ownKeys(hc(e))},set(e,r,n){const o=Kte(hc(e),r);if(o?.set)return o.set.call(e.draft_,n),!0;if(!e.modified_){const i=ez(hc(e),r),a=i?.[qo];if(a&&a.base_===n)return e.copy_[r]=n,e.assigned_.set(r,!1),!0;if(rZe(n,i)&&(n!==void 0||Lte(e.base_,r,e.type_)))return!0;a4(e),tz(e)}return e.copy_[r]===n&&(n!==void 0||r in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[r])||(e.copy_[r]=n,e.assigned_.set(r,!0),dZe(e,r,n)),!0},deleteProperty(e,r){return a4(e),ez(e.base_,r)!==void 0||r in e.base_?(e.assigned_.set(r,!1),tz(e)):e.assigned_.delete(r),e.copy_&&delete e.copy_[r],!0},getOwnPropertyDescriptor(e,r){const n=hc(e),o=Reflect.getOwnPropertyDescriptor(n,r);return o&&{[Z2]:!0,[VR]:e.type_!==1||r!=="length",[K2]:o[K2],[v0]:n[r]}},defineProperty(){hl(11)},getPrototypeOf(e){return Em(e.base_)},setPrototypeOf(){hl(12)}},k0={};b0(JR,(e,r)=>{k0[e]=function(){const n=arguments;return n[0]=n[0][0],r.apply(this,n)}}),k0.deleteProperty=function(e,r){return k0.set.call(this,e,r,void 0)},k0.set=function(e,r,n){return JR.set.call(this,e[0],r,n,e[0])};function ez(e,r){const n=e[qo];return(n?hc(n):e)[r]}function pZe(e,r,n){const o=Kte(r,n);return o?v0 in o?o[v0]:o.get?.call(e.draft_):void 0}function Kte(e,r){if(!(r in e))return;let n=Em(e);for(;n;){const o=Object.getOwnPropertyDescriptor(n,r);if(o)return o;n=Em(n)}}function tz(e){e.modified_||(e.modified_=!0,e.parent_&&tz(e.parent_))}function a4(e){e.copy_||(e.assigned_=new Map,e.copy_=GR(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var hZe=class{constructor(r){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,o,i)=>{if(Cm(n)&&!Cm(o)){const l=o;o=n;const s=this;return function(c=l,...d){return s.produce(c,u=>o.call(this,u,...d))}}Cm(o)||hl(6),i!==void 0&&!Cm(i)&&hl(7);let a;if(pc(n)){const l=Hte(this),s=rz(l,n,void 0);let c=!0;try{a=o(s),c=!1}finally{c?KR(l):ZR(l)}return qte(l,i),Ute(a,l)}else if(!n||!HR(n)){if(a=o(n),a===void 0&&(a=n),a===Pte&&(a=void 0),this.autoFreeze_&&YR(a,!0),i){const l=[],s=[];$m(XR).generateReplacementPatches_(n,a,{patches_:l,inversePatches_:s}),i(l,s)}return a}else hl(1,n)},this.produceWithPatches=(n,o)=>{if(Cm(n))return(l,...s)=>this.produceWithPatches(l,c=>n(c,...s));let i,a;return[this.produce(n,o,(l,s)=>{i=l,a=s}),i,a]},UR(r?.autoFreeze)&&this.setAutoFreeze(r.autoFreeze),UR(r?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(r.useStrictShallowCopy),UR(r?.useStrictIteration)&&this.setUseStrictIteration(r.useStrictIteration)}createDraft(r){pc(r)||hl(8),Id(r)&&(r=fZe(r));const n=Hte(this),o=rz(n,r,void 0);return o[qo].isManual_=!0,ZR(n),o}finishDraft(r,n){const o=r&&r[qo];(!o||!o.isManual_)&&hl(9);const{scope_:i}=o;return qte(i,n),Ute(void 0,i)}setAutoFreeze(r){this.autoFreeze_=r}setUseStrictShallowCopy(r){this.useStrictShallowCopy_=r}setUseStrictIteration(r){this.useStrictIteration_=r}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(r,n){let o;for(o=n.length-1;o>=0;o--){const a=n[o];if(a.path.length===0&&a.op==="replace"){r=a.value;break}}o>-1&&(n=n.slice(o+1));const i=$m(XR).applyPatches_;return Id(r)?i(r,n):this.produce(r,a=>i(a,n))}};function rz(e,r,n,o){const[i,a]=e4(r)?$m(o4).proxyMap_(r,n):t4(r)?$m(o4).proxySet_(r,n):uZe(r,n);return(n?.scope_??Vte()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=o,n&&o!==void 0?cZe(n,a,o):a.callbacks_.push(function(l){l.mapSetPlugin_?.fixSetContents(a);const{patchPlugin_:s}=l;a.modified_&&s&&s.generatePatches_(a,[],l)}),i}function fZe(e){return Id(e)||hl(10,e),Zte(e)}function Zte(e){if(!pc(e)||n4(e))return e;const r=e[qo];let n,o=!0;if(r){if(!r.modified_)return r.base_;r.finalized_=!0,n=GR(e,r.scope_.immer_.useStrictShallowCopy_),o=r.scope_.immer_.shouldUseStrictIteration()}else n=GR(e,!0);return b0(n,(i,a)=>{Q2(n,i,Zte(a))},o),r&&(r.finalized_=!1),n}var nz=new hZe,as=nz.produce,Qte=nz.setAutoFreeze.bind(nz),_0=e=>e;class Rm{static LeftPadding=42;static RightPadding=42;static TopPadding=60;static BottomPadding=42;id;minX=1/0;minY=1/0;maxX=-1/0;maxY=-1/0;initialX;initialY;get positionAbsolute(){return{x:this.minX,y:this.minY}}get initialPositionAbsolute(){return{x:this.initialX,y:this.initialY}}set positionAbsolute(r){const n=Math.round(r.x),o=Math.round(r.y);this.maxX+=n-this.minX,this.maxY+=o-this.minY,this.minX=n,this.minY=o}get dimensions(){return{width:Math.round(this.maxX-this.minX),height:Math.round(this.maxY-this.minY)}}get diff(){return{x:Math.round(this.positionAbsolute.x-this.initialX),y:Math.round(this.positionAbsolute.y-this.initialY)}}get isMoved(){return this.diff.x!==0||this.diff.y!==0}get position(){const r=this.positionAbsolute;if(!this.parent)return r;const n=this.parent.positionAbsolute;return{x:r.x-n.x,y:r.y-n.y}}constructor(r,n=null){this.id=r.id,this.positionAbsolute=n?{x:r.position.x+n.minX,y:r.position.y+n.minY}:r.position;const{width:o,height:i}=_o(r);this.maxX=this.minX+Math.ceil(o),this.maxY=this.minY+Math.ceil(i),this.initialX=this.positionAbsolute.x,this.initialY=this.positionAbsolute.y,n&&n.children.push(this)}}class oz extends Rm{constructor(r,n=null){super(r,n),this.parent=n}children=[]}class mZe extends Rm{constructor(r,n=null){super(r,n),this.parent=n}}function gZe(e,r){const n=e.data.controlPoints??null;return o=>{const i=mt(o.get(e.id),`Edge ${e.id} not found`),{x:a,y:l}=r.diff;return a===0&&l===0?{id:e.id,type:"replace",item:as(i,s=>{s.data.points=e.data.points,s.data.controlPoints=n,s.data.labelBBox=e.data.labelBBox})}:{id:e.id,type:"replace",item:as(i,s=>{s.data.points=un(e.data.points,c=>[c[0]+a,c[1]+l]),n&&(s.data.controlPoints=n.map(c=>({x:c.x+a,y:c.y+l}))),e.data.labelBBox&&(s.data.labelBBox={x:e.data.labelBBox.x+a,y:e.data.labelBBox.y+l,width:e.data.labelBBox.width,height:e.data.labelBBox.height})})}}}function yZe(e,r,n,o){const i=e.data.controlPoints??c2(e.data.points),a=Qr(ko.center(n)),l=Qr(ko.center(o)),s=a.subtract(l),c=s.length();return d=>{const u=mt(d.get(e.id),`Edge ${e.id} not found`),{x:p,y:f}=r.diff;if(p===0&&f===0)return{id:e.id,type:"replace",item:as(u,w=>{w.data.points=e.data.points,w.data.controlPoints=e.data.controlPoints,w.data.labelBBox=e.data.labelBBox})};const g=Qr(p,f),v=w=>{const x=Qr(w),k=x.subtract(l).dot(s),C=ta(k/c**2,{min:-1,max:1});return x.add(g.multiply(C)).round().toObject()};return{id:e.id,type:"replace",item:as(u,w=>{if(w.data.controlPoints=i.map(v),e.data.labelBBox){w.data.labelBBox??=e.data.labelBBox;const{x,y:k}=v(e.data.labelBBox);w.data.labelBBox.x=x,w.data.labelBBox.y=k}})}}}function Jte(e,r){const{parentLookup:n,nodeLookup:o,edges:i}=e.getState(),a=new Map,l=new Ln(_=>{let $=o.get(_)?.parentId;return $?[$,...l.get($)]:[]}),s=new Ln(_=>{const $=n.get(_);if(!$||$.size===0)return new Set;const R=new Set;for(const T of $.values()){R.add(T.id);for(const A of s.get(T.id))R.add(A)}return R});if(xn(r,2)){const _=Jr(r,Mq($=>[...s.get($)]),yw(),$=>e$e(r,$));He(xn(_,1),"All editing nodes are nested within each other"),r=_}const c=new Set(r.flatMap(_=>l.get(_))),d=[...o.values()].flatMap(_=>_.parentId?[]:{xynode:_,parent:null});for(;d.length>0;){const{xynode:_,parent:$}=d.shift();if(!r.includes(_.id)&&c.has(_.id)){const R=new oz(_,$);a.set(_.id,R),n.get(_.id)?.forEach(T=>{d.push({xynode:T,parent:R})});continue}a.set(_.id,new mZe(_,$))}const u=[...a.values()],p=new Map,f=_=>a.get(_)??l.get(_).map($=>a.get($)).find($=>!!$)??null,g=new Set(r.flatMap(_=>[_,...s.get(_)]));for(const _ of i){const $=g.has(_.source),R=g.has(_.target);if($&&R){let T=a.get(_.source)??a.get(_.target)??f(_.source)??f(_.target);T&&p.set(_,gZe(_,T));continue}if($!==R){const T=f($?_.source:_.target);if(!T)continue;const[A,z]=Jr([_.source,_.target],un(P=>mt(o.get(P),`Node ${P} not found`)),un(r$)),[j,I]=$?[A,z]:[z,A];p.set(_,yZe(_,T,j,I));continue}}function v(_){for(const $ of _){if(!($ instanceof oz))continue;v($.children);const R={minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};for(const T of $.children)R.minX=Math.min(R.minX,T.minX),R.minY=Math.min(R.minY,T.minY),R.maxX=Math.max(R.maxX,T.maxX),R.maxY=Math.max(R.maxY,T.maxY);$.minX=R.minX-Rm.LeftPadding,$.minY=R.minY-Rm.TopPadding,$.maxX=R.maxX+Rm.RightPadding,$.maxY=R.maxY+Rm.BottomPadding}}const w=[...p.values()];function x(){v(u);const _=u.reduce((z,j)=>(z.push({id:j.id,type:"position",dragging:!1,position:j.position,positionAbsolute:j.positionAbsolute}),j instanceof oz&&z.push({id:j.id,type:"dimensions",setAttributes:!0,dimensions:j.dimensions}),z),[]),{edgeLookup:$,triggerNodeChanges:R,triggerEdgeChanges:T}=e.getState();R(_);const A=w.map(z=>z($));A.length>0&&T(A)}let k=null;function C(){u.length!==0&&(k??=requestAnimationFrame(()=>{k=null;for(const _ of r){const $=a.get(_);if(!$){console.warn(`Rect not found for id ${_}`);continue}const R=o.get(_);if(!R){console.warn(`Node not found for id ${_}`);continue}$.positionAbsolute=R.internals.positionAbsolute}x()}))}return{rects:a,onMove:C,updateXYFlow:x}}function vZe(){const e=JC(),r=Nt(),n=S.useRef(void 0);return S.useMemo(()=>({onNodeDragStart:(o,i)=>{r.startEditing("node");const{nodeLookup:a}=e.getState(),l=Jr(Array.from(a.values()),ep(s=>s.dragging===!0||s.id===i.id||s.selected===!0),un(s=>s.id));xn(l,1)&&(n.current=Jte(e,l))},onNodeDrag:o=>{n.current?.onMove()},onNodeDragStop:o=>{const i=n.current?YO(n.current.rects.values(),a=>a.isMoved):!1;r.stopEditing(i),n.current=void 0}}),[e,r])}const bZe={relationship:Nte.RelationshipEdge,"seq-step":Nte.SequenceStepEdge},Od={element:sc(jp.ElementNode),deployment:sc(jp.DeploymentNode),"compound-element":sc(jp.CompoundElementNode),"compound-deployment":sc(jp.CompoundDeploymentNode),"view-group":sc(jp.ViewGroupNode),"seq-actor":sc(jp.SequenceActorNode),"seq-parallel":sc(jp.SequenceParallelArea)};function xZe(e){return!e||tp(e)?Od:{element:e.element??Od.element,deployment:e.deployment??Od.deployment,"compound-element":e.compoundElement??Od["compound-element"],"compound-deployment":e.compoundDeployment??Od["compound-deployment"],"view-group":e.viewGroup??Od["view-group"],"seq-actor":e.seqActor??Od["seq-actor"],"seq-parallel":e.seqParallel??Od["seq-parallel"]}}const wZe=({context:e,children:r})=>{const{enableReadOnly:n}=O2(e),o=n||r.editor?.getSnapshot().context.editing!=="edge";return{enableReadOnly:n,initialized:e.initialized.xydata&&e.initialized.xyflow,nodes:e.xynodes,edges:e.xyedges,pannable:e.pannable,zoomable:e.zoomable,nodesDraggable:!n&&e.nodesDraggable,nodesSelectable:e.nodesSelectable&&o,fitViewPadding:e.fitViewPadding,enableFitView:e.features.enableFitView,...!e.features.enableFitView&&{viewport:{x:-e.view.bounds.x,y:-e.view.bounds.y,zoom:1}}}},kZe=(e,r)=>e.enableReadOnly===r.enableReadOnly&&e.initialized===r.initialized&&e.pannable===r.pannable&&e.zoomable===r.zoomable&&e.nodesDraggable===r.nodesDraggable&&e.nodesSelectable===r.nodesSelectable&&e.enableFitView===r.enableFitView&&Ir(e.fitViewPadding,r.fitViewPadding)&&Ir(e.nodes,r.nodes)&&Ir(e.edges,r.edges)&&Ir(e.viewport??null,r.viewport??null);function _Ze({background:e="dots",reactFlowProps:r={},children:n,renderNodes:o}){const i=Nt();let{enableReadOnly:a,initialized:l,nodes:s,edges:c,enableFitView:d,nodesDraggable:u,nodesSelectable:p,...f}=wE(wZe,kZe);const{onNodeContextMenu:g,onCanvasContextMenu:v,onEdgeContextMenu:w,onNodeClick:x,onEdgeClick:k,onCanvasClick:C,onCanvasDblClick:_}=gm(),$=pNe(),R=vZe(),T=fNe(),A=CH(()=>{T.set(!0)},$?120:400),z=bf(()=>{A.clear(),T.set(!1)},$?350:200),j=at(H=>{H&&(T.get()||A.start(),z())}),I=at((H,M)=>{A.clear(),i.send({type:"xyflow.viewportMoved",viewport:M,manually:!!H})}),P=at(()=>{i.send({type:"xyflow.resized"})}),L=SL(()=>xZe(o),[o],mQ);return $p(()=>{console.warn("renderNodes changed - this might degrade performance")},[L]),y.jsx(s$,{nodes:s,edges:c,className:Ge(l?"initialized":"not-initialized"),nodeTypes:L,edgeTypes:bZe,onNodesChange:at(H=>{i.send({type:"xyflow.applyNodeChanges",changes:H})}),onEdgesChange:at(H=>{i.send({type:"xyflow.applyEdgeChanges",changes:H})}),background:l?e:"transparent",fitView:!1,onNodeClick:at((H,M)=>{H.stopPropagation(),i.send({type:"xyflow.nodeClick",node:M}),x?.(i.findDiagramNode(M.id),H)}),onEdgeClick:at((H,M)=>{H.stopPropagation(),i.send({type:"xyflow.edgeClick",edge:M}),k?.(i.findDiagramEdge(M.id),H)}),onEdgeDoubleClick:at((H,M)=>{H.stopPropagation(),i.send({type:"xyflow.edgeDoubleClick",edge:M})}),onPaneClick:at(H=>{H.stopPropagation(),i.send({type:"xyflow.paneClick"}),C?.(H)}),onDoubleClick:at(H=>{H.stopPropagation(),H.preventDefault(),i.send({type:"xyflow.paneDblClick"}),_?.(H)}),onNodeMouseEnter:at((H,M)=>{H.stopPropagation(),i.send({type:"xyflow.nodeMouseEnter",node:M})}),onNodeMouseLeave:at((H,M)=>{H.stopPropagation(),i.send({type:"xyflow.nodeMouseLeave",node:M})}),onEdgeMouseEnter:at((H,M)=>{H.stopPropagation(),i.send({type:"xyflow.edgeMouseEnter",edge:M,event:H})}),onEdgeMouseLeave:at((H,M)=>{H.stopPropagation(),i.send({type:"xyflow.edgeMouseLeave",edge:M,event:H})}),onMove:j,onMoveEnd:I,onInit:at(H=>{i.send({type:"xyflow.init",instance:H})}),onNodeContextMenu:at((H,M)=>{const V=mt(i.findDiagramNode(M.id),`diagramNode ${M.id} not found`);g?.(V,H)}),onEdgeContextMenu:at((H,M)=>{const V=mt(i.findDiagramEdge(M.id),`diagramEdge ${M.id} not found`);w?.(V,H)}),...v&&{onPaneContextMenu:v},...d&&{onViewportResize:P},nodesDraggable:u,nodesSelectable:p,elevateEdgesOnSelect:!a,...u&&R,...f,...r,children:n})}function SZe(e,r){try{return Qte(!1),EZe(e,r)}finally{Qte(!0)}}const ere=e=>ty(e.parent);function EZe(e,r){He(e.id===r.id,"View IDs do not match"),He(e._type===r._type,"View types do not match"),He(e._layout==="manual"&&r._layout==="auto","Views must be manual and auto");const n=new Set,o=new Set,i=u=>!n.has(typeof u=="string"?u:u.id),a=u=>o.has(u.source)&&o.has(u.target)&&i(u.source)&&i(u.target),l=new Map(r.nodes.map(u=>{u.children&&u.children.length>0&&n.add(u.id);const p=e.nodes.find(f=>f.id===u.id);return p?[u.id,$Ze({latest:u,manual:p})]:(o.add(u.id),[u.id,iz(u)])}));if(o.size===l.size)return as(r,u=>{u._layout="manual",u.nodes=_0([...l.values()]),u.edges=_0(r.edges.map(iz)),delete u.drifts});n.size>0&&CZe(l);const s=[...l.values()],c=r.edges.map(u=>{const p=u.dir??"forward",f=x=>x.source===u.source&&x.target===u.target&&(x.dir===p||!x.dir&&!u.dir);let g=e.edges.find(x=>x.id===u.id&&f(x));if(g||(g=e.edges.find(x=>f(x))),g)return RZe({latest:u,manual:g});if(a(u))return iz(u);const v=l.get(u.source),w=l.get(u.target);return zZe(u,v,w)}),d=ko.merge(...s.filter(ere));return as(r,u=>{u._layout="manual",u.nodes=_0(s),u.edges=_0(c),u.bounds=d,delete u.drifts})}const zm={Left:42,Right:42,Top:60,Bottom:42};function CZe(e){function r(n){const o=mt(e.get(n),`Node ${n} not found`);if(o.children.length===0)return o;const i=[];for(const l of o.children)i.push(r(l));const a=ko.merge(...i);return o.x=a.x-zm.Left,o.y=a.y-zm.Top,o.width=a.width+zm.Left+zm.Right,o.height=a.height+zm.Top+zm.Bottom,o}for(const n of e.values())!ere(n)||n.children.length===0||r(n.id)}function $Ze({latest:e,manual:r}){return He(r.id===e.id,"Node IDs do not match"),as(e,n=>{n.x=r.x,n.y=r.y,n.drifts=null})}function RZe(e){const{manual:r,latest:n}=e;return as(n,o=>{r.controlPoints?o.controlPoints=r.controlPoints:delete o.controlPoints,o.points=_0(r.points),r.labelBBox&&(o.labelBBox=n.labelBBox??r.labelBBox,o.labelBBox.x=r.labelBBox.x,o.labelBBox.y=r.labelBBox.y),o.drifts=null})}function iz(e){if("drifts"in e&&e.drifts!==null){const r={...e};return r.drifts=null,r}return e}function zZe(e,r,n){const o=TZe(r,n),i=o[0];return as(e,a=>{a.controlPoints=o,e.labelBBox&&(a.labelBBox.x=i.x,a.labelBBox.y=i.y),delete a.drifts})}function tre(e,r,n){const o=e.width/2/n.x,i=e.height/2/n.y,a=Math.min(Math.abs(o),Math.abs(i));return Qr(n).multiply(a).add(r)}function TZe(e,r){const n=Qr(ko.center(e)),o=Qr(ko.center(r));if(e===r){const s=Qr(0,e.height||0).multiply(-.5).add(n);return[s.add(Qr(-32,-80)).round().toObject(),s.add(Qr(32,-80)).round().toObject()]}const i=o.subtract(n),a=tre(e,n,i),l=tre(r,o,i.multiply(-1)).subtract(a);return[a.add(l.multiply(.4)).round().toObject(),a.add(l.multiply(.6)).round().toObject()]}const jZe=S.createContext(null);function rre(){return S.useContext(jZe)}function AZe(e){const r=rre(),n=at(async({input:{viewId:i,current:a}})=>{if(!r)return console.error("No editor port available for applying latest to manual layout"),Promise.reject(new Error("No editor port"));const[l,s]=await Promise.all([a??Promise.resolve().then(()=>r.fetchView(i,"manual")),Promise.resolve().then(()=>r.fetchView(i,"auto"))]).catch(c=>(console.error("Failed to fetch views for applying latest to manual layout",c),Promise.reject(c)));return{updated:SZe(l,s)}}),o=at(async({input:i})=>{if(!r)return console.error("No editor port available for executing change"),Promise.reject(new Error("No editor port"));for(const a of i.changes)await Promise.resolve().then(()=>r.handleChange(e,a)).catch(l=>(console.error("Failed to execute change",{change:a,err:l}),Promise.reject(l)));return{}});return Aee.provide({actors:{applyLatest:zy(n),executeChange:zy(o)}})}function nre(e){return{ref:e,get actor(){return e.current},overlays(){return mt(e.current.getSnapshot().children.overlays,"Overlays actor not found")},send:r=>e.current.send(r),navigateTo:(r,n,o)=>{e.current.send({type:"navigate.to",viewId:r,...n&&{fromNode:n},...o&&{focusOnElement:o}})},navigate:r=>{e.current.send({type:`navigate.${r}`})},fitDiagram:(r=350)=>{e.current.send({type:"xyflow.fitDiagram",duration:r})},openRelationshipsBrowser:r=>{e.current.send({type:"open.relationshipsBrowser",fqn:r})},openSource:r=>{e.current.send({type:"open.source",...r})},openElementDetails:(r,n)=>{e.current.send({type:"open.elementDetails",fqn:r,fromNode:n})},openRelationshipDetails:(...r)=>{r.length===1?e.current.send({type:"open.relationshipDetails",params:{edgeId:r[0]}}):e.current.send({type:"open.relationshipDetails",params:{source:r[0],target:r[1]}})},updateNodeData:(r,n)=>{e.current.send({type:"update.nodeData",nodeId:r,data:n})},updateEdgeData:(r,n)=>{e.current.send({type:"update.edgeData",edgeId:r,data:n})},startEditing:r=>{const n=zr(e.current.system).editorActorRef;He(n,"No editor actor found in diagram actor system"),n.send({type:"edit.start",subject:r})},stopEditing:(r=!1)=>{const n=zr(e.current.system).editorActorRef;He(n,"No editor actor found in diagram actor system"),n.send({type:"edit.finish",wasChanged:r})},undoEditing:()=>{const r=zr(e.current.system).editorActorRef;He(r,"No editor actor found in diagram actor system");const n=r.getSnapshot().context.history.length>0;return n&&r.send({type:"undo"}),n},align:r=>{e.current.send({type:"layout.align",mode:r})},resetEdgeControlPoints:()=>{e.current.send({type:"layout.resetEdgeControlPoints"})},focusNode:r=>{e.current.send({type:"focus.node",nodeId:r})},focusOnElement:r=>{const n=e.current.getSnapshot().context,o=gee(n.xynodes,r);o&&e.current.send({type:"focus.node",nodeId:o.id,autoUnfocus:!0})},get currentView(){return e.current.getSnapshot().context.view},getContext:()=>e.current.getSnapshot().context,findDiagramNode:r=>ym(e.current.getSnapshot().context,r),findEdge:r=>e.current.getSnapshot().context.xyedges.find(n=>n.data.id===r)??null,findDiagramEdge:r=>yR(e.current.getSnapshot().context,r),startWalkthrough:()=>{e.current.send({type:"walkthrough.start"})},walkthroughStep:(r="next")=>{e.current.send({type:"walkthrough.step",direction:r})},stopWalkthrough:()=>{e.current.send({type:"walkthrough.end"})},toggleFeature:(r,n)=>{e.current.send({type:"toggle.feature",feature:r,...n!==void 0&&{forceValue:n}})},highlightNotation:(r,n)=>{e.current.send({type:"notations.highlight",notation:r,...n&&{kind:n}})},unhighlightNotation:()=>{e.current.send({type:"notations.unhighlight"})},openSearch:r=>{e.current.send({type:"open.search",...r&&{search:r}})},triggerChange:r=>{e.current.send({type:"trigger.change",change:r})},switchDynamicViewVariant:r=>{e.current.send({type:"switch.dynamicViewVariant",variant:r})}}}function az(e,r){const n=r.view,o=e.view.id===n.id;if(n._type==="dynamic"&&n.variant==="sequence")return{xynodes:r.xynodes,xyedges:r.xyedges,view:n};const i=B2(e.xynodes,r.xynodes),a=o?ER(e.xyedges,r.xyedges):r.xyedges;return{xynodes:i,xyedges:a,view:n}}function DZe(e){const{xynodes:r,xyedges:n,focusedNode:o}=e;if(!o)return null;const i=new Set([o]),a=n.map(l=>l.source===o||l.target===o?(i.add(l.source),i.add(l.target),tr.setData(l,{dimmed:!1,active:!0})):tr.setData(l,{dimmed:!0,active:!1}));return{xynodes:r.map(l=>tr.setDimmed(l,!i.has(l.id))),xyedges:a}}function MZe({context:e,event:r}){return ht(r,"update.nodeData"),{xynodes:e.xynodes.map(n=>{if(n.id!==r.nodeId)return n;const o=Fq(n.data,r.data);return tt(o,n.data)?n:{...n,data:o}})}}function NZe({context:e,event:r}){return ht(r,"update.edgeData"),{xyedges:e.xyedges.map(n=>{if(n.id!==r.edgeId)return n;const o=Fq(n.data,r.data);return tt(o,n.data)?n:{...n,data:o}})}}function ore(e,r,n){const o=_o(e),i=o.width/2/n.x,a=o.height/2/n.y,l=Math.min(Math.abs(i),Math.abs(a));return Qr(n).multiply(l).add(r)}function ire(e,r){const n=mt(e.get(r.source),`Source node ${r.source} not found`),o=mt(e.get(r.target),`Target node ${r.target} not found`),i=Qr(n$(n)),a=Qr(n$(o));if(n===o){const d=Qr(0,n.height||0).multiply(-.5).add(i);return[d.add(Qr(-32,-80)).round().toObject(),d.add(Qr(32,-80)).round().toObject()]}const l=a.subtract(i),s=ore(n,i,l),c=ore(o,a,l.multiply(-1)).subtract(s);return[s.add(c.multiply(.4)).round().toObject(),s.add(c.multiply(.6)).round().toObject()]}function PZe(e){const{view:r}=e,n=[],o=[],i=new Map,a=x8.from(r.nodes.reduce((u,p)=>(i.set(p.id,p),p.parent||u.push({node:p,parent:null}),u),[]));let l=u=>!0;if(e.where)try{const u=Ou(e.where);l=p=>u({...Hq(p,["tags","kind"]),..."source"in p?{source:c(p.source)}:p,..."target"in p?{target:c(p.target)}:p})}catch(u){console.error("Error in where filter:",u)}const s="",c=u=>mt(i.get(u),`Node not found: ${u}`);let d;for(;d=a.dequeue();){const{node:u,parent:p}=d,f=xn(u.children,1)||u.kind==w1;if(f)for(const $ of u.children)a.enqueue({node:c($),parent:u});const g={x:u.x,y:u.y};p&&(g.x-=p.x,g.y-=p.y);const v={id:s+u.id,deletable:!1,position:g,zIndex:f?lc.Compound:lc.Element,style:{width:u.width,height:u.height},initialWidth:u.width,initialHeight:u.height,hidden:u.kind!==w1&&!l(u),...p&&{parentId:s+p.id}},w={viewId:r.id,id:u.id,title:u.title,color:u.color,shape:u.shape,style:u.style,depth:u.depth??0,icon:u.icon??"none",tags:u.tags??null,x:u.x,y:u.y,drifts:u.drifts??null},x={viewId:r.id,id:u.id,title:u.title,technology:u.technology??null,description:u.description??null,height:u.height,width:u.width,level:u.level,color:u.color,shape:u.shape,style:u.style,icon:u.icon??null,tags:u.tags,x:u.x,y:u.y,isMultiple:u.style?.multiple??!1,drifts:u.drifts??null};if(u.kind===w1){n.push({...v,type:"view-group",data:{isViewGroup:!0,...w},dragHandle:".likec4-compound-title-container"});continue}const k=u.modelRef??null,C=u.deploymentRef??null;if(!k&&!C)throw console.error("Invalid node",u),new Error("Element should have either modelRef or deploymentRef");const _={navigateTo:u.navigateTo??null};switch(!0){case(f&&!!C):{n.push({...v,type:"compound-deployment",data:{...w,..._,deploymentFqn:C,modelFqn:k}});break}case f:{He(!!k,"ModelRef expected"),n.push({...v,type:"compound-element",data:{...w,..._,modelFqn:k}});break}case!!C:{n.push({...v,type:"deployment",data:{...x,..._,deploymentFqn:C,modelFqn:k}});break}default:He(!!k,"ModelRef expected"),n.push({...v,type:"element",data:{...x,..._,modelFqn:k}})}}for(const u of r.edges){const p=u.source,f=u.target,g=s+u.id;if(!xn(u.points,2)){console.error("edge should have at least 2 points",u);continue}o.push({id:g,type:"relationship",source:s+p,target:s+f,zIndex:lc.Edge,hidden:!l(u),deletable:!1,data:{id:u.id,label:u.label,technology:u.technology,notes:u.notes??null,navigateTo:u.navigateTo,controlPoints:u.controlPoints??null,labelBBox:u.labelBBox??null,labelXY:null,points:u.points,color:u.color??"gray",line:u.line??"dashed",dir:u.dir??"forward",head:u.head??"normal",tail:u.tail??"none",astPath:u.astPath,drifts:u.drifts??null},interactionWidth:20})}return{bounds:r.bounds,xynodes:n,xyedges:o}}const are={parallel:1,actor:10},l4={default:"gray",active:"amber"};function BZe(e){const{actors:r,steps:n,compounds:o,parallelAreas:i,bounds:a}=e.sequenceLayout,l=[],s=[],c=d=>mt(e.nodes.find(u=>u.id===d));for(const d of o)l.push(IZe(d,c(d.origin),e));for(const d of i)l.push(OZe(d,e));for(const d of r)l.push(LZe(d,c(d.id),a,e));for(const d of n){const u=e.edges.find(p=>p.id===d.id);if(!u)throw new Error(`Edge ${d.id} not found`);s.push(FZe(d,u))}return{bounds:a,xynodes:l,xyedges:s}}function IZe({id:e,x:r,y:n,width:o,height:i,depth:a},l,s){return{id:e,type:"view-group",data:{id:l.id,title:l.title,color:l.color??"gray",shape:l.shape,style:l.style,tags:l.tags,x:r,y:n,viewId:s.id,depth:a,isViewGroup:!0,drifts:l.drifts??null},position:{x:r,y:n},draggable:!1,selectable:!1,focusable:!1,style:{pointerEvents:"none"},width:o,initialWidth:o,height:i,initialHeight:i}}function OZe({parallelPrefix:e,x:r,y:n,width:o,height:i},a){return{id:`seq-parallel-${e}`,type:"seq-parallel",data:{id:`seq-parallel-${e}`,title:"PARALLEL",technology:null,color:l4.default,shape:"rectangle",style:{},tags:[],x:r,y:n,level:0,icon:null,width:o,height:i,description:null,viewId:a.id,parallelPrefix:e,drifts:null},zIndex:are.parallel,position:{x:r,y:n},draggable:!1,deletable:!1,selectable:!1,focusable:!1,style:{pointerEvents:"none"},width:o,initialWidth:o,height:i,initialHeight:i}}function LZe({id:e,x:r,y:n,width:o,height:i,ports:a},l,s,c){return{id:e,type:"seq-actor",data:{id:l.id,x:r,y:n,level:0,icon:l.icon??null,isMultiple:l.style.multiple??!1,title:l.title,width:o,height:i,color:l.color,navigateTo:l.navigateTo??null,shape:l.shape,style:l.style,tags:l.tags,modelFqn:l.modelRef??null,technology:l.technology??null,description:l.description??null,viewHeight:s.height,viewId:c.id,ports:a,drifts:l.drifts??null},deletable:!1,selectable:!0,zIndex:are.actor,position:{x:r,y:n},width:o,initialWidth:o,height:i,initialHeight:i}}function FZe({id:e,labelBBox:r,sourceHandle:n,targetHandle:o},i){return{id:e,type:"seq-step",data:{id:e,label:i.label,technology:i.technology,notes:i.notes??null,navigateTo:i.navigateTo,controlPoints:null,labelBBox:{x:0,y:0,width:r?.width??i.labelBBox?.width??32,height:r?.height??i.labelBBox?.height??32},labelXY:null,points:i.points,color:i.color,line:i.line,dir:"forward",head:i.head??"normal",tail:i.tail??"none",astPath:i.astPath,drifts:i.drifts??null},selectable:!0,focusable:!1,zIndex:20,interactionWidth:40,source:i.source,sourceHandle:n,target:i.target,targetHandle:o}}function lre({dynamicViewVariant:e,...r}){const n=r.view,o=n._type==="dynamic",{bounds:i,xynodes:a,xyedges:l}=o&&e==="sequence"?BZe(n):PZe(r);return o&&n.variant!==e?{view:{...n,bounds:i,variant:e},xynodes:a,xyedges:l}:{view:i===n.bounds?n:{...n,bounds:i},xynodes:a,xyedges:l}}class sre{}class Tm extends sre{constructor(r,n,o){super(),this.getEdgePosition=r,this.computePosition=n,this.propertyToEdit=o}alignTo;computeLayout(r){this.alignTo=this.getEdgePosition(r)}applyPosition(r){return{[this.propertyToEdit]:this.computePosition(this.alignTo,r)}}}class VZe extends sre{layout=new Map;axisPreset;get primaryAxisCoord(){return this.axisPreset.primaryAxisCoord}get secondaryAxisCoord(){return this.axisPreset.secondaryAxisCoord}get primaryAxisDimension(){return this.axisPreset.primaryAxisDimension}get secondaryAxisDimension(){return this.axisPreset.secondaryAxisDimension}constructor(r){super(),this.axisPreset=r==="Column"?{primaryAxisDimension:"width",secondaryAxisDimension:"height",primaryAxisCoord:"x",secondaryAxisCoord:"y"}:{primaryAxisDimension:"height",secondaryAxisDimension:"width",primaryAxisCoord:"y",secondaryAxisCoord:"x"}}applyPosition(r){return this.layout?.get(r.id)??{}}computeLayout(r){const n=Jr(r,gw(a=>a[this.primaryAxisCoord])),o=this.getLayoutRect(n),i=this.getLayers(n);this.layout=this.buildLayout(i,o,n)}getLayoutRect(r){const n=Math.min(...r.map(l=>l.x)),o=Math.min(...r.map(l=>l.y)),i=Math.max(...r.map(l=>l.x+l.width)),a=Math.max(...r.map(l=>l.y+l.height));return{x:n,y:o,width:i-n,height:a-o}}getLayers(r){const n=[];let o=0,i=null;for(let a of r)if(i&&a[this.primaryAxisCoord]a.nodes.sort((l,s)=>l[this.secondaryAxisCoord]-s[this.secondaryAxisCoord])),n}buildLayout(r,n,o){const i=new Map(o.map(v=>[v.id,v])),a=[],l=r.reduce((v,w)=>v+w.primaryAxisSize,0),s=r.length>1?(n[this.primaryAxisDimension]-l)/(r.length-1):0,c=r.reduce((v,w,x)=>r[v].occupiedSpacev+w.primaryAxisSize+s,n[this.primaryAxisCoord]),p=this.buildLayerLayout(d,n,u,i,null);d.layout=p,a.push(...p.nodePositions);let f=u+d.primaryAxisSize+s,g=d;for(let v=c+1;v=0;v--){const w=r[v];f-=w.primaryAxisSize+s,w.layout=this.buildLayerLayout(w,n,f,i,g),a.push(...w.layout.nodePositions),g=w.layout.refLayer??w}return new Map(a)}buildLayerLayout(r,n,o,i,a){let l=this.scoreLayout(this.spaceAround(r,n,o),i);if(r.nodes.length!=1){const s=this.scoreLayout(this.spaceBetween(r,n,o),i);l=s[0]=r.nodes.length){const s=this.scoreLayout(this.placeInGaps(r,o,a),i);l=s[0]=r.nodes.length){const s=this.scoreLayout(this.placeInCells(r,o,a),i);l=s[0]c[this.secondaryAxisCoord]))l.set(s.id,{[this.secondaryAxisCoord]:a,[this.primaryAxisCoord]:o}),a+=s[this.secondaryAxisDimension]+i;return{nodePositions:l,refLayer:null}}placeInGaps(r,n,o){const i=new Map,a=r.nodes,l=this.getGapsPositions(o);let s=0;for(let c=0,d=a[c];c{const a=n.get(o);return He(a,`Could not find original rect for node ${o}`),[Hq(a,["x","y"]),i]}),un(([o,i])=>Math.abs(o[this.secondaryAxisCoord]-i[this.secondaryAxisCoord])),mw((o,i)=>o+i,0)),r]}getGapsPositions(r){const n=[],{layout:o,nodes:i}=r;He(o,"Layout of the layer must be computed before calling getGapsPositions");for(let a=1;aMath.min(...r.map(n=>n.x)),(r,n)=>Math.floor(r),"x");case"Top":return new Tm(r=>Math.min(...r.map(n=>n.y)),(r,n)=>Math.floor(r),"y");case"Right":return new Tm(r=>Math.max(...r.map(n=>n.x+n.width)),(r,n)=>Math.floor(r-n.width),"x");case"Bottom":return new Tm(r=>Math.max(...r.map(n=>n.y+n.height)),(r,n)=>Math.floor(r-n.height),"y");case"Center":return new Tm(r=>Math.min(...r.map(n=>n.x+n.width/2)),(r,n)=>Math.floor(r-n.width/2),"x");case"Middle":return new Tm(r=>Math.min(...r.map(n=>n.y+n.height/2)),(r,n)=>Math.floor(r-n.height/2),"y")}}function cre(e){const{width:r,height:n}=_o(e);return{...e.internals.positionAbsolute,id:e.id,width:r,height:n}}function HZe(e){switch(e){case"Left":case"Right":case"Top":case"Bottom":case"Center":case"Middle":return qZe(e);case"Column":case"Row":return new VZe(e);default:Qo(e)}}const S0=e=>Qe.createAction(({context:r,event:n})=>{let o,i;e?(o=e.viewport,i=e.duration):(ht(n,"xyflow.setViewport"),o=n.viewport,i=n.duration),i=i??400;const{panZoom:a}=mt(r.xystore).getState(),l=i>0?{duration:i,interpolate:"smooth"}:void 0;a?.setViewport({x:Math.round(o.x),y:Math.round(o.y),zoom:o.zoom},l).catch(s=>{console.error("Error during fitDiagram panZoom setViewport",{err:s})})}),s4=e=>Qe.enqueueActions(({context:r,event:n,enqueue:o})=>{let i=r.view.bounds,a;e?(i=e.bounds??r.view.bounds,a=e.duration):n.type==="xyflow.fitDiagram"&&(i=n.bounds??r.view.bounds,a=n.duration,o.assign({viewportChangedManually:!1})),a??=450;const{width:l,height:s,panZoom:c,transform:d}=mt(r.xystore).getState(),u=Math.max(1,d[2]),p=Ws(i,l,s,xa,u,r.fitViewPadding);p.x=Math.round(p.x),p.y=Math.round(p.y);const f=a>0?{duration:a,interpolate:"smooth"}:void 0;c?.setViewport(p,f).catch(g=>{console.error("Error during fitDiagram panZoom setViewport",{err:g})})}),E0=()=>Qe.createAction(({context:e})=>{const r=!!e.activeWalkthrough&&e.dynamicViewVariant==="sequence",{bounds:n,duration:o=450}=r?nGe({context:e}):tGe({context:e}),{width:i,height:a,panZoom:l,transform:s}=mt(e.xystore).getState(),c=Math.max(1,s[2]),d=Ws(n,i,a,xa,c,e.fitViewPadding);d.x=Math.round(d.x),d.y=Math.round(d.y);const u=o>0?{duration:o,interpolate:"smooth"}:void 0;l?.setViewport(d,u).catch(p=>{console.error("Error during fitFocusedBounds panZoom setViewport",{err:p})})}),lz=30,dre=e=>{const{delay:r=lz,...n}=e??{};return Qe.raise({type:"xyflow.setViewport",...n},{id:"fitDiagram",delay:r})},fc=()=>Qe.cancel("fitDiagram"),c4=e=>{const{delay:r=lz,...n}=e??{};return Qe.raise({type:"xyflow.fitDiagram",...n},{id:"fitDiagram",delay:r})},UZe=e=>Qe.raise(({context:r})=>({type:"update.view",view:r.view}),{delay:lz}),sz=e=>Qe.assign(({context:r})=>({viewportBefore:{wasChangedManually:r.viewportChangedManually,value:{...r.viewport}}})),cz=e=>Qe.enqueueActions(({enqueue:r,context:{viewportBefore:n}})=>{r(fc()),n?(r.assign({viewportChangedManually:n.wasChangedManually,viewportBefore:null}),e&&e.delay===0?r(S0({viewport:n.value,...e})):r(dre({viewport:n.value,...e}))):e&&e.delay===0?r(s4({...e})):r(c4({...e}))}),ure=()=>Qe.assign(({context:e})=>({toggledFeatures:{...e.toggledFeatures,enableCompareWithLatest:!1},viewportOnAutoLayout:null,viewportOnManualLayout:null})),WZe=()=>Qe.assign(({context:e,event:r})=>{if(ht(r,"xyflow.edgeDoubleClick"),!r.edge.data.controlPoints)return{};const{nodeLookup:n}=e.xystore.getState();return{xyedges:e.xyedges.map(o=>{if(o.id===r.edge.id){const i=ire(n,o),a=i[0];return{...o,data:{...o.data,controlPoints:i,labelBBox:o.data.labelBBox?{...o.data.labelBBox,...a}:null,labelXY:null}}}return o})}}),Ap=()=>Qe.assign(({context:e,event:r})=>{ht(r,"xyflow.nodeClick");const{lastClickedNode:n}=e;return!n||n.id!==r.node.id?{lastClickedNode:{id:r.node.id,clicks:1,timestamp:Date.now()}}:{lastClickedNode:{id:n.id,clicks:n.clicks+1,timestamp:Date.now()}}}),d4=()=>Qe.assign(({event:e})=>{let r,n=!1;switch(e.type){case"xyflow.nodeClick":r=e.node.data.id;break;case"focus.node":r=e.nodeId,n=e.autoUnfocus===!0;break;default:throw new Error(`Unexpected event type: ${e.type} in action 'assign: focusedNode'`)}return{focusedNode:r,autoUnfocusTimer:n}}),jm=()=>Qe.assign(()=>({lastClickedNode:null})),pre=()=>Qe.assign(({event:e})=>(ht(e,"update.features"),{features:{...e.features}})),GZe=()=>Qe.assign(({event:e})=>(ht(e,"update.inputs"),{...e.inputs})),hre=e=>Qe.assign(({context:r,event:n})=>{let o;ht(n,"update.view"),o="xynodes"in n?n:lre({dynamicViewVariant:r.dynamicViewVariant,view:n.view,where:r.where});const i=az(r,o);let{lastClickedNode:a,focusedNode:l,activeWalkthrough:s}=r;if(a||l||s){const c=new Set(i.xynodes.map(u=>u.id));a&&!c.has(a.id)&&(a=null),l&&!c.has(l)&&(l=null);const d=s?.stepId;return d&&!i.xyedges.some(u=>u.id===d)&&(s=null),{...i,lastClickedNode:a,focusedNode:l,activeWalkthrough:s}}return i}),C0=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const n=DZe(e);n?r.assign(n):r.raise({type:"key.esc"})}),u4=()=>Qe.assign(({context:e})=>({xynodes:e.xynodes.map(tr.setDimmed(!1)),xyedges:e.xyedges.map(tr.setData({dimmed:!1,active:!1}))})),YZe=()=>Qe.assign(({event:e})=>(ht(e,"switch.dynamicViewVariant"),{dynamicViewVariant:e.variant})),XZe=e=>Qe.assign(({context:r,event:n})=>{let o=e?.node;return o||(ht(n,"xyflow.nodeMouseEnter"),o=n.node),{xynodes:r.xynodes.map(i=>i.id===o.id?tr.setHovered(i,!0):i)}}),KZe=e=>Qe.assign(({context:r,event:n})=>{let o=e?.node;return o||(ht(n,"xyflow.nodeMouseLeave"),o=n.node),{xynodes:r.xynodes.map(i=>i.id===o.id?tr.setHovered(i,!1):i)}}),dz=()=>Qe.emit(()=>({type:"paneClick"})),fre=e=>Qe.emit(({event:r})=>e?{type:"openSource",params:e}:(ht(r,"open.source"),{type:"openSource",params:r})),ZZe=()=>Qe.emit(({context:e})=>(He(e.xyflow,"XYFlow instance not found"),{type:"initialized",instance:e.xyflow})),Dp=()=>Qe.emit(({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),{type:"nodeClick",node:mt(ym(e,r.node.id),`Node ${r.node.id} not found in diagram`),xynode:r.node})),uz=e=>Qe.emit(({context:r})=>({type:"navigateTo",viewId:e?.viewId??mt(r.lastOnNavigate,"Invalid state, lastOnNavigate is null").toView})),pz=()=>Qe.emit(({context:e,event:r})=>(ht(r,"xyflow.edgeClick"),{type:"edgeClick",edge:mt(yR(e,r.edge.id),`Edge ${r.edge.id} not found in diagram`),xyedge:r.edge})),mre=e=>Qe.enqueueActions(({event:r,enqueue:n})=>{let o=e;o||(ht(r,"trigger.change"),o=r.change),n.assign({viewportChangedManually:!0}),n.sendTo(zr.editorActor,{type:"change",change:o})}),QZe=()=>Qe.enqueueActions(({event:e,system:r,context:n,enqueue:o})=>{if(!n.features.enableCompareWithLatest){console.warn("Layout type cannot be changed while CompareWithLatest feature is disabled");return}const i=n.view._layout;let a=i==="auto"?"manual":"auto";if(e.type==="emit.onLayoutTypeChange"&&(a=e.layoutType),i===a){console.warn("Ignoring layout type change event, layout type is already",i);return}if(n.toggledFeatures.enableCompareWithLatest===!0){i==="manual"&&a==="auto"&&zr(r).editorActorRef?.send({type:"cancel"});const l=n.viewport;i==="auto"&&o.assign({viewportOnAutoLayout:l}),i==="manual"&&o.assign({viewportOnManualLayout:l})}o.emit({type:"onLayoutTypeChange",layoutType:a})}),JZe=e=>Qe.createAction(({context:r,event:n})=>{let o;ht(n,"layout.align"),o=n.mode;const i=mt(r.xystore,"xystore is not initialized"),{nodeLookup:a,parentLookup:l}=i.getState(),s=[...new Set(a.values().filter(p=>p.selected).map(p=>p.id)).difference(new Set(l.keys()))];if(!xn(s,2)){console.warn("At least 2 nodes must be selected to align");return}const c=Jte(i,s),d=HZe(o),u=s.map(p=>({node:mt(a.get(p)),rect:mt(c.rects.get(p))}));d.computeLayout(u.map(({node:p})=>cre(p)));for(const{rect:p,node:f}of u)p.positionAbsolute={...p.positionAbsolute,...d.applyPosition(cre(f))};c.updateXYFlow()}),eQe=()=>Qe.assign(({context:e})=>{const{nodeLookup:r}=e.xystore.getState();return{xyedges:e.xyedges.map(n=>{if(!n.data.controlPoints)return n;const o=ire(r,n),i=o[0];return{...n,data:{...n.data,controlPoints:o,labelBBox:n.data.labelBBox?{...n.data.labelBBox,x:i.x,y:i.y}:null,labelXY:n.data.labelXY?i:null}}})}}),tQe=()=>Qe.assign(({context:e,event:r})=>{ht(r,"notations.highlight");const{notation:n,kind:o}=r,i=o?[o]:n.kinds,a=c=>c.notation===n.title&&c.shape===n.shape&&c.color===n.color&&i.includes(c.kind),l=e.xynodes.map(c=>{const d=ym(e,c.id),u=d&&a(d);return tr.setDimmed(c,u?!1:"immediate")}),s=e.xyedges.map(c=>tr.setDimmed(c,!0));return{xynodes:l,xyedges:s}}),rQe=()=>Qe.assign(({context:e,event:r})=>(ht(r,"tag.highlight"),{xynodes:e.xynodes.map(n=>n.data.tags?.includes(r.tag)?tr.setDimmed(n,!1):tr.setDimmed(n,!0))})),nQe=()=>Qe.assign(({context:e,event:r})=>{ht(r,"toggle.feature");const n=e.toggledFeatures[`enable${r.feature}`]??e.features[`enable${r.feature}`],o=r.forceValue??!n;return{toggledFeatures:{...e.toggledFeatures,[`enable${r.feature}`]:o}}}),oQe=()=>Qe.sendTo(zr.searchActor,{type:"close"}),iQe=()=>Qe.sendTo(zr.overlaysActor,{type:"close.all"}),gre=()=>Qe.enqueueActions(({enqueue:e,system:r})=>{const n=zr(r).editorActorRef;n&&e.stopChild(n)}),hz=()=>Qe.enqueueActions(({enqueue:e,context:r,system:n,check:o})=>{const i=o("enabled: Editor"),a=zr(n).editorActorRef;if(!i&&a){e.stopChild(a);return}i&&!a&&e.spawnChild("editorActor",{id:"editor",systemId:"editor",input:{viewId:r.view.id},syncSnapshot:!0})}),fz=(e="node")=>Qe.sendTo(zr.editorActor,{type:"edit.start",subject:e}),aQe=()=>Qe.sendTo(zr.editorActor,{type:"synced"}),mz=(e=!0)=>Qe.sendTo(zr.editorActor,{type:"edit.finish",wasChanged:e}),yre=()=>Qe.sendTo(zr.editorActor,{type:"cancel"}),vre=e=>"modelFqn"in e.data&&Zn(e.data.modelFqn),gz=e=>Qe.enqueueActions(({context:r,event:n,enqueue:o})=>{let i=null,a,l;switch(!0){case n.type==="xyflow.nodeClick":{if(!vre(n.node)){console.warn("No modelFqn in clicked node data");return}l=n.node.data.modelFqn,a=n.node.data.id;break}case n.type==="open.elementDetails":{l=n.fqn,a=n.fromNode;break}default:{if(!r.lastClickedNode){console.warn("No last clicked node");return}a=r.lastClickedNode.id;const c=r.xynodes.find(d=>d.id===a);if(!c||!vre(c)){console.warn("No modelFqn in last clicked node");return}l=c.data.modelFqn;break}}const s=a?r.xystore.getState().nodeLookup.get(a):null;if(a&&s){const c=Ku(s),d=r.xyflow.getZoom(),u={...r.xyflow.flowToScreenPosition(c),width:c.width*d,height:c.height*d};i={node:a,clientRect:u}}o.sendTo(zr.overlaysActor,{type:"open.elementDetails",subject:l,currentView:r.view,...i&&{initiatedFrom:i}})}),yz=()=>Qe.enqueueActions(({context:e,event:r,enqueue:n,check:o})=>{if(ht(r,["open.relationshipsBrowser","open.relationshipDetails","open.elementDetails"]),!o("enabled: Overlays")){console.warn("Overlays feature is disabled");return}switch(r.type){case"open.elementDetails":{o("enabled: ElementDetails")?n(gz()):console.warn("ElementDetails feature is disabled");break}case"open.relationshipsBrowser":{n.sendTo(zr.overlaysActor,{type:"open.relationshipsBrowser",subject:r.fqn,viewId:e.view.id,scope:"view",closeable:!0,enableChangeScope:!0,enableSelectSubject:!0});break}case"open.relationshipDetails":{n.sendTo(zr.overlaysActor,{type:"open.relationshipDetails",viewId:e.view.id,...r.params});break}default:Qo(r)}}),p4=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const n=e.focusedNode??e.lastClickedNode?.id;if(!n||!e.features.enableVscode)return;const o=ym(e,n);o&&(o.deploymentRef?r.raise({type:"open.source",deployment:o.deploymentRef}):o.modelRef&&r.raise({type:"open.source",element:o.modelRef}))}),bre=()=>Qe.enqueueActions(({enqueue:e,check:r,system:n})=>{const o=r("enabled: Overlays"),i=zr(n).overlaysActorRef;if(o&&!i){e.spawnChild("overlaysActorLogic",{id:"overlays",systemId:"overlays"});return}!o&&i&&(e.sendTo(i,{type:"close.all"}),e.stopChild("overlays"))}),xre=()=>Qe.enqueueActions(({enqueue:e,context:{features:{enableSearch:r}},system:n})=>{const o=zr(n).searchActorRef;if(r&&!o){e.spawnChild("searchActorLogic",{id:"search",systemId:"search"});return}!r&&o&&(e.sendTo(o,{type:"close"}),e.stopChild("search"))}),lQe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,"xyflow.edgeMouseEnter");let o=n.edge;e.assign({xyedges:r.xyedges.map(i=>i.id===n.edge.id?(o=tr.setHovered(i,!0),o):i)}),e.emit({type:"edgeMouseEnter",edge:o,event:n.event})}),sQe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,"xyflow.edgeMouseLeave");let o=n.edge;e.assign({xyedges:r.xyedges.map(i=>i.id===n.edge.id?(o=tr.setHovered(i,!1),o):i)}),e.emit({type:"edgeMouseLeave",edge:o,event:n.event})}),wre=()=>Qe.spawnChild("hotkeyActorLogic",{id:"hotkey"}),kre=()=>Qe.stopChild("hotkey"),_re=3e3,cQe=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{e.autoUnfocusTimer&&_re>0&&r.raise({type:"focus.autoUnfocus"},{delay:_re,id:"autoUnfocusTimer"})}),dQe=()=>Qe.cancel("autoUnfocusTimer"),uQe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,["navigate.to","navigate.back","navigate.forward"]);const{view:o,focusedNode:i,activeWalkthrough:a,dynamicViewVariant:l,viewport:s,viewportChangedManually:c,viewportBefore:d,navigationHistory:{currentIndex:u,history:p}}=r;let f=[...p];if(u{v.viewport={...s},v.viewportChangedManually=c,v.focusedNode=i,o._type==="dynamic"?(v.activeWalkthrough=a?.stepId??null,v.dynamicViewVariant=l):(v.activeWalkthrough=null,v.dynamicViewVariant=null),d?v.viewportBefore=d:delete v.viewportBefore});f=[...p],f[u]=g}switch(n.type){case"navigate.to":{e.assign({navigationHistory:{currentIndex:u,history:f},lastOnNavigate:{fromView:r.view.id,toView:n.viewId,fromNode:n.fromNode??null,focusOnElement:n.focusOnElement??null}}),e(uz());break}case"navigate.back":{He(u>0,"Cannot navigate back");const g=f[u-1];e.assign({navigationHistory:{currentIndex:u-1,history:f},lastOnNavigate:null}),e(uz({viewId:g.viewId}));break}case"navigate.forward":{He(uQe.enqueueActions(({enqueue:e,event:r,context:n})=>{if(r.type!=="update.view"){console.warn(`Ignoring unexpected event type: ${r.type} in action 'update.view'`);return}const o=r.view;if(o.id!==n.view.id){console.warn("updateView called for another view - ignoring",{event:r});return}if(e(hre()),r.source==="editor")return;e(aQe());let i=!n.viewportChangedManually&&!n.focusedNode&&!n.activeWalkthrough;if(n.toggledFeatures.enableCompareWithLatest===!0&&n.view._layout!==o._layout){if(o._layout==="auto"&&n.viewportOnAutoLayout){e(S0({viewport:n.viewportOnAutoLayout,duration:0}));return}if(o._layout==="manual"&&n.viewportOnManualLayout){e(S0({viewport:n.viewportOnManualLayout,duration:0}));return}}i=i||o._type==="dynamic"&&n.view._type==="dynamic"&&o.variant!==n.view.variant,i=i||n.toggledFeatures.enableCompareWithLatest===!0&&!!o._layout&&n.view._layout!==o._layout,i&&(e(fc()),e(c4({bounds:r.view.bounds})))});var Ho={},bz={},Sre;function Ere(){if(Sre)return bz;Sre=1;var e=I2();function r(i,{machine:a,context:l},s,c){const d=(u,p)=>{if(typeof u=="string"){const f=e.resolveReferencedActor(a,u);if(!f)throw new Error(`Actor logic '${u}' not implemented in machine '${a.id}'`);const g=e.createActor(f,{id:p?.id,parent:i.self,syncSnapshot:p?.syncSnapshot,input:typeof p?.input=="function"?p.input({context:l,event:s,self:i.self}):p?.input,src:u,systemId:p?.systemId});return c[g.id]=g,g}else return e.createActor(u,{id:p?.id,parent:i.self,syncSnapshot:p?.syncSnapshot,input:p?.input,src:u,systemId:p?.systemId})};return(u,p)=>{const f=d(u,p);return c[f.id]=f,i.defer(()=>{f._processingStatus!==e.ProcessingStatus.Stopped&&f.start()}),f}}function n(i,a,l,s,{assignment:c}){if(!a.context)throw new Error("Cannot assign to undefined `context`. Ensure that `context` is defined in the machine config.");const d={},u={context:a.context,event:l.event,spawn:r(i,a,l.event,d),self:i.self,system:i.system};let p={};if(typeof c=="function")p=c(u,s);else for(const g of Object.keys(c)){const v=c[g];p[g]=typeof v=="function"?v(u,s):v}const f=Object.assign({},a.context,p);return[e.cloneMachineSnapshot(a,{context:f,children:Object.keys(d).length?{...a.children,...d}:a.children}),void 0,void 0]}function o(i){function a(l,s){}return a.type="xstate.assign",a.assignment=i,a.resolve=n,a}return bz.assign=o,bz}var mc={},Cre;function pQe(){if(Cre)return mc;Cre=1;var e=I2(),r=Ere();function n(k,C,_,$,{event:R}){const T=typeof R=="function"?R(_,$):R;return[C,{event:T},void 0]}function o(k,{event:C}){k.defer(()=>k.emit(C))}function i(k){function C(_,$){}return C.type="xstate.emit",C.event=k,C.resolve=n,C.execute=o,C}let a=(function(k){return k.Parent="#_parent",k.Internal="#_internal",k})({});function l(k,C,_,$,{to:R,event:T,id:A,delay:z},j){const I=C.machine.implementations.delays;if(typeof T=="string")throw new Error(`Only event objects may be used with sendTo; use sendTo({ type: "${T}" }) instead`);const P=typeof T=="function"?T(_,$):T;let L;if(typeof z=="string"){const V=I&&I[z];L=typeof V=="function"?V(_,$):V}else L=typeof z=="function"?z(_,$):z;const H=typeof R=="function"?R(_,$):R;let M;if(typeof H=="string"){if(H===a.Parent?M=k.self._parent:H===a.Internal?M=k.self:H.startsWith("#_")?M=C.children[H.slice(2)]:M=j.deferredActorIds?.includes(H)?H:C.children[H],!M)throw new Error(`Unable to send event to actor '${H}' from machine '${C.machine.id}'.`)}else M=H||k.self;return[C,{to:M,targetId:typeof H=="string"?H:void 0,event:P,id:A,delay:L},void 0]}function s(k,C,_){typeof _.to=="string"&&(_.to=C.children[_.to])}function c(k,C){k.defer(()=>{const{to:_,event:$,delay:R,id:T}=C;if(typeof R=="number"){k.system.scheduler.schedule(k.self,_,$,R,T);return}k.system._relay(k.self,_,$.type===e.XSTATE_ERROR?e.createErrorActorEvent(k.self.id,$.data):$)})}function d(k,C,_){function $(R,T){}return $.type="xstate.sendTo",$.to=k,$.event=C,$.id=_?.id,$.delay=_?.delay,$.resolve=l,$.retryResolve=s,$.execute=c,$}function u(k,C){return d(a.Parent,k,C)}function p(k,C){return d(k,({event:_})=>_,C)}function f(k,C,_,$,{collect:R}){const T=[],A=function(z){T.push(z)};return A.assign=(...z)=>{T.push(r.assign(...z))},A.cancel=(...z)=>{T.push(e.cancel(...z))},A.raise=(...z)=>{T.push(e.raise(...z))},A.sendTo=(...z)=>{T.push(d(...z))},A.sendParent=(...z)=>{T.push(u(...z))},A.spawnChild=(...z)=>{T.push(e.spawnChild(...z))},A.stopChild=(...z)=>{T.push(e.stopChild(...z))},A.emit=(...z)=>{T.push(i(...z))},R({context:_.context,event:_.event,enqueue:A,check:z=>e.evaluateGuard(z,C.context,_.event,C),self:k.self,system:k.system},$),[C,void 0,T]}function g(k){function C(_,$){}return C.type="xstate.enqueueActions",C.collect=k,C.resolve=f,C}function v(k,C,_,$,{value:R,label:T}){return[C,{value:typeof R=="function"?R(_,$):R,label:T},void 0]}function w({logger:k},{value:C,label:_}){_?k(_,C):k(C)}function x(k=({context:_,event:$})=>({context:_,event:$}),C){function _($,R){}return _.type="xstate.log",_.value=k,_.label=C,_.resolve=v,_.execute=w,_}return mc.SpecialTargets=a,mc.emit=i,mc.enqueueActions=g,mc.forwardTo=p,mc.log=x,mc.sendParent=u,mc.sendTo=d,mc}var $re;function hQe(){if($re)return Ho;$re=1,Object.defineProperty(Ho,"__esModule",{value:!0});var e=Ere(),r=I2(),n=pQe();return RR(),Ho.assign=e.assign,Ho.cancel=r.cancel,Ho.raise=r.raise,Ho.spawnChild=r.spawnChild,Ho.stop=r.stop,Ho.stopChild=r.stopChild,Ho.emit=n.emit,Ho.enqueueActions=n.enqueueActions,Ho.forwardTo=n.forwardTo,Ho.log=n.log,Ho.sendParent=n.sendParent,Ho.sendTo=n.sendTo,Ho}var fr=hQe();const fQe=Qe.createStateConfig({on:{"xyflow.init":{actions:fr.assign(({context:e,event:r})=>({initialized:{...e.initialized,xyflow:!0},xyflow:r.instance})),target:"isReady"},"update.view":{actions:[hre(),fr.assign(({context:e})=>({initialized:{...e.initialized,xydata:!0}}))],target:"isReady"}}}),mQe=Qe.createStateConfig({always:[{guard:"isReady",actions:[s4({duration:0}),fr.assign(({context:e})=>({navigationHistory:{currentIndex:0,history:[{viewId:e.view.id,viewport:{...e.xyflow.getViewport()},viewportChangedManually:!1}]}})),ZZe()],target:"ready"},{target:"initializing"}]}),gQe=()=>Qe.assign(({context:e,event:r})=>{ht(r,"update.view");let{lastOnNavigate:n,navigationHistory:{currentIndex:o,history:i}}=e;const a=i[o];if(!a||a.viewId===r.view.id||n)return{};const l=o>0?mt(i[o-1]):null;if(l&&l.viewId===r.view.id)return{navigationHistory:{currentIndex:o-1,history:i},lastOnNavigate:null};const s=ovR(u)===c);if(d)return{lastOnNavigate:{fromView:e.view.id,toView:r.view.id,fromNode:d.id}}}return{}}),yQe=Qe.createStateConfig({id:zn.navigating.slice(1),always:{target:zn.idle,actions:[fc(),gQe(),ure(),rs(({enqueue:e,context:r,event:n})=>{ht(n,"update.view");const{xyflow:o,xystore:i,navigationHistory:{currentIndex:a,history:l}}=r,s="xynodes"in n?n:{...n,...lre({dynamicViewVariant:r.dynamicViewVariant,view:n.view,where:r.where})};He(o,"xyflow is not initialized");const c=x=>{const k=o.getZoom(),C=x.zoom({type:"focus.node",nodeId:e.node.id})),Dp()]}],"focus.node":{actions:[d4(),C0(),p4(),E0()]},"key.esc":{target:zn.idle},"xyflow.paneClick":{actions:[jm(),dz()],target:zn.idle},"notations.unhighlight":{actions:C0()},"tag.unhighlight":{actions:C0()},"update.view":{guard:"is same view",actions:[vz(),C0()]}}}),bQe=Qe.createStateConfig({id:zn.idle.slice(1),on:{"xyflow.nodeClick":[{guard:Bd.and(["enabled: Readonly","enabled: FocusMode","click: node has connections",Bd.or(["click: same node","click: selected node"])]),actions:[Ap(),d4(),Dp()],target:zn.focused},{guard:Bd.and(["enabled: Readonly","enabled: ElementDetails","click: node has modelFqn",Bd.or(["click: same node","click: selected node"])]),actions:[Ap(),p4(),gz(),Dp()]},{actions:[Ap(),p4(),Dp()]}],"xyflow.paneClick":{actions:[jm(),dz()]},"xyflow.paneDblClick":{actions:[jm(),fr.enqueueActions(({context:e,enqueue:r,check:n})=>{n("enabled: FitView")&&r(s4()),r(fre({view:e.view.id}))})]},"focus.node":[{guard:"focus.node: autoUnfocus",actions:d4(),target:zn.focused},{guard:"enabled: FocusMode",actions:d4(),target:zn.focused}],"xyflow.edgeClick":{guard:Bd.and(["enabled: Readonly","is dynamic view","enabled: DynamicViewWalkthrough","click: selected edge"]),actions:[jm(),fr.raise(({event:e})=>({type:"walkthrough.start",stepId:e.edge.id})),pz()]}}}),xQe=Qe.createStateConfig({id:zn.printing.slice(1),entry:[fc(),sz(),rs(({enqueue:e,context:r})=>{const n=r.view.bounds,o=16;e(S0({viewport:{x:n.x+o,y:n.y+o,zoom:1},duration:0}))})],exit:[cz({delay:0,duration:0})],on:{"media.print.off":{target:zn.idle},"*":{actions:[yE(({event:e})=>`Printing state - ignoring event: ${e.type}`)]}}}),Am=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const{activeWalkthrough:n}=e;if(!n){console.warn("Active walkthrough is null"),r.raise({type:"walkthrough.end"});return}const{stepId:o,parallelPrefix:i}=n,a=e.xyedges.find(l=>l.id===o);if(!a){console.warn("Invalid walkthrough stepId:",o),r.raise({type:"walkthrough.end"});return}r.assign({xyedges:e.xyedges.map(l=>{const s=o===l.id||!!i&&l.id.startsWith(i);return tr.setData(l,{active:s,dimmed:o!==l.id})}),xynodes:e.xynodes.map(l=>{const s=a.source!==l.id&&a.target!==l.id;return l.type==="seq-parallel"?tr.setData(l,{color:i===l.data.parallelPrefix?l4.active:l4.default,dimmed:s}):tr.setDimmed(l,s)})})}),wQe=()=>Qe.emit(({context:e})=>{const r=e.xyedges.find(n=>n.id===e.activeWalkthrough?.stepId);return He(r,"Invalid walkthrough state"),{type:"walkthroughStarted",edge:r}}),kQe=()=>Qe.emit(()=>({type:"walkthroughStopped"})),Rre=()=>Qe.emit(({context:e})=>{const r=e.xyedges.find(n=>n.id===e.activeWalkthrough?.stepId);return He(r,"Invalid walkthrough state"),{type:"walkthroughStep",edge:r}}),_Qe=Qe.createStateConfig({id:zn.walkthrough.slice(1),entry:[wre(),yre(),fc(),sz(),fr.assign({activeWalkthrough:({context:e,event:r})=>{ht(r,"walkthrough.start");const n=r.stepId??hf(e.xyedges).id;return{stepId:n,parallelPrefix:Z8(n)}}}),Am(),E0(),wQe()],exit:[kre(),fr.enqueueActions(({enqueue:e,context:r})=>{e.assign({activeWalkthrough:null}),r.dynamicViewVariant==="sequence"&&r.activeWalkthrough?.parallelPrefix&&e.assign({xynodes:r.xynodes.map(n=>n.type==="seq-parallel"?tr.setData(n,{color:l4.default}):n)})}),u4(),cz(),kQe()],on:{"key.esc":{target:zn.idle},"key.arrow.left":{actions:fr.raise({type:"walkthrough.step",direction:"previous"})},"key.arrow.up":{actions:fr.raise({type:"walkthrough.step",direction:"previous"})},"key.arrow.right":{actions:fr.raise({type:"walkthrough.step",direction:"next"})},"key.arrow.down":{actions:fr.raise({type:"walkthrough.step",direction:"next"})},"walkthrough.step":{actions:[fr.assign(({context:e,event:r})=>{const{stepId:n}=e.activeWalkthrough,o=e.xyedges.findIndex(l=>l.id===n),i=ta(r.direction==="next"?o+1:o-1,{min:0,max:e.xyedges.length-1});if(i===o)return{};const a=e.xyedges[i].id;return{activeWalkthrough:{stepId:a,parallelPrefix:Z8(a)}}}),Am(),E0(),Rre()]},"xyflow.edgeClick":{actions:[fr.assign(({event:e,context:r})=>!k1(e.edge.id)||e.edge.id===r.activeWalkthrough?.stepId?{}:{activeWalkthrough:{stepId:e.edge.id,parallelPrefix:Z8(e.edge.id)}}),Am(),E0(),pz(),Rre()]},"notations.unhighlight":{actions:Am()},"tag.unhighlight":{actions:Am()},"update.view":{guard:"is same view",actions:[vz(),Am()]},"walkthrough.end":{target:zn.idle},"xyflow.paneDblClick":{target:zn.idle}}}),SQe=Qe.createStateConfig({initial:"idle",entry:[fr.spawnChild("mediaPrintActorLogic",{id:"mediaPrint"}),hz(),bre(),xre()],exit:[fc(),fr.stopChild("mediaPrint"),iQe(),oQe(),gre()],states:{idle:bQe,focused:vQe,walkthrough:_Qe,printing:xQe},on:{"navigate.*":{actions:uQe()},"layout.align":{guard:"not readonly",actions:[fz("node"),JZe(),mz(!0)]},"layout.resetEdgeControlPoints":{guard:"not readonly",actions:[fz("edge"),eQe(),mz(!0)]},"layout.resetManualLayout":{guard:"not readonly",actions:[yre(),ure(),mre({op:"reset-manual-layout"})]},"xyflow.resized":{guard:({context:e})=>e.features.enableFitView&&!e.viewportChangedManually,actions:[fc(),c4({delay:200})]},"open.elementDetails":{actions:yz()},"open.relationshipsBrowser":{actions:yz()},"open.relationshipDetails":{actions:yz()},"open.source":{guard:"enabled: OpenSource",actions:fre()},"walkthrough.start":{guard:"is dynamic view",target:zn.walkthrough},"toggle.feature":{actions:[nQe(),hz()]},"update.features":{actions:[pre(),bre(),xre(),hz()]},"xyflow.nodeMouseEnter":{actions:XZe()},"xyflow.nodeMouseLeave":{actions:KZe()},"xyflow.edgeMouseEnter":{actions:lQe()},"xyflow.edgeMouseLeave":{actions:sQe()},"xyflow.edgeDoubleClick":{guard:Bd.and(["not readonly",({event:e})=>!!e.edge.data.controlPoints&&e.edge.data.controlPoints.length>0]),actions:[fz("edge"),WZe(),mz(!0)]},"notations.highlight":{actions:tQe()},"notations.unhighlight":{actions:u4()},"tag.highlight":{actions:rQe()},"tag.unhighlight":{actions:u4()},"open.search":{guard:"enabled: Search",actions:fr.sendTo(({system:e})=>zr(e).searchActorRef,({event:e})=>({type:"open",search:e.search}))},"xyflow.paneClick":{actions:[jm(),dz()]},"xyflow.nodeClick":{actions:[Ap(),Dp()]},"xyflow.edgeClick":{actions:[jm(),pz()]},"xyflow.fitDiagram":{guard:"enabled: FitView",actions:s4()},"xyflow.setViewport":{actions:S0()},"update.view":[{guard:"is another view",target:zn.navigating},{actions:vz()}],"media.print.on":{target:zn.printing}}}),xz="likec4:diagram:toggledFeatures",zre={read(){try{let e=sessionStorage.getItem(xz);return e?JSON.parse(e):null}catch(e){return console.error(`Error reading fromStorage ${xz}:`,e),null}},write(e){return sessionStorage.setItem(xz,JSON.stringify(ry(e,Pq))),e}},EQe=Qe.createMachine({initial:"initializing",context:({input:e})=>({...e,xyedges:[],xynodes:[],features:{...WG},toggledFeatures:zre.read()??{enableReadOnly:!0,enableCompareWithLatest:!1},initialized:{xydata:!1,xyflow:!1},viewportChangedManually:!1,lastOnNavigate:null,lastClickedNode:null,focusedNode:null,autoUnfocusTimer:!1,activeElementDetails:null,viewportBefore:null,viewportOnManualLayout:null,viewportOnAutoLayout:null,navigationHistory:{currentIndex:0,history:[]},viewport:{x:0,y:0,zoom:1},xyflow:null,dynamicViewVariant:e.dynamicViewVariant??(e.view._type==="dynamic"?e.view.variant:"diagram")??"diagram",activeWalkthrough:null}),states:{initializing:fQe,isReady:mQe,ready:SQe,navigating:yQe,final:{type:"final",entry:[gre(),fc(),fr.stopChild("hotkey"),fr.stopChild("overlays"),fr.stopChild("search"),fr.stopChild("mediaPrint"),fr.assign({xyflow:null,xystore:null,xyedges:[],xynodes:[],initialized:{xydata:!1,xyflow:!1}})]}},on:{"update.nodeData":{actions:fr.assign(MZe)},"update.edgeData":{actions:fr.assign(NZe)},"switch.dynamicViewVariant":{guard:({context:e,event:r})=>e.dynamicViewVariant!==r.variant,actions:[YZe(),UZe()]},"update.inputs":{actions:GZe()},"update.view-bounds":{actions:fr.assign(({context:e,event:r})=>({view:{...e.view,bounds:r.bounds}}))},"update.features":{actions:pre()},"trigger.change":{actions:mre()},"emit.onLayoutTypeChange":{actions:QZe()},"xyflow.applyNodeChanges":{actions:fr.assign({xynodes:({context:e,event:r})=>rw(r.changes,e.xynodes)})},"xyflow.applyEdgeChanges":{actions:fr.assign({xyedges:({context:e,event:r})=>nw(r.changes,e.xyedges)})},"xyflow.viewportMoved":{actions:fr.assign(({event:e,context:r})=>({viewportChangedManually:r.viewportChangedManually||e.manually,viewport:e.viewport}))},destroy:{target:".final"}}}),CQe=EQe;function $Qe({view:e,zoomable:r,pannable:n,nodesDraggable:o,nodesSelectable:i,fitViewPadding:a,where:l,children:s,dynamicViewVariant:c}){const d=vr(),u=AZe(e.id),p=vE(CQe.provide({actors:{editorActor:u}}),{id:"diagram",systemId:"diagram",input:{xystore:d,view:e,zoomable:r,pannable:n,fitViewPadding:a,nodesDraggable:o,nodesSelectable:i,where:l,dynamicViewVariant:c}}),f=S.useRef(p);f.current!==p&&(console.warn("DiagramMachine actor instance changed",{context:{previous:f.current.getSnapshot().context,current:p.getSnapshot().context}}),f.current=p);const[g,v]=S.useState(()=>nre(f));S.useEffect(()=>{v(x=>x.ref===f?x:(console.warn("DiagramMachine actorRef changed, creating new DiagramApi instance, this should not happen during the lifetime of the actor"),nre(f)))},[f]);const w=sr();return S.useEffect(()=>p.send({type:"update.features",features:w}),[w,p]),S.useEffect(()=>p.send({type:"update.inputs",inputs:{zoomable:r,where:l,pannable:n,fitViewPadding:a,nodesDraggable:o,nodesSelectable:i}}),[r,l,n,a,p,o,i]),$p(()=>{c&&p.send({type:"switch.dynamicViewVariant",variant:c})},[c,p]),_L(()=>p.send({type:"update.view",view:e,source:"external"}),[p,e]),y.jsx(tBe,{value:p,children:y.jsxs(rBe,{value:g,children:[y.jsx(QS,{children:y.jsx(TQe,{actorRef:p,children:s})}),y.jsx(jQe,{})]})})}const RQe=({context:e})=>{let r=e.toggledFeatures;const n=e.view.drifts!=null&&e.view.drifts.length>0,o=e.features.enableCompareWithLatest&&(r.enableCompareWithLatest??!1)&&ty(e.activeWalkthrough)&&n,i=e.features.enableReadOnly||r.enableReadOnly||!!e.activeWalkthrough||e.dynamicViewVariant==="sequence"&&e.view._type==="dynamic"||o&&e.view._layout==="auto";return(r.enableReadOnly!==i||r.enableCompareWithLatest!==o)&&(r={...r,enableCompareWithLatest:o,enableReadOnly:i}),{toggledFeatures:r,viewId:e.view.id}},zQe=(e,r)=>e.viewId===r.viewId&&Ir(e.toggledFeatures,r.toggledFeatures);function TQe({children:e,actorRef:r}){const{viewId:n,toggledFeatures:o}=pn(r,RQe,zQe),i=Fo().findView(n);return y.jsx(GS.Provider,{value:i,children:y.jsx(mp,{overrides:o,children:e})})}const jQe=S.memo(()=>{const e=Nt(),{onNavigateTo:r,onOpenSource:n,onLayoutTypeChange:o,handlersRef:i}=gm();ji("openSource",({params:l})=>n?.(l)),ji("navigateTo",({viewId:l})=>r?.(l)),ji("onLayoutTypeChange",({layoutType:l})=>{o?.(l)}),ji("initialized",({instance:l})=>{try{i.current.onInitialized?.({diagram:e,xyflow:l})}catch(s){console.error(s)}},{once:!0});const a=pa(l=>l.toggledFeatures,Ir);return $p(()=>{zre.write(P$e(a,ty))},[a]),null}),h4={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:e=>e>=255?255:e<0?0:e,g:e=>e>=255?255:e<0?0:e,b:e=>e>=255?255:e<0?0:e,h:e=>e%360,s:e=>e>=100?100:e<0?0:e,l:e=>e>=100?100:e<0?0:e,a:e=>e>=1?1:e<0?0:e},toLinear:e=>{const r=e/255;return e>.03928?Math.pow((r+.055)/1.055,2.4):r/12.92},hue2rgb:(e,r,n)=>(n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(r-e)*6*n:n<1/2?r:n<2/3?e+(r-e)*(2/3-n)*6:e),hsl2rgb:({h:e,s:r,l:n},o)=>{if(!r)return n*2.55;e/=360,r/=100,n/=100;const i=n<.5?n*(1+r):n+r-n*r,a=2*n-i;switch(o){case"r":return h4.hue2rgb(a,i,e+1/3)*255;case"g":return h4.hue2rgb(a,i,e)*255;case"b":return h4.hue2rgb(a,i,e-1/3)*255}},rgb2hsl:({r:e,g:r,b:n},o)=>{e/=255,r/=255,n/=255;const i=Math.max(e,r,n),a=Math.min(e,r,n),l=(i+a)/2;if(o==="l")return l*100;if(i===a)return 0;const s=i-a,c=l>.5?s/(2-i-a):s/(i+a);if(o==="s")return c*100;switch(i){case e:return((r-n)/s+(rr>n?Math.min(r,Math.max(n,e)):Math.min(n,Math.max(r,e)),round:e=>Math.round(e*1e10)/1e10},DQe={dec2hex:e=>{const r=Math.round(e).toString(16);return r.length>1?r:`0${r}`}},Tt={channel:h4,lang:AQe,unit:DQe},Ld={};for(let e=0;e<=255;e++)Ld[e]=Tt.unit.dec2hex(e);const $o={ALL:0,RGB:1,HSL:2};class MQe{constructor(){this.type=$o.ALL}get(){return this.type}set(r){if(this.type&&this.type!==r)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=r}reset(){this.type=$o.ALL}is(r){return this.type===r}}class NQe{constructor(r,n){this.color=n,this.changed=!1,this.data=r,this.type=new MQe}set(r,n){return this.color=n,this.changed=!1,this.data=r,this.type.type=$o.ALL,this}_ensureHSL(){const r=this.data,{h:n,s:o,l:i}=r;n===void 0&&(r.h=Tt.channel.rgb2hsl(r,"h")),o===void 0&&(r.s=Tt.channel.rgb2hsl(r,"s")),i===void 0&&(r.l=Tt.channel.rgb2hsl(r,"l"))}_ensureRGB(){const r=this.data,{r:n,g:o,b:i}=r;n===void 0&&(r.r=Tt.channel.hsl2rgb(r,"r")),o===void 0&&(r.g=Tt.channel.hsl2rgb(r,"g")),i===void 0&&(r.b=Tt.channel.hsl2rgb(r,"b"))}get r(){const r=this.data,n=r.r;return!this.type.is($o.HSL)&&n!==void 0?n:(this._ensureHSL(),Tt.channel.hsl2rgb(r,"r"))}get g(){const r=this.data,n=r.g;return!this.type.is($o.HSL)&&n!==void 0?n:(this._ensureHSL(),Tt.channel.hsl2rgb(r,"g"))}get b(){const r=this.data,n=r.b;return!this.type.is($o.HSL)&&n!==void 0?n:(this._ensureHSL(),Tt.channel.hsl2rgb(r,"b"))}get h(){const r=this.data,n=r.h;return!this.type.is($o.RGB)&&n!==void 0?n:(this._ensureRGB(),Tt.channel.rgb2hsl(r,"h"))}get s(){const r=this.data,n=r.s;return!this.type.is($o.RGB)&&n!==void 0?n:(this._ensureRGB(),Tt.channel.rgb2hsl(r,"s"))}get l(){const r=this.data,n=r.l;return!this.type.is($o.RGB)&&n!==void 0?n:(this._ensureRGB(),Tt.channel.rgb2hsl(r,"l"))}get a(){return this.data.a}set r(r){this.type.set($o.RGB),this.changed=!0,this.data.r=r}set g(r){this.type.set($o.RGB),this.changed=!0,this.data.g=r}set b(r){this.type.set($o.RGB),this.changed=!0,this.data.b=r}set h(r){this.type.set($o.HSL),this.changed=!0,this.data.h=r}set s(r){this.type.set($o.HSL),this.changed=!0,this.data.s=r}set l(r){this.type.set($o.HSL),this.changed=!0,this.data.l=r}set a(r){this.changed=!0,this.data.a=r}}const f4=new NQe({r:0,g:0,b:0,a:0},"transparent"),Dm={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:e=>{if(e.charCodeAt(0)!==35)return;const r=e.match(Dm.re);if(!r)return;const n=r[1],o=parseInt(n,16),i=n.length,a=i%4===0,l=i>4,s=l?1:17,c=l?8:4,d=a?0:-1,u=l?255:15;return f4.set({r:(o>>c*(d+3)&u)*s,g:(o>>c*(d+2)&u)*s,b:(o>>c*(d+1)&u)*s,a:a?(o&u)*s/255:1},e)},stringify:e=>{const{r,g:n,b:o,a:i}=e;return i<1?`#${Ld[Math.round(r)]}${Ld[Math.round(n)]}${Ld[Math.round(o)]}${Ld[Math.round(i*255)]}`:`#${Ld[Math.round(r)]}${Ld[Math.round(n)]}${Ld[Math.round(o)]}`}},Mp={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:e=>{const r=e.match(Mp.hueRe);if(r){const[,n,o]=r;switch(o){case"grad":return Tt.channel.clamp.h(parseFloat(n)*.9);case"rad":return Tt.channel.clamp.h(parseFloat(n)*180/Math.PI);case"turn":return Tt.channel.clamp.h(parseFloat(n)*360)}}return Tt.channel.clamp.h(parseFloat(e))},parse:e=>{const r=e.charCodeAt(0);if(r!==104&&r!==72)return;const n=e.match(Mp.re);if(!n)return;const[,o,i,a,l,s]=n;return f4.set({h:Mp._hue2deg(o),s:Tt.channel.clamp.s(parseFloat(i)),l:Tt.channel.clamp.l(parseFloat(a)),a:l?Tt.channel.clamp.a(s?parseFloat(l)/100:parseFloat(l)):1},e)},stringify:e=>{const{h:r,s:n,l:o,a:i}=e;return i<1?`hsla(${Tt.lang.round(r)}, ${Tt.lang.round(n)}%, ${Tt.lang.round(o)}%, ${i})`:`hsl(${Tt.lang.round(r)}, ${Tt.lang.round(n)}%, ${Tt.lang.round(o)}%)`}},$0={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:e=>{e=e.toLowerCase();const r=$0.colors[e];if(r)return Dm.parse(r)},stringify:e=>{const r=Dm.stringify(e);for(const n in $0.colors)if($0.colors[n]===r)return n}},R0={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:e=>{const r=e.charCodeAt(0);if(r!==114&&r!==82)return;const n=e.match(R0.re);if(!n)return;const[,o,i,a,l,s,c,d,u]=n;return f4.set({r:Tt.channel.clamp.r(i?parseFloat(o)*2.55:parseFloat(o)),g:Tt.channel.clamp.g(l?parseFloat(a)*2.55:parseFloat(a)),b:Tt.channel.clamp.b(c?parseFloat(s)*2.55:parseFloat(s)),a:d?Tt.channel.clamp.a(u?parseFloat(d)/100:parseFloat(d)):1},e)},stringify:e=>{const{r,g:n,b:o,a:i}=e;return i<1?`rgba(${Tt.lang.round(r)}, ${Tt.lang.round(n)}, ${Tt.lang.round(o)}, ${Tt.lang.round(i)})`:`rgb(${Tt.lang.round(r)}, ${Tt.lang.round(n)}, ${Tt.lang.round(o)})`}},fl={format:{keyword:$0,hex:Dm,rgb:R0,rgba:R0,hsl:Mp,hsla:Mp},parse:e=>{if(typeof e!="string")return e;const r=Dm.parse(e)||R0.parse(e)||Mp.parse(e)||$0.parse(e);if(r)return r;throw new Error(`Unsupported color format: "${e}"`)},stringify:e=>!e.changed&&e.color?e.color:e.type.is($o.HSL)||e.data.r===void 0?Mp.stringify(e):e.a<1||!Number.isInteger(e.r)||!Number.isInteger(e.g)||!Number.isInteger(e.b)?R0.stringify(e):Dm.stringify(e)},Tre=(e,r)=>{const n=fl.parse(e);for(const o in r)n[o]=Tt.channel.clamp[o](r[o]);return fl.stringify(n)},PQe=(e,r,n=0,o=1)=>{if(typeof e!="number")return Tre(e,{a:r});const i=f4.set({r:Tt.channel.clamp.r(e),g:Tt.channel.clamp.g(r),b:Tt.channel.clamp.b(n),a:Tt.channel.clamp.a(o)});return fl.stringify(i)},jre=e=>fl.format.hex.stringify(fl.parse(e)),Are=e=>fl.format.rgba.stringify(fl.parse(e)),BQe=(e,r)=>{const n=fl.parse(e),o={};for(const i in r)r[i]&&(o[i]=n[i]+r[i]);return Tre(e,o)},Dre=(e,r,n=50)=>{const{r:o,g:i,b:a,a:l}=fl.parse(e),{r:s,g:c,b:d,a:u}=fl.parse(r),p=n/100,f=p*2-1,g=l-u,v=((f*g===-1?f:(f+g)/(1+f*g))+1)/2,w=1-v,x=o*v+s*w,k=i*v+c*w,C=a*v+d*w,_=l*p+u*(1-p);return PQe(x,k,C,_)},Mre=(e,r)=>{const n=fl.parse(e),o={},i=(a,l,s)=>l>0?(s-a)*l/100:a*l/100;for(const a in r)o[a]=i(n[a],r[a],Tt.channel.max[a]);return BQe(e,o)},IQe=e=>`[data-mantine-color-scheme="${e}"]`,Nre=IQe("dark"),OQe=5,LQe=(e,r,n,o)=>{const i=s=>jre(Mre(s,{l:-22-5*o,s:-10-6*o})),a=s=>jre(Mre(s,{l:-20-3*o,s:-3-6*o})),l=`:where(${e} [data-likec4-color="${r}"][data-compound-depth="${o}"])`;return` + `});const iKe=fe({fontWeight:500,letterSpacing:"0.2px",paddingTop:"0",paddingBottom:"0",textTransform:"lowercase",transition:"all 150ms ease-in-out",cursor:"pointer","--badge-radius":"2px","--badge-fz":"9.5px","--badge-padding-x":"3px","--badge-height":"13.5px","--badge-lh":"1","--badge-bg":"var(--likec4-palette-fill)","--badge-color":"var(--likec4-palette-hiContrast)"}),aKe=[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 16v.01",key:"svg-1"}],["path",{d:"M12 13a2 2 0 0 0 .914 -3.782a1.98 1.98 0 0 0 -2.414 .483",key:"svg-2"}]],lKe=wt("outline","help-circle","HelpCircle",aKe),sKe=[["path",{d:"M7 7l10 10",key:"svg-0"}],["path",{d:"M17 8l0 9l-9 0",key:"svg-1"}]],cKe=wt("outline","arrow-down-right","ArrowDownRight",sKe),dKe=({value:e})=>{const{title:r,color:n="primary",shape:o="rectangle"}=e,[i,a]=S.useState(null),l=Mt(),s=300,c=200;return y.jsx(b3,{shadow:"none",px:"xs",py:"sm",className:Ge(oKe),"data-likec4-color":n,onMouseEnter:()=>{a(null),l.highlightNotation(e)},onMouseLeave:()=>{a(null),l.unhighlightNotation()},children:y.jsxs(en,{gap:"sm",align:"stretch",wrap:"nowrap",children:[y.jsx(Se,{flex:"0 0 70px",style:{position:"relative",width:70,height:GCe(70*(c/s),0)},children:y.jsx(pg,{data:{shape:o,width:s,height:c}})}),y.jsxs(Lo,{gap:4,flex:1,children:[y.jsx(en,{gap:4,flex:"0 0 auto",children:e.kinds.map(d=>y.jsx(ec,{className:Ge(iKe),onMouseEnter:()=>{a(d),l.highlightNotation(e,d)},onMouseLeave:()=>{a(null),l.highlightNotation(e)},opacity:Bq(i)&&i!==d?.25:1,children:d},d))}),y.jsx(it,{component:"div",fz:"sm",fw:500,lh:"1.25",style:{textWrap:"pretty"},children:r})]})]})})},uKe=e=>({id:e.view.id,notations:e.view.notation?.nodes??[]}),pKe=S.memo(()=>{const e=QC(s=>s.height),{id:r,notations:n}=pa(uKe),[o,i]=sze({key:"notation-webview-collapsed",defaultValue:!0}),a=n.length>0,l=bg();return y.jsxs(Cn,{children:[!a&&y.jsx(ga.div,{initial:{opacity:.75,translateX:"50%"},animate:{opacity:1,translateX:0},exit:{translateX:"100%",opacity:.6},className:AR,children:y.jsx(_n,{label:"View has no notations",color:"orange",...l,children:y.jsx(Ti,{size:"lg",variant:"light",color:"orange",radius:"md",children:y.jsx(rte,{})})})},"empty"),a&&o&&y.jsx(ga.div,{initial:{opacity:.75,translateX:"50%"},animate:{opacity:1,translateX:0},exit:{translateX:"100%",opacity:.6},className:AR,children:y.jsx(_n,{label:"Show notation",color:"dark",fz:"xs",...l,children:y.jsx(lr,{size:"lg",variant:"default",color:"gray",className:tKe,onClick:()=>i(!1),children:y.jsx(lKe,{stroke:1.5})})})},"collapsed"),a&&!o&&y.jsx(ga.div,{initial:{opacity:.75,scale:.2},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.25},className:Ge("react-flow__panel",AR),style:{transformOrigin:"bottom right"},children:y.jsx(Af,{radius:"sm",withBorder:!0,shadow:"lg",className:rKe,children:y.jsxs(up,{defaultValue:"first",radius:"xs",children:[y.jsxs(ky,{children:[y.jsx(lr,{size:"md",variant:"subtle",color:"gray",ml:2,style:{alignSelf:"center"},onClick:()=>i(!0),children:y.jsx(cKe,{stroke:2})}),y.jsx(Lf,{value:"first",fz:"xs",children:"Elements"}),y.jsx(Lf,{value:"second",fz:"xs",disabled:!0,children:"Relationships"})]}),y.jsx(rc,{value:"first",className:nKe,hidden:o,children:y.jsx(oi,{viewportProps:{style:{maxHeight:`min(40vh, ${Math.max(e-60,50)}px)`}},children:y.jsx(Lo,{gap:0,children:n.map((s,c)=>y.jsx(dKe,{value:s},c))})})})]})})},r)]})}),hKe=S.memo(()=>{const[{layout:e,isActive:r},{toggleCompare:n}]=TR(),o=e==="manual"?"var(--mantine-color-orange-6)":"var(--mantine-color-green-6)";return y.jsx(hr,{className:qn({position:"absolute",top:"0",left:"0",width:"full",height:"full",border:"default",borderWidth:4,pointerEvents:"none",alignItems:"flex-start",justifyContent:"center"}),style:{zIndex:"9999",display:r?void 0:"none",borderColor:o},children:y.jsx(fKe,{style:{backgroundColor:o},onClick:i=>{i.stopPropagation(),n()},children:"Close compare"})})}),fKe=pr.withProps({className:fe({fontSize:"xs",fontWeight:"medium",py:"1.5",lineHeight:"1",borderBottomLeftRadius:"sm",borderBottomRightRadius:"sm",transform:"translateY(-4px)",px:"4",color:"mantine.colors.gray[9]",pointerEvents:"all",_active:{transform:"translateY(-3px)"}})}),yte=S.memo(()=>{const{enableControls:e,enableNotations:r,enableSearch:n,enableRelationshipDetails:o,enableReadOnly:i,enableCompareWithLatest:a}=sr(),l=e6e(),s=oBe(),c=aBe(),d=S.useCallback(()=>{console.warn("DiagramUI: resetting error boundary and rerendering..."),l()},[]);return y.jsxs(QS,{onReset:d,children:[e&&y.jsx(mte,{}),s&&y.jsx(uWe,{overlaysActorRef:s}),r&&y.jsx(pKe,{}),n&&c&&y.jsx(ZWe,{searchActorRef:c}),o&&i&&y.jsx(uGe,{}),a&&y.jsx(hKe,{})]})});yte.displayName="DiagramUI";function vte({edgeProps:{data:e},svgPath:r}){const n=e.drifts;return!n||n.length===0?null:y.jsx("path",{className:Ge("react-flow__edge-path",fe({pointerEvents:"none",stroke:"likec4.compare.manual.outline",fill:"none",strokeWidth:{base:"8px",_whenHovered:"12px"},strokeOpacity:.5})),d:r,strokeLinecap:"round"})}const gKe=fe({overflow:"visible",position:"absolute",pointerEvents:"none",top:"0",left:"0",mixBlendMode:{_dark:"screen",_light:"multiply"}}),mKe=fe({fill:"[var(--xy-edge-stroke)]",stroke:"transparent",fillOpacity:.5,strokeWidth:10,r:4,cursor:"grab",pointerEvents:"all",visibility:"hidden",transitionDuration:"120ms",transitionProperty:"visibility, fill, fill-opacity, r",transitionTimingFunction:"inOut",transitionDelay:"20ms",":where([data-likec4-selected='true'], [data-likec4-hovered='true']) &":{visibility:"visible",fillOpacity:1,transitionTimingFunction:"out",transitionDelay:"0ms"},":where([data-likec4-selected='true']) &":{r:6},":is([data-likec4-hovered='true']) &":{r:8},_hover:{fill:"mantine.colors.primary.filledHover",r:10,transitionDuration:"100ms"},_groupActive:{cursor:"grabbing"}});function yKe({sourceX:e,sourceY:r,targetX:n,targetY:o,data:i}){const[a,l]=S.useState(()=>i.controlPoints??c2(i.points));$p(()=>{const c=i.controlPoints??c2(i.points);l(d=>tt(d,c)?d:c)},[i.controlPoints?.map(c=>`${Math.round(c.x)},${Math.round(c.y)}`).join("|")??"",i.points.map(c=>`${Math.round(c[0])},${Math.round(c[1])}`).join("|")]);const s=at(({x:c,y:d})=>{const u=Qr(e,r),p=Qr(n,o),f=[i.dir==="back"?p:u,...a.map(Qr)||[],i.dir==="back"?u:p],m=Qr(c,d).round();let v=0,w=1/0;for(let k=0;k=0))throw new Error(`invalid digits: ${e}`);if(r>15)return xte;const n=10**r;return function(o){this._+=o[0];for(let i=1,a=o.length;iTp)if(!(Math.abs(p*c-d*u)>Tp)||!a)this._append`L${this._x1=r},${this._y1=n}`;else{let m=o-l,v=i-s,w=c*c+d*d,x=m*m+v*v,k=Math.sqrt(w),C=Math.sqrt(f),_=a*Math.tan((DR-Math.acos((w+f-x)/(2*k*C)))/2),$=_/C,R=_/k;Math.abs($-1)>Tp&&this._append`L${r+$*u},${n+$*p}`,this._append`A${a},${a},0,0,${+(p*m>u*v)},${this._x1=r+R*c},${this._y1=n+R*d}`}}arc(r,n,o,i,a,l){if(r=+r,n=+n,o=+o,l=!!l,o<0)throw new Error(`negative radius: ${o}`);let s=o*Math.cos(i),c=o*Math.sin(i),d=r+s,u=n+c,p=1^l,f=l?i-a:a-i;this._x1===null?this._append`M${d},${u}`:(Math.abs(this._x1-d)>Tp||Math.abs(this._y1-u)>Tp)&&this._append`L${d},${u}`,o&&(f<0&&(f=f%PR+PR),f>vKe?this._append`A${o},${o},0,1,${p},${r-s},${n-c}A${o},${o},0,1,${p},${this._x1=d},${this._y1=u}`:f>Tp&&this._append`A${o},${o},0,${+(f>=DR)},${p},${this._x1=r+o*Math.cos(a)},${this._y1=n+o*Math.sin(a)}`)}rect(r,n,o,i){this._append`M${this._x0=this._x1=+r},${this._y0=this._y1=+n}h${o=+o}v${+i}h${-o}Z`}toString(){return this._}}function wKe(e){let r=3;return e.digits=function(n){if(!arguments.length)return r;if(n==null)r=null;else{const o=Math.floor(n);if(!(o>=0))throw new RangeError(`invalid digits: ${n}`);r=o}return e},()=>new xKe(r)}function kKe(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function wte(e){this._context=e}wte.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,r){switch(e=+e,r=+r,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break;case 1:this._point=2;default:this._context.lineTo(e,r);break}}};function _Ke(e){return new wte(e)}function SKe(e){return e[0]}function EKe(e){return e[1]}function CKe(e,r){var n=_g(!0),o=null,i=_Ke,a=null,l=wKe(s);e=typeof e=="function"?e:e===void 0?SKe:_g(e),r=typeof r=="function"?r:r===void 0?EKe:_g(r);function s(c){var d,u=(c=kKe(c)).length,p,f=!1,m;for(o==null&&(a=i(m=l())),d=0;d<=u;++d)!(dbte){var s=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,c=3*e._l01_a*(e._l01_a+e._l12_a);o=(o*s-e._x0*e._l12_2a+e._x2*e._l01_2a)/c,i=(i*s-e._y0*e._l12_2a+e._y2*e._l01_2a)/c}if(e._l23_a>bte){var d=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,u=3*e._l23_a*(e._l23_a+e._l12_a);a=(a*d+e._x1*e._l23_2a-r*e._l12_2a)/u,l=(l*d+e._y1*e._l23_2a-n*e._l12_2a)/u}e._context.bezierCurveTo(o,i,a,l,e._x2,e._y2)}function _te(e,r){this._context=e,this._alpha=r}_te.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,r){if(e=+e,r=+r,this._point){var n=this._x2-e,o=this._y2-r;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+o*o,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break;case 1:this._point=2;break;case 2:this._point=3;default:kte(this,e,r);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=r}},(function e(r){function n(o){return r?new _te(o,r):new NR(o,0)}return n.alpha=function(o){return e(+o)},n})(.5);function Ste(e,r){this._context=e,this._alpha=r}Ste.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,r){if(e=+e,r=+r,this._point){var n=this._x2-e,o=this._y2-r;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+o*o,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:kte(this,e,r);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=r}};const $Ke=(function e(r){function n(o){return r?new Ste(o,r):new BR(o,0)}return n.alpha=function(o){return e(+o)},n})(.5),RKe=CKe().curve($Ke.alpha(.7)).x(e=>Math.round(e.x)).y(e=>Math.round(e.y)),zKe=(e,r)=>cQ(e.sourceNode,r.sourceNode)&&cQ(e.targetNode,r.targetNode);function TKe({props:{sourceX:e,sourceY:r,source:n,target:o,targetX:i,targetY:a,data:l},controlPoints:s,isControlPointDragging:c}){const{sourceNode:d,targetNode:u}=QC(S.useCallback(({nodeLookup:p})=>{const f=gt(p.get(n),`source node ${n} not found`),m=gt(p.get(o),`target node ${o} not found`);return{sourceNode:r$(f),targetNode:r$(m)}},[n,o]),zKe);if(Zn(l.controlPoints)||c){const p={x:e,y:r},f={x:i,y:a},m=6,v=l.dir==="back"?[f,s2(u,hf(s)??p,m),...s,s2(d,dd(s)??f,m),p]:[p,s2(d,hf(s)??f,m),...s,s2(u,dd(s)??p,m),f];return gt(RKe(v))}return OVe(l.points)}const Ete=e=>{const r=e.getPointAtLength(e.getTotalLength()*.5);return{x:Math.round(r.x),y:Math.round(r.y)}},Cte=rR(e=>{const[r,n]=S.useState(!1),o=S.useRef(r);o.current=r;const i=iQ(),a=Mt(),{enableNavigateTo:l,enableReadOnly:s,enableCompareWithLatest:c}=sr(),d=!s,{id:u,selected:p=!1,data:{labelBBox:f,labelXY:m,...v}}=e,w=l&&!r?v.navigateTo:void 0,{controlPoints:x,setControlPoints:k,insertControlPoint:C}=yKe(e);let _=TKe({props:e,controlPoints:x,isControlPointDragging:r}),$=f?.x??0,R=f?.y??0;const[T,A]=S.useState({x:m?.x??$,y:m?.y??R});$p(()=>{if(o.current)return;const V={x:$,y:R};A(B=>d2(B,V)?B:V)},[$,R]);const z=S.useRef(null);S.useEffect(()=>{const V=z.current;if(!V||!r)return;const B=Ete(V);A(F=>d2(F,B)?F:B)},[_,r]);const j=at(V=>{const B=z.current?Ete(z.current):null;f&&B?a.updateEdgeData(u,{controlPoints:V,labelBBox:{...f,...B}}):a.updateEdgeData(u,{controlPoints:V}),a.stopEditing(!0),n(!1)}),I=at(()=>{a.startEditing("edge"),n(!0)}),N=at(()=>{a.stopEditing(),n(!1)}),L=at(V=>{k(V),requestAnimationFrame(()=>{j(V)})}),H=at(V=>{a.startEditing("edge"),n(!0),k(V),requestAnimationFrame(()=>{j(V)})}),P=at(V=>{if(V.pointerType!=="mouse"||V.button!==2&&!p)return;V.stopPropagation(),V.preventDefault(),a.startEditing("edge");const B=C(i.screenToFlowPosition({x:V.clientX,y:V.clientY},{snapToGrid:!1}));a.updateEdgeData(u,{controlPoints:B}),a.stopEditing(!0)});return r&&!e.data.hovered&&(e={...e,data:{...e.data,hovered:!0}}),y.jsxs(y.Fragment,{children:[y.jsxs(a0,{...e,className:fe({"& .react-flow__edge-interaction":{cursor:d&&p?"copy":void 0}}),children:[y.jsx(l0,{edgeProps:e,svgPath:_,ref:z,isDragging:r,...d&&{onEdgePointerDown:P}}),c&&y.jsx(vte,{edgeProps:e,svgPath:_}),f&&y.jsx(S2,{edgeProps:e,labelPosition:r?T:{x:$,y:R},children:y.jsx(i0,{pointerEvents:d?"none":"all",edgeProps:e,children:w&&y.jsx(_2,{onClick:V=>{V.stopPropagation(),a.navigateTo(w)}})})})]}),d&&x.length>0&&y.jsx(jKe,{isControlPointDragging:r,edgeProps:e,controlPoints:x,onMove:k,onStartMove:I,onCancelMove:N,onFinishMove:L,onDelete:H,zIndex:9999})]})});Cte.displayName="RelationshipEdge";function jKe({isControlPointDragging:e,edgeProps:r,controlPoints:n,onMove:o,onStartMove:i,onCancelMove:a,onFinishMove:l,onDelete:s,zIndex:c}){const d=JC(),u=iQ(),p=r.data.id,f=(x,k,C)=>{let _=!1,$={x:k.clientX,y:k.clientY},R=null,T=n;const A=j=>{const I={x:j.clientX,y:j.clientY};d2($,I)||(_||(_=!0,i()),$=I,R??=requestAnimationFrame(()=>{R=null,T=T.slice();const{x:N,y:L}=u.screenToFlowPosition($,{snapToGrid:!1});T[x]={x:Math.round(N),y:Math.round(L)},o(T)})),j.stopPropagation()},z=j=>{j.stopPropagation(),C.removeEventListener("pointermove",A,{capture:!0}),C.removeEventListener("click",IR,{capture:!0}),_?l(T):a()};C.addEventListener("pointermove",A,{capture:!0}),C.addEventListener("pointerup",z,{once:!0,capture:!0}),C.addEventListener("click",IR,{capture:!0,once:!0})},m=(x,k)=>{if(n.length<=1)return;k.stopPropagation(),k.preventDefault();const C=n.slice();C.splice(x,1),setTimeout(()=>{s(C)},10)},v=at(x=>{const{domNode:k,addSelectedEdges:C,edges:_,unselectNodesAndEdges:$}=d.getState();if(!k||x.pointerType!=="mouse")return;const R=parseFloat(x.currentTarget.getAttribute("data-control-point-index")||"");if(isNaN(R))throw new Error("data-control-point-index is not a number");switch(x.button){case 0:{x.stopPropagation(),$({edges:_.filter(T=>T.selected&&T.id!==p)}),C([p]),f(R,x,k);break}case 2:m(R,x);break}}),w=at(x=>{const{domNode:k}=d.getState();if(!k||x.pointerType!=="mouse")return;const C=parseFloat(x.currentTarget.getAttribute("data-control-point-index")||"");if(isNaN(C))throw new Error("data-control-point-index is not a number");m(C,x)});return y.jsx(yq,{children:y.jsx(a0,{component:"svg",className:gKe,...r,style:{...r.style,zIndex:c},children:y.jsx("g",{"data-active":e?!0:void 0,className:"group",onContextMenu:IR,children:n.map((x,k)=>y.jsx("circle",{"data-control-point-index":k,onPointerDownCapture:v,onDoubleClick:w,className:Ge("nodrag nopan",mKe),cx:x.x,cy:x.y},"controlPoints"+p+"#"+k))})})})}const IR=e=>{e.stopPropagation(),e.preventDefault()},V2=16;function AKe(e){const{enableNavigateTo:r,enableCompareWithLatest:n}=sr(),o=Mt(),{navigateTo:i}=e.data,a=e.source===e.target,l=e.sourceX>e.targetX,[s]=Zx({sourceX:e.sourceX,sourceY:e.sourceY,sourcePosition:e.sourcePosition,targetX:e.targetX,targetY:e.targetY,targetPosition:e.targetPosition,...a&&{offset:30,borderRadius:16}});let c=e.sourceX;switch(!0){case a:c=e.sourceX+24+V2;break;case l:c=e.sourceX-V2;break;default:c=e.sourceX+V2;break}return y.jsxs(a0,{...e,children:[y.jsx(l0,{edgeProps:e,svgPath:s}),n&&y.jsx(vte,{edgeProps:e,svgPath:s}),y.jsx(S2,{edgeProps:e,labelPosition:{x:c,y:e.sourceY+(a?0:V2),translate:l?"translate(-100%, 0)":void 0},children:y.jsx(i0,{edgeProps:e,children:r&&i&&y.jsx(_2,{onClick:d=>{d.stopPropagation(),o.navigateTo(i)}})})})]})}const DKe=(e,r)=>tt(e.data.id,r.data.id)&&tt(e.selected??!1,r.selected??!1)&&tt(e.data.modelFqn??null,r.data.modelFqn??null)&&tt(e.data.navigateTo??null,r.data.navigateTo??null)&&tt(e.data.hovered??!1,r.data.hovered??!1)&&(!e.extraButtons&&!r.extraButtons||Ir(e.extraButtons,r.extraButtons)),$te=S.memo(({extraButtons:e,...r})=>{const{enableNavigateTo:n,enableRelationshipBrowser:o}=sr(),i=Mt(),{id:a,navigateTo:l,modelFqn:s}=r.data;let c=S.useMemo(()=>{const d=[];return l&&n&&d.push({key:"navigate",icon:y.jsx(ba,{}),onClick:u=>{u.stopPropagation(),i.navigateTo(l,a)}}),o&&d.push({key:"relationships",icon:y.jsx(s0,{}),onClick:u=>{u.stopPropagation(),i.openRelationshipsBrowser(s)}}),d},[n,o,s,l,a,i]);return e&&xn(e,1)&&(c=[...c,...e]),y.jsx(C2,{...r,buttons:c})},DKe),PKe=({extraButtons:e,...r})=>{const{enableNavigateTo:n,enableRelationshipBrowser:o}=sr(),i=Mt(),{id:a,navigateTo:l,modelFqn:s}=r.data;let c=S.useMemo(()=>{const d=[];return l&&n&&d.push({key:"navigate",icon:y.jsx(ba,{}),onClick:u=>{u.stopPropagation(),i.navigateTo(l,a)}}),o&&s&&d.push({key:"relationships",icon:y.jsx(s0,{}),onClick:u=>{u.stopPropagation(),i.openRelationshipsBrowser(s)}}),d},[n,o,s,l,a]);return e&&xn(e,1)&&(c=[...c,...e]),y.jsx(C2,{...r,buttons:c})};function Sg({nodeProps:{data:e},position:r="bottom"}){const n=e.drifts;if(!n||n.length===0)return null;const o=r==="top"?Ue.Top:Ue.Bottom;return y.jsx(hr,{className:"likec4-node-drifts",css:{display:"contents","& + .likec4-element-shape":{outlineColor:"likec4.compare.manual.outline",outlineWidth:"4px",outlineStyle:"dashed",outlineOffset:"1.5"}},children:y.jsx(r9,{isVisible:e.hovered===!0,align:"start",position:o,children:y.jsx(xy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"Changes:",children:n.map(i=>y.jsxs(it,{mt:2,size:"sm",lh:"xs",children:["- ",i]},i))})})})}function MKe({data:{hovered:e=!1},icon:r,onClick:n}){const o=m9(e,e?130:0)[0]&&e;return y.jsx(Rr,{initial:!1,animate:{scale:o?1.2:1,x:o?-1:0,y:o?-1:0},whileHover:{scale:1.4,x:-3,y:-1},className:"likec4-compound-navigation compound-action",whileTap:{scale:1},onClick:nn,children:y.jsx(lr,{className:Ge("nodrag nopan",jJ({delay:e&&!o}),a2({variant:"transparent"})),onClick:n,onDoubleClick:nn,children:r??y.jsx(ba,{stroke:2})})})}const Rte=e=>{const{enableNavigateTo:r}=sr(),n=Mt(),{navigateTo:o}=e.data;return o&&r?y.jsx(MKe,{onClick:i=>{i.stopPropagation(),n.navigateTo(o,e.id)},...e}):null},zte=_n.withProps({color:"dark",fz:"xs",openDelay:400,closeDelay:150,label:"",children:null,offset:4,withinPortal:!1});function q2({fqn:e}){const r=Mt();return y.jsx(zte,{label:"Browse relationships",children:y.jsx(lr,{size:"sm",variant:"subtle",color:"gray",onClick:n=>{n.stopPropagation(),r.openRelationshipsBrowser(e)},children:y.jsx(s0,{stroke:2,style:{width:"72%",height:"72%"}})})})}function H2(e){const{onOpenSource:r}=mg();return r?y.jsx(zte,{label:"Open source",children:y.jsx(lr,{size:"sm",variant:"subtle",color:"gray",onClick:n=>{n.stopPropagation(),e.elementId?r?.({element:e.elementId}):e.deploymentId&&r?.({deployment:e.deploymentId})},children:y.jsx(dg,{stroke:1.8,style:{width:"70%"}})})}):null}function Tte(){const e=S.useContext(Sy);e||console.error("No LikeC4ModelContext found");const r=e?.$styles??XN.DEFAULT,[n,o]=S.useState(r);return S.useEffect(()=>{o(i=>i.equals(r)?i:r)},[r]),n}const jte=["primary","secondary","muted"];function U2({elementColor:e,elementOpacity:r,onColorPreview:n,isOpacityEditable:o=!1,onChange:i,...a}){const{theme:l}=Tte();return y.jsxs(br,{clickOutsideEvents:["pointerdown","mousedown","click"],position:"right-end",offset:2,withinPortal:!1,...a,children:[y.jsx(kd,{children:y.jsx(Vn,{variant:"subtle",color:"gray",size:"compact-xs",px:3,children:y.jsx(my,{color:l.colors[e].elements.fill,size:14,withShadow:!0,style:{color:"#fff",cursor:"pointer"}})})}),y.jsxs(Qs,{p:"xs",children:[y.jsx(NKe,{theme:l,elementColor:e,onColorPreview:n,onChange:s=>i({color:s})}),o&&y.jsxs(y.Fragment,{children:[y.jsx(qS,{h:"xs"}),y.jsx(sp,{label:"opacity",labelPosition:"left"}),y.jsx(qS,{h:"xs"}),y.jsx(BKe,{elementOpacity:r,onOpacityChange:s=>{i({opacity:s})}})]})]})]})}function NKe({theme:e,elementColor:r,onColorPreview:n,onChange:o}){const i=l=>s=>{s.stopPropagation(),n(null),r!==l&&o(l)},a=l9(e.colors).filter(l=>!jte.includes(l));return y.jsx(Lo,{gap:2,onMouseLeave:()=>n(null),children:y.jsxs(dp,{openDelay:1e3,closeDelay:300,children:[y.jsx(Js,{maw:120,gap:"6",justify:"flex-start",align:"flex-start",direction:"row",wrap:"wrap",children:jte.map(l=>y.jsx(_n,{label:l,fz:"xs",color:"dark",offset:2,withinPortal:!1,transitionProps:{duration:140,transition:"slide-up"},children:y.jsx(my,{color:e.colors[l].elements.fill,size:18,withShadow:!0,onMouseEnter:()=>n(l),onClick:i(l),style:{color:"#fff",cursor:"pointer"},children:r===l&&y.jsx(OW,{style:{width:$e(10),height:$e(10)}})})},l))}),y.jsx(Js,{mt:"sm",maw:110,gap:"6",justify:"flex-start",align:"flex-start",direction:"row",wrap:"wrap",children:a.map(l=>y.jsx(_n,{label:l,fz:"xs",color:"dark",offset:2,transitionProps:{duration:140,transition:"slide-up"},children:y.jsx(my,{color:e.colors[l].elements.fill,size:18,onMouseEnter:()=>n(l),onClick:i(l),style:{color:"#fff",cursor:"pointer"},children:r===l&&y.jsx(OW,{style:{width:$e(10),height:$e(10)}})})},l))})]})})}function BKe({elementOpacity:e=100,onOpacityChange:r}){const[n,o]=S.useState(e);return t6e(()=>{o(e)},[e]),y.jsx(VS,{size:"sm",color:"dark",value:n,onChange:o,onChangeEnd:r})}const IKe=fe({color:"mantine.colors.dimmed",fontSize:"10px",fontWeight:600,maxWidth:"220px",cursor:"default",userSelect:"all",textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap"}),OKe=()=>pa(e=>e.xynodes.filter(r=>r.selected).length);function W2({title:e,children:r,nodeProps:n,...o}){const i=OKe(),{selected:a=!1,dragging:l=!1,data:{hovered:s=!1}}=n,c=s&&i===0||a&&i===1;let d=150;c?a?d=100:d=1e3:i>0&&(d=50);const[u]=m9(c,d);return u?y.jsx(r9,{isVisible:!l,offset:4,...o,children:y.jsx(Af,{className:Ge("nodrag","nopan"),px:5,pb:8,pt:4,radius:"sm",shadow:"xl",onDoubleClickCapture:nn,onPointerDown:nn,onClick:nn,onDoubleClick:nn,withBorder:!0,children:y.jsxs(Lo,{gap:"6px",children:[y.jsx(Se,{px:"4px",children:y.jsx(it,{className:IKe,children:e})}),y.jsx(en,{gap:4,children:r})]})})}):null}function G2(e,r){const n=Mt(),[o,i]=S.useState(null),a=at(s=>{if(s===null){if(!o)return;i(null),n.updateNodeData(r.data.id,{color:o});return}i(c=>c??r.data.color),n.updateNodeData(r.data.id,{color:s})}),l=at(s=>{const{shape:c,color:d,...u}=s;n.updateNodeData(r.data.id,{...c&&{shape:c},...d&&{color:d},style:u}),n.triggerChange({op:"change-element-style",style:s,targets:[e]})});return{elementColor:o??r.data.color,onColorPreview:a,onChange:l}}function LKe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{style:o,modelFqn:i}}=e,{elementColor:a,onColorPreview:l,onChange:s}=G2(i,e),c=o?.opacity??100;return y.jsxs(W2,{nodeProps:e,title:i,align:"start",children:[y.jsx(U2,{elementColor:a,onColorPreview:l,isOpacityEditable:!0,elementOpacity:c,onChange:s,position:"left-start"}),y.jsx(Ate,{elementBorderStyle:o?.border??(c<99?"dashed":"none"),onChange:s}),r&&y.jsx(H2,{elementId:i}),n&&y.jsx(q2,{fqn:i})]})}function FKe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{deploymentFqn:o,style:i,modelFqn:a}}=e,{elementColor:l,onColorPreview:s,onChange:c}=G2(o,e);return y.jsxs(W2,{nodeProps:e,title:o,align:"start",children:[y.jsx(U2,{elementColor:l,onColorPreview:s,isOpacityEditable:!0,elementOpacity:i?.opacity,onChange:c,position:"left-start"}),y.jsx(Ate,{elementBorderStyle:i?.border,onChange:c}),r&&y.jsx(H2,{deploymentId:o}),n&&a&&y.jsx(q2,{fqn:a})]})}function Ate({elementBorderStyle:e="dashed",onChange:r}){const[n,o]=S.useState(e);return S.useEffect(()=>{o(e)},[e]),y.jsx(Se,{children:y.jsx(Of,{size:"xs",fullWidth:!0,withItemsBorders:!1,value:n,onChange:i=>{const a=i;o(a),r({border:a})},styles:{label:{paddingTop:"0.5",paddingBottom:"0.5"}},data:[{label:"Solid",value:"solid"},{label:"Dashed",value:"dashed"},{label:"Dotted",value:"dotted"},{label:"None",value:"none"}]})})}function VKe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{shape:o,modelFqn:i}}=e,{elementColor:a,onColorPreview:l,onChange:s}=G2(i,e);return y.jsxs(W2,{nodeProps:e,title:i,align:"start",children:[y.jsx(Dte,{elementShape:o,onChange:s}),y.jsx(U2,{elementColor:a,onColorPreview:l,onChange:s,position:"right-end"}),r&&y.jsx(H2,{elementId:i}),n&&y.jsx(q2,{fqn:i})]})}function qKe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{shape:o,deploymentFqn:i,modelFqn:a}}=e,{elementColor:l,onColorPreview:s,onChange:c}=G2(i,e);return y.jsxs(W2,{nodeProps:e,title:i,align:"start",children:[y.jsx(Dte,{elementShape:o,onChange:c}),y.jsx(U2,{elementColor:l,onColorPreview:s,onChange:c,position:"right-end"}),r&&y.jsx(H2,{deploymentId:i}),n&&a&&y.jsx(q2,{fqn:a})]})}function Dte({elementShape:e,onChange:r}){return y.jsxs(tn,{openDelay:300,closeDelay:450,floatingStrategy:"fixed",closeOnClickOutside:!0,clickOutsideEvents:["pointerdown","mousedown","click"],closeOnEscape:!0,closeOnItemClick:!1,position:"top-start",offset:2,styles:{item:{padding:"calc(var(--mantine-spacing-xs) / 1.5) var(--mantine-spacing-xs)"}},withinPortal:!1,children:[y.jsx(w3,{children:y.jsx(Vn,{variant:"light",color:"gray",size:"compact-xs",rightSection:y.jsx(tR,{size:12}),children:e})}),y.jsx(vy,{onDoubleClick:nn,onClick:nn,children:n0e.map(n=>y.jsx(by,{fz:12,fw:500,value:n,rightSection:e===n?y.jsx(dQ,{size:12}):void 0,onClick:o=>{o.stopPropagation(),r({shape:n})},children:n},n))})]})}const HKe=[Ue.Top,Ue.Right,Ue.Bottom,Ue.Left],y0=S.memo(()=>y.jsx(y.Fragment,{children:HKe.map(e=>y.jsxs(S.Fragment,{children:[y.jsx(Oo,{type:"source",position:e,className:"likec4-node-handle-center"}),y.jsx(Oo,{type:"target",position:e,className:"likec4-node-handle-center"})]},e))}));function OR(e){const r=Mt(),n=e.data.modelFqn;return n?y.jsx(oR,{...e,onClick:o=>{o.stopPropagation(),r.openElementDetails(n,e.id)}}):null}function Pte(e){const r=Mt(),n=e.data.modelFqn;return n?y.jsx(AJ,{...e,onClick:o=>{o.stopPropagation(),r.openElementDetails(n,e.id)}}):null}function UKe(e){const{enableElementTags:r,enableElementDetails:n,enableReadOnly:o,enableCompareWithLatest:i}=sr();return y.jsxs(ug,{nodeProps:e,children:[i&&y.jsx(Sg,{nodeProps:e}),y.jsx(pg,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx($te,{...e}),n&&y.jsx(OR,{...e}),!o&&y.jsx(VKe,{...e}),y.jsx(y0,{})]})}function WKe(e){const{enableElementTags:r,enableElementDetails:n,enableReadOnly:o,enableCompareWithLatest:i}=sr();return y.jsxs(ug,{nodeProps:e,children:[i&&y.jsx(Sg,{nodeProps:e}),y.jsx(pg,{...e}),y.jsx(dl,{...e}),r&&y.jsx(t0,{...e}),y.jsx(PKe,{...e}),n&&y.jsx(OR,{...e}),!o&&y.jsx(qKe,{...e}),y.jsx(y0,{})]})}const LR=fe({outlineColor:"likec4.compare.manual.outline",outlineWidth:"4px",outlineStyle:"dashed",outlineOffset:"1.5"}),FR=e=>e.data.drifts&&e.data.drifts.length>0;function GKe(e){const{enableElementDetails:r,enableReadOnly:n,enableCompareWithLatest:o}=sr(),i=o&&FR(e);return y.jsxs(c0,{className:i?LR:void 0,nodeProps:e,children:[o&&y.jsx(Sg,{nodeProps:e}),y.jsx(d0,{...e}),y.jsx(Rte,{...e}),r&&y.jsx(Pte,{...e}),!n&&y.jsx(LKe,{...e}),y.jsx(y0,{})]})}function YKe(e){const{enableElementDetails:r,enableReadOnly:n,enableCompareWithLatest:o}=sr(),i=o&&FR(e);return y.jsxs(c0,{className:i?LR:void 0,nodeProps:e,children:[o&&y.jsx(Sg,{nodeProps:e}),y.jsx(d0,{...e}),y.jsx(Rte,{...e}),r&&y.jsx(Pte,{...e}),!n&&y.jsx(FKe,{...e}),y.jsx(y0,{})]})}function XKe(e){const{enableCompareWithLatest:r}=sr(),n=r&&FR(e);return y.jsxs(c0,{className:n?LR:void 0,nodeProps:e,children:[r&&y.jsx(Sg,{nodeProps:e}),y.jsx(d0,{...e}),y.jsx(y0,{})]})}const KKe={left:Ue.Left,right:Ue.Right,top:Ue.Top,bottom:Ue.Bottom},ZKe=({data:e,port:r})=>y.jsxs(y.Fragment,{children:[y.jsx(hr,{"data-likec4-color":e.color,className:fe({position:"absolute",backgroundColor:"var(--likec4-palette-fill)",rounded:"xs",width:{base:"5px",_whenHovered:"7px",_whenSelected:"7px"},transition:"fast",translateX:"-1/2",translateY:"-1/2",translate:"auto"}),style:{top:r.cy,left:r.cx,height:r.height}}),y.jsx(Oo,{id:r.id,type:r.type,position:KKe[r.position],style:{top:r.cy-3,left:r.cx-3,width:6,height:6,right:"unset",bottom:"unset",visibility:"hidden",transform:r.position==="left"?"translate(-150%, 0)":"translate(100%, 0)"}})]}),QKe=e=>Zn(e.modelFqn);function JKe(e){const{enableElementDetails:r,enableCompareWithLatest:n}=sr(),o=e.data,{id:i,positionAbsoluteY:a,data:{viewHeight:l,hovered:s=!1,ports:c}}=e;return y.jsxs(y.Fragment,{children:[y.jsx(hr,{"data-likec4-color":"gray",className:fe({position:"absolute",rounded:"xs",top:"1",pointerEvents:"none",transition:"fast",translateX:"-1/2",translate:"auto"}),style:{backgroundColor:"var(--likec4-palette-stroke)",opacity:s?.6:.4,left:"50%",width:s?3:2,height:l-a,zIndex:-1,pointerEvents:"none"}}),y.jsxs(ug,{nodeProps:e,children:[n&&y.jsx(Sg,{nodeProps:e}),y.jsx(pg,{...e}),y.jsx(dl,{...e}),QKe(o)&&y.jsxs(y.Fragment,{children:[y.jsx($te,{...e,data:o}),r&&y.jsx(OR,{id:i,data:o})]})]}),c.map(d=>y.jsx(ZKe,{port:d,data:e.data},d.id))]})}function eZe(e){return y.jsx(hr,{"data-likec4-color":e.data.color,css:{width:"100%",height:"100%",border:"default",rounded:"sm",borderWidth:1,"--_color":{base:"var(--likec4-palette-stroke)",_dark:"[color-mix(in oklab, var(--likec4-palette-hiContrast) 40%, var(--likec4-palette-fill))]"},borderColor:"[var(--_color)/30]",backgroundColor:"var(--likec4-palette-fill)/15",pointerEvents:"none",paddingLeft:"2",paddingTop:"0.5",fontSize:"xs",fontWeight:"bold",letterSpacing:".75px",color:"[var(--_color)/75]"},children:"PARALLEL"})}const jp={ElementNode:UKe,DeploymentNode:WKe,CompoundElementNode:GKe,CompoundDeploymentNode:YKe,ViewGroupNode:XKe,SequenceActorNode:JKe,SequenceParallelArea:eZe},Mte={RelationshipEdge:Cte,SequenceStepEdge:AKe};var Nte=Symbol.for("immer-nothing"),Bte=Symbol.for("immer-draftable"),qo=Symbol.for("immer-state");function hl(e,...r){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Ai=Object,Eg=Ai.getPrototypeOf,Y2="constructor",X2="prototype",VR="configurable",K2="enumerable",Z2="writable",v0="value",Id=e=>!!e&&!!e[qo];function pc(e){return e?Ote(e)||J2(e)||!!e[Bte]||!!e[Y2]?.[Bte]||e4(e)||t4(e):!1}var tZe=Ai[X2][Y2].toString(),Ite=new WeakMap;function Ote(e){if(!e||!HR(e))return!1;const r=Eg(e);if(r===null||r===Ai[X2])return!0;const n=Ai.hasOwnProperty.call(r,Y2)&&r[Y2];if(n===Object)return!0;if(!Cg(n))return!1;let o=Ite.get(n);return o===void 0&&(o=Function.toString.call(n),Ite.set(n,o)),o===tZe}function b0(e,r,n=!0){x0(e)===0?(n?Reflect.ownKeys(e):Ai.keys(e)).forEach(o=>{r(o,e[o],e)}):e.forEach((o,i)=>r(i,o,e))}function x0(e){const r=e[qo];return r?r.type_:J2(e)?1:e4(e)?2:t4(e)?3:0}var Lte=(e,r,n=x0(e))=>n===2?e.has(r):Ai[X2].hasOwnProperty.call(e,r),qR=(e,r,n=x0(e))=>n===2?e.get(r):e[r],Q2=(e,r,n,o=x0(e))=>{o===2?e.set(r,n):o===3?e.add(n):e[r]=n};function rZe(e,r){return e===r?e!==0||1/e===1/r:e!==e&&r!==r}var J2=Array.isArray,e4=e=>e instanceof Map,t4=e=>e instanceof Set,HR=e=>typeof e=="object",Cg=e=>typeof e=="function",UR=e=>typeof e=="boolean",hc=e=>e.copy_||e.base_,WR=e=>e.modified_?e.copy_:e.base_;function GR(e,r){if(e4(e))return new Map(e);if(t4(e))return new Set(e);if(J2(e))return Array[X2].slice.call(e);const n=Ote(e);if(r===!0||r==="class_only"&&!n){const o=Ai.getOwnPropertyDescriptors(e);delete o[qo];let i=Reflect.ownKeys(o);for(let a=0;a1&&Ai.defineProperties(e,{set:r4,add:r4,clear:r4,delete:r4}),Ai.freeze(e),r&&b0(e,(n,o)=>{YR(o,!0)},!1)),e}function nZe(){hl(2)}var r4={[v0]:nZe};function n4(e){return e===null||!HR(e)?!0:Ai.isFrozen(e)}var o4="MapSet",XR="Patches",Fte={};function $g(e){const r=Fte[e];return r||hl(0,e),r}var oZe=e=>!!Fte[e],w0,Vte=()=>w0,iZe=(e,r)=>({drafts_:[],parent_:e,immer_:r,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:oZe(o4)?$g(o4):void 0});function qte(e,r){r&&(e.patchPlugin_=$g(XR),e.patches_=[],e.inversePatches_=[],e.patchListener_=r)}function KR(e){ZR(e),e.drafts_.forEach(aZe),e.drafts_=null}function ZR(e){e===w0&&(w0=e.parent_)}var Hte=e=>w0=iZe(w0,e);function aZe(e){const r=e[qo];r.type_===0||r.type_===1?r.revoke_():r.revoked_=!0}function Ute(e,r){r.unfinalizedDrafts_=r.drafts_.length;const n=r.drafts_[0];if(e!==void 0&&e!==n){n[qo].modified_&&(KR(r),hl(4)),pc(e)&&(e=Wte(r,e));const{patchPlugin_:o}=r;o&&o.generateReplacementPatches_(n[qo].base_,e,r)}else e=Wte(r,n);return lZe(r,e,!0),KR(r),r.patches_&&r.patchListener_(r.patches_,r.inversePatches_),e!==Nte?e:void 0}function Wte(e,r){if(n4(r))return r;const n=r[qo];if(!n)return QR(r,e.handledSet_,e);if(!i4(n,e))return r;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:o}=n;if(o)for(;o.length>0;)o.pop()(e);Xte(n,e)}return n.copy_}function lZe(e,r,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&YR(r,n)}function Gte(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var i4=(e,r)=>e.scope_===r,sZe=[];function Yte(e,r,n,o){const i=hc(e),a=e.type_;if(o!==void 0&&qR(i,o,a)===r){Q2(i,o,n,a);return}if(!e.draftLocations_){const s=e.draftLocations_=new Map;b0(i,(c,d)=>{if(Id(d)){const u=s.get(d)||[];u.push(c),s.set(d,u)}})}const l=e.draftLocations_.get(r)??sZe;for(const s of l)Q2(i,s,n,a)}function cZe(e,r,n){e.callbacks_.push(function(o){const i=r;if(!i||!i4(i,o))return;o.mapSetPlugin_?.fixSetContents(i);const a=WR(i);Yte(e,i.draft_??i,a,n),Xte(i,o)})}function Xte(e,r){if(e.modified_&&!e.finalized_&&(e.type_===3||(e.assigned_?.size??0)>0)){const{patchPlugin_:n}=r;if(n){const o=n.getPath(e);o&&n.generatePatches_(e,o,r)}Gte(e)}}function dZe(e,r,n){const{scope_:o}=e;if(Id(n)){const i=n[qo];i4(i,o)&&i.callbacks_.push(function(){a4(e);const a=WR(i);Yte(e,n,a,r)})}else pc(n)&&e.callbacks_.push(function(){const i=hc(e);qR(i,r,e.type_)===n&&o.drafts_.length>1&&(e.assigned_.get(r)??!1)===!0&&e.copy_&&QR(qR(e.copy_,r,e.type_),o.handledSet_,o)})}function QR(e,r,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||Id(e)||r.has(e)||!pc(e)||n4(e)||(r.add(e),b0(e,(o,i)=>{if(Id(i)){const a=i[qo];if(i4(a,n)){const l=WR(a);Q2(e,o,l,e.type_),Gte(a)}}else pc(i)&&QR(i,r,n)})),e}function uZe(e,r){const n=J2(e),o={type_:n?1:0,scope_:r?r.scope_:Vte(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:r,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let i=o,a=JR;n&&(i=[o],a=k0);const{revoke:l,proxy:s}=Proxy.revocable(i,a);return o.draft_=s,o.revoke_=l,[s,o]}var JR={get(e,r){if(r===qo)return e;const n=hc(e);if(!Lte(n,r,e.type_))return pZe(e,n,r);const o=n[r];if(e.finalized_||!pc(o))return o;if(o===ez(e.base_,r)){a4(e);const i=e.type_===1?+r:r,a=rz(e.scope_,o,e,i);return e.copy_[i]=a}return o},has(e,r){return r in hc(e)},ownKeys(e){return Reflect.ownKeys(hc(e))},set(e,r,n){const o=Kte(hc(e),r);if(o?.set)return o.set.call(e.draft_,n),!0;if(!e.modified_){const i=ez(hc(e),r),a=i?.[qo];if(a&&a.base_===n)return e.copy_[r]=n,e.assigned_.set(r,!1),!0;if(rZe(n,i)&&(n!==void 0||Lte(e.base_,r,e.type_)))return!0;a4(e),tz(e)}return e.copy_[r]===n&&(n!==void 0||r in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[r])||(e.copy_[r]=n,e.assigned_.set(r,!0),dZe(e,r,n)),!0},deleteProperty(e,r){return a4(e),ez(e.base_,r)!==void 0||r in e.base_?(e.assigned_.set(r,!1),tz(e)):e.assigned_.delete(r),e.copy_&&delete e.copy_[r],!0},getOwnPropertyDescriptor(e,r){const n=hc(e),o=Reflect.getOwnPropertyDescriptor(n,r);return o&&{[Z2]:!0,[VR]:e.type_!==1||r!=="length",[K2]:o[K2],[v0]:n[r]}},defineProperty(){hl(11)},getPrototypeOf(e){return Eg(e.base_)},setPrototypeOf(){hl(12)}},k0={};b0(JR,(e,r)=>{k0[e]=function(){const n=arguments;return n[0]=n[0][0],r.apply(this,n)}}),k0.deleteProperty=function(e,r){return k0.set.call(this,e,r,void 0)},k0.set=function(e,r,n){return JR.set.call(this,e[0],r,n,e[0])};function ez(e,r){const n=e[qo];return(n?hc(n):e)[r]}function pZe(e,r,n){const o=Kte(r,n);return o?v0 in o?o[v0]:o.get?.call(e.draft_):void 0}function Kte(e,r){if(!(r in e))return;let n=Eg(e);for(;n;){const o=Object.getOwnPropertyDescriptor(n,r);if(o)return o;n=Eg(n)}}function tz(e){e.modified_||(e.modified_=!0,e.parent_&&tz(e.parent_))}function a4(e){e.copy_||(e.assigned_=new Map,e.copy_=GR(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var hZe=class{constructor(r){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,o,i)=>{if(Cg(n)&&!Cg(o)){const l=o;o=n;const s=this;return function(c=l,...d){return s.produce(c,u=>o.call(this,u,...d))}}Cg(o)||hl(6),i!==void 0&&!Cg(i)&&hl(7);let a;if(pc(n)){const l=Hte(this),s=rz(l,n,void 0);let c=!0;try{a=o(s),c=!1}finally{c?KR(l):ZR(l)}return qte(l,i),Ute(a,l)}else if(!n||!HR(n)){if(a=o(n),a===void 0&&(a=n),a===Nte&&(a=void 0),this.autoFreeze_&&YR(a,!0),i){const l=[],s=[];$g(XR).generateReplacementPatches_(n,a,{patches_:l,inversePatches_:s}),i(l,s)}return a}else hl(1,n)},this.produceWithPatches=(n,o)=>{if(Cg(n))return(l,...s)=>this.produceWithPatches(l,c=>n(c,...s));let i,a;return[this.produce(n,o,(l,s)=>{i=l,a=s}),i,a]},UR(r?.autoFreeze)&&this.setAutoFreeze(r.autoFreeze),UR(r?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(r.useStrictShallowCopy),UR(r?.useStrictIteration)&&this.setUseStrictIteration(r.useStrictIteration)}createDraft(r){pc(r)||hl(8),Id(r)&&(r=fZe(r));const n=Hte(this),o=rz(n,r,void 0);return o[qo].isManual_=!0,ZR(n),o}finishDraft(r,n){const o=r&&r[qo];(!o||!o.isManual_)&&hl(9);const{scope_:i}=o;return qte(i,n),Ute(void 0,i)}setAutoFreeze(r){this.autoFreeze_=r}setUseStrictShallowCopy(r){this.useStrictShallowCopy_=r}setUseStrictIteration(r){this.useStrictIteration_=r}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(r,n){let o;for(o=n.length-1;o>=0;o--){const a=n[o];if(a.path.length===0&&a.op==="replace"){r=a.value;break}}o>-1&&(n=n.slice(o+1));const i=$g(XR).applyPatches_;return Id(r)?i(r,n):this.produce(r,a=>i(a,n))}};function rz(e,r,n,o){const[i,a]=e4(r)?$g(o4).proxyMap_(r,n):t4(r)?$g(o4).proxySet_(r,n):uZe(r,n);return(n?.scope_??Vte()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=o,n&&o!==void 0?cZe(n,a,o):a.callbacks_.push(function(l){l.mapSetPlugin_?.fixSetContents(a);const{patchPlugin_:s}=l;a.modified_&&s&&s.generatePatches_(a,[],l)}),i}function fZe(e){return Id(e)||hl(10,e),Zte(e)}function Zte(e){if(!pc(e)||n4(e))return e;const r=e[qo];let n,o=!0;if(r){if(!r.modified_)return r.base_;r.finalized_=!0,n=GR(e,r.scope_.immer_.useStrictShallowCopy_),o=r.scope_.immer_.shouldUseStrictIteration()}else n=GR(e,!0);return b0(n,(i,a)=>{Q2(n,i,Zte(a))},o),r&&(r.finalized_=!1),n}var nz=new hZe,as=nz.produce,Qte=nz.setAutoFreeze.bind(nz),_0=e=>e;class Rg{static LeftPadding=42;static RightPadding=42;static TopPadding=60;static BottomPadding=42;id;minX=1/0;minY=1/0;maxX=-1/0;maxY=-1/0;initialX;initialY;get positionAbsolute(){return{x:this.minX,y:this.minY}}get initialPositionAbsolute(){return{x:this.initialX,y:this.initialY}}set positionAbsolute(r){const n=Math.round(r.x),o=Math.round(r.y);this.maxX+=n-this.minX,this.maxY+=o-this.minY,this.minX=n,this.minY=o}get dimensions(){return{width:Math.round(this.maxX-this.minX),height:Math.round(this.maxY-this.minY)}}get diff(){return{x:Math.round(this.positionAbsolute.x-this.initialX),y:Math.round(this.positionAbsolute.y-this.initialY)}}get isMoved(){return this.diff.x!==0||this.diff.y!==0}get position(){const r=this.positionAbsolute;if(!this.parent)return r;const n=this.parent.positionAbsolute;return{x:r.x-n.x,y:r.y-n.y}}constructor(r,n=null){this.id=r.id,this.positionAbsolute=n?{x:r.position.x+n.minX,y:r.position.y+n.minY}:r.position;const{width:o,height:i}=_o(r);this.maxX=this.minX+Math.ceil(o),this.maxY=this.minY+Math.ceil(i),this.initialX=this.positionAbsolute.x,this.initialY=this.positionAbsolute.y,n&&n.children.push(this)}}class oz extends Rg{constructor(r,n=null){super(r,n),this.parent=n}children=[]}class gZe extends Rg{constructor(r,n=null){super(r,n),this.parent=n}}function mZe(e,r){const n=e.data.controlPoints??null;return o=>{const i=gt(o.get(e.id),`Edge ${e.id} not found`),{x:a,y:l}=r.diff;return a===0&&l===0?{id:e.id,type:"replace",item:as(i,s=>{s.data.points=e.data.points,s.data.controlPoints=n,s.data.labelBBox=e.data.labelBBox})}:{id:e.id,type:"replace",item:as(i,s=>{s.data.points=un(e.data.points,c=>[c[0]+a,c[1]+l]),n&&(s.data.controlPoints=n.map(c=>({x:c.x+a,y:c.y+l}))),e.data.labelBBox&&(s.data.labelBBox={x:e.data.labelBBox.x+a,y:e.data.labelBBox.y+l,width:e.data.labelBBox.width,height:e.data.labelBBox.height})})}}}function yZe(e,r,n,o){const i=e.data.controlPoints??c2(e.data.points),a=Qr(ko.center(n)),l=Qr(ko.center(o)),s=a.subtract(l),c=s.length();return d=>{const u=gt(d.get(e.id),`Edge ${e.id} not found`),{x:p,y:f}=r.diff;if(p===0&&f===0)return{id:e.id,type:"replace",item:as(u,w=>{w.data.points=e.data.points,w.data.controlPoints=e.data.controlPoints,w.data.labelBBox=e.data.labelBBox})};const m=Qr(p,f),v=w=>{const x=Qr(w),k=x.subtract(l).dot(s),C=ta(k/c**2,{min:-1,max:1});return x.add(m.multiply(C)).round().toObject()};return{id:e.id,type:"replace",item:as(u,w=>{if(w.data.controlPoints=i.map(v),e.data.labelBBox){w.data.labelBBox??=e.data.labelBBox;const{x,y:k}=v(e.data.labelBBox);w.data.labelBBox.x=x,w.data.labelBBox.y=k}})}}}function Jte(e,r){const{parentLookup:n,nodeLookup:o,edges:i}=e.getState(),a=new Map,l=new Ln(_=>{let $=o.get(_)?.parentId;return $?[$,...l.get($)]:[]}),s=new Ln(_=>{const $=n.get(_);if(!$||$.size===0)return new Set;const R=new Set;for(const T of $.values()){R.add(T.id);for(const A of s.get(T.id))R.add(A)}return R});if(xn(r,2)){const _=Jr(r,Pq($=>[...s.get($)]),yw(),$=>e$e(r,$));He(xn(_,1),"All editing nodes are nested within each other"),r=_}const c=new Set(r.flatMap(_=>l.get(_))),d=[...o.values()].flatMap(_=>_.parentId?[]:{xynode:_,parent:null});for(;d.length>0;){const{xynode:_,parent:$}=d.shift();if(!r.includes(_.id)&&c.has(_.id)){const R=new oz(_,$);a.set(_.id,R),n.get(_.id)?.forEach(T=>{d.push({xynode:T,parent:R})});continue}a.set(_.id,new gZe(_,$))}const u=[...a.values()],p=new Map,f=_=>a.get(_)??l.get(_).map($=>a.get($)).find($=>!!$)??null,m=new Set(r.flatMap(_=>[_,...s.get(_)]));for(const _ of i){const $=m.has(_.source),R=m.has(_.target);if($&&R){let T=a.get(_.source)??a.get(_.target)??f(_.source)??f(_.target);T&&p.set(_,mZe(_,T));continue}if($!==R){const T=f($?_.source:_.target);if(!T)continue;const[A,z]=Jr([_.source,_.target],un(N=>gt(o.get(N),`Node ${N} not found`)),un(r$)),[j,I]=$?[A,z]:[z,A];p.set(_,yZe(_,T,j,I));continue}}function v(_){for(const $ of _){if(!($ instanceof oz))continue;v($.children);const R={minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};for(const T of $.children)R.minX=Math.min(R.minX,T.minX),R.minY=Math.min(R.minY,T.minY),R.maxX=Math.max(R.maxX,T.maxX),R.maxY=Math.max(R.maxY,T.maxY);$.minX=R.minX-Rg.LeftPadding,$.minY=R.minY-Rg.TopPadding,$.maxX=R.maxX+Rg.RightPadding,$.maxY=R.maxY+Rg.BottomPadding}}const w=[...p.values()];function x(){v(u);const _=u.reduce((z,j)=>(z.push({id:j.id,type:"position",dragging:!1,position:j.position,positionAbsolute:j.positionAbsolute}),j instanceof oz&&z.push({id:j.id,type:"dimensions",setAttributes:!0,dimensions:j.dimensions}),z),[]),{edgeLookup:$,triggerNodeChanges:R,triggerEdgeChanges:T}=e.getState();R(_);const A=w.map(z=>z($));A.length>0&&T(A)}let k=null;function C(){u.length!==0&&(k??=requestAnimationFrame(()=>{k=null;for(const _ of r){const $=a.get(_);if(!$){console.warn(`Rect not found for id ${_}`);continue}const R=o.get(_);if(!R){console.warn(`Node not found for id ${_}`);continue}$.positionAbsolute=R.internals.positionAbsolute}x()}))}return{rects:a,onMove:C,updateXYFlow:x}}function vZe(){const e=JC(),r=Mt(),n=S.useRef(void 0);return S.useMemo(()=>({onNodeDragStart:(o,i)=>{r.startEditing("node");const{nodeLookup:a}=e.getState(),l=Jr(Array.from(a.values()),ep(s=>s.dragging===!0||s.id===i.id||s.selected===!0),un(s=>s.id));xn(l,1)&&(n.current=Jte(e,l))},onNodeDrag:o=>{n.current?.onMove()},onNodeDragStop:o=>{const i=n.current?YO(n.current.rects.values(),a=>a.isMoved):!1;r.stopEditing(i),n.current=void 0}}),[e,r])}const bZe={relationship:Mte.RelationshipEdge,"seq-step":Mte.SequenceStepEdge},Od={element:sc(jp.ElementNode),deployment:sc(jp.DeploymentNode),"compound-element":sc(jp.CompoundElementNode),"compound-deployment":sc(jp.CompoundDeploymentNode),"view-group":sc(jp.ViewGroupNode),"seq-actor":sc(jp.SequenceActorNode),"seq-parallel":sc(jp.SequenceParallelArea)};function xZe(e){return!e||tp(e)?Od:{element:e.element??Od.element,deployment:e.deployment??Od.deployment,"compound-element":e.compoundElement??Od["compound-element"],"compound-deployment":e.compoundDeployment??Od["compound-deployment"],"view-group":e.viewGroup??Od["view-group"],"seq-actor":e.seqActor??Od["seq-actor"],"seq-parallel":e.seqParallel??Od["seq-parallel"]}}const wZe=({context:e,children:r})=>{const{enableReadOnly:n}=O2(e),o=n||r.editor?.getSnapshot().context.editing!=="edge";return{enableReadOnly:n,initialized:e.initialized.xydata&&e.initialized.xyflow,nodes:e.xynodes,edges:e.xyedges,pannable:e.pannable,zoomable:e.zoomable,nodesDraggable:!n&&e.nodesDraggable,nodesSelectable:e.nodesSelectable&&o,fitViewPadding:e.fitViewPadding,enableFitView:e.features.enableFitView,...!e.features.enableFitView&&{viewport:{x:-e.view.bounds.x,y:-e.view.bounds.y,zoom:1}}}},kZe=(e,r)=>e.enableReadOnly===r.enableReadOnly&&e.initialized===r.initialized&&e.pannable===r.pannable&&e.zoomable===r.zoomable&&e.nodesDraggable===r.nodesDraggable&&e.nodesSelectable===r.nodesSelectable&&e.enableFitView===r.enableFitView&&Ir(e.fitViewPadding,r.fitViewPadding)&&Ir(e.nodes,r.nodes)&&Ir(e.edges,r.edges)&&Ir(e.viewport??null,r.viewport??null);function _Ze({background:e="dots",reactFlowProps:r={},children:n,renderNodes:o}){const i=Mt();let{enableReadOnly:a,initialized:l,nodes:s,edges:c,enableFitView:d,nodesDraggable:u,nodesSelectable:p,...f}=wE(wZe,kZe);const{onNodeContextMenu:m,onCanvasContextMenu:v,onEdgeContextMenu:w,onNodeClick:x,onEdgeClick:k,onCanvasClick:C,onCanvasDblClick:_}=mg(),$=pMe(),R=vZe(),T=fMe(),A=CH(()=>{T.set(!0)},$?120:400),z=bf(()=>{A.clear(),T.set(!1)},$?350:200),j=at(H=>{H&&(T.get()||A.start(),z())}),I=at((H,P)=>{A.clear(),i.send({type:"xyflow.viewportMoved",viewport:P,manually:!!H})}),N=at(()=>{i.send({type:"xyflow.resized"})}),L=SL(()=>xZe(o),[o],gQ);return $p(()=>{console.warn("renderNodes changed - this might degrade performance")},[L]),y.jsx(s$,{nodes:s,edges:c,className:Ge(l?"initialized":"not-initialized"),nodeTypes:L,edgeTypes:bZe,onNodesChange:at(H=>{i.send({type:"xyflow.applyNodeChanges",changes:H})}),onEdgesChange:at(H=>{i.send({type:"xyflow.applyEdgeChanges",changes:H})}),background:l?e:"transparent",fitView:!1,onNodeClick:at((H,P)=>{H.stopPropagation(),i.send({type:"xyflow.nodeClick",node:P}),x?.(i.findDiagramNode(P.id),H)}),onEdgeClick:at((H,P)=>{H.stopPropagation(),i.send({type:"xyflow.edgeClick",edge:P}),k?.(i.findDiagramEdge(P.id),H)}),onEdgeDoubleClick:at((H,P)=>{H.stopPropagation(),i.send({type:"xyflow.edgeDoubleClick",edge:P})}),onPaneClick:at(H=>{H.stopPropagation(),i.send({type:"xyflow.paneClick"}),C?.(H)}),onDoubleClick:at(H=>{H.stopPropagation(),H.preventDefault(),i.send({type:"xyflow.paneDblClick"}),_?.(H)}),onNodeMouseEnter:at((H,P)=>{H.stopPropagation(),i.send({type:"xyflow.nodeMouseEnter",node:P})}),onNodeMouseLeave:at((H,P)=>{H.stopPropagation(),i.send({type:"xyflow.nodeMouseLeave",node:P})}),onEdgeMouseEnter:at((H,P)=>{H.stopPropagation(),i.send({type:"xyflow.edgeMouseEnter",edge:P,event:H})}),onEdgeMouseLeave:at((H,P)=>{H.stopPropagation(),i.send({type:"xyflow.edgeMouseLeave",edge:P,event:H})}),onMove:j,onMoveEnd:I,onInit:at(H=>{i.send({type:"xyflow.init",instance:H})}),onNodeContextMenu:at((H,P)=>{const V=gt(i.findDiagramNode(P.id),`diagramNode ${P.id} not found`);m?.(V,H)}),onEdgeContextMenu:at((H,P)=>{const V=gt(i.findDiagramEdge(P.id),`diagramEdge ${P.id} not found`);w?.(V,H)}),...v&&{onPaneContextMenu:v},...d&&{onViewportResize:N},nodesDraggable:u,nodesSelectable:p,elevateEdgesOnSelect:!a,...u&&R,...f,...r,children:n})}function SZe(e,r){try{return Qte(!1),EZe(e,r)}finally{Qte(!0)}}const ere=e=>ty(e.parent);function EZe(e,r){He(e.id===r.id,"View IDs do not match"),He(e._type===r._type,"View types do not match"),He(e._layout==="manual"&&r._layout==="auto","Views must be manual and auto");const n=new Set,o=new Set,i=u=>!n.has(typeof u=="string"?u:u.id),a=u=>o.has(u.source)&&o.has(u.target)&&i(u.source)&&i(u.target),l=new Map(r.nodes.map(u=>{u.children&&u.children.length>0&&n.add(u.id);const p=e.nodes.find(f=>f.id===u.id);return p?[u.id,$Ze({latest:u,manual:p})]:(o.add(u.id),[u.id,iz(u)])}));if(o.size===l.size)return as(r,u=>{u._layout="manual",u.nodes=_0([...l.values()]),u.edges=_0(r.edges.map(iz)),delete u.drifts});n.size>0&&CZe(l);const s=[...l.values()],c=r.edges.map(u=>{const p=u.dir??"forward",f=x=>x.source===u.source&&x.target===u.target&&(x.dir===p||!x.dir&&!u.dir);let m=e.edges.find(x=>x.id===u.id&&f(x));if(m||(m=e.edges.find(x=>f(x))),m)return RZe({latest:u,manual:m});if(a(u))return iz(u);const v=l.get(u.source),w=l.get(u.target);return zZe(u,v,w)}),d=ko.merge(...s.filter(ere));return as(r,u=>{u._layout="manual",u.nodes=_0(s),u.edges=_0(c),u.bounds=d,delete u.drifts})}const zg={Left:42,Right:42,Top:60,Bottom:42};function CZe(e){function r(n){const o=gt(e.get(n),`Node ${n} not found`);if(o.children.length===0)return o;const i=[];for(const l of o.children)i.push(r(l));const a=ko.merge(...i);return o.x=a.x-zg.Left,o.y=a.y-zg.Top,o.width=a.width+zg.Left+zg.Right,o.height=a.height+zg.Top+zg.Bottom,o}for(const n of e.values())!ere(n)||n.children.length===0||r(n.id)}function $Ze({latest:e,manual:r}){return He(r.id===e.id,"Node IDs do not match"),as(e,n=>{n.x=r.x,n.y=r.y,n.drifts=null})}function RZe(e){const{manual:r,latest:n}=e;return as(n,o=>{r.controlPoints?o.controlPoints=r.controlPoints:delete o.controlPoints,o.points=_0(r.points),r.labelBBox&&(o.labelBBox=n.labelBBox??r.labelBBox,o.labelBBox.x=r.labelBBox.x,o.labelBBox.y=r.labelBBox.y),o.drifts=null})}function iz(e){if("drifts"in e&&e.drifts!==null){const r={...e};return r.drifts=null,r}return e}function zZe(e,r,n){const o=TZe(r,n),i=o[0];return as(e,a=>{a.controlPoints=o,e.labelBBox&&(a.labelBBox.x=i.x,a.labelBBox.y=i.y),delete a.drifts})}function tre(e,r,n){const o=e.width/2/n.x,i=e.height/2/n.y,a=Math.min(Math.abs(o),Math.abs(i));return Qr(n).multiply(a).add(r)}function TZe(e,r){const n=Qr(ko.center(e)),o=Qr(ko.center(r));if(e===r){const s=Qr(0,e.height||0).multiply(-.5).add(n);return[s.add(Qr(-32,-80)).round().toObject(),s.add(Qr(32,-80)).round().toObject()]}const i=o.subtract(n),a=tre(e,n,i),l=tre(r,o,i.multiply(-1)).subtract(a);return[a.add(l.multiply(.4)).round().toObject(),a.add(l.multiply(.6)).round().toObject()]}const jZe=S.createContext(null);function rre(){return S.useContext(jZe)}function AZe(e){const r=rre(),n=at(async({input:{viewId:i,current:a}})=>{if(!r)return console.error("No editor port available for applying latest to manual layout"),Promise.reject(new Error("No editor port"));const[l,s]=await Promise.all([a??Promise.resolve().then(()=>r.fetchView(i,"manual")),Promise.resolve().then(()=>r.fetchView(i,"auto"))]).catch(c=>(console.error("Failed to fetch views for applying latest to manual layout",c),Promise.reject(c)));return{updated:SZe(l,s)}}),o=at(async({input:i})=>{if(!r)return console.error("No editor port available for executing change"),Promise.reject(new Error("No editor port"));for(const a of i.changes)await Promise.resolve().then(()=>r.handleChange(e,a)).catch(l=>(console.error("Failed to execute change",{change:a,err:l}),Promise.reject(l)));return{}});return Aee.provide({actors:{applyLatest:zy(n),executeChange:zy(o)}})}function nre(e){return{ref:e,get actor(){return e.current},overlays(){return gt(e.current.getSnapshot().children.overlays,"Overlays actor not found")},send:r=>e.current.send(r),navigateTo:(r,n,o)=>{e.current.send({type:"navigate.to",viewId:r,...n&&{fromNode:n},...o&&{focusOnElement:o}})},navigate:r=>{e.current.send({type:`navigate.${r}`})},fitDiagram:(r=350)=>{e.current.send({type:"xyflow.fitDiagram",duration:r})},openRelationshipsBrowser:r=>{e.current.send({type:"open.relationshipsBrowser",fqn:r})},openSource:r=>{e.current.send({type:"open.source",...r})},openElementDetails:(r,n)=>{e.current.send({type:"open.elementDetails",fqn:r,fromNode:n})},openRelationshipDetails:(...r)=>{r.length===1?e.current.send({type:"open.relationshipDetails",params:{edgeId:r[0]}}):e.current.send({type:"open.relationshipDetails",params:{source:r[0],target:r[1]}})},updateNodeData:(r,n)=>{e.current.send({type:"update.nodeData",nodeId:r,data:n})},updateEdgeData:(r,n)=>{e.current.send({type:"update.edgeData",edgeId:r,data:n})},startEditing:r=>{const n=zr(e.current.system).editorActorRef;He(n,"No editor actor found in diagram actor system"),n.send({type:"edit.start",subject:r})},stopEditing:(r=!1)=>{const n=zr(e.current.system).editorActorRef;He(n,"No editor actor found in diagram actor system"),n.send({type:"edit.finish",wasChanged:r})},undoEditing:()=>{const r=zr(e.current.system).editorActorRef;He(r,"No editor actor found in diagram actor system");const n=r.getSnapshot().context.history.length>0;return n&&r.send({type:"undo"}),n},align:r=>{e.current.send({type:"layout.align",mode:r})},resetEdgeControlPoints:()=>{e.current.send({type:"layout.resetEdgeControlPoints"})},focusNode:r=>{e.current.send({type:"focus.node",nodeId:r})},focusOnElement:r=>{const n=e.current.getSnapshot().context,o=mee(n.xynodes,r);o&&e.current.send({type:"focus.node",nodeId:o.id,autoUnfocus:!0})},get currentView(){return e.current.getSnapshot().context.view},getContext:()=>e.current.getSnapshot().context,findDiagramNode:r=>yg(e.current.getSnapshot().context,r),findEdge:r=>e.current.getSnapshot().context.xyedges.find(n=>n.data.id===r)??null,findDiagramEdge:r=>yR(e.current.getSnapshot().context,r),startWalkthrough:()=>{e.current.send({type:"walkthrough.start"})},walkthroughStep:(r="next")=>{e.current.send({type:"walkthrough.step",direction:r})},stopWalkthrough:()=>{e.current.send({type:"walkthrough.end"})},toggleFeature:(r,n)=>{e.current.send({type:"toggle.feature",feature:r,...n!==void 0&&{forceValue:n}})},highlightNotation:(r,n)=>{e.current.send({type:"notations.highlight",notation:r,...n&&{kind:n}})},unhighlightNotation:()=>{e.current.send({type:"notations.unhighlight"})},openSearch:r=>{e.current.send({type:"open.search",...r&&{search:r}})},triggerChange:r=>{e.current.send({type:"trigger.change",change:r})},switchDynamicViewVariant:r=>{e.current.send({type:"switch.dynamicViewVariant",variant:r})}}}function az(e,r){const n=r.view,o=e.view.id===n.id;if(n._type==="dynamic"&&n.variant==="sequence")return{xynodes:r.xynodes,xyedges:r.xyedges,view:n};const i=B2(e.xynodes,r.xynodes),a=o?ER(e.xyedges,r.xyedges):r.xyedges;return{xynodes:i,xyedges:a,view:n}}function DZe(e){const{xynodes:r,xyedges:n,focusedNode:o}=e;if(!o)return null;const i=new Set([o]),a=n.map(l=>l.source===o||l.target===o?(i.add(l.source),i.add(l.target),tr.setData(l,{dimmed:!1,active:!0})):tr.setData(l,{dimmed:!0,active:!1}));return{xynodes:r.map(l=>tr.setDimmed(l,!i.has(l.id))),xyedges:a}}function PZe({context:e,event:r}){return ht(r,"update.nodeData"),{xynodes:e.xynodes.map(n=>{if(n.id!==r.nodeId)return n;const o=Fq(n.data,r.data);return tt(o,n.data)?n:{...n,data:o}})}}function MZe({context:e,event:r}){return ht(r,"update.edgeData"),{xyedges:e.xyedges.map(n=>{if(n.id!==r.edgeId)return n;const o=Fq(n.data,r.data);return tt(o,n.data)?n:{...n,data:o}})}}function ore(e,r,n){const o=_o(e),i=o.width/2/n.x,a=o.height/2/n.y,l=Math.min(Math.abs(i),Math.abs(a));return Qr(n).multiply(l).add(r)}function ire(e,r){const n=gt(e.get(r.source),`Source node ${r.source} not found`),o=gt(e.get(r.target),`Target node ${r.target} not found`),i=Qr(n$(n)),a=Qr(n$(o));if(n===o){const d=Qr(0,n.height||0).multiply(-.5).add(i);return[d.add(Qr(-32,-80)).round().toObject(),d.add(Qr(32,-80)).round().toObject()]}const l=a.subtract(i),s=ore(n,i,l),c=ore(o,a,l.multiply(-1)).subtract(s);return[s.add(c.multiply(.4)).round().toObject(),s.add(c.multiply(.6)).round().toObject()]}function NZe(e){const{view:r}=e,n=[],o=[],i=new Map,a=x8.from(r.nodes.reduce((u,p)=>(i.set(p.id,p),p.parent||u.push({node:p,parent:null}),u),[]));let l=u=>!0;if(e.where)try{const u=Ou(e.where);l=p=>u({...Hq(p,["tags","kind"]),..."source"in p?{source:c(p.source)}:p,..."target"in p?{target:c(p.target)}:p})}catch(u){console.error("Error in where filter:",u)}const s="",c=u=>gt(i.get(u),`Node not found: ${u}`);let d;for(;d=a.dequeue();){const{node:u,parent:p}=d,f=xn(u.children,1)||u.kind==w1;if(f)for(const $ of u.children)a.enqueue({node:c($),parent:u});const m={x:u.x,y:u.y};p&&(m.x-=p.x,m.y-=p.y);const v={id:s+u.id,deletable:!1,position:m,zIndex:f?lc.Compound:lc.Element,style:{width:u.width,height:u.height},initialWidth:u.width,initialHeight:u.height,hidden:u.kind!==w1&&!l(u),...p&&{parentId:s+p.id}},w={viewId:r.id,id:u.id,title:u.title,color:u.color,shape:u.shape,style:u.style,depth:u.depth??0,icon:u.icon??"none",tags:u.tags??null,x:u.x,y:u.y,drifts:u.drifts??null},x={viewId:r.id,id:u.id,title:u.title,technology:u.technology??null,description:u.description??null,height:u.height,width:u.width,level:u.level,color:u.color,shape:u.shape,style:u.style,icon:u.icon??null,tags:u.tags,x:u.x,y:u.y,isMultiple:u.style?.multiple??!1,drifts:u.drifts??null};if(u.kind===w1){n.push({...v,type:"view-group",data:{isViewGroup:!0,...w},dragHandle:".likec4-compound-title-container"});continue}const k=u.modelRef??null,C=u.deploymentRef??null;if(!k&&!C)throw console.error("Invalid node",u),new Error("Element should have either modelRef or deploymentRef");const _={navigateTo:u.navigateTo??null};switch(!0){case(f&&!!C):{n.push({...v,type:"compound-deployment",data:{...w,..._,deploymentFqn:C,modelFqn:k}});break}case f:{He(!!k,"ModelRef expected"),n.push({...v,type:"compound-element",data:{...w,..._,modelFqn:k}});break}case!!C:{n.push({...v,type:"deployment",data:{...x,..._,deploymentFqn:C,modelFqn:k}});break}default:He(!!k,"ModelRef expected"),n.push({...v,type:"element",data:{...x,..._,modelFqn:k}})}}for(const u of r.edges){const p=u.source,f=u.target,m=s+u.id;if(!xn(u.points,2)){console.error("edge should have at least 2 points",u);continue}o.push({id:m,type:"relationship",source:s+p,target:s+f,zIndex:lc.Edge,hidden:!l(u),deletable:!1,data:{id:u.id,label:u.label,technology:u.technology,notes:u.notes??null,navigateTo:u.navigateTo,controlPoints:u.controlPoints??null,labelBBox:u.labelBBox??null,labelXY:null,points:u.points,color:u.color??"gray",line:u.line??"dashed",dir:u.dir??"forward",head:u.head??"normal",tail:u.tail??"none",astPath:u.astPath,drifts:u.drifts??null},interactionWidth:20})}return{bounds:r.bounds,xynodes:n,xyedges:o}}const are={parallel:1,actor:10},l4={default:"gray",active:"amber"};function BZe(e){const{actors:r,steps:n,compounds:o,parallelAreas:i,bounds:a}=e.sequenceLayout,l=[],s=[],c=d=>gt(e.nodes.find(u=>u.id===d));for(const d of o)l.push(IZe(d,c(d.origin),e));for(const d of i)l.push(OZe(d,e));for(const d of r)l.push(LZe(d,c(d.id),a,e));for(const d of n){const u=e.edges.find(p=>p.id===d.id);if(!u)throw new Error(`Edge ${d.id} not found`);s.push(FZe(d,u))}return{bounds:a,xynodes:l,xyedges:s}}function IZe({id:e,x:r,y:n,width:o,height:i,depth:a},l,s){return{id:e,type:"view-group",data:{id:l.id,title:l.title,color:l.color??"gray",shape:l.shape,style:l.style,tags:l.tags,x:r,y:n,viewId:s.id,depth:a,isViewGroup:!0,drifts:l.drifts??null},position:{x:r,y:n},draggable:!1,selectable:!1,focusable:!1,style:{pointerEvents:"none"},width:o,initialWidth:o,height:i,initialHeight:i}}function OZe({parallelPrefix:e,x:r,y:n,width:o,height:i},a){return{id:`seq-parallel-${e}`,type:"seq-parallel",data:{id:`seq-parallel-${e}`,title:"PARALLEL",technology:null,color:l4.default,shape:"rectangle",style:{},tags:[],x:r,y:n,level:0,icon:null,width:o,height:i,description:null,viewId:a.id,parallelPrefix:e,drifts:null},zIndex:are.parallel,position:{x:r,y:n},draggable:!1,deletable:!1,selectable:!1,focusable:!1,style:{pointerEvents:"none"},width:o,initialWidth:o,height:i,initialHeight:i}}function LZe({id:e,x:r,y:n,width:o,height:i,ports:a},l,s,c){return{id:e,type:"seq-actor",data:{id:l.id,x:r,y:n,level:0,icon:l.icon??null,isMultiple:l.style.multiple??!1,title:l.title,width:o,height:i,color:l.color,navigateTo:l.navigateTo??null,shape:l.shape,style:l.style,tags:l.tags,modelFqn:l.modelRef??null,technology:l.technology??null,description:l.description??null,viewHeight:s.height,viewId:c.id,ports:a,drifts:l.drifts??null},deletable:!1,selectable:!0,zIndex:are.actor,position:{x:r,y:n},width:o,initialWidth:o,height:i,initialHeight:i}}function FZe({id:e,labelBBox:r,sourceHandle:n,targetHandle:o},i){return{id:e,type:"seq-step",data:{id:e,label:i.label,technology:i.technology,notes:i.notes??null,navigateTo:i.navigateTo,controlPoints:null,labelBBox:{x:0,y:0,width:r?.width??i.labelBBox?.width??32,height:r?.height??i.labelBBox?.height??32},labelXY:null,points:i.points,color:i.color,line:i.line,dir:"forward",head:i.head??"normal",tail:i.tail??"none",astPath:i.astPath,drifts:i.drifts??null},selectable:!0,focusable:!1,zIndex:20,interactionWidth:40,source:i.source,sourceHandle:n,target:i.target,targetHandle:o}}function lre({dynamicViewVariant:e,...r}){const n=r.view,o=n._type==="dynamic",{bounds:i,xynodes:a,xyedges:l}=o&&e==="sequence"?BZe(n):NZe(r);return o&&n.variant!==e?{view:{...n,bounds:i,variant:e},xynodes:a,xyedges:l}:{view:i===n.bounds?n:{...n,bounds:i},xynodes:a,xyedges:l}}class sre{}class Tg extends sre{constructor(r,n,o){super(),this.getEdgePosition=r,this.computePosition=n,this.propertyToEdit=o}alignTo;computeLayout(r){this.alignTo=this.getEdgePosition(r)}applyPosition(r){return{[this.propertyToEdit]:this.computePosition(this.alignTo,r)}}}class VZe extends sre{layout=new Map;axisPreset;get primaryAxisCoord(){return this.axisPreset.primaryAxisCoord}get secondaryAxisCoord(){return this.axisPreset.secondaryAxisCoord}get primaryAxisDimension(){return this.axisPreset.primaryAxisDimension}get secondaryAxisDimension(){return this.axisPreset.secondaryAxisDimension}constructor(r){super(),this.axisPreset=r==="Column"?{primaryAxisDimension:"width",secondaryAxisDimension:"height",primaryAxisCoord:"x",secondaryAxisCoord:"y"}:{primaryAxisDimension:"height",secondaryAxisDimension:"width",primaryAxisCoord:"y",secondaryAxisCoord:"x"}}applyPosition(r){return this.layout?.get(r.id)??{}}computeLayout(r){const n=Jr(r,mw(a=>a[this.primaryAxisCoord])),o=this.getLayoutRect(n),i=this.getLayers(n);this.layout=this.buildLayout(i,o,n)}getLayoutRect(r){const n=Math.min(...r.map(l=>l.x)),o=Math.min(...r.map(l=>l.y)),i=Math.max(...r.map(l=>l.x+l.width)),a=Math.max(...r.map(l=>l.y+l.height));return{x:n,y:o,width:i-n,height:a-o}}getLayers(r){const n=[];let o=0,i=null;for(let a of r)if(i&&a[this.primaryAxisCoord]a.nodes.sort((l,s)=>l[this.secondaryAxisCoord]-s[this.secondaryAxisCoord])),n}buildLayout(r,n,o){const i=new Map(o.map(v=>[v.id,v])),a=[],l=r.reduce((v,w)=>v+w.primaryAxisSize,0),s=r.length>1?(n[this.primaryAxisDimension]-l)/(r.length-1):0,c=r.reduce((v,w,x)=>r[v].occupiedSpacev+w.primaryAxisSize+s,n[this.primaryAxisCoord]),p=this.buildLayerLayout(d,n,u,i,null);d.layout=p,a.push(...p.nodePositions);let f=u+d.primaryAxisSize+s,m=d;for(let v=c+1;v=0;v--){const w=r[v];f-=w.primaryAxisSize+s,w.layout=this.buildLayerLayout(w,n,f,i,m),a.push(...w.layout.nodePositions),m=w.layout.refLayer??w}return new Map(a)}buildLayerLayout(r,n,o,i,a){let l=this.scoreLayout(this.spaceAround(r,n,o),i);if(r.nodes.length!=1){const s=this.scoreLayout(this.spaceBetween(r,n,o),i);l=s[0]=r.nodes.length){const s=this.scoreLayout(this.placeInGaps(r,o,a),i);l=s[0]=r.nodes.length){const s=this.scoreLayout(this.placeInCells(r,o,a),i);l=s[0]c[this.secondaryAxisCoord]))l.set(s.id,{[this.secondaryAxisCoord]:a,[this.primaryAxisCoord]:o}),a+=s[this.secondaryAxisDimension]+i;return{nodePositions:l,refLayer:null}}placeInGaps(r,n,o){const i=new Map,a=r.nodes,l=this.getGapsPositions(o);let s=0;for(let c=0,d=a[c];c{const a=n.get(o);return He(a,`Could not find original rect for node ${o}`),[Hq(a,["x","y"]),i]}),un(([o,i])=>Math.abs(o[this.secondaryAxisCoord]-i[this.secondaryAxisCoord])),gw((o,i)=>o+i,0)),r]}getGapsPositions(r){const n=[],{layout:o,nodes:i}=r;He(o,"Layout of the layer must be computed before calling getGapsPositions");for(let a=1;aMath.min(...r.map(n=>n.x)),(r,n)=>Math.floor(r),"x");case"Top":return new Tg(r=>Math.min(...r.map(n=>n.y)),(r,n)=>Math.floor(r),"y");case"Right":return new Tg(r=>Math.max(...r.map(n=>n.x+n.width)),(r,n)=>Math.floor(r-n.width),"x");case"Bottom":return new Tg(r=>Math.max(...r.map(n=>n.y+n.height)),(r,n)=>Math.floor(r-n.height),"y");case"Center":return new Tg(r=>Math.min(...r.map(n=>n.x+n.width/2)),(r,n)=>Math.floor(r-n.width/2),"x");case"Middle":return new Tg(r=>Math.min(...r.map(n=>n.y+n.height/2)),(r,n)=>Math.floor(r-n.height/2),"y")}}function cre(e){const{width:r,height:n}=_o(e);return{...e.internals.positionAbsolute,id:e.id,width:r,height:n}}function HZe(e){switch(e){case"Left":case"Right":case"Top":case"Bottom":case"Center":case"Middle":return qZe(e);case"Column":case"Row":return new VZe(e);default:Qo(e)}}const S0=e=>Qe.createAction(({context:r,event:n})=>{let o,i;e?(o=e.viewport,i=e.duration):(ht(n,"xyflow.setViewport"),o=n.viewport,i=n.duration),i=i??400;const{panZoom:a}=gt(r.xystore).getState(),l=i>0?{duration:i,interpolate:"smooth"}:void 0;a?.setViewport({x:Math.round(o.x),y:Math.round(o.y),zoom:o.zoom},l).catch(s=>{console.error("Error during fitDiagram panZoom setViewport",{err:s})})}),s4=e=>Qe.enqueueActions(({context:r,event:n,enqueue:o})=>{let i=r.view.bounds,a;e?(i=e.bounds??r.view.bounds,a=e.duration):n.type==="xyflow.fitDiagram"&&(i=n.bounds??r.view.bounds,a=n.duration,o.assign({viewportChangedManually:!1})),a??=450;const{width:l,height:s,panZoom:c,transform:d}=gt(r.xystore).getState(),u=Math.max(1,d[2]),p=Ws(i,l,s,xa,u,r.fitViewPadding);p.x=Math.round(p.x),p.y=Math.round(p.y);const f=a>0?{duration:a,interpolate:"smooth"}:void 0;c?.setViewport(p,f).catch(m=>{console.error("Error during fitDiagram panZoom setViewport",{err:m})})}),E0=()=>Qe.createAction(({context:e})=>{const r=!!e.activeWalkthrough&&e.dynamicViewVariant==="sequence",{bounds:n,duration:o=450}=r?nGe({context:e}):tGe({context:e}),{width:i,height:a,panZoom:l,transform:s}=gt(e.xystore).getState(),c=Math.max(1,s[2]),d=Ws(n,i,a,xa,c,e.fitViewPadding);d.x=Math.round(d.x),d.y=Math.round(d.y);const u=o>0?{duration:o,interpolate:"smooth"}:void 0;l?.setViewport(d,u).catch(p=>{console.error("Error during fitFocusedBounds panZoom setViewport",{err:p})})}),lz=30,dre=e=>{const{delay:r=lz,...n}=e??{};return Qe.raise({type:"xyflow.setViewport",...n},{id:"fitDiagram",delay:r})},fc=()=>Qe.cancel("fitDiagram"),c4=e=>{const{delay:r=lz,...n}=e??{};return Qe.raise({type:"xyflow.fitDiagram",...n},{id:"fitDiagram",delay:r})},UZe=e=>Qe.raise(({context:r})=>({type:"update.view",view:r.view}),{delay:lz}),sz=e=>Qe.assign(({context:r})=>({viewportBefore:{wasChangedManually:r.viewportChangedManually,value:{...r.viewport}}})),cz=e=>Qe.enqueueActions(({enqueue:r,context:{viewportBefore:n}})=>{r(fc()),n?(r.assign({viewportChangedManually:n.wasChangedManually,viewportBefore:null}),e&&e.delay===0?r(S0({viewport:n.value,...e})):r(dre({viewport:n.value,...e}))):e&&e.delay===0?r(s4({...e})):r(c4({...e}))}),ure=()=>Qe.assign(({context:e})=>({toggledFeatures:{...e.toggledFeatures,enableCompareWithLatest:!1},viewportOnAutoLayout:null,viewportOnManualLayout:null})),WZe=()=>Qe.assign(({context:e,event:r})=>{if(ht(r,"xyflow.edgeDoubleClick"),!r.edge.data.controlPoints)return{};const{nodeLookup:n}=e.xystore.getState();return{xyedges:e.xyedges.map(o=>{if(o.id===r.edge.id){const i=ire(n,o),a=i[0];return{...o,data:{...o.data,controlPoints:i,labelBBox:o.data.labelBBox?{...o.data.labelBBox,...a}:null,labelXY:null}}}return o})}}),Ap=()=>Qe.assign(({context:e,event:r})=>{ht(r,"xyflow.nodeClick");const{lastClickedNode:n}=e;return!n||n.id!==r.node.id?{lastClickedNode:{id:r.node.id,clicks:1,timestamp:Date.now()}}:{lastClickedNode:{id:n.id,clicks:n.clicks+1,timestamp:Date.now()}}}),d4=()=>Qe.assign(({event:e})=>{let r,n=!1;switch(e.type){case"xyflow.nodeClick":r=e.node.data.id;break;case"focus.node":r=e.nodeId,n=e.autoUnfocus===!0;break;default:throw new Error(`Unexpected event type: ${e.type} in action 'assign: focusedNode'`)}return{focusedNode:r,autoUnfocusTimer:n}}),jg=()=>Qe.assign(()=>({lastClickedNode:null})),pre=()=>Qe.assign(({event:e})=>(ht(e,"update.features"),{features:{...e.features}})),GZe=()=>Qe.assign(({event:e})=>(ht(e,"update.inputs"),{...e.inputs})),hre=e=>Qe.assign(({context:r,event:n})=>{let o;ht(n,"update.view"),o="xynodes"in n?n:lre({dynamicViewVariant:r.dynamicViewVariant,view:n.view,where:r.where});const i=az(r,o);let{lastClickedNode:a,focusedNode:l,activeWalkthrough:s}=r;if(a||l||s){const c=new Set(i.xynodes.map(u=>u.id));a&&!c.has(a.id)&&(a=null),l&&!c.has(l)&&(l=null);const d=s?.stepId;return d&&!i.xyedges.some(u=>u.id===d)&&(s=null),{...i,lastClickedNode:a,focusedNode:l,activeWalkthrough:s}}return i}),C0=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const n=DZe(e);n?r.assign(n):r.raise({type:"key.esc"})}),u4=()=>Qe.assign(({context:e})=>({xynodes:e.xynodes.map(tr.setDimmed(!1)),xyedges:e.xyedges.map(tr.setData({dimmed:!1,active:!1}))})),YZe=()=>Qe.assign(({event:e})=>(ht(e,"switch.dynamicViewVariant"),{dynamicViewVariant:e.variant})),XZe=e=>Qe.assign(({context:r,event:n})=>{let o=e?.node;return o||(ht(n,"xyflow.nodeMouseEnter"),o=n.node),{xynodes:r.xynodes.map(i=>i.id===o.id?tr.setHovered(i,!0):i)}}),KZe=e=>Qe.assign(({context:r,event:n})=>{let o=e?.node;return o||(ht(n,"xyflow.nodeMouseLeave"),o=n.node),{xynodes:r.xynodes.map(i=>i.id===o.id?tr.setHovered(i,!1):i)}}),dz=()=>Qe.emit(()=>({type:"paneClick"})),fre=e=>Qe.emit(({event:r})=>e?{type:"openSource",params:e}:(ht(r,"open.source"),{type:"openSource",params:r})),ZZe=()=>Qe.emit(({context:e})=>(He(e.xyflow,"XYFlow instance not found"),{type:"initialized",instance:e.xyflow})),Dp=()=>Qe.emit(({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),{type:"nodeClick",node:gt(yg(e,r.node.id),`Node ${r.node.id} not found in diagram`),xynode:r.node})),uz=e=>Qe.emit(({context:r})=>({type:"navigateTo",viewId:e?.viewId??gt(r.lastOnNavigate,"Invalid state, lastOnNavigate is null").toView})),pz=()=>Qe.emit(({context:e,event:r})=>(ht(r,"xyflow.edgeClick"),{type:"edgeClick",edge:gt(yR(e,r.edge.id),`Edge ${r.edge.id} not found in diagram`),xyedge:r.edge})),gre=e=>Qe.enqueueActions(({event:r,enqueue:n})=>{let o=e;o||(ht(r,"trigger.change"),o=r.change),n.assign({viewportChangedManually:!0}),n.sendTo(zr.editorActor,{type:"change",change:o})}),QZe=()=>Qe.enqueueActions(({event:e,system:r,context:n,enqueue:o})=>{if(!n.features.enableCompareWithLatest){console.warn("Layout type cannot be changed while CompareWithLatest feature is disabled");return}const i=n.view._layout;let a=i==="auto"?"manual":"auto";if(e.type==="emit.onLayoutTypeChange"&&(a=e.layoutType),i===a){console.warn("Ignoring layout type change event, layout type is already",i);return}if(n.toggledFeatures.enableCompareWithLatest===!0){i==="manual"&&a==="auto"&&zr(r).editorActorRef?.send({type:"cancel"});const l=n.viewport;i==="auto"&&o.assign({viewportOnAutoLayout:l}),i==="manual"&&o.assign({viewportOnManualLayout:l})}o.emit({type:"onLayoutTypeChange",layoutType:a})}),JZe=e=>Qe.createAction(({context:r,event:n})=>{let o;ht(n,"layout.align"),o=n.mode;const i=gt(r.xystore,"xystore is not initialized"),{nodeLookup:a,parentLookup:l}=i.getState(),s=[...new Set(a.values().filter(p=>p.selected).map(p=>p.id)).difference(new Set(l.keys()))];if(!xn(s,2)){console.warn("At least 2 nodes must be selected to align");return}const c=Jte(i,s),d=HZe(o),u=s.map(p=>({node:gt(a.get(p)),rect:gt(c.rects.get(p))}));d.computeLayout(u.map(({node:p})=>cre(p)));for(const{rect:p,node:f}of u)p.positionAbsolute={...p.positionAbsolute,...d.applyPosition(cre(f))};c.updateXYFlow()}),eQe=()=>Qe.assign(({context:e})=>{const{nodeLookup:r}=e.xystore.getState();return{xyedges:e.xyedges.map(n=>{if(!n.data.controlPoints)return n;const o=ire(r,n),i=o[0];return{...n,data:{...n.data,controlPoints:o,labelBBox:n.data.labelBBox?{...n.data.labelBBox,x:i.x,y:i.y}:null,labelXY:n.data.labelXY?i:null}}})}}),tQe=()=>Qe.assign(({context:e,event:r})=>{ht(r,"notations.highlight");const{notation:n,kind:o}=r,i=o?[o]:n.kinds,a=c=>c.notation===n.title&&c.shape===n.shape&&c.color===n.color&&i.includes(c.kind),l=e.xynodes.map(c=>{const d=yg(e,c.id),u=d&&a(d);return tr.setDimmed(c,u?!1:"immediate")}),s=e.xyedges.map(c=>tr.setDimmed(c,!0));return{xynodes:l,xyedges:s}}),rQe=()=>Qe.assign(({context:e,event:r})=>(ht(r,"tag.highlight"),{xynodes:e.xynodes.map(n=>n.data.tags?.includes(r.tag)?tr.setDimmed(n,!1):tr.setDimmed(n,!0))})),nQe=()=>Qe.assign(({context:e,event:r})=>{ht(r,"toggle.feature");const n=e.toggledFeatures[`enable${r.feature}`]??e.features[`enable${r.feature}`],o=r.forceValue??!n;return{toggledFeatures:{...e.toggledFeatures,[`enable${r.feature}`]:o}}}),oQe=()=>Qe.sendTo(zr.searchActor,{type:"close"}),iQe=()=>Qe.sendTo(zr.overlaysActor,{type:"close.all"}),mre=()=>Qe.enqueueActions(({enqueue:e,system:r})=>{const n=zr(r).editorActorRef;n&&e.stopChild(n)}),hz=()=>Qe.enqueueActions(({enqueue:e,context:r,system:n,check:o})=>{const i=o("enabled: Editor"),a=zr(n).editorActorRef;if(!i&&a){e.stopChild(a);return}i&&!a&&e.spawnChild("editorActor",{id:"editor",systemId:"editor",input:{viewId:r.view.id},syncSnapshot:!0})}),fz=(e="node")=>Qe.sendTo(zr.editorActor,{type:"edit.start",subject:e}),aQe=()=>Qe.sendTo(zr.editorActor,{type:"synced"}),gz=(e=!0)=>Qe.sendTo(zr.editorActor,{type:"edit.finish",wasChanged:e}),yre=()=>Qe.sendTo(zr.editorActor,{type:"cancel"}),vre=e=>"modelFqn"in e.data&&Zn(e.data.modelFqn),mz=e=>Qe.enqueueActions(({context:r,event:n,enqueue:o})=>{let i=null,a,l;switch(!0){case n.type==="xyflow.nodeClick":{if(!vre(n.node)){console.warn("No modelFqn in clicked node data");return}l=n.node.data.modelFqn,a=n.node.data.id;break}case n.type==="open.elementDetails":{l=n.fqn,a=n.fromNode;break}default:{if(!r.lastClickedNode){console.warn("No last clicked node");return}a=r.lastClickedNode.id;const c=r.xynodes.find(d=>d.id===a);if(!c||!vre(c)){console.warn("No modelFqn in last clicked node");return}l=c.data.modelFqn;break}}const s=a?r.xystore.getState().nodeLookup.get(a):null;if(a&&s){const c=Ku(s),d=r.xyflow.getZoom(),u={...r.xyflow.flowToScreenPosition(c),width:c.width*d,height:c.height*d};i={node:a,clientRect:u}}o.sendTo(zr.overlaysActor,{type:"open.elementDetails",subject:l,currentView:r.view,...i&&{initiatedFrom:i}})}),yz=()=>Qe.enqueueActions(({context:e,event:r,enqueue:n,check:o})=>{if(ht(r,["open.relationshipsBrowser","open.relationshipDetails","open.elementDetails"]),!o("enabled: Overlays")){console.warn("Overlays feature is disabled");return}switch(r.type){case"open.elementDetails":{o("enabled: ElementDetails")?n(mz()):console.warn("ElementDetails feature is disabled");break}case"open.relationshipsBrowser":{n.sendTo(zr.overlaysActor,{type:"open.relationshipsBrowser",subject:r.fqn,viewId:e.view.id,scope:"view",closeable:!0,enableChangeScope:!0,enableSelectSubject:!0});break}case"open.relationshipDetails":{n.sendTo(zr.overlaysActor,{type:"open.relationshipDetails",viewId:e.view.id,...r.params});break}default:Qo(r)}}),p4=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const n=e.focusedNode??e.lastClickedNode?.id;if(!n||!e.features.enableVscode)return;const o=yg(e,n);o&&(o.deploymentRef?r.raise({type:"open.source",deployment:o.deploymentRef}):o.modelRef&&r.raise({type:"open.source",element:o.modelRef}))}),bre=()=>Qe.enqueueActions(({enqueue:e,check:r,system:n})=>{const o=r("enabled: Overlays"),i=zr(n).overlaysActorRef;if(o&&!i){e.spawnChild("overlaysActorLogic",{id:"overlays",systemId:"overlays"});return}!o&&i&&(e.sendTo(i,{type:"close.all"}),e.stopChild("overlays"))}),xre=()=>Qe.enqueueActions(({enqueue:e,context:{features:{enableSearch:r}},system:n})=>{const o=zr(n).searchActorRef;if(r&&!o){e.spawnChild("searchActorLogic",{id:"search",systemId:"search"});return}!r&&o&&(e.sendTo(o,{type:"close"}),e.stopChild("search"))}),lQe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,"xyflow.edgeMouseEnter");let o=n.edge;e.assign({xyedges:r.xyedges.map(i=>i.id===n.edge.id?(o=tr.setHovered(i,!0),o):i)}),e.emit({type:"edgeMouseEnter",edge:o,event:n.event})}),sQe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,"xyflow.edgeMouseLeave");let o=n.edge;e.assign({xyedges:r.xyedges.map(i=>i.id===n.edge.id?(o=tr.setHovered(i,!1),o):i)}),e.emit({type:"edgeMouseLeave",edge:o,event:n.event})}),wre=()=>Qe.spawnChild("hotkeyActorLogic",{id:"hotkey"}),kre=()=>Qe.stopChild("hotkey"),_re=3e3,cQe=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{e.autoUnfocusTimer&&_re>0&&r.raise({type:"focus.autoUnfocus"},{delay:_re,id:"autoUnfocusTimer"})}),dQe=()=>Qe.cancel("autoUnfocusTimer"),uQe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,["navigate.to","navigate.back","navigate.forward"]);const{view:o,focusedNode:i,activeWalkthrough:a,dynamicViewVariant:l,viewport:s,viewportChangedManually:c,viewportBefore:d,navigationHistory:{currentIndex:u,history:p}}=r;let f=[...p];if(u{v.viewport={...s},v.viewportChangedManually=c,v.focusedNode=i,o._type==="dynamic"?(v.activeWalkthrough=a?.stepId??null,v.dynamicViewVariant=l):(v.activeWalkthrough=null,v.dynamicViewVariant=null),d?v.viewportBefore=d:delete v.viewportBefore});f=[...p],f[u]=m}switch(n.type){case"navigate.to":{e.assign({navigationHistory:{currentIndex:u,history:f},lastOnNavigate:{fromView:r.view.id,toView:n.viewId,fromNode:n.fromNode??null,focusOnElement:n.focusOnElement??null}}),e(uz());break}case"navigate.back":{He(u>0,"Cannot navigate back");const m=f[u-1];e.assign({navigationHistory:{currentIndex:u-1,history:f},lastOnNavigate:null}),e(uz({viewId:m.viewId}));break}case"navigate.forward":{He(uQe.enqueueActions(({enqueue:e,event:r,context:n})=>{if(r.type!=="update.view"){console.warn(`Ignoring unexpected event type: ${r.type} in action 'update.view'`);return}const o=r.view;if(o.id!==n.view.id){console.warn("updateView called for another view - ignoring",{event:r});return}if(e(hre()),r.source==="editor")return;e(aQe());let i=!n.viewportChangedManually&&!n.focusedNode&&!n.activeWalkthrough;if(n.toggledFeatures.enableCompareWithLatest===!0&&n.view._layout!==o._layout){if(o._layout==="auto"&&n.viewportOnAutoLayout){e(S0({viewport:n.viewportOnAutoLayout,duration:0}));return}if(o._layout==="manual"&&n.viewportOnManualLayout){e(S0({viewport:n.viewportOnManualLayout,duration:0}));return}}i=i||o._type==="dynamic"&&n.view._type==="dynamic"&&o.variant!==n.view.variant,i=i||n.toggledFeatures.enableCompareWithLatest===!0&&!!o._layout&&n.view._layout!==o._layout,i&&(e(fc()),e(c4({bounds:r.view.bounds})))});var Ho={},bz={},Sre;function Ere(){if(Sre)return bz;Sre=1;var e=I2();function r(i,{machine:a,context:l},s,c){const d=(u,p)=>{if(typeof u=="string"){const f=e.resolveReferencedActor(a,u);if(!f)throw new Error(`Actor logic '${u}' not implemented in machine '${a.id}'`);const m=e.createActor(f,{id:p?.id,parent:i.self,syncSnapshot:p?.syncSnapshot,input:typeof p?.input=="function"?p.input({context:l,event:s,self:i.self}):p?.input,src:u,systemId:p?.systemId});return c[m.id]=m,m}else return e.createActor(u,{id:p?.id,parent:i.self,syncSnapshot:p?.syncSnapshot,input:p?.input,src:u,systemId:p?.systemId})};return(u,p)=>{const f=d(u,p);return c[f.id]=f,i.defer(()=>{f._processingStatus!==e.ProcessingStatus.Stopped&&f.start()}),f}}function n(i,a,l,s,{assignment:c}){if(!a.context)throw new Error("Cannot assign to undefined `context`. Ensure that `context` is defined in the machine config.");const d={},u={context:a.context,event:l.event,spawn:r(i,a,l.event,d),self:i.self,system:i.system};let p={};if(typeof c=="function")p=c(u,s);else for(const m of Object.keys(c)){const v=c[m];p[m]=typeof v=="function"?v(u,s):v}const f=Object.assign({},a.context,p);return[e.cloneMachineSnapshot(a,{context:f,children:Object.keys(d).length?{...a.children,...d}:a.children}),void 0,void 0]}function o(i){function a(l,s){}return a.type="xstate.assign",a.assignment=i,a.resolve=n,a}return bz.assign=o,bz}var gc={},Cre;function pQe(){if(Cre)return gc;Cre=1;var e=I2(),r=Ere();function n(k,C,_,$,{event:R}){const T=typeof R=="function"?R(_,$):R;return[C,{event:T},void 0]}function o(k,{event:C}){k.defer(()=>k.emit(C))}function i(k){function C(_,$){}return C.type="xstate.emit",C.event=k,C.resolve=n,C.execute=o,C}let a=(function(k){return k.Parent="#_parent",k.Internal="#_internal",k})({});function l(k,C,_,$,{to:R,event:T,id:A,delay:z},j){const I=C.machine.implementations.delays;if(typeof T=="string")throw new Error(`Only event objects may be used with sendTo; use sendTo({ type: "${T}" }) instead`);const N=typeof T=="function"?T(_,$):T;let L;if(typeof z=="string"){const V=I&&I[z];L=typeof V=="function"?V(_,$):V}else L=typeof z=="function"?z(_,$):z;const H=typeof R=="function"?R(_,$):R;let P;if(typeof H=="string"){if(H===a.Parent?P=k.self._parent:H===a.Internal?P=k.self:H.startsWith("#_")?P=C.children[H.slice(2)]:P=j.deferredActorIds?.includes(H)?H:C.children[H],!P)throw new Error(`Unable to send event to actor '${H}' from machine '${C.machine.id}'.`)}else P=H||k.self;return[C,{to:P,targetId:typeof H=="string"?H:void 0,event:N,id:A,delay:L},void 0]}function s(k,C,_){typeof _.to=="string"&&(_.to=C.children[_.to])}function c(k,C){k.defer(()=>{const{to:_,event:$,delay:R,id:T}=C;if(typeof R=="number"){k.system.scheduler.schedule(k.self,_,$,R,T);return}k.system._relay(k.self,_,$.type===e.XSTATE_ERROR?e.createErrorActorEvent(k.self.id,$.data):$)})}function d(k,C,_){function $(R,T){}return $.type="xstate.sendTo",$.to=k,$.event=C,$.id=_?.id,$.delay=_?.delay,$.resolve=l,$.retryResolve=s,$.execute=c,$}function u(k,C){return d(a.Parent,k,C)}function p(k,C){return d(k,({event:_})=>_,C)}function f(k,C,_,$,{collect:R}){const T=[],A=function(z){T.push(z)};return A.assign=(...z)=>{T.push(r.assign(...z))},A.cancel=(...z)=>{T.push(e.cancel(...z))},A.raise=(...z)=>{T.push(e.raise(...z))},A.sendTo=(...z)=>{T.push(d(...z))},A.sendParent=(...z)=>{T.push(u(...z))},A.spawnChild=(...z)=>{T.push(e.spawnChild(...z))},A.stopChild=(...z)=>{T.push(e.stopChild(...z))},A.emit=(...z)=>{T.push(i(...z))},R({context:_.context,event:_.event,enqueue:A,check:z=>e.evaluateGuard(z,C.context,_.event,C),self:k.self,system:k.system},$),[C,void 0,T]}function m(k){function C(_,$){}return C.type="xstate.enqueueActions",C.collect=k,C.resolve=f,C}function v(k,C,_,$,{value:R,label:T}){return[C,{value:typeof R=="function"?R(_,$):R,label:T},void 0]}function w({logger:k},{value:C,label:_}){_?k(_,C):k(C)}function x(k=({context:_,event:$})=>({context:_,event:$}),C){function _($,R){}return _.type="xstate.log",_.value=k,_.label=C,_.resolve=v,_.execute=w,_}return gc.SpecialTargets=a,gc.emit=i,gc.enqueueActions=m,gc.forwardTo=p,gc.log=x,gc.sendParent=u,gc.sendTo=d,gc}var $re;function hQe(){if($re)return Ho;$re=1,Object.defineProperty(Ho,"__esModule",{value:!0});var e=Ere(),r=I2(),n=pQe();return RR(),Ho.assign=e.assign,Ho.cancel=r.cancel,Ho.raise=r.raise,Ho.spawnChild=r.spawnChild,Ho.stop=r.stop,Ho.stopChild=r.stopChild,Ho.emit=n.emit,Ho.enqueueActions=n.enqueueActions,Ho.forwardTo=n.forwardTo,Ho.log=n.log,Ho.sendParent=n.sendParent,Ho.sendTo=n.sendTo,Ho}var fr=hQe();const fQe=Qe.createStateConfig({on:{"xyflow.init":{actions:fr.assign(({context:e,event:r})=>({initialized:{...e.initialized,xyflow:!0},xyflow:r.instance})),target:"isReady"},"update.view":{actions:[hre(),fr.assign(({context:e})=>({initialized:{...e.initialized,xydata:!0}}))],target:"isReady"}}}),gQe=Qe.createStateConfig({always:[{guard:"isReady",actions:[s4({duration:0}),fr.assign(({context:e})=>({navigationHistory:{currentIndex:0,history:[{viewId:e.view.id,viewport:{...e.xyflow.getViewport()},viewportChangedManually:!1}]}})),ZZe()],target:"ready"},{target:"initializing"}]}),mQe=()=>Qe.assign(({context:e,event:r})=>{ht(r,"update.view");let{lastOnNavigate:n,navigationHistory:{currentIndex:o,history:i}}=e;const a=i[o];if(!a||a.viewId===r.view.id||n)return{};const l=o>0?gt(i[o-1]):null;if(l&&l.viewId===r.view.id)return{navigationHistory:{currentIndex:o-1,history:i},lastOnNavigate:null};const s=ovR(u)===c);if(d)return{lastOnNavigate:{fromView:e.view.id,toView:r.view.id,fromNode:d.id}}}return{}}),yQe=Qe.createStateConfig({id:zn.navigating.slice(1),always:{target:zn.idle,actions:[fc(),mQe(),ure(),rs(({enqueue:e,context:r,event:n})=>{ht(n,"update.view");const{xyflow:o,xystore:i,navigationHistory:{currentIndex:a,history:l}}=r,s="xynodes"in n?n:{...n,...lre({dynamicViewVariant:r.dynamicViewVariant,view:n.view,where:r.where})};He(o,"xyflow is not initialized");const c=x=>{const k=o.getZoom(),C=x.zoom({type:"focus.node",nodeId:e.node.id})),Dp()]}],"focus.node":{actions:[d4(),C0(),p4(),E0()]},"key.esc":{target:zn.idle},"xyflow.paneClick":{actions:[jg(),dz()],target:zn.idle},"notations.unhighlight":{actions:C0()},"tag.unhighlight":{actions:C0()},"update.view":{guard:"is same view",actions:[vz(),C0()]}}}),bQe=Qe.createStateConfig({id:zn.idle.slice(1),on:{"xyflow.nodeClick":[{guard:Bd.and(["enabled: Readonly","enabled: FocusMode","click: node has connections",Bd.or(["click: same node","click: selected node"])]),actions:[Ap(),d4(),Dp()],target:zn.focused},{guard:Bd.and(["enabled: Readonly","enabled: ElementDetails","click: node has modelFqn",Bd.or(["click: same node","click: selected node"])]),actions:[Ap(),p4(),mz(),Dp()]},{actions:[Ap(),p4(),Dp()]}],"xyflow.paneClick":{actions:[jg(),dz()]},"xyflow.paneDblClick":{actions:[jg(),fr.enqueueActions(({context:e,enqueue:r,check:n})=>{n("enabled: FitView")&&r(s4()),r(fre({view:e.view.id}))})]},"focus.node":[{guard:"focus.node: autoUnfocus",actions:d4(),target:zn.focused},{guard:"enabled: FocusMode",actions:d4(),target:zn.focused}],"xyflow.edgeClick":{guard:Bd.and(["enabled: Readonly","is dynamic view","enabled: DynamicViewWalkthrough","click: selected edge"]),actions:[jg(),fr.raise(({event:e})=>({type:"walkthrough.start",stepId:e.edge.id})),pz()]}}}),xQe=Qe.createStateConfig({id:zn.printing.slice(1),entry:[fc(),sz(),rs(({enqueue:e,context:r})=>{const n=r.view.bounds,o=16;e(S0({viewport:{x:n.x+o,y:n.y+o,zoom:1},duration:0}))})],exit:[cz({delay:0,duration:0})],on:{"media.print.off":{target:zn.idle},"*":{actions:[yE(({event:e})=>`Printing state - ignoring event: ${e.type}`)]}}}),Ag=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const{activeWalkthrough:n}=e;if(!n){console.warn("Active walkthrough is null"),r.raise({type:"walkthrough.end"});return}const{stepId:o,parallelPrefix:i}=n,a=e.xyedges.find(l=>l.id===o);if(!a){console.warn("Invalid walkthrough stepId:",o),r.raise({type:"walkthrough.end"});return}r.assign({xyedges:e.xyedges.map(l=>{const s=o===l.id||!!i&&l.id.startsWith(i);return tr.setData(l,{active:s,dimmed:o!==l.id})}),xynodes:e.xynodes.map(l=>{const s=a.source!==l.id&&a.target!==l.id;return l.type==="seq-parallel"?tr.setData(l,{color:i===l.data.parallelPrefix?l4.active:l4.default,dimmed:s}):tr.setDimmed(l,s)})})}),wQe=()=>Qe.emit(({context:e})=>{const r=e.xyedges.find(n=>n.id===e.activeWalkthrough?.stepId);return He(r,"Invalid walkthrough state"),{type:"walkthroughStarted",edge:r}}),kQe=()=>Qe.emit(()=>({type:"walkthroughStopped"})),Rre=()=>Qe.emit(({context:e})=>{const r=e.xyedges.find(n=>n.id===e.activeWalkthrough?.stepId);return He(r,"Invalid walkthrough state"),{type:"walkthroughStep",edge:r}}),_Qe=Qe.createStateConfig({id:zn.walkthrough.slice(1),entry:[wre(),yre(),fc(),sz(),fr.assign({activeWalkthrough:({context:e,event:r})=>{ht(r,"walkthrough.start");const n=r.stepId??hf(e.xyedges).id;return{stepId:n,parallelPrefix:Z8(n)}}}),Ag(),E0(),wQe()],exit:[kre(),fr.enqueueActions(({enqueue:e,context:r})=>{e.assign({activeWalkthrough:null}),r.dynamicViewVariant==="sequence"&&r.activeWalkthrough?.parallelPrefix&&e.assign({xynodes:r.xynodes.map(n=>n.type==="seq-parallel"?tr.setData(n,{color:l4.default}):n)})}),u4(),cz(),kQe()],on:{"key.esc":{target:zn.idle},"key.arrow.left":{actions:fr.raise({type:"walkthrough.step",direction:"previous"})},"key.arrow.up":{actions:fr.raise({type:"walkthrough.step",direction:"previous"})},"key.arrow.right":{actions:fr.raise({type:"walkthrough.step",direction:"next"})},"key.arrow.down":{actions:fr.raise({type:"walkthrough.step",direction:"next"})},"walkthrough.step":{actions:[fr.assign(({context:e,event:r})=>{const{stepId:n}=e.activeWalkthrough,o=e.xyedges.findIndex(l=>l.id===n),i=ta(r.direction==="next"?o+1:o-1,{min:0,max:e.xyedges.length-1});if(i===o)return{};const a=e.xyedges[i].id;return{activeWalkthrough:{stepId:a,parallelPrefix:Z8(a)}}}),Ag(),E0(),Rre()]},"xyflow.edgeClick":{actions:[fr.assign(({event:e,context:r})=>!k1(e.edge.id)||e.edge.id===r.activeWalkthrough?.stepId?{}:{activeWalkthrough:{stepId:e.edge.id,parallelPrefix:Z8(e.edge.id)}}),Ag(),E0(),pz(),Rre()]},"notations.unhighlight":{actions:Ag()},"tag.unhighlight":{actions:Ag()},"update.view":{guard:"is same view",actions:[vz(),Ag()]},"walkthrough.end":{target:zn.idle},"xyflow.paneDblClick":{target:zn.idle}}}),SQe=Qe.createStateConfig({initial:"idle",entry:[fr.spawnChild("mediaPrintActorLogic",{id:"mediaPrint"}),hz(),bre(),xre()],exit:[fc(),fr.stopChild("mediaPrint"),iQe(),oQe(),mre()],states:{idle:bQe,focused:vQe,walkthrough:_Qe,printing:xQe},on:{"navigate.*":{actions:uQe()},"layout.align":{guard:"not readonly",actions:[fz("node"),JZe(),gz(!0)]},"layout.resetEdgeControlPoints":{guard:"not readonly",actions:[fz("edge"),eQe(),gz(!0)]},"layout.resetManualLayout":{guard:"not readonly",actions:[yre(),ure(),gre({op:"reset-manual-layout"})]},"xyflow.resized":{guard:({context:e})=>e.features.enableFitView&&!e.viewportChangedManually,actions:[fc(),c4({delay:200})]},"open.elementDetails":{actions:yz()},"open.relationshipsBrowser":{actions:yz()},"open.relationshipDetails":{actions:yz()},"open.source":{guard:"enabled: OpenSource",actions:fre()},"walkthrough.start":{guard:"is dynamic view",target:zn.walkthrough},"toggle.feature":{actions:[nQe(),hz()]},"update.features":{actions:[pre(),bre(),xre(),hz()]},"xyflow.nodeMouseEnter":{actions:XZe()},"xyflow.nodeMouseLeave":{actions:KZe()},"xyflow.edgeMouseEnter":{actions:lQe()},"xyflow.edgeMouseLeave":{actions:sQe()},"xyflow.edgeDoubleClick":{guard:Bd.and(["not readonly",({event:e})=>!!e.edge.data.controlPoints&&e.edge.data.controlPoints.length>0]),actions:[fz("edge"),WZe(),gz(!0)]},"notations.highlight":{actions:tQe()},"notations.unhighlight":{actions:u4()},"tag.highlight":{actions:rQe()},"tag.unhighlight":{actions:u4()},"open.search":{guard:"enabled: Search",actions:fr.sendTo(({system:e})=>zr(e).searchActorRef,({event:e})=>({type:"open",search:e.search}))},"xyflow.paneClick":{actions:[jg(),dz()]},"xyflow.nodeClick":{actions:[Ap(),Dp()]},"xyflow.edgeClick":{actions:[jg(),pz()]},"xyflow.fitDiagram":{guard:"enabled: FitView",actions:s4()},"xyflow.setViewport":{actions:S0()},"update.view":[{guard:"is another view",target:zn.navigating},{actions:vz()}],"media.print.on":{target:zn.printing}}}),xz="likec4:diagram:toggledFeatures",zre={read(){try{let e=sessionStorage.getItem(xz);return e?JSON.parse(e):null}catch(e){return console.error(`Error reading fromStorage ${xz}:`,e),null}},write(e){return sessionStorage.setItem(xz,JSON.stringify(ry(e,Nq))),e}},EQe=Qe.createMachine({initial:"initializing",context:({input:e})=>({...e,xyedges:[],xynodes:[],features:{...WG},toggledFeatures:zre.read()??{enableReadOnly:!0,enableCompareWithLatest:!1},initialized:{xydata:!1,xyflow:!1},viewportChangedManually:!1,lastOnNavigate:null,lastClickedNode:null,focusedNode:null,autoUnfocusTimer:!1,activeElementDetails:null,viewportBefore:null,viewportOnManualLayout:null,viewportOnAutoLayout:null,navigationHistory:{currentIndex:0,history:[]},viewport:{x:0,y:0,zoom:1},xyflow:null,dynamicViewVariant:e.dynamicViewVariant??(e.view._type==="dynamic"?e.view.variant:"diagram")??"diagram",activeWalkthrough:null}),states:{initializing:fQe,isReady:gQe,ready:SQe,navigating:yQe,final:{type:"final",entry:[mre(),fc(),fr.stopChild("hotkey"),fr.stopChild("overlays"),fr.stopChild("search"),fr.stopChild("mediaPrint"),fr.assign({xyflow:null,xystore:null,xyedges:[],xynodes:[],initialized:{xydata:!1,xyflow:!1}})]}},on:{"update.nodeData":{actions:fr.assign(PZe)},"update.edgeData":{actions:fr.assign(MZe)},"switch.dynamicViewVariant":{guard:({context:e,event:r})=>e.dynamicViewVariant!==r.variant,actions:[YZe(),UZe()]},"update.inputs":{actions:GZe()},"update.view-bounds":{actions:fr.assign(({context:e,event:r})=>({view:{...e.view,bounds:r.bounds}}))},"update.features":{actions:pre()},"trigger.change":{actions:gre()},"emit.onLayoutTypeChange":{actions:QZe()},"xyflow.applyNodeChanges":{actions:fr.assign({xynodes:({context:e,event:r})=>rw(r.changes,e.xynodes)})},"xyflow.applyEdgeChanges":{actions:fr.assign({xyedges:({context:e,event:r})=>nw(r.changes,e.xyedges)})},"xyflow.viewportMoved":{actions:fr.assign(({event:e,context:r})=>({viewportChangedManually:r.viewportChangedManually||e.manually,viewport:e.viewport}))},destroy:{target:".final"}}}),CQe=EQe;function $Qe({view:e,zoomable:r,pannable:n,nodesDraggable:o,nodesSelectable:i,fitViewPadding:a,where:l,children:s,dynamicViewVariant:c}){const d=vr(),u=AZe(e.id),p=vE(CQe.provide({actors:{editorActor:u}}),{id:"diagram",systemId:"diagram",input:{xystore:d,view:e,zoomable:r,pannable:n,fitViewPadding:a,nodesDraggable:o,nodesSelectable:i,where:l,dynamicViewVariant:c}}),f=S.useRef(p);f.current!==p&&(console.warn("DiagramMachine actor instance changed",{context:{previous:f.current.getSnapshot().context,current:p.getSnapshot().context}}),f.current=p);const[m,v]=S.useState(()=>nre(f));S.useEffect(()=>{v(x=>x.ref===f?x:(console.warn("DiagramMachine actorRef changed, creating new DiagramApi instance, this should not happen during the lifetime of the actor"),nre(f)))},[f]);const w=sr();return S.useEffect(()=>p.send({type:"update.features",features:w}),[w,p]),S.useEffect(()=>p.send({type:"update.inputs",inputs:{zoomable:r,where:l,pannable:n,fitViewPadding:a,nodesDraggable:o,nodesSelectable:i}}),[r,l,n,a,p,o,i]),$p(()=>{c&&p.send({type:"switch.dynamicViewVariant",variant:c})},[c,p]),_L(()=>p.send({type:"update.view",view:e,source:"external"}),[p,e]),y.jsx(tBe,{value:p,children:y.jsxs(rBe,{value:m,children:[y.jsx(QS,{children:y.jsx(TQe,{actorRef:p,children:s})}),y.jsx(jQe,{})]})})}const RQe=({context:e})=>{let r=e.toggledFeatures;const n=e.view.drifts!=null&&e.view.drifts.length>0,o=e.features.enableCompareWithLatest&&(r.enableCompareWithLatest??!1)&&ty(e.activeWalkthrough)&&n,i=e.features.enableReadOnly||r.enableReadOnly||!!e.activeWalkthrough||e.dynamicViewVariant==="sequence"&&e.view._type==="dynamic"||o&&e.view._layout==="auto";return(r.enableReadOnly!==i||r.enableCompareWithLatest!==o)&&(r={...r,enableCompareWithLatest:o,enableReadOnly:i}),{toggledFeatures:r,viewId:e.view.id}},zQe=(e,r)=>e.viewId===r.viewId&&Ir(e.toggledFeatures,r.toggledFeatures);function TQe({children:e,actorRef:r}){const{viewId:n,toggledFeatures:o}=pn(r,RQe,zQe),i=Fo().findView(n);return y.jsx(GS.Provider,{value:i,children:y.jsx(gp,{overrides:o,children:e})})}const jQe=S.memo(()=>{const e=Mt(),{onNavigateTo:r,onOpenSource:n,onLayoutTypeChange:o,handlersRef:i}=mg();ji("openSource",({params:l})=>n?.(l)),ji("navigateTo",({viewId:l})=>r?.(l)),ji("onLayoutTypeChange",({layoutType:l})=>{o?.(l)}),ji("initialized",({instance:l})=>{try{i.current.onInitialized?.({diagram:e,xyflow:l})}catch(s){console.error(s)}},{once:!0});const a=pa(l=>l.toggledFeatures,Ir);return $p(()=>{zre.write(N$e(a,ty))},[a]),null}),h4={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:e=>e>=255?255:e<0?0:e,g:e=>e>=255?255:e<0?0:e,b:e=>e>=255?255:e<0?0:e,h:e=>e%360,s:e=>e>=100?100:e<0?0:e,l:e=>e>=100?100:e<0?0:e,a:e=>e>=1?1:e<0?0:e},toLinear:e=>{const r=e/255;return e>.03928?Math.pow((r+.055)/1.055,2.4):r/12.92},hue2rgb:(e,r,n)=>(n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(r-e)*6*n:n<1/2?r:n<2/3?e+(r-e)*(2/3-n)*6:e),hsl2rgb:({h:e,s:r,l:n},o)=>{if(!r)return n*2.55;e/=360,r/=100,n/=100;const i=n<.5?n*(1+r):n+r-n*r,a=2*n-i;switch(o){case"r":return h4.hue2rgb(a,i,e+1/3)*255;case"g":return h4.hue2rgb(a,i,e)*255;case"b":return h4.hue2rgb(a,i,e-1/3)*255}},rgb2hsl:({r:e,g:r,b:n},o)=>{e/=255,r/=255,n/=255;const i=Math.max(e,r,n),a=Math.min(e,r,n),l=(i+a)/2;if(o==="l")return l*100;if(i===a)return 0;const s=i-a,c=l>.5?s/(2-i-a):s/(i+a);if(o==="s")return c*100;switch(i){case e:return((r-n)/s+(rr>n?Math.min(r,Math.max(n,e)):Math.min(n,Math.max(r,e)),round:e=>Math.round(e*1e10)/1e10},DQe={dec2hex:e=>{const r=Math.round(e).toString(16);return r.length>1?r:`0${r}`}},Tt={channel:h4,lang:AQe,unit:DQe},Ld={};for(let e=0;e<=255;e++)Ld[e]=Tt.unit.dec2hex(e);const $o={ALL:0,RGB:1,HSL:2};class PQe{constructor(){this.type=$o.ALL}get(){return this.type}set(r){if(this.type&&this.type!==r)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=r}reset(){this.type=$o.ALL}is(r){return this.type===r}}class MQe{constructor(r,n){this.color=n,this.changed=!1,this.data=r,this.type=new PQe}set(r,n){return this.color=n,this.changed=!1,this.data=r,this.type.type=$o.ALL,this}_ensureHSL(){const r=this.data,{h:n,s:o,l:i}=r;n===void 0&&(r.h=Tt.channel.rgb2hsl(r,"h")),o===void 0&&(r.s=Tt.channel.rgb2hsl(r,"s")),i===void 0&&(r.l=Tt.channel.rgb2hsl(r,"l"))}_ensureRGB(){const r=this.data,{r:n,g:o,b:i}=r;n===void 0&&(r.r=Tt.channel.hsl2rgb(r,"r")),o===void 0&&(r.g=Tt.channel.hsl2rgb(r,"g")),i===void 0&&(r.b=Tt.channel.hsl2rgb(r,"b"))}get r(){const r=this.data,n=r.r;return!this.type.is($o.HSL)&&n!==void 0?n:(this._ensureHSL(),Tt.channel.hsl2rgb(r,"r"))}get g(){const r=this.data,n=r.g;return!this.type.is($o.HSL)&&n!==void 0?n:(this._ensureHSL(),Tt.channel.hsl2rgb(r,"g"))}get b(){const r=this.data,n=r.b;return!this.type.is($o.HSL)&&n!==void 0?n:(this._ensureHSL(),Tt.channel.hsl2rgb(r,"b"))}get h(){const r=this.data,n=r.h;return!this.type.is($o.RGB)&&n!==void 0?n:(this._ensureRGB(),Tt.channel.rgb2hsl(r,"h"))}get s(){const r=this.data,n=r.s;return!this.type.is($o.RGB)&&n!==void 0?n:(this._ensureRGB(),Tt.channel.rgb2hsl(r,"s"))}get l(){const r=this.data,n=r.l;return!this.type.is($o.RGB)&&n!==void 0?n:(this._ensureRGB(),Tt.channel.rgb2hsl(r,"l"))}get a(){return this.data.a}set r(r){this.type.set($o.RGB),this.changed=!0,this.data.r=r}set g(r){this.type.set($o.RGB),this.changed=!0,this.data.g=r}set b(r){this.type.set($o.RGB),this.changed=!0,this.data.b=r}set h(r){this.type.set($o.HSL),this.changed=!0,this.data.h=r}set s(r){this.type.set($o.HSL),this.changed=!0,this.data.s=r}set l(r){this.type.set($o.HSL),this.changed=!0,this.data.l=r}set a(r){this.changed=!0,this.data.a=r}}const f4=new MQe({r:0,g:0,b:0,a:0},"transparent"),Dg={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:e=>{if(e.charCodeAt(0)!==35)return;const r=e.match(Dg.re);if(!r)return;const n=r[1],o=parseInt(n,16),i=n.length,a=i%4===0,l=i>4,s=l?1:17,c=l?8:4,d=a?0:-1,u=l?255:15;return f4.set({r:(o>>c*(d+3)&u)*s,g:(o>>c*(d+2)&u)*s,b:(o>>c*(d+1)&u)*s,a:a?(o&u)*s/255:1},e)},stringify:e=>{const{r,g:n,b:o,a:i}=e;return i<1?`#${Ld[Math.round(r)]}${Ld[Math.round(n)]}${Ld[Math.round(o)]}${Ld[Math.round(i*255)]}`:`#${Ld[Math.round(r)]}${Ld[Math.round(n)]}${Ld[Math.round(o)]}`}},Pp={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:e=>{const r=e.match(Pp.hueRe);if(r){const[,n,o]=r;switch(o){case"grad":return Tt.channel.clamp.h(parseFloat(n)*.9);case"rad":return Tt.channel.clamp.h(parseFloat(n)*180/Math.PI);case"turn":return Tt.channel.clamp.h(parseFloat(n)*360)}}return Tt.channel.clamp.h(parseFloat(e))},parse:e=>{const r=e.charCodeAt(0);if(r!==104&&r!==72)return;const n=e.match(Pp.re);if(!n)return;const[,o,i,a,l,s]=n;return f4.set({h:Pp._hue2deg(o),s:Tt.channel.clamp.s(parseFloat(i)),l:Tt.channel.clamp.l(parseFloat(a)),a:l?Tt.channel.clamp.a(s?parseFloat(l)/100:parseFloat(l)):1},e)},stringify:e=>{const{h:r,s:n,l:o,a:i}=e;return i<1?`hsla(${Tt.lang.round(r)}, ${Tt.lang.round(n)}%, ${Tt.lang.round(o)}%, ${i})`:`hsl(${Tt.lang.round(r)}, ${Tt.lang.round(n)}%, ${Tt.lang.round(o)}%)`}},$0={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:e=>{e=e.toLowerCase();const r=$0.colors[e];if(r)return Dg.parse(r)},stringify:e=>{const r=Dg.stringify(e);for(const n in $0.colors)if($0.colors[n]===r)return n}},R0={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:e=>{const r=e.charCodeAt(0);if(r!==114&&r!==82)return;const n=e.match(R0.re);if(!n)return;const[,o,i,a,l,s,c,d,u]=n;return f4.set({r:Tt.channel.clamp.r(i?parseFloat(o)*2.55:parseFloat(o)),g:Tt.channel.clamp.g(l?parseFloat(a)*2.55:parseFloat(a)),b:Tt.channel.clamp.b(c?parseFloat(s)*2.55:parseFloat(s)),a:d?Tt.channel.clamp.a(u?parseFloat(d)/100:parseFloat(d)):1},e)},stringify:e=>{const{r,g:n,b:o,a:i}=e;return i<1?`rgba(${Tt.lang.round(r)}, ${Tt.lang.round(n)}, ${Tt.lang.round(o)}, ${Tt.lang.round(i)})`:`rgb(${Tt.lang.round(r)}, ${Tt.lang.round(n)}, ${Tt.lang.round(o)})`}},fl={format:{keyword:$0,hex:Dg,rgb:R0,rgba:R0,hsl:Pp,hsla:Pp},parse:e=>{if(typeof e!="string")return e;const r=Dg.parse(e)||R0.parse(e)||Pp.parse(e)||$0.parse(e);if(r)return r;throw new Error(`Unsupported color format: "${e}"`)},stringify:e=>!e.changed&&e.color?e.color:e.type.is($o.HSL)||e.data.r===void 0?Pp.stringify(e):e.a<1||!Number.isInteger(e.r)||!Number.isInteger(e.g)||!Number.isInteger(e.b)?R0.stringify(e):Dg.stringify(e)},Tre=(e,r)=>{const n=fl.parse(e);for(const o in r)n[o]=Tt.channel.clamp[o](r[o]);return fl.stringify(n)},NQe=(e,r,n=0,o=1)=>{if(typeof e!="number")return Tre(e,{a:r});const i=f4.set({r:Tt.channel.clamp.r(e),g:Tt.channel.clamp.g(r),b:Tt.channel.clamp.b(n),a:Tt.channel.clamp.a(o)});return fl.stringify(i)},jre=e=>fl.format.hex.stringify(fl.parse(e)),Are=e=>fl.format.rgba.stringify(fl.parse(e)),BQe=(e,r)=>{const n=fl.parse(e),o={};for(const i in r)r[i]&&(o[i]=n[i]+r[i]);return Tre(e,o)},Dre=(e,r,n=50)=>{const{r:o,g:i,b:a,a:l}=fl.parse(e),{r:s,g:c,b:d,a:u}=fl.parse(r),p=n/100,f=p*2-1,m=l-u,v=((f*m===-1?f:(f+m)/(1+f*m))+1)/2,w=1-v,x=o*v+s*w,k=i*v+c*w,C=a*v+d*w,_=l*p+u*(1-p);return NQe(x,k,C,_)},Pre=(e,r)=>{const n=fl.parse(e),o={},i=(a,l,s)=>l>0?(s-a)*l/100:a*l/100;for(const a in r)o[a]=i(n[a],r[a],Tt.channel.max[a]);return BQe(e,o)},IQe=e=>`[data-mantine-color-scheme="${e}"]`,Mre=IQe("dark"),OQe=5,LQe=(e,r,n,o)=>{const i=s=>jre(Pre(s,{l:-22-5*o,s:-10-6*o})),a=s=>jre(Pre(s,{l:-20-3*o,s:-3-6*o})),l=`:where(${e} [data-likec4-color="${r}"][data-compound-depth="${o}"])`;return` ${l} { --likec4-palette-fill: ${a(n.elements.fill)}; --likec4-palette-stroke: ${a(n.elements.stroke)}; } -${Nre} ${l} { +${Mre} ${l} { --likec4-palette-fill: ${i(n.elements.fill)}; --likec4-palette-stroke: ${i(n.elements.stroke)}; } @@ -166,14 +166,14 @@ ${a} { --likec4-palette-relation-label-bg: ${i.labelBg}; --likec4-palette-relation-stroke-selected: ${Are(Dre(i.line,"black",85))}; } -${Nre} ${a} { +${Mre} ${a} { --likec4-palette-relation-stroke-selected: ${Are(Dre(i.line,"white",70))}; } `.trim(),...V$e(1,OQe+1).map(l=>LQe(e,r,n,l))].join(` `)}function VQe(e,r){return Jr(r.colors,uw(),un(([n,o])=>FQe(e,n,o)),Lq(` -`))}const qQe=S.memo(({id:e})=>{const r=`#${e}`,n=np()?.(),{theme:o}=Tte(),i=VQe(r,o);return y.jsx("style",{type:"text/css","data-likec4-colors":e,dangerouslySetInnerHTML:{__html:i},nonce:n})}),HQe='@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-400-normal.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-500-normal.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-600-normal.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-400-normal.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-500-normal.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-600-normal.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-400-normal.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-500-normal.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-600-normal.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-400-normal.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-500-normal.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-600-normal.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}',Pre=`@layer reset,base,mantine,xyflow,tokens,recipes,utilities;@layer mantine{:root,:host{color-scheme:var(--mantine-color-scheme)}*,*:before,*:after{box-sizing:border-box}input,button,textarea,select{font:inherit}button,select{text-transform:none}body,:host{margin:0;font-family:var(--mantine-font-family);font-size:var(--mantine-font-size-md);line-height:var(--mantine-line-height);background-color:var(--mantine-color-body);color:var(--mantine-color-text);-webkit-font-smoothing:var(--mantine-webkit-font-smoothing);-moz-osx-font-smoothing:var(--mantine-moz-font-smoothing)}@media screen and (max-device-width:31.25em){body,:host{-webkit-text-size-adjust:100%}}@media(prefers-reduced-motion:reduce){[data-respect-reduced-motion] [data-reduce-motion]{transition:none;animation:none}}[data-mantine-color-scheme=light] .mantine-light-hidden,[data-mantine-color-scheme=dark] .mantine-dark-hidden{display:none}.mantine-focus-auto:focus-visible{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.mantine-focus-always:focus{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.mantine-focus-never:focus{outline:none}.mantine-active:active{transform:translateY(calc(.0625rem * var(--mantine-scale)))}fieldset:disabled .mantine-active:active{transform:none}:where([dir=rtl]) .mantine-rotate-rtl{transform:rotate(180deg)}:root,:host{--mantine-z-index-app: 100;--mantine-z-index-modal: 200;--mantine-z-index-popover: 300;--mantine-z-index-overlay: 400;--mantine-z-index-max: 9999;--mantine-scale: 1;--mantine-cursor-type: default;--mantine-webkit-font-smoothing: antialiased;--mantine-moz-font-smoothing: grayscale;--mantine-color-white: #fff;--mantine-color-black: #000;--mantine-line-height: 1.55;--mantine-font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--mantine-font-family-monospace: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;--mantine-font-family-headings: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--mantine-heading-font-weight: 700;--mantine-heading-text-wrap: wrap;--mantine-radius-default: calc(.25rem * var(--mantine-scale));--mantine-primary-color-filled: var(--mantine-color-blue-filled);--mantine-primary-color-filled-hover: var(--mantine-color-blue-filled-hover);--mantine-primary-color-light: var(--mantine-color-blue-light);--mantine-primary-color-light-hover: var(--mantine-color-blue-light-hover);--mantine-primary-color-light-color: var(--mantine-color-blue-light-color);--mantine-breakpoint-xs: 36em;--mantine-breakpoint-sm: 48em;--mantine-breakpoint-md: 62em;--mantine-breakpoint-lg: 75em;--mantine-breakpoint-xl: 88em;--mantine-spacing-xs: calc(.625rem * var(--mantine-scale));--mantine-spacing-sm: calc(.75rem * var(--mantine-scale));--mantine-spacing-md: calc(1rem * var(--mantine-scale));--mantine-spacing-lg: calc(1.25rem * var(--mantine-scale));--mantine-spacing-xl: calc(2rem * var(--mantine-scale));--mantine-font-size-xs: calc(.75rem * var(--mantine-scale));--mantine-font-size-sm: calc(.875rem * var(--mantine-scale));--mantine-font-size-md: calc(1rem * var(--mantine-scale));--mantine-font-size-lg: calc(1.125rem * var(--mantine-scale));--mantine-font-size-xl: calc(1.25rem * var(--mantine-scale));--mantine-line-height-xs: 1.4;--mantine-line-height-sm: 1.45;--mantine-line-height-md: 1.55;--mantine-line-height-lg: 1.6;--mantine-line-height-xl: 1.65;--mantine-shadow-xs: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), 0 calc(.0625rem * var(--mantine-scale)) calc(.125rem * var(--mantine-scale)) rgba(0, 0, 0, .1);--mantine-shadow-sm: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(.625rem * var(--mantine-scale)) calc(.9375rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.4375rem * var(--mantine-scale)) calc(.4375rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale));--mantine-shadow-md: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(1.25rem * var(--mantine-scale)) calc(1.5625rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.625rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale));--mantine-shadow-lg: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(1.75rem * var(--mantine-scale)) calc(1.4375rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.75rem * var(--mantine-scale)) calc(.75rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale));--mantine-shadow-xl: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(2.25rem * var(--mantine-scale)) calc(1.75rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(1.0625rem * var(--mantine-scale)) calc(1.0625rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale));--mantine-radius-xs: calc(.125rem * var(--mantine-scale));--mantine-radius-sm: calc(.25rem * var(--mantine-scale));--mantine-radius-md: calc(.5rem * var(--mantine-scale));--mantine-radius-lg: calc(1rem * var(--mantine-scale));--mantine-radius-xl: calc(2rem * var(--mantine-scale));--mantine-primary-color-0: var(--mantine-color-blue-0);--mantine-primary-color-1: var(--mantine-color-blue-1);--mantine-primary-color-2: var(--mantine-color-blue-2);--mantine-primary-color-3: var(--mantine-color-blue-3);--mantine-primary-color-4: var(--mantine-color-blue-4);--mantine-primary-color-5: var(--mantine-color-blue-5);--mantine-primary-color-6: var(--mantine-color-blue-6);--mantine-primary-color-7: var(--mantine-color-blue-7);--mantine-primary-color-8: var(--mantine-color-blue-8);--mantine-primary-color-9: var(--mantine-color-blue-9);--mantine-color-dark-0: #c9c9c9;--mantine-color-dark-1: #b8b8b8;--mantine-color-dark-2: #828282;--mantine-color-dark-3: #696969;--mantine-color-dark-4: #424242;--mantine-color-dark-5: #3b3b3b;--mantine-color-dark-6: #2e2e2e;--mantine-color-dark-7: #242424;--mantine-color-dark-8: #1f1f1f;--mantine-color-dark-9: #141414;--mantine-color-gray-0: #f8f9fa;--mantine-color-gray-1: #f1f3f5;--mantine-color-gray-2: #e9ecef;--mantine-color-gray-3: #dee2e6;--mantine-color-gray-4: #ced4da;--mantine-color-gray-5: #adb5bd;--mantine-color-gray-6: #868e96;--mantine-color-gray-7: #495057;--mantine-color-gray-8: #343a40;--mantine-color-gray-9: #212529;--mantine-color-red-0: #fff5f5;--mantine-color-red-1: #ffe3e3;--mantine-color-red-2: #ffc9c9;--mantine-color-red-3: #ffa8a8;--mantine-color-red-4: #ff8787;--mantine-color-red-5: #ff6b6b;--mantine-color-red-6: #fa5252;--mantine-color-red-7: #f03e3e;--mantine-color-red-8: #e03131;--mantine-color-red-9: #c92a2a;--mantine-color-pink-0: #fff0f6;--mantine-color-pink-1: #ffdeeb;--mantine-color-pink-2: #fcc2d7;--mantine-color-pink-3: #faa2c1;--mantine-color-pink-4: #f783ac;--mantine-color-pink-5: #f06595;--mantine-color-pink-6: #e64980;--mantine-color-pink-7: #d6336c;--mantine-color-pink-8: #c2255c;--mantine-color-pink-9: #a61e4d;--mantine-color-grape-0: #f8f0fc;--mantine-color-grape-1: #f3d9fa;--mantine-color-grape-2: #eebefa;--mantine-color-grape-3: #e599f7;--mantine-color-grape-4: #da77f2;--mantine-color-grape-5: #cc5de8;--mantine-color-grape-6: #be4bdb;--mantine-color-grape-7: #ae3ec9;--mantine-color-grape-8: #9c36b5;--mantine-color-grape-9: #862e9c;--mantine-color-violet-0: #f3f0ff;--mantine-color-violet-1: #e5dbff;--mantine-color-violet-2: #d0bfff;--mantine-color-violet-3: #b197fc;--mantine-color-violet-4: #9775fa;--mantine-color-violet-5: #845ef7;--mantine-color-violet-6: #7950f2;--mantine-color-violet-7: #7048e8;--mantine-color-violet-8: #6741d9;--mantine-color-violet-9: #5f3dc4;--mantine-color-indigo-0: #edf2ff;--mantine-color-indigo-1: #dbe4ff;--mantine-color-indigo-2: #bac8ff;--mantine-color-indigo-3: #91a7ff;--mantine-color-indigo-4: #748ffc;--mantine-color-indigo-5: #5c7cfa;--mantine-color-indigo-6: #4c6ef5;--mantine-color-indigo-7: #4263eb;--mantine-color-indigo-8: #3b5bdb;--mantine-color-indigo-9: #364fc7;--mantine-color-blue-0: #e7f5ff;--mantine-color-blue-1: #d0ebff;--mantine-color-blue-2: #a5d8ff;--mantine-color-blue-3: #74c0fc;--mantine-color-blue-4: #4dabf7;--mantine-color-blue-5: #339af0;--mantine-color-blue-6: #228be6;--mantine-color-blue-7: #1c7ed6;--mantine-color-blue-8: #1971c2;--mantine-color-blue-9: #1864ab;--mantine-color-cyan-0: #e3fafc;--mantine-color-cyan-1: #c5f6fa;--mantine-color-cyan-2: #99e9f2;--mantine-color-cyan-3: #66d9e8;--mantine-color-cyan-4: #3bc9db;--mantine-color-cyan-5: #22b8cf;--mantine-color-cyan-6: #15aabf;--mantine-color-cyan-7: #1098ad;--mantine-color-cyan-8: #0c8599;--mantine-color-cyan-9: #0b7285;--mantine-color-teal-0: #e6fcf5;--mantine-color-teal-1: #c3fae8;--mantine-color-teal-2: #96f2d7;--mantine-color-teal-3: #63e6be;--mantine-color-teal-4: #38d9a9;--mantine-color-teal-5: #20c997;--mantine-color-teal-6: #12b886;--mantine-color-teal-7: #0ca678;--mantine-color-teal-8: #099268;--mantine-color-teal-9: #087f5b;--mantine-color-green-0: #ebfbee;--mantine-color-green-1: #d3f9d8;--mantine-color-green-2: #b2f2bb;--mantine-color-green-3: #8ce99a;--mantine-color-green-4: #69db7c;--mantine-color-green-5: #51cf66;--mantine-color-green-6: #40c057;--mantine-color-green-7: #37b24d;--mantine-color-green-8: #2f9e44;--mantine-color-green-9: #2b8a3e;--mantine-color-lime-0: #f4fce3;--mantine-color-lime-1: #e9fac8;--mantine-color-lime-2: #d8f5a2;--mantine-color-lime-3: #c0eb75;--mantine-color-lime-4: #a9e34b;--mantine-color-lime-5: #94d82d;--mantine-color-lime-6: #82c91e;--mantine-color-lime-7: #74b816;--mantine-color-lime-8: #66a80f;--mantine-color-lime-9: #5c940d;--mantine-color-yellow-0: #fff9db;--mantine-color-yellow-1: #fff3bf;--mantine-color-yellow-2: #ffec99;--mantine-color-yellow-3: #ffe066;--mantine-color-yellow-4: #ffd43b;--mantine-color-yellow-5: #fcc419;--mantine-color-yellow-6: #fab005;--mantine-color-yellow-7: #f59f00;--mantine-color-yellow-8: #f08c00;--mantine-color-yellow-9: #e67700;--mantine-color-orange-0: #fff4e6;--mantine-color-orange-1: #ffe8cc;--mantine-color-orange-2: #ffd8a8;--mantine-color-orange-3: #ffc078;--mantine-color-orange-4: #ffa94d;--mantine-color-orange-5: #ff922b;--mantine-color-orange-6: #fd7e14;--mantine-color-orange-7: #f76707;--mantine-color-orange-8: #e8590c;--mantine-color-orange-9: #d9480f;--mantine-h1-font-size: calc(2.125rem * var(--mantine-scale));--mantine-h1-line-height: 1.3;--mantine-h1-font-weight: 700;--mantine-h2-font-size: calc(1.625rem * var(--mantine-scale));--mantine-h2-line-height: 1.35;--mantine-h2-font-weight: 700;--mantine-h3-font-size: calc(1.375rem * var(--mantine-scale));--mantine-h3-line-height: 1.4;--mantine-h3-font-weight: 700;--mantine-h4-font-size: calc(1.125rem * var(--mantine-scale));--mantine-h4-line-height: 1.45;--mantine-h4-font-weight: 700;--mantine-h5-font-size: calc(1rem * var(--mantine-scale));--mantine-h5-line-height: 1.5;--mantine-h5-font-weight: 700;--mantine-h6-font-size: calc(.875rem * var(--mantine-scale));--mantine-h6-line-height: 1.5;--mantine-h6-font-weight: 700}:root[data-mantine-color-scheme=dark],:host([data-mantine-color-scheme="dark"]){--mantine-color-scheme: dark;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-white);--mantine-color-text: var(--mantine-color-dark-0);--mantine-color-body: var(--mantine-color-dark-7);--mantine-color-error: var(--mantine-color-red-8);--mantine-color-placeholder: var(--mantine-color-dark-3);--mantine-color-anchor: var(--mantine-color-blue-4);--mantine-color-default: var(--mantine-color-dark-6);--mantine-color-default-hover: var(--mantine-color-dark-5);--mantine-color-default-color: var(--mantine-color-white);--mantine-color-default-border: var(--mantine-color-dark-4);--mantine-color-dimmed: var(--mantine-color-dark-2);--mantine-color-disabled: var(--mantine-color-dark-6);--mantine-color-disabled-color: var(--mantine-color-dark-3);--mantine-color-disabled-border: var(--mantine-color-dark-4);--mantine-color-dark-text: var(--mantine-color-dark-4);--mantine-color-dark-filled: var(--mantine-color-dark-8);--mantine-color-dark-filled-hover: var(--mantine-color-dark-9);--mantine-color-dark-light: rgba(46, 46, 46, .15);--mantine-color-dark-light-hover: rgba(46, 46, 46, .2);--mantine-color-dark-light-color: var(--mantine-color-dark-3);--mantine-color-dark-outline: var(--mantine-color-dark-4);--mantine-color-dark-outline-hover: rgba(66, 66, 66, .05);--mantine-color-gray-text: var(--mantine-color-gray-4);--mantine-color-gray-filled: var(--mantine-color-gray-8);--mantine-color-gray-filled-hover: var(--mantine-color-gray-9);--mantine-color-gray-light: rgba(134, 142, 150, .15);--mantine-color-gray-light-hover: rgba(134, 142, 150, .2);--mantine-color-gray-light-color: var(--mantine-color-gray-3);--mantine-color-gray-outline: var(--mantine-color-gray-4);--mantine-color-gray-outline-hover: rgba(206, 212, 218, .05);--mantine-color-red-text: var(--mantine-color-red-4);--mantine-color-red-filled: var(--mantine-color-red-8);--mantine-color-red-filled-hover: var(--mantine-color-red-9);--mantine-color-red-light: rgba(250, 82, 82, .15);--mantine-color-red-light-hover: rgba(250, 82, 82, .2);--mantine-color-red-light-color: var(--mantine-color-red-3);--mantine-color-red-outline: var(--mantine-color-red-4);--mantine-color-red-outline-hover: rgba(255, 135, 135, .05);--mantine-color-pink-text: var(--mantine-color-pink-4);--mantine-color-pink-filled: var(--mantine-color-pink-8);--mantine-color-pink-filled-hover: var(--mantine-color-pink-9);--mantine-color-pink-light: rgba(230, 73, 128, .15);--mantine-color-pink-light-hover: rgba(230, 73, 128, .2);--mantine-color-pink-light-color: var(--mantine-color-pink-3);--mantine-color-pink-outline: var(--mantine-color-pink-4);--mantine-color-pink-outline-hover: rgba(247, 131, 172, .05);--mantine-color-grape-text: var(--mantine-color-grape-4);--mantine-color-grape-filled: var(--mantine-color-grape-8);--mantine-color-grape-filled-hover: var(--mantine-color-grape-9);--mantine-color-grape-light: rgba(190, 75, 219, .15);--mantine-color-grape-light-hover: rgba(190, 75, 219, .2);--mantine-color-grape-light-color: var(--mantine-color-grape-3);--mantine-color-grape-outline: var(--mantine-color-grape-4);--mantine-color-grape-outline-hover: rgba(218, 119, 242, .05);--mantine-color-violet-text: var(--mantine-color-violet-4);--mantine-color-violet-filled: var(--mantine-color-violet-8);--mantine-color-violet-filled-hover: var(--mantine-color-violet-9);--mantine-color-violet-light: rgba(121, 80, 242, .15);--mantine-color-violet-light-hover: rgba(121, 80, 242, .2);--mantine-color-violet-light-color: var(--mantine-color-violet-3);--mantine-color-violet-outline: var(--mantine-color-violet-4);--mantine-color-violet-outline-hover: rgba(151, 117, 250, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-4);--mantine-color-indigo-filled: var(--mantine-color-indigo-8);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-9);--mantine-color-indigo-light: rgba(76, 110, 245, .15);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .2);--mantine-color-indigo-light-color: var(--mantine-color-indigo-3);--mantine-color-indigo-outline: var(--mantine-color-indigo-4);--mantine-color-indigo-outline-hover: rgba(116, 143, 252, .05);--mantine-color-blue-text: var(--mantine-color-blue-4);--mantine-color-blue-filled: var(--mantine-color-blue-8);--mantine-color-blue-filled-hover: var(--mantine-color-blue-9);--mantine-color-blue-light: rgba(34, 139, 230, .15);--mantine-color-blue-light-hover: rgba(34, 139, 230, .2);--mantine-color-blue-light-color: var(--mantine-color-blue-3);--mantine-color-blue-outline: var(--mantine-color-blue-4);--mantine-color-blue-outline-hover: rgba(77, 171, 247, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-4);--mantine-color-cyan-filled: var(--mantine-color-cyan-8);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-9);--mantine-color-cyan-light: rgba(21, 170, 191, .15);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .2);--mantine-color-cyan-light-color: var(--mantine-color-cyan-3);--mantine-color-cyan-outline: var(--mantine-color-cyan-4);--mantine-color-cyan-outline-hover: rgba(59, 201, 219, .05);--mantine-color-teal-text: var(--mantine-color-teal-4);--mantine-color-teal-filled: var(--mantine-color-teal-8);--mantine-color-teal-filled-hover: var(--mantine-color-teal-9);--mantine-color-teal-light: rgba(18, 184, 134, .15);--mantine-color-teal-light-hover: rgba(18, 184, 134, .2);--mantine-color-teal-light-color: var(--mantine-color-teal-3);--mantine-color-teal-outline: var(--mantine-color-teal-4);--mantine-color-teal-outline-hover: rgba(56, 217, 169, .05);--mantine-color-green-text: var(--mantine-color-green-4);--mantine-color-green-filled: var(--mantine-color-green-8);--mantine-color-green-filled-hover: var(--mantine-color-green-9);--mantine-color-green-light: rgba(64, 192, 87, .15);--mantine-color-green-light-hover: rgba(64, 192, 87, .2);--mantine-color-green-light-color: var(--mantine-color-green-3);--mantine-color-green-outline: var(--mantine-color-green-4);--mantine-color-green-outline-hover: rgba(105, 219, 124, .05);--mantine-color-lime-text: var(--mantine-color-lime-4);--mantine-color-lime-filled: var(--mantine-color-lime-8);--mantine-color-lime-filled-hover: var(--mantine-color-lime-9);--mantine-color-lime-light: rgba(130, 201, 30, .15);--mantine-color-lime-light-hover: rgba(130, 201, 30, .2);--mantine-color-lime-light-color: var(--mantine-color-lime-3);--mantine-color-lime-outline: var(--mantine-color-lime-4);--mantine-color-lime-outline-hover: rgba(169, 227, 75, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-4);--mantine-color-yellow-filled: var(--mantine-color-yellow-8);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-9);--mantine-color-yellow-light: rgba(250, 176, 5, .15);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .2);--mantine-color-yellow-light-color: var(--mantine-color-yellow-3);--mantine-color-yellow-outline: var(--mantine-color-yellow-4);--mantine-color-yellow-outline-hover: rgba(255, 212, 59, .05);--mantine-color-orange-text: var(--mantine-color-orange-4);--mantine-color-orange-filled: var(--mantine-color-orange-8);--mantine-color-orange-filled-hover: var(--mantine-color-orange-9);--mantine-color-orange-light: rgba(253, 126, 20, .15);--mantine-color-orange-light-hover: rgba(253, 126, 20, .2);--mantine-color-orange-light-color: var(--mantine-color-orange-3);--mantine-color-orange-outline: var(--mantine-color-orange-4);--mantine-color-orange-outline-hover: rgba(255, 169, 77, .05)}:root[data-mantine-color-scheme=light],:host([data-mantine-color-scheme="light"]){--mantine-color-scheme: light;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-black);--mantine-color-text: #000;--mantine-color-body: #fff;--mantine-color-error: var(--mantine-color-red-6);--mantine-color-placeholder: var(--mantine-color-gray-5);--mantine-color-anchor: var(--mantine-color-blue-6);--mantine-color-default: var(--mantine-color-white);--mantine-color-default-hover: var(--mantine-color-gray-0);--mantine-color-default-color: var(--mantine-color-black);--mantine-color-default-border: var(--mantine-color-gray-4);--mantine-color-dimmed: var(--mantine-color-gray-6);--mantine-color-disabled: var(--mantine-color-gray-2);--mantine-color-disabled-color: var(--mantine-color-gray-5);--mantine-color-disabled-border: var(--mantine-color-gray-3);--mantine-color-dark-text: var(--mantine-color-dark-filled);--mantine-color-dark-filled: var(--mantine-color-dark-6);--mantine-color-dark-filled-hover: var(--mantine-color-dark-7);--mantine-color-dark-light: rgba(46, 46, 46, .1);--mantine-color-dark-light-hover: rgba(46, 46, 46, .12);--mantine-color-dark-light-color: var(--mantine-color-dark-6);--mantine-color-dark-outline: var(--mantine-color-dark-6);--mantine-color-dark-outline-hover: rgba(46, 46, 46, .05);--mantine-color-gray-text: var(--mantine-color-gray-filled);--mantine-color-gray-filled: var(--mantine-color-gray-6);--mantine-color-gray-filled-hover: var(--mantine-color-gray-7);--mantine-color-gray-light: rgba(134, 142, 150, .1);--mantine-color-gray-light-hover: rgba(134, 142, 150, .12);--mantine-color-gray-light-color: var(--mantine-color-gray-6);--mantine-color-gray-outline: var(--mantine-color-gray-6);--mantine-color-gray-outline-hover: rgba(134, 142, 150, .05);--mantine-color-red-text: var(--mantine-color-red-filled);--mantine-color-red-filled: var(--mantine-color-red-6);--mantine-color-red-filled-hover: var(--mantine-color-red-7);--mantine-color-red-light: rgba(250, 82, 82, .1);--mantine-color-red-light-hover: rgba(250, 82, 82, .12);--mantine-color-red-light-color: var(--mantine-color-red-6);--mantine-color-red-outline: var(--mantine-color-red-6);--mantine-color-red-outline-hover: rgba(250, 82, 82, .05);--mantine-color-pink-text: var(--mantine-color-pink-filled);--mantine-color-pink-filled: var(--mantine-color-pink-6);--mantine-color-pink-filled-hover: var(--mantine-color-pink-7);--mantine-color-pink-light: rgba(230, 73, 128, .1);--mantine-color-pink-light-hover: rgba(230, 73, 128, .12);--mantine-color-pink-light-color: var(--mantine-color-pink-6);--mantine-color-pink-outline: var(--mantine-color-pink-6);--mantine-color-pink-outline-hover: rgba(230, 73, 128, .05);--mantine-color-grape-text: var(--mantine-color-grape-filled);--mantine-color-grape-filled: var(--mantine-color-grape-6);--mantine-color-grape-filled-hover: var(--mantine-color-grape-7);--mantine-color-grape-light: rgba(190, 75, 219, .1);--mantine-color-grape-light-hover: rgba(190, 75, 219, .12);--mantine-color-grape-light-color: var(--mantine-color-grape-6);--mantine-color-grape-outline: var(--mantine-color-grape-6);--mantine-color-grape-outline-hover: rgba(190, 75, 219, .05);--mantine-color-violet-text: var(--mantine-color-violet-filled);--mantine-color-violet-filled: var(--mantine-color-violet-6);--mantine-color-violet-filled-hover: var(--mantine-color-violet-7);--mantine-color-violet-light: rgba(121, 80, 242, .1);--mantine-color-violet-light-hover: rgba(121, 80, 242, .12);--mantine-color-violet-light-color: var(--mantine-color-violet-6);--mantine-color-violet-outline: var(--mantine-color-violet-6);--mantine-color-violet-outline-hover: rgba(121, 80, 242, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-filled);--mantine-color-indigo-filled: var(--mantine-color-indigo-6);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-7);--mantine-color-indigo-light: rgba(76, 110, 245, .1);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .12);--mantine-color-indigo-light-color: var(--mantine-color-indigo-6);--mantine-color-indigo-outline: var(--mantine-color-indigo-6);--mantine-color-indigo-outline-hover: rgba(76, 110, 245, .05);--mantine-color-blue-text: var(--mantine-color-blue-filled);--mantine-color-blue-filled: var(--mantine-color-blue-6);--mantine-color-blue-filled-hover: var(--mantine-color-blue-7);--mantine-color-blue-light: rgba(34, 139, 230, .1);--mantine-color-blue-light-hover: rgba(34, 139, 230, .12);--mantine-color-blue-light-color: var(--mantine-color-blue-6);--mantine-color-blue-outline: var(--mantine-color-blue-6);--mantine-color-blue-outline-hover: rgba(34, 139, 230, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-filled);--mantine-color-cyan-filled: var(--mantine-color-cyan-6);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-7);--mantine-color-cyan-light: rgba(21, 170, 191, .1);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .12);--mantine-color-cyan-light-color: var(--mantine-color-cyan-6);--mantine-color-cyan-outline: var(--mantine-color-cyan-6);--mantine-color-cyan-outline-hover: rgba(21, 170, 191, .05);--mantine-color-teal-text: var(--mantine-color-teal-filled);--mantine-color-teal-filled: var(--mantine-color-teal-6);--mantine-color-teal-filled-hover: var(--mantine-color-teal-7);--mantine-color-teal-light: rgba(18, 184, 134, .1);--mantine-color-teal-light-hover: rgba(18, 184, 134, .12);--mantine-color-teal-light-color: var(--mantine-color-teal-6);--mantine-color-teal-outline: var(--mantine-color-teal-6);--mantine-color-teal-outline-hover: rgba(18, 184, 134, .05);--mantine-color-green-text: var(--mantine-color-green-filled);--mantine-color-green-filled: var(--mantine-color-green-6);--mantine-color-green-filled-hover: var(--mantine-color-green-7);--mantine-color-green-light: rgba(64, 192, 87, .1);--mantine-color-green-light-hover: rgba(64, 192, 87, .12);--mantine-color-green-light-color: var(--mantine-color-green-6);--mantine-color-green-outline: var(--mantine-color-green-6);--mantine-color-green-outline-hover: rgba(64, 192, 87, .05);--mantine-color-lime-text: var(--mantine-color-lime-filled);--mantine-color-lime-filled: var(--mantine-color-lime-6);--mantine-color-lime-filled-hover: var(--mantine-color-lime-7);--mantine-color-lime-light: rgba(130, 201, 30, .1);--mantine-color-lime-light-hover: rgba(130, 201, 30, .12);--mantine-color-lime-light-color: var(--mantine-color-lime-6);--mantine-color-lime-outline: var(--mantine-color-lime-6);--mantine-color-lime-outline-hover: rgba(130, 201, 30, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-filled);--mantine-color-yellow-filled: var(--mantine-color-yellow-6);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-7);--mantine-color-yellow-light: rgba(250, 176, 5, .1);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .12);--mantine-color-yellow-light-color: var(--mantine-color-yellow-6);--mantine-color-yellow-outline: var(--mantine-color-yellow-6);--mantine-color-yellow-outline-hover: rgba(250, 176, 5, .05);--mantine-color-orange-text: var(--mantine-color-orange-filled);--mantine-color-orange-filled: var(--mantine-color-orange-6);--mantine-color-orange-filled-hover: var(--mantine-color-orange-7);--mantine-color-orange-light: rgba(253, 126, 20, .1);--mantine-color-orange-light-hover: rgba(253, 126, 20, .12);--mantine-color-orange-light-color: var(--mantine-color-orange-6);--mantine-color-orange-outline: var(--mantine-color-orange-6);--mantine-color-orange-outline-hover: rgba(253, 126, 20, .05)}.m_d57069b5{--scrollarea-scrollbar-size: calc(.75rem * var(--mantine-scale));position:relative;overflow:hidden}.m_d57069b5:where([data-autosize]) .m_b1336c6{min-width:min-content}.m_c0783ff9{scrollbar-width:none;overscroll-behavior:var(--scrollarea-over-scroll-behavior);-ms-overflow-style:none;-webkit-overflow-scrolling:touch;width:100%;height:100%}.m_c0783ff9::-webkit-scrollbar{display:none}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=y]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=y],[data-offset-scrollbars=present]):where([data-vertical-hidden]){padding-inline-end:0;padding-inline-start:0}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=y]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=y],[data-offset-scrollbars=present]):not([data-vertical-hidden]){padding-inline-end:var(--scrollarea-scrollbar-size);padding-inline-start:unset}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=x]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=x],[data-offset-scrollbars=present]):where([data-horizontal-hidden]){padding-bottom:0}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=x]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=x],[data-offset-scrollbars=present]):not([data-horizontal-hidden]){padding-bottom:var(--scrollarea-scrollbar-size)}.m_f8f631dd{min-width:100%;display:table}.m_c44ba933{user-select:none;touch-action:none;box-sizing:border-box;transition:background-color .15s ease,opacity .15s ease;padding:calc(var(--scrollarea-scrollbar-size) / 5);display:flex;background-color:transparent;flex-direction:row}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_c44ba933:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=light]) .m_c44ba933:hover>.m_d8b5e363{background-color:#00000080}:where([data-mantine-color-scheme=dark]) .m_c44ba933:hover{background-color:var(--mantine-color-dark-8)}:where([data-mantine-color-scheme=dark]) .m_c44ba933:hover>.m_d8b5e363{background-color:#ffffff80}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_c44ba933:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=light]) .m_c44ba933:active>.m_d8b5e363{background-color:#00000080}:where([data-mantine-color-scheme=dark]) .m_c44ba933:active{background-color:var(--mantine-color-dark-8)}:where([data-mantine-color-scheme=dark]) .m_c44ba933:active>.m_d8b5e363{background-color:#ffffff80}}.m_c44ba933:where([data-hidden],[data-state=hidden]){display:none}.m_c44ba933:where([data-orientation=vertical]){width:var(--scrollarea-scrollbar-size);top:0;bottom:var(--sa-corner-width);inset-inline-end:0}.m_c44ba933:where([data-orientation=horizontal]){height:var(--scrollarea-scrollbar-size);flex-direction:column;bottom:0;inset-inline-start:0;inset-inline-end:var(--sa-corner-width)}.m_d8b5e363{flex:1;border-radius:var(--scrollarea-scrollbar-size);position:relative;transition:background-color .15s ease;overflow:hidden;opacity:var(--thumb-opacity)}.m_d8b5e363:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:calc(2.75rem * var(--mantine-scale));min-height:calc(2.75rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_d8b5e363{background-color:#0006}:where([data-mantine-color-scheme=dark]) .m_d8b5e363{background-color:#fff6}.m_21657268{position:absolute;opacity:0;transition:opacity .15s ease;display:block;inset-inline-end:0;bottom:0}:where([data-mantine-color-scheme=light]) .m_21657268{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_21657268{background-color:var(--mantine-color-dark-8)}.m_21657268:where([data-hovered]){opacity:1}.m_21657268:where([data-hidden]){display:none}.m_b1336c6{min-width:100%}.m_87cf2631{background-color:transparent;cursor:pointer;border:0;padding:0;appearance:none;font-size:var(--mantine-font-size-md);text-align:left;text-decoration:none;color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}:where([dir=rtl]) .m_87cf2631{text-align:right}.m_515a97f8{border:0;clip:rect(0 0 0 0);height:calc(.0625rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));margin:calc(-.0625rem * var(--mantine-scale));overflow:hidden;padding:0;position:absolute;white-space:nowrap}.m_1b7284a3{--paper-radius: var(--mantine-radius-default);outline:0;-webkit-tap-highlight-color:transparent;display:block;touch-action:manipulation;text-decoration:none;border-radius:var(--paper-radius);box-shadow:var(--paper-shadow);background-color:var(--mantine-color-body)}[data-mantine-color-scheme=light] .m_1b7284a3{--paper-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_1b7284a3{--paper-border-color: var(--mantine-color-dark-4)}.m_1b7284a3:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--paper-border-color)}.m_9814e45f{inset:0;position:absolute;background:var(--overlay-bg, rgba(0, 0, 0, .6));-webkit-backdrop-filter:var(--overlay-filter);backdrop-filter:var(--overlay-filter);border-radius:var(--overlay-radius, 0);z-index:var(--overlay-z-index)}.m_9814e45f:where([data-fixed]){position:fixed}.m_9814e45f:where([data-center]){display:flex;align-items:center;justify-content:center}.m_38a85659{position:absolute;border:1px solid var(--popover-border-color);padding:var(--mantine-spacing-sm) var(--mantine-spacing-md);box-shadow:var(--popover-shadow, none);border-radius:var(--popover-radius, var(--mantine-radius-default))}.m_38a85659:where([data-fixed]){position:fixed}.m_38a85659:focus{outline:none}:where([data-mantine-color-scheme=light]) .m_38a85659{--popover-border-color: var(--mantine-color-gray-2);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_38a85659{--popover-border-color: var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}.m_a31dc6c1{background-color:inherit;border:1px solid var(--popover-border-color);z-index:1}.m_3d7bc908{position:fixed;inset:0}.m_5ae2e3c{--loader-size-xs: calc(1.125rem * var(--mantine-scale));--loader-size-sm: calc(1.375rem * var(--mantine-scale));--loader-size-md: calc(2.25rem * var(--mantine-scale));--loader-size-lg: calc(2.75rem * var(--mantine-scale));--loader-size-xl: calc(3.625rem * var(--mantine-scale));--loader-size: var(--loader-size-md);--loader-color: var(--mantine-primary-color-filled)}@keyframes m_5d2b3b9d{0%{transform:scale(.6);opacity:0}50%,to{transform:scale(1)}}.m_7a2bd4cd{position:relative;width:var(--loader-size);height:var(--loader-size);display:flex;gap:calc(var(--loader-size) / 5)}.m_870bb79{flex:1;background:var(--loader-color);animation:m_5d2b3b9d 1.2s cubic-bezier(0,.5,.5,1) infinite;border-radius:calc(.125rem * var(--mantine-scale))}.m_870bb79:nth-of-type(1){animation-delay:-.24s}.m_870bb79:nth-of-type(2){animation-delay:-.12s}.m_870bb79:nth-of-type(3){animation-delay:0}@keyframes m_aac34a1{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.5}}.m_4e3f22d7{display:flex;justify-content:center;align-items:center;gap:calc(var(--loader-size) / 10);position:relative;width:var(--loader-size);height:var(--loader-size)}.m_870c4af{width:calc(var(--loader-size) / 3 - var(--loader-size) / 15);height:calc(var(--loader-size) / 3 - var(--loader-size) / 15);border-radius:50%;background:var(--loader-color);animation:m_aac34a1 .8s infinite linear}.m_870c4af:nth-child(2){animation-delay:.4s}@keyframes m_f8e89c4b{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.m_b34414df{display:inline-block;width:var(--loader-size);height:var(--loader-size)}.m_b34414df:after{content:"";display:block;width:var(--loader-size);height:var(--loader-size);border-radius:calc(625rem * var(--mantine-scale));border-width:calc(var(--loader-size) / 8);border-style:solid;border-color:var(--loader-color) var(--loader-color) var(--loader-color) transparent;animation:m_f8e89c4b 1.2s linear infinite}.m_8d3f4000{--ai-size-xs: calc(1.125rem * var(--mantine-scale));--ai-size-sm: calc(1.375rem * var(--mantine-scale));--ai-size-md: calc(1.75rem * var(--mantine-scale));--ai-size-lg: calc(2.125rem * var(--mantine-scale));--ai-size-xl: calc(2.75rem * var(--mantine-scale));--ai-size-input-xs: calc(1.875rem * var(--mantine-scale));--ai-size-input-sm: calc(2.25rem * var(--mantine-scale));--ai-size-input-md: calc(2.625rem * var(--mantine-scale));--ai-size-input-lg: calc(3.125rem * var(--mantine-scale));--ai-size-input-xl: calc(3.75rem * var(--mantine-scale));--ai-size: var(--ai-size-md);--ai-color: var(--mantine-color-white);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;user-select:none;overflow:hidden;width:var(--ai-size);height:var(--ai-size);min-width:var(--ai-size);min-height:var(--ai-size);border-radius:var(--ai-radius, var(--mantine-radius-default));background:var(--ai-bg, var(--mantine-primary-color-filled));color:var(--ai-color, var(--mantine-color-white));border:var(--ai-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);cursor:pointer}@media(hover:hover){.m_8d3f4000:hover:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--ai-hover, var(--mantine-primary-color-filled-hover));color:var(--ai-hover-color, var(--ai-color))}}@media(hover:none){.m_8d3f4000:active:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--ai-hover, var(--mantine-primary-color-filled-hover));color:var(--ai-hover-color, var(--ai-color))}}.m_8d3f4000[data-loading]{cursor:not-allowed}.m_8d3f4000[data-loading] .m_8d3afb97{opacity:0;transform:translateY(100%)}.m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){cursor:not-allowed;border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-disabled-color);background:var(--mantine-color-disabled)}.m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])):active{transform:none}.m_302b9fb1{inset:calc(-.0625rem * var(--mantine-scale));position:absolute;border-radius:var(--ai-radius, var(--mantine-radius-default));display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_302b9fb1{background-color:#ffffff26}:where([data-mantine-color-scheme=dark]) .m_302b9fb1{background-color:#00000026}.m_1a0f1b21{--ai-border-width: calc(.0625rem * var(--mantine-scale));display:flex}.m_1a0f1b21 :where(*):focus{position:relative;z-index:1}.m_1a0f1b21[data-orientation=horizontal]{flex-direction:row}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):first-child,.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):first-child{border-end-end-radius:0;border-start-end-radius:0;border-inline-end-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):last-child,.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):last-child{border-end-start-radius:0;border-start-start-radius:0;border-inline-start-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):not(:first-child):not(:last-child),.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-inline-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical]{flex-direction:column}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):first-child,.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):first-child{border-end-start-radius:0;border-end-end-radius:0;border-bottom-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):last-child,.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):last-child{border-start-start-radius:0;border-start-end-radius:0;border-top-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):not(:first-child):not(:last-child),.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-bottom-width:calc(var(--ai-border-width) / 2);border-top-width:calc(var(--ai-border-width) / 2)}.m_8d3afb97{display:flex;align-items:center;justify-content:center;transition:transform .15s ease,opacity .1s ease;width:100%;height:100%}.m_437b6484{--section-height-xs: calc(1.125rem * var(--mantine-scale));--section-height-sm: calc(1.375rem * var(--mantine-scale));--section-height-md: calc(1.75rem * var(--mantine-scale));--section-height-lg: calc(2.125rem * var(--mantine-scale));--section-height-xl: calc(2.75rem * var(--mantine-scale));--section-height-input-xs: calc(1.875rem * var(--mantine-scale));--section-height-input-sm: calc(2.25rem * var(--mantine-scale));--section-height-input-md: calc(2.625rem * var(--mantine-scale));--section-height-input-lg: calc(3.125rem * var(--mantine-scale));--section-height-input-xl: calc(3.75rem * var(--mantine-scale));--section-padding-x-xs: calc(.375rem * var(--mantine-scale));--section-padding-x-sm: calc(.5rem * var(--mantine-scale));--section-padding-x-md: calc(.625rem * var(--mantine-scale));--section-padding-x-lg: calc(.75rem * var(--mantine-scale));--section-padding-x-xl: calc(1rem * var(--mantine-scale));--section-height: var(--section-height-sm);--section-padding-x: var(--section-padding-x-sm);--section-color: var(--mantine-color-white);font-weight:600;width:auto;border-radius:var(--section-radius, var(--mantine-radius-default));font-size:var(--section-fz, var(--mantine-font-size-sm));background:var(--section-bg, var(--mantine-primary-color-filled));border:var(--section-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--section-color, var(--mantine-color-white));height:var(--section-height, var(--section-height-sm));padding-inline:var(--section-padding-x, var(--section-padding-x-sm));vertical-align:middle;line-height:1;display:inline-flex;align-items:center;justify-content:center}.m_86a44da5{--cb-size-xs: calc(1.125rem * var(--mantine-scale));--cb-size-sm: calc(1.375rem * var(--mantine-scale));--cb-size-md: calc(1.75rem * var(--mantine-scale));--cb-size-lg: calc(2.125rem * var(--mantine-scale));--cb-size-xl: calc(2.75rem * var(--mantine-scale));--cb-size: var(--cb-size-md);--cb-icon-size: 70%;--cb-radius: var(--mantine-radius-default);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;user-select:none;width:var(--cb-size);height:var(--cb-size);min-width:var(--cb-size);min-height:var(--cb-size);border-radius:var(--cb-radius)}:where([data-mantine-color-scheme=light]) .m_86a44da5{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_86a44da5{color:var(--mantine-color-dark-1)}.m_86a44da5[data-disabled],.m_86a44da5:disabled{cursor:not-allowed;opacity:.6}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_220c80f2:where(:not([data-disabled],:disabled)):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_220c80f2:where(:not([data-disabled],:disabled)):hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_220c80f2:where(:not([data-disabled],:disabled)):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_220c80f2:where(:not([data-disabled],:disabled)):active{background-color:var(--mantine-color-dark-6)}}.m_4081bf90{display:flex;flex-direction:row;flex-wrap:var(--group-wrap, wrap);justify-content:var(--group-justify, flex-start);align-items:var(--group-align, center);gap:var(--group-gap, var(--mantine-spacing-md))}.m_4081bf90:where([data-grow])>*{flex-grow:1;max-width:var(--group-child-width)}.m_615af6c9{line-height:1;padding:0;margin:0;font-weight:400;font-size:var(--mantine-font-size-md)}.m_b5489c3c{display:flex;justify-content:space-between;align-items:center;padding:var(--mb-padding, var(--mantine-spacing-md));padding-inline-end:calc(var(--mb-padding, var(--mantine-spacing-md)) - calc(.3125rem * var(--mantine-scale)));position:sticky;top:0;background-color:var(--mantine-color-body);z-index:1000;min-height:calc(3.75rem * var(--mantine-scale));transition:padding-inline-end .1s}.m_60c222c7{position:fixed;width:100%;top:0;bottom:0;z-index:var(--mb-z-index);pointer-events:none}.m_fd1ab0aa{pointer-events:all;box-shadow:var(--mb-shadow, var(--mantine-shadow-xl))}.m_fd1ab0aa [data-mantine-scrollbar]{z-index:1001}[data-offset-scrollbars] .m_fd1ab0aa:has([data-mantine-scrollbar]) .m_b5489c3c{padding-inline-end:calc(var(--mb-padding, var(--mantine-spacing-md)) + calc(.3125rem * var(--mantine-scale)))}.m_606cb269{margin-inline-start:auto}.m_5df29311{padding:var(--mb-padding, var(--mantine-spacing-md));padding-top:var(--mb-padding, var(--mantine-spacing-md))}.m_5df29311:where(:not(:only-child)){padding-top:0}.m_6c018570{position:relative;margin-top:var(--input-margin-top, 0rem);margin-bottom:var(--input-margin-bottom, 0rem);--input-height-xs: calc(1.875rem * var(--mantine-scale));--input-height-sm: calc(2.25rem * var(--mantine-scale));--input-height-md: calc(2.625rem * var(--mantine-scale));--input-height-lg: calc(3.125rem * var(--mantine-scale));--input-height-xl: calc(3.75rem * var(--mantine-scale));--input-padding-y-xs: calc(.3125rem * var(--mantine-scale));--input-padding-y-sm: calc(.375rem * var(--mantine-scale));--input-padding-y-md: calc(.5rem * var(--mantine-scale));--input-padding-y-lg: calc(.625rem * var(--mantine-scale));--input-padding-y-xl: calc(.8125rem * var(--mantine-scale));--input-height: var(--input-height-sm);--input-radius: var(--mantine-radius-default);--input-cursor: text;--input-text-align: left;--input-line-height: calc(var(--input-height) - calc(.125rem * var(--mantine-scale)));--input-padding: calc(var(--input-height) / 3);--input-padding-inline-start: var(--input-padding);--input-padding-inline-end: var(--input-padding);--input-placeholder-color: var(--mantine-color-placeholder);--input-color: var(--mantine-color-text);--input-disabled-bg: var(--mantine-color-disabled);--input-disabled-color: var(--mantine-color-disabled-color);--input-left-section-size: var(--input-left-section-width, calc(var(--input-height) - calc(.125rem * var(--mantine-scale))));--input-right-section-size: var( --input-right-section-width, calc(var(--input-height) - calc(.125rem * var(--mantine-scale))) );--input-size: var(--input-height);--section-y: calc(.0625rem * var(--mantine-scale));--left-section-start: calc(.0625rem * var(--mantine-scale));--left-section-border-radius: var(--input-radius) 0 0 var(--input-radius);--right-section-end: calc(.0625rem * var(--mantine-scale));--right-section-border-radius: 0 var(--input-radius) var(--input-radius) 0}.m_6c018570[data-variant=unstyled]{--input-padding: 0;--input-padding-y: 0;--input-padding-inline-start: 0;--input-padding-inline-end: 0}.m_6c018570[data-pointer]{--input-cursor: pointer}.m_6c018570[data-multiline]{--input-padding-y-xs: calc(.28125rem * var(--mantine-scale));--input-padding-y-sm: calc(.34375rem * var(--mantine-scale));--input-padding-y-md: calc(.4375rem * var(--mantine-scale));--input-padding-y-lg: calc(.59375rem * var(--mantine-scale));--input-padding-y-xl: calc(.8125rem * var(--mantine-scale));--input-size: auto;--input-line-height: var(--mantine-line-height)}.m_6c018570[data-with-left-section]{--input-padding-inline-start: var(--input-left-section-size)}.m_6c018570[data-with-right-section]{--input-padding-inline-end: var(--input-right-section-size)}.m_6c018570[data-size=xs] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(2.5625rem * var(--mantine-scale))}.m_6c018570[data-size=sm] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(3.125rem * var(--mantine-scale))}.m_6c018570[data-size=md] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(3.75rem * var(--mantine-scale))}.m_6c018570[data-size=lg] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(4.5rem * var(--mantine-scale))}.m_6c018570[data-size=xl] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(5.5625rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_6c018570[data-variant=default]{--input-bd: var(--mantine-color-gray-4);--input-bg: var(--mantine-color-white);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=filled]{--input-bd: transparent;--input-bg: var(--mantine-color-gray-1);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=unstyled]{--input-bd: transparent;--input-bg: transparent;--input-bd-focus: transparent}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=default]{--input-bd: var(--mantine-color-dark-4);--input-bg: var(--mantine-color-dark-6);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=filled]{--input-bd: transparent;--input-bg: var(--mantine-color-dark-5);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=unstyled]{--input-bd: transparent;--input-bg: transparent;--input-bd-focus: transparent}[data-mantine-color-scheme] .m_6c018570[data-error]:not([data-variant=unstyled]){--input-bd: var(--mantine-color-error)}[data-mantine-color-scheme] .m_6c018570[data-error]{--input-color: var(--mantine-color-error);--input-placeholder-color: var(--mantine-color-error);--input-section-color: var(--mantine-color-error)}:where([dir=rtl]) .m_6c018570{--input-text-align: right;--left-section-border-radius: 0 var(--input-radius) var(--input-radius) 0;--right-section-border-radius: var(--input-radius) 0 0 var(--input-radius)}.m_8fb7ebe7{-webkit-tap-highlight-color:transparent;appearance:none;resize:var(--input-resize, none);display:block;width:100%;transition:border-color .1s ease;text-align:var(--input-text-align);color:var(--input-color);border:calc(.0625rem * var(--mantine-scale)) solid var(--input-bd);background-color:var(--input-bg);font-family:var(--input-font-family, var(--mantine-font-family));height:var(--input-size);min-height:var(--input-height);line-height:var(--input-line-height);font-size:var(--_input-fz, var(--input-fz, var(--mantine-font-size-md)));border-radius:var(--input-radius);padding-inline-start:var(--input-padding-inline-start);padding-inline-end:var(--input-padding-inline-end);padding-top:var(--input-padding-y, 0rem);padding-bottom:var(--input-padding-y, 0rem);cursor:var(--input-cursor);overflow:var(--input-overflow)}.m_8fb7ebe7[data-no-overflow]{--input-overflow: hidden}.m_8fb7ebe7[data-monospace]{--input-font-family: var(--mantine-font-family-monospace);--_input-fz: calc(var(--input-fz) - calc(.125rem * var(--mantine-scale)))}.m_8fb7ebe7:focus,.m_8fb7ebe7:focus-within{outline:none;--input-bd: var(--input-bd-focus)}[data-error] .m_8fb7ebe7:focus,[data-error] .m_8fb7ebe7:focus-within{--input-bd: var(--mantine-color-error)}.m_8fb7ebe7::placeholder{color:var(--input-placeholder-color);opacity:1}.m_8fb7ebe7::-webkit-inner-spin-button,.m_8fb7ebe7::-webkit-outer-spin-button,.m_8fb7ebe7::-webkit-search-decoration,.m_8fb7ebe7::-webkit-search-cancel-button,.m_8fb7ebe7::-webkit-search-results-button,.m_8fb7ebe7::-webkit-search-results-decoration{appearance:none}.m_8fb7ebe7[type=number]{-moz-appearance:textfield}.m_8fb7ebe7:disabled,.m_8fb7ebe7[data-disabled]{cursor:not-allowed;opacity:.6;background-color:var(--input-disabled-bg);color:var(--input-disabled-color)}.m_8fb7ebe7:has(input:disabled){cursor:not-allowed;opacity:.6;background-color:var(--input-disabled-bg);color:var(--input-disabled-color)}.m_8fb7ebe7[readonly]{caret-color:transparent}.m_82577fc2{pointer-events:var(--section-pointer-events);position:absolute;z-index:1;inset-inline-start:var(--section-start);inset-inline-end:var(--section-end);bottom:var(--section-y);top:var(--section-y);display:flex;align-items:center;justify-content:center;width:var(--section-size);border-radius:var(--section-border-radius);color:var(--input-section-color, var(--mantine-color-dimmed))}.m_82577fc2[data-position=right]{--section-pointer-events: var(--input-right-section-pointer-events);--section-end: var(--right-section-end);--section-size: var(--input-right-section-size);--section-border-radius: var(--right-section-border-radius)}.m_6c018570[data-size=xs] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(2.5625rem * var(--mantine-scale))}.m_6c018570[data-size=sm] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(3.125rem * var(--mantine-scale))}.m_6c018570[data-size=md] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(3.75rem * var(--mantine-scale))}.m_6c018570[data-size=lg] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(4.5rem * var(--mantine-scale))}.m_6c018570[data-size=xl] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(5.5625rem * var(--mantine-scale))}.m_82577fc2[data-position=left]{--section-pointer-events: var(--input-left-section-pointer-events);--section-start: var(--left-section-start);--section-size: var(--input-left-section-size);--section-border-radius: var(--left-section-border-radius)}.m_88bacfd0{color:var(--input-placeholder-color, var(--mantine-color-placeholder))}[data-error] .m_88bacfd0{--input-placeholder-color: var(--input-color, var(--mantine-color-placeholder))}.m_46b77525{line-height:var(--mantine-line-height)}.m_8fdc1311{display:inline-block;font-weight:500;overflow-wrap:break-word;cursor:default;-webkit-tap-highlight-color:transparent;font-size:var(--input-label-size, var(--mantine-font-size-sm))}.m_78a94662{color:var(--input-asterisk-color, var(--mantine-color-error))}.m_8f816625,.m_fe47ce59{word-wrap:break-word;line-height:1.2;display:block;margin:0;padding:0}.m_8f816625{color:var(--mantine-color-error);font-size:var(--input-error-size, calc(var(--mantine-font-size-sm) - calc(.125rem * var(--mantine-scale))))}.m_fe47ce59{color:var(--mantine-color-dimmed);font-size:var(--input-description-size, calc(var(--mantine-font-size-sm) - calc(.125rem * var(--mantine-scale))))}.m_8bffd616{display:flex}.m_96b553a6{--transition-duration: .15s;top:0;left:0;position:absolute;z-index:0;transition-property:transform,width,height;transition-timing-function:ease;transition-duration:0ms}.m_96b553a6:where([data-initialized]){transition-duration:var(--transition-duration)}.m_96b553a6:where([data-hidden]){background-color:red;display:none}.m_9bdbb667{--accordion-radius: var(--mantine-radius-default)}.m_df78851f{overflow-wrap:break-word}.m_4ba554d4{padding:var(--mantine-spacing-md);padding-top:calc(var(--mantine-spacing-xs) / 2)}.m_8fa820a0{margin:0;padding:0}.m_4ba585b8{width:100%;display:flex;align-items:center;flex-direction:row-reverse;padding-inline:var(--mantine-spacing-md);opacity:1;cursor:pointer;background-color:transparent;color:var(--mantine-color-bright)}.m_4ba585b8:where([data-chevron-position=left]){flex-direction:row;padding-inline-start:0}.m_4ba585b8:where(:disabled,[data-disabled]){opacity:.4;cursor:not-allowed}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):hover,:where([data-mantine-color-scheme=light]) .m_4271d21b:where(:not(:disabled,[data-disabled])):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):hover,:where([data-mantine-color-scheme=dark]) .m_4271d21b:where(:not(:disabled,[data-disabled])):hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):active,:where([data-mantine-color-scheme=light]) .m_4271d21b:where(:not(:disabled,[data-disabled])):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):active,:where([data-mantine-color-scheme=dark]) .m_4271d21b:where(:not(:disabled,[data-disabled])):active{background-color:var(--mantine-color-dark-6)}}.m_df3ffa0f{color:inherit;font-weight:400;flex:1;overflow:hidden;text-overflow:ellipsis;padding-top:var(--mantine-spacing-sm);padding-bottom:var(--mantine-spacing-sm)}.m_3f35ae96{display:flex;align-items:center;justify-content:flex-start;transition:transform var(--accordion-transition-duration, .2s) ease;width:var(--accordion-chevron-size, calc(.9375rem * var(--mantine-scale)));min-width:var(--accordion-chevron-size, calc(.9375rem * var(--mantine-scale)));transform:rotate(0)}.m_3f35ae96:where([data-rotate]){transform:rotate(180deg)}.m_3f35ae96:where([data-position=left]){margin-inline-end:var(--mantine-spacing-md);margin-inline-start:var(--mantine-spacing-md)}.m_9bd771fe{display:flex;align-items:center;justify-content:center;margin-inline-end:var(--mantine-spacing-sm)}.m_9bd771fe:where([data-chevron-position=left]){margin-inline-end:0;margin-inline-start:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_9bd7b098{--item-border-color: var(--mantine-color-gray-3);--item-filled-color: var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_9bd7b098{--item-border-color: var(--mantine-color-dark-4);--item-filled-color: var(--mantine-color-dark-6)}.m_fe19b709{border-bottom:1px solid var(--item-border-color)}.m_1f921b3b{border:1px solid var(--item-border-color);transition:background-color .15s ease}.m_1f921b3b:where([data-active]){background-color:var(--item-filled-color)}.m_1f921b3b:first-of-type{border-start-start-radius:var(--accordion-radius);border-start-end-radius:var(--accordion-radius)}.m_1f921b3b:first-of-type>[data-accordion-control]{border-start-start-radius:var(--accordion-radius);border-start-end-radius:var(--accordion-radius)}.m_1f921b3b:last-of-type{border-end-start-radius:var(--accordion-radius);border-end-end-radius:var(--accordion-radius)}.m_1f921b3b:last-of-type>[data-accordion-control]{border-end-start-radius:var(--accordion-radius);border-end-end-radius:var(--accordion-radius)}.m_1f921b3b+.m_1f921b3b{border-top:0}.m_2cdf939a{border-radius:var(--accordion-radius)}.m_2cdf939a:where([data-active]){background-color:var(--item-filled-color)}.m_9f59b069{background-color:var(--item-filled-color);border-radius:var(--accordion-radius);border:calc(.0625rem * var(--mantine-scale)) solid transparent;transition:background-color .15s ease}.m_9f59b069[data-active]{border-color:var(--item-border-color)}:where([data-mantine-color-scheme=light]) .m_9f59b069[data-active]{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_9f59b069[data-active]{background-color:var(--mantine-color-dark-7)}.m_9f59b069+.m_9f59b069{margin-top:var(--mantine-spacing-md)}.m_7f854edf{position:fixed;z-index:var(--affix-z-index);inset-inline-start:var(--affix-left);inset-inline-end:var(--affix-right);top:var(--affix-top);bottom:var(--affix-bottom)}.m_66836ed3{--alert-radius: var(--mantine-radius-default);--alert-bg: var(--mantine-primary-color-light);--alert-bd: calc(.0625rem * var(--mantine-scale)) solid transparent;--alert-color: var(--mantine-primary-color-light-color);padding:var(--mantine-spacing-md) var(--mantine-spacing-md);border-radius:var(--alert-radius);position:relative;overflow:hidden;background-color:var(--alert-bg);border:var(--alert-bd);color:var(--alert-color)}.m_a5d60502{display:flex}.m_667c2793{flex:1;display:flex;flex-direction:column;gap:var(--mantine-spacing-xs)}.m_6a03f287{display:flex;align-items:center;justify-content:space-between;font-size:var(--mantine-font-size-sm);font-weight:700}.m_6a03f287:where([data-with-close-button]){padding-inline-end:var(--mantine-spacing-md)}.m_698f4f23{display:block;overflow:hidden;text-overflow:ellipsis}.m_667f2a6a{line-height:1;width:calc(1.25rem * var(--mantine-scale));height:calc(1.25rem * var(--mantine-scale));display:flex;align-items:center;justify-content:flex-start;margin-inline-end:var(--mantine-spacing-md);margin-top:calc(.0625rem * var(--mantine-scale))}.m_7fa78076{text-overflow:ellipsis;overflow:hidden;font-size:var(--mantine-font-size-sm)}:where([data-mantine-color-scheme=light]) .m_7fa78076{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_7fa78076{color:var(--mantine-color-white)}.m_7fa78076:where([data-variant=filled]){color:var(--alert-color)}.m_7fa78076:where([data-variant=white]){color:var(--mantine-color-black)}.m_87f54839{width:calc(1.25rem * var(--mantine-scale));height:calc(1.25rem * var(--mantine-scale));color:var(--alert-color)}.m_b6d8b162{-webkit-tap-highlight-color:transparent;text-decoration:none;font-size:var(--text-fz, var(--mantine-font-size-md));line-height:var(--text-lh, var(--mantine-line-height-md));font-weight:400;margin:0;padding:0;color:var(--text-color)}.m_b6d8b162:where([data-truncate]){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m_b6d8b162:where([data-truncate=start]){direction:rtl;text-align:right}:where([dir=rtl]) .m_b6d8b162:where([data-truncate=start]){direction:ltr;text-align:left}.m_b6d8b162:where([data-variant=gradient]){background-image:var(--text-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.m_b6d8b162:where([data-line-clamp]){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--text-line-clamp);-webkit-box-orient:vertical}.m_b6d8b162:where([data-inherit]){line-height:inherit;font-weight:inherit;font-size:inherit}.m_b6d8b162:where([data-inline]){line-height:1}.m_849cf0da{color:var(--mantine-color-anchor);text-decoration:none;appearance:none;border:none;display:inline;padding:0;margin:0;background-color:transparent;cursor:pointer}@media(hover:hover){.m_849cf0da:where([data-underline=hover]):hover{text-decoration:underline}}@media(hover:none){.m_849cf0da:where([data-underline=hover]):active{text-decoration:underline}}.m_849cf0da:where([data-underline=not-hover]){text-decoration:underline}@media(hover:hover){.m_849cf0da:where([data-underline=not-hover]):hover{text-decoration:none}}@media(hover:none){.m_849cf0da:where([data-underline=not-hover]):active{text-decoration:none}}.m_849cf0da:where([data-underline=always]){text-decoration:underline}.m_849cf0da:where([data-variant=gradient]),.m_849cf0da:where([data-variant=gradient]):hover{text-decoration:none}.m_849cf0da:where([data-line-clamp]){display:-webkit-box}.m_48204f9b{width:var(--slider-size);height:var(--slider-size);position:relative;border-radius:100%;display:flex;align-items:center;justify-content:center;user-select:none}.m_48204f9b:focus-within{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_48204f9b{--slider-size: calc(3.75rem * var(--mantine-scale));--thumb-size: calc(var(--slider-size) / 5)}:where([data-mantine-color-scheme=light]) .m_48204f9b{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_48204f9b{background-color:var(--mantine-color-dark-5)}.m_bb9cdbad{position:absolute;inset:calc(.0625rem * var(--mantine-scale));border-radius:var(--slider-size);pointer-events:none}.m_481dd586{width:calc(.125rem * var(--mantine-scale));position:absolute;top:0;bottom:0;left:calc(50% - 1px);transform:rotate(var(--angle))}.m_481dd586:before{content:"";position:absolute;top:calc(var(--thumb-size) / 3);left:calc(.03125rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));height:calc(var(--thumb-size) / 1.5);transform:translate(-50%,-50%)}:where([data-mantine-color-scheme=light]) .m_481dd586:before{background-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_481dd586:before{background-color:var(--mantine-color-dark-3)}.m_481dd586[data-label]:after{min-width:calc(1.125rem * var(--mantine-scale));text-align:center;content:attr(data-label);position:absolute;top:calc(-1.5rem * var(--mantine-scale));left:calc(-.4375rem * var(--mantine-scale));transform:rotate(calc(360deg - var(--angle)));font-size:var(--mantine-font-size-xs)}.m_bc02ba3d{position:absolute;inset-block:0;inset-inline-start:calc(50% - 1.5px);inset-inline-end:0;height:100%;width:calc(.1875rem * var(--mantine-scale));outline:none;pointer-events:none}.m_bc02ba3d:before{content:"";position:absolute;right:0;top:0;height:min(var(--thumb-size),calc(var(--slider-size) / 2));width:calc(.1875rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_bc02ba3d:before{background-color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_bc02ba3d:before{background-color:var(--mantine-color-dark-1)}.m_bb8e875b{font-size:var(--mantine-font-size-xs)}.m_89ab340[data-resizing]{--app-shell-transition-duration: 0ms !important}.m_89ab340[data-disabled]{--app-shell-header-offset: 0rem !important;--app-shell-navbar-offset: 0rem !important;--app-shell-aside-offset: 0rem !important;--app-shell-footer-offset: 0rem !important}[data-mantine-color-scheme=light] .m_89ab340{--app-shell-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_89ab340{--app-shell-border-color: var(--mantine-color-dark-4)}.m_45252eee,.m_9cdde9a,.m_3b16f56b,.m_8983817,.m_3840c879{transition-duration:var(--app-shell-transition-duration);transition-timing-function:var(--app-shell-transition-timing-function)}.m_45252eee,.m_9cdde9a{position:fixed;display:flex;flex-direction:column;top:var(--app-shell-header-offset, 0rem);height:calc(100dvh - var(--app-shell-header-offset, 0rem) - var(--app-shell-footer-offset, 0rem));background-color:var(--mantine-color-body);transition-property:transform,top,height}:where([data-layout=alt]) .m_45252eee,:where([data-layout=alt]) .m_9cdde9a{top:0rem;height:100dvh}.m_45252eee{inset-inline-start:0;width:var(--app-shell-navbar-width);transition-property:transform,top,height;transform:var(--app-shell-navbar-transform);z-index:var(--app-shell-navbar-z-index)}:where([dir=rtl]) .m_45252eee{transform:var(--app-shell-navbar-transform-rtl)}.m_45252eee:where([data-with-border]){border-inline-end:1px solid var(--app-shell-border-color)}.m_9cdde9a{inset-inline-end:0;width:var(--app-shell-aside-width);transform:var(--app-shell-aside-transform);z-index:var(--app-shell-aside-z-index)}:where([dir=rtl]) .m_9cdde9a{transform:var(--app-shell-aside-transform-rtl)}.m_9cdde9a:where([data-with-border]){border-inline-start:1px solid var(--app-shell-border-color)}:where([data-scroll-locked]) .m_9cdde9a{visibility:var(--app-shell-aside-scroll-locked-visibility)}.m_8983817{padding-inline-start:calc(var(--app-shell-navbar-offset, 0rem) + var(--app-shell-padding));padding-inline-end:calc(var(--app-shell-aside-offset, 0rem) + var(--app-shell-padding));padding-top:calc(var(--app-shell-header-offset, 0rem) + var(--app-shell-padding));padding-bottom:calc(var(--app-shell-footer-offset, 0rem) + var(--app-shell-padding));min-height:100dvh;transition-property:padding}.m_3b16f56b,.m_3840c879{position:fixed;inset-inline:0;transition-property:transform,margin-inline-start,margin-inline-end;background-color:var(--mantine-color-body)}:where([data-layout=alt]) .m_3b16f56b,:where([data-layout=alt]) .m_3840c879{margin-inline-start:var(--app-shell-navbar-offset, 0rem);margin-inline-end:var(--app-shell-aside-offset, 0rem)}.m_3b16f56b{top:0;height:var(--app-shell-header-height);background-color:var(--mantine-color-body);transform:var(--app-shell-header-transform);z-index:var(--app-shell-header-z-index)}.m_3b16f56b:where([data-with-border]){border-bottom:1px solid var(--app-shell-border-color)}.m_3840c879{bottom:0;height:calc(var(--app-shell-footer-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);transform:var(--app-shell-footer-transform);z-index:var(--app-shell-footer-z-index)}.m_3840c879:where([data-with-border]){border-top:1px solid var(--app-shell-border-color)}.m_6dcfc7c7{flex-grow:0}.m_6dcfc7c7:where([data-grow]){flex-grow:1}.m_71ac47fc{--ar-ratio: 1;max-width:100%}.m_71ac47fc>:where(*:not(style)){aspect-ratio:var(--ar-ratio);width:100%}.m_71ac47fc>:where(img,video){object-fit:cover}.m_88b62a41{--combobox-padding: calc(.25rem * var(--mantine-scale));padding:var(--combobox-padding)}.m_88b62a41:has([data-mantine-scrollbar]) .m_985517d8{max-width:calc(100% + var(--combobox-padding))}.m_88b62a41[data-composed]{padding-inline-end:0}.m_88b62a41[data-hidden]{display:none}.m_88b62a41,.m_b2821a6e{--combobox-option-padding-xs: calc(.25rem * var(--mantine-scale)) calc(.5rem * var(--mantine-scale));--combobox-option-padding-sm: calc(.375rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--combobox-option-padding-md: calc(.5rem * var(--mantine-scale)) calc(.75rem * var(--mantine-scale));--combobox-option-padding-lg: calc(.625rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--combobox-option-padding-xl: calc(.875rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));--combobox-option-padding: var(--combobox-option-padding-sm)}.m_92253aa5{padding:var(--combobox-option-padding);font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));border-radius:var(--mantine-radius-default);background-color:transparent;color:inherit;cursor:pointer;overflow-wrap:break-word}.m_92253aa5:where([data-combobox-selected]){background-color:var(--mantine-primary-color-filled);color:var(--mantine-color-white)}.m_92253aa5:where([data-combobox-disabled]){cursor:not-allowed;opacity:.35}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_92253aa5:hover:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_92253aa5:hover:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-dark-7)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_92253aa5:active:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_92253aa5:active:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-dark-7)}}.m_985517d8{margin-inline:calc(var(--combobox-padding) * -1);margin-top:calc(var(--combobox-padding) * -1);width:calc(100% + var(--combobox-padding) * 2);border-top-width:0;border-inline-width:0;border-end-start-radius:0;border-end-end-radius:0;margin-bottom:var(--combobox-padding);position:relative}:where([data-mantine-color-scheme=light]) .m_985517d8,:where([data-mantine-color-scheme=light]) .m_985517d8:focus{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_985517d8,:where([data-mantine-color-scheme=dark]) .m_985517d8:focus{border-color:var(--mantine-color-dark-4)}:where([data-mantine-color-scheme=light]) .m_985517d8{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_985517d8{background-color:var(--mantine-color-dark-7)}.m_2530cd1d{font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));text-align:center;padding:var(--combobox-option-padding);color:var(--mantine-color-dimmed)}.m_858f94bd,.m_82b967cb{font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));border:0 solid transparent;margin-inline:calc(var(--combobox-padding) * -1);padding:var(--combobox-option-padding)}:where([data-mantine-color-scheme=light]) .m_858f94bd,:where([data-mantine-color-scheme=light]) .m_82b967cb{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_858f94bd,:where([data-mantine-color-scheme=dark]) .m_82b967cb{border-color:var(--mantine-color-dark-4)}.m_82b967cb{border-top-width:calc(.0625rem * var(--mantine-scale));margin-top:var(--combobox-padding);margin-bottom:calc(var(--combobox-padding) * -1)}.m_858f94bd{border-bottom-width:calc(.0625rem * var(--mantine-scale));margin-bottom:var(--combobox-padding);margin-top:calc(var(--combobox-padding) * -1)}.m_254f3e4f:has(.m_2bb2e9e5:only-child){display:none}.m_2bb2e9e5{color:var(--mantine-color-dimmed);font-size:calc(var(--combobox-option-fz, var(--mantine-font-size-sm)) * .85);padding:var(--combobox-option-padding);font-weight:500;position:relative;display:flex;align-items:center}.m_2bb2e9e5:after{content:"";flex:1;inset-inline:0;height:calc(.0625rem * var(--mantine-scale));margin-inline-start:var(--mantine-spacing-xs)}:where([data-mantine-color-scheme=light]) .m_2bb2e9e5:after{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_2bb2e9e5:after{background-color:var(--mantine-color-dark-4)}.m_2bb2e9e5:only-child{display:none}.m_2943220b{--combobox-chevron-size-xs: calc(.875rem * var(--mantine-scale));--combobox-chevron-size-sm: calc(1.125rem * var(--mantine-scale));--combobox-chevron-size-md: calc(1.25rem * var(--mantine-scale));--combobox-chevron-size-lg: calc(1.5rem * var(--mantine-scale));--combobox-chevron-size-xl: calc(1.75rem * var(--mantine-scale));--combobox-chevron-size: var(--combobox-chevron-size-sm)}:where([data-mantine-color-scheme=light]) .m_2943220b{--_combobox-chevron-color: var(--combobox-chevron-color, var(--mantine-color-gray-6))}:where([data-mantine-color-scheme=dark]) .m_2943220b{--_combobox-chevron-color: var(--combobox-chevron-color, var(--mantine-color-dark-3))}.m_2943220b{width:var(--combobox-chevron-size);height:var(--combobox-chevron-size);color:var(--_combobox-chevron-color)}.m_2943220b:where([data-error]){color:var(--combobox-chevron-color, var(--mantine-color-error))}.m_390b5f4{display:flex;align-items:center;gap:calc(.5rem * var(--mantine-scale))}.m_390b5f4:where([data-reverse]){justify-content:space-between}.m_8ee53fc2{opacity:.4;width:.8em;min-width:.8em;height:.8em}:where([data-combobox-selected]) .m_8ee53fc2{opacity:1}.m_a530ee0a{width:.8em;min-width:.8em;height:.8em}.m_5f75b09e{--label-lh-xs: calc(1rem * var(--mantine-scale));--label-lh-sm: calc(1.25rem * var(--mantine-scale));--label-lh-md: calc(1.5rem * var(--mantine-scale));--label-lh-lg: calc(1.875rem * var(--mantine-scale));--label-lh-xl: calc(2.25rem * var(--mantine-scale));--label-lh: var(--label-lh-sm)}.m_5f75b09e[data-label-position=left]{--label-order: 1;--label-offset-end: var(--mantine-spacing-sm);--label-offset-start: 0}.m_5f75b09e[data-label-position=right]{--label-order: 2;--label-offset-end: 0;--label-offset-start: var(--mantine-spacing-sm)}.m_5f6e695e{-webkit-tap-highlight-color:transparent;display:flex}.m_d3ea56bb{--label-cursor: var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:inline-flex;flex-direction:column;font-size:var(--label-fz, var(--mantine-font-size-sm));line-height:var(--label-lh);cursor:var(--label-cursor);order:var(--label-order)}fieldset:disabled .m_d3ea56bb,.m_d3ea56bb[data-disabled]{--label-cursor: not-allowed}.m_8ee546b8{cursor:var(--label-cursor);color:inherit;padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}fieldset:disabled .m_8ee546b8,.m_8ee546b8:where([data-disabled]){color:var(--mantine-color-disabled-color)}.m_328f68c0{margin-top:calc(var(--mantine-spacing-xs) / 2);padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end);cursor:default}.m_8e8a99cc{margin-top:calc(var(--mantine-spacing-xs) / 2);padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}.m_26775b0a{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_26775b0a :where(*){cursor:inherit}.m_26775b0a:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_5e5256ee{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled)}.m_5e5256ee:where([data-variant=filled]){--checkbox-icon-color: var(--mantine-color-white)}.m_5e5256ee:where([data-variant=outline]){--checkbox-icon-color: var(--checkbox-color)}.m_5e5256ee{position:relative;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--checkbox-size);min-width:var(--checkbox-size);height:var(--checkbox-size);min-height:var(--checkbox-size);border-radius:var(--checkbox-radius, var(--mantine-radius-default));transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_5e5256ee{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_5e5256ee{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_5e5256ee[data-indeterminate],.m_5e5256ee[data-checked]{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}.m_5e5256ee[data-indeterminate]>.m_1b1c543a,.m_5e5256ee[data-checked]>.m_1b1c543a{opacity:1;transform:none;color:var(--checkbox-icon-color)}.m_5e5256ee[data-disabled]{cursor:not-allowed;border-color:var(--mantine-color-disabled-border);background-color:var(--mantine-color-disabled)}[data-mantine-color-scheme=light] .m_5e5256ee[data-disabled][data-checked]>.m_1b1c543a{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=dark] .m_5e5256ee[data-disabled][data-checked]>.m_1b1c543a{color:var(--mantine-color-dark-3)}.m_76e20374[data-indeterminate]:not([data-disabled]),.m_76e20374[data-checked]:not([data-disabled]){background-color:transparent;border-color:var(--checkbox-color)}.m_76e20374[data-indeterminate]:not([data-disabled])>.m_1b1c543a,.m_76e20374[data-checked]:not([data-disabled])>.m_1b1c543a{color:var(--checkbox-icon-color);opacity:1;transform:none}.m_1b1c543a{display:block;width:60%;color:transparent;pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:1;transition:transform .1s ease,opacity .1s ease}.m_bf2d988c{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled)}.m_bf2d988c:where([data-variant=filled]){--checkbox-icon-color: var(--mantine-color-white)}.m_bf2d988c:where([data-variant=outline]){--checkbox-icon-color: var(--checkbox-color)}.m_26062bec{position:relative;width:var(--checkbox-size);height:var(--checkbox-size);order:1}.m_26062bec:where([data-label-position=left]){order:2}.m_26063560{appearance:none;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--checkbox-size);height:var(--checkbox-size);border-radius:var(--checkbox-radius, var(--mantine-radius-default));padding:0;display:block;margin:0;transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent}:where([data-mantine-color-scheme=light]) .m_26063560{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_26063560{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_26063560:where([data-error]){border-color:var(--mantine-color-error)}.m_26063560[data-indeterminate],.m_26063560:checked{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}.m_26063560[data-indeterminate]+.m_bf295423,.m_26063560:checked+.m_bf295423{opacity:1;transform:none}.m_26063560:disabled{cursor:not-allowed;border-color:var(--mantine-color-disabled-border);background-color:var(--mantine-color-disabled)}.m_26063560:disabled+.m_bf295423{color:var(--mantine-color-disabled-color)}.m_215c4542+.m_bf295423{color:var(--checkbox-color)}.m_215c4542[data-indeterminate]:not(:disabled),.m_215c4542:checked:not(:disabled){background-color:transparent;border-color:var(--checkbox-color)}.m_215c4542[data-indeterminate]:not(:disabled)+.m_bf295423,.m_215c4542:checked:not(:disabled)+.m_bf295423{color:var(--checkbox-icon-color);opacity:1;transform:none}.m_bf295423{position:absolute;inset:0;width:60%;margin:auto;color:var(--checkbox-icon-color);pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:0;transition:transform .1s ease,opacity .1s ease}.m_11def92b{--ag-spacing: var(--mantine-spacing-sm);--ag-offset: calc(var(--ag-spacing) * -1);display:flex;padding-inline-start:var(--ag-spacing)}.m_f85678b6{--avatar-size-xs: calc(1rem * var(--mantine-scale));--avatar-size-sm: calc(1.625rem * var(--mantine-scale));--avatar-size-md: calc(2.375rem * var(--mantine-scale));--avatar-size-lg: calc(3.5rem * var(--mantine-scale));--avatar-size-xl: calc(5.25rem * var(--mantine-scale));--avatar-size: var(--avatar-size-md);--avatar-radius: calc(62.5rem * var(--mantine-scale));--avatar-bg: var(--mantine-color-gray-light);--avatar-bd: calc(.0625rem * var(--mantine-scale)) solid transparent;--avatar-color: var(--mantine-color-gray-light-color);--avatar-placeholder-fz: calc(var(--avatar-size) / 2.5);-webkit-tap-highlight-color:transparent;position:relative;display:block;user-select:none;overflow:hidden;border-radius:var(--avatar-radius);text-decoration:none;padding:0;width:var(--avatar-size);height:var(--avatar-size);min-width:var(--avatar-size)}.m_f85678b6:where([data-within-group]){margin-inline-start:var(--ag-offset);border:2px solid var(--mantine-color-body);background:var(--mantine-color-body)}.m_11f8ac07{object-fit:cover;width:100%;height:100%;display:block}.m_104cd71f{font-weight:700;display:flex;align-items:center;justify-content:center;width:100%;height:100%;user-select:none;border-radius:var(--avatar-radius);font-size:var(--avatar-placeholder-fz);background:var(--avatar-bg);border:var(--avatar-bd);color:var(--avatar-color)}.m_104cd71f>[data-avatar-placeholder-icon]{width:70%;height:70%}.m_2ce0de02{background-size:cover;background-position:center;display:block;width:100%;border:0;text-decoration:none;border-radius:var(--bi-radius, 0)}.m_347db0ec{--badge-height-xs: calc(1rem * var(--mantine-scale));--badge-height-sm: calc(1.125rem * var(--mantine-scale));--badge-height-md: calc(1.25rem * var(--mantine-scale));--badge-height-lg: calc(1.625rem * var(--mantine-scale));--badge-height-xl: calc(2rem * var(--mantine-scale));--badge-fz-xs: calc(.5625rem * var(--mantine-scale));--badge-fz-sm: calc(.625rem * var(--mantine-scale));--badge-fz-md: calc(.6875rem * var(--mantine-scale));--badge-fz-lg: calc(.8125rem * var(--mantine-scale));--badge-fz-xl: calc(1rem * var(--mantine-scale));--badge-padding-x-xs: calc(.375rem * var(--mantine-scale));--badge-padding-x-sm: calc(.5rem * var(--mantine-scale));--badge-padding-x-md: calc(.625rem * var(--mantine-scale));--badge-padding-x-lg: calc(.75rem * var(--mantine-scale));--badge-padding-x-xl: calc(1rem * var(--mantine-scale));--badge-height: var(--badge-height-md);--badge-fz: var(--badge-fz-md);--badge-padding-x: var(--badge-padding-x-md);--badge-radius: calc(62.5rem * var(--mantine-scale));--badge-lh: calc(var(--badge-height) - calc(.125rem * var(--mantine-scale)));--badge-color: var(--mantine-color-white);--badge-bg: var(--mantine-primary-color-filled);--badge-border-width: calc(.0625rem * var(--mantine-scale));--badge-bd: var(--badge-border-width) solid transparent;-webkit-tap-highlight-color:transparent;font-size:var(--badge-fz);border-radius:var(--badge-radius);height:var(--badge-height);line-height:var(--badge-lh);text-decoration:none;padding:0 var(--badge-padding-x);display:inline-grid;align-items:center;justify-content:center;width:fit-content;text-transform:uppercase;font-weight:700;letter-spacing:calc(.015625rem * var(--mantine-scale));cursor:default;text-overflow:ellipsis;overflow:hidden;color:var(--badge-color);background:var(--badge-bg);border:var(--badge-bd)}.m_347db0ec:where([data-with-left-section],[data-variant=dot]){grid-template-columns:auto 1fr}.m_347db0ec:where([data-with-right-section]){grid-template-columns:1fr auto}.m_347db0ec:where([data-with-left-section][data-with-right-section],[data-variant=dot][data-with-right-section]){grid-template-columns:auto 1fr auto}.m_347db0ec:where([data-block]){display:flex;width:100%}.m_347db0ec:where([data-circle]){padding-inline:calc(.125rem * var(--mantine-scale));display:flex;width:var(--badge-height)}.m_fbd81e3d{--badge-dot-size: calc(var(--badge-height) / 3.4)}:where([data-mantine-color-scheme=light]) .m_fbd81e3d{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_fbd81e3d{background-color:var(--mantine-color-dark-5);border-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_fbd81e3d:before{content:"";display:block;width:var(--badge-dot-size);height:var(--badge-dot-size);border-radius:var(--badge-dot-size);background-color:var(--badge-dot-color);margin-inline-end:var(--badge-dot-size)}.m_5add502a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;cursor:inherit}.m_91fdda9b{--badge-section-margin: calc(var(--mantine-spacing-xs) / 2);display:inline-flex;justify-content:center;align-items:center;max-height:calc(var(--badge-height) - var(--badge-border-width) * 2)}.m_91fdda9b:where([data-position=left]){margin-inline-end:var(--badge-section-margin)}.m_91fdda9b:where([data-position=right]){margin-inline-start:var(--badge-section-margin)}.m_ddec01c0{--blockquote-border: 3px solid var(--bq-bd);position:relative;margin:0;border-inline-start:var(--blockquote-border);border-start-end-radius:var(--bq-radius);border-end-end-radius:var(--bq-radius);padding:var(--mantine-spacing-xl) calc(2.375rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_ddec01c0{background-color:var(--bq-bg-light)}:where([data-mantine-color-scheme=dark]) .m_ddec01c0{background-color:var(--bq-bg-dark)}.m_dde7bd57{--blockquote-icon-offset: calc(var(--bq-icon-size) / -2);position:absolute;color:var(--bq-bd);background-color:var(--mantine-color-body);display:flex;align-items:center;justify-content:center;top:var(--blockquote-icon-offset);inset-inline-start:var(--blockquote-icon-offset);width:var(--bq-icon-size);height:var(--bq-icon-size);border-radius:var(--bq-icon-size)}.m_dde51a35{display:block;margin-top:var(--mantine-spacing-md);opacity:.6;font-size:85%}.m_8b3717df{display:flex;align-items:center;flex-wrap:wrap}.m_f678d540{line-height:1;white-space:nowrap;-webkit-tap-highlight-color:transparent}.m_3b8f2208{margin-inline:var(--bc-separator-margin, var(--mantine-spacing-xs));line-height:1;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_3b8f2208{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_3b8f2208{color:var(--mantine-color-dark-2)}.m_fea6bf1a{--burger-size-xs: calc(.75rem * var(--mantine-scale));--burger-size-sm: calc(1.125rem * var(--mantine-scale));--burger-size-md: calc(1.5rem * var(--mantine-scale));--burger-size-lg: calc(2.125rem * var(--mantine-scale));--burger-size-xl: calc(2.625rem * var(--mantine-scale));--burger-size: var(--burger-size-md);--burger-line-size: calc(var(--burger-size) / 12);width:calc(var(--burger-size) + var(--mantine-spacing-xs));height:calc(var(--burger-size) + var(--mantine-spacing-xs));padding:calc(var(--mantine-spacing-xs) / 2);cursor:pointer}:where([data-mantine-color-scheme=light]) .m_fea6bf1a{--burger-color: var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_fea6bf1a{--burger-color: var(--mantine-color-white)}.m_d4fb9cad{position:relative;user-select:none}.m_d4fb9cad,.m_d4fb9cad:before,.m_d4fb9cad:after{display:block;width:var(--burger-size);height:var(--burger-line-size);background-color:var(--burger-color);outline:calc(.0625rem * var(--mantine-scale)) solid transparent;transition-property:background-color,transform;transition-duration:var(--burger-transition-duration, .3s);transition-timing-function:var(--burger-transition-timing-function, ease)}.m_d4fb9cad:before,.m_d4fb9cad:after{position:absolute;content:"";inset-inline-start:0}.m_d4fb9cad:before{top:calc(var(--burger-size) / -3)}.m_d4fb9cad:after{top:calc(var(--burger-size) / 3)}.m_d4fb9cad[data-opened]{background-color:transparent}.m_d4fb9cad[data-opened]:before{transform:translateY(calc(var(--burger-size) / 3)) rotate(45deg)}.m_d4fb9cad[data-opened]:after{transform:translateY(calc(var(--burger-size) / -3)) rotate(-45deg)}.m_77c9d27d{--button-height-xs: calc(1.875rem * var(--mantine-scale));--button-height-sm: calc(2.25rem * var(--mantine-scale));--button-height-md: calc(2.625rem * var(--mantine-scale));--button-height-lg: calc(3.125rem * var(--mantine-scale));--button-height-xl: calc(3.75rem * var(--mantine-scale));--button-height-compact-xs: calc(1.375rem * var(--mantine-scale));--button-height-compact-sm: calc(1.625rem * var(--mantine-scale));--button-height-compact-md: calc(1.875rem * var(--mantine-scale));--button-height-compact-lg: calc(2.125rem * var(--mantine-scale));--button-height-compact-xl: calc(2.5rem * var(--mantine-scale));--button-padding-x-xs: calc(.875rem * var(--mantine-scale));--button-padding-x-sm: calc(1.125rem * var(--mantine-scale));--button-padding-x-md: calc(1.375rem * var(--mantine-scale));--button-padding-x-lg: calc(1.625rem * var(--mantine-scale));--button-padding-x-xl: calc(2rem * var(--mantine-scale));--button-padding-x-compact-xs: calc(.4375rem * var(--mantine-scale));--button-padding-x-compact-sm: calc(.5rem * var(--mantine-scale));--button-padding-x-compact-md: calc(.625rem * var(--mantine-scale));--button-padding-x-compact-lg: calc(.75rem * var(--mantine-scale));--button-padding-x-compact-xl: calc(.875rem * var(--mantine-scale));--button-height: var(--button-height-sm);--button-padding-x: var(--button-padding-x-sm);--button-color: var(--mantine-color-white);user-select:none;font-weight:600;position:relative;line-height:1;text-align:center;overflow:hidden;width:auto;cursor:pointer;display:inline-block;border-radius:var(--button-radius, var(--mantine-radius-default));font-size:var(--button-fz, var(--mantine-font-size-sm));background:var(--button-bg, var(--mantine-primary-color-filled));border:var(--button-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--button-color, var(--mantine-color-white));height:var(--button-height, var(--button-height-sm));padding-inline:var(--button-padding-x, var(--button-padding-x-sm));vertical-align:middle}.m_77c9d27d:where([data-block]){display:block;width:100%}.m_77c9d27d:where([data-with-left-section]){padding-inline-start:calc(var(--button-padding-x) / 1.5)}.m_77c9d27d:where([data-with-right-section]){padding-inline-end:calc(var(--button-padding-x) / 1.5)}.m_77c9d27d:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){cursor:not-allowed;border:calc(.0625rem * var(--mantine-scale)) solid transparent;transform:none;color:var(--mantine-color-disabled-color);background:var(--mantine-color-disabled)}.m_77c9d27d:before{content:"";pointer-events:none;position:absolute;inset:calc(-.0625rem * var(--mantine-scale));border-radius:var(--button-radius, var(--mantine-radius-default));transform:translateY(-100%);opacity:0;filter:blur(12px);transition:transform .15s ease,opacity .1s ease}:where([data-mantine-color-scheme=light]) .m_77c9d27d:before{background-color:#ffffff26}:where([data-mantine-color-scheme=dark]) .m_77c9d27d:before{background-color:#00000026}.m_77c9d27d:where([data-loading]){cursor:not-allowed;transform:none}.m_77c9d27d:where([data-loading]):before{transform:translateY(0);opacity:1}.m_77c9d27d:where([data-loading]) .m_80f1301b{opacity:0;transform:translateY(100%)}@media(hover:hover){.m_77c9d27d:hover:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--button-hover, var(--mantine-primary-color-filled-hover));color:var(--button-hover-color, var(--button-color))}}@media(hover:none){.m_77c9d27d:active:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--button-hover, var(--mantine-primary-color-filled-hover));color:var(--button-hover-color, var(--button-color))}}.m_80f1301b{display:flex;align-items:center;justify-content:var(--button-justify, center);height:100%;overflow:visible;transition:transform .15s ease,opacity .1s ease}.m_811560b9{white-space:nowrap;height:100%;overflow:hidden;display:flex;align-items:center;opacity:1}.m_811560b9:where([data-loading]){opacity:.2}.m_a74036a{display:flex;align-items:center}.m_a74036a:where([data-position=left]){margin-inline-end:var(--mantine-spacing-xs)}.m_a74036a:where([data-position=right]){margin-inline-start:var(--mantine-spacing-xs)}.m_a25b86ee{position:absolute;left:50%;top:50%}.m_80d6d844{--button-border-width: calc(.0625rem * var(--mantine-scale));display:flex}.m_80d6d844 :where(.m_77c9d27d):focus{position:relative;z-index:1}.m_80d6d844[data-orientation=horizontal]{flex-direction:row}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):first-child,.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):first-child{border-end-end-radius:0;border-start-end-radius:0;border-inline-end-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):last-child,.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):last-child{border-end-start-radius:0;border-start-start-radius:0;border-inline-start-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):not(:first-child):not(:last-child),.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-inline-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical]{flex-direction:column}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):first-child,.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):first-child{border-end-start-radius:0;border-end-end-radius:0;border-bottom-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):last-child,.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):last-child{border-start-start-radius:0;border-start-end-radius:0;border-top-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):not(:first-child):not(:last-child),.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-bottom-width:calc(var(--button-border-width) / 2);border-top-width:calc(var(--button-border-width) / 2)}.m_70be2a01{--section-height-xs: calc(1.875rem * var(--mantine-scale));--section-height-sm: calc(2.25rem * var(--mantine-scale));--section-height-md: calc(2.625rem * var(--mantine-scale));--section-height-lg: calc(3.125rem * var(--mantine-scale));--section-height-xl: calc(3.75rem * var(--mantine-scale));--section-height-compact-xs: calc(1.375rem * var(--mantine-scale));--section-height-compact-sm: calc(1.625rem * var(--mantine-scale));--section-height-compact-md: calc(1.875rem * var(--mantine-scale));--section-height-compact-lg: calc(2.125rem * var(--mantine-scale));--section-height-compact-xl: calc(2.5rem * var(--mantine-scale));--section-padding-x-xs: calc(.875rem * var(--mantine-scale));--section-padding-x-sm: calc(1.125rem * var(--mantine-scale));--section-padding-x-md: calc(1.375rem * var(--mantine-scale));--section-padding-x-lg: calc(1.625rem * var(--mantine-scale));--section-padding-x-xl: calc(2rem * var(--mantine-scale));--section-padding-x-compact-xs: calc(.4375rem * var(--mantine-scale));--section-padding-x-compact-sm: calc(.5rem * var(--mantine-scale));--section-padding-x-compact-md: calc(.625rem * var(--mantine-scale));--section-padding-x-compact-lg: calc(.75rem * var(--mantine-scale));--section-padding-x-compact-xl: calc(.875rem * var(--mantine-scale));--section-height: var(--section-height-sm);--section-padding-x: var(--section-padding-x-sm);--section-color: var(--mantine-color-white);font-weight:600;width:auto;border-radius:var(--section-radius, var(--mantine-radius-default));font-size:var(--section-fz, var(--mantine-font-size-sm));background:var(--section-bg, var(--mantine-primary-color-filled));border:var(--section-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--section-color, var(--mantine-color-white));height:var(--section-height, var(--section-height-sm));padding-inline:var(--section-padding-x, var(--section-padding-x-sm));vertical-align:middle;line-height:1;display:inline-flex;align-items:center;justify-content:center}.m_e615b15f{--card-padding: var(--mantine-spacing-md);position:relative;overflow:hidden;display:flex;flex-direction:column;padding:var(--card-padding);color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_e615b15f{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_e615b15f{background-color:var(--mantine-color-dark-6)}.m_599a2148{display:block;margin-inline:calc(var(--card-padding) * -1)}.m_599a2148:where(:first-child){margin-top:calc(var(--card-padding) * -1);border-top:none!important}.m_599a2148:where(:last-child){margin-bottom:calc(var(--card-padding) * -1);border-bottom:none!important}.m_599a2148:where([data-inherit-padding]){padding-inline:var(--card-padding)}.m_599a2148:where([data-with-border]){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-bottom:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_599a2148{border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_599a2148{border-color:var(--mantine-color-dark-4)}.m_599a2148+.m_599a2148{border-top:none!important}.m_4451eb3a{display:flex;align-items:center;justify-content:center}.m_4451eb3a:where([data-inline]){display:inline-flex}.m_f59ffda3{--chip-size-xs: calc(1.4375rem * var(--mantine-scale));--chip-size-sm: calc(1.75rem * var(--mantine-scale));--chip-size-md: calc(2rem * var(--mantine-scale));--chip-size-lg: calc(2.25rem * var(--mantine-scale));--chip-size-xl: calc(2.5rem * var(--mantine-scale));--chip-icon-size-xs: calc(.5625rem * var(--mantine-scale));--chip-icon-size-sm: calc(.75rem * var(--mantine-scale));--chip-icon-size-md: calc(.875rem * var(--mantine-scale));--chip-icon-size-lg: calc(1rem * var(--mantine-scale));--chip-icon-size-xl: calc(1.125rem * var(--mantine-scale));--chip-padding-xs: calc(1rem * var(--mantine-scale));--chip-padding-sm: calc(1.25rem * var(--mantine-scale));--chip-padding-md: calc(1.5rem * var(--mantine-scale));--chip-padding-lg: calc(1.75rem * var(--mantine-scale));--chip-padding-xl: calc(2rem * var(--mantine-scale));--chip-checked-padding-xs: calc(.5125rem * var(--mantine-scale));--chip-checked-padding-sm: calc(.625rem * var(--mantine-scale));--chip-checked-padding-md: calc(.73125rem * var(--mantine-scale));--chip-checked-padding-lg: calc(.84375rem * var(--mantine-scale));--chip-checked-padding-xl: calc(.98125rem * var(--mantine-scale));--chip-spacing-xs: calc(.625rem * var(--mantine-scale));--chip-spacing-sm: calc(.75rem * var(--mantine-scale));--chip-spacing-md: calc(1rem * var(--mantine-scale));--chip-spacing-lg: calc(1.25rem * var(--mantine-scale));--chip-spacing-xl: calc(1.375rem * var(--mantine-scale));--chip-size: var(--chip-size-sm);--chip-icon-size: var(--chip-icon-size-sm);--chip-padding: var(--chip-padding-sm);--chip-spacing: var(--chip-spacing-sm);--chip-checked-padding: var(--chip-checked-padding-sm);--chip-bg: var(--mantine-primary-color-filled);--chip-hover: var(--mantine-primary-color-filled-hover);--chip-color: var(--mantine-color-white);--chip-bd: calc(.0625rem * var(--mantine-scale)) solid transparent}.m_be049a53{display:inline-flex;align-items:center;user-select:none;border-radius:var(--chip-radius, 1000rem);height:var(--chip-size);font-size:var(--chip-fz, var(--mantine-font-size-sm));line-height:calc(var(--chip-size) - calc(.125rem * var(--mantine-scale)));padding-inline:var(--chip-padding);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-text)}.m_be049a53:where([data-checked]){padding:var(--chip-checked-padding)}.m_be049a53:where([data-disabled]){cursor:not-allowed;background-color:var(--mantine-color-disabled);color:var(--mantine-color-disabled-color)}:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]){background-color:var(--mantine-color-white);border:1px solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]){background-color:var(--mantine-color-dark-6);border:1px solid var(--mantine-color-dark-4)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]):hover{background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]):active{background-color:var(--mantine-color-dark-5)}}.m_3904c1af:not([data-disabled]):where([data-checked]){--chip-icon-color: var(--chip-color);border:var(--chip-bd)}@media(hover:hover){.m_3904c1af:not([data-disabled]):where([data-checked]):hover{background-color:var(--chip-hover)}}@media(hover:none){.m_3904c1af:not([data-disabled]):where([data-checked]):active{background-color:var(--chip-hover)}}.m_fa109255:not([data-disabled]),.m_f7e165c3:not([data-disabled]){border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]),:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]),:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]){background-color:var(--mantine-color-dark-5)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]):hover,:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]):hover{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]):hover,:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]):hover{background-color:var(--mantine-color-dark-4)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]):active,:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]):active{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]):active,:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]):active{background-color:var(--mantine-color-dark-4)}}.m_fa109255:not([data-disabled]):where([data-checked]),.m_f7e165c3:not([data-disabled]):where([data-checked]){--chip-icon-color: var(--chip-color);color:var(--chip-color);background-color:var(--chip-bg)}@media(hover:hover){.m_fa109255:not([data-disabled]):where([data-checked]):hover,.m_f7e165c3:not([data-disabled]):where([data-checked]):hover{background-color:var(--chip-hover)}}@media(hover:none){.m_fa109255:not([data-disabled]):where([data-checked]):active,.m_f7e165c3:not([data-disabled]):where([data-checked]):active{background-color:var(--chip-hover)}}.m_9ac86df9{width:calc(var(--chip-icon-size) + (var(--chip-spacing) / 1.5));max-width:calc(var(--chip-icon-size) + (var(--chip-spacing) / 1.5));height:var(--chip-icon-size);display:flex;align-items:center;overflow:hidden}.m_d6d72580{width:var(--chip-icon-size);height:var(--chip-icon-size);display:block;color:var(--chip-icon-color, inherit)}.m_bde07329{width:0;height:0;padding:0;opacity:0;margin:0}.m_bde07329:focus-visible+.m_be049a53{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_b183c0a2{font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);padding:2px calc(var(--mantine-spacing-xs) / 2);border-radius:var(--mantine-radius-sm);font-size:var(--mantine-font-size-xs);margin:0;overflow:auto}:where([data-mantine-color-scheme=light]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-gray-0))}:where([data-mantine-color-scheme=dark]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-dark-6))}.m_b183c0a2[data-block]{padding:var(--mantine-spacing-xs)}.m_de3d2490{--cs-size: calc(1.75rem * var(--mantine-scale));--cs-radius: calc(62.5rem * var(--mantine-scale));-webkit-tap-highlight-color:transparent;border:none;appearance:none;display:block;line-height:1;position:relative;width:var(--cs-size);height:var(--cs-size);min-width:var(--cs-size);min-height:var(--cs-size);border-radius:var(--cs-radius);color:inherit;text-decoration:none}[data-mantine-color-scheme=light] .m_de3d2490{--alpha-overlay-color: var(--mantine-color-gray-3);--alpha-overlay-bg: var(--mantine-color-white)}[data-mantine-color-scheme=dark] .m_de3d2490{--alpha-overlay-color: var(--mantine-color-dark-4);--alpha-overlay-bg: var(--mantine-color-dark-7)}.m_862f3d1b{position:absolute;inset:0;border-radius:var(--cs-radius)}.m_98ae7f22{position:absolute;inset:0;border-radius:var(--cs-radius);z-index:1;box-shadow:#0000001a 0 0 0 calc(.0625rem * var(--mantine-scale)) inset,#00000026 0 0 calc(.25rem * var(--mantine-scale)) inset}.m_95709ac0{position:absolute;inset:0;border-radius:var(--cs-radius);background-size:calc(.5rem * var(--mantine-scale)) calc(.5rem * var(--mantine-scale));background-position:0 0,0 calc(.25rem * var(--mantine-scale)),calc(.25rem * var(--mantine-scale)) calc(-.25rem * var(--mantine-scale)),calc(-.25rem * var(--mantine-scale)) 0;background-image:linear-gradient(45deg,var(--alpha-overlay-color) 25%,transparent 25%),linear-gradient(-45deg,var(--alpha-overlay-color) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--alpha-overlay-color) 75%),linear-gradient(-45deg,var(--alpha-overlay-bg) 75%,var(--alpha-overlay-color) 75%)}.m_93e74e3{position:absolute;inset:0;border-radius:var(--cs-radius);z-index:2;display:flex;align-items:center;justify-content:center}.m_fee9c77{--cp-width-xs: calc(11.25rem * var(--mantine-scale));--cp-width-sm: calc(12.5rem * var(--mantine-scale));--cp-width-md: calc(15rem * var(--mantine-scale));--cp-width-lg: calc(17.5rem * var(--mantine-scale));--cp-width-xl: calc(20rem * var(--mantine-scale));--cp-preview-size-xs: calc(1.625rem * var(--mantine-scale));--cp-preview-size-sm: calc(2.125rem * var(--mantine-scale));--cp-preview-size-md: calc(2.625rem * var(--mantine-scale));--cp-preview-size-lg: calc(3.125rem * var(--mantine-scale));--cp-preview-size-xl: calc(3.375rem * var(--mantine-scale));--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));--cp-saturation-height-xs: calc(6.25rem * var(--mantine-scale));--cp-saturation-height-sm: calc(6.875rem * var(--mantine-scale));--cp-saturation-height-md: calc(7.5rem * var(--mantine-scale));--cp-saturation-height-lg: calc(8.75rem * var(--mantine-scale));--cp-saturation-height-xl: calc(10rem * var(--mantine-scale));--cp-preview-size: var(--cp-preview-size-sm);--cp-thumb-size: var(--cp-thumb-size-sm);--cp-saturation-height: var(--cp-saturation-height-sm);--cp-width: var(--cp-width-sm);--cp-body-spacing: var(--mantine-spacing-sm);width:var(--cp-width);padding:calc(.0625rem * var(--mantine-scale))}.m_fee9c77:where([data-full-width]){width:100%}.m_9dddfbac{width:var(--cp-preview-size);height:var(--cp-preview-size)}.m_bffecc3e{display:flex;padding-top:calc(var(--cp-body-spacing) / 2)}.m_3283bb96{flex:1}.m_3283bb96:not(:only-child){margin-inline-end:var(--mantine-spacing-xs)}.m_40d572ba{overflow:hidden;position:absolute;box-shadow:0 0 1px #0009;border:2px solid var(--mantine-color-white);width:var(--cp-thumb-size);height:var(--cp-thumb-size);border-radius:var(--cp-thumb-size);left:calc(var(--thumb-x-offset) - var(--cp-thumb-size) / 2);top:calc(var(--thumb-y-offset) - var(--cp-thumb-size) / 2)}.m_d8ee6fd8{height:unset!important;width:unset!important;min-width:0!important;min-height:0!important;margin:calc(.125rem * var(--mantine-scale));cursor:pointer;padding-bottom:calc(var(--cp-swatch-size) - calc(.25rem * var(--mantine-scale)));flex:0 0 calc(var(--cp-swatch-size) - calc(.25rem * var(--mantine-scale)))}.m_5711e686{margin-top:calc(.3125rem * var(--mantine-scale));margin-inline:calc(-.125rem * var(--mantine-scale));display:flex;flex-wrap:wrap}.m_5711e686:only-child{margin-top:0}.m_202a296e{--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));-webkit-tap-highlight-color:transparent;position:relative;height:var(--cp-saturation-height);border-radius:var(--mantine-radius-sm);margin:calc(var(--cp-thumb-size) / 2)}.m_202a296e:where([data-focus-ring=auto]):focus:focus-visible .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_202a296e:where([data-focus-ring=always]):focus .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_11b3db02{position:absolute;border-radius:var(--mantine-radius-sm);inset:calc(var(--cp-thumb-size) * -1 / 2 - calc(.0625rem * var(--mantine-scale)))}.m_d856d47d{--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));--cp-thumb-size: var(--cp-thumb-size, calc(.75rem * var(--mantine-scale)));position:relative;height:calc(var(--cp-thumb-size) + calc(.125rem * var(--mantine-scale)));margin-inline:calc(var(--cp-thumb-size) / 2);outline:none}.m_d856d47d+.m_d856d47d{margin-top:calc(.375rem * var(--mantine-scale))}.m_d856d47d:where([data-focus-ring=auto]):focus:focus-visible .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_d856d47d:where([data-focus-ring=always]):focus .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}:where([data-mantine-color-scheme=light]) .m_d856d47d{--slider-checkers: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d856d47d{--slider-checkers: var(--mantine-color-dark-4)}.m_8f327113{position:absolute;top:0;bottom:0;inset-inline:calc(var(--cp-thumb-size) * -1 / 2 - calc(.0625rem * var(--mantine-scale)));border-radius:10000rem}.m_b077c2bc{--ci-eye-dropper-icon-size-xs: calc(.875rem * var(--mantine-scale));--ci-eye-dropper-icon-size-sm: calc(1rem * var(--mantine-scale));--ci-eye-dropper-icon-size-md: calc(1.125rem * var(--mantine-scale));--ci-eye-dropper-icon-size-lg: calc(1.25rem * var(--mantine-scale));--ci-eye-dropper-icon-size-xl: calc(1.375rem * var(--mantine-scale));--ci-eye-dropper-icon-size: var(--ci-eye-dropper-icon-size-sm)}.m_66a028b5{--ci-button-size-xs: calc(1.375rem * var(--mantine-scale));--ci-button-size-sm: calc(1.625rem * var(--mantine-scale));--ci-button-size-md: calc(1.75rem * var(--mantine-scale));--ci-button-size-lg: calc(2rem * var(--mantine-scale));--ci-button-size-xl: calc(2.5rem * var(--mantine-scale));--ci-button-size: var(--ci-button-size-sm);width:var(--ci-button-size);height:var(--ci-button-size);min-width:var(--ci-button-size);min-height:var(--ci-button-size)}.m_c5ccdcab{--ci-preview-size-xs: calc(1rem * var(--mantine-scale));--ci-preview-size-sm: calc(1.125rem * var(--mantine-scale));--ci-preview-size-md: calc(1.375rem * var(--mantine-scale));--ci-preview-size-lg: calc(1.75rem * var(--mantine-scale));--ci-preview-size-xl: calc(2.25rem * var(--mantine-scale));--ci-preview-size: var(--ci-preview-size-sm)}.m_5ece2cd7{padding:calc(.5rem * var(--mantine-scale))}.m_7485cace{--container-size-xs: calc(33.75rem * var(--mantine-scale));--container-size-sm: calc(45rem * var(--mantine-scale));--container-size-md: calc(60rem * var(--mantine-scale));--container-size-lg: calc(71.25rem * var(--mantine-scale));--container-size-xl: calc(82.5rem * var(--mantine-scale));--container-size: var(--container-size-md)}.m_7485cace:where([data-strategy=block]){max-width:var(--container-size);padding-inline:var(--mantine-spacing-md);margin-inline:auto}.m_7485cace:where([data-strategy=block]):where([data-fluid]){max-width:100%}.m_7485cace:where([data-strategy=grid]){display:grid;grid-template-columns:1fr min(100%,var(--container-size)) 1fr;margin-inline:auto}.m_7485cace:where([data-strategy=grid])>*{grid-column:2}.m_7485cace:where([data-strategy=grid])>[data-breakout]{grid-column:1 / -1}.m_7485cace:where([data-strategy=grid])>[data-breakout]>[data-container]{max-width:var(--container-size);margin-inline:auto}.m_e2125a27{--dialog-size-xs: calc(10rem * var(--mantine-scale));--dialog-size-sm: calc(12.5rem * var(--mantine-scale));--dialog-size-md: calc(21.25rem * var(--mantine-scale));--dialog-size-lg: calc(25rem * var(--mantine-scale));--dialog-size-xl: calc(31.25rem * var(--mantine-scale));--dialog-size: var(--dialog-size-md);position:relative;width:var(--dialog-size);max-width:calc(100vw - var(--mantine-spacing-xl) * 2);min-height:calc(3.125rem * var(--mantine-scale))}.m_5abab665{position:absolute;top:calc(var(--mantine-spacing-md) / 2);inset-inline-end:calc(var(--mantine-spacing-md) / 2)}.m_3eebeb36{--divider-size-xs: calc(.0625rem * var(--mantine-scale));--divider-size-sm: calc(.125rem * var(--mantine-scale));--divider-size-md: calc(.1875rem * var(--mantine-scale));--divider-size-lg: calc(.25rem * var(--mantine-scale));--divider-size-xl: calc(.3125rem * var(--mantine-scale));--divider-size: var(--divider-size-xs)}:where([data-mantine-color-scheme=light]) .m_3eebeb36{--divider-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_3eebeb36{--divider-color: var(--mantine-color-dark-4)}.m_3eebeb36:where([data-orientation=horizontal]){border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color)}.m_3eebeb36:where([data-orientation=vertical]){border-inline-start:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);height:auto;align-self:stretch}.m_3eebeb36:where([data-with-label]){border:0}.m_9e365f20{display:flex;align-items:center;font-size:var(--mantine-font-size-xs);color:var(--mantine-color-dimmed);white-space:nowrap}.m_9e365f20:where([data-position=left]):before{display:none}.m_9e365f20:where([data-position=right]):after{display:none}.m_9e365f20:before{content:"";flex:1;height:calc(.0625rem * var(--mantine-scale));border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);margin-inline-end:var(--mantine-spacing-xs)}.m_9e365f20:after{content:"";flex:1;height:calc(.0625rem * var(--mantine-scale));border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);margin-inline-start:var(--mantine-spacing-xs)}.m_f11b401e{--drawer-size-xs: calc(20rem * var(--mantine-scale));--drawer-size-sm: calc(23.75rem * var(--mantine-scale));--drawer-size-md: calc(27.5rem * var(--mantine-scale));--drawer-size-lg: calc(38.75rem * var(--mantine-scale));--drawer-size-xl: calc(48.75rem * var(--mantine-scale));--drawer-size: var(--drawer-size-md);--drawer-offset: 0rem}.m_5a7c2c9{z-index:1000}.m_b8a05bbd{flex:var(--drawer-flex, 0 0 var(--drawer-size));height:var(--drawer-height, calc(100% - var(--drawer-offset) * 2));margin:var(--drawer-offset);max-width:calc(100% - var(--drawer-offset) * 2);max-height:calc(100% - var(--drawer-offset) * 2);overflow-y:auto}.m_b8a05bbd[data-hidden]{opacity:0!important;pointer-events:none}.m_31cd769a{display:flex;justify-content:var(--drawer-justify, flex-start);align-items:var(--drawer-align, flex-start)}.m_e9408a47{padding:var(--mantine-spacing-lg);padding-top:var(--mantine-spacing-xs);border-radius:var(--fieldset-radius, var(--mantine-radius-default));min-inline-size:auto}.m_84c9523a{border:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_84c9523a{border-color:var(--mantine-color-gray-3);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_84c9523a{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-7)}.m_ef274e49{border:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_ef274e49{border-color:var(--mantine-color-gray-3);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_ef274e49{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}.m_eda993d3{padding:0;border:0;border-radius:0}.m_90794832{font-size:var(--mantine-font-size-sm)}.m_74ca27fe{padding:0;margin-bottom:var(--mantine-spacing-sm)}.m_8478a6da{container:mantine-grid / inline-size}.m_410352e9{--grid-overflow: visible;--grid-margin: calc(var(--grid-gutter) / -2);--grid-col-padding: calc(var(--grid-gutter) / 2);overflow:var(--grid-overflow)}.m_dee7bd2f{width:calc(100% + var(--grid-gutter));display:flex;flex-wrap:wrap;justify-content:var(--grid-justify);align-items:var(--grid-align);margin:var(--grid-margin)}.m_96bdd299{--col-flex-grow: 0;--col-offset: 0rem;flex-shrink:0;order:var(--col-order);flex-basis:var(--col-flex-basis);width:var(--col-width);max-width:var(--col-max-width);flex-grow:var(--col-flex-grow);margin-inline-start:var(--col-offset);padding:var(--grid-col-padding)}.m_bcb3f3c2{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=light]) .m_bcb3f3c2{background-color:var(--mark-bg-light)}:where([data-mantine-color-scheme=dark]) .m_bcb3f3c2{background-color:var(--mark-bg-dark)}.m_9e117634{display:block;object-fit:var(--image-object-fit, cover);width:100%;border-radius:var(--image-radius, 0)}@keyframes m_885901b1{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(2.8)}}.m_e5262200{--indicator-size: calc(.625rem * var(--mantine-scale));--indicator-color: var(--mantine-primary-color-filled);position:relative;display:block}.m_e5262200:where([data-inline]){display:inline-block}.m_760d1fb1{position:absolute;top:var(--indicator-top);left:var(--indicator-left);right:var(--indicator-right);bottom:var(--indicator-bottom);transform:translate(var(--indicator-translate-x),var(--indicator-translate-y));min-width:var(--indicator-size);height:var(--indicator-size);border-radius:var(--indicator-radius, 1000rem);z-index:var(--indicator-z-index, 200);display:flex;align-items:center;justify-content:center;font-size:var(--mantine-font-size-xs);background-color:var(--indicator-color);color:var(--indicator-text-color, var(--mantine-color-white));white-space:nowrap}.m_760d1fb1:before{content:"";position:absolute;inset:0;background-color:var(--indicator-color);border-radius:var(--indicator-radius, 1000rem);z-index:-1}.m_760d1fb1:where([data-with-label]){padding-inline:calc(var(--mantine-spacing-xs) / 2)}.m_760d1fb1:where([data-with-border]){border:2px solid var(--mantine-color-body)}.m_760d1fb1[data-processing]:before{animation:m_885901b1 1s linear infinite}.m_dc6f14e2{--kbd-fz-xs: calc(.625rem * var(--mantine-scale));--kbd-fz-sm: calc(.75rem * var(--mantine-scale));--kbd-fz-md: calc(.875rem * var(--mantine-scale));--kbd-fz-lg: calc(1rem * var(--mantine-scale));--kbd-fz-xl: calc(1.25rem * var(--mantine-scale));--kbd-fz: var(--kbd-fz-sm);font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);font-weight:700;font-size:var(--kbd-fz);border-radius:var(--mantine-radius-sm);border:calc(.0625rem * var(--mantine-scale)) solid;border-bottom-width:calc(.1875rem * var(--mantine-scale));unicode-bidi:embed;text-align:center;padding:.12em .45em}:where([data-mantine-color-scheme=light]) .m_dc6f14e2{border-color:var(--mantine-color-gray-3);color:var(--mantine-color-gray-7);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_dc6f14e2{border-color:var(--mantine-color-dark-4);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-6)}.m_abbac491{--list-fz: var(--mantine-font-size-md);--list-lh: var(--mantine-line-height-md);--list-marker-gap: var(--mantine-spacing-lg);list-style-position:outside;font-size:var(--list-fz);line-height:var(--list-lh);margin:0;padding:0;padding-inline-start:var(--list-marker-gap)}.m_abbac491[data-type=none]{--list-marker-gap: 0}.m_abbac491:where([data-with-padding]){padding-inline-start:calc(var(--list-marker-gap) + var(--mantine-spacing-md))}.m_abb6bec2{white-space:normal;line-height:var(--list-lh)}.m_abb6bec2:where([data-with-icon]){list-style:none}.m_abb6bec2:where([data-with-icon]) .m_75cd9f71{--li-direction: row;--li-align: center}.m_abb6bec2:where(:not(:first-of-type)){margin-top:var(--list-spacing, 0)}.m_abb6bec2:where([data-centered]){line-height:1}.m_75cd9f71{display:inline-flex;flex-direction:var(--li-direction, column);align-items:var(--li-align, flex-start);white-space:normal}.m_60f83e5b{display:inline-block;vertical-align:middle;margin-inline-end:var(--mantine-spacing-sm)}.m_6e45937b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:var(--lo-z-index)}.m_e8eb006c{position:relative;z-index:calc(var(--lo-z-index) + 1)}.m_df587f17{z-index:var(--lo-z-index)}.m_dc9b7c9f{padding:calc(.25rem * var(--mantine-scale))}.m_9bfac126{color:var(--mantine-color-dimmed);font-weight:500;font-size:var(--mantine-font-size-xs);padding:calc(var(--mantine-spacing-xs) / 2) var(--mantine-spacing-sm);cursor:default}.m_efdf90cb{margin-top:calc(.25rem * var(--mantine-scale));margin-bottom:calc(.25rem * var(--mantine-scale));border-top:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_efdf90cb{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_efdf90cb{border-color:var(--mantine-color-dark-4)}.m_99ac2aa1{font-size:var(--mantine-font-size-sm);width:100%;padding:calc(var(--mantine-spacing-xs) / 1.5) var(--mantine-spacing-sm);border-radius:var(--popover-radius, var(--mantine-radius-default));color:var(--menu-item-color, var(--mantine-color-text));display:flex;align-items:center;user-select:none}.m_99ac2aa1:where([data-disabled],:disabled){color:var(--mantine-color-disabled-color);opacity:.6;cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_99ac2aa1:where(:hover,:focus):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-gray-1))}:where([data-mantine-color-scheme=dark]) .m_99ac2aa1:where(:hover,:focus):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-dark-4))}.m_99ac2aa1:where([data-sub-menu-item]){padding-inline-end:calc(.3125rem * var(--mantine-scale))}.m_5476e0d3{flex:1}.m_8b75e504{display:flex;justify-content:center;align-items:center}.m_8b75e504:where([data-position=left]){margin-inline-end:var(--mantine-spacing-xs)}.m_8b75e504:where([data-position=right]){margin-inline-start:var(--mantine-spacing-xs)}.m_b85b0bed{transform:rotate(-90deg)}:where([dir=rtl]) .m_b85b0bed{transform:rotate(90deg)}.m_9df02822{--modal-size-xs: calc(20rem * var(--mantine-scale));--modal-size-sm: calc(23.75rem * var(--mantine-scale));--modal-size-md: calc(27.5rem * var(--mantine-scale));--modal-size-lg: calc(38.75rem * var(--mantine-scale));--modal-size-xl: calc(48.75rem * var(--mantine-scale));--modal-size: var(--modal-size-md);--modal-y-offset: 5dvh;--modal-x-offset: 5vw}.m_9df02822[data-full-screen]{--modal-border-radius: 0 !important}.m_9df02822[data-full-screen] .m_54c44539{--modal-content-flex: 0 0 100%;--modal-content-max-height: auto;--modal-content-height: 100dvh}.m_9df02822[data-full-screen] .m_1f958f16{--modal-inner-y-offset: 0;--modal-inner-x-offset: 0}.m_9df02822[data-centered] .m_1f958f16{--modal-inner-align: center}.m_d0e2b9cd{border-start-start-radius:var(--modal-radius, var(--mantine-radius-default));border-start-end-radius:var(--modal-radius, var(--mantine-radius-default))}.m_54c44539{flex:var(--modal-content-flex, 0 0 var(--modal-size));max-width:100%;max-height:var(--modal-content-max-height, calc(100dvh - var(--modal-y-offset) * 2));height:var(--modal-content-height, auto);overflow-y:auto}.m_54c44539[data-full-screen]{border-radius:0}.m_54c44539[data-hidden]{opacity:0!important;pointer-events:none}.m_1f958f16{display:flex;justify-content:center;align-items:var(--modal-inner-align, flex-start);padding-top:var(--modal-inner-y-offset, var(--modal-y-offset));padding-bottom:var(--modal-inner-y-offset, var(--modal-y-offset));padding-inline:var(--modal-inner-x-offset, var(--modal-x-offset))}.m_7cda1cd6{--pill-fz-xs: calc(.625rem * var(--mantine-scale));--pill-fz-sm: calc(.75rem * var(--mantine-scale));--pill-fz-md: calc(.875rem * var(--mantine-scale));--pill-fz-lg: calc(1rem * var(--mantine-scale));--pill-fz-xl: calc(1.125rem * var(--mantine-scale));--pill-height-xs: calc(1.125rem * var(--mantine-scale));--pill-height-sm: calc(1.375rem * var(--mantine-scale));--pill-height-md: calc(1.5625rem * var(--mantine-scale));--pill-height-lg: calc(1.75rem * var(--mantine-scale));--pill-height-xl: calc(2rem * var(--mantine-scale));--pill-fz: var(--pill-fz-sm);--pill-height: var(--pill-height-sm);font-size:var(--pill-fz);flex:0;height:var(--pill-height);padding-inline:.8em;display:inline-flex;align-items:center;border-radius:var(--pill-radius, 1000rem);line-height:1;white-space:nowrap;user-select:none;-webkit-user-select:none;max-width:100%}:where([data-mantine-color-scheme=dark]) .m_7cda1cd6{background-color:var(--mantine-color-dark-7);color:var(--mantine-color-dark-0)}:where([data-mantine-color-scheme=light]) .m_7cda1cd6{color:var(--mantine-color-black)}.m_7cda1cd6:where([data-with-remove]:not(:has(button:disabled))){padding-inline-end:0}.m_7cda1cd6:where([data-disabled],:has(button:disabled)){cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_44da308b{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=light]) .m_44da308b:where([data-disabled],:has(button:disabled)){background-color:var(--mantine-color-disabled)}:where([data-mantine-color-scheme=light]) .m_e3a01f8{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=light]) .m_e3a01f8:where([data-disabled],:has(button:disabled)){background-color:var(--mantine-color-disabled)}.m_1e0e6180{cursor:inherit;overflow:hidden;height:100%;line-height:var(--pill-height);text-overflow:ellipsis}.m_ae386778{color:inherit;font-size:inherit;height:100%;min-height:unset;min-width:2em;width:unset;border-radius:0;padding-inline-start:.1em;padding-inline-end:.3em;flex:0;border-end-end-radius:var(--pill-radius, 50%);border-start-end-radius:var(--pill-radius, 50%)}.m_7cda1cd6[data-disabled]>.m_ae386778,.m_ae386778:disabled{display:none;background-color:transparent;width:.8em;min-width:.8em;padding:0;cursor:not-allowed}.m_7cda1cd6[data-disabled]>.m_ae386778>svg,.m_ae386778:disabled>svg{display:none}.m_ae386778>svg{pointer-events:none}.m_1dcfd90b{--pg-gap-xs: calc(.375rem * var(--mantine-scale));--pg-gap-sm: calc(.5rem * var(--mantine-scale));--pg-gap-md: calc(.625rem * var(--mantine-scale));--pg-gap-lg: calc(.75rem * var(--mantine-scale));--pg-gap-xl: calc(.75rem * var(--mantine-scale));--pg-gap: var(--pg-gap-sm);display:flex;align-items:center;gap:var(--pg-gap);flex-wrap:wrap}.m_45c4369d{background-color:transparent;appearance:none;min-width:calc(6.25rem * var(--mantine-scale));flex:1;border:0;font-size:inherit;height:1.6em;color:inherit;padding:0}.m_45c4369d::placeholder{color:var(--input-placeholder-color);opacity:1}.m_45c4369d:where([data-type=hidden],[data-type=auto]){height:calc(.0625rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));top:0;left:0;pointer-events:none;position:absolute;opacity:0}.m_45c4369d:focus{outline:none}.m_45c4369d:where([data-type=auto]:focus){height:1.6em;visibility:visible;opacity:1;position:static}.m_45c4369d:where([data-pointer]:not([data-disabled],:disabled)){cursor:pointer}.m_45c4369d:where([data-disabled],:disabled){cursor:not-allowed}.m_f0824112{--nl-bg: var(--mantine-primary-color-light);--nl-hover: var(--mantine-primary-color-light-hover);--nl-color: var(--mantine-primary-color-light-color);display:flex;align-items:center;width:100%;padding:8px var(--mantine-spacing-sm);user-select:none}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_f0824112:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_f0824112:hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_f0824112:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_f0824112:active{background-color:var(--mantine-color-dark-6)}}.m_f0824112:where([data-disabled]){opacity:.4;pointer-events:none}.m_f0824112:where([data-active],[aria-current=page]){background-color:var(--nl-bg);color:var(--nl-color)}@media(hover:hover){.m_f0824112:where([data-active],[aria-current=page]):hover{background-color:var(--nl-hover)}}@media(hover:none){.m_f0824112:where([data-active],[aria-current=page]):active{background-color:var(--nl-hover)}}.m_f0824112:where([data-active],[aria-current=page]) .m_57492dcc{--description-opacity: .9;--description-color: var(--nl-color)}.m_690090b5{display:flex;align-items:center;justify-content:center;transition:transform .15s ease}.m_690090b5>svg{display:block}.m_690090b5:where([data-position=left]){margin-inline-end:var(--mantine-spacing-sm)}.m_690090b5:where([data-position=right]){margin-inline-start:var(--mantine-spacing-sm)}.m_690090b5:where([data-rotate]){transform:rotate(90deg)}.m_1f6ac4c4{font-size:var(--mantine-font-size-sm)}.m_f07af9d2{flex:1;overflow:hidden;text-overflow:ellipsis}.m_f07af9d2:where([data-no-wrap]){white-space:nowrap}.m_57492dcc{display:block;font-size:var(--mantine-font-size-xs);opacity:var(--description-opacity, 1);color:var(--description-color, var(--mantine-color-dimmed));overflow:hidden;text-overflow:ellipsis}:where([data-no-wrap]) .m_57492dcc{white-space:nowrap}.m_e17b862f{padding-inline-start:var(--nl-offset, var(--mantine-spacing-lg))}.m_1fd8a00b{transform:rotate(-90deg)}.m_a513464{--notification-radius: var(--mantine-radius-default);--notification-color: var(--mantine-primary-color-filled);overflow:hidden;box-sizing:border-box;position:relative;display:flex;align-items:center;padding-inline-start:calc(1.375rem * var(--mantine-scale));padding-inline-end:var(--mantine-spacing-xs);padding-top:var(--mantine-spacing-xs);padding-bottom:var(--mantine-spacing-xs);border-radius:var(--notification-radius);box-shadow:var(--mantine-shadow-lg)}.m_a513464:before{content:"";display:block;position:absolute;width:calc(.375rem * var(--mantine-scale));top:var(--notification-radius);bottom:var(--notification-radius);inset-inline-start:calc(.25rem * var(--mantine-scale));border-radius:var(--notification-radius);background-color:var(--notification-color)}:where([data-mantine-color-scheme=light]) .m_a513464{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_a513464{background-color:var(--mantine-color-dark-6)}.m_a513464:where([data-with-icon]):before{display:none}:where([data-mantine-color-scheme=light]) .m_a513464:where([data-with-border]){border:1px solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_a513464:where([data-with-border]){border:1px solid var(--mantine-color-dark-4)}.m_a4ceffb{box-sizing:border-box;margin-inline-end:var(--mantine-spacing-md);width:calc(1.75rem * var(--mantine-scale));height:calc(1.75rem * var(--mantine-scale));border-radius:calc(1.75rem * var(--mantine-scale));display:flex;align-items:center;justify-content:center;background-color:var(--notification-color);color:var(--mantine-color-white)}.m_b0920b15{margin-inline-end:var(--mantine-spacing-md)}.m_a49ed24{flex:1;overflow:hidden;margin-inline-end:var(--mantine-spacing-xs)}.m_3feedf16{margin-bottom:calc(.125rem * var(--mantine-scale));overflow:hidden;text-overflow:ellipsis;font-size:var(--mantine-font-size-sm);line-height:var(--mantine-line-height-sm);font-weight:500}:where([data-mantine-color-scheme=light]) .m_3feedf16{color:var(--mantine-color-gray-9)}:where([data-mantine-color-scheme=dark]) .m_3feedf16{color:var(--mantine-color-white)}.m_3d733a3a{font-size:var(--mantine-font-size-sm);line-height:var(--mantine-line-height-sm);overflow:hidden;text-overflow:ellipsis}:where([data-mantine-color-scheme=light]) .m_3d733a3a{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_3d733a3a{color:var(--mantine-color-dark-0)}:where([data-mantine-color-scheme=light]) .m_3d733a3a:where([data-with-title]){color:var(--mantine-color-gray-6)}:where([data-mantine-color-scheme=dark]) .m_3d733a3a:where([data-with-title]){color:var(--mantine-color-dark-2)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_919a4d88:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_919a4d88:hover{background-color:var(--mantine-color-dark-8)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_919a4d88:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_919a4d88:active{background-color:var(--mantine-color-dark-8)}}.m_e2f5cd4e{--ni-right-section-width-xs: calc(1.0625rem * var(--mantine-scale));--ni-right-section-width-sm: calc(1.5rem * var(--mantine-scale));--ni-right-section-width-md: calc(1.6875rem * var(--mantine-scale));--ni-right-section-width-lg: calc(1.9375rem * var(--mantine-scale));--ni-right-section-width-xl: calc(2.125rem * var(--mantine-scale))}.m_95e17d22{--ni-chevron-size-xs: calc(.625rem * var(--mantine-scale));--ni-chevron-size-sm: calc(.875rem * var(--mantine-scale));--ni-chevron-size-md: calc(1rem * var(--mantine-scale));--ni-chevron-size-lg: calc(1.125rem * var(--mantine-scale));--ni-chevron-size-xl: calc(1.25rem * var(--mantine-scale));--ni-chevron-size: var(--ni-chevron-size-sm);display:flex;flex-direction:column;width:100%;height:calc(var(--input-height) - calc(.125rem * var(--mantine-scale)));max-width:calc(var(--ni-chevron-size) * 1.7);margin-inline-start:auto}.m_80b4b171{--control-border: 1px solid var(--input-bd);--control-radius: calc(var(--input-radius) - calc(.0625rem * var(--mantine-scale)));flex:0 0 50%;width:100%;padding:0;height:calc(var(--input-height) / 2 - calc(.0625rem * var(--mantine-scale)));border-inline-start:var(--control-border);display:flex;align-items:center;justify-content:center;color:var(--mantine-color-text);background-color:transparent;cursor:pointer}.m_80b4b171:where(:disabled){background-color:transparent;cursor:not-allowed;opacity:.6;color:var(--mantine-color-disabled-color)}.m_e2f5cd4e[data-error] :where(.m_80b4b171){color:var(--mantine-color-error)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_80b4b171:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:hover{background-color:var(--mantine-color-dark-4)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_80b4b171:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:active{background-color:var(--mantine-color-dark-4)}}.m_80b4b171:where(:first-of-type){border-radius:0;border-start-end-radius:var(--control-radius)}.m_80b4b171:last-of-type{border-radius:0;border-end-end-radius:var(--control-radius)}.m_4addd315{--pagination-control-size-xs: calc(1.375rem * var(--mantine-scale));--pagination-control-size-sm: calc(1.625rem * var(--mantine-scale));--pagination-control-size-md: calc(2rem * var(--mantine-scale));--pagination-control-size-lg: calc(2.375rem * var(--mantine-scale));--pagination-control-size-xl: calc(2.75rem * var(--mantine-scale));--pagination-control-size: var(--pagination-control-size-md);--pagination-control-fz: var(--mantine-font-size-md);--pagination-active-bg: var(--mantine-primary-color-filled)}.m_326d024a{display:flex;align-items:center;justify-content:center;border:calc(.0625rem * var(--mantine-scale)) solid;cursor:pointer;color:var(--mantine-color-text);height:var(--pagination-control-size);min-width:var(--pagination-control-size);font-size:var(--pagination-control-fz);line-height:1;border-radius:var(--pagination-control-radius, var(--mantine-radius-default))}.m_326d024a:where([data-with-padding]){padding:calc(var(--pagination-control-size) / 4)}.m_326d024a:where(:disabled,[data-disabled]){cursor:not-allowed;opacity:.4}:where([data-mantine-color-scheme=light]) .m_326d024a{border-color:var(--mantine-color-gray-4);background-color:var(--mantine-color-white)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_326d024a:hover:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-gray-0)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_326d024a:active:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-gray-0)}}:where([data-mantine-color-scheme=dark]) .m_326d024a{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}@media(hover:hover){:where([data-mantine-color-scheme=dark]) .m_326d024a:hover:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=dark]) .m_326d024a:active:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-dark-5)}}.m_326d024a:where([data-active]){background-color:var(--pagination-active-bg);border-color:var(--pagination-active-bg);color:var(--pagination-active-color, var(--mantine-color-white))}@media(hover:hover){.m_326d024a:where([data-active]):hover{background-color:var(--pagination-active-bg)}}@media(hover:none){.m_326d024a:where([data-active]):active{background-color:var(--pagination-active-bg)}}.m_4ad7767d{height:var(--pagination-control-size);min-width:var(--pagination-control-size);display:flex;align-items:center;justify-content:center;pointer-events:none}.m_f61ca620{--psi-button-size-xs: calc(1.375rem * var(--mantine-scale));--psi-button-size-sm: calc(1.625rem * var(--mantine-scale));--psi-button-size-md: calc(1.75rem * var(--mantine-scale));--psi-button-size-lg: calc(2rem * var(--mantine-scale));--psi-button-size-xl: calc(2.5rem * var(--mantine-scale));--psi-icon-size-xs: calc(.75rem * var(--mantine-scale));--psi-icon-size-sm: calc(.9375rem * var(--mantine-scale));--psi-icon-size-md: calc(1.0625rem * var(--mantine-scale));--psi-icon-size-lg: calc(1.1875rem * var(--mantine-scale));--psi-icon-size-xl: calc(1.3125rem * var(--mantine-scale));--psi-button-size: var(--psi-button-size-sm);--psi-icon-size: var(--psi-icon-size-sm)}.m_ccf8da4c{position:relative;overflow:hidden}.m_f2d85dd2{font-family:var(--mantine-font-family);background-color:transparent;border:0;padding-inline-end:var(--input-padding-inline-end);padding-inline-start:var(--input-padding-inline-start);position:absolute;inset:0;outline:0;font-size:inherit;line-height:var(--mantine-line-height);height:100%;width:100%;color:inherit}.m_ccf8da4c[data-disabled] .m_f2d85dd2,.m_f2d85dd2:disabled{cursor:not-allowed}.m_f2d85dd2::placeholder{color:var(--input-placeholder-color);opacity:1}.m_f2d85dd2::-ms-reveal{display:none}.m_b1072d44{width:var(--psi-button-size);height:var(--psi-button-size);min-width:var(--psi-button-size);min-height:var(--psi-button-size)}.m_b1072d44:disabled{display:none}.m_f1cb205a{--pin-input-size-xs: calc(1.875rem * var(--mantine-scale));--pin-input-size-sm: calc(2.25rem * var(--mantine-scale));--pin-input-size-md: calc(2.625rem * var(--mantine-scale));--pin-input-size-lg: calc(3.125rem * var(--mantine-scale));--pin-input-size-xl: calc(3.75rem * var(--mantine-scale));--pin-input-size: var(--pin-input-size-sm)}.m_cb288ead{width:var(--pin-input-size);height:var(--pin-input-size)}@keyframes m_81a374bd{0%{background-position:0 0}to{background-position:calc(2.5rem * var(--mantine-scale)) 0}}@keyframes m_e0fb7a86{0%{background-position:0 0}to{background-position:0 calc(2.5rem * var(--mantine-scale))}}.m_db6d6462{--progress-radius: var(--mantine-radius-default);--progress-size: var(--progress-size-md);--progress-size-xs: calc(.1875rem * var(--mantine-scale));--progress-size-sm: calc(.3125rem * var(--mantine-scale));--progress-size-md: calc(.5rem * var(--mantine-scale));--progress-size-lg: calc(.75rem * var(--mantine-scale));--progress-size-xl: calc(1rem * var(--mantine-scale));position:relative;height:var(--progress-size);border-radius:var(--progress-radius);overflow:hidden;display:flex}:where([data-mantine-color-scheme=light]) .m_db6d6462{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_db6d6462{background-color:var(--mantine-color-dark-4)}.m_db6d6462:where([data-orientation=vertical]){height:auto;width:var(--progress-size);flex-direction:column-reverse}.m_2242eb65{background-color:var(--progress-section-color);height:100%;width:var(--progress-section-size);display:flex;align-items:center;justify-content:center;overflow:hidden;background-size:calc(1.25rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));transition:width var(--progress-transition-duration, .1s) ease}.m_2242eb65:where([data-striped]){background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.m_2242eb65:where([data-animated]){animation:m_81a374bd 1s linear infinite}.m_2242eb65:where(:last-of-type){border-radius:0;border-start-end-radius:var(--progress-radius);border-end-end-radius:var(--progress-radius)}.m_2242eb65:where(:first-of-type){border-radius:0;border-start-start-radius:var(--progress-radius);border-end-start-radius:var(--progress-radius)}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65{width:100%;height:var(--progress-section-size);transition:height var(--progress-transition-duration, .1s) ease}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where([data-striped]){background-image:linear-gradient(135deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where([data-animated]){animation:m_e0fb7a86 1s linear infinite}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where(:last-of-type){border-radius:0;border-start-start-radius:var(--progress-radius);border-start-end-radius:var(--progress-radius)}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where(:first-of-type){border-radius:0;border-end-start-radius:var(--progress-radius);border-end-end-radius:var(--progress-radius)}.m_91e40b74{color:var(--progress-label-color, var(--mantine-color-white));font-weight:700;user-select:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:min(calc(var(--progress-size) * .65),calc(1.125rem * var(--mantine-scale)));line-height:1;padding-inline:calc(.25rem * var(--mantine-scale))}.m_db6d6462:where([data-orientation=vertical]) .m_91e40b74{writing-mode:vertical-rl}.m_9dc8ae12{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_9dc8ae12 :where(*){cursor:inherit}.m_9dc8ae12:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_9dc8ae12:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_9dc8ae12:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_717d7ff6{--radio-size-xs: calc(1rem * var(--mantine-scale));--radio-size-sm: calc(1.25rem * var(--mantine-scale));--radio-size-md: calc(1.5rem * var(--mantine-scale));--radio-size-lg: calc(1.875rem * var(--mantine-scale));--radio-size-xl: calc(2.25rem * var(--mantine-scale));--radio-icon-size-xs: calc(.375rem * var(--mantine-scale));--radio-icon-size-sm: calc(.5rem * var(--mantine-scale));--radio-icon-size-md: calc(.625rem * var(--mantine-scale));--radio-icon-size-lg: calc(.875rem * var(--mantine-scale));--radio-icon-size-xl: calc(1rem * var(--mantine-scale));--radio-icon-size: var(--radio-icon-size-sm);--radio-size: var(--radio-size-sm);--radio-color: var(--mantine-primary-color-filled);--radio-icon-color: var(--mantine-color-white);position:relative;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--radio-size);min-width:var(--radio-size);height:var(--radio-size);min-height:var(--radio-size);border-radius:var(--radio-radius, 10000px);transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_717d7ff6{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_717d7ff6{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_717d7ff6[data-indeterminate],.m_717d7ff6[data-checked]{background-color:var(--radio-color);border-color:var(--radio-color)}.m_717d7ff6[data-indeterminate]>.m_3e4da632,.m_717d7ff6[data-checked]>.m_3e4da632{opacity:1;transform:none;color:var(--radio-icon-color)}.m_717d7ff6[data-disabled]{cursor:not-allowed;background-color:var(--mantine-color-disabled);border-color:var(--mantine-color-disabled-border)}.m_717d7ff6[data-disabled][data-checked]>.m_3e4da632{color:var(--mantine-color-disabled-color)}.m_2980836c[data-indeterminate]:not([data-disabled]),.m_2980836c[data-checked]:not([data-disabled]){background-color:transparent;border-color:var(--radio-color)}.m_2980836c[data-indeterminate]:not([data-disabled])>.m_3e4da632,.m_2980836c[data-checked]:not([data-disabled])>.m_3e4da632{color:var(--radio-color);opacity:1;transform:none}.m_3e4da632{display:block;width:var(--radio-icon-size);height:var(--radio-icon-size);color:transparent;pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:1;transition:transform .1s ease,opacity .1s ease}.m_f3f1af94{--radio-size-xs: calc(1rem * var(--mantine-scale));--radio-size-sm: calc(1.25rem * var(--mantine-scale));--radio-size-md: calc(1.5rem * var(--mantine-scale));--radio-size-lg: calc(1.875rem * var(--mantine-scale));--radio-size-xl: calc(2.25rem * var(--mantine-scale));--radio-size: var(--radio-size-sm);--radio-icon-size-xs: calc(.375rem * var(--mantine-scale));--radio-icon-size-sm: calc(.5rem * var(--mantine-scale));--radio-icon-size-md: calc(.625rem * var(--mantine-scale));--radio-icon-size-lg: calc(.875rem * var(--mantine-scale));--radio-icon-size-xl: calc(1rem * var(--mantine-scale));--radio-icon-size: var(--radio-icon-size-sm);--radio-icon-color: var(--mantine-color-white)}.m_89c4f5e4{position:relative;width:var(--radio-size);height:var(--radio-size);order:1}.m_89c4f5e4:where([data-label-position=left]){order:2}.m_f3ed6b2b{color:var(--radio-icon-color);opacity:var(--radio-icon-opacity, 0);transform:var(--radio-icon-transform, scale(.2) translateY(calc(.625rem * var(--mantine-scale))));transition:opacity .1s ease,transform .2s ease;pointer-events:none;width:var(--radio-icon-size);height:var(--radio-icon-size);position:absolute;top:calc(50% - var(--radio-icon-size) / 2);left:calc(50% - var(--radio-icon-size) / 2)}.m_8a3dbb89{border:calc(.0625rem * var(--mantine-scale)) solid;position:relative;appearance:none;width:var(--radio-size);height:var(--radio-size);border-radius:var(--radio-radius, var(--radio-size));margin:0;display:flex;align-items:center;justify-content:center;transition-property:background-color,border-color;transition-timing-function:ease;transition-duration:.1s;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent}:where([data-mantine-color-scheme=light]) .m_8a3dbb89{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_8a3dbb89{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_8a3dbb89:checked{background-color:var(--radio-color, var(--mantine-primary-color-filled));border-color:var(--radio-color, var(--mantine-primary-color-filled))}.m_8a3dbb89:checked+.m_f3ed6b2b{--radio-icon-opacity: 1;--radio-icon-transform: scale(1)}.m_8a3dbb89:disabled{cursor:not-allowed;background-color:var(--mantine-color-disabled);border-color:var(--mantine-color-disabled-border)}.m_8a3dbb89:disabled+.m_f3ed6b2b{--radio-icon-color: var(--mantine-color-disabled-color)}.m_8a3dbb89:where([data-error]){border-color:var(--mantine-color-error)}.m_1bfe9d39+.m_f3ed6b2b{--radio-icon-color: var(--radio-color)}.m_1bfe9d39:checked:not(:disabled){background-color:transparent;border-color:var(--radio-color)}.m_1bfe9d39:checked:not(:disabled)+.m_f3ed6b2b{--radio-icon-color: var(--radio-color);--radio-icon-opacity: 1;--radio-icon-transform: none}.m_f8d312f2{--rating-size-xs: calc(.875rem * var(--mantine-scale));--rating-size-sm: calc(1.125rem * var(--mantine-scale));--rating-size-md: calc(1.25rem * var(--mantine-scale));--rating-size-lg: calc(1.75rem * var(--mantine-scale));--rating-size-xl: calc(2rem * var(--mantine-scale));display:flex;width:max-content}.m_f8d312f2:where(:has(input:disabled)){pointer-events:none}.m_61734bb7{position:relative;transition:transform .1s ease}.m_61734bb7:where([data-active]){z-index:1;transform:scale(1.1)}.m_5662a89a{width:var(--rating-size);height:var(--rating-size);display:block}:where([data-mantine-color-scheme=light]) .m_5662a89a{fill:var(--mantine-color-gray-3);stroke:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_5662a89a{fill:var(--mantine-color-dark-3);stroke:var(--mantine-color-dark-3)}.m_5662a89a:where([data-filled]){fill:var(--rating-color);stroke:var(--rating-color)}.m_211007ba{height:0;width:0;position:absolute;overflow:hidden;white-space:nowrap;opacity:0;-webkit-tap-highlight-color:transparent}.m_211007ba:focus-visible+label{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_21342ee4{display:block;cursor:pointer;position:absolute;top:0;left:0;z-index:var(--rating-item-z-index, 0);-webkit-tap-highlight-color:transparent}.m_21342ee4:where([data-read-only]){cursor:default}.m_21342ee4:where(:last-of-type){position:relative}.m_fae05d6a{clip-path:var(--rating-symbol-clip-path)}.m_1b3c8819{--tooltip-radius: var(--mantine-radius-default);position:absolute;padding:calc(var(--mantine-spacing-xs) / 2) var(--mantine-spacing-xs);pointer-events:none;font-size:var(--mantine-font-size-sm);white-space:nowrap;border-radius:var(--tooltip-radius)}:where([data-mantine-color-scheme=light]) .m_1b3c8819{background-color:var(--tooltip-bg, var(--mantine-color-gray-9));color:var(--tooltip-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_1b3c8819{background-color:var(--tooltip-bg, var(--mantine-color-gray-2));color:var(--tooltip-color, var(--mantine-color-black))}.m_1b3c8819:where([data-multiline]){white-space:normal}.m_1b3c8819:where([data-fixed]){position:fixed}.m_f898399f{background-color:inherit;border:0;z-index:1}.m_b32e4812{position:relative;width:var(--rp-size);height:var(--rp-size);min-width:var(--rp-size);min-height:var(--rp-size);--rp-transition-duration: 0ms}.m_d43b5134{width:var(--rp-size);height:var(--rp-size);min-width:var(--rp-size);min-height:var(--rp-size);transform:rotate(-90deg)}.m_b1ca1fbf{stroke:var(--curve-color, var(--rp-curve-root-color));transition:stroke-dashoffset var(--rp-transition-duration) ease,stroke-dasharray var(--rp-transition-duration) ease,stroke var(--rp-transition-duration)}[data-mantine-color-scheme=light] .m_b1ca1fbf{--rp-curve-root-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_b1ca1fbf{--rp-curve-root-color: var(--mantine-color-dark-4)}.m_b23f9dc4{position:absolute;top:50%;transform:translateY(-50%);inset-inline:var(--rp-label-offset)}.m_cf365364{--sc-padding-xs: calc(.125rem * var(--mantine-scale)) calc(.375rem * var(--mantine-scale));--sc-padding-sm: calc(.1875rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--sc-padding-md: calc(.25rem * var(--mantine-scale)) calc(.875rem * var(--mantine-scale));--sc-padding-lg: calc(.4375rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--sc-padding-xl: calc(.625rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));--sc-transition-duration: .2s;--sc-padding: var(--sc-padding-sm);--sc-transition-timing-function: ease;--sc-font-size: var(--mantine-font-size-sm);position:relative;display:inline-flex;flex-direction:row;width:auto;border-radius:var(--sc-radius, var(--mantine-radius-default));overflow:hidden;padding:calc(.25rem * var(--mantine-scale))}.m_cf365364:where([data-full-width]){display:flex}.m_cf365364:where([data-orientation=vertical]){display:flex;flex-direction:column;width:max-content}.m_cf365364:where([data-orientation=vertical]):where([data-full-width]){width:auto}:where([data-mantine-color-scheme=light]) .m_cf365364{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_cf365364{background-color:var(--mantine-color-dark-8)}.m_9e182ccd{position:absolute;display:block;z-index:1;border-radius:var(--sc-radius, var(--mantine-radius-default))}:where([data-mantine-color-scheme=light]) .m_9e182ccd{box-shadow:var(--sc-shadow, none);background-color:var(--sc-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_9e182ccd{box-shadow:none;background-color:var(--sc-color, var(--mantine-color-dark-5))}.m_1738fcb2{-webkit-tap-highlight-color:transparent;font-weight:500;display:block;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;border-radius:var(--sc-radius, var(--mantine-radius-default));font-size:var(--sc-font-size);padding:var(--sc-padding);transition:color var(--sc-transition-duration) var(--sc-transition-timing-function);cursor:pointer;outline:var(--segmented-control-outline, none)}:where([data-mantine-color-scheme=light]) .m_1738fcb2{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2{color:var(--mantine-color-dark-1)}.m_1738fcb2:where([data-read-only]){cursor:default}fieldset:disabled .m_1738fcb2,.m_1738fcb2:where([data-disabled]){cursor:not-allowed;color:var(--mantine-color-disabled-color)}:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-active]){color:var(--sc-label-color, var(--mantine-color-black))}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-active]){color:var(--sc-label-color, var(--mantine-color-white))}.m_cf365364:where([data-initialized]) .m_1738fcb2:where([data-active]):before{display:none}.m_1738fcb2:where([data-active]):before{content:"";inset:0;z-index:0;position:absolute;border-radius:var(--sc-radius, var(--mantine-radius-default))}:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-active]):before{box-shadow:var(--sc-shadow, none);background-color:var(--sc-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-active]):before{box-shadow:none;background-color:var(--sc-color, var(--mantine-color-dark-5))}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):hover{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):hover{color:var(--mantine-color-white)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):active{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):active{color:var(--mantine-color-white)}}@media(hover:hover){fieldset:disabled .m_1738fcb2:hover{color:var(--mantine-color-disabled-color)!important}}@media(hover:none){fieldset:disabled .m_1738fcb2:active{color:var(--mantine-color-disabled-color)!important}}.m_1714d588{height:0;width:0;position:absolute;overflow:hidden;white-space:nowrap;opacity:0}.m_1714d588[data-focus-ring=auto]:focus:focus-visible+.m_1738fcb2{--segmented-control-outline: 2px solid var(--mantine-primary-color-filled)}.m_1714d588[data-focus-ring=always]:focus+.m_1738fcb2{--segmented-control-outline: 2px solid var(--mantine-primary-color-filled)}.m_69686b9b{position:relative;flex:1;z-index:2;transition:border-color var(--sc-transition-duration) var(--sc-transition-timing-function)}.m_cf365364[data-with-items-borders] :where(.m_69686b9b):before{content:"";position:absolute;top:0;bottom:0;inset-inline-start:0;background-color:var(--separator-color);width:calc(.0625rem * var(--mantine-scale));transition:background-color var(--sc-transition-duration) var(--sc-transition-timing-function)}.m_69686b9b[data-orientation=vertical]:before{top:0;inset-inline:0;bottom:auto;height:calc(.0625rem * var(--mantine-scale));width:auto}:where([data-mantine-color-scheme=light]) .m_69686b9b{--separator-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_69686b9b{--separator-color: var(--mantine-color-dark-4)}.m_69686b9b:first-of-type:before{--separator-color: transparent}[data-mantine-color-scheme] .m_69686b9b[data-active]:before,[data-mantine-color-scheme] .m_69686b9b[data-active]+.m_69686b9b:before{--separator-color: transparent}.m_78882f40{position:relative;z-index:2}.m_fa528724{--scp-filled-segment-color: var(--mantine-primary-color-filled);--scp-transition-duration: 0ms;--scp-thickness: calc(.625rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_fa528724{--scp-empty-segment-color: var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa528724{--scp-empty-segment-color: var(--mantine-color-dark-4)}.m_fa528724{position:relative;width:fit-content}.m_62e9e7e2{display:block;transform:var(--scp-rotation);overflow:hidden}.m_c573fb6f{transition:stroke-dashoffset var(--scp-transition-duration) ease,stroke-dasharray var(--scp-transition-duration) ease,stroke var(--scp-transition-duration)}.m_4fa340f2{position:absolute;margin:0;padding:0;inset-inline:0;text-align:center;z-index:1}.m_4fa340f2:where([data-position=bottom]){bottom:0;padding-inline:calc(var(--scp-thickness) * 2)}.m_4fa340f2:where([data-position=bottom]):where([data-orientation=down]){bottom:auto;top:0}.m_4fa340f2:where([data-position=center]){top:50%;padding-inline:calc(var(--scp-thickness) * 3)}.m_925c2d2c{container:simple-grid / inline-size}.m_2415a157{display:grid;grid-template-columns:repeat(var(--sg-cols),minmax(0,1fr));gap:var(--sg-spacing-y) var(--sg-spacing-x)}@keyframes m_299c329c{0%,to{opacity:.4}50%{opacity:1}}.m_18320242{height:var(--skeleton-height, auto);width:var(--skeleton-width, 100%);border-radius:var(--skeleton-radius, var(--mantine-radius-default));position:relative;transform:translateZ(0);-webkit-transform:translateZ(0)}.m_18320242:where([data-animate]):after{animation:m_299c329c 1.5s linear infinite}.m_18320242:where([data-visible]){overflow:hidden}.m_18320242:where([data-visible]):before{position:absolute;content:"";inset:0;z-index:10;background-color:var(--mantine-color-body)}.m_18320242:where([data-visible]):after{position:absolute;content:"";inset:0;z-index:11}:where([data-mantine-color-scheme=light]) .m_18320242:where([data-visible]):after{background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_18320242:where([data-visible]):after{background-color:var(--mantine-color-dark-4)}.m_dd36362e{--slider-size-xs: calc(.25rem * var(--mantine-scale));--slider-size-sm: calc(.375rem * var(--mantine-scale));--slider-size-md: calc(.5rem * var(--mantine-scale));--slider-size-lg: calc(.625rem * var(--mantine-scale));--slider-size-xl: calc(.75rem * var(--mantine-scale));--slider-size: var(--slider-size-md);--slider-radius: calc(62.5rem * var(--mantine-scale));--slider-color: var(--mantine-primary-color-filled);--slider-track-disabled-bg: var(--mantine-color-disabled);-webkit-tap-highlight-color:transparent;outline:none;height:calc(var(--slider-size) * 2);padding-inline:var(--slider-size);display:flex;flex-direction:column;align-items:center;touch-action:none;position:relative}[data-mantine-color-scheme=light] .m_dd36362e{--slider-track-bg: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_dd36362e{--slider-track-bg: var(--mantine-color-dark-4)}.m_c9357328{position:absolute;top:calc(-2.25rem * var(--mantine-scale));font-size:var(--mantine-font-size-xs);color:var(--mantine-color-white);padding:calc(var(--mantine-spacing-xs) / 2);border-radius:var(--mantine-radius-sm);white-space:nowrap;pointer-events:none;user-select:none;touch-action:none}:where([data-mantine-color-scheme=light]) .m_c9357328{background-color:var(--mantine-color-gray-9)}:where([data-mantine-color-scheme=dark]) .m_c9357328{background-color:var(--mantine-color-dark-4)}.m_c9a9a60a{position:absolute;display:flex;height:var(--slider-thumb-size);width:var(--slider-thumb-size);border:calc(.25rem * var(--mantine-scale)) solid;transform:translate(-50%,-50%);top:50%;cursor:pointer;border-radius:var(--slider-radius);align-items:center;justify-content:center;transition:box-shadow .1s ease,transform .1s ease;z-index:3;user-select:none;touch-action:none;outline-offset:calc(.125rem * var(--mantine-scale));left:var(--slider-thumb-offset)}:where([dir=rtl]) .m_c9a9a60a{left:auto;right:calc(var(--slider-thumb-offset) - var(--slider-thumb-size))}fieldset:disabled .m_c9a9a60a,.m_c9a9a60a:where([data-disabled]){display:none}.m_c9a9a60a:where([data-dragging]){transform:translate(-50%,-50%) scale(1.05);box-shadow:var(--mantine-shadow-sm)}:where([data-mantine-color-scheme=light]) .m_c9a9a60a{color:var(--slider-color);border-color:var(--slider-color);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_c9a9a60a{color:var(--mantine-color-white);border-color:var(--mantine-color-white);background-color:var(--slider-color)}.m_a8645c2{display:flex;align-items:center;width:100%;height:calc(var(--slider-size) * 2);cursor:pointer}fieldset:disabled .m_a8645c2,.m_a8645c2:where([data-disabled]){cursor:not-allowed}.m_c9ade57f{position:relative;width:100%;height:var(--slider-size)}.m_c9ade57f:where([data-inverted]:not([data-disabled])){--track-bg: var(--slider-color)}fieldset:disabled .m_c9ade57f:where([data-inverted]),.m_c9ade57f:where([data-inverted][data-disabled]){--track-bg: var(--slider-track-disabled-bg)}.m_c9ade57f:before{content:"";position:absolute;top:0;bottom:0;border-radius:var(--slider-radius);inset-inline:calc(var(--slider-size) * -1);background-color:var(--track-bg, var(--slider-track-bg));z-index:0}.m_38aeed47{position:absolute;z-index:1;top:0;bottom:0;background-color:var(--slider-color);border-radius:var(--slider-radius);width:var(--slider-bar-width);inset-inline-start:var(--slider-bar-offset)}.m_38aeed47:where([data-inverted]){background-color:var(--slider-track-bg)}fieldset:disabled .m_38aeed47:where(:not([data-inverted])),.m_38aeed47:where([data-disabled]:not([data-inverted])){background-color:var(--mantine-color-disabled-color)}.m_b7b0423a{position:absolute;inset-inline-start:calc(var(--mark-offset) - var(--slider-size) / 2);top:0;z-index:2;height:0;pointer-events:none}.m_dd33bc19{border:calc(.125rem * var(--mantine-scale)) solid;height:var(--slider-size);width:var(--slider-size);border-radius:calc(62.5rem * var(--mantine-scale));background-color:var(--mantine-color-white);pointer-events:none}:where([data-mantine-color-scheme=light]) .m_dd33bc19{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_dd33bc19{border-color:var(--mantine-color-dark-4)}.m_dd33bc19:where([data-filled]){border-color:var(--slider-color)}.m_dd33bc19:where([data-filled]):where([data-disabled]){border-color:var(--mantine-color-disabled-border)}.m_68c77a5b{transform:translate(calc(-50% + var(--slider-size) / 2),calc(var(--mantine-spacing-xs) / 2));font-size:var(--mantine-font-size-sm);white-space:nowrap;cursor:pointer;user-select:none}:where([data-mantine-color-scheme=light]) .m_68c77a5b{color:var(--mantine-color-gray-6)}:where([data-mantine-color-scheme=dark]) .m_68c77a5b{color:var(--mantine-color-dark-2)}.m_559cce2d{position:relative}.m_559cce2d:where([data-has-spoiler]){margin-bottom:calc(1.5rem * var(--mantine-scale))}.m_b912df4e{display:flex;flex-direction:column;overflow:hidden;transition:max-height var(--spoiler-transition-duration, .2s) ease}.m_b9131032{position:absolute;inset-inline-start:0;top:100%;height:calc(1.5rem * var(--mantine-scale))}.m_6d731127{display:flex;flex-direction:column;align-items:var(--stack-align, stretch);justify-content:var(--stack-justify, flex-start);gap:var(--stack-gap, var(--mantine-spacing-md))}.m_cbb4ea7e{--stepper-icon-size-xs: calc(2.125rem * var(--mantine-scale));--stepper-icon-size-sm: calc(2.25rem * var(--mantine-scale));--stepper-icon-size-md: calc(2.625rem * var(--mantine-scale));--stepper-icon-size-lg: calc(3rem * var(--mantine-scale));--stepper-icon-size-xl: calc(3.25rem * var(--mantine-scale));--stepper-icon-size: var(--stepper-icon-size-md);--stepper-color: var(--mantine-primary-color-filled);--stepper-content-padding: var(--mantine-spacing-md);--stepper-spacing: var(--mantine-spacing-md);--stepper-radius: calc(62.5rem * var(--mantine-scale));--stepper-fz: var(--mantine-font-size-md);--stepper-outline-thickness: calc(.125rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_cbb4ea7e{--stepper-outline-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_cbb4ea7e{--stepper-outline-color: var(--mantine-color-dark-5)}.m_aaf89d0b{display:flex;flex-wrap:nowrap;align-items:center}.m_aaf89d0b:where([data-wrap]){flex-wrap:wrap;gap:var(--mantine-spacing-md) 0}.m_aaf89d0b:where([data-orientation=vertical]){flex-direction:column}.m_aaf89d0b:where([data-orientation=vertical]):where([data-icon-position=left]){align-items:flex-start}.m_aaf89d0b:where([data-orientation=vertical]):where([data-icon-position=right]){align-items:flex-end}.m_aaf89d0b:where([data-orientation=horizontal]){flex-direction:row}.m_2a371ac9{transition:background-color .15s ease;flex:1;height:var(--stepper-outline-thickness);margin-inline:var(--mantine-spacing-md);background-color:var(--stepper-outline-color)}.m_2a371ac9:where([data-active]){background-color:var(--stepper-color)}.m_78da155d{padding-top:var(--stepper-content-padding)}.m_cbb57068{--step-color: var(--stepper-color);display:flex;cursor:default}.m_cbb57068:where([data-allow-click]){cursor:pointer}.m_cbb57068:where([data-icon-position=left]){flex-direction:row}.m_cbb57068:where([data-icon-position=right]){flex-direction:row-reverse}.m_f56b1e2c{align-items:center}.m_833edb7e{--separator-spacing: calc(var(--mantine-spacing-xs) / 2);justify-content:flex-start;min-height:calc(var(--stepper-icon-size) + var(--mantine-spacing-xl) + var(--separator-spacing));margin-top:var(--separator-spacing);overflow:hidden}.m_833edb7e:where(:first-of-type){margin-top:0}.m_833edb7e:where(:last-of-type){min-height:auto}.m_833edb7e:where(:last-of-type) .m_6496b3f3{display:none}.m_818e70b{position:relative}.m_6496b3f3{top:calc(var(--stepper-icon-size) + var(--separator-spacing));inset-inline-start:calc(var(--stepper-icon-size) / 2);height:100vh;position:absolute;border-inline-start:var(--stepper-outline-thickness) solid var(--stepper-outline-color)}.m_6496b3f3:where([data-active]){border-color:var(--stepper-color)}.m_1959ad01{height:var(--stepper-icon-size);width:var(--stepper-icon-size);min-height:var(--stepper-icon-size);min-width:var(--stepper-icon-size);border-radius:var(--stepper-radius);font-size:var(--stepper-fz);display:flex;align-items:center;justify-content:center;position:relative;font-weight:700;transition:background-color .15s ease,border-color .15s ease;border:var(--stepper-outline-thickness) solid var(--stepper-outline-color);background-color:var(--stepper-outline-color)}:where([data-mantine-color-scheme=light]) .m_1959ad01{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1959ad01{color:var(--mantine-color-dark-1)}.m_1959ad01:where([data-progress]){border-color:var(--step-color)}.m_1959ad01:where([data-completed]){color:var(--stepper-icon-color, var(--mantine-color-white));background-color:var(--step-color);border-color:var(--step-color)}.m_a79331dc{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--stepper-icon-color, var(--mantine-color-white))}.m_1956aa2a{display:flex;flex-direction:column}.m_1956aa2a:where([data-icon-position=left]){margin-inline-start:var(--mantine-spacing-sm)}.m_1956aa2a:where([data-icon-position=right]){text-align:right;margin-inline-end:var(--mantine-spacing-sm)}:where([dir=rtl]) .m_1956aa2a:where([data-icon-position=right]){text-align:left}.m_12051f6c{font-weight:500;font-size:var(--stepper-fz);line-height:1}.m_164eea74{margin-top:calc(var(--stepper-spacing) / 3);margin-bottom:calc(var(--stepper-spacing) / 3);font-size:calc(var(--stepper-fz) - calc(.125rem * var(--mantine-scale)));line-height:1;color:var(--mantine-color-dimmed)}.m_5f93f3bb{--switch-height-xs: calc(1rem * var(--mantine-scale));--switch-height-sm: calc(1.25rem * var(--mantine-scale));--switch-height-md: calc(1.5rem * var(--mantine-scale));--switch-height-lg: calc(1.875rem * var(--mantine-scale));--switch-height-xl: calc(2.25rem * var(--mantine-scale));--switch-width-xs: calc(2rem * var(--mantine-scale));--switch-width-sm: calc(2.375rem * var(--mantine-scale));--switch-width-md: calc(2.875rem * var(--mantine-scale));--switch-width-lg: calc(3.5rem * var(--mantine-scale));--switch-width-xl: calc(4.5rem * var(--mantine-scale));--switch-thumb-size-xs: calc(.75rem * var(--mantine-scale));--switch-thumb-size-sm: calc(.875rem * var(--mantine-scale));--switch-thumb-size-md: calc(1.125rem * var(--mantine-scale));--switch-thumb-size-lg: calc(1.375rem * var(--mantine-scale));--switch-thumb-size-xl: calc(1.75rem * var(--mantine-scale));--switch-label-font-size-xs: calc(.3125rem * var(--mantine-scale));--switch-label-font-size-sm: calc(.375rem * var(--mantine-scale));--switch-label-font-size-md: calc(.4375rem * var(--mantine-scale));--switch-label-font-size-lg: calc(.5625rem * var(--mantine-scale));--switch-label-font-size-xl: calc(.6875rem * var(--mantine-scale));--switch-track-label-padding-xs: calc(.125rem * var(--mantine-scale));--switch-track-label-padding-sm: calc(.15625rem * var(--mantine-scale));--switch-track-label-padding-md: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-lg: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-xl: calc(.21875rem * var(--mantine-scale));--switch-height: var(--switch-height-sm);--switch-width: var(--switch-width-sm);--switch-thumb-size: var(--switch-thumb-size-sm);--switch-label-font-size: var(--switch-label-font-size-sm);--switch-track-label-padding: var(--switch-track-label-padding-sm);--switch-radius: calc(62.5rem * var(--mantine-scale));--switch-color: var(--mantine-primary-color-filled);--switch-disabled-color: var(--mantine-color-disabled);position:relative}.m_926b4011{height:0;width:0;opacity:0;margin:0;padding:0;position:absolute;overflow:hidden;white-space:nowrap}.m_9307d992{-webkit-tap-highlight-color:transparent;cursor:var(--switch-cursor, var(--mantine-cursor-type));overflow:hidden;position:relative;border-radius:var(--switch-radius);background-color:var(--switch-bg);height:var(--switch-height);min-width:var(--switch-width);margin:0;transition:background-color .15s ease,border-color .15s ease;appearance:none;display:flex;align-items:center;font-size:var(--switch-label-font-size);font-weight:600;order:var(--switch-order, 1);user-select:none;z-index:0;line-height:0;color:var(--switch-text-color)}.m_9307d992:where([data-without-labels]){width:var(--switch-width)}.m_926b4011:focus-visible+.m_9307d992{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_926b4011:checked+.m_9307d992{--switch-bg: var(--switch-color);--switch-text-color: var(--mantine-color-white)}.m_926b4011:disabled+.m_9307d992,.m_926b4011[data-disabled]+.m_9307d992{--switch-bg: var(--switch-disabled-color);--switch-cursor: not-allowed}[data-mantine-color-scheme=light] .m_9307d992{--switch-bg: var(--mantine-color-gray-3);--switch-text-color: var(--mantine-color-gray-6)}[data-mantine-color-scheme=dark] .m_9307d992{--switch-bg: var(--mantine-color-dark-5);--switch-text-color: var(--mantine-color-dark-1)}.m_9307d992[data-label-position=left]{--switch-order: 2}.m_93039a1d{position:absolute;z-index:1;border-radius:var(--switch-radius);display:flex;background-color:var(--switch-thumb-bg, var(--mantine-color-white));height:var(--switch-thumb-size);width:var(--switch-thumb-size);inset-inline-start:var(--switch-thumb-start, var(--switch-track-label-padding));transition:inset-inline-start .15s ease}.m_93039a1d:where([data-with-thumb-indicator]):before{content:"";width:40%;height:40%;background-color:var(--switch-bg);position:absolute;border-radius:var(--switch-radius);top:50%;left:50%;transform:translate(-50%,-50%)}.m_93039a1d>*{margin:auto}.m_926b4011:checked+*>.m_93039a1d{--switch-thumb-start: calc(100% - var(--switch-thumb-size) - var(--switch-track-label-padding))}.m_926b4011:disabled+*>.m_93039a1d,.m_926b4011[data-disabled]+*>.m_93039a1d{--switch-thumb-bg: var(--switch-thumb-bg-disabled)}[data-mantine-color-scheme=light] .m_93039a1d{--switch-thumb-bg-disabled: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_93039a1d{--switch-thumb-bg-disabled: var(--mantine-color-dark-3)}.m_8277e082{height:100%;display:grid;place-content:center;min-width:calc(var(--switch-width) - var(--switch-thumb-size));padding-inline:var(--switch-track-label-padding);margin-inline-start:calc(var(--switch-thumb-size) + var(--switch-track-label-padding));transition:margin .15s ease}.m_926b4011:checked+*>.m_8277e082{margin-inline-end:calc(var(--switch-thumb-size) + var(--switch-track-label-padding));margin-inline-start:0}.m_b23fa0ef{width:100%;border-collapse:collapse;border-spacing:0;line-height:var(--mantine-line-height);font-size:var(--mantine-font-size-sm);table-layout:var(--table-layout, auto);caption-side:var(--table-caption-side, bottom);border:none}:where([data-mantine-color-scheme=light]) .m_b23fa0ef{--table-hover-color: var(--mantine-color-gray-1);--table-striped-color: var(--mantine-color-gray-0);--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_b23fa0ef{--table-hover-color: var(--mantine-color-dark-5);--table-striped-color: var(--mantine-color-dark-6);--table-border-color: var(--mantine-color-dark-4)}.m_b23fa0ef:where([data-with-table-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_b23fa0ef:where([data-tabular-nums]){font-variant-numeric:tabular-nums}.m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){font-weight:500}:where([data-mantine-color-scheme=light]) .m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){background-color:var(--mantine-color-dark-6)}.m_4e7aa4f3{text-align:left}:where([dir=rtl]) .m_4e7aa4f3{text-align:right}.m_4e7aa4fd{border-bottom:none;background-color:transparent}@media(hover:hover){.m_4e7aa4fd:hover:where([data-hover]){background-color:var(--tr-hover-bg)}}@media(hover:none){.m_4e7aa4fd:active:where([data-hover]){background-color:var(--tr-hover-bg)}}.m_4e7aa4fd:where([data-with-row-border]){border-bottom:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_4e7aa4ef,.m_4e7aa4f3{padding:var(--table-vertical-spacing) var(--table-horizontal-spacing, var(--mantine-spacing-xs))}.m_4e7aa4ef:where([data-with-column-border]:not(:first-child)),.m_4e7aa4f3:where([data-with-column-border]:not(:first-child)){border-inline-start:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_4e7aa4ef:where([data-with-column-border]:not(:last-child)),.m_4e7aa4f3:where([data-with-column-border]:not(:last-child)){border-inline-end:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_b2404537>:where(tr):where([data-with-row-border]:last-of-type){border-bottom:none}.m_b2404537>:where(tr):where([data-striped=odd]:nth-of-type(odd)){background-color:var(--table-striped-color)}.m_b2404537>:where(tr):where([data-striped=even]:nth-of-type(2n)){background-color:var(--table-striped-color)}.m_b2404537>:where(tr)[data-hover]{--tr-hover-bg: var(--table-highlight-on-hover-color, var(--table-hover-color))}.m_b242d975{top:var(--table-sticky-header-offset, 0);z-index:3}.m_b242d975:where([data-sticky]){position:sticky}.m_b242d975:where([data-sticky]) :where(.m_4e7aa4f3){position:sticky;top:var(--table-sticky-header-offset, 0);background-color:var(--mantine-color-body)}:where([data-with-table-border]) .m_b242d975[data-sticky]{position:sticky;top:var(--table-sticky-header-offset, 0);z-index:4;border-top:none}:where([data-with-table-border]) .m_b242d975[data-sticky]:before{content:"";display:block;position:absolute;left:0;top:calc(-.03125rem * var(--mantine-scale));width:100%;height:calc(.0625rem * var(--mantine-scale));background-color:var(--table-border-color);z-index:5}:where([data-with-table-border]) .m_b242d975[data-sticky] .m_4e7aa4f3:first-child{border-top:none}.m_9e5a3ac7{color:var(--mantine-color-dimmed)}.m_9e5a3ac7:where([data-side=top]){margin-bottom:var(--mantine-spacing-xs)}.m_9e5a3ac7:where([data-side=bottom]){margin-top:var(--mantine-spacing-xs)}.m_a100c15{overflow-x:var(--table-overflow)}.m_62259741{min-width:var(--table-min-width);max-height:var(--table-max-height)}.m_bcaa9990{display:flex;flex-direction:column;--toc-depth-offset: .8em}.m_375a65ef{display:block;padding:.3em .8em;font-size:var(--toc-size, var(--mantine-font-size-md));border-radius:var(--toc-radius, var(--mantine-radius-default));padding-left:max(calc(var(--depth-offset) * var(--toc-depth-offset)),.8em)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_375a65ef:where(:hover):where(:not([data-variant=none])){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_375a65ef:where(:hover):where(:not([data-variant=none])){background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_375a65ef:where(:active):where(:not([data-variant=none])){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_375a65ef:where(:active):where(:not([data-variant=none])){background-color:var(--mantine-color-dark-5)}}.m_375a65ef:where([data-active]){background-color:var(--toc-bg);color:var(--toc-color)}[data-mantine-color-scheme=light] .m_89d60db1{--tab-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_89d60db1{--tab-border-color: var(--mantine-color-dark-4)}.m_89d60db1{display:var(--tabs-display);flex-direction:var(--tabs-flex-direction);--tabs-list-direction: row;--tabs-panel-grow: unset;--tabs-display: block;--tabs-flex-direction: row;--tabs-list-border-width: 0;--tabs-list-border-size: 0 0 var(--tabs-list-border-width) 0;--tabs-list-gap: unset;--tabs-list-line-bottom: 0;--tabs-list-line-top: unset;--tabs-list-line-start: 0;--tabs-list-line-end: 0;--tab-radius: var(--tabs-radius) var(--tabs-radius) 0 0;--tab-border-width: 0 0 var(--tabs-list-border-width) 0}.m_89d60db1[data-inverted]{--tabs-list-line-bottom: unset;--tabs-list-line-top: 0;--tab-radius: 0 0 var(--tabs-radius) var(--tabs-radius);--tab-border-width: var(--tabs-list-border-width) 0 0 0}.m_89d60db1[data-inverted] .m_576c9d4:before{top:0;bottom:unset}.m_89d60db1[data-orientation=vertical]{--tabs-list-line-start: unset;--tabs-list-line-end: 0;--tabs-list-line-top: 0;--tabs-list-line-bottom: 0;--tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;--tab-border-width: 0 var(--tabs-list-border-width) 0 0;--tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius);--tabs-list-direction: column;--tabs-panel-grow: 1;--tabs-display: flex}[dir=rtl] .m_89d60db1[data-orientation=vertical]{--tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);--tab-border-width: 0 0 0 var(--tabs-list-border-width);--tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0}.m_89d60db1[data-orientation=vertical][data-placement=right]{--tabs-flex-direction: row-reverse;--tabs-list-line-start: 0;--tabs-list-line-end: unset;--tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);--tab-border-width: 0 0 0 var(--tabs-list-border-width);--tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0}[dir=rtl] .m_89d60db1[data-orientation=vertical][data-placement=right]{--tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;--tab-border-width: 0 var(--tabs-list-border-width) 0 0;--tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius)}.m_89d60db1[data-variant=default]{--tabs-list-border-width: calc(.125rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_89d60db1[data-variant=default]{--tab-hover-color: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_89d60db1[data-variant=default]{--tab-hover-color: var(--mantine-color-dark-6)}.m_89d60db1[data-variant=outline]{--tabs-list-border-width: calc(.0625rem * var(--mantine-scale))}.m_89d60db1[data-variant=pills]{--tabs-list-gap: calc(var(--mantine-spacing-sm) / 2)}[data-mantine-color-scheme=light] .m_89d60db1[data-variant=pills]{--tab-hover-color: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_89d60db1[data-variant=pills]{--tab-hover-color: var(--mantine-color-dark-6)}.m_89d33d6d{display:flex;flex-wrap:wrap;justify-content:var(--tabs-justify, flex-start);flex-direction:var(--tabs-list-direction);gap:var(--tabs-list-gap)}.m_89d33d6d:where([data-grow]) .m_4ec4dce6{flex:1}.m_b0c91715{flex-grow:var(--tabs-panel-grow)}.m_4ec4dce6{position:relative;padding:var(--mantine-spacing-xs) var(--mantine-spacing-md);font-size:var(--mantine-font-size-sm);white-space:nowrap;z-index:0;display:flex;align-items:center;line-height:1;user-select:none}.m_4ec4dce6:where(:disabled,[data-disabled]){opacity:.5;cursor:not-allowed}.m_4ec4dce6:focus{z-index:1}.m_fc420b1f{display:flex;align-items:center;justify-content:center}.m_fc420b1f:where([data-position=left]:not(:only-child)){margin-inline-end:var(--mantine-spacing-xs)}.m_fc420b1f:where([data-position=right]:not(:only-child)){margin-inline-start:var(--mantine-spacing-xs)}.m_42bbd1ae{flex:1;text-align:center}.m_576c9d4{position:relative}.m_576c9d4:before{content:"";position:absolute;border:1px solid var(--tab-border-color);bottom:var(--tabs-list-line-bottom);inset-inline-start:var(--tabs-list-line-start);inset-inline-end:var(--tabs-list-line-end);top:var(--tabs-list-line-top)}.m_539e827b{border-radius:var(--tab-radius);border-width:var(--tab-border-width);border-style:solid;border-color:transparent;background-color:transparent}.m_539e827b:where([data-active]){border-color:var(--tabs-color)}@media(hover:hover){.m_539e827b:hover{background-color:var(--tab-hover-color)}.m_539e827b:hover:where(:not([data-active])){border-color:var(--tab-border-color)}}@media(hover:none){.m_539e827b:active{background-color:var(--tab-hover-color)}.m_539e827b:active:where(:not([data-active])){border-color:var(--tab-border-color)}}@media(hover:hover){.m_539e827b:disabled:hover,.m_539e827b[data-disabled]:hover{background-color:transparent}}@media(hover:none){.m_539e827b:disabled:active,.m_539e827b[data-disabled]:active{background-color:transparent}}.m_6772fbd5{position:relative}.m_6772fbd5:before{content:"";position:absolute;border-color:var(--tab-border-color);border-width:var(--tabs-list-border-size);border-style:solid;bottom:var(--tabs-list-line-bottom);inset-inline-start:var(--tabs-list-line-start);inset-inline-end:var(--tabs-list-line-end);top:var(--tabs-list-line-top)}.m_b59ab47c{border-top:calc(.0625rem * var(--mantine-scale)) solid transparent;border-bottom:calc(.0625rem * var(--mantine-scale)) solid transparent;border-right:calc(.0625rem * var(--mantine-scale)) solid transparent;border-left:calc(.0625rem * var(--mantine-scale)) solid transparent;border-top-color:var(--tab-border-top-color);border-bottom-color:var(--tab-border-bottom-color);border-radius:var(--tab-radius);position:relative;--tab-border-bottom-color: transparent;--tab-border-top-color: transparent;--tab-border-inline-end-color: transparent;--tab-border-inline-start-color: transparent}.m_b59ab47c:where([data-active]):before{content:"";position:absolute;background-color:var(--tab-border-color);bottom:var(--tab-before-bottom, calc(-.0625rem * var(--mantine-scale)));left:var(--tab-before-left, calc(-.0625rem * var(--mantine-scale)));right:var(--tab-before-right, auto);top:var(--tab-before-top, auto);width:calc(.0625rem * var(--mantine-scale));height:calc(.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active]):after{content:"";position:absolute;background-color:var(--tab-border-color);bottom:var(--tab-after-bottom, calc(-.0625rem * var(--mantine-scale)));right:var(--tab-after-right, calc(-.0625rem * var(--mantine-scale)));left:var(--tab-after-left, auto);top:var(--tab-after-top, auto);width:calc(.0625rem * var(--mantine-scale));height:calc(.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active]){border-top-color:var(--tab-border-top-color);border-bottom-color:var(--tab-border-bottom-color);border-inline-start-color:var(--tab-border-inline-start-color);border-inline-end-color:var(--tab-border-inline-end-color);--tab-border-top-color: var(--tab-border-color);--tab-border-inline-start-color: var(--tab-border-color);--tab-border-inline-end-color: var(--tab-border-color);--tab-border-bottom-color: var(--mantine-color-body)}.m_b59ab47c:where([data-active])[data-inverted]{--tab-border-bottom-color: var(--tab-border-color);--tab-border-top-color: var(--mantine-color-body);--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-bottom: auto;--tab-after-top: calc(-.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=left]{--tab-border-inline-end-color: var(--mantine-color-body);--tab-border-inline-start-color: var(--tab-border-color);--tab-border-bottom-color: var(--tab-border-color);--tab-before-right: calc(-.0625rem * var(--mantine-scale));--tab-before-left: auto;--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-left: auto;--tab-after-right: calc(-.0625rem * var(--mantine-scale))}[dir=rtl] .m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=left]{--tab-before-right: auto;--tab-before-left: calc(-.0625rem * var(--mantine-scale));--tab-after-left: calc(-.0625rem * var(--mantine-scale));--tab-after-right: auto}.m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=right]{--tab-border-inline-start-color: var(--mantine-color-body);--tab-border-inline-end-color: var(--tab-border-color);--tab-border-bottom-color: var(--tab-border-color);--tab-before-left: calc(-.0625rem * var(--mantine-scale));--tab-before-right: auto;--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-right: auto;--tab-after-left: calc(-.0625rem * var(--mantine-scale))}[dir=rtl] .m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=right]{--tab-before-left: auto;--tab-before-right: calc(-.0625rem * var(--mantine-scale));--tab-after-right: calc(-.0625rem * var(--mantine-scale));--tab-after-left: auto}.m_c3381914{border-radius:var(--tabs-radius);background-color:var(--tab-bg);color:var(--tab-color);--tab-bg: transparent;--tab-color: inherit}@media(hover:hover){.m_c3381914:not([data-disabled]):hover{--tab-bg: var(--tab-hover-color)}}@media(hover:none){.m_c3381914:not([data-disabled]):active{--tab-bg: var(--tab-hover-color)}}.m_c3381914[data-active][data-active]{--tab-bg: var(--tabs-color);--tab-color: var(--tabs-text-color, var(--mantine-color-white))}@media(hover:hover){.m_c3381914[data-active][data-active]:hover{--tab-bg: var(--tabs-color)}}@media(hover:none){.m_c3381914[data-active][data-active]:active{--tab-bg: var(--tabs-color)}}.m_7341320d{--ti-size-xs: calc(1.125rem * var(--mantine-scale));--ti-size-sm: calc(1.375rem * var(--mantine-scale));--ti-size-md: calc(1.75rem * var(--mantine-scale));--ti-size-lg: calc(2.125rem * var(--mantine-scale));--ti-size-xl: calc(2.75rem * var(--mantine-scale));--ti-size: var(--ti-size-md);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;user-select:none;width:var(--ti-size);height:var(--ti-size);min-width:var(--ti-size);min-height:var(--ti-size);border-radius:var(--ti-radius, var(--mantine-radius-default));background:var(--ti-bg, var(--mantine-primary-color-filled));color:var(--ti-color, var(--mantine-color-white));border:var(--ti-bd, 1px solid transparent)}.m_43657ece{--offset: calc(var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2);--tl-bullet-size: calc(1.25rem * var(--mantine-scale));--tl-line-width: calc(.25rem * var(--mantine-scale));--tl-radius: calc(62.5rem * var(--mantine-scale));--tl-color: var(--mantine-primary-color-filled)}.m_43657ece:where([data-align=left]){padding-inline-start:var(--offset)}.m_43657ece:where([data-align=right]){padding-inline-end:var(--offset)}.m_2ebe8099{font-weight:500;line-height:1;margin-bottom:calc(var(--mantine-spacing-xs) / 2)}.m_436178ff{--item-border: var(--tl-line-width) var(--tli-border-style, solid) var(--item-border-color);position:relative;color:var(--mantine-color-text)}.m_436178ff:before{content:"";pointer-events:none;position:absolute;top:0;left:var(--timeline-line-left, 0);right:var(--timeline-line-right, 0);bottom:calc(var(--mantine-spacing-xl) * -1);border-inline-start:var(--item-border);display:var(--timeline-line-display, none)}.m_43657ece[data-align=left] .m_436178ff:before{--timeline-line-left: calc(var(--tl-line-width) * -1);--timeline-line-right: auto}[dir=rtl] .m_43657ece[data-align=left] .m_436178ff:before{--timeline-line-left: auto;--timeline-line-right: calc(var(--tl-line-width) * -1)}.m_43657ece[data-align=right] .m_436178ff:before{--timeline-line-left: auto;--timeline-line-right: calc(var(--tl-line-width) * -1)}[dir=rtl] .m_43657ece[data-align=right] .m_436178ff:before{--timeline-line-left: calc(var(--tl-line-width) * -1);--timeline-line-right: auto}.m_43657ece:where([data-align=left]) .m_436178ff{padding-inline-start:var(--offset);text-align:left}.m_43657ece:where([data-align=right]) .m_436178ff{padding-inline-end:var(--offset);text-align:right}:where([data-mantine-color-scheme=light]) .m_436178ff{--item-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_436178ff{--item-border-color: var(--mantine-color-dark-4)}.m_436178ff:where([data-line-active]):before{border-color:var(--tli-color, var(--tl-color))}.m_436178ff:where(:not(:last-of-type)){--timeline-line-display: block}.m_436178ff:where(:not(:first-of-type)){margin-top:var(--mantine-spacing-xl)}.m_8affcee1{width:var(--tl-bullet-size);height:var(--tl-bullet-size);border-radius:var(--tli-radius, var(--tl-radius));border:var(--tl-line-width) solid;background-color:var(--mantine-color-body);position:absolute;top:0;display:flex;align-items:center;justify-content:center;color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_8affcee1{border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8affcee1{border-color:var(--mantine-color-dark-4)}.m_43657ece:where([data-align=left]) .m_8affcee1{left:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);right:auto}:where([dir=rtl]) .m_43657ece:where([data-align=left]) .m_8affcee1{left:auto;right:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1)}.m_43657ece:where([data-align=right]) .m_8affcee1{left:auto;right:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1)}:where([dir=rtl]) .m_43657ece:where([data-align=right]) .m_8affcee1{left:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);right:auto}.m_8affcee1:where([data-with-child]){border-width:var(--tl-line-width)}:where([data-mantine-color-scheme=light]) .m_8affcee1:where([data-with-child]){background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8affcee1:where([data-with-child]){background-color:var(--mantine-color-dark-4)}.m_8affcee1:where([data-active]){border-color:var(--tli-color, var(--tl-color));background-color:var(--mantine-color-white);color:var(--tl-icon-color, var(--mantine-color-white))}.m_8affcee1:where([data-active]):where([data-with-child]){background-color:var(--tli-color, var(--tl-color));color:var(--tl-icon-color, var(--mantine-color-white))}.m_43657ece:where([data-align=left]) .m_540e8f41{padding-inline-start:var(--offset);text-align:left}:where([dir=rtl]) .m_43657ece:where([data-align=left]) .m_540e8f41{text-align:right}.m_43657ece:where([data-align=right]) .m_540e8f41{padding-inline-end:var(--offset);text-align:right}:where([dir=rtl]) .m_43657ece:where([data-align=right]) .m_540e8f41{text-align:left}.m_8a5d1357{margin:0;font-weight:var(--title-fw);font-size:var(--title-fz);line-height:var(--title-lh);font-family:var(--mantine-font-family-headings);text-wrap:var(--title-text-wrap, var(--mantine-heading-text-wrap))}.m_8a5d1357:where([data-line-clamp]){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--title-line-clamp);-webkit-box-orient:vertical}.m_f698e191{--level-offset: var(--mantine-spacing-lg);margin:0;padding:0;user-select:none}.m_75f3ecf{margin:0;padding:0}.m_f6970eb1{cursor:pointer;list-style:none;margin:0;padding:0;outline:0}.m_f6970eb1:focus-visible>.m_dc283425{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_dc283425{padding-inline-start:var(--label-offset)}:where([data-mantine-color-scheme=light]) .m_dc283425:where([data-selected]){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_dc283425:where([data-selected]){background-color:var(--mantine-color-dark-5)}.m_d08caa0 :first-child{margin-top:0}.m_d08caa0 :last-child{margin-bottom:0}.m_d08caa0 :where(h1,h2,h3,h4,h5,h6){margin-bottom:var(--mantine-spacing-xs);text-wrap:var(--mantine-heading-text-wrap);font-family:var(--mantine-font-family-headings)}.m_d08caa0 :where(h1){margin-top:calc(1.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h1-font-size);line-height:var(--mantine-h1-line-height);font-weight:var(--mantine-h1-font-weight)}.m_d08caa0 :where(h2){margin-top:var(--mantine-spacing-xl);font-size:var(--mantine-h2-font-size);line-height:var(--mantine-h2-line-height);font-weight:var(--mantine-h2-font-weight)}.m_d08caa0 :where(h3){margin-top:calc(.8 * var(--mantine-spacing-xl));font-size:var(--mantine-h3-font-size);line-height:var(--mantine-h3-line-height);font-weight:var(--mantine-h3-font-weight)}.m_d08caa0 :where(h4){margin-top:calc(.8 * var(--mantine-spacing-xl));font-size:var(--mantine-h4-font-size);line-height:var(--mantine-h4-line-height);font-weight:var(--mantine-h4-font-weight)}.m_d08caa0 :where(h5){margin-top:calc(.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h5-font-size);line-height:var(--mantine-h5-line-height);font-weight:var(--mantine-h5-font-weight)}.m_d08caa0 :where(h6){margin-top:calc(.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h6-font-size);line-height:var(--mantine-h6-line-height);font-weight:var(--mantine-h6-font-weight)}.m_d08caa0 :where(img){max-width:100%;margin-bottom:var(--mantine-spacing-xs)}.m_d08caa0 :where(p){margin-top:0;margin-bottom:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(mark){background-color:var(--mantine-color-yellow-2);color:inherit}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(mark){background-color:var(--mantine-color-yellow-5);color:var(--mantine-color-black)}.m_d08caa0 :where(a){color:var(--mantine-color-anchor);text-decoration:none}@media(hover:hover){.m_d08caa0 :where(a):hover{text-decoration:underline}}@media(hover:none){.m_d08caa0 :where(a):active{text-decoration:underline}}.m_d08caa0 :where(hr){margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);border:0;border-top:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(hr){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(hr){border-color:var(--mantine-color-dark-3)}.m_d08caa0 :where(pre){padding:var(--mantine-spacing-xs);line-height:var(--mantine-line-height);margin:0;margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);overflow-x:auto;font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs);border-radius:var(--mantine-radius-sm)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(pre){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(pre){background-color:var(--mantine-color-dark-8)}.m_d08caa0 :where(pre) :where(code){background-color:transparent;padding:0;border-radius:0;color:inherit;border:0}.m_d08caa0 :where(kbd){--kbd-fz: calc(.75rem * var(--mantine-scale));--kbd-padding: calc(.1875rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);font-weight:700;padding:var(--kbd-padding);font-size:var(--kbd-fz);border-radius:var(--mantine-radius-sm);border:calc(.0625rem * var(--mantine-scale)) solid;border-bottom-width:calc(.1875rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(kbd){border-color:var(--mantine-color-gray-3);color:var(--mantine-color-gray-7);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(kbd){border-color:var(--mantine-color-dark-3);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-5)}.m_d08caa0 :where(code){line-height:var(--mantine-line-height);padding:calc(.0625rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));border-radius:var(--mantine-radius-sm);font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(code){background-color:var(--mantine-color-gray-0);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(code){background-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_d08caa0 :where(ul,ol):not([data-type=taskList]){margin-bottom:var(--mantine-spacing-md);padding-inline-start:var(--mantine-spacing-xl);list-style-position:outside}.m_d08caa0 :where(table){width:100%;border-collapse:collapse;caption-side:bottom;margin-bottom:var(--mantine-spacing-md)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(table){--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(table){--table-border-color: var(--mantine-color-dark-4)}.m_d08caa0 :where(table) :where(caption){margin-top:var(--mantine-spacing-xs);font-size:var(--mantine-font-size-sm);color:var(--mantine-color-dimmed)}.m_d08caa0 :where(table) :where(th){text-align:left;font-weight:700;font-size:var(--mantine-font-size-sm);padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm)}.m_d08caa0 :where(table) :where(thead th){border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d08caa0 :where(table) :where(tfoot th){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d08caa0 :where(table) :where(td){padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm);border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color);font-size:var(--mantine-font-size-sm)}.m_d08caa0 :where(table) :where(tr:last-of-type td){border-bottom:0}.m_d08caa0 :where(blockquote){font-size:var(--mantine-font-size-lg);line-height:var(--mantine-line-height);margin:var(--mantine-spacing-md) 0;border-radius:var(--mantine-radius-sm);padding:var(--mantine-spacing-md) var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(blockquote){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(blockquote){background-color:var(--mantine-color-dark-8)}}@layer xyflow{.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}}@layer base{:root{--made-with-panda: "🐼"}*,:before,:after,::backdrop{--blur: ;--brightness: ;--contrast: ;--grayscale: ;--hue-rotate: ;--invert: ;--saturate: ;--sepia: ;--drop-shadow: ;--backdrop-blur: ;--backdrop-brightness: ;--backdrop-contrast: ;--backdrop-grayscale: ;--backdrop-hue-rotate: ;--backdrop-invert: ;--backdrop-opacity: ;--backdrop-saturate: ;--backdrop-sepia: ;--gradient-from-position: ;--gradient-to-position: ;--gradient-via-position: ;--scroll-snap-strictness: proximity;--border-spacing-x: 0;--border-spacing-y: 0;--translate-x: 0;--translate-y: 0;--rotate: 0;--rotate-x: 0;--rotate-y: 0;--skew-x: 0;--skew-y: 0;--scale-x: 1;--scale-y: 1}:where(:root,:host){--likec4-app-font-default: "IBM Plex Sans",'ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'}:where([data-likec4-text-size=xs]){--likec4-text-size: var(--font-sizes-likec4-xs)}:where([data-likec4-text-size=sm]){--likec4-text-size: var(--font-sizes-likec4-sm)}:where([data-likec4-text-size=md]){--likec4-text-size: var(--font-sizes-likec4-md)}:where([data-likec4-text-size=lg]){--likec4-text-size: var(--font-sizes-likec4-lg)}:where([data-likec4-text-size=xl]){--likec4-text-size: var(--font-sizes-likec4-xl)}:where([data-likec4-spacing=xs]){--likec4-spacing: var(--spacing-likec4-xs)}:where([data-likec4-spacing=sm]){--likec4-spacing: var(--spacing-likec4-sm)}:where([data-likec4-spacing=md]){--likec4-spacing: var(--spacing-likec4-md)}:where([data-likec4-spacing=lg]){--likec4-spacing: var(--spacing-likec4-lg)}:where([data-likec4-spacing=xl]){--likec4-spacing: var(--spacing-likec4-xl)}.likec4-shadow-root{--mantine-font-family: var(--likec4-app-font, var(--likec4-app-font-default));--mantine-font-family-headings: var(--likec4-app-font, var(--likec4-app-font-default));display:contents}.likec4-shadow-root dialog{color:var(--mantine-color-text)}.likec4-edge-label-container{position:absolute;top:var(--spacing-0);left:var(--spacing-0);width:auto;height:auto}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-edge-label-container{display:none}:where([data-likec4-zoom-small=true]) .likec4-edge-label-container{display:none}.likec4-root{padding:var(--spacing-0);margin:var(--spacing-0);border:0px solid transparent;background:var(--colors-transparent);overflow:hidden;position:relative;container-name:likec4-root;container-type:size;width:var(--sizes-100\\%);height:var(--sizes-100\\%)}.likec4-root .react-flow{--xy-background-color: var(--colors-likec4-background);--xy-background-pattern-color: var(--colors-likec4-background-pattern, var(--colors-likec4-background))}.likec4-root .react-flow:is(.bg-transparent){--xy-background-color: transparent !important;background:var(--colors-transparent)!important}.likec4-root .react-flow:is(.not-initialized){opacity:0}.likec4-root .react-flow .react-flow__pane{-webkit-user-select:none;user-select:none}.likec4-root .react-flow :where(.react-flow__nodes,.react-flow__edges,.react-flow__edgelabel-renderer){display:contents}.likec4-root .react-flow .react-flow__node.draggable:has(.likec4-compound-node){cursor:default}.likec4-root .react-flow .likec4-node-handle-center{visibility:hidden!important;transform:translate(-50%,-50%)!important;top:50%!important;left:50%!important;right:unset!important;bottom:unset!important;width:5px!important;height:5px!important}.likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container){--xy-edge-stroke-width: 3;--xy-edge-stroke: var(--likec4-palette-relation-stroke);--xy-edge-stroke-selected: var(--likec4-palette-relation-stroke-selected);--xy-edge-label-color: var(--likec4-palette-relation-label);--xy-edge-label-background-color: var(--likec4-palette-relation-label-bg)}[data-mantine-color-scheme=dark] .likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container){--xy-edge-label-background-color: color-mix(in oklab, var(--likec4-palette-relation-label-bg) 50%, transparent)}[data-mantine-color-scheme=light] .likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container){--xy-edge-label-color: color-mix(in oklab, var(--likec4-palette-relation-label), #FFF 50%);--xy-edge-label-background-color: color-mix(in oklab, var(--likec4-palette-relation-label-bg) 65%, transparent)}.likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container):is([data-likec4-hovered=true],[data-edge-active=true]){--xy-edge-stroke-width: 4;--xy-edge-stroke: var(--likec4-palette-relation-stroke-selected)}.likec4-root :where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed]){opacity:.25}.likec4-root .likec4-edge-label-container:is([data-likec4-dimmed]){opacity:.25}.likec4-root:is([data-likec4-reduced-graphics]) .hide-on-reduced-graphics{display:none}.likec4-root :where(.relationships-browser,.likec4-relationship-details) .react-flow__attribution{display:none}.likec4-root .mantine-ActionIcon-icon .tabler-icon{width:75%;height:75%}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed]){filter:grayscale(85%)}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed=true]){--transition-prop: opacity, filter;transition-property:opacity,filter;--transition-easing: cubic-bezier(.5, 0, .2, 1);transition-timing-function:cubic-bezier(.5,0,.2,1);--transition-duration: .4s;transition-duration:.4s}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge-label-container:is([data-likec4-dimmed]){filter:grayscale(85%)}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge-label-container:is([data-likec4-dimmed=true]){--transition-prop: opacity, filter;transition-property:opacity,filter;--transition-easing: cubic-bezier(.5, 0, .2, 1);transition-timing-function:cubic-bezier(.5,0,.2,1);--transition-duration: .4s;transition-duration:.4s}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edgelabel-renderer)>*{mix-blend-mode:screen}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edgelabel-renderer)>*{mix-blend-mode:hard-light}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges)>svg{mix-blend-mode:plus-lighter}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges)>svg{mix-blend-mode:multiply}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]):has(.react-flow__node-seq-parallel) :where(.react-flow__edges>svg){mix-blend-mode:color-burn}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) .react-flow__node-seq-parallel{mix-blend-mode:luminosity}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) .react-flow__node-seq-parallel{mix-blend-mode:color-burn}.likec4-static-view .react-flow .react-flow__attribution{display:none}:where(:root,:host){--likec4-text-size: 1.2rem;--likec4-palette-fill: #3b82f6;--likec4-palette-stroke: #2563eb;--likec4-palette-hiContrast: #eff6ff;--likec4-palette-loContrast: #bfdbfe;--likec4-palette-relation-stroke: #8D8D8D;--likec4-palette-relation-label: #C9C9C9;--likec4-palette-relation-label-bg: #18191B;--mantine-scale: 1;--likec4-palette-outline: var(--likec4-palette-loContrast);--likec4-spacing: ;--text-fz: ;--likec4-icon-size: }@media print{.likec4-root .react-flow{--xy-background-color: transparent !important;background:var(--colors-transparent)!important}.likec4-root .react-flow__background{display:none}.likec4-root *{color-adjust:exact!important;print-color-adjust:exact!important}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edgelabel-renderer)>*{mix-blend-mode:normal!important}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges)>svg{mix-blend-mode:normal!important}.likec4-root:not([data-likec4-reduced-graphics]) .react-flow__node-seq-parallel{mix-blend-mode:normal!important}}}@layer tokens{:where(:root,:host){--spacing-0: 0px;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-5: 20px;--spacing-6: 24px;--spacing-7: 28px;--spacing-8: 32px;--spacing-9: 36px;--spacing-10: 40px;--spacing-likec4-xs: 8px;--spacing-likec4-sm: 10px;--spacing-likec4-md: 16px;--spacing-likec4-lg: 24px;--spacing-likec4-xl: 32px;--spacing-0\\.5: 2px;--spacing-1\\.5: 6px;--spacing-2\\.5: 10px;--spacing-3\\.5: 14px;--spacing-4\\.5: 18px;--spacing-xxs: calc(.5rem * var(--mantine-scale));--spacing-xs: calc(.625rem * var(--mantine-scale));--spacing-sm: calc(.75rem * var(--mantine-scale));--spacing-md: calc(1rem * var(--mantine-scale));--spacing-lg: calc(1.25rem * var(--mantine-scale));--spacing-xl: calc(2rem * var(--mantine-scale));--font-sizes-xxs: .625rem;--font-sizes-xs: calc(.75rem * var(--mantine-scale));--font-sizes-sm: calc(.875rem * var(--mantine-scale));--font-sizes-md: calc(1rem * var(--mantine-scale));--font-sizes-lg: calc(1.125rem * var(--mantine-scale));--font-sizes-xl: calc(1.25rem * var(--mantine-scale));--font-sizes-likec4-xs: .833rem;--font-sizes-likec4-sm: 1rem;--font-sizes-likec4-md: 1.2rem;--font-sizes-likec4-lg: 1.44rem;--font-sizes-likec4-xl: 1.73rem;--line-heights-1: 1;--line-heights-xs: 1.4;--line-heights-sm: 1.45;--line-heights-md: 1.55;--line-heights-lg: 1.6;--line-heights-xl: 1.65;--colors-mantine-colors-primary: var(--mantine-primary-color-6);--colors-mantine-colors-primary-filled: var(--mantine-primary-color-filled);--colors-mantine-colors-primary-filled-hover: var(--mantine-primary-color-filled-hover);--colors-mantine-colors-primary-light: var(--mantine-primary-color-light);--colors-mantine-colors-primary-light-hover: var(--mantine-primary-color-light-hover);--colors-mantine-colors-primary-light-color: var(--mantine-primary-color-light-color);--colors-mantine-colors-primary-outline: var(--mantine-primary-color-outline);--colors-mantine-colors-primary-outline-hover: var(--mantine-primary-color-outline-hover);--colors-mantine-colors-primary\\[0\\]: var(--mantine-primary-color-0);--colors-mantine-colors-primary\\[1\\]: var(--mantine-primary-color-1);--colors-mantine-colors-primary\\[2\\]: var(--mantine-primary-color-2);--colors-mantine-colors-primary\\[3\\]: var(--mantine-primary-color-3);--colors-mantine-colors-primary\\[4\\]: var(--mantine-primary-color-4);--colors-mantine-colors-primary\\[5\\]: var(--mantine-primary-color-5);--colors-mantine-colors-primary\\[6\\]: var(--mantine-primary-color-6);--colors-mantine-colors-primary\\[7\\]: var(--mantine-primary-color-7);--colors-mantine-colors-primary\\[8\\]: var(--mantine-primary-color-8);--colors-mantine-colors-primary\\[9\\]: var(--mantine-primary-color-9);--colors-mantine-colors-white: var(--mantine-color-white);--colors-mantine-colors-text: var(--mantine-color-text);--colors-mantine-colors-body: var(--mantine-color-body);--colors-mantine-colors-dimmed: var(--mantine-color-dimmed);--colors-mantine-colors-default-border: var(--mantine-color-default-border);--colors-mantine-colors-default-color: var(--mantine-color-default-color);--colors-mantine-colors-default-hover: var(--mantine-color-default-hover);--colors-mantine-colors-default: var(--mantine-color-default);--colors-mantine-colors-error: var(--mantine-color-error);--colors-mantine-colors-placeholder: var(--mantine-color-placeholder);--colors-mantine-colors-gray: var(--mantine-color-gray-6);--colors-mantine-colors-gray-filled: var(--mantine-color-gray-filled);--colors-mantine-colors-gray-filled-hover: var(--mantine-color-gray-filled-hover);--colors-mantine-colors-gray-light: var(--mantine-color-gray-light);--colors-mantine-colors-gray-light-hover: var(--mantine-color-gray-light-hover);--colors-mantine-colors-gray-light-color: var(--mantine-color-gray-light-color);--colors-mantine-colors-gray-outline: var(--mantine-color-gray-outline);--colors-mantine-colors-gray-outline-hover: var(--mantine-color-gray-outline-hover);--colors-mantine-colors-gray\\[0\\]: var(--mantine-color-gray-0);--colors-mantine-colors-gray\\[1\\]: var(--mantine-color-gray-1);--colors-mantine-colors-gray\\[2\\]: var(--mantine-color-gray-2);--colors-mantine-colors-gray\\[3\\]: var(--mantine-color-gray-3);--colors-mantine-colors-gray\\[4\\]: var(--mantine-color-gray-4);--colors-mantine-colors-gray\\[5\\]: var(--mantine-color-gray-5);--colors-mantine-colors-gray\\[6\\]: var(--mantine-color-gray-6);--colors-mantine-colors-gray\\[7\\]: var(--mantine-color-gray-7);--colors-mantine-colors-gray\\[8\\]: var(--mantine-color-gray-8);--colors-mantine-colors-gray\\[9\\]: var(--mantine-color-gray-9);--colors-mantine-colors-dark: var(--mantine-color-dark-6);--colors-mantine-colors-dark-filled: var(--mantine-color-dark-filled);--colors-mantine-colors-dark-filled-hover: var(--mantine-color-dark-filled-hover);--colors-mantine-colors-dark-light: var(--mantine-color-dark-light);--colors-mantine-colors-dark-light-hover: var(--mantine-color-dark-light-hover);--colors-mantine-colors-dark-light-color: var(--mantine-color-dark-light-color);--colors-mantine-colors-dark-outline: var(--mantine-color-dark-outline);--colors-mantine-colors-dark-outline-hover: var(--mantine-color-dark-outline-hover);--colors-mantine-colors-dark\\[0\\]: var(--mantine-color-dark-0);--colors-mantine-colors-dark\\[1\\]: var(--mantine-color-dark-1);--colors-mantine-colors-dark\\[2\\]: var(--mantine-color-dark-2);--colors-mantine-colors-dark\\[3\\]: var(--mantine-color-dark-3);--colors-mantine-colors-dark\\[4\\]: var(--mantine-color-dark-4);--colors-mantine-colors-dark\\[5\\]: var(--mantine-color-dark-5);--colors-mantine-colors-dark\\[6\\]: var(--mantine-color-dark-6);--colors-mantine-colors-dark\\[7\\]: var(--mantine-color-dark-7);--colors-mantine-colors-dark\\[8\\]: var(--mantine-color-dark-8);--colors-mantine-colors-dark\\[9\\]: var(--mantine-color-dark-9);--colors-mantine-colors-orange: var(--mantine-color-orange-6);--colors-mantine-colors-orange-filled: var(--mantine-color-orange-filled);--colors-mantine-colors-orange-filled-hover: var(--mantine-color-orange-filled-hover);--colors-mantine-colors-orange-light: var(--mantine-color-orange-light);--colors-mantine-colors-orange-light-hover: var(--mantine-color-orange-light-hover);--colors-mantine-colors-orange-light-color: var(--mantine-color-orange-light-color);--colors-mantine-colors-orange-outline: var(--mantine-color-orange-outline);--colors-mantine-colors-orange-outline-hover: var(--mantine-color-orange-outline-hover);--colors-mantine-colors-orange\\[0\\]: var(--mantine-color-orange-0);--colors-mantine-colors-orange\\[1\\]: var(--mantine-color-orange-1);--colors-mantine-colors-orange\\[2\\]: var(--mantine-color-orange-2);--colors-mantine-colors-orange\\[3\\]: var(--mantine-color-orange-3);--colors-mantine-colors-orange\\[4\\]: var(--mantine-color-orange-4);--colors-mantine-colors-orange\\[5\\]: var(--mantine-color-orange-5);--colors-mantine-colors-orange\\[6\\]: var(--mantine-color-orange-6);--colors-mantine-colors-orange\\[7\\]: var(--mantine-color-orange-7);--colors-mantine-colors-orange\\[8\\]: var(--mantine-color-orange-8);--colors-mantine-colors-orange\\[9\\]: var(--mantine-color-orange-9);--colors-mantine-colors-teal: var(--mantine-color-teal-6);--colors-mantine-colors-teal-filled: var(--mantine-color-teal-filled);--colors-mantine-colors-teal-filled-hover: var(--mantine-color-teal-filled-hover);--colors-mantine-colors-teal-light: var(--mantine-color-teal-light);--colors-mantine-colors-teal-light-hover: var(--mantine-color-teal-light-hover);--colors-mantine-colors-teal-light-color: var(--mantine-color-teal-light-color);--colors-mantine-colors-teal-outline: var(--mantine-color-teal-outline);--colors-mantine-colors-teal-outline-hover: var(--mantine-color-teal-outline-hover);--colors-mantine-colors-teal\\[0\\]: var(--mantine-color-teal-0);--colors-mantine-colors-teal\\[1\\]: var(--mantine-color-teal-1);--colors-mantine-colors-teal\\[2\\]: var(--mantine-color-teal-2);--colors-mantine-colors-teal\\[3\\]: var(--mantine-color-teal-3);--colors-mantine-colors-teal\\[4\\]: var(--mantine-color-teal-4);--colors-mantine-colors-teal\\[5\\]: var(--mantine-color-teal-5);--colors-mantine-colors-teal\\[6\\]: var(--mantine-color-teal-6);--colors-mantine-colors-teal\\[7\\]: var(--mantine-color-teal-7);--colors-mantine-colors-teal\\[8\\]: var(--mantine-color-teal-8);--colors-mantine-colors-teal\\[9\\]: var(--mantine-color-teal-9);--colors-mantine-colors-red: var(--mantine-color-red-6);--colors-mantine-colors-red-filled: var(--mantine-color-red-filled);--colors-mantine-colors-red-filled-hover: var(--mantine-color-red-filled-hover);--colors-mantine-colors-red-light: var(--mantine-color-red-light);--colors-mantine-colors-red-light-hover: var(--mantine-color-red-light-hover);--colors-mantine-colors-red-light-color: var(--mantine-color-red-light-color);--colors-mantine-colors-red-outline: var(--mantine-color-red-outline);--colors-mantine-colors-red-outline-hover: var(--mantine-color-red-outline-hover);--colors-mantine-colors-red\\[0\\]: var(--mantine-color-red-0);--colors-mantine-colors-red\\[1\\]: var(--mantine-color-red-1);--colors-mantine-colors-red\\[2\\]: var(--mantine-color-red-2);--colors-mantine-colors-red\\[3\\]: var(--mantine-color-red-3);--colors-mantine-colors-red\\[4\\]: var(--mantine-color-red-4);--colors-mantine-colors-red\\[5\\]: var(--mantine-color-red-5);--colors-mantine-colors-red\\[6\\]: var(--mantine-color-red-6);--colors-mantine-colors-red\\[7\\]: var(--mantine-color-red-7);--colors-mantine-colors-red\\[8\\]: var(--mantine-color-red-8);--colors-mantine-colors-red\\[9\\]: var(--mantine-color-red-9);--colors-mantine-colors-green: var(--mantine-color-green-6);--colors-mantine-colors-green-filled: var(--mantine-color-green-filled);--colors-mantine-colors-green-filled-hover: var(--mantine-color-green-filled-hover);--colors-mantine-colors-green-light: var(--mantine-color-green-light);--colors-mantine-colors-green-light-hover: var(--mantine-color-green-light-hover);--colors-mantine-colors-green-light-color: var(--mantine-color-green-light-color);--colors-mantine-colors-green-outline: var(--mantine-color-green-outline);--colors-mantine-colors-green-outline-hover: var(--mantine-color-green-outline-hover);--colors-mantine-colors-green\\[0\\]: var(--mantine-color-green-0);--colors-mantine-colors-green\\[1\\]: var(--mantine-color-green-1);--colors-mantine-colors-green\\[2\\]: var(--mantine-color-green-2);--colors-mantine-colors-green\\[3\\]: var(--mantine-color-green-3);--colors-mantine-colors-green\\[4\\]: var(--mantine-color-green-4);--colors-mantine-colors-green\\[5\\]: var(--mantine-color-green-5);--colors-mantine-colors-green\\[6\\]: var(--mantine-color-green-6);--colors-mantine-colors-green\\[7\\]: var(--mantine-color-green-7);--colors-mantine-colors-green\\[8\\]: var(--mantine-color-green-8);--colors-mantine-colors-green\\[9\\]: var(--mantine-color-green-9);--colors-mantine-colors-yellow: var(--mantine-color-yellow-6);--colors-mantine-colors-yellow-filled: var(--mantine-color-yellow-filled);--colors-mantine-colors-yellow-filled-hover: var(--mantine-color-yellow-filled-hover);--colors-mantine-colors-yellow-light: var(--mantine-color-yellow-light);--colors-mantine-colors-yellow-light-hover: var(--mantine-color-yellow-light-hover);--colors-mantine-colors-yellow-light-color: var(--mantine-color-yellow-light-color);--colors-mantine-colors-yellow-outline: var(--mantine-color-yellow-outline);--colors-mantine-colors-yellow-outline-hover: var(--mantine-color-yellow-outline-hover);--colors-mantine-colors-yellow\\[0\\]: var(--mantine-color-yellow-0);--colors-mantine-colors-yellow\\[1\\]: var(--mantine-color-yellow-1);--colors-mantine-colors-yellow\\[2\\]: var(--mantine-color-yellow-2);--colors-mantine-colors-yellow\\[3\\]: var(--mantine-color-yellow-3);--colors-mantine-colors-yellow\\[4\\]: var(--mantine-color-yellow-4);--colors-mantine-colors-yellow\\[5\\]: var(--mantine-color-yellow-5);--colors-mantine-colors-yellow\\[6\\]: var(--mantine-color-yellow-6);--colors-mantine-colors-yellow\\[7\\]: var(--mantine-color-yellow-7);--colors-mantine-colors-yellow\\[8\\]: var(--mantine-color-yellow-8);--colors-mantine-colors-yellow\\[9\\]: var(--mantine-color-yellow-9);--colors-transparent: transparent;--colors-none: none;--sizes-100\\%: 100%;--sizes-full: 100%;--sizes-breakpoint-xs: 36em;--sizes-breakpoint-sm: 48em;--sizes-breakpoint-md: 62em;--sizes-breakpoint-lg: 75em;--sizes-breakpoint-xl: 88em;--borders-none: none;--borders-transparent: 0px solid transparent;--borders-default: 1px solid var(--mantine-color-default-border);--radii-0: 0px;--radii-xs: .125rem;--radii-sm: .25rem;--radii-md: .5rem;--radii-lg: 1rem;--radii-xl: 2rem;--font-weights-normal: 400;--font-weights-medium: 500;--fonts-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--fonts-body: var(--likec4-app-font, var(--likec4-app-font-default));--fonts-likec4: var(--likec4-app-font, var(--likec4-app-font-default));--fonts-likec4-element: var(--likec4-element-font, var(--fonts-likec4));--fonts-likec4-compound: var(--likec4-compound-font, var(--fonts-likec4));--fonts-likec4-relation: var(--likec4-relation-font, var(--fonts-likec4));--easings-default: cubic-bezier(.4, 0, .2, 1);--easings-in: cubic-bezier(.4, 0, 1, 1);--easings-out: cubic-bezier(0, 0, .4, 1);--easings-in-out: cubic-bezier(.5, 0, .2, 1);--durations-fastest: 50ms;--durations-faster: .1s;--durations-fast: .13s;--durations-normal: .17s;--durations-slow: .3s;--durations-slower: .4s;--durations-slowest: .5s;--shadows-none: none;--shadows-xs: 0 1px 3px rgb(0 0 0/5%), 0 1px 2px rgb(0 0 0/10%);--shadows-sm: 0 1px 3px rgb(0 0 0/5%), 0 10px 15px -5px rgb(0 0 0/5%), 0 7px 7px -5px rgb(0 0 0/4%);--shadows-md: 0 1px 3px rgb(0 0 0/5%), 0 20px 25px -5px rgb(0 0 0/5%), 0 10px 10px -5px rgb(0 0 0/4%);--shadows-lg: 0 1px 3px rgb(0 0 0/5%), 0 28px 23px -7px rgb(0 0 0/5%), 0 12px 12px -7px rgb(0 0 0/4%);--shadows-xl: 0 1px 3px rgb(0 0 0/5%), 0 36px 28px -7px rgb(0 0 0/5%), 0 17px 17px -7px rgb(0 0 0/4%);--z-index-0: 0;--z-index-1: 1;--z-index--1: -1;--z-index-likec4-panel: 100;--z-index-likec4-dropdown: 200;--breakpoints-xs: 36em;--breakpoints-sm: 48em;--breakpoints-md: 62em;--breakpoints-lg: 75em;--breakpoints-xl: 88em;--colors-amber-1: var(--colors-amber-light-1);--colors-amber-2: var(--colors-amber-light-2);--colors-amber-3: var(--colors-amber-light-3);--colors-amber-4: var(--colors-amber-light-4);--colors-amber-5: var(--colors-amber-light-5);--colors-amber-6: var(--colors-amber-light-6);--colors-amber-7: var(--colors-amber-light-7);--colors-amber-8: var(--colors-amber-light-8);--colors-amber-9: var(--colors-amber-light-9);--colors-amber-10: var(--colors-amber-light-10);--colors-amber-11: var(--colors-amber-light-11);--colors-amber-12: var(--colors-amber-light-12);--colors-amber-light-1: #fefdfb;--colors-amber-light-2: #fefbe9;--colors-amber-light-3: #fff7c2;--colors-amber-light-4: #ffee9c;--colors-amber-light-5: #fbe577;--colors-amber-light-6: #f3d673;--colors-amber-light-7: #e9c162;--colors-amber-light-8: #e2a336;--colors-amber-light-9: #ffc53d;--colors-amber-light-10: #ffba18;--colors-amber-light-11: #ab6400;--colors-amber-light-12: #4f3422;--colors-amber-light-a-1: #c0800004;--colors-amber-light-a-2: #f4d10016;--colors-amber-light-a-3: #ffde003d;--colors-amber-light-a-4: #ffd40063;--colors-amber-light-a-5: #f8cf0088;--colors-amber-light-a-6: #eab5008c;--colors-amber-light-a-7: #dc9b009d;--colors-amber-light-a-8: #da8a00c9;--colors-amber-light-a-9: #ffb300c2;--colors-amber-light-a-10: #ffb300e7;--colors-amber-light-a-11: #ab6400;--colors-amber-light-a-12: #341500dd;--colors-amber-light-p3-1: color(display-p3 .995 .992 .985);--colors-amber-light-p3-2: color(display-p3 .994 .986 .921);--colors-amber-light-p3-3: color(display-p3 .994 .969 .782);--colors-amber-light-p3-4: color(display-p3 .989 .937 .65);--colors-amber-light-p3-5: color(display-p3 .97 .902 .527);--colors-amber-light-p3-6: color(display-p3 .936 .844 .506);--colors-amber-light-p3-7: color(display-p3 .89 .762 .443);--colors-amber-light-p3-8: color(display-p3 .85 .65 .3);--colors-amber-light-p3-9: color(display-p3 1 .77 .26);--colors-amber-light-p3-10: color(display-p3 .959 .741 .274);--colors-amber-light-p3-11: color(display-p3 .64 .4 0);--colors-amber-light-p3-12: color(display-p3 .294 .208 .145);--colors-amber-light-p3-a-1: color(display-p3 .757 .514 .024 / .016);--colors-amber-light-p3-a-2: color(display-p3 .902 .804 .008 / .079);--colors-amber-light-p3-a-3: color(display-p3 .965 .859 .004 / .22);--colors-amber-light-p3-a-4: color(display-p3 .969 .82 .004 / .35);--colors-amber-light-p3-a-5: color(display-p3 .933 .796 .004 / .475);--colors-amber-light-p3-a-6: color(display-p3 .875 .682 .004 / .495);--colors-amber-light-p3-a-7: color(display-p3 .804 .573 0 / .557);--colors-amber-light-p3-a-8: color(display-p3 .788 .502 0 / .699);--colors-amber-light-p3-a-9: color(display-p3 1 .686 0 / .742);--colors-amber-light-p3-a-10: color(display-p3 .945 .643 0 / .726);--colors-amber-light-p3-a-11: color(display-p3 .64 .4 0);--colors-amber-light-p3-a-12: color(display-p3 .294 .208 .145);--colors-amber-dark-1: #16120c;--colors-amber-dark-2: #1d180f;--colors-amber-dark-3: #302008;--colors-amber-dark-4: #3f2700;--colors-amber-dark-5: #4d3000;--colors-amber-dark-6: #5c3d05;--colors-amber-dark-7: #714f19;--colors-amber-dark-8: #8f6424;--colors-amber-dark-9: #ffc53d;--colors-amber-dark-10: #ffd60a;--colors-amber-dark-11: #ffca16;--colors-amber-dark-12: #ffe7b3;--colors-amber-dark-a-1: #e63c0006;--colors-amber-dark-a-2: #fd9b000d;--colors-amber-dark-a-3: #fa820022;--colors-amber-dark-a-4: #fc820032;--colors-amber-dark-a-5: #fd8b0041;--colors-amber-dark-a-6: #fd9b0051;--colors-amber-dark-a-7: #ffab2567;--colors-amber-dark-a-8: #ffae3587;--colors-amber-dark-a-9: #ffc53d;--colors-amber-dark-a-10: #ffd60a;--colors-amber-dark-a-11: #ffca16;--colors-amber-dark-a-12: #ffe7b3;--colors-amber-dark-p3-1: color(display-p3 .082 .07 .05);--colors-amber-dark-p3-2: color(display-p3 .111 .094 .064);--colors-amber-dark-p3-3: color(display-p3 .178 .128 .049);--colors-amber-dark-p3-4: color(display-p3 .239 .156 0);--colors-amber-dark-p3-5: color(display-p3 .29 .193 0);--colors-amber-dark-p3-6: color(display-p3 .344 .245 .076);--colors-amber-dark-p3-7: color(display-p3 .422 .314 .141);--colors-amber-dark-p3-8: color(display-p3 .535 .399 .189);--colors-amber-dark-p3-9: color(display-p3 1 .77 .26);--colors-amber-dark-p3-10: color(display-p3 1 .87 .15);--colors-amber-dark-p3-11: color(display-p3 1 .8 .29);--colors-amber-dark-p3-12: color(display-p3 .984 .909 .726);--colors-amber-dark-p3-a-1: color(display-p3 .992 .298 0 / .017);--colors-amber-dark-p3-a-2: color(display-p3 .988 .651 0 / .047);--colors-amber-dark-p3-a-3: color(display-p3 1 .6 0 / .118);--colors-amber-dark-p3-a-4: color(display-p3 1 .557 0 / .185);--colors-amber-dark-p3-a-5: color(display-p3 1 .592 0 / .24);--colors-amber-dark-p3-a-6: color(display-p3 1 .659 .094 / .299);--colors-amber-dark-p3-a-7: color(display-p3 1 .714 .263 / .383);--colors-amber-dark-p3-a-8: color(display-p3 .996 .729 .306 / .5);--colors-amber-dark-p3-a-9: color(display-p3 1 .769 .259);--colors-amber-dark-p3-a-10: color(display-p3 1 .871 .149);--colors-amber-dark-p3-a-11: color(display-p3 1 .8 .29);--colors-amber-dark-p3-a-12: color(display-p3 .984 .909 .726);--colors-amber-a-1: var(--colors-amber-light-a-1);--colors-amber-a-2: var(--colors-amber-light-a-2);--colors-amber-a-3: var(--colors-amber-light-a-3);--colors-amber-a-4: var(--colors-amber-light-a-4);--colors-amber-a-5: var(--colors-amber-light-a-5);--colors-amber-a-6: var(--colors-amber-light-a-6);--colors-amber-a-7: var(--colors-amber-light-a-7);--colors-amber-a-8: var(--colors-amber-light-a-8);--colors-amber-a-9: var(--colors-amber-light-a-9);--colors-amber-a-10: var(--colors-amber-light-a-10);--colors-amber-a-11: var(--colors-amber-light-a-11);--colors-amber-a-12: var(--colors-amber-light-a-12);--colors-amber-p3-1: var(--colors-amber-light-p3-1);--colors-amber-p3-2: var(--colors-amber-light-p3-2);--colors-amber-p3-3: var(--colors-amber-light-p3-3);--colors-amber-p3-4: var(--colors-amber-light-p3-4);--colors-amber-p3-5: var(--colors-amber-light-p3-5);--colors-amber-p3-6: var(--colors-amber-light-p3-6);--colors-amber-p3-7: var(--colors-amber-light-p3-7);--colors-amber-p3-8: var(--colors-amber-light-p3-8);--colors-amber-p3-9: var(--colors-amber-light-p3-9);--colors-amber-p3-10: var(--colors-amber-light-p3-10);--colors-amber-p3-11: var(--colors-amber-light-p3-11);--colors-amber-p3-12: var(--colors-amber-light-p3-12);--colors-amber-p3-a-1: var(--colors-amber-light-p3-a-1);--colors-amber-p3-a-2: var(--colors-amber-light-p3-a-2);--colors-amber-p3-a-3: var(--colors-amber-light-p3-a-3);--colors-amber-p3-a-4: var(--colors-amber-light-p3-a-4);--colors-amber-p3-a-5: var(--colors-amber-light-p3-a-5);--colors-amber-p3-a-6: var(--colors-amber-light-p3-a-6);--colors-amber-p3-a-7: var(--colors-amber-light-p3-a-7);--colors-amber-p3-a-8: var(--colors-amber-light-p3-a-8);--colors-amber-p3-a-9: var(--colors-amber-light-p3-a-9);--colors-amber-p3-a-10: var(--colors-amber-light-p3-a-10);--colors-amber-p3-a-11: var(--colors-amber-light-p3-a-11);--colors-amber-p3-a-12: var(--colors-amber-light-p3-a-12);--colors-blue-1: var(--colors-blue-light-1);--colors-blue-2: var(--colors-blue-light-2);--colors-blue-3: var(--colors-blue-light-3);--colors-blue-4: var(--colors-blue-light-4);--colors-blue-5: var(--colors-blue-light-5);--colors-blue-6: var(--colors-blue-light-6);--colors-blue-7: var(--colors-blue-light-7);--colors-blue-8: var(--colors-blue-light-8);--colors-blue-9: var(--colors-blue-light-9);--colors-blue-10: var(--colors-blue-light-10);--colors-blue-11: var(--colors-blue-light-11);--colors-blue-12: var(--colors-blue-light-12);--colors-blue-light-1: #fbfdff;--colors-blue-light-2: #f4faff;--colors-blue-light-3: #e6f4fe;--colors-blue-light-4: #d5efff;--colors-blue-light-5: #c2e5ff;--colors-blue-light-6: #acd8fc;--colors-blue-light-7: #8ec8f6;--colors-blue-light-8: #5eb1ef;--colors-blue-light-9: #0090ff;--colors-blue-light-10: #0588f0;--colors-blue-light-11: #0d74ce;--colors-blue-light-12: #113264;--colors-blue-light-a-1: #0080ff04;--colors-blue-light-a-2: #008cff0b;--colors-blue-light-a-3: #008ff519;--colors-blue-light-a-4: #009eff2a;--colors-blue-light-a-5: #0093ff3d;--colors-blue-light-a-6: #0088f653;--colors-blue-light-a-7: #0083eb71;--colors-blue-light-a-8: #0084e6a1;--colors-blue-light-a-9: #0090ff;--colors-blue-light-a-10: #0086f0fa;--colors-blue-light-a-11: #006dcbf2;--colors-blue-light-a-12: #002359ee;--colors-blue-light-p3-1: color(display-p3 .986 .992 .999);--colors-blue-light-p3-2: color(display-p3 .96 .979 .998);--colors-blue-light-p3-3: color(display-p3 .912 .956 .991);--colors-blue-light-p3-4: color(display-p3 .853 .932 1);--colors-blue-light-p3-5: color(display-p3 .788 .894 .998);--colors-blue-light-p3-6: color(display-p3 .709 .843 .976);--colors-blue-light-p3-7: color(display-p3 .606 .777 .947);--colors-blue-light-p3-8: color(display-p3 .451 .688 .917);--colors-blue-light-p3-9: color(display-p3 .247 .556 .969);--colors-blue-light-p3-10: color(display-p3 .234 .523 .912);--colors-blue-light-p3-11: color(display-p3 .15 .44 .84);--colors-blue-light-p3-12: color(display-p3 .102 .193 .379);--colors-blue-light-p3-a-1: color(display-p3 .024 .514 1 / .016);--colors-blue-light-p3-a-2: color(display-p3 .024 .514 .906 / .04);--colors-blue-light-p3-a-3: color(display-p3 .012 .506 .914 / .087);--colors-blue-light-p3-a-4: color(display-p3 .008 .545 1 / .146);--colors-blue-light-p3-a-5: color(display-p3 .004 .502 .984 / .212);--colors-blue-light-p3-a-6: color(display-p3 .004 .463 .922 / .291);--colors-blue-light-p3-a-7: color(display-p3 .004 .431 .863 / .393);--colors-blue-light-p3-a-8: color(display-p3 0 .427 .851 / .55);--colors-blue-light-p3-a-9: color(display-p3 0 .412 .961 / .753);--colors-blue-light-p3-a-10: color(display-p3 0 .376 .886 / .765);--colors-blue-light-p3-a-11: color(display-p3 .15 .44 .84);--colors-blue-light-p3-a-12: color(display-p3 .102 .193 .379);--colors-blue-dark-1: #0d1520;--colors-blue-dark-2: #111927;--colors-blue-dark-3: #0d2847;--colors-blue-dark-4: #003362;--colors-blue-dark-5: #004074;--colors-blue-dark-6: #104d87;--colors-blue-dark-7: #205d9e;--colors-blue-dark-8: #2870bd;--colors-blue-dark-9: #0090ff;--colors-blue-dark-10: #3b9eff;--colors-blue-dark-11: #70b8ff;--colors-blue-dark-12: #c2e6ff;--colors-blue-dark-a-1: #004df211;--colors-blue-dark-a-2: #1166fb18;--colors-blue-dark-a-3: #0077ff3a;--colors-blue-dark-a-4: #0075ff57;--colors-blue-dark-a-5: #0081fd6b;--colors-blue-dark-a-6: #0f89fd7f;--colors-blue-dark-a-7: #2a91fe98;--colors-blue-dark-a-8: #3094feb9;--colors-blue-dark-a-9: #0090ff;--colors-blue-dark-a-10: #3b9eff;--colors-blue-dark-a-11: #70b8ff;--colors-blue-dark-a-12: #c2e6ff;--colors-blue-dark-p3-1: color(display-p3 .057 .081 .122);--colors-blue-dark-p3-2: color(display-p3 .072 .098 .147);--colors-blue-dark-p3-3: color(display-p3 .078 .154 .27);--colors-blue-dark-p3-4: color(display-p3 .033 .197 .37);--colors-blue-dark-p3-5: color(display-p3 .08 .245 .441);--colors-blue-dark-p3-6: color(display-p3 .14 .298 .511);--colors-blue-dark-p3-7: color(display-p3 .195 .361 .6);--colors-blue-dark-p3-8: color(display-p3 .239 .434 .72);--colors-blue-dark-p3-9: color(display-p3 .247 .556 .969);--colors-blue-dark-p3-10: color(display-p3 .344 .612 .973);--colors-blue-dark-p3-11: color(display-p3 .49 .72 1);--colors-blue-dark-p3-12: color(display-p3 .788 .898 .99);--colors-blue-dark-p3-a-1: color(display-p3 0 .333 1 / .059);--colors-blue-dark-p3-a-2: color(display-p3 .114 .435 .988 / .085);--colors-blue-dark-p3-a-3: color(display-p3 .122 .463 1 / .219);--colors-blue-dark-p3-a-4: color(display-p3 0 .467 1 / .324);--colors-blue-dark-p3-a-5: color(display-p3 .098 .51 1 / .4);--colors-blue-dark-p3-a-6: color(display-p3 .224 .557 1 / .475);--colors-blue-dark-p3-a-7: color(display-p3 .294 .584 1 / .572);--colors-blue-dark-p3-a-8: color(display-p3 .314 .592 1 / .702);--colors-blue-dark-p3-a-9: color(display-p3 .251 .573 .996 / .967);--colors-blue-dark-p3-a-10: color(display-p3 .357 .631 1 / .971);--colors-blue-dark-p3-a-11: color(display-p3 .49 .72 1);--colors-blue-dark-p3-a-12: color(display-p3 .788 .898 .99);--colors-blue-a-1: var(--colors-blue-light-a-1);--colors-blue-a-2: var(--colors-blue-light-a-2);--colors-blue-a-3: var(--colors-blue-light-a-3);--colors-blue-a-4: var(--colors-blue-light-a-4);--colors-blue-a-5: var(--colors-blue-light-a-5);--colors-blue-a-6: var(--colors-blue-light-a-6);--colors-blue-a-7: var(--colors-blue-light-a-7);--colors-blue-a-8: var(--colors-blue-light-a-8);--colors-blue-a-9: var(--colors-blue-light-a-9);--colors-blue-a-10: var(--colors-blue-light-a-10);--colors-blue-a-11: var(--colors-blue-light-a-11);--colors-blue-a-12: var(--colors-blue-light-a-12);--colors-blue-p3-1: var(--colors-blue-light-p3-1);--colors-blue-p3-2: var(--colors-blue-light-p3-2);--colors-blue-p3-3: var(--colors-blue-light-p3-3);--colors-blue-p3-4: var(--colors-blue-light-p3-4);--colors-blue-p3-5: var(--colors-blue-light-p3-5);--colors-blue-p3-6: var(--colors-blue-light-p3-6);--colors-blue-p3-7: var(--colors-blue-light-p3-7);--colors-blue-p3-8: var(--colors-blue-light-p3-8);--colors-blue-p3-9: var(--colors-blue-light-p3-9);--colors-blue-p3-10: var(--colors-blue-light-p3-10);--colors-blue-p3-11: var(--colors-blue-light-p3-11);--colors-blue-p3-12: var(--colors-blue-light-p3-12);--colors-blue-p3-a-1: var(--colors-blue-light-p3-a-1);--colors-blue-p3-a-2: var(--colors-blue-light-p3-a-2);--colors-blue-p3-a-3: var(--colors-blue-light-p3-a-3);--colors-blue-p3-a-4: var(--colors-blue-light-p3-a-4);--colors-blue-p3-a-5: var(--colors-blue-light-p3-a-5);--colors-blue-p3-a-6: var(--colors-blue-light-p3-a-6);--colors-blue-p3-a-7: var(--colors-blue-light-p3-a-7);--colors-blue-p3-a-8: var(--colors-blue-light-p3-a-8);--colors-blue-p3-a-9: var(--colors-blue-light-p3-a-9);--colors-blue-p3-a-10: var(--colors-blue-light-p3-a-10);--colors-blue-p3-a-11: var(--colors-blue-light-p3-a-11);--colors-blue-p3-a-12: var(--colors-blue-light-p3-a-12);--colors-crimson-1: var(--colors-crimson-light-1);--colors-crimson-2: var(--colors-crimson-light-2);--colors-crimson-3: var(--colors-crimson-light-3);--colors-crimson-4: var(--colors-crimson-light-4);--colors-crimson-5: var(--colors-crimson-light-5);--colors-crimson-6: var(--colors-crimson-light-6);--colors-crimson-7: var(--colors-crimson-light-7);--colors-crimson-8: var(--colors-crimson-light-8);--colors-crimson-9: var(--colors-crimson-light-9);--colors-crimson-10: var(--colors-crimson-light-10);--colors-crimson-11: var(--colors-crimson-light-11);--colors-crimson-12: var(--colors-crimson-light-12);--colors-crimson-light-1: #fffcfd;--colors-crimson-light-2: #fef7f9;--colors-crimson-light-3: #ffe9f0;--colors-crimson-light-4: #fedce7;--colors-crimson-light-5: #facedd;--colors-crimson-light-6: #f3bed1;--colors-crimson-light-7: #eaacc3;--colors-crimson-light-8: #e093b2;--colors-crimson-light-9: #e93d82;--colors-crimson-light-10: #df3478;--colors-crimson-light-11: #cb1d63;--colors-crimson-light-12: #621639;--colors-crimson-light-a-1: #ff005503;--colors-crimson-light-a-2: #e0004008;--colors-crimson-light-a-3: #ff005216;--colors-crimson-light-a-4: #f8005123;--colors-crimson-light-a-5: #e5004f31;--colors-crimson-light-a-6: #d0004b41;--colors-crimson-light-a-7: #bf004753;--colors-crimson-light-a-8: #b6004a6c;--colors-crimson-light-a-9: #e2005bc2;--colors-crimson-light-a-10: #d70056cb;--colors-crimson-light-a-11: #c4004fe2;--colors-crimson-light-a-12: #530026e9;--colors-crimson-light-p3-1: color(display-p3 .998 .989 .992);--colors-crimson-light-p3-2: color(display-p3 .991 .969 .976);--colors-crimson-light-p3-3: color(display-p3 .987 .917 .941);--colors-crimson-light-p3-4: color(display-p3 .975 .866 .904);--colors-crimson-light-p3-5: color(display-p3 .953 .813 .864);--colors-crimson-light-p3-6: color(display-p3 .921 .755 .817);--colors-crimson-light-p3-7: color(display-p3 .88 .683 .761);--colors-crimson-light-p3-8: color(display-p3 .834 .592 .694);--colors-crimson-light-p3-9: color(display-p3 .843 .298 .507);--colors-crimson-light-p3-10: color(display-p3 .807 .266 .468);--colors-crimson-light-p3-11: color(display-p3 .731 .195 .388);--colors-crimson-light-p3-12: color(display-p3 .352 .111 .221);--colors-crimson-light-p3-a-1: color(display-p3 .675 .024 .349 / .012);--colors-crimson-light-p3-a-2: color(display-p3 .757 .02 .267 / .032);--colors-crimson-light-p3-a-3: color(display-p3 .859 .008 .294 / .083);--colors-crimson-light-p3-a-4: color(display-p3 .827 .008 .298 / .134);--colors-crimson-light-p3-a-5: color(display-p3 .753 .008 .275 / .189);--colors-crimson-light-p3-a-6: color(display-p3 .682 .004 .247 / .244);--colors-crimson-light-p3-a-7: color(display-p3 .62 .004 .251 / .318);--colors-crimson-light-p3-a-8: color(display-p3 .6 .004 .251 / .408);--colors-crimson-light-p3-a-9: color(display-p3 .776 0 .298 / .702);--colors-crimson-light-p3-a-10: color(display-p3 .737 0 .275 / .734);--colors-crimson-light-p3-a-11: color(display-p3 .731 .195 .388);--colors-crimson-light-p3-a-12: color(display-p3 .352 .111 .221);--colors-crimson-dark-1: #191114;--colors-crimson-dark-2: #201318;--colors-crimson-dark-3: #381525;--colors-crimson-dark-4: #4d122f;--colors-crimson-dark-5: #5c1839;--colors-crimson-dark-6: #6d2545;--colors-crimson-dark-7: #873356;--colors-crimson-dark-8: #b0436e;--colors-crimson-dark-9: #e93d82;--colors-crimson-dark-10: #ee518a;--colors-crimson-dark-11: #ff92ad;--colors-crimson-dark-12: #fdd3e8;--colors-crimson-dark-a-1: #f4126709;--colors-crimson-dark-a-2: #f22f7a11;--colors-crimson-dark-a-3: #fe2a8b2a;--colors-crimson-dark-a-4: #fd158741;--colors-crimson-dark-a-5: #fd278f51;--colors-crimson-dark-a-6: #fe459763;--colors-crimson-dark-a-7: #fd559b7f;--colors-crimson-dark-a-8: #fe5b9bab;--colors-crimson-dark-a-9: #fe418de8;--colors-crimson-dark-a-10: #ff5693ed;--colors-crimson-dark-a-11: #ff92ad;--colors-crimson-dark-a-12: #ffd5eafd;--colors-crimson-dark-p3-1: color(display-p3 .093 .068 .078);--colors-crimson-dark-p3-2: color(display-p3 .117 .078 .095);--colors-crimson-dark-p3-3: color(display-p3 .203 .091 .143);--colors-crimson-dark-p3-4: color(display-p3 .277 .087 .182);--colors-crimson-dark-p3-5: color(display-p3 .332 .115 .22);--colors-crimson-dark-p3-6: color(display-p3 .394 .162 .268);--colors-crimson-dark-p3-7: color(display-p3 .489 .222 .336);--colors-crimson-dark-p3-8: color(display-p3 .638 .289 .429);--colors-crimson-dark-p3-9: color(display-p3 .843 .298 .507);--colors-crimson-dark-p3-10: color(display-p3 .864 .364 .539);--colors-crimson-dark-p3-11: color(display-p3 1 .56 .66);--colors-crimson-dark-p3-12: color(display-p3 .966 .834 .906);--colors-crimson-dark-p3-a-1: color(display-p3 .984 .071 .463 / .03);--colors-crimson-dark-p3-a-2: color(display-p3 .996 .282 .569 / .055);--colors-crimson-dark-p3-a-3: color(display-p3 .996 .227 .573 / .148);--colors-crimson-dark-p3-a-4: color(display-p3 1 .157 .569 / .227);--colors-crimson-dark-p3-a-5: color(display-p3 1 .231 .604 / .286);--colors-crimson-dark-p3-a-6: color(display-p3 1 .337 .643 / .349);--colors-crimson-dark-p3-a-7: color(display-p3 1 .416 .663 / .454);--colors-crimson-dark-p3-a-8: color(display-p3 .996 .427 .651 / .614);--colors-crimson-dark-p3-a-9: color(display-p3 1 .345 .596 / .832);--colors-crimson-dark-p3-a-10: color(display-p3 1 .42 .62 / .853);--colors-crimson-dark-p3-a-11: color(display-p3 1 .56 .66);--colors-crimson-dark-p3-a-12: color(display-p3 .966 .834 .906);--colors-crimson-a-1: var(--colors-crimson-light-a-1);--colors-crimson-a-2: var(--colors-crimson-light-a-2);--colors-crimson-a-3: var(--colors-crimson-light-a-3);--colors-crimson-a-4: var(--colors-crimson-light-a-4);--colors-crimson-a-5: var(--colors-crimson-light-a-5);--colors-crimson-a-6: var(--colors-crimson-light-a-6);--colors-crimson-a-7: var(--colors-crimson-light-a-7);--colors-crimson-a-8: var(--colors-crimson-light-a-8);--colors-crimson-a-9: var(--colors-crimson-light-a-9);--colors-crimson-a-10: var(--colors-crimson-light-a-10);--colors-crimson-a-11: var(--colors-crimson-light-a-11);--colors-crimson-a-12: var(--colors-crimson-light-a-12);--colors-crimson-p3-1: var(--colors-crimson-light-p3-1);--colors-crimson-p3-2: var(--colors-crimson-light-p3-2);--colors-crimson-p3-3: var(--colors-crimson-light-p3-3);--colors-crimson-p3-4: var(--colors-crimson-light-p3-4);--colors-crimson-p3-5: var(--colors-crimson-light-p3-5);--colors-crimson-p3-6: var(--colors-crimson-light-p3-6);--colors-crimson-p3-7: var(--colors-crimson-light-p3-7);--colors-crimson-p3-8: var(--colors-crimson-light-p3-8);--colors-crimson-p3-9: var(--colors-crimson-light-p3-9);--colors-crimson-p3-10: var(--colors-crimson-light-p3-10);--colors-crimson-p3-11: var(--colors-crimson-light-p3-11);--colors-crimson-p3-12: var(--colors-crimson-light-p3-12);--colors-crimson-p3-a-1: var(--colors-crimson-light-p3-a-1);--colors-crimson-p3-a-2: var(--colors-crimson-light-p3-a-2);--colors-crimson-p3-a-3: var(--colors-crimson-light-p3-a-3);--colors-crimson-p3-a-4: var(--colors-crimson-light-p3-a-4);--colors-crimson-p3-a-5: var(--colors-crimson-light-p3-a-5);--colors-crimson-p3-a-6: var(--colors-crimson-light-p3-a-6);--colors-crimson-p3-a-7: var(--colors-crimson-light-p3-a-7);--colors-crimson-p3-a-8: var(--colors-crimson-light-p3-a-8);--colors-crimson-p3-a-9: var(--colors-crimson-light-p3-a-9);--colors-crimson-p3-a-10: var(--colors-crimson-light-p3-a-10);--colors-crimson-p3-a-11: var(--colors-crimson-light-p3-a-11);--colors-crimson-p3-a-12: var(--colors-crimson-light-p3-a-12);--colors-grass-1: var(--colors-grass-light-1);--colors-grass-2: var(--colors-grass-light-2);--colors-grass-3: var(--colors-grass-light-3);--colors-grass-4: var(--colors-grass-light-4);--colors-grass-5: var(--colors-grass-light-5);--colors-grass-6: var(--colors-grass-light-6);--colors-grass-7: var(--colors-grass-light-7);--colors-grass-8: var(--colors-grass-light-8);--colors-grass-9: var(--colors-grass-light-9);--colors-grass-10: var(--colors-grass-light-10);--colors-grass-11: var(--colors-grass-light-11);--colors-grass-12: var(--colors-grass-light-12);--colors-grass-light-1: #fbfefb;--colors-grass-light-2: #f5fbf5;--colors-grass-light-3: #e9f6e9;--colors-grass-light-4: #daf1db;--colors-grass-light-5: #c9e8ca;--colors-grass-light-6: #b2ddb5;--colors-grass-light-7: #94ce9a;--colors-grass-light-8: #65ba74;--colors-grass-light-9: #46a758;--colors-grass-light-10: #3e9b4f;--colors-grass-light-11: #2a7e3b;--colors-grass-light-12: #203c25;--colors-grass-light-a-1: #00c00004;--colors-grass-light-a-2: #0099000a;--colors-grass-light-a-3: #00970016;--colors-grass-light-a-4: #009f0725;--colors-grass-light-a-5: #00930536;--colors-grass-light-a-6: #008f0a4d;--colors-grass-light-a-7: #018b0f6b;--colors-grass-light-a-8: #008d199a;--colors-grass-light-a-9: #008619b9;--colors-grass-light-a-10: #007b17c1;--colors-grass-light-a-11: #006514d5;--colors-grass-light-a-12: #002006df;--colors-grass-light-p3-1: color(display-p3 .986 .996 .985);--colors-grass-light-p3-2: color(display-p3 .966 .983 .964);--colors-grass-light-p3-3: color(display-p3 .923 .965 .917);--colors-grass-light-p3-4: color(display-p3 .872 .94 .865);--colors-grass-light-p3-5: color(display-p3 .811 .908 .802);--colors-grass-light-p3-6: color(display-p3 .733 .864 .724);--colors-grass-light-p3-7: color(display-p3 .628 .803 .622);--colors-grass-light-p3-8: color(display-p3 .477 .72 .482);--colors-grass-light-p3-9: color(display-p3 .38 .647 .378);--colors-grass-light-p3-10: color(display-p3 .344 .598 .342);--colors-grass-light-p3-11: color(display-p3 .263 .488 .261);--colors-grass-light-p3-12: color(display-p3 .151 .233 .153);--colors-grass-light-p3-a-1: color(display-p3 .024 .757 .024 / .016);--colors-grass-light-p3-a-2: color(display-p3 .024 .565 .024 / .036);--colors-grass-light-p3-a-3: color(display-p3 .059 .576 .008 / .083);--colors-grass-light-p3-a-4: color(display-p3 .035 .565 .008 / .134);--colors-grass-light-p3-a-5: color(display-p3 .047 .545 .008 / .197);--colors-grass-light-p3-a-6: color(display-p3 .031 .502 .004 / .275);--colors-grass-light-p3-a-7: color(display-p3 .012 .482 .004 / .377);--colors-grass-light-p3-a-8: color(display-p3 0 .467 .008 / .522);--colors-grass-light-p3-a-9: color(display-p3 .008 .435 0 / .624);--colors-grass-light-p3-a-10: color(display-p3 .008 .388 0 / .659);--colors-grass-light-p3-a-11: color(display-p3 .263 .488 .261);--colors-grass-light-p3-a-12: color(display-p3 .151 .233 .153);--colors-grass-dark-1: #0e1511;--colors-grass-dark-2: #141a15;--colors-grass-dark-3: #1b2a1e;--colors-grass-dark-4: #1d3a24;--colors-grass-dark-5: #25482d;--colors-grass-dark-6: #2d5736;--colors-grass-dark-7: #366740;--colors-grass-dark-8: #3e7949;--colors-grass-dark-9: #46a758;--colors-grass-dark-10: #53b365;--colors-grass-dark-11: #71d083;--colors-grass-dark-12: #c2f0c2;--colors-grass-dark-a-1: #00de1205;--colors-grass-dark-a-2: #5ef7780a;--colors-grass-dark-a-3: #70fe8c1b;--colors-grass-dark-a-4: #57ff802c;--colors-grass-dark-a-5: #68ff8b3b;--colors-grass-dark-a-6: #71ff8f4b;--colors-grass-dark-a-7: #77fd925d;--colors-grass-dark-a-8: #77fd9070;--colors-grass-dark-a-9: #65ff82a1;--colors-grass-dark-a-10: #72ff8dae;--colors-grass-dark-a-11: #89ff9fcd;--colors-grass-dark-a-12: #ceffceef;--colors-grass-dark-p3-1: color(display-p3 .062 .083 .067);--colors-grass-dark-p3-2: color(display-p3 .083 .103 .085);--colors-grass-dark-p3-3: color(display-p3 .118 .163 .122);--colors-grass-dark-p3-4: color(display-p3 .142 .225 .15);--colors-grass-dark-p3-5: color(display-p3 .178 .279 .186);--colors-grass-dark-p3-6: color(display-p3 .217 .337 .224);--colors-grass-dark-p3-7: color(display-p3 .258 .4 .264);--colors-grass-dark-p3-8: color(display-p3 .302 .47 .305);--colors-grass-dark-p3-9: color(display-p3 .38 .647 .378);--colors-grass-dark-p3-10: color(display-p3 .426 .694 .426);--colors-grass-dark-p3-11: color(display-p3 .535 .807 .542);--colors-grass-dark-p3-12: color(display-p3 .797 .936 .776);--colors-grass-dark-p3-a-1: color(display-p3 0 .992 .071 / .017);--colors-grass-dark-p3-a-2: color(display-p3 .482 .996 .584 / .038);--colors-grass-dark-p3-a-3: color(display-p3 .549 .992 .588 / .106);--colors-grass-dark-p3-a-4: color(display-p3 .51 .996 .557 / .169);--colors-grass-dark-p3-a-5: color(display-p3 .553 1 .588 / .227);--colors-grass-dark-p3-a-6: color(display-p3 .584 1 .608 / .29);--colors-grass-dark-p3-a-7: color(display-p3 .604 1 .616 / .358);--colors-grass-dark-p3-a-8: color(display-p3 .608 1 .62 / .433);--colors-grass-dark-p3-a-9: color(display-p3 .573 1 .569 / .622);--colors-grass-dark-p3-a-10: color(display-p3 .6 .996 .6 / .673);--colors-grass-dark-p3-a-11: color(display-p3 .535 .807 .542);--colors-grass-dark-p3-a-12: color(display-p3 .797 .936 .776);--colors-grass-a-1: var(--colors-grass-light-a-1);--colors-grass-a-2: var(--colors-grass-light-a-2);--colors-grass-a-3: var(--colors-grass-light-a-3);--colors-grass-a-4: var(--colors-grass-light-a-4);--colors-grass-a-5: var(--colors-grass-light-a-5);--colors-grass-a-6: var(--colors-grass-light-a-6);--colors-grass-a-7: var(--colors-grass-light-a-7);--colors-grass-a-8: var(--colors-grass-light-a-8);--colors-grass-a-9: var(--colors-grass-light-a-9);--colors-grass-a-10: var(--colors-grass-light-a-10);--colors-grass-a-11: var(--colors-grass-light-a-11);--colors-grass-a-12: var(--colors-grass-light-a-12);--colors-grass-p3-1: var(--colors-grass-light-p3-1);--colors-grass-p3-2: var(--colors-grass-light-p3-2);--colors-grass-p3-3: var(--colors-grass-light-p3-3);--colors-grass-p3-4: var(--colors-grass-light-p3-4);--colors-grass-p3-5: var(--colors-grass-light-p3-5);--colors-grass-p3-6: var(--colors-grass-light-p3-6);--colors-grass-p3-7: var(--colors-grass-light-p3-7);--colors-grass-p3-8: var(--colors-grass-light-p3-8);--colors-grass-p3-9: var(--colors-grass-light-p3-9);--colors-grass-p3-10: var(--colors-grass-light-p3-10);--colors-grass-p3-11: var(--colors-grass-light-p3-11);--colors-grass-p3-12: var(--colors-grass-light-p3-12);--colors-grass-p3-a-1: var(--colors-grass-light-p3-a-1);--colors-grass-p3-a-2: var(--colors-grass-light-p3-a-2);--colors-grass-p3-a-3: var(--colors-grass-light-p3-a-3);--colors-grass-p3-a-4: var(--colors-grass-light-p3-a-4);--colors-grass-p3-a-5: var(--colors-grass-light-p3-a-5);--colors-grass-p3-a-6: var(--colors-grass-light-p3-a-6);--colors-grass-p3-a-7: var(--colors-grass-light-p3-a-7);--colors-grass-p3-a-8: var(--colors-grass-light-p3-a-8);--colors-grass-p3-a-9: var(--colors-grass-light-p3-a-9);--colors-grass-p3-a-10: var(--colors-grass-light-p3-a-10);--colors-grass-p3-a-11: var(--colors-grass-light-p3-a-11);--colors-grass-p3-a-12: var(--colors-grass-light-p3-a-12);--colors-indigo-1: var(--colors-indigo-light-1);--colors-indigo-2: var(--colors-indigo-light-2);--colors-indigo-3: var(--colors-indigo-light-3);--colors-indigo-4: var(--colors-indigo-light-4);--colors-indigo-5: var(--colors-indigo-light-5);--colors-indigo-6: var(--colors-indigo-light-6);--colors-indigo-7: var(--colors-indigo-light-7);--colors-indigo-8: var(--colors-indigo-light-8);--colors-indigo-9: var(--colors-indigo-light-9);--colors-indigo-10: var(--colors-indigo-light-10);--colors-indigo-11: var(--colors-indigo-light-11);--colors-indigo-12: var(--colors-indigo-light-12);--colors-indigo-light-1: #fdfdfe;--colors-indigo-light-2: #f7f9ff;--colors-indigo-light-3: #edf2fe;--colors-indigo-light-4: #e1e9ff;--colors-indigo-light-5: #d2deff;--colors-indigo-light-6: #c1d0ff;--colors-indigo-light-7: #abbdf9;--colors-indigo-light-8: #8da4ef;--colors-indigo-light-9: #3e63dd;--colors-indigo-light-10: #3358d4;--colors-indigo-light-11: #3a5bc7;--colors-indigo-light-12: #1f2d5c;--colors-indigo-light-a-1: #00008002;--colors-indigo-light-a-2: #0040ff08;--colors-indigo-light-a-3: #0047f112;--colors-indigo-light-a-4: #0044ff1e;--colors-indigo-light-a-5: #0044ff2d;--colors-indigo-light-a-6: #003eff3e;--colors-indigo-light-a-7: #0037ed54;--colors-indigo-light-a-8: #0034dc72;--colors-indigo-light-a-9: #0031d2c1;--colors-indigo-light-a-10: #002ec9cc;--colors-indigo-light-a-11: #002bb7c5;--colors-indigo-light-a-12: #001046e0;--colors-indigo-light-p3-1: color(display-p3 .992 .992 .996);--colors-indigo-light-p3-2: color(display-p3 .971 .977 .998);--colors-indigo-light-p3-3: color(display-p3 .933 .948 .992);--colors-indigo-light-p3-4: color(display-p3 .885 .914 1);--colors-indigo-light-p3-5: color(display-p3 .831 .87 1);--colors-indigo-light-p3-6: color(display-p3 .767 .814 .995);--colors-indigo-light-p3-7: color(display-p3 .685 .74 .957);--colors-indigo-light-p3-8: color(display-p3 .569 .639 .916);--colors-indigo-light-p3-9: color(display-p3 .276 .384 .837);--colors-indigo-light-p3-10: color(display-p3 .234 .343 .801);--colors-indigo-light-p3-11: color(display-p3 .256 .354 .755);--colors-indigo-light-p3-12: color(display-p3 .133 .175 .348);--colors-indigo-light-p3-a-1: color(display-p3 .02 .02 .51 / .008);--colors-indigo-light-p3-a-2: color(display-p3 .024 .161 .863 / .028);--colors-indigo-light-p3-a-3: color(display-p3 .008 .239 .886 / .067);--colors-indigo-light-p3-a-4: color(display-p3 .004 .247 1 / .114);--colors-indigo-light-p3-a-5: color(display-p3 .004 .235 1 / .169);--colors-indigo-light-p3-a-6: color(display-p3 .004 .208 .984 / .232);--colors-indigo-light-p3-a-7: color(display-p3 .004 .176 .863 / .314);--colors-indigo-light-p3-a-8: color(display-p3 .004 .165 .812 / .432);--colors-indigo-light-p3-a-9: color(display-p3 0 .153 .773 / .726);--colors-indigo-light-p3-a-10: color(display-p3 0 .137 .737 / .765);--colors-indigo-light-p3-a-11: color(display-p3 .256 .354 .755);--colors-indigo-light-p3-a-12: color(display-p3 .133 .175 .348);--colors-indigo-dark-1: #11131f;--colors-indigo-dark-2: #141726;--colors-indigo-dark-3: #182449;--colors-indigo-dark-4: #1d2e62;--colors-indigo-dark-5: #253974;--colors-indigo-dark-6: #304384;--colors-indigo-dark-7: #3a4f97;--colors-indigo-dark-8: #435db1;--colors-indigo-dark-9: #3e63dd;--colors-indigo-dark-10: #5472e4;--colors-indigo-dark-11: #9eb1ff;--colors-indigo-dark-12: #d6e1ff;--colors-indigo-dark-a-1: #1133ff0f;--colors-indigo-dark-a-2: #3354fa17;--colors-indigo-dark-a-3: #2f62ff3c;--colors-indigo-dark-a-4: #3566ff57;--colors-indigo-dark-a-5: #4171fd6b;--colors-indigo-dark-a-6: #5178fd7c;--colors-indigo-dark-a-7: #5a7fff90;--colors-indigo-dark-a-8: #5b81feac;--colors-indigo-dark-a-9: #4671ffdb;--colors-indigo-dark-a-10: #5c7efee3;--colors-indigo-dark-a-11: #9eb1ff;--colors-indigo-dark-a-12: #d6e1ff;--colors-indigo-dark-p3-1: color(display-p3 .068 .074 .118);--colors-indigo-dark-p3-2: color(display-p3 .081 .089 .144);--colors-indigo-dark-p3-3: color(display-p3 .105 .141 .275);--colors-indigo-dark-p3-4: color(display-p3 .129 .18 .369);--colors-indigo-dark-p3-5: color(display-p3 .163 .22 .439);--colors-indigo-dark-p3-6: color(display-p3 .203 .262 .5);--colors-indigo-dark-p3-7: color(display-p3 .245 .309 .575);--colors-indigo-dark-p3-8: color(display-p3 .285 .362 .674);--colors-indigo-dark-p3-9: color(display-p3 .276 .384 .837);--colors-indigo-dark-p3-10: color(display-p3 .354 .445 .866);--colors-indigo-dark-p3-11: color(display-p3 .63 .69 1);--colors-indigo-dark-p3-12: color(display-p3 .848 .881 .99);--colors-indigo-dark-p3-a-1: color(display-p3 .071 .212 .996 / .055);--colors-indigo-dark-p3-a-2: color(display-p3 .251 .345 .988 / .085);--colors-indigo-dark-p3-a-3: color(display-p3 .243 .404 1 / .223);--colors-indigo-dark-p3-a-4: color(display-p3 .263 .42 1 / .324);--colors-indigo-dark-p3-a-5: color(display-p3 .314 .451 1 / .4);--colors-indigo-dark-p3-a-6: color(display-p3 .361 .49 1 / .467);--colors-indigo-dark-p3-a-7: color(display-p3 .388 .51 1 / .547);--colors-indigo-dark-p3-a-8: color(display-p3 .404 .518 1 / .652);--colors-indigo-dark-p3-a-9: color(display-p3 .318 .451 1 / .824);--colors-indigo-dark-p3-a-10: color(display-p3 .404 .506 1 / .858);--colors-indigo-dark-p3-a-11: color(display-p3 .63 .69 1);--colors-indigo-dark-p3-a-12: color(display-p3 .848 .881 .99);--colors-indigo-a-1: var(--colors-indigo-light-a-1);--colors-indigo-a-2: var(--colors-indigo-light-a-2);--colors-indigo-a-3: var(--colors-indigo-light-a-3);--colors-indigo-a-4: var(--colors-indigo-light-a-4);--colors-indigo-a-5: var(--colors-indigo-light-a-5);--colors-indigo-a-6: var(--colors-indigo-light-a-6);--colors-indigo-a-7: var(--colors-indigo-light-a-7);--colors-indigo-a-8: var(--colors-indigo-light-a-8);--colors-indigo-a-9: var(--colors-indigo-light-a-9);--colors-indigo-a-10: var(--colors-indigo-light-a-10);--colors-indigo-a-11: var(--colors-indigo-light-a-11);--colors-indigo-a-12: var(--colors-indigo-light-a-12);--colors-indigo-p3-1: var(--colors-indigo-light-p3-1);--colors-indigo-p3-2: var(--colors-indigo-light-p3-2);--colors-indigo-p3-3: var(--colors-indigo-light-p3-3);--colors-indigo-p3-4: var(--colors-indigo-light-p3-4);--colors-indigo-p3-5: var(--colors-indigo-light-p3-5);--colors-indigo-p3-6: var(--colors-indigo-light-p3-6);--colors-indigo-p3-7: var(--colors-indigo-light-p3-7);--colors-indigo-p3-8: var(--colors-indigo-light-p3-8);--colors-indigo-p3-9: var(--colors-indigo-light-p3-9);--colors-indigo-p3-10: var(--colors-indigo-light-p3-10);--colors-indigo-p3-11: var(--colors-indigo-light-p3-11);--colors-indigo-p3-12: var(--colors-indigo-light-p3-12);--colors-indigo-p3-a-1: var(--colors-indigo-light-p3-a-1);--colors-indigo-p3-a-2: var(--colors-indigo-light-p3-a-2);--colors-indigo-p3-a-3: var(--colors-indigo-light-p3-a-3);--colors-indigo-p3-a-4: var(--colors-indigo-light-p3-a-4);--colors-indigo-p3-a-5: var(--colors-indigo-light-p3-a-5);--colors-indigo-p3-a-6: var(--colors-indigo-light-p3-a-6);--colors-indigo-p3-a-7: var(--colors-indigo-light-p3-a-7);--colors-indigo-p3-a-8: var(--colors-indigo-light-p3-a-8);--colors-indigo-p3-a-9: var(--colors-indigo-light-p3-a-9);--colors-indigo-p3-a-10: var(--colors-indigo-light-p3-a-10);--colors-indigo-p3-a-11: var(--colors-indigo-light-p3-a-11);--colors-indigo-p3-a-12: var(--colors-indigo-light-p3-a-12);--colors-lime-1: var(--colors-lime-light-1);--colors-lime-2: var(--colors-lime-light-2);--colors-lime-3: var(--colors-lime-light-3);--colors-lime-4: var(--colors-lime-light-4);--colors-lime-5: var(--colors-lime-light-5);--colors-lime-6: var(--colors-lime-light-6);--colors-lime-7: var(--colors-lime-light-7);--colors-lime-8: var(--colors-lime-light-8);--colors-lime-9: var(--colors-lime-light-9);--colors-lime-10: var(--colors-lime-light-10);--colors-lime-11: var(--colors-lime-light-11);--colors-lime-12: var(--colors-lime-light-12);--colors-lime-light-1: #fcfdfa;--colors-lime-light-2: #f8faf3;--colors-lime-light-3: #eef6d6;--colors-lime-light-4: #e2f0bd;--colors-lime-light-5: #d3e7a6;--colors-lime-light-6: #c2da91;--colors-lime-light-7: #abc978;--colors-lime-light-8: #8db654;--colors-lime-light-9: #bdee63;--colors-lime-light-10: #b0e64c;--colors-lime-light-11: #5c7c2f;--colors-lime-light-12: #37401c;--colors-lime-light-a-1: #66990005;--colors-lime-light-a-2: #6b95000c;--colors-lime-light-a-3: #96c80029;--colors-lime-light-a-4: #8fc60042;--colors-lime-light-a-5: #81bb0059;--colors-lime-light-a-6: #72aa006e;--colors-lime-light-a-7: #61990087;--colors-lime-light-a-8: #559200ab;--colors-lime-light-a-9: #93e4009c;--colors-lime-light-a-10: #8fdc00b3;--colors-lime-light-a-11: #375f00d0;--colors-lime-light-a-12: #1e2900e3;--colors-lime-light-p3-1: color(display-p3 .989 .992 .981);--colors-lime-light-p3-2: color(display-p3 .975 .98 .954);--colors-lime-light-p3-3: color(display-p3 .939 .965 .851);--colors-lime-light-p3-4: color(display-p3 .896 .94 .76);--colors-lime-light-p3-5: color(display-p3 .843 .903 .678);--colors-lime-light-p3-6: color(display-p3 .778 .852 .599);--colors-lime-light-p3-7: color(display-p3 .694 .784 .508);--colors-lime-light-p3-8: color(display-p3 .585 .707 .378);--colors-lime-light-p3-9: color(display-p3 .78 .928 .466);--colors-lime-light-p3-10: color(display-p3 .734 .896 .397);--colors-lime-light-p3-11: color(display-p3 .386 .482 .227);--colors-lime-light-p3-12: color(display-p3 .222 .25 .128);--colors-lime-light-p3-a-1: color(display-p3 .412 .608 .02 / .02);--colors-lime-light-p3-a-2: color(display-p3 .514 .592 .024 / .048);--colors-lime-light-p3-a-3: color(display-p3 .584 .765 .008 / .15);--colors-lime-light-p3-a-4: color(display-p3 .561 .757 .004 / .24);--colors-lime-light-p3-a-5: color(display-p3 .514 .698 .004 / .322);--colors-lime-light-p3-a-6: color(display-p3 .443 .627 0 / .4);--colors-lime-light-p3-a-7: color(display-p3 .376 .561 .004 / .491);--colors-lime-light-p3-a-8: color(display-p3 .333 .529 0 / .624);--colors-lime-light-p3-a-9: color(display-p3 .588 .867 0 / .534);--colors-lime-light-p3-a-10: color(display-p3 .561 .827 0 / .604);--colors-lime-light-p3-a-11: color(display-p3 .386 .482 .227);--colors-lime-light-p3-a-12: color(display-p3 .222 .25 .128);--colors-lime-dark-1: #11130c;--colors-lime-dark-2: #151a10;--colors-lime-dark-3: #1f2917;--colors-lime-dark-4: #29371d;--colors-lime-dark-5: #334423;--colors-lime-dark-6: #3d522a;--colors-lime-dark-7: #496231;--colors-lime-dark-8: #577538;--colors-lime-dark-9: #bdee63;--colors-lime-dark-10: #d4ff70;--colors-lime-dark-11: #bde56c;--colors-lime-dark-12: #e3f7ba;--colors-lime-dark-a-1: #11bb0003;--colors-lime-dark-a-2: #78f7000a;--colors-lime-dark-a-3: #9bfd4c1a;--colors-lime-dark-a-4: #a7fe5c29;--colors-lime-dark-a-5: #affe6537;--colors-lime-dark-a-6: #b2fe6d46;--colors-lime-dark-a-7: #b6ff6f57;--colors-lime-dark-a-8: #b6fd6d6c;--colors-lime-dark-a-9: #caff69ed;--colors-lime-dark-a-10: #d4ff70;--colors-lime-dark-a-11: #d1fe77e4;--colors-lime-dark-a-12: #e9febff7;--colors-lime-dark-p3-1: color(display-p3 .067 .073 .048);--colors-lime-dark-p3-2: color(display-p3 .086 .1 .067);--colors-lime-dark-p3-3: color(display-p3 .13 .16 .099);--colors-lime-dark-p3-4: color(display-p3 .172 .214 .126);--colors-lime-dark-p3-5: color(display-p3 .213 .266 .153);--colors-lime-dark-p3-6: color(display-p3 .257 .321 .182);--colors-lime-dark-p3-7: color(display-p3 .307 .383 .215);--colors-lime-dark-p3-8: color(display-p3 .365 .456 .25);--colors-lime-dark-p3-9: color(display-p3 .78 .928 .466);--colors-lime-dark-p3-10: color(display-p3 .865 .995 .519);--colors-lime-dark-p3-11: color(display-p3 .771 .893 .485);--colors-lime-dark-p3-12: color(display-p3 .905 .966 .753);--colors-lime-dark-p3-a-1: color(display-p3 .067 .941 0 / .009);--colors-lime-dark-p3-a-2: color(display-p3 .584 .996 .071 / .038);--colors-lime-dark-p3-a-3: color(display-p3 .69 1 .38 / .101);--colors-lime-dark-p3-a-4: color(display-p3 .729 1 .435 / .16);--colors-lime-dark-p3-a-5: color(display-p3 .745 1 .471 / .215);--colors-lime-dark-p3-a-6: color(display-p3 .769 1 .482 / .274);--colors-lime-dark-p3-a-7: color(display-p3 .769 1 .506 / .341);--colors-lime-dark-p3-a-8: color(display-p3 .784 1 .51 / .416);--colors-lime-dark-p3-a-9: color(display-p3 .839 1 .502 / .925);--colors-lime-dark-p3-a-10: color(display-p3 .871 1 .522 / .996);--colors-lime-dark-p3-a-11: color(display-p3 .771 .893 .485);--colors-lime-dark-p3-a-12: color(display-p3 .905 .966 .753);--colors-lime-a-1: var(--colors-lime-light-a-1);--colors-lime-a-2: var(--colors-lime-light-a-2);--colors-lime-a-3: var(--colors-lime-light-a-3);--colors-lime-a-4: var(--colors-lime-light-a-4);--colors-lime-a-5: var(--colors-lime-light-a-5);--colors-lime-a-6: var(--colors-lime-light-a-6);--colors-lime-a-7: var(--colors-lime-light-a-7);--colors-lime-a-8: var(--colors-lime-light-a-8);--colors-lime-a-9: var(--colors-lime-light-a-9);--colors-lime-a-10: var(--colors-lime-light-a-10);--colors-lime-a-11: var(--colors-lime-light-a-11);--colors-lime-a-12: var(--colors-lime-light-a-12);--colors-lime-p3-1: var(--colors-lime-light-p3-1);--colors-lime-p3-2: var(--colors-lime-light-p3-2);--colors-lime-p3-3: var(--colors-lime-light-p3-3);--colors-lime-p3-4: var(--colors-lime-light-p3-4);--colors-lime-p3-5: var(--colors-lime-light-p3-5);--colors-lime-p3-6: var(--colors-lime-light-p3-6);--colors-lime-p3-7: var(--colors-lime-light-p3-7);--colors-lime-p3-8: var(--colors-lime-light-p3-8);--colors-lime-p3-9: var(--colors-lime-light-p3-9);--colors-lime-p3-10: var(--colors-lime-light-p3-10);--colors-lime-p3-11: var(--colors-lime-light-p3-11);--colors-lime-p3-12: var(--colors-lime-light-p3-12);--colors-lime-p3-a-1: var(--colors-lime-light-p3-a-1);--colors-lime-p3-a-2: var(--colors-lime-light-p3-a-2);--colors-lime-p3-a-3: var(--colors-lime-light-p3-a-3);--colors-lime-p3-a-4: var(--colors-lime-light-p3-a-4);--colors-lime-p3-a-5: var(--colors-lime-light-p3-a-5);--colors-lime-p3-a-6: var(--colors-lime-light-p3-a-6);--colors-lime-p3-a-7: var(--colors-lime-light-p3-a-7);--colors-lime-p3-a-8: var(--colors-lime-light-p3-a-8);--colors-lime-p3-a-9: var(--colors-lime-light-p3-a-9);--colors-lime-p3-a-10: var(--colors-lime-light-p3-a-10);--colors-lime-p3-a-11: var(--colors-lime-light-p3-a-11);--colors-lime-p3-a-12: var(--colors-lime-light-p3-a-12);--colors-orange-1: var(--colors-orange-light-1);--colors-orange-2: var(--colors-orange-light-2);--colors-orange-3: var(--colors-orange-light-3);--colors-orange-4: var(--colors-orange-light-4);--colors-orange-5: var(--colors-orange-light-5);--colors-orange-6: var(--colors-orange-light-6);--colors-orange-7: var(--colors-orange-light-7);--colors-orange-8: var(--colors-orange-light-8);--colors-orange-9: var(--colors-orange-light-9);--colors-orange-10: var(--colors-orange-light-10);--colors-orange-11: var(--colors-orange-light-11);--colors-orange-12: var(--colors-orange-light-12);--colors-orange-light-1: #fefcfb;--colors-orange-light-2: #fff7ed;--colors-orange-light-3: #ffefd6;--colors-orange-light-4: #ffdfb5;--colors-orange-light-5: #ffd19a;--colors-orange-light-6: #ffc182;--colors-orange-light-7: #f5ae73;--colors-orange-light-8: #ec9455;--colors-orange-light-9: #f76b15;--colors-orange-light-10: #ef5f00;--colors-orange-light-11: #cc4e00;--colors-orange-light-12: #582d1d;--colors-orange-light-a-1: #c0400004;--colors-orange-light-a-2: #ff8e0012;--colors-orange-light-a-3: #ff9c0029;--colors-orange-light-a-4: #ff91014a;--colors-orange-light-a-5: #ff8b0065;--colors-orange-light-a-6: #ff81007d;--colors-orange-light-a-7: #ed6c008c;--colors-orange-light-a-8: #e35f00aa;--colors-orange-light-a-9: #f65e00ea;--colors-orange-light-a-10: #ef5f00;--colors-orange-light-a-11: #cc4e00;--colors-orange-light-a-12: #431200e2;--colors-orange-light-p3-1: color(display-p3 .995 .988 .985);--colors-orange-light-p3-2: color(display-p3 .994 .968 .934);--colors-orange-light-p3-3: color(display-p3 .989 .938 .85);--colors-orange-light-p3-4: color(display-p3 1 .874 .687);--colors-orange-light-p3-5: color(display-p3 1 .821 .583);--colors-orange-light-p3-6: color(display-p3 .975 .767 .545);--colors-orange-light-p3-7: color(display-p3 .919 .693 .486);--colors-orange-light-p3-8: color(display-p3 .877 .597 .379);--colors-orange-light-p3-9: color(display-p3 .9 .45 .2);--colors-orange-light-p3-10: color(display-p3 .87 .409 .164);--colors-orange-light-p3-11: color(display-p3 .76 .34 0);--colors-orange-light-p3-12: color(display-p3 .323 .185 .127);--colors-orange-light-p3-a-1: color(display-p3 .757 .267 .024 / .016);--colors-orange-light-p3-a-2: color(display-p3 .886 .533 .008 / .067);--colors-orange-light-p3-a-3: color(display-p3 .922 .584 .008 / .15);--colors-orange-light-p3-a-4: color(display-p3 1 .604 .004 / .314);--colors-orange-light-p3-a-5: color(display-p3 1 .569 .004 / .416);--colors-orange-light-p3-a-6: color(display-p3 .949 .494 .004 / .455);--colors-orange-light-p3-a-7: color(display-p3 .839 .408 0 / .514);--colors-orange-light-p3-a-8: color(display-p3 .804 .349 0 / .62);--colors-orange-light-p3-a-9: color(display-p3 .878 .314 0 / .8);--colors-orange-light-p3-a-10: color(display-p3 .843 .29 0 / .836);--colors-orange-light-p3-a-11: color(display-p3 .76 .34 0);--colors-orange-light-p3-a-12: color(display-p3 .323 .185 .127);--colors-orange-dark-1: #17120e;--colors-orange-dark-2: #1e160f;--colors-orange-dark-3: #331e0b;--colors-orange-dark-4: #462100;--colors-orange-dark-5: #562800;--colors-orange-dark-6: #66350c;--colors-orange-dark-7: #7e451d;--colors-orange-dark-8: #a35829;--colors-orange-dark-9: #f76b15;--colors-orange-dark-10: #ff801f;--colors-orange-dark-11: #ffa057;--colors-orange-dark-12: #ffe0c2;--colors-orange-dark-a-1: #ec360007;--colors-orange-dark-a-2: #fe6d000e;--colors-orange-dark-a-3: #fb6a0025;--colors-orange-dark-a-4: #ff590039;--colors-orange-dark-a-5: #ff61004a;--colors-orange-dark-a-6: #fd75045c;--colors-orange-dark-a-7: #ff832c75;--colors-orange-dark-a-8: #fe84389d;--colors-orange-dark-a-9: #fe6d15f7;--colors-orange-dark-a-10: #ff801f;--colors-orange-dark-a-11: #ffa057;--colors-orange-dark-a-12: #ffe0c2;--colors-orange-dark-p3-1: color(display-p3 .088 .07 .057);--colors-orange-dark-p3-2: color(display-p3 .113 .089 .061);--colors-orange-dark-p3-3: color(display-p3 .189 .12 .056);--colors-orange-dark-p3-4: color(display-p3 .262 .132 0);--colors-orange-dark-p3-5: color(display-p3 .315 .168 .016);--colors-orange-dark-p3-6: color(display-p3 .376 .219 .088);--colors-orange-dark-p3-7: color(display-p3 .465 .283 .147);--colors-orange-dark-p3-8: color(display-p3 .601 .359 .201);--colors-orange-dark-p3-9: color(display-p3 .9 .45 .2);--colors-orange-dark-p3-10: color(display-p3 .98 .51 .23);--colors-orange-dark-p3-11: color(display-p3 1 .63 .38);--colors-orange-dark-p3-12: color(display-p3 .98 .883 .775);--colors-orange-dark-p3-a-1: color(display-p3 .961 .247 0 / .022);--colors-orange-dark-p3-a-2: color(display-p3 .992 .529 0 / .051);--colors-orange-dark-p3-a-3: color(display-p3 .996 .486 0 / .131);--colors-orange-dark-p3-a-4: color(display-p3 .996 .384 0 / .211);--colors-orange-dark-p3-a-5: color(display-p3 1 .455 0 / .265);--colors-orange-dark-p3-a-6: color(display-p3 1 .529 .129 / .332);--colors-orange-dark-p3-a-7: color(display-p3 1 .569 .251 / .429);--colors-orange-dark-p3-a-8: color(display-p3 1 .584 .302 / .572);--colors-orange-dark-p3-a-9: color(display-p3 1 .494 .216 / .895);--colors-orange-dark-p3-a-10: color(display-p3 1 .522 .235 / .979);--colors-orange-dark-p3-a-11: color(display-p3 1 .63 .38);--colors-orange-dark-p3-a-12: color(display-p3 .98 .883 .775);--colors-orange-a-1: var(--colors-orange-light-a-1);--colors-orange-a-2: var(--colors-orange-light-a-2);--colors-orange-a-3: var(--colors-orange-light-a-3);--colors-orange-a-4: var(--colors-orange-light-a-4);--colors-orange-a-5: var(--colors-orange-light-a-5);--colors-orange-a-6: var(--colors-orange-light-a-6);--colors-orange-a-7: var(--colors-orange-light-a-7);--colors-orange-a-8: var(--colors-orange-light-a-8);--colors-orange-a-9: var(--colors-orange-light-a-9);--colors-orange-a-10: var(--colors-orange-light-a-10);--colors-orange-a-11: var(--colors-orange-light-a-11);--colors-orange-a-12: var(--colors-orange-light-a-12);--colors-orange-p3-1: var(--colors-orange-light-p3-1);--colors-orange-p3-2: var(--colors-orange-light-p3-2);--colors-orange-p3-3: var(--colors-orange-light-p3-3);--colors-orange-p3-4: var(--colors-orange-light-p3-4);--colors-orange-p3-5: var(--colors-orange-light-p3-5);--colors-orange-p3-6: var(--colors-orange-light-p3-6);--colors-orange-p3-7: var(--colors-orange-light-p3-7);--colors-orange-p3-8: var(--colors-orange-light-p3-8);--colors-orange-p3-9: var(--colors-orange-light-p3-9);--colors-orange-p3-10: var(--colors-orange-light-p3-10);--colors-orange-p3-11: var(--colors-orange-light-p3-11);--colors-orange-p3-12: var(--colors-orange-light-p3-12);--colors-orange-p3-a-1: var(--colors-orange-light-p3-a-1);--colors-orange-p3-a-2: var(--colors-orange-light-p3-a-2);--colors-orange-p3-a-3: var(--colors-orange-light-p3-a-3);--colors-orange-p3-a-4: var(--colors-orange-light-p3-a-4);--colors-orange-p3-a-5: var(--colors-orange-light-p3-a-5);--colors-orange-p3-a-6: var(--colors-orange-light-p3-a-6);--colors-orange-p3-a-7: var(--colors-orange-light-p3-a-7);--colors-orange-p3-a-8: var(--colors-orange-light-p3-a-8);--colors-orange-p3-a-9: var(--colors-orange-light-p3-a-9);--colors-orange-p3-a-10: var(--colors-orange-light-p3-a-10);--colors-orange-p3-a-11: var(--colors-orange-light-p3-a-11);--colors-orange-p3-a-12: var(--colors-orange-light-p3-a-12);--colors-pink-1: var(--colors-pink-light-1);--colors-pink-2: var(--colors-pink-light-2);--colors-pink-3: var(--colors-pink-light-3);--colors-pink-4: var(--colors-pink-light-4);--colors-pink-5: var(--colors-pink-light-5);--colors-pink-6: var(--colors-pink-light-6);--colors-pink-7: var(--colors-pink-light-7);--colors-pink-8: var(--colors-pink-light-8);--colors-pink-9: var(--colors-pink-light-9);--colors-pink-10: var(--colors-pink-light-10);--colors-pink-11: var(--colors-pink-light-11);--colors-pink-12: var(--colors-pink-light-12);--colors-pink-light-1: #fffcfe;--colors-pink-light-2: #fef7fb;--colors-pink-light-3: #fee9f5;--colors-pink-light-4: #fbdcef;--colors-pink-light-5: #f6cee7;--colors-pink-light-6: #efbfdd;--colors-pink-light-7: #e7acd0;--colors-pink-light-8: #dd93c2;--colors-pink-light-9: #d6409f;--colors-pink-light-10: #cf3897;--colors-pink-light-11: #c2298a;--colors-pink-light-12: #651249;--colors-pink-light-a-1: #ff00aa03;--colors-pink-light-a-2: #e0008008;--colors-pink-light-a-3: #f4008c16;--colors-pink-light-a-4: #e2008b23;--colors-pink-light-a-5: #d1008331;--colors-pink-light-a-6: #c0007840;--colors-pink-light-a-7: #b6006f53;--colors-pink-light-a-8: #af006f6c;--colors-pink-light-a-9: #c8007fbf;--colors-pink-light-a-10: #c2007ac7;--colors-pink-light-a-11: #b60074d6;--colors-pink-light-a-12: #59003bed;--colors-pink-light-p3-1: color(display-p3 .998 .989 .996);--colors-pink-light-p3-2: color(display-p3 .992 .97 .985);--colors-pink-light-p3-3: color(display-p3 .981 .917 .96);--colors-pink-light-p3-4: color(display-p3 .963 .867 .932);--colors-pink-light-p3-5: color(display-p3 .939 .815 .899);--colors-pink-light-p3-6: color(display-p3 .907 .756 .859);--colors-pink-light-p3-7: color(display-p3 .869 .683 .81);--colors-pink-light-p3-8: color(display-p3 .825 .59 .751);--colors-pink-light-p3-9: color(display-p3 .775 .297 .61);--colors-pink-light-p3-10: color(display-p3 .748 .27 .581);--colors-pink-light-p3-11: color(display-p3 .698 .219 .528);--colors-pink-light-p3-12: color(display-p3 .363 .101 .279);--colors-pink-light-p3-a-1: color(display-p3 .675 .024 .675 / .012);--colors-pink-light-p3-a-2: color(display-p3 .757 .02 .51 / .032);--colors-pink-light-p3-a-3: color(display-p3 .765 .008 .529 / .083);--colors-pink-light-p3-a-4: color(display-p3 .737 .008 .506 / .134);--colors-pink-light-p3-a-5: color(display-p3 .663 .004 .451 / .185);--colors-pink-light-p3-a-6: color(display-p3 .616 .004 .424 / .244);--colors-pink-light-p3-a-7: color(display-p3 .596 .004 .412 / .318);--colors-pink-light-p3-a-8: color(display-p3 .573 .004 .404 / .412);--colors-pink-light-p3-a-9: color(display-p3 .682 0 .447 / .702);--colors-pink-light-p3-a-10: color(display-p3 .655 0 .424 / .73);--colors-pink-light-p3-a-11: color(display-p3 .698 .219 .528);--colors-pink-light-p3-a-12: color(display-p3 .363 .101 .279);--colors-pink-dark-1: #191117;--colors-pink-dark-2: #21121d;--colors-pink-dark-3: #37172f;--colors-pink-dark-4: #4b143d;--colors-pink-dark-5: #591c47;--colors-pink-dark-6: #692955;--colors-pink-dark-7: #833869;--colors-pink-dark-8: #a84885;--colors-pink-dark-9: #d6409f;--colors-pink-dark-10: #de51a8;--colors-pink-dark-11: #ff8dcc;--colors-pink-dark-12: #fdd1ea;--colors-pink-dark-a-1: #f412bc09;--colors-pink-dark-a-2: #f420bb12;--colors-pink-dark-a-3: #fe37cc29;--colors-pink-dark-a-4: #fc1ec43f;--colors-pink-dark-a-5: #fd35c24e;--colors-pink-dark-a-6: #fd51c75f;--colors-pink-dark-a-7: #fd62c87b;--colors-pink-dark-a-8: #ff68c8a2;--colors-pink-dark-a-9: #fe49bcd4;--colors-pink-dark-a-10: #ff5cc0dc;--colors-pink-dark-a-11: #ff8dcc;--colors-pink-dark-a-12: #ffd3ecfd;--colors-pink-dark-p3-1: color(display-p3 .093 .068 .089);--colors-pink-dark-p3-2: color(display-p3 .121 .073 .11);--colors-pink-dark-p3-3: color(display-p3 .198 .098 .179);--colors-pink-dark-p3-4: color(display-p3 .271 .095 .231);--colors-pink-dark-p3-5: color(display-p3 .32 .127 .273);--colors-pink-dark-p3-6: color(display-p3 .382 .177 .326);--colors-pink-dark-p3-7: color(display-p3 .477 .238 .405);--colors-pink-dark-p3-8: color(display-p3 .612 .304 .51);--colors-pink-dark-p3-9: color(display-p3 .775 .297 .61);--colors-pink-dark-p3-10: color(display-p3 .808 .356 .645);--colors-pink-dark-p3-11: color(display-p3 1 .535 .78);--colors-pink-dark-p3-12: color(display-p3 .964 .826 .912);--colors-pink-dark-p3-a-1: color(display-p3 .984 .071 .855 / .03);--colors-pink-dark-p3-a-2: color(display-p3 1 .2 .8 / .059);--colors-pink-dark-p3-a-3: color(display-p3 1 .294 .886 / .139);--colors-pink-dark-p3-a-4: color(display-p3 1 .192 .82 / .219);--colors-pink-dark-p3-a-5: color(display-p3 1 .282 .827 / .274);--colors-pink-dark-p3-a-6: color(display-p3 1 .396 .835 / .337);--colors-pink-dark-p3-a-7: color(display-p3 1 .459 .831 / .442);--colors-pink-dark-p3-a-8: color(display-p3 1 .478 .827 / .585);--colors-pink-dark-p3-a-9: color(display-p3 1 .373 .784 / .761);--colors-pink-dark-p3-a-10: color(display-p3 1 .435 .792 / .795);--colors-pink-dark-p3-a-11: color(display-p3 1 .535 .78);--colors-pink-dark-p3-a-12: color(display-p3 .964 .826 .912);--colors-pink-a-1: var(--colors-pink-light-a-1);--colors-pink-a-2: var(--colors-pink-light-a-2);--colors-pink-a-3: var(--colors-pink-light-a-3);--colors-pink-a-4: var(--colors-pink-light-a-4);--colors-pink-a-5: var(--colors-pink-light-a-5);--colors-pink-a-6: var(--colors-pink-light-a-6);--colors-pink-a-7: var(--colors-pink-light-a-7);--colors-pink-a-8: var(--colors-pink-light-a-8);--colors-pink-a-9: var(--colors-pink-light-a-9);--colors-pink-a-10: var(--colors-pink-light-a-10);--colors-pink-a-11: var(--colors-pink-light-a-11);--colors-pink-a-12: var(--colors-pink-light-a-12);--colors-pink-p3-1: var(--colors-pink-light-p3-1);--colors-pink-p3-2: var(--colors-pink-light-p3-2);--colors-pink-p3-3: var(--colors-pink-light-p3-3);--colors-pink-p3-4: var(--colors-pink-light-p3-4);--colors-pink-p3-5: var(--colors-pink-light-p3-5);--colors-pink-p3-6: var(--colors-pink-light-p3-6);--colors-pink-p3-7: var(--colors-pink-light-p3-7);--colors-pink-p3-8: var(--colors-pink-light-p3-8);--colors-pink-p3-9: var(--colors-pink-light-p3-9);--colors-pink-p3-10: var(--colors-pink-light-p3-10);--colors-pink-p3-11: var(--colors-pink-light-p3-11);--colors-pink-p3-12: var(--colors-pink-light-p3-12);--colors-pink-p3-a-1: var(--colors-pink-light-p3-a-1);--colors-pink-p3-a-2: var(--colors-pink-light-p3-a-2);--colors-pink-p3-a-3: var(--colors-pink-light-p3-a-3);--colors-pink-p3-a-4: var(--colors-pink-light-p3-a-4);--colors-pink-p3-a-5: var(--colors-pink-light-p3-a-5);--colors-pink-p3-a-6: var(--colors-pink-light-p3-a-6);--colors-pink-p3-a-7: var(--colors-pink-light-p3-a-7);--colors-pink-p3-a-8: var(--colors-pink-light-p3-a-8);--colors-pink-p3-a-9: var(--colors-pink-light-p3-a-9);--colors-pink-p3-a-10: var(--colors-pink-light-p3-a-10);--colors-pink-p3-a-11: var(--colors-pink-light-p3-a-11);--colors-pink-p3-a-12: var(--colors-pink-light-p3-a-12);--colors-purple-1: var(--colors-purple-light-1);--colors-purple-2: var(--colors-purple-light-2);--colors-purple-3: var(--colors-purple-light-3);--colors-purple-4: var(--colors-purple-light-4);--colors-purple-5: var(--colors-purple-light-5);--colors-purple-6: var(--colors-purple-light-6);--colors-purple-7: var(--colors-purple-light-7);--colors-purple-8: var(--colors-purple-light-8);--colors-purple-9: var(--colors-purple-light-9);--colors-purple-10: var(--colors-purple-light-10);--colors-purple-11: var(--colors-purple-light-11);--colors-purple-12: var(--colors-purple-light-12);--colors-purple-light-1: #fefcfe;--colors-purple-light-2: #fbf7fe;--colors-purple-light-3: #f7edfe;--colors-purple-light-4: #f2e2fc;--colors-purple-light-5: #ead5f9;--colors-purple-light-6: #e0c4f4;--colors-purple-light-7: #d1afec;--colors-purple-light-8: #be93e4;--colors-purple-light-9: #8e4ec6;--colors-purple-light-10: #8347b9;--colors-purple-light-11: #8145b5;--colors-purple-light-12: #402060;--colors-purple-light-a-1: #aa00aa03;--colors-purple-light-a-2: #8000e008;--colors-purple-light-a-3: #8e00f112;--colors-purple-light-a-4: #8d00e51d;--colors-purple-light-a-5: #8000db2a;--colors-purple-light-a-6: #7a01d03b;--colors-purple-light-a-7: #6d00c350;--colors-purple-light-a-8: #6600c06c;--colors-purple-light-a-9: #5c00adb1;--colors-purple-light-a-10: #53009eb8;--colors-purple-light-a-11: #52009aba;--colors-purple-light-a-12: #250049df;--colors-purple-light-p3-1: color(display-p3 .995 .988 .996);--colors-purple-light-p3-2: color(display-p3 .983 .971 .993);--colors-purple-light-p3-3: color(display-p3 .963 .931 .989);--colors-purple-light-p3-4: color(display-p3 .937 .888 .981);--colors-purple-light-p3-5: color(display-p3 .904 .837 .966);--colors-purple-light-p3-6: color(display-p3 .86 .774 .942);--colors-purple-light-p3-7: color(display-p3 .799 .69 .91);--colors-purple-light-p3-8: color(display-p3 .719 .583 .874);--colors-purple-light-p3-9: color(display-p3 .523 .318 .751);--colors-purple-light-p3-10: color(display-p3 .483 .289 .7);--colors-purple-light-p3-11: color(display-p3 .473 .281 .687);--colors-purple-light-p3-12: color(display-p3 .234 .132 .363);--colors-purple-light-p3-a-1: color(display-p3 .675 .024 .675 / .012);--colors-purple-light-p3-a-2: color(display-p3 .443 .024 .722 / .028);--colors-purple-light-p3-a-3: color(display-p3 .506 .008 .835 / .071);--colors-purple-light-p3-a-4: color(display-p3 .451 .004 .831 / .114);--colors-purple-light-p3-a-5: color(display-p3 .431 .004 .788 / .165);--colors-purple-light-p3-a-6: color(display-p3 .384 .004 .745 / .228);--colors-purple-light-p3-a-7: color(display-p3 .357 .004 .71 / .31);--colors-purple-light-p3-a-8: color(display-p3 .322 .004 .702 / .416);--colors-purple-light-p3-a-9: color(display-p3 .298 0 .639 / .683);--colors-purple-light-p3-a-10: color(display-p3 .271 0 .58 / .71);--colors-purple-light-p3-a-11: color(display-p3 .473 .281 .687);--colors-purple-light-p3-a-12: color(display-p3 .234 .132 .363);--colors-purple-dark-1: #18111b;--colors-purple-dark-2: #1e1523;--colors-purple-dark-3: #301c3b;--colors-purple-dark-4: #3d224e;--colors-purple-dark-5: #48295c;--colors-purple-dark-6: #54346b;--colors-purple-dark-7: #664282;--colors-purple-dark-8: #8457aa;--colors-purple-dark-9: #8e4ec6;--colors-purple-dark-10: #9a5cd0;--colors-purple-dark-11: #d19dff;--colors-purple-dark-12: #ecd9fa;--colors-purple-dark-a-1: #b412f90b;--colors-purple-dark-a-2: #b744f714;--colors-purple-dark-a-3: #c150ff2d;--colors-purple-dark-a-4: #bb53fd42;--colors-purple-dark-a-5: #be5cfd51;--colors-purple-dark-a-6: #c16dfd61;--colors-purple-dark-a-7: #c378fd7a;--colors-purple-dark-a-8: #c47effa4;--colors-purple-dark-a-9: #b661ffc2;--colors-purple-dark-a-10: #bc6fffcd;--colors-purple-dark-a-11: #d19dff;--colors-purple-dark-a-12: #f1ddfffa;--colors-purple-dark-p3-1: color(display-p3 .09 .068 .103);--colors-purple-dark-p3-2: color(display-p3 .113 .082 .134);--colors-purple-dark-p3-3: color(display-p3 .175 .112 .224);--colors-purple-dark-p3-4: color(display-p3 .224 .137 .297);--colors-purple-dark-p3-5: color(display-p3 .264 .167 .349);--colors-purple-dark-p3-6: color(display-p3 .311 .208 .406);--colors-purple-dark-p3-7: color(display-p3 .381 .266 .496);--colors-purple-dark-p3-8: color(display-p3 .49 .349 .649);--colors-purple-dark-p3-9: color(display-p3 .523 .318 .751);--colors-purple-dark-p3-10: color(display-p3 .57 .373 .791);--colors-purple-dark-p3-11: color(display-p3 .8 .62 1);--colors-purple-dark-p3-12: color(display-p3 .913 .854 .971);--colors-purple-dark-p3-a-1: color(display-p3 .686 .071 .996 / .038);--colors-purple-dark-p3-a-2: color(display-p3 .722 .286 .996 / .072);--colors-purple-dark-p3-a-3: color(display-p3 .718 .349 .996 / .169);--colors-purple-dark-p3-a-4: color(display-p3 .702 .353 1 / .248);--colors-purple-dark-p3-a-5: color(display-p3 .718 .404 1 / .303);--colors-purple-dark-p3-a-6: color(display-p3 .733 .455 1 / .366);--colors-purple-dark-p3-a-7: color(display-p3 .753 .506 1 / .458);--colors-purple-dark-p3-a-8: color(display-p3 .749 .522 1 / .622);--colors-purple-dark-p3-a-9: color(display-p3 .686 .408 1 / .736);--colors-purple-dark-p3-a-10: color(display-p3 .71 .459 1 / .778);--colors-purple-dark-p3-a-11: color(display-p3 .8 .62 1);--colors-purple-dark-p3-a-12: color(display-p3 .913 .854 .971);--colors-purple-a-1: var(--colors-purple-light-a-1);--colors-purple-a-2: var(--colors-purple-light-a-2);--colors-purple-a-3: var(--colors-purple-light-a-3);--colors-purple-a-4: var(--colors-purple-light-a-4);--colors-purple-a-5: var(--colors-purple-light-a-5);--colors-purple-a-6: var(--colors-purple-light-a-6);--colors-purple-a-7: var(--colors-purple-light-a-7);--colors-purple-a-8: var(--colors-purple-light-a-8);--colors-purple-a-9: var(--colors-purple-light-a-9);--colors-purple-a-10: var(--colors-purple-light-a-10);--colors-purple-a-11: var(--colors-purple-light-a-11);--colors-purple-a-12: var(--colors-purple-light-a-12);--colors-purple-p3-1: var(--colors-purple-light-p3-1);--colors-purple-p3-2: var(--colors-purple-light-p3-2);--colors-purple-p3-3: var(--colors-purple-light-p3-3);--colors-purple-p3-4: var(--colors-purple-light-p3-4);--colors-purple-p3-5: var(--colors-purple-light-p3-5);--colors-purple-p3-6: var(--colors-purple-light-p3-6);--colors-purple-p3-7: var(--colors-purple-light-p3-7);--colors-purple-p3-8: var(--colors-purple-light-p3-8);--colors-purple-p3-9: var(--colors-purple-light-p3-9);--colors-purple-p3-10: var(--colors-purple-light-p3-10);--colors-purple-p3-11: var(--colors-purple-light-p3-11);--colors-purple-p3-12: var(--colors-purple-light-p3-12);--colors-purple-p3-a-1: var(--colors-purple-light-p3-a-1);--colors-purple-p3-a-2: var(--colors-purple-light-p3-a-2);--colors-purple-p3-a-3: var(--colors-purple-light-p3-a-3);--colors-purple-p3-a-4: var(--colors-purple-light-p3-a-4);--colors-purple-p3-a-5: var(--colors-purple-light-p3-a-5);--colors-purple-p3-a-6: var(--colors-purple-light-p3-a-6);--colors-purple-p3-a-7: var(--colors-purple-light-p3-a-7);--colors-purple-p3-a-8: var(--colors-purple-light-p3-a-8);--colors-purple-p3-a-9: var(--colors-purple-light-p3-a-9);--colors-purple-p3-a-10: var(--colors-purple-light-p3-a-10);--colors-purple-p3-a-11: var(--colors-purple-light-p3-a-11);--colors-purple-p3-a-12: var(--colors-purple-light-p3-a-12);--colors-red-1: var(--colors-red-light-1);--colors-red-2: var(--colors-red-light-2);--colors-red-3: var(--colors-red-light-3);--colors-red-4: var(--colors-red-light-4);--colors-red-5: var(--colors-red-light-5);--colors-red-6: var(--colors-red-light-6);--colors-red-7: var(--colors-red-light-7);--colors-red-8: var(--colors-red-light-8);--colors-red-9: var(--colors-red-light-9);--colors-red-10: var(--colors-red-light-10);--colors-red-11: var(--colors-red-light-11);--colors-red-12: var(--colors-red-light-12);--colors-red-light-1: #fffcfc;--colors-red-light-2: #fff7f7;--colors-red-light-3: #feebec;--colors-red-light-4: #ffdbdc;--colors-red-light-5: #ffcdce;--colors-red-light-6: #fdbdbe;--colors-red-light-7: #f4a9aa;--colors-red-light-8: #eb8e90;--colors-red-light-9: #e5484d;--colors-red-light-10: #dc3e42;--colors-red-light-11: #ce2c31;--colors-red-light-12: #641723;--colors-red-light-a-1: #ff000003;--colors-red-light-a-2: #ff000008;--colors-red-light-a-3: #f3000d14;--colors-red-light-a-4: #ff000824;--colors-red-light-a-5: #ff000632;--colors-red-light-a-6: #f8000442;--colors-red-light-a-7: #df000356;--colors-red-light-a-8: #d2000571;--colors-red-light-a-9: #db0007b7;--colors-red-light-a-10: #d10005c1;--colors-red-light-a-11: #c40006d3;--colors-red-light-a-12: #55000de8;--colors-red-light-p3-1: color(display-p3 .998 .989 .988);--colors-red-light-p3-2: color(display-p3 .995 .971 .971);--colors-red-light-p3-3: color(display-p3 .985 .925 .925);--colors-red-light-p3-4: color(display-p3 .999 .866 .866);--colors-red-light-p3-5: color(display-p3 .984 .812 .811);--colors-red-light-p3-6: color(display-p3 .955 .751 .749);--colors-red-light-p3-7: color(display-p3 .915 .675 .672);--colors-red-light-p3-8: color(display-p3 .872 .575 .572);--colors-red-light-p3-9: color(display-p3 .83 .329 .324);--colors-red-light-p3-10: color(display-p3 .798 .294 .285);--colors-red-light-p3-11: color(display-p3 .744 .234 .222);--colors-red-light-p3-12: color(display-p3 .36 .115 .143);--colors-red-light-p3-a-1: color(display-p3 .675 .024 .024 / .012);--colors-red-light-p3-a-2: color(display-p3 .863 .024 .024 / .028);--colors-red-light-p3-a-3: color(display-p3 .792 .008 .008 / .075);--colors-red-light-p3-a-4: color(display-p3 1 .008 .008 / .134);--colors-red-light-p3-a-5: color(display-p3 .918 .008 .008 / .189);--colors-red-light-p3-a-6: color(display-p3 .831 .02 .004 / .251);--colors-red-light-p3-a-7: color(display-p3 .741 .016 .004 / .33);--colors-red-light-p3-a-8: color(display-p3 .698 .012 .004 / .428);--colors-red-light-p3-a-9: color(display-p3 .749 .008 0 / .675);--colors-red-light-p3-a-10: color(display-p3 .714 .012 0 / .714);--colors-red-light-p3-a-11: color(display-p3 .744 .234 .222);--colors-red-light-p3-a-12: color(display-p3 .36 .115 .143);--colors-red-dark-1: #191111;--colors-red-dark-2: #201314;--colors-red-dark-3: #3b1219;--colors-red-dark-4: #500f1c;--colors-red-dark-5: #611623;--colors-red-dark-6: #72232d;--colors-red-dark-7: #8c333a;--colors-red-dark-8: #b54548;--colors-red-dark-9: #e5484d;--colors-red-dark-10: #ec5d5e;--colors-red-dark-11: #ff9592;--colors-red-dark-12: #ffd1d9;--colors-red-dark-a-1: #f4121209;--colors-red-dark-a-2: #f22f3e11;--colors-red-dark-a-3: #ff173f2d;--colors-red-dark-a-4: #fe0a3b44;--colors-red-dark-a-5: #ff204756;--colors-red-dark-a-6: #ff3e5668;--colors-red-dark-a-7: #ff536184;--colors-red-dark-a-8: #ff5d61b0;--colors-red-dark-a-9: #fe4e54e4;--colors-red-dark-a-10: #ff6465eb;--colors-red-dark-a-11: #ff9592;--colors-red-dark-a-12: #ffd1d9;--colors-red-dark-p3-1: color(display-p3 .093 .068 .067);--colors-red-dark-p3-2: color(display-p3 .118 .077 .079);--colors-red-dark-p3-3: color(display-p3 .211 .081 .099);--colors-red-dark-p3-4: color(display-p3 .287 .079 .113);--colors-red-dark-p3-5: color(display-p3 .348 .11 .142);--colors-red-dark-p3-6: color(display-p3 .414 .16 .183);--colors-red-dark-p3-7: color(display-p3 .508 .224 .236);--colors-red-dark-p3-8: color(display-p3 .659 .298 .297);--colors-red-dark-p3-9: color(display-p3 .83 .329 .324);--colors-red-dark-p3-10: color(display-p3 .861 .403 .387);--colors-red-dark-p3-11: color(display-p3 1 .57 .55);--colors-red-dark-p3-12: color(display-p3 .971 .826 .852);--colors-red-dark-p3-a-1: color(display-p3 .984 .071 .071 / .03);--colors-red-dark-p3-a-2: color(display-p3 .996 .282 .282 / .055);--colors-red-dark-p3-a-3: color(display-p3 1 .169 .271 / .156);--colors-red-dark-p3-a-4: color(display-p3 1 .118 .267 / .236);--colors-red-dark-p3-a-5: color(display-p3 1 .212 .314 / .303);--colors-red-dark-p3-a-6: color(display-p3 1 .318 .38 / .374);--colors-red-dark-p3-a-7: color(display-p3 1 .4 .424 / .475);--colors-red-dark-p3-a-8: color(display-p3 1 .431 .431 / .635);--colors-red-dark-p3-a-9: color(display-p3 1 .388 .384 / .82);--colors-red-dark-p3-a-10: color(display-p3 1 .463 .447 / .853);--colors-red-dark-p3-a-11: color(display-p3 1 .57 .55);--colors-red-dark-p3-a-12: color(display-p3 .971 .826 .852);--colors-red-a-1: var(--colors-red-light-a-1);--colors-red-a-2: var(--colors-red-light-a-2);--colors-red-a-3: var(--colors-red-light-a-3);--colors-red-a-4: var(--colors-red-light-a-4);--colors-red-a-5: var(--colors-red-light-a-5);--colors-red-a-6: var(--colors-red-light-a-6);--colors-red-a-7: var(--colors-red-light-a-7);--colors-red-a-8: var(--colors-red-light-a-8);--colors-red-a-9: var(--colors-red-light-a-9);--colors-red-a-10: var(--colors-red-light-a-10);--colors-red-a-11: var(--colors-red-light-a-11);--colors-red-a-12: var(--colors-red-light-a-12);--colors-red-p3-1: var(--colors-red-light-p3-1);--colors-red-p3-2: var(--colors-red-light-p3-2);--colors-red-p3-3: var(--colors-red-light-p3-3);--colors-red-p3-4: var(--colors-red-light-p3-4);--colors-red-p3-5: var(--colors-red-light-p3-5);--colors-red-p3-6: var(--colors-red-light-p3-6);--colors-red-p3-7: var(--colors-red-light-p3-7);--colors-red-p3-8: var(--colors-red-light-p3-8);--colors-red-p3-9: var(--colors-red-light-p3-9);--colors-red-p3-10: var(--colors-red-light-p3-10);--colors-red-p3-11: var(--colors-red-light-p3-11);--colors-red-p3-12: var(--colors-red-light-p3-12);--colors-red-p3-a-1: var(--colors-red-light-p3-a-1);--colors-red-p3-a-2: var(--colors-red-light-p3-a-2);--colors-red-p3-a-3: var(--colors-red-light-p3-a-3);--colors-red-p3-a-4: var(--colors-red-light-p3-a-4);--colors-red-p3-a-5: var(--colors-red-light-p3-a-5);--colors-red-p3-a-6: var(--colors-red-light-p3-a-6);--colors-red-p3-a-7: var(--colors-red-light-p3-a-7);--colors-red-p3-a-8: var(--colors-red-light-p3-a-8);--colors-red-p3-a-9: var(--colors-red-light-p3-a-9);--colors-red-p3-a-10: var(--colors-red-light-p3-a-10);--colors-red-p3-a-11: var(--colors-red-light-p3-a-11);--colors-red-p3-a-12: var(--colors-red-light-p3-a-12);--colors-ruby-1: var(--colors-ruby-light-1);--colors-ruby-2: var(--colors-ruby-light-2);--colors-ruby-3: var(--colors-ruby-light-3);--colors-ruby-4: var(--colors-ruby-light-4);--colors-ruby-5: var(--colors-ruby-light-5);--colors-ruby-6: var(--colors-ruby-light-6);--colors-ruby-7: var(--colors-ruby-light-7);--colors-ruby-8: var(--colors-ruby-light-8);--colors-ruby-9: var(--colors-ruby-light-9);--colors-ruby-10: var(--colors-ruby-light-10);--colors-ruby-11: var(--colors-ruby-light-11);--colors-ruby-12: var(--colors-ruby-light-12);--colors-ruby-light-1: #fffcfd;--colors-ruby-light-2: #fff7f8;--colors-ruby-light-3: #feeaed;--colors-ruby-light-4: #ffdce1;--colors-ruby-light-5: #ffced6;--colors-ruby-light-6: #f8bfc8;--colors-ruby-light-7: #efacb8;--colors-ruby-light-8: #e592a3;--colors-ruby-light-9: #e54666;--colors-ruby-light-10: #dc3b5d;--colors-ruby-light-11: #ca244d;--colors-ruby-light-12: #64172b;--colors-ruby-light-a-1: #ff005503;--colors-ruby-light-a-2: #ff002008;--colors-ruby-light-a-3: #f3002515;--colors-ruby-light-a-4: #ff002523;--colors-ruby-light-a-5: #ff002a31;--colors-ruby-light-a-6: #e4002440;--colors-ruby-light-a-7: #ce002553;--colors-ruby-light-a-8: #c300286d;--colors-ruby-light-a-9: #db002cb9;--colors-ruby-light-a-10: #d2002cc4;--colors-ruby-light-a-11: #c10030db;--colors-ruby-light-a-12: #550016e8;--colors-ruby-light-p3-1: color(display-p3 .998 .989 .992);--colors-ruby-light-p3-2: color(display-p3 .995 .971 .974);--colors-ruby-light-p3-3: color(display-p3 .983 .92 .928);--colors-ruby-light-p3-4: color(display-p3 .987 .869 .885);--colors-ruby-light-p3-5: color(display-p3 .968 .817 .839);--colors-ruby-light-p3-6: color(display-p3 .937 .758 .786);--colors-ruby-light-p3-7: color(display-p3 .897 .685 .721);--colors-ruby-light-p3-8: color(display-p3 .851 .588 .639);--colors-ruby-light-p3-9: color(display-p3 .83 .323 .408);--colors-ruby-light-p3-10: color(display-p3 .795 .286 .375);--colors-ruby-light-p3-11: color(display-p3 .728 .211 .311);--colors-ruby-light-p3-12: color(display-p3 .36 .115 .171);--colors-ruby-light-p3-a-1: color(display-p3 .675 .024 .349 / .012);--colors-ruby-light-p3-a-2: color(display-p3 .863 .024 .024 / .028);--colors-ruby-light-p3-a-3: color(display-p3 .804 .008 .11 / .079);--colors-ruby-light-p3-a-4: color(display-p3 .91 .008 .125 / .13);--colors-ruby-light-p3-a-5: color(display-p3 .831 .004 .133 / .185);--colors-ruby-light-p3-a-6: color(display-p3 .745 .004 .118 / .244);--colors-ruby-light-p3-a-7: color(display-p3 .678 .004 .114 / .314);--colors-ruby-light-p3-a-8: color(display-p3 .639 .004 .125 / .412);--colors-ruby-light-p3-a-9: color(display-p3 .753 0 .129 / .679);--colors-ruby-light-p3-a-10: color(display-p3 .714 0 .125 / .714);--colors-ruby-light-p3-a-11: color(display-p3 .728 .211 .311);--colors-ruby-light-p3-a-12: color(display-p3 .36 .115 .171);--colors-ruby-dark-1: #191113;--colors-ruby-dark-2: #1e1517;--colors-ruby-dark-3: #3a141e;--colors-ruby-dark-4: #4e1325;--colors-ruby-dark-5: #5e1a2e;--colors-ruby-dark-6: #6f2539;--colors-ruby-dark-7: #883447;--colors-ruby-dark-8: #b3445a;--colors-ruby-dark-9: #e54666;--colors-ruby-dark-10: #ec5a72;--colors-ruby-dark-11: #ff949d;--colors-ruby-dark-12: #fed2e1;--colors-ruby-dark-a-1: #f4124a09;--colors-ruby-dark-a-2: #fe5a7f0e;--colors-ruby-dark-a-3: #ff235d2c;--colors-ruby-dark-a-4: #fd195e42;--colors-ruby-dark-a-5: #fe2d6b53;--colors-ruby-dark-a-6: #ff447665;--colors-ruby-dark-a-7: #ff577d80;--colors-ruby-dark-a-8: #ff5c7cae;--colors-ruby-dark-a-9: #fe4c70e4;--colors-ruby-dark-a-10: #ff617beb;--colors-ruby-dark-a-11: #ff949d;--colors-ruby-dark-a-12: #ffd3e2fe;--colors-ruby-dark-p3-1: color(display-p3 .093 .068 .074);--colors-ruby-dark-p3-2: color(display-p3 .113 .083 .089);--colors-ruby-dark-p3-3: color(display-p3 .208 .088 .117);--colors-ruby-dark-p3-4: color(display-p3 .279 .092 .147);--colors-ruby-dark-p3-5: color(display-p3 .337 .12 .18);--colors-ruby-dark-p3-6: color(display-p3 .401 .166 .223);--colors-ruby-dark-p3-7: color(display-p3 .495 .224 .281);--colors-ruby-dark-p3-8: color(display-p3 .652 .295 .359);--colors-ruby-dark-p3-9: color(display-p3 .83 .323 .408);--colors-ruby-dark-p3-10: color(display-p3 .857 .392 .455);--colors-ruby-dark-p3-11: color(display-p3 1 .57 .59);--colors-ruby-dark-p3-12: color(display-p3 .968 .83 .88);--colors-ruby-dark-p3-a-1: color(display-p3 .984 .071 .329 / .03);--colors-ruby-dark-p3-a-2: color(display-p3 .992 .376 .529 / .051);--colors-ruby-dark-p3-a-3: color(display-p3 .996 .196 .404 / .152);--colors-ruby-dark-p3-a-4: color(display-p3 1 .173 .416 / .227);--colors-ruby-dark-p3-a-5: color(display-p3 1 .259 .459 / .29);--colors-ruby-dark-p3-a-6: color(display-p3 1 .341 .506 / .358);--colors-ruby-dark-p3-a-7: color(display-p3 1 .412 .541 / .458);--colors-ruby-dark-p3-a-8: color(display-p3 1 .431 .537 / .627);--colors-ruby-dark-p3-a-9: color(display-p3 1 .376 .482 / .82);--colors-ruby-dark-p3-a-10: color(display-p3 1 .447 .522 / .849);--colors-ruby-dark-p3-a-11: color(display-p3 1 .57 .59);--colors-ruby-dark-p3-a-12: color(display-p3 .968 .83 .88);--colors-ruby-a-1: var(--colors-ruby-light-a-1);--colors-ruby-a-2: var(--colors-ruby-light-a-2);--colors-ruby-a-3: var(--colors-ruby-light-a-3);--colors-ruby-a-4: var(--colors-ruby-light-a-4);--colors-ruby-a-5: var(--colors-ruby-light-a-5);--colors-ruby-a-6: var(--colors-ruby-light-a-6);--colors-ruby-a-7: var(--colors-ruby-light-a-7);--colors-ruby-a-8: var(--colors-ruby-light-a-8);--colors-ruby-a-9: var(--colors-ruby-light-a-9);--colors-ruby-a-10: var(--colors-ruby-light-a-10);--colors-ruby-a-11: var(--colors-ruby-light-a-11);--colors-ruby-a-12: var(--colors-ruby-light-a-12);--colors-ruby-p3-1: var(--colors-ruby-light-p3-1);--colors-ruby-p3-2: var(--colors-ruby-light-p3-2);--colors-ruby-p3-3: var(--colors-ruby-light-p3-3);--colors-ruby-p3-4: var(--colors-ruby-light-p3-4);--colors-ruby-p3-5: var(--colors-ruby-light-p3-5);--colors-ruby-p3-6: var(--colors-ruby-light-p3-6);--colors-ruby-p3-7: var(--colors-ruby-light-p3-7);--colors-ruby-p3-8: var(--colors-ruby-light-p3-8);--colors-ruby-p3-9: var(--colors-ruby-light-p3-9);--colors-ruby-p3-10: var(--colors-ruby-light-p3-10);--colors-ruby-p3-11: var(--colors-ruby-light-p3-11);--colors-ruby-p3-12: var(--colors-ruby-light-p3-12);--colors-ruby-p3-a-1: var(--colors-ruby-light-p3-a-1);--colors-ruby-p3-a-2: var(--colors-ruby-light-p3-a-2);--colors-ruby-p3-a-3: var(--colors-ruby-light-p3-a-3);--colors-ruby-p3-a-4: var(--colors-ruby-light-p3-a-4);--colors-ruby-p3-a-5: var(--colors-ruby-light-p3-a-5);--colors-ruby-p3-a-6: var(--colors-ruby-light-p3-a-6);--colors-ruby-p3-a-7: var(--colors-ruby-light-p3-a-7);--colors-ruby-p3-a-8: var(--colors-ruby-light-p3-a-8);--colors-ruby-p3-a-9: var(--colors-ruby-light-p3-a-9);--colors-ruby-p3-a-10: var(--colors-ruby-light-p3-a-10);--colors-ruby-p3-a-11: var(--colors-ruby-light-p3-a-11);--colors-ruby-p3-a-12: var(--colors-ruby-light-p3-a-12);--colors-teal-1: var(--colors-teal-light-1);--colors-teal-2: var(--colors-teal-light-2);--colors-teal-3: var(--colors-teal-light-3);--colors-teal-4: var(--colors-teal-light-4);--colors-teal-5: var(--colors-teal-light-5);--colors-teal-6: var(--colors-teal-light-6);--colors-teal-7: var(--colors-teal-light-7);--colors-teal-8: var(--colors-teal-light-8);--colors-teal-9: var(--colors-teal-light-9);--colors-teal-10: var(--colors-teal-light-10);--colors-teal-11: var(--colors-teal-light-11);--colors-teal-12: var(--colors-teal-light-12);--colors-teal-light-1: #fafefd;--colors-teal-light-2: #f3fbf9;--colors-teal-light-3: #e0f8f3;--colors-teal-light-4: #ccf3ea;--colors-teal-light-5: #b8eae0;--colors-teal-light-6: #a1ded2;--colors-teal-light-7: #83cdc1;--colors-teal-light-8: #53b9ab;--colors-teal-light-9: #12a594;--colors-teal-light-10: #0d9b8a;--colors-teal-light-11: #008573;--colors-teal-light-12: #0d3d38;--colors-teal-light-a-1: #00cc9905;--colors-teal-light-a-2: #00aa800c;--colors-teal-light-a-3: #00c69d1f;--colors-teal-light-a-4: #00c39633;--colors-teal-light-a-5: #00b49047;--colors-teal-light-a-6: #00a6855e;--colors-teal-light-a-7: #0099807c;--colors-teal-light-a-8: #009783ac;--colors-teal-light-a-9: #009e8ced;--colors-teal-light-a-10: #009684f2;--colors-teal-light-a-11: #008573;--colors-teal-light-a-12: #00332df2;--colors-teal-light-p3-1: color(display-p3 .983 .996 .992);--colors-teal-light-p3-2: color(display-p3 .958 .983 .976);--colors-teal-light-p3-3: color(display-p3 .895 .971 .952);--colors-teal-light-p3-4: color(display-p3 .831 .949 .92);--colors-teal-light-p3-5: color(display-p3 .761 .914 .878);--colors-teal-light-p3-6: color(display-p3 .682 .864 .825);--colors-teal-light-p3-7: color(display-p3 .581 .798 .756);--colors-teal-light-p3-8: color(display-p3 .433 .716 .671);--colors-teal-light-p3-9: color(display-p3 .297 .637 .581);--colors-teal-light-p3-10: color(display-p3 .275 .599 .542);--colors-teal-light-p3-11: color(display-p3 .08 .5 .43);--colors-teal-light-p3-12: color(display-p3 .11 .235 .219);--colors-teal-light-p3-a-1: color(display-p3 .024 .757 .514 / .016);--colors-teal-light-p3-a-2: color(display-p3 .02 .647 .467 / .044);--colors-teal-light-p3-a-3: color(display-p3 .004 .741 .557 / .106);--colors-teal-light-p3-a-4: color(display-p3 .004 .702 .537 / .169);--colors-teal-light-p3-a-5: color(display-p3 .004 .643 .494 / .24);--colors-teal-light-p3-a-6: color(display-p3 .004 .569 .447 / .318);--colors-teal-light-p3-a-7: color(display-p3 .004 .518 .424 / .42);--colors-teal-light-p3-a-8: color(display-p3 0 .506 .424 / .569);--colors-teal-light-p3-a-9: color(display-p3 0 .482 .404 / .702);--colors-teal-light-p3-a-10: color(display-p3 0 .451 .369 / .726);--colors-teal-light-p3-a-11: color(display-p3 .08 .5 .43);--colors-teal-light-p3-a-12: color(display-p3 .11 .235 .219);--colors-teal-dark-1: #0d1514;--colors-teal-dark-2: #111c1b;--colors-teal-dark-3: #0d2d2a;--colors-teal-dark-4: #023b37;--colors-teal-dark-5: #084843;--colors-teal-dark-6: #145750;--colors-teal-dark-7: #1c6961;--colors-teal-dark-8: #207e73;--colors-teal-dark-9: #12a594;--colors-teal-dark-10: #0eb39e;--colors-teal-dark-11: #0bd8b6;--colors-teal-dark-12: #adf0dd;--colors-teal-dark-a-1: #00deab05;--colors-teal-dark-a-2: #12fbe60c;--colors-teal-dark-a-3: #00ffe61e;--colors-teal-dark-a-4: #00ffe92d;--colors-teal-dark-a-5: #00ffea3b;--colors-teal-dark-a-6: #1cffe84b;--colors-teal-dark-a-7: #2efde85f;--colors-teal-dark-a-8: #32ffe775;--colors-teal-dark-a-9: #13ffe49f;--colors-teal-dark-a-10: #0dffe0ae;--colors-teal-dark-a-11: #0afed5d6;--colors-teal-dark-a-12: #b8ffebef;--colors-teal-dark-p3-1: color(display-p3 .059 .083 .079);--colors-teal-dark-p3-2: color(display-p3 .075 .11 .107);--colors-teal-dark-p3-3: color(display-p3 .087 .175 .165);--colors-teal-dark-p3-4: color(display-p3 .087 .227 .214);--colors-teal-dark-p3-5: color(display-p3 .12 .277 .261);--colors-teal-dark-p3-6: color(display-p3 .162 .335 .314);--colors-teal-dark-p3-7: color(display-p3 .205 .406 .379);--colors-teal-dark-p3-8: color(display-p3 .245 .489 .453);--colors-teal-dark-p3-9: color(display-p3 .297 .637 .581);--colors-teal-dark-p3-10: color(display-p3 .319 .69 .62);--colors-teal-dark-p3-11: color(display-p3 .388 .835 .719);--colors-teal-dark-p3-12: color(display-p3 .734 .934 .87);--colors-teal-dark-p3-a-1: color(display-p3 0 .992 .761 / .017);--colors-teal-dark-p3-a-2: color(display-p3 .235 .988 .902 / .047);--colors-teal-dark-p3-a-3: color(display-p3 .235 1 .898 / .118);--colors-teal-dark-p3-a-4: color(display-p3 .18 .996 .929 / .173);--colors-teal-dark-p3-a-5: color(display-p3 .31 1 .933 / .227);--colors-teal-dark-p3-a-6: color(display-p3 .396 1 .933 / .286);--colors-teal-dark-p3-a-7: color(display-p3 .443 1 .925 / .366);--colors-teal-dark-p3-a-8: color(display-p3 .459 1 .925 / .454);--colors-teal-dark-p3-a-9: color(display-p3 .443 .996 .906 / .61);--colors-teal-dark-p3-a-10: color(display-p3 .439 .996 .89 / .669);--colors-teal-dark-p3-a-11: color(display-p3 .388 .835 .719);--colors-teal-dark-p3-a-12: color(display-p3 .734 .934 .87);--colors-teal-a-1: var(--colors-teal-light-a-1);--colors-teal-a-2: var(--colors-teal-light-a-2);--colors-teal-a-3: var(--colors-teal-light-a-3);--colors-teal-a-4: var(--colors-teal-light-a-4);--colors-teal-a-5: var(--colors-teal-light-a-5);--colors-teal-a-6: var(--colors-teal-light-a-6);--colors-teal-a-7: var(--colors-teal-light-a-7);--colors-teal-a-8: var(--colors-teal-light-a-8);--colors-teal-a-9: var(--colors-teal-light-a-9);--colors-teal-a-10: var(--colors-teal-light-a-10);--colors-teal-a-11: var(--colors-teal-light-a-11);--colors-teal-a-12: var(--colors-teal-light-a-12);--colors-teal-p3-1: var(--colors-teal-light-p3-1);--colors-teal-p3-2: var(--colors-teal-light-p3-2);--colors-teal-p3-3: var(--colors-teal-light-p3-3);--colors-teal-p3-4: var(--colors-teal-light-p3-4);--colors-teal-p3-5: var(--colors-teal-light-p3-5);--colors-teal-p3-6: var(--colors-teal-light-p3-6);--colors-teal-p3-7: var(--colors-teal-light-p3-7);--colors-teal-p3-8: var(--colors-teal-light-p3-8);--colors-teal-p3-9: var(--colors-teal-light-p3-9);--colors-teal-p3-10: var(--colors-teal-light-p3-10);--colors-teal-p3-11: var(--colors-teal-light-p3-11);--colors-teal-p3-12: var(--colors-teal-light-p3-12);--colors-teal-p3-a-1: var(--colors-teal-light-p3-a-1);--colors-teal-p3-a-2: var(--colors-teal-light-p3-a-2);--colors-teal-p3-a-3: var(--colors-teal-light-p3-a-3);--colors-teal-p3-a-4: var(--colors-teal-light-p3-a-4);--colors-teal-p3-a-5: var(--colors-teal-light-p3-a-5);--colors-teal-p3-a-6: var(--colors-teal-light-p3-a-6);--colors-teal-p3-a-7: var(--colors-teal-light-p3-a-7);--colors-teal-p3-a-8: var(--colors-teal-light-p3-a-8);--colors-teal-p3-a-9: var(--colors-teal-light-p3-a-9);--colors-teal-p3-a-10: var(--colors-teal-light-p3-a-10);--colors-teal-p3-a-11: var(--colors-teal-light-p3-a-11);--colors-teal-p3-a-12: var(--colors-teal-light-p3-a-12);--colors-tomato-1: var(--colors-tomato-light-1);--colors-tomato-2: var(--colors-tomato-light-2);--colors-tomato-3: var(--colors-tomato-light-3);--colors-tomato-4: var(--colors-tomato-light-4);--colors-tomato-5: var(--colors-tomato-light-5);--colors-tomato-6: var(--colors-tomato-light-6);--colors-tomato-7: var(--colors-tomato-light-7);--colors-tomato-8: var(--colors-tomato-light-8);--colors-tomato-9: var(--colors-tomato-light-9);--colors-tomato-10: var(--colors-tomato-light-10);--colors-tomato-11: var(--colors-tomato-light-11);--colors-tomato-12: var(--colors-tomato-light-12);--colors-tomato-light-1: #fffcfc;--colors-tomato-light-2: #fff8f7;--colors-tomato-light-3: #feebe7;--colors-tomato-light-4: #ffdcd3;--colors-tomato-light-5: #ffcdc2;--colors-tomato-light-6: #fdbdaf;--colors-tomato-light-7: #f5a898;--colors-tomato-light-8: #ec8e7b;--colors-tomato-light-9: #e54d2e;--colors-tomato-light-10: #dd4425;--colors-tomato-light-11: #d13415;--colors-tomato-light-12: #5c271f;--colors-tomato-light-a-1: #ff000003;--colors-tomato-light-a-2: #ff200008;--colors-tomato-light-a-3: #f52b0018;--colors-tomato-light-a-4: #ff35002c;--colors-tomato-light-a-5: #ff2e003d;--colors-tomato-light-a-6: #f92d0050;--colors-tomato-light-a-7: #e7280067;--colors-tomato-light-a-8: #db250084;--colors-tomato-light-a-9: #df2600d1;--colors-tomato-light-a-10: #d72400da;--colors-tomato-light-a-11: #cd2200ea;--colors-tomato-light-a-12: #460900e0;--colors-tomato-light-p3-1: color(display-p3 .998 .989 .988);--colors-tomato-light-p3-2: color(display-p3 .994 .974 .969);--colors-tomato-light-p3-3: color(display-p3 .985 .924 .909);--colors-tomato-light-p3-4: color(display-p3 .996 .868 .835);--colors-tomato-light-p3-5: color(display-p3 .98 .812 .77);--colors-tomato-light-p3-6: color(display-p3 .953 .75 .698);--colors-tomato-light-p3-7: color(display-p3 .917 .673 .611);--colors-tomato-light-p3-8: color(display-p3 .875 .575 .502);--colors-tomato-light-p3-9: color(display-p3 .831 .345 .231);--colors-tomato-light-p3-10: color(display-p3 .802 .313 .2);--colors-tomato-light-p3-11: color(display-p3 .755 .259 .152);--colors-tomato-light-p3-12: color(display-p3 .335 .165 .132);--colors-tomato-light-p3-a-1: color(display-p3 .675 .024 .024 / .012);--colors-tomato-light-p3-a-2: color(display-p3 .757 .145 .02 / .032);--colors-tomato-light-p3-a-3: color(display-p3 .831 .184 .012 / .091);--colors-tomato-light-p3-a-4: color(display-p3 .976 .192 .004 / .165);--colors-tomato-light-p3-a-5: color(display-p3 .918 .192 .004 / .232);--colors-tomato-light-p3-a-6: color(display-p3 .847 .173 .004 / .302);--colors-tomato-light-p3-a-7: color(display-p3 .788 .165 .004 / .389);--colors-tomato-light-p3-a-8: color(display-p3 .749 .153 .004 / .499);--colors-tomato-light-p3-a-9: color(display-p3 .78 .149 0 / .769);--colors-tomato-light-p3-a-10: color(display-p3 .757 .141 0 / .8);--colors-tomato-light-p3-a-11: color(display-p3 .755 .259 .152);--colors-tomato-light-p3-a-12: color(display-p3 .335 .165 .132);--colors-tomato-dark-1: #181111;--colors-tomato-dark-2: #1f1513;--colors-tomato-dark-3: #391714;--colors-tomato-dark-4: #4e1511;--colors-tomato-dark-5: #5e1c16;--colors-tomato-dark-6: #6e2920;--colors-tomato-dark-7: #853a2d;--colors-tomato-dark-8: #ac4d39;--colors-tomato-dark-9: #e54d2e;--colors-tomato-dark-10: #ec6142;--colors-tomato-dark-11: #ff977d;--colors-tomato-dark-12: #fbd3cb;--colors-tomato-dark-a-1: #f1121208;--colors-tomato-dark-a-2: #ff55330f;--colors-tomato-dark-a-3: #ff35232b;--colors-tomato-dark-a-4: #fd201142;--colors-tomato-dark-a-5: #fe332153;--colors-tomato-dark-a-6: #ff4f3864;--colors-tomato-dark-a-7: #fd644a7d;--colors-tomato-dark-a-8: #fe6d4ea7;--colors-tomato-dark-a-9: #fe5431e4;--colors-tomato-dark-a-10: #ff6847eb;--colors-tomato-dark-a-11: #ff977d;--colors-tomato-dark-a-12: #ffd6cefb;--colors-tomato-dark-p3-1: color(display-p3 .09 .068 .067);--colors-tomato-dark-p3-2: color(display-p3 .115 .084 .076);--colors-tomato-dark-p3-3: color(display-p3 .205 .097 .083);--colors-tomato-dark-p3-4: color(display-p3 .282 .099 .077);--colors-tomato-dark-p3-5: color(display-p3 .339 .129 .101);--colors-tomato-dark-p3-6: color(display-p3 .398 .179 .141);--colors-tomato-dark-p3-7: color(display-p3 .487 .245 .194);--colors-tomato-dark-p3-8: color(display-p3 .629 .322 .248);--colors-tomato-dark-p3-9: color(display-p3 .831 .345 .231);--colors-tomato-dark-p3-10: color(display-p3 .862 .415 .298);--colors-tomato-dark-p3-11: color(display-p3 1 .585 .455);--colors-tomato-dark-p3-12: color(display-p3 .959 .833 .802);--colors-tomato-dark-p3-a-1: color(display-p3 .973 .071 .071 / .026);--colors-tomato-dark-p3-a-2: color(display-p3 .992 .376 .224 / .051);--colors-tomato-dark-p3-a-3: color(display-p3 .996 .282 .176 / .148);--colors-tomato-dark-p3-a-4: color(display-p3 1 .204 .118 / .232);--colors-tomato-dark-p3-a-5: color(display-p3 1 .286 .192 / .29);--colors-tomato-dark-p3-a-6: color(display-p3 1 .392 .278 / .353);--colors-tomato-dark-p3-a-7: color(display-p3 1 .459 .349 / .45);--colors-tomato-dark-p3-a-8: color(display-p3 1 .49 .369 / .601);--colors-tomato-dark-p3-a-9: color(display-p3 1 .408 .267 / .82);--colors-tomato-dark-p3-a-10: color(display-p3 1 .478 .341 / .853);--colors-tomato-dark-p3-a-11: color(display-p3 1 .585 .455);--colors-tomato-dark-p3-a-12: color(display-p3 .959 .833 .802);--colors-tomato-a-1: var(--colors-tomato-light-a-1);--colors-tomato-a-2: var(--colors-tomato-light-a-2);--colors-tomato-a-3: var(--colors-tomato-light-a-3);--colors-tomato-a-4: var(--colors-tomato-light-a-4);--colors-tomato-a-5: var(--colors-tomato-light-a-5);--colors-tomato-a-6: var(--colors-tomato-light-a-6);--colors-tomato-a-7: var(--colors-tomato-light-a-7);--colors-tomato-a-8: var(--colors-tomato-light-a-8);--colors-tomato-a-9: var(--colors-tomato-light-a-9);--colors-tomato-a-10: var(--colors-tomato-light-a-10);--colors-tomato-a-11: var(--colors-tomato-light-a-11);--colors-tomato-a-12: var(--colors-tomato-light-a-12);--colors-tomato-p3-1: var(--colors-tomato-light-p3-1);--colors-tomato-p3-2: var(--colors-tomato-light-p3-2);--colors-tomato-p3-3: var(--colors-tomato-light-p3-3);--colors-tomato-p3-4: var(--colors-tomato-light-p3-4);--colors-tomato-p3-5: var(--colors-tomato-light-p3-5);--colors-tomato-p3-6: var(--colors-tomato-light-p3-6);--colors-tomato-p3-7: var(--colors-tomato-light-p3-7);--colors-tomato-p3-8: var(--colors-tomato-light-p3-8);--colors-tomato-p3-9: var(--colors-tomato-light-p3-9);--colors-tomato-p3-10: var(--colors-tomato-light-p3-10);--colors-tomato-p3-11: var(--colors-tomato-light-p3-11);--colors-tomato-p3-12: var(--colors-tomato-light-p3-12);--colors-tomato-p3-a-1: var(--colors-tomato-light-p3-a-1);--colors-tomato-p3-a-2: var(--colors-tomato-light-p3-a-2);--colors-tomato-p3-a-3: var(--colors-tomato-light-p3-a-3);--colors-tomato-p3-a-4: var(--colors-tomato-light-p3-a-4);--colors-tomato-p3-a-5: var(--colors-tomato-light-p3-a-5);--colors-tomato-p3-a-6: var(--colors-tomato-light-p3-a-6);--colors-tomato-p3-a-7: var(--colors-tomato-light-p3-a-7);--colors-tomato-p3-a-8: var(--colors-tomato-light-p3-a-8);--colors-tomato-p3-a-9: var(--colors-tomato-light-p3-a-9);--colors-tomato-p3-a-10: var(--colors-tomato-light-p3-a-10);--colors-tomato-p3-a-11: var(--colors-tomato-light-p3-a-11);--colors-tomato-p3-a-12: var(--colors-tomato-light-p3-a-12);--colors-violet-1: var(--colors-violet-light-1);--colors-violet-2: var(--colors-violet-light-2);--colors-violet-3: var(--colors-violet-light-3);--colors-violet-4: var(--colors-violet-light-4);--colors-violet-5: var(--colors-violet-light-5);--colors-violet-6: var(--colors-violet-light-6);--colors-violet-7: var(--colors-violet-light-7);--colors-violet-8: var(--colors-violet-light-8);--colors-violet-9: var(--colors-violet-light-9);--colors-violet-10: var(--colors-violet-light-10);--colors-violet-11: var(--colors-violet-light-11);--colors-violet-12: var(--colors-violet-light-12);--colors-violet-light-1: #fdfcfe;--colors-violet-light-2: #faf8ff;--colors-violet-light-3: #f4f0fe;--colors-violet-light-4: #ebe4ff;--colors-violet-light-5: #e1d9ff;--colors-violet-light-6: #d4cafe;--colors-violet-light-7: #c2b5f5;--colors-violet-light-8: #aa99ec;--colors-violet-light-9: #6e56cf;--colors-violet-light-10: #654dc4;--colors-violet-light-11: #6550b9;--colors-violet-light-12: #2f265f;--colors-violet-light-a-1: #5500aa03;--colors-violet-light-a-2: #4900ff07;--colors-violet-light-a-3: #4400ee0f;--colors-violet-light-a-4: #4300ff1b;--colors-violet-light-a-5: #3600ff26;--colors-violet-light-a-6: #3100fb35;--colors-violet-light-a-7: #2d01dd4a;--colors-violet-light-a-8: #2b00d066;--colors-violet-light-a-9: #2400b7a9;--colors-violet-light-a-10: #2300abb2;--colors-violet-light-a-11: #1f0099af;--colors-violet-light-a-12: #0b0043d9;--colors-violet-light-p3-1: color(display-p3 .991 .988 .995);--colors-violet-light-p3-2: color(display-p3 .978 .974 .998);--colors-violet-light-p3-3: color(display-p3 .953 .943 .993);--colors-violet-light-p3-4: color(display-p3 .916 .897 1);--colors-violet-light-p3-5: color(display-p3 .876 .851 1);--colors-violet-light-p3-6: color(display-p3 .825 .793 .981);--colors-violet-light-p3-7: color(display-p3 .752 .712 .943);--colors-violet-light-p3-8: color(display-p3 .654 .602 .902);--colors-violet-light-p3-9: color(display-p3 .417 .341 .784);--colors-violet-light-p3-10: color(display-p3 .381 .306 .741);--colors-violet-light-p3-11: color(display-p3 .383 .317 .702);--colors-violet-light-p3-12: color(display-p3 .179 .15 .359);--colors-violet-light-p3-a-1: color(display-p3 .349 .024 .675 / .012);--colors-violet-light-p3-a-2: color(display-p3 .161 .024 .863 / .028);--colors-violet-light-p3-a-3: color(display-p3 .204 .004 .871 / .059);--colors-violet-light-p3-a-4: color(display-p3 .196 .004 1 / .102);--colors-violet-light-p3-a-5: color(display-p3 .165 .008 1 / .15);--colors-violet-light-p3-a-6: color(display-p3 .153 .004 .906 / .208);--colors-violet-light-p3-a-7: color(display-p3 .141 .004 .796 / .287);--colors-violet-light-p3-a-8: color(display-p3 .133 .004 .753 / .397);--colors-violet-light-p3-a-9: color(display-p3 .114 0 .675 / .659);--colors-violet-light-p3-a-10: color(display-p3 .11 0 .627 / .695);--colors-violet-light-p3-a-11: color(display-p3 .383 .317 .702);--colors-violet-light-p3-a-12: color(display-p3 .179 .15 .359);--colors-violet-dark-1: #14121f;--colors-violet-dark-2: #1b1525;--colors-violet-dark-3: #291f43;--colors-violet-dark-4: #33255b;--colors-violet-dark-5: #3c2e69;--colors-violet-dark-6: #473876;--colors-violet-dark-7: #56468b;--colors-violet-dark-8: #6958ad;--colors-violet-dark-9: #6e56cf;--colors-violet-dark-10: #7d66d9;--colors-violet-dark-11: #baa7ff;--colors-violet-dark-12: #e2ddfe;--colors-violet-dark-a-1: #4422ff0f;--colors-violet-dark-a-2: #853ff916;--colors-violet-dark-a-3: #8354fe36;--colors-violet-dark-a-4: #7d51fd50;--colors-violet-dark-a-5: #845ffd5f;--colors-violet-dark-a-6: #8f6cfd6d;--colors-violet-dark-a-7: #9879ff83;--colors-violet-dark-a-8: #977dfea8;--colors-violet-dark-a-9: #8668ffcc;--colors-violet-dark-a-10: #9176fed7;--colors-violet-dark-a-11: #baa7ff;--colors-violet-dark-a-12: #e3defffe;--colors-violet-dark-p3-1: color(display-p3 .077 .071 .118);--colors-violet-dark-p3-2: color(display-p3 .101 .084 .141);--colors-violet-dark-p3-3: color(display-p3 .154 .123 .256);--colors-violet-dark-p3-4: color(display-p3 .191 .148 .345);--colors-violet-dark-p3-5: color(display-p3 .226 .182 .396);--colors-violet-dark-p3-6: color(display-p3 .269 .223 .449);--colors-violet-dark-p3-7: color(display-p3 .326 .277 .53);--colors-violet-dark-p3-8: color(display-p3 .399 .346 .656);--colors-violet-dark-p3-9: color(display-p3 .417 .341 .784);--colors-violet-dark-p3-10: color(display-p3 .477 .402 .823);--colors-violet-dark-p3-11: color(display-p3 .72 .65 1);--colors-violet-dark-p3-12: color(display-p3 .883 .867 .986);--colors-violet-dark-p3-a-1: color(display-p3 .282 .141 .996 / .055);--colors-violet-dark-p3-a-2: color(display-p3 .51 .263 1 / .08);--colors-violet-dark-p3-a-3: color(display-p3 .494 .337 .996 / .202);--colors-violet-dark-p3-a-4: color(display-p3 .49 .345 1 / .299);--colors-violet-dark-p3-a-5: color(display-p3 .525 .392 1 / .353);--colors-violet-dark-p3-a-6: color(display-p3 .569 .455 1 / .408);--colors-violet-dark-p3-a-7: color(display-p3 .588 .494 1 / .496);--colors-violet-dark-p3-a-8: color(display-p3 .596 .51 1 / .631);--colors-violet-dark-p3-a-9: color(display-p3 .522 .424 1 / .769);--colors-violet-dark-p3-a-10: color(display-p3 .576 .482 1 / .811);--colors-violet-dark-p3-a-11: color(display-p3 .72 .65 1);--colors-violet-dark-p3-a-12: color(display-p3 .883 .867 .986);--colors-violet-a-1: var(--colors-violet-light-a-1);--colors-violet-a-2: var(--colors-violet-light-a-2);--colors-violet-a-3: var(--colors-violet-light-a-3);--colors-violet-a-4: var(--colors-violet-light-a-4);--colors-violet-a-5: var(--colors-violet-light-a-5);--colors-violet-a-6: var(--colors-violet-light-a-6);--colors-violet-a-7: var(--colors-violet-light-a-7);--colors-violet-a-8: var(--colors-violet-light-a-8);--colors-violet-a-9: var(--colors-violet-light-a-9);--colors-violet-a-10: var(--colors-violet-light-a-10);--colors-violet-a-11: var(--colors-violet-light-a-11);--colors-violet-a-12: var(--colors-violet-light-a-12);--colors-violet-p3-1: var(--colors-violet-light-p3-1);--colors-violet-p3-2: var(--colors-violet-light-p3-2);--colors-violet-p3-3: var(--colors-violet-light-p3-3);--colors-violet-p3-4: var(--colors-violet-light-p3-4);--colors-violet-p3-5: var(--colors-violet-light-p3-5);--colors-violet-p3-6: var(--colors-violet-light-p3-6);--colors-violet-p3-7: var(--colors-violet-light-p3-7);--colors-violet-p3-8: var(--colors-violet-light-p3-8);--colors-violet-p3-9: var(--colors-violet-light-p3-9);--colors-violet-p3-10: var(--colors-violet-light-p3-10);--colors-violet-p3-11: var(--colors-violet-light-p3-11);--colors-violet-p3-12: var(--colors-violet-light-p3-12);--colors-violet-p3-a-1: var(--colors-violet-light-p3-a-1);--colors-violet-p3-a-2: var(--colors-violet-light-p3-a-2);--colors-violet-p3-a-3: var(--colors-violet-light-p3-a-3);--colors-violet-p3-a-4: var(--colors-violet-light-p3-a-4);--colors-violet-p3-a-5: var(--colors-violet-light-p3-a-5);--colors-violet-p3-a-6: var(--colors-violet-light-p3-a-6);--colors-violet-p3-a-7: var(--colors-violet-light-p3-a-7);--colors-violet-p3-a-8: var(--colors-violet-light-p3-a-8);--colors-violet-p3-a-9: var(--colors-violet-light-p3-a-9);--colors-violet-p3-a-10: var(--colors-violet-light-p3-a-10);--colors-violet-p3-a-11: var(--colors-violet-light-p3-a-11);--colors-violet-p3-a-12: var(--colors-violet-light-p3-a-12);--colors-yellow-1: var(--colors-yellow-light-1);--colors-yellow-2: var(--colors-yellow-light-2);--colors-yellow-3: var(--colors-yellow-light-3);--colors-yellow-4: var(--colors-yellow-light-4);--colors-yellow-5: var(--colors-yellow-light-5);--colors-yellow-6: var(--colors-yellow-light-6);--colors-yellow-7: var(--colors-yellow-light-7);--colors-yellow-8: var(--colors-yellow-light-8);--colors-yellow-9: var(--colors-yellow-light-9);--colors-yellow-10: var(--colors-yellow-light-10);--colors-yellow-11: var(--colors-yellow-light-11);--colors-yellow-12: var(--colors-yellow-light-12);--colors-yellow-light-1: #fdfdf9;--colors-yellow-light-2: #fefce9;--colors-yellow-light-3: #fffab8;--colors-yellow-light-4: #fff394;--colors-yellow-light-5: #ffe770;--colors-yellow-light-6: #f3d768;--colors-yellow-light-7: #e4c767;--colors-yellow-light-8: #d5ae39;--colors-yellow-light-9: #ffe629;--colors-yellow-light-10: #ffdc00;--colors-yellow-light-11: #9e6c00;--colors-yellow-light-12: #473b1f;--colors-yellow-light-a-1: #aaaa0006;--colors-yellow-light-a-2: #f4dd0016;--colors-yellow-light-a-3: #ffee0047;--colors-yellow-light-a-4: #ffe3016b;--colors-yellow-light-a-5: #ffd5008f;--colors-yellow-light-a-6: #ebbc0097;--colors-yellow-light-a-7: #d2a10098;--colors-yellow-light-a-8: #c99700c6;--colors-yellow-light-a-9: #ffe100d6;--colors-yellow-light-a-10: #ffdc00;--colors-yellow-light-a-11: #9e6c00;--colors-yellow-light-a-12: #2e2000e0;--colors-yellow-light-p3-1: color(display-p3 .992 .992 .978);--colors-yellow-light-p3-2: color(display-p3 .995 .99 .922);--colors-yellow-light-p3-3: color(display-p3 .997 .982 .749);--colors-yellow-light-p3-4: color(display-p3 .992 .953 .627);--colors-yellow-light-p3-5: color(display-p3 .984 .91 .51);--colors-yellow-light-p3-6: color(display-p3 .934 .847 .474);--colors-yellow-light-p3-7: color(display-p3 .876 .785 .46);--colors-yellow-light-p3-8: color(display-p3 .811 .689 .313);--colors-yellow-light-p3-9: color(display-p3 1 .92 .22);--colors-yellow-light-p3-10: color(display-p3 .977 .868 .291);--colors-yellow-light-p3-11: color(display-p3 .6 .44 0);--colors-yellow-light-p3-12: color(display-p3 .271 .233 .137);--colors-yellow-light-p3-a-1: color(display-p3 .675 .675 .024 / .024);--colors-yellow-light-p3-a-2: color(display-p3 .953 .855 .008 / .079);--colors-yellow-light-p3-a-3: color(display-p3 .988 .925 .004 / .251);--colors-yellow-light-p3-a-4: color(display-p3 .98 .875 .004 / .373);--colors-yellow-light-p3-a-5: color(display-p3 .969 .816 .004 / .491);--colors-yellow-light-p3-a-6: color(display-p3 .875 .71 0 / .526);--colors-yellow-light-p3-a-7: color(display-p3 .769 .604 0 / .542);--colors-yellow-light-p3-a-8: color(display-p3 .725 .549 0 / .687);--colors-yellow-light-p3-a-9: color(display-p3 1 .898 0 / .781);--colors-yellow-light-p3-a-10: color(display-p3 .969 .812 0 / .71);--colors-yellow-light-p3-a-11: color(display-p3 .6 .44 0);--colors-yellow-light-p3-a-12: color(display-p3 .271 .233 .137);--colors-yellow-dark-1: #14120b;--colors-yellow-dark-2: #1b180f;--colors-yellow-dark-3: #2d2305;--colors-yellow-dark-4: #362b00;--colors-yellow-dark-5: #433500;--colors-yellow-dark-6: #524202;--colors-yellow-dark-7: #665417;--colors-yellow-dark-8: #836a21;--colors-yellow-dark-9: #ffe629;--colors-yellow-dark-10: #ffff57;--colors-yellow-dark-11: #f5e147;--colors-yellow-dark-12: #f6eeb4;--colors-yellow-dark-a-1: #d1510004;--colors-yellow-dark-a-2: #f9b4000b;--colors-yellow-dark-a-3: #ffaa001e;--colors-yellow-dark-a-4: #fdb70028;--colors-yellow-dark-a-5: #febb0036;--colors-yellow-dark-a-6: #fec40046;--colors-yellow-dark-a-7: #fdcb225c;--colors-yellow-dark-a-8: #fdca327b;--colors-yellow-dark-a-9: #ffe629;--colors-yellow-dark-a-10: #ffff57;--colors-yellow-dark-a-11: #fee949f5;--colors-yellow-dark-a-12: #fef6baf6;--colors-yellow-dark-p3-1: color(display-p3 .078 .069 .047);--colors-yellow-dark-p3-2: color(display-p3 .103 .094 .063);--colors-yellow-dark-p3-3: color(display-p3 .168 .137 .039);--colors-yellow-dark-p3-4: color(display-p3 .209 .169 0);--colors-yellow-dark-p3-5: color(display-p3 .255 .209 0);--colors-yellow-dark-p3-6: color(display-p3 .31 .261 .07);--colors-yellow-dark-p3-7: color(display-p3 .389 .331 .135);--colors-yellow-dark-p3-8: color(display-p3 .497 .42 .182);--colors-yellow-dark-p3-9: color(display-p3 1 .92 .22);--colors-yellow-dark-p3-10: color(display-p3 1 1 .456);--colors-yellow-dark-p3-11: color(display-p3 .948 .885 .392);--colors-yellow-dark-p3-12: color(display-p3 .959 .934 .731);--colors-yellow-dark-p3-a-1: color(display-p3 .973 .369 0 / .013);--colors-yellow-dark-p3-a-2: color(display-p3 .996 .792 0 / .038);--colors-yellow-dark-p3-a-3: color(display-p3 .996 .71 0 / .11);--colors-yellow-dark-p3-a-4: color(display-p3 .996 .741 0 / .152);--colors-yellow-dark-p3-a-5: color(display-p3 .996 .765 0 / .202);--colors-yellow-dark-p3-a-6: color(display-p3 .996 .816 .082 / .261);--colors-yellow-dark-p3-a-7: color(display-p3 1 .831 .263 / .345);--colors-yellow-dark-p3-a-8: color(display-p3 1 .831 .314 / .463);--colors-yellow-dark-p3-a-9: color(display-p3 1 .922 .22);--colors-yellow-dark-p3-a-10: color(display-p3 1 1 .455);--colors-yellow-dark-p3-a-11: color(display-p3 .948 .885 .392);--colors-yellow-dark-p3-a-12: color(display-p3 .959 .934 .731);--colors-yellow-a-1: var(--colors-yellow-light-a-1);--colors-yellow-a-2: var(--colors-yellow-light-a-2);--colors-yellow-a-3: var(--colors-yellow-light-a-3);--colors-yellow-a-4: var(--colors-yellow-light-a-4);--colors-yellow-a-5: var(--colors-yellow-light-a-5);--colors-yellow-a-6: var(--colors-yellow-light-a-6);--colors-yellow-a-7: var(--colors-yellow-light-a-7);--colors-yellow-a-8: var(--colors-yellow-light-a-8);--colors-yellow-a-9: var(--colors-yellow-light-a-9);--colors-yellow-a-10: var(--colors-yellow-light-a-10);--colors-yellow-a-11: var(--colors-yellow-light-a-11);--colors-yellow-a-12: var(--colors-yellow-light-a-12);--colors-yellow-p3-1: var(--colors-yellow-light-p3-1);--colors-yellow-p3-2: var(--colors-yellow-light-p3-2);--colors-yellow-p3-3: var(--colors-yellow-light-p3-3);--colors-yellow-p3-4: var(--colors-yellow-light-p3-4);--colors-yellow-p3-5: var(--colors-yellow-light-p3-5);--colors-yellow-p3-6: var(--colors-yellow-light-p3-6);--colors-yellow-p3-7: var(--colors-yellow-light-p3-7);--colors-yellow-p3-8: var(--colors-yellow-light-p3-8);--colors-yellow-p3-9: var(--colors-yellow-light-p3-9);--colors-yellow-p3-10: var(--colors-yellow-light-p3-10);--colors-yellow-p3-11: var(--colors-yellow-light-p3-11);--colors-yellow-p3-12: var(--colors-yellow-light-p3-12);--colors-yellow-p3-a-1: var(--colors-yellow-light-p3-a-1);--colors-yellow-p3-a-2: var(--colors-yellow-light-p3-a-2);--colors-yellow-p3-a-3: var(--colors-yellow-light-p3-a-3);--colors-yellow-p3-a-4: var(--colors-yellow-light-p3-a-4);--colors-yellow-p3-a-5: var(--colors-yellow-light-p3-a-5);--colors-yellow-p3-a-6: var(--colors-yellow-light-p3-a-6);--colors-yellow-p3-a-7: var(--colors-yellow-light-p3-a-7);--colors-yellow-p3-a-8: var(--colors-yellow-light-p3-a-8);--colors-yellow-p3-a-9: var(--colors-yellow-light-p3-a-9);--colors-yellow-p3-a-10: var(--colors-yellow-light-p3-a-10);--colors-yellow-p3-a-11: var(--colors-yellow-light-p3-a-11);--colors-yellow-p3-a-12: var(--colors-yellow-light-p3-a-12);--colors-text: var(--mantine-color-text);--colors-text-dimmed: var(--mantine-color-dimmed);--colors-likec4-background: var(--mantine-color-body);--colors-likec4-tag-bg: var(--colors-tomato-9);--colors-likec4-tag-bg-hover: var(--colors-tomato-10);--colors-likec4-tag-border: var(--colors-tomato-8);--colors-likec4-tag-text: var(--colors-tomato-12);--colors-likec4-panel-bg: var(--mantine-color-body);--colors-likec4-panel-border: transparent;--colors-likec4-panel-text: color-mix(in oklab, var(--mantine-color-text) 85%, transparent 15%);--colors-likec4-panel-text-dimmed: var(--mantine-color-dimmed);--colors-likec4-panel-action: color-mix(in oklab, var(--mantine-color-text) 90%, transparent 10%);--colors-likec4-panel-action-disabled: var(--mantine-color-dimmed);--colors-likec4-panel-action-hover: var(--mantine-color-bright);--colors-likec4-panel-action-bg: var(--mantine-color-gray-1);--colors-likec4-panel-action-bg-hover: var(--mantine-color-gray-2);--colors-likec4-panel-action-warning: var(--mantine-color-orange-6);--colors-likec4-panel-action-warning-hover: var(--mantine-color-orange-7);--colors-likec4-panel-action-warning-bg: color-mix(in oklab, var(--mantine-color-orange-1) 90%, transparent 10%);--colors-likec4-panel-action-warning-bg-hover: color-mix(in oklab, var(--mantine-color-orange-3) 70%, transparent 30%);--colors-likec4-dropdown-bg: #FFF;--colors-likec4-dropdown-border: var(--colors-likec4-panel-border);--colors-likec4-overlay-backdrop: rgb(34 34 34);--colors-likec4-overlay-body: var(--mantine-color-body);--colors-likec4-overlay-border: color-mix(in oklab, var(--mantine-color-default-border) 50%, transparent 50%);--colors-likec4-compare-latest: var(--mantine-color-green-6)}[data-mantine-color-scheme=dark]{--colors-amber-1: var(--colors-amber-dark-1);--colors-amber-2: var(--colors-amber-dark-2);--colors-amber-3: var(--colors-amber-dark-3);--colors-amber-4: var(--colors-amber-dark-4);--colors-amber-5: var(--colors-amber-dark-5);--colors-amber-6: var(--colors-amber-dark-6);--colors-amber-7: var(--colors-amber-dark-7);--colors-amber-8: var(--colors-amber-dark-8);--colors-amber-9: var(--colors-amber-dark-9);--colors-amber-10: var(--colors-amber-dark-10);--colors-amber-11: var(--colors-amber-dark-11);--colors-amber-12: var(--colors-amber-dark-12);--colors-amber-a-1: var(--colors-amber-dark-a-1);--colors-amber-a-2: var(--colors-amber-dark-a-2);--colors-amber-a-3: var(--colors-amber-dark-a-3);--colors-amber-a-4: var(--colors-amber-dark-a-4);--colors-amber-a-5: var(--colors-amber-dark-a-5);--colors-amber-a-6: var(--colors-amber-dark-a-6);--colors-amber-a-7: var(--colors-amber-dark-a-7);--colors-amber-a-8: var(--colors-amber-dark-a-8);--colors-amber-a-9: var(--colors-amber-dark-a-9);--colors-amber-a-10: var(--colors-amber-dark-a-10);--colors-amber-a-11: var(--colors-amber-dark-a-11);--colors-amber-a-12: var(--colors-amber-dark-a-12);--colors-amber-p3-1: var(--colors-amber-dark-p3-1);--colors-amber-p3-2: var(--colors-amber-dark-p3-2);--colors-amber-p3-3: var(--colors-amber-dark-p3-3);--colors-amber-p3-4: var(--colors-amber-dark-p3-4);--colors-amber-p3-5: var(--colors-amber-dark-p3-5);--colors-amber-p3-6: var(--colors-amber-dark-p3-6);--colors-amber-p3-7: var(--colors-amber-dark-p3-7);--colors-amber-p3-8: var(--colors-amber-dark-p3-8);--colors-amber-p3-9: var(--colors-amber-dark-p3-9);--colors-amber-p3-10: var(--colors-amber-dark-p3-10);--colors-amber-p3-11: var(--colors-amber-dark-p3-11);--colors-amber-p3-12: var(--colors-amber-dark-p3-12);--colors-amber-p3-a-1: var(--colors-amber-dark-p3-a-1);--colors-amber-p3-a-2: var(--colors-amber-dark-p3-a-2);--colors-amber-p3-a-3: var(--colors-amber-dark-p3-a-3);--colors-amber-p3-a-4: var(--colors-amber-dark-p3-a-4);--colors-amber-p3-a-5: var(--colors-amber-dark-p3-a-5);--colors-amber-p3-a-6: var(--colors-amber-dark-p3-a-6);--colors-amber-p3-a-7: var(--colors-amber-dark-p3-a-7);--colors-amber-p3-a-8: var(--colors-amber-dark-p3-a-8);--colors-amber-p3-a-9: var(--colors-amber-dark-p3-a-9);--colors-amber-p3-a-10: var(--colors-amber-dark-p3-a-10);--colors-amber-p3-a-11: var(--colors-amber-dark-p3-a-11);--colors-amber-p3-a-12: var(--colors-amber-dark-p3-a-12);--colors-blue-1: var(--colors-blue-dark-1);--colors-blue-2: var(--colors-blue-dark-2);--colors-blue-3: var(--colors-blue-dark-3);--colors-blue-4: var(--colors-blue-dark-4);--colors-blue-5: var(--colors-blue-dark-5);--colors-blue-6: var(--colors-blue-dark-6);--colors-blue-7: var(--colors-blue-dark-7);--colors-blue-8: var(--colors-blue-dark-8);--colors-blue-9: var(--colors-blue-dark-9);--colors-blue-10: var(--colors-blue-dark-10);--colors-blue-11: var(--colors-blue-dark-11);--colors-blue-12: var(--colors-blue-dark-12);--colors-blue-a-1: var(--colors-blue-dark-a-1);--colors-blue-a-2: var(--colors-blue-dark-a-2);--colors-blue-a-3: var(--colors-blue-dark-a-3);--colors-blue-a-4: var(--colors-blue-dark-a-4);--colors-blue-a-5: var(--colors-blue-dark-a-5);--colors-blue-a-6: var(--colors-blue-dark-a-6);--colors-blue-a-7: var(--colors-blue-dark-a-7);--colors-blue-a-8: var(--colors-blue-dark-a-8);--colors-blue-a-9: var(--colors-blue-dark-a-9);--colors-blue-a-10: var(--colors-blue-dark-a-10);--colors-blue-a-11: var(--colors-blue-dark-a-11);--colors-blue-a-12: var(--colors-blue-dark-a-12);--colors-blue-p3-1: var(--colors-blue-dark-p3-1);--colors-blue-p3-2: var(--colors-blue-dark-p3-2);--colors-blue-p3-3: var(--colors-blue-dark-p3-3);--colors-blue-p3-4: var(--colors-blue-dark-p3-4);--colors-blue-p3-5: var(--colors-blue-dark-p3-5);--colors-blue-p3-6: var(--colors-blue-dark-p3-6);--colors-blue-p3-7: var(--colors-blue-dark-p3-7);--colors-blue-p3-8: var(--colors-blue-dark-p3-8);--colors-blue-p3-9: var(--colors-blue-dark-p3-9);--colors-blue-p3-10: var(--colors-blue-dark-p3-10);--colors-blue-p3-11: var(--colors-blue-dark-p3-11);--colors-blue-p3-12: var(--colors-blue-dark-p3-12);--colors-blue-p3-a-1: var(--colors-blue-dark-p3-a-1);--colors-blue-p3-a-2: var(--colors-blue-dark-p3-a-2);--colors-blue-p3-a-3: var(--colors-blue-dark-p3-a-3);--colors-blue-p3-a-4: var(--colors-blue-dark-p3-a-4);--colors-blue-p3-a-5: var(--colors-blue-dark-p3-a-5);--colors-blue-p3-a-6: var(--colors-blue-dark-p3-a-6);--colors-blue-p3-a-7: var(--colors-blue-dark-p3-a-7);--colors-blue-p3-a-8: var(--colors-blue-dark-p3-a-8);--colors-blue-p3-a-9: var(--colors-blue-dark-p3-a-9);--colors-blue-p3-a-10: var(--colors-blue-dark-p3-a-10);--colors-blue-p3-a-11: var(--colors-blue-dark-p3-a-11);--colors-blue-p3-a-12: var(--colors-blue-dark-p3-a-12);--colors-crimson-1: var(--colors-crimson-dark-1);--colors-crimson-2: var(--colors-crimson-dark-2);--colors-crimson-3: var(--colors-crimson-dark-3);--colors-crimson-4: var(--colors-crimson-dark-4);--colors-crimson-5: var(--colors-crimson-dark-5);--colors-crimson-6: var(--colors-crimson-dark-6);--colors-crimson-7: var(--colors-crimson-dark-7);--colors-crimson-8: var(--colors-crimson-dark-8);--colors-crimson-9: var(--colors-crimson-dark-9);--colors-crimson-10: var(--colors-crimson-dark-10);--colors-crimson-11: var(--colors-crimson-dark-11);--colors-crimson-12: var(--colors-crimson-dark-12);--colors-crimson-a-1: var(--colors-crimson-dark-a-1);--colors-crimson-a-2: var(--colors-crimson-dark-a-2);--colors-crimson-a-3: var(--colors-crimson-dark-a-3);--colors-crimson-a-4: var(--colors-crimson-dark-a-4);--colors-crimson-a-5: var(--colors-crimson-dark-a-5);--colors-crimson-a-6: var(--colors-crimson-dark-a-6);--colors-crimson-a-7: var(--colors-crimson-dark-a-7);--colors-crimson-a-8: var(--colors-crimson-dark-a-8);--colors-crimson-a-9: var(--colors-crimson-dark-a-9);--colors-crimson-a-10: var(--colors-crimson-dark-a-10);--colors-crimson-a-11: var(--colors-crimson-dark-a-11);--colors-crimson-a-12: var(--colors-crimson-dark-a-12);--colors-crimson-p3-1: var(--colors-crimson-dark-p3-1);--colors-crimson-p3-2: var(--colors-crimson-dark-p3-2);--colors-crimson-p3-3: var(--colors-crimson-dark-p3-3);--colors-crimson-p3-4: var(--colors-crimson-dark-p3-4);--colors-crimson-p3-5: var(--colors-crimson-dark-p3-5);--colors-crimson-p3-6: var(--colors-crimson-dark-p3-6);--colors-crimson-p3-7: var(--colors-crimson-dark-p3-7);--colors-crimson-p3-8: var(--colors-crimson-dark-p3-8);--colors-crimson-p3-9: var(--colors-crimson-dark-p3-9);--colors-crimson-p3-10: var(--colors-crimson-dark-p3-10);--colors-crimson-p3-11: var(--colors-crimson-dark-p3-11);--colors-crimson-p3-12: var(--colors-crimson-dark-p3-12);--colors-crimson-p3-a-1: var(--colors-crimson-dark-p3-a-1);--colors-crimson-p3-a-2: var(--colors-crimson-dark-p3-a-2);--colors-crimson-p3-a-3: var(--colors-crimson-dark-p3-a-3);--colors-crimson-p3-a-4: var(--colors-crimson-dark-p3-a-4);--colors-crimson-p3-a-5: var(--colors-crimson-dark-p3-a-5);--colors-crimson-p3-a-6: var(--colors-crimson-dark-p3-a-6);--colors-crimson-p3-a-7: var(--colors-crimson-dark-p3-a-7);--colors-crimson-p3-a-8: var(--colors-crimson-dark-p3-a-8);--colors-crimson-p3-a-9: var(--colors-crimson-dark-p3-a-9);--colors-crimson-p3-a-10: var(--colors-crimson-dark-p3-a-10);--colors-crimson-p3-a-11: var(--colors-crimson-dark-p3-a-11);--colors-crimson-p3-a-12: var(--colors-crimson-dark-p3-a-12);--colors-grass-1: var(--colors-grass-dark-1);--colors-grass-2: var(--colors-grass-dark-2);--colors-grass-3: var(--colors-grass-dark-3);--colors-grass-4: var(--colors-grass-dark-4);--colors-grass-5: var(--colors-grass-dark-5);--colors-grass-6: var(--colors-grass-dark-6);--colors-grass-7: var(--colors-grass-dark-7);--colors-grass-8: var(--colors-grass-dark-8);--colors-grass-9: var(--colors-grass-dark-9);--colors-grass-10: var(--colors-grass-dark-10);--colors-grass-11: var(--colors-grass-dark-11);--colors-grass-12: var(--colors-grass-dark-12);--colors-grass-a-1: var(--colors-grass-dark-a-1);--colors-grass-a-2: var(--colors-grass-dark-a-2);--colors-grass-a-3: var(--colors-grass-dark-a-3);--colors-grass-a-4: var(--colors-grass-dark-a-4);--colors-grass-a-5: var(--colors-grass-dark-a-5);--colors-grass-a-6: var(--colors-grass-dark-a-6);--colors-grass-a-7: var(--colors-grass-dark-a-7);--colors-grass-a-8: var(--colors-grass-dark-a-8);--colors-grass-a-9: var(--colors-grass-dark-a-9);--colors-grass-a-10: var(--colors-grass-dark-a-10);--colors-grass-a-11: var(--colors-grass-dark-a-11);--colors-grass-a-12: var(--colors-grass-dark-a-12);--colors-grass-p3-1: var(--colors-grass-dark-p3-1);--colors-grass-p3-2: var(--colors-grass-dark-p3-2);--colors-grass-p3-3: var(--colors-grass-dark-p3-3);--colors-grass-p3-4: var(--colors-grass-dark-p3-4);--colors-grass-p3-5: var(--colors-grass-dark-p3-5);--colors-grass-p3-6: var(--colors-grass-dark-p3-6);--colors-grass-p3-7: var(--colors-grass-dark-p3-7);--colors-grass-p3-8: var(--colors-grass-dark-p3-8);--colors-grass-p3-9: var(--colors-grass-dark-p3-9);--colors-grass-p3-10: var(--colors-grass-dark-p3-10);--colors-grass-p3-11: var(--colors-grass-dark-p3-11);--colors-grass-p3-12: var(--colors-grass-dark-p3-12);--colors-grass-p3-a-1: var(--colors-grass-dark-p3-a-1);--colors-grass-p3-a-2: var(--colors-grass-dark-p3-a-2);--colors-grass-p3-a-3: var(--colors-grass-dark-p3-a-3);--colors-grass-p3-a-4: var(--colors-grass-dark-p3-a-4);--colors-grass-p3-a-5: var(--colors-grass-dark-p3-a-5);--colors-grass-p3-a-6: var(--colors-grass-dark-p3-a-6);--colors-grass-p3-a-7: var(--colors-grass-dark-p3-a-7);--colors-grass-p3-a-8: var(--colors-grass-dark-p3-a-8);--colors-grass-p3-a-9: var(--colors-grass-dark-p3-a-9);--colors-grass-p3-a-10: var(--colors-grass-dark-p3-a-10);--colors-grass-p3-a-11: var(--colors-grass-dark-p3-a-11);--colors-grass-p3-a-12: var(--colors-grass-dark-p3-a-12);--colors-indigo-1: var(--colors-indigo-dark-1);--colors-indigo-2: var(--colors-indigo-dark-2);--colors-indigo-3: var(--colors-indigo-dark-3);--colors-indigo-4: var(--colors-indigo-dark-4);--colors-indigo-5: var(--colors-indigo-dark-5);--colors-indigo-6: var(--colors-indigo-dark-6);--colors-indigo-7: var(--colors-indigo-dark-7);--colors-indigo-8: var(--colors-indigo-dark-8);--colors-indigo-9: var(--colors-indigo-dark-9);--colors-indigo-10: var(--colors-indigo-dark-10);--colors-indigo-11: var(--colors-indigo-dark-11);--colors-indigo-12: var(--colors-indigo-dark-12);--colors-indigo-a-1: var(--colors-indigo-dark-a-1);--colors-indigo-a-2: var(--colors-indigo-dark-a-2);--colors-indigo-a-3: var(--colors-indigo-dark-a-3);--colors-indigo-a-4: var(--colors-indigo-dark-a-4);--colors-indigo-a-5: var(--colors-indigo-dark-a-5);--colors-indigo-a-6: var(--colors-indigo-dark-a-6);--colors-indigo-a-7: var(--colors-indigo-dark-a-7);--colors-indigo-a-8: var(--colors-indigo-dark-a-8);--colors-indigo-a-9: var(--colors-indigo-dark-a-9);--colors-indigo-a-10: var(--colors-indigo-dark-a-10);--colors-indigo-a-11: var(--colors-indigo-dark-a-11);--colors-indigo-a-12: var(--colors-indigo-dark-a-12);--colors-indigo-p3-1: var(--colors-indigo-dark-p3-1);--colors-indigo-p3-2: var(--colors-indigo-dark-p3-2);--colors-indigo-p3-3: var(--colors-indigo-dark-p3-3);--colors-indigo-p3-4: var(--colors-indigo-dark-p3-4);--colors-indigo-p3-5: var(--colors-indigo-dark-p3-5);--colors-indigo-p3-6: var(--colors-indigo-dark-p3-6);--colors-indigo-p3-7: var(--colors-indigo-dark-p3-7);--colors-indigo-p3-8: var(--colors-indigo-dark-p3-8);--colors-indigo-p3-9: var(--colors-indigo-dark-p3-9);--colors-indigo-p3-10: var(--colors-indigo-dark-p3-10);--colors-indigo-p3-11: var(--colors-indigo-dark-p3-11);--colors-indigo-p3-12: var(--colors-indigo-dark-p3-12);--colors-indigo-p3-a-1: var(--colors-indigo-dark-p3-a-1);--colors-indigo-p3-a-2: var(--colors-indigo-dark-p3-a-2);--colors-indigo-p3-a-3: var(--colors-indigo-dark-p3-a-3);--colors-indigo-p3-a-4: var(--colors-indigo-dark-p3-a-4);--colors-indigo-p3-a-5: var(--colors-indigo-dark-p3-a-5);--colors-indigo-p3-a-6: var(--colors-indigo-dark-p3-a-6);--colors-indigo-p3-a-7: var(--colors-indigo-dark-p3-a-7);--colors-indigo-p3-a-8: var(--colors-indigo-dark-p3-a-8);--colors-indigo-p3-a-9: var(--colors-indigo-dark-p3-a-9);--colors-indigo-p3-a-10: var(--colors-indigo-dark-p3-a-10);--colors-indigo-p3-a-11: var(--colors-indigo-dark-p3-a-11);--colors-indigo-p3-a-12: var(--colors-indigo-dark-p3-a-12);--colors-lime-1: var(--colors-lime-dark-1);--colors-lime-2: var(--colors-lime-dark-2);--colors-lime-3: var(--colors-lime-dark-3);--colors-lime-4: var(--colors-lime-dark-4);--colors-lime-5: var(--colors-lime-dark-5);--colors-lime-6: var(--colors-lime-dark-6);--colors-lime-7: var(--colors-lime-dark-7);--colors-lime-8: var(--colors-lime-dark-8);--colors-lime-9: var(--colors-lime-dark-9);--colors-lime-10: var(--colors-lime-dark-10);--colors-lime-11: var(--colors-lime-dark-11);--colors-lime-12: var(--colors-lime-dark-12);--colors-lime-a-1: var(--colors-lime-dark-a-1);--colors-lime-a-2: var(--colors-lime-dark-a-2);--colors-lime-a-3: var(--colors-lime-dark-a-3);--colors-lime-a-4: var(--colors-lime-dark-a-4);--colors-lime-a-5: var(--colors-lime-dark-a-5);--colors-lime-a-6: var(--colors-lime-dark-a-6);--colors-lime-a-7: var(--colors-lime-dark-a-7);--colors-lime-a-8: var(--colors-lime-dark-a-8);--colors-lime-a-9: var(--colors-lime-dark-a-9);--colors-lime-a-10: var(--colors-lime-dark-a-10);--colors-lime-a-11: var(--colors-lime-dark-a-11);--colors-lime-a-12: var(--colors-lime-dark-a-12);--colors-lime-p3-1: var(--colors-lime-dark-p3-1);--colors-lime-p3-2: var(--colors-lime-dark-p3-2);--colors-lime-p3-3: var(--colors-lime-dark-p3-3);--colors-lime-p3-4: var(--colors-lime-dark-p3-4);--colors-lime-p3-5: var(--colors-lime-dark-p3-5);--colors-lime-p3-6: var(--colors-lime-dark-p3-6);--colors-lime-p3-7: var(--colors-lime-dark-p3-7);--colors-lime-p3-8: var(--colors-lime-dark-p3-8);--colors-lime-p3-9: var(--colors-lime-dark-p3-9);--colors-lime-p3-10: var(--colors-lime-dark-p3-10);--colors-lime-p3-11: var(--colors-lime-dark-p3-11);--colors-lime-p3-12: var(--colors-lime-dark-p3-12);--colors-lime-p3-a-1: var(--colors-lime-dark-p3-a-1);--colors-lime-p3-a-2: var(--colors-lime-dark-p3-a-2);--colors-lime-p3-a-3: var(--colors-lime-dark-p3-a-3);--colors-lime-p3-a-4: var(--colors-lime-dark-p3-a-4);--colors-lime-p3-a-5: var(--colors-lime-dark-p3-a-5);--colors-lime-p3-a-6: var(--colors-lime-dark-p3-a-6);--colors-lime-p3-a-7: var(--colors-lime-dark-p3-a-7);--colors-lime-p3-a-8: var(--colors-lime-dark-p3-a-8);--colors-lime-p3-a-9: var(--colors-lime-dark-p3-a-9);--colors-lime-p3-a-10: var(--colors-lime-dark-p3-a-10);--colors-lime-p3-a-11: var(--colors-lime-dark-p3-a-11);--colors-lime-p3-a-12: var(--colors-lime-dark-p3-a-12);--colors-orange-1: var(--colors-orange-dark-1);--colors-orange-2: var(--colors-orange-dark-2);--colors-orange-3: var(--colors-orange-dark-3);--colors-orange-4: var(--colors-orange-dark-4);--colors-orange-5: var(--colors-orange-dark-5);--colors-orange-6: var(--colors-orange-dark-6);--colors-orange-7: var(--colors-orange-dark-7);--colors-orange-8: var(--colors-orange-dark-8);--colors-orange-9: var(--colors-orange-dark-9);--colors-orange-10: var(--colors-orange-dark-10);--colors-orange-11: var(--colors-orange-dark-11);--colors-orange-12: var(--colors-orange-dark-12);--colors-orange-a-1: var(--colors-orange-dark-a-1);--colors-orange-a-2: var(--colors-orange-dark-a-2);--colors-orange-a-3: var(--colors-orange-dark-a-3);--colors-orange-a-4: var(--colors-orange-dark-a-4);--colors-orange-a-5: var(--colors-orange-dark-a-5);--colors-orange-a-6: var(--colors-orange-dark-a-6);--colors-orange-a-7: var(--colors-orange-dark-a-7);--colors-orange-a-8: var(--colors-orange-dark-a-8);--colors-orange-a-9: var(--colors-orange-dark-a-9);--colors-orange-a-10: var(--colors-orange-dark-a-10);--colors-orange-a-11: var(--colors-orange-dark-a-11);--colors-orange-a-12: var(--colors-orange-dark-a-12);--colors-orange-p3-1: var(--colors-orange-dark-p3-1);--colors-orange-p3-2: var(--colors-orange-dark-p3-2);--colors-orange-p3-3: var(--colors-orange-dark-p3-3);--colors-orange-p3-4: var(--colors-orange-dark-p3-4);--colors-orange-p3-5: var(--colors-orange-dark-p3-5);--colors-orange-p3-6: var(--colors-orange-dark-p3-6);--colors-orange-p3-7: var(--colors-orange-dark-p3-7);--colors-orange-p3-8: var(--colors-orange-dark-p3-8);--colors-orange-p3-9: var(--colors-orange-dark-p3-9);--colors-orange-p3-10: var(--colors-orange-dark-p3-10);--colors-orange-p3-11: var(--colors-orange-dark-p3-11);--colors-orange-p3-12: var(--colors-orange-dark-p3-12);--colors-orange-p3-a-1: var(--colors-orange-dark-p3-a-1);--colors-orange-p3-a-2: var(--colors-orange-dark-p3-a-2);--colors-orange-p3-a-3: var(--colors-orange-dark-p3-a-3);--colors-orange-p3-a-4: var(--colors-orange-dark-p3-a-4);--colors-orange-p3-a-5: var(--colors-orange-dark-p3-a-5);--colors-orange-p3-a-6: var(--colors-orange-dark-p3-a-6);--colors-orange-p3-a-7: var(--colors-orange-dark-p3-a-7);--colors-orange-p3-a-8: var(--colors-orange-dark-p3-a-8);--colors-orange-p3-a-9: var(--colors-orange-dark-p3-a-9);--colors-orange-p3-a-10: var(--colors-orange-dark-p3-a-10);--colors-orange-p3-a-11: var(--colors-orange-dark-p3-a-11);--colors-orange-p3-a-12: var(--colors-orange-dark-p3-a-12);--colors-pink-1: var(--colors-pink-dark-1);--colors-pink-2: var(--colors-pink-dark-2);--colors-pink-3: var(--colors-pink-dark-3);--colors-pink-4: var(--colors-pink-dark-4);--colors-pink-5: var(--colors-pink-dark-5);--colors-pink-6: var(--colors-pink-dark-6);--colors-pink-7: var(--colors-pink-dark-7);--colors-pink-8: var(--colors-pink-dark-8);--colors-pink-9: var(--colors-pink-dark-9);--colors-pink-10: var(--colors-pink-dark-10);--colors-pink-11: var(--colors-pink-dark-11);--colors-pink-12: var(--colors-pink-dark-12);--colors-pink-a-1: var(--colors-pink-dark-a-1);--colors-pink-a-2: var(--colors-pink-dark-a-2);--colors-pink-a-3: var(--colors-pink-dark-a-3);--colors-pink-a-4: var(--colors-pink-dark-a-4);--colors-pink-a-5: var(--colors-pink-dark-a-5);--colors-pink-a-6: var(--colors-pink-dark-a-6);--colors-pink-a-7: var(--colors-pink-dark-a-7);--colors-pink-a-8: var(--colors-pink-dark-a-8);--colors-pink-a-9: var(--colors-pink-dark-a-9);--colors-pink-a-10: var(--colors-pink-dark-a-10);--colors-pink-a-11: var(--colors-pink-dark-a-11);--colors-pink-a-12: var(--colors-pink-dark-a-12);--colors-pink-p3-1: var(--colors-pink-dark-p3-1);--colors-pink-p3-2: var(--colors-pink-dark-p3-2);--colors-pink-p3-3: var(--colors-pink-dark-p3-3);--colors-pink-p3-4: var(--colors-pink-dark-p3-4);--colors-pink-p3-5: var(--colors-pink-dark-p3-5);--colors-pink-p3-6: var(--colors-pink-dark-p3-6);--colors-pink-p3-7: var(--colors-pink-dark-p3-7);--colors-pink-p3-8: var(--colors-pink-dark-p3-8);--colors-pink-p3-9: var(--colors-pink-dark-p3-9);--colors-pink-p3-10: var(--colors-pink-dark-p3-10);--colors-pink-p3-11: var(--colors-pink-dark-p3-11);--colors-pink-p3-12: var(--colors-pink-dark-p3-12);--colors-pink-p3-a-1: var(--colors-pink-dark-p3-a-1);--colors-pink-p3-a-2: var(--colors-pink-dark-p3-a-2);--colors-pink-p3-a-3: var(--colors-pink-dark-p3-a-3);--colors-pink-p3-a-4: var(--colors-pink-dark-p3-a-4);--colors-pink-p3-a-5: var(--colors-pink-dark-p3-a-5);--colors-pink-p3-a-6: var(--colors-pink-dark-p3-a-6);--colors-pink-p3-a-7: var(--colors-pink-dark-p3-a-7);--colors-pink-p3-a-8: var(--colors-pink-dark-p3-a-8);--colors-pink-p3-a-9: var(--colors-pink-dark-p3-a-9);--colors-pink-p3-a-10: var(--colors-pink-dark-p3-a-10);--colors-pink-p3-a-11: var(--colors-pink-dark-p3-a-11);--colors-pink-p3-a-12: var(--colors-pink-dark-p3-a-12);--colors-purple-1: var(--colors-purple-dark-1);--colors-purple-2: var(--colors-purple-dark-2);--colors-purple-3: var(--colors-purple-dark-3);--colors-purple-4: var(--colors-purple-dark-4);--colors-purple-5: var(--colors-purple-dark-5);--colors-purple-6: var(--colors-purple-dark-6);--colors-purple-7: var(--colors-purple-dark-7);--colors-purple-8: var(--colors-purple-dark-8);--colors-purple-9: var(--colors-purple-dark-9);--colors-purple-10: var(--colors-purple-dark-10);--colors-purple-11: var(--colors-purple-dark-11);--colors-purple-12: var(--colors-purple-dark-12);--colors-purple-a-1: var(--colors-purple-dark-a-1);--colors-purple-a-2: var(--colors-purple-dark-a-2);--colors-purple-a-3: var(--colors-purple-dark-a-3);--colors-purple-a-4: var(--colors-purple-dark-a-4);--colors-purple-a-5: var(--colors-purple-dark-a-5);--colors-purple-a-6: var(--colors-purple-dark-a-6);--colors-purple-a-7: var(--colors-purple-dark-a-7);--colors-purple-a-8: var(--colors-purple-dark-a-8);--colors-purple-a-9: var(--colors-purple-dark-a-9);--colors-purple-a-10: var(--colors-purple-dark-a-10);--colors-purple-a-11: var(--colors-purple-dark-a-11);--colors-purple-a-12: var(--colors-purple-dark-a-12);--colors-purple-p3-1: var(--colors-purple-dark-p3-1);--colors-purple-p3-2: var(--colors-purple-dark-p3-2);--colors-purple-p3-3: var(--colors-purple-dark-p3-3);--colors-purple-p3-4: var(--colors-purple-dark-p3-4);--colors-purple-p3-5: var(--colors-purple-dark-p3-5);--colors-purple-p3-6: var(--colors-purple-dark-p3-6);--colors-purple-p3-7: var(--colors-purple-dark-p3-7);--colors-purple-p3-8: var(--colors-purple-dark-p3-8);--colors-purple-p3-9: var(--colors-purple-dark-p3-9);--colors-purple-p3-10: var(--colors-purple-dark-p3-10);--colors-purple-p3-11: var(--colors-purple-dark-p3-11);--colors-purple-p3-12: var(--colors-purple-dark-p3-12);--colors-purple-p3-a-1: var(--colors-purple-dark-p3-a-1);--colors-purple-p3-a-2: var(--colors-purple-dark-p3-a-2);--colors-purple-p3-a-3: var(--colors-purple-dark-p3-a-3);--colors-purple-p3-a-4: var(--colors-purple-dark-p3-a-4);--colors-purple-p3-a-5: var(--colors-purple-dark-p3-a-5);--colors-purple-p3-a-6: var(--colors-purple-dark-p3-a-6);--colors-purple-p3-a-7: var(--colors-purple-dark-p3-a-7);--colors-purple-p3-a-8: var(--colors-purple-dark-p3-a-8);--colors-purple-p3-a-9: var(--colors-purple-dark-p3-a-9);--colors-purple-p3-a-10: var(--colors-purple-dark-p3-a-10);--colors-purple-p3-a-11: var(--colors-purple-dark-p3-a-11);--colors-purple-p3-a-12: var(--colors-purple-dark-p3-a-12);--colors-red-1: var(--colors-red-dark-1);--colors-red-2: var(--colors-red-dark-2);--colors-red-3: var(--colors-red-dark-3);--colors-red-4: var(--colors-red-dark-4);--colors-red-5: var(--colors-red-dark-5);--colors-red-6: var(--colors-red-dark-6);--colors-red-7: var(--colors-red-dark-7);--colors-red-8: var(--colors-red-dark-8);--colors-red-9: var(--colors-red-dark-9);--colors-red-10: var(--colors-red-dark-10);--colors-red-11: var(--colors-red-dark-11);--colors-red-12: var(--colors-red-dark-12);--colors-red-a-1: var(--colors-red-dark-a-1);--colors-red-a-2: var(--colors-red-dark-a-2);--colors-red-a-3: var(--colors-red-dark-a-3);--colors-red-a-4: var(--colors-red-dark-a-4);--colors-red-a-5: var(--colors-red-dark-a-5);--colors-red-a-6: var(--colors-red-dark-a-6);--colors-red-a-7: var(--colors-red-dark-a-7);--colors-red-a-8: var(--colors-red-dark-a-8);--colors-red-a-9: var(--colors-red-dark-a-9);--colors-red-a-10: var(--colors-red-dark-a-10);--colors-red-a-11: var(--colors-red-dark-a-11);--colors-red-a-12: var(--colors-red-dark-a-12);--colors-red-p3-1: var(--colors-red-dark-p3-1);--colors-red-p3-2: var(--colors-red-dark-p3-2);--colors-red-p3-3: var(--colors-red-dark-p3-3);--colors-red-p3-4: var(--colors-red-dark-p3-4);--colors-red-p3-5: var(--colors-red-dark-p3-5);--colors-red-p3-6: var(--colors-red-dark-p3-6);--colors-red-p3-7: var(--colors-red-dark-p3-7);--colors-red-p3-8: var(--colors-red-dark-p3-8);--colors-red-p3-9: var(--colors-red-dark-p3-9);--colors-red-p3-10: var(--colors-red-dark-p3-10);--colors-red-p3-11: var(--colors-red-dark-p3-11);--colors-red-p3-12: var(--colors-red-dark-p3-12);--colors-red-p3-a-1: var(--colors-red-dark-p3-a-1);--colors-red-p3-a-2: var(--colors-red-dark-p3-a-2);--colors-red-p3-a-3: var(--colors-red-dark-p3-a-3);--colors-red-p3-a-4: var(--colors-red-dark-p3-a-4);--colors-red-p3-a-5: var(--colors-red-dark-p3-a-5);--colors-red-p3-a-6: var(--colors-red-dark-p3-a-6);--colors-red-p3-a-7: var(--colors-red-dark-p3-a-7);--colors-red-p3-a-8: var(--colors-red-dark-p3-a-8);--colors-red-p3-a-9: var(--colors-red-dark-p3-a-9);--colors-red-p3-a-10: var(--colors-red-dark-p3-a-10);--colors-red-p3-a-11: var(--colors-red-dark-p3-a-11);--colors-red-p3-a-12: var(--colors-red-dark-p3-a-12);--colors-ruby-1: var(--colors-ruby-dark-1);--colors-ruby-2: var(--colors-ruby-dark-2);--colors-ruby-3: var(--colors-ruby-dark-3);--colors-ruby-4: var(--colors-ruby-dark-4);--colors-ruby-5: var(--colors-ruby-dark-5);--colors-ruby-6: var(--colors-ruby-dark-6);--colors-ruby-7: var(--colors-ruby-dark-7);--colors-ruby-8: var(--colors-ruby-dark-8);--colors-ruby-9: var(--colors-ruby-dark-9);--colors-ruby-10: var(--colors-ruby-dark-10);--colors-ruby-11: var(--colors-ruby-dark-11);--colors-ruby-12: var(--colors-ruby-dark-12);--colors-ruby-a-1: var(--colors-ruby-dark-a-1);--colors-ruby-a-2: var(--colors-ruby-dark-a-2);--colors-ruby-a-3: var(--colors-ruby-dark-a-3);--colors-ruby-a-4: var(--colors-ruby-dark-a-4);--colors-ruby-a-5: var(--colors-ruby-dark-a-5);--colors-ruby-a-6: var(--colors-ruby-dark-a-6);--colors-ruby-a-7: var(--colors-ruby-dark-a-7);--colors-ruby-a-8: var(--colors-ruby-dark-a-8);--colors-ruby-a-9: var(--colors-ruby-dark-a-9);--colors-ruby-a-10: var(--colors-ruby-dark-a-10);--colors-ruby-a-11: var(--colors-ruby-dark-a-11);--colors-ruby-a-12: var(--colors-ruby-dark-a-12);--colors-ruby-p3-1: var(--colors-ruby-dark-p3-1);--colors-ruby-p3-2: var(--colors-ruby-dark-p3-2);--colors-ruby-p3-3: var(--colors-ruby-dark-p3-3);--colors-ruby-p3-4: var(--colors-ruby-dark-p3-4);--colors-ruby-p3-5: var(--colors-ruby-dark-p3-5);--colors-ruby-p3-6: var(--colors-ruby-dark-p3-6);--colors-ruby-p3-7: var(--colors-ruby-dark-p3-7);--colors-ruby-p3-8: var(--colors-ruby-dark-p3-8);--colors-ruby-p3-9: var(--colors-ruby-dark-p3-9);--colors-ruby-p3-10: var(--colors-ruby-dark-p3-10);--colors-ruby-p3-11: var(--colors-ruby-dark-p3-11);--colors-ruby-p3-12: var(--colors-ruby-dark-p3-12);--colors-ruby-p3-a-1: var(--colors-ruby-dark-p3-a-1);--colors-ruby-p3-a-2: var(--colors-ruby-dark-p3-a-2);--colors-ruby-p3-a-3: var(--colors-ruby-dark-p3-a-3);--colors-ruby-p3-a-4: var(--colors-ruby-dark-p3-a-4);--colors-ruby-p3-a-5: var(--colors-ruby-dark-p3-a-5);--colors-ruby-p3-a-6: var(--colors-ruby-dark-p3-a-6);--colors-ruby-p3-a-7: var(--colors-ruby-dark-p3-a-7);--colors-ruby-p3-a-8: var(--colors-ruby-dark-p3-a-8);--colors-ruby-p3-a-9: var(--colors-ruby-dark-p3-a-9);--colors-ruby-p3-a-10: var(--colors-ruby-dark-p3-a-10);--colors-ruby-p3-a-11: var(--colors-ruby-dark-p3-a-11);--colors-ruby-p3-a-12: var(--colors-ruby-dark-p3-a-12);--colors-teal-1: var(--colors-teal-dark-1);--colors-teal-2: var(--colors-teal-dark-2);--colors-teal-3: var(--colors-teal-dark-3);--colors-teal-4: var(--colors-teal-dark-4);--colors-teal-5: var(--colors-teal-dark-5);--colors-teal-6: var(--colors-teal-dark-6);--colors-teal-7: var(--colors-teal-dark-7);--colors-teal-8: var(--colors-teal-dark-8);--colors-teal-9: var(--colors-teal-dark-9);--colors-teal-10: var(--colors-teal-dark-10);--colors-teal-11: var(--colors-teal-dark-11);--colors-teal-12: var(--colors-teal-dark-12);--colors-teal-a-1: var(--colors-teal-dark-a-1);--colors-teal-a-2: var(--colors-teal-dark-a-2);--colors-teal-a-3: var(--colors-teal-dark-a-3);--colors-teal-a-4: var(--colors-teal-dark-a-4);--colors-teal-a-5: var(--colors-teal-dark-a-5);--colors-teal-a-6: var(--colors-teal-dark-a-6);--colors-teal-a-7: var(--colors-teal-dark-a-7);--colors-teal-a-8: var(--colors-teal-dark-a-8);--colors-teal-a-9: var(--colors-teal-dark-a-9);--colors-teal-a-10: var(--colors-teal-dark-a-10);--colors-teal-a-11: var(--colors-teal-dark-a-11);--colors-teal-a-12: var(--colors-teal-dark-a-12);--colors-teal-p3-1: var(--colors-teal-dark-p3-1);--colors-teal-p3-2: var(--colors-teal-dark-p3-2);--colors-teal-p3-3: var(--colors-teal-dark-p3-3);--colors-teal-p3-4: var(--colors-teal-dark-p3-4);--colors-teal-p3-5: var(--colors-teal-dark-p3-5);--colors-teal-p3-6: var(--colors-teal-dark-p3-6);--colors-teal-p3-7: var(--colors-teal-dark-p3-7);--colors-teal-p3-8: var(--colors-teal-dark-p3-8);--colors-teal-p3-9: var(--colors-teal-dark-p3-9);--colors-teal-p3-10: var(--colors-teal-dark-p3-10);--colors-teal-p3-11: var(--colors-teal-dark-p3-11);--colors-teal-p3-12: var(--colors-teal-dark-p3-12);--colors-teal-p3-a-1: var(--colors-teal-dark-p3-a-1);--colors-teal-p3-a-2: var(--colors-teal-dark-p3-a-2);--colors-teal-p3-a-3: var(--colors-teal-dark-p3-a-3);--colors-teal-p3-a-4: var(--colors-teal-dark-p3-a-4);--colors-teal-p3-a-5: var(--colors-teal-dark-p3-a-5);--colors-teal-p3-a-6: var(--colors-teal-dark-p3-a-6);--colors-teal-p3-a-7: var(--colors-teal-dark-p3-a-7);--colors-teal-p3-a-8: var(--colors-teal-dark-p3-a-8);--colors-teal-p3-a-9: var(--colors-teal-dark-p3-a-9);--colors-teal-p3-a-10: var(--colors-teal-dark-p3-a-10);--colors-teal-p3-a-11: var(--colors-teal-dark-p3-a-11);--colors-teal-p3-a-12: var(--colors-teal-dark-p3-a-12);--colors-tomato-1: var(--colors-tomato-dark-1);--colors-tomato-2: var(--colors-tomato-dark-2);--colors-tomato-3: var(--colors-tomato-dark-3);--colors-tomato-4: var(--colors-tomato-dark-4);--colors-tomato-5: var(--colors-tomato-dark-5);--colors-tomato-6: var(--colors-tomato-dark-6);--colors-tomato-7: var(--colors-tomato-dark-7);--colors-tomato-8: var(--colors-tomato-dark-8);--colors-tomato-9: var(--colors-tomato-dark-9);--colors-tomato-10: var(--colors-tomato-dark-10);--colors-tomato-11: var(--colors-tomato-dark-11);--colors-tomato-12: var(--colors-tomato-dark-12);--colors-tomato-a-1: var(--colors-tomato-dark-a-1);--colors-tomato-a-2: var(--colors-tomato-dark-a-2);--colors-tomato-a-3: var(--colors-tomato-dark-a-3);--colors-tomato-a-4: var(--colors-tomato-dark-a-4);--colors-tomato-a-5: var(--colors-tomato-dark-a-5);--colors-tomato-a-6: var(--colors-tomato-dark-a-6);--colors-tomato-a-7: var(--colors-tomato-dark-a-7);--colors-tomato-a-8: var(--colors-tomato-dark-a-8);--colors-tomato-a-9: var(--colors-tomato-dark-a-9);--colors-tomato-a-10: var(--colors-tomato-dark-a-10);--colors-tomato-a-11: var(--colors-tomato-dark-a-11);--colors-tomato-a-12: var(--colors-tomato-dark-a-12);--colors-tomato-p3-1: var(--colors-tomato-dark-p3-1);--colors-tomato-p3-2: var(--colors-tomato-dark-p3-2);--colors-tomato-p3-3: var(--colors-tomato-dark-p3-3);--colors-tomato-p3-4: var(--colors-tomato-dark-p3-4);--colors-tomato-p3-5: var(--colors-tomato-dark-p3-5);--colors-tomato-p3-6: var(--colors-tomato-dark-p3-6);--colors-tomato-p3-7: var(--colors-tomato-dark-p3-7);--colors-tomato-p3-8: var(--colors-tomato-dark-p3-8);--colors-tomato-p3-9: var(--colors-tomato-dark-p3-9);--colors-tomato-p3-10: var(--colors-tomato-dark-p3-10);--colors-tomato-p3-11: var(--colors-tomato-dark-p3-11);--colors-tomato-p3-12: var(--colors-tomato-dark-p3-12);--colors-tomato-p3-a-1: var(--colors-tomato-dark-p3-a-1);--colors-tomato-p3-a-2: var(--colors-tomato-dark-p3-a-2);--colors-tomato-p3-a-3: var(--colors-tomato-dark-p3-a-3);--colors-tomato-p3-a-4: var(--colors-tomato-dark-p3-a-4);--colors-tomato-p3-a-5: var(--colors-tomato-dark-p3-a-5);--colors-tomato-p3-a-6: var(--colors-tomato-dark-p3-a-6);--colors-tomato-p3-a-7: var(--colors-tomato-dark-p3-a-7);--colors-tomato-p3-a-8: var(--colors-tomato-dark-p3-a-8);--colors-tomato-p3-a-9: var(--colors-tomato-dark-p3-a-9);--colors-tomato-p3-a-10: var(--colors-tomato-dark-p3-a-10);--colors-tomato-p3-a-11: var(--colors-tomato-dark-p3-a-11);--colors-tomato-p3-a-12: var(--colors-tomato-dark-p3-a-12);--colors-violet-1: var(--colors-violet-dark-1);--colors-violet-2: var(--colors-violet-dark-2);--colors-violet-3: var(--colors-violet-dark-3);--colors-violet-4: var(--colors-violet-dark-4);--colors-violet-5: var(--colors-violet-dark-5);--colors-violet-6: var(--colors-violet-dark-6);--colors-violet-7: var(--colors-violet-dark-7);--colors-violet-8: var(--colors-violet-dark-8);--colors-violet-9: var(--colors-violet-dark-9);--colors-violet-10: var(--colors-violet-dark-10);--colors-violet-11: var(--colors-violet-dark-11);--colors-violet-12: var(--colors-violet-dark-12);--colors-violet-a-1: var(--colors-violet-dark-a-1);--colors-violet-a-2: var(--colors-violet-dark-a-2);--colors-violet-a-3: var(--colors-violet-dark-a-3);--colors-violet-a-4: var(--colors-violet-dark-a-4);--colors-violet-a-5: var(--colors-violet-dark-a-5);--colors-violet-a-6: var(--colors-violet-dark-a-6);--colors-violet-a-7: var(--colors-violet-dark-a-7);--colors-violet-a-8: var(--colors-violet-dark-a-8);--colors-violet-a-9: var(--colors-violet-dark-a-9);--colors-violet-a-10: var(--colors-violet-dark-a-10);--colors-violet-a-11: var(--colors-violet-dark-a-11);--colors-violet-a-12: var(--colors-violet-dark-a-12);--colors-violet-p3-1: var(--colors-violet-dark-p3-1);--colors-violet-p3-2: var(--colors-violet-dark-p3-2);--colors-violet-p3-3: var(--colors-violet-dark-p3-3);--colors-violet-p3-4: var(--colors-violet-dark-p3-4);--colors-violet-p3-5: var(--colors-violet-dark-p3-5);--colors-violet-p3-6: var(--colors-violet-dark-p3-6);--colors-violet-p3-7: var(--colors-violet-dark-p3-7);--colors-violet-p3-8: var(--colors-violet-dark-p3-8);--colors-violet-p3-9: var(--colors-violet-dark-p3-9);--colors-violet-p3-10: var(--colors-violet-dark-p3-10);--colors-violet-p3-11: var(--colors-violet-dark-p3-11);--colors-violet-p3-12: var(--colors-violet-dark-p3-12);--colors-violet-p3-a-1: var(--colors-violet-dark-p3-a-1);--colors-violet-p3-a-2: var(--colors-violet-dark-p3-a-2);--colors-violet-p3-a-3: var(--colors-violet-dark-p3-a-3);--colors-violet-p3-a-4: var(--colors-violet-dark-p3-a-4);--colors-violet-p3-a-5: var(--colors-violet-dark-p3-a-5);--colors-violet-p3-a-6: var(--colors-violet-dark-p3-a-6);--colors-violet-p3-a-7: var(--colors-violet-dark-p3-a-7);--colors-violet-p3-a-8: var(--colors-violet-dark-p3-a-8);--colors-violet-p3-a-9: var(--colors-violet-dark-p3-a-9);--colors-violet-p3-a-10: var(--colors-violet-dark-p3-a-10);--colors-violet-p3-a-11: var(--colors-violet-dark-p3-a-11);--colors-violet-p3-a-12: var(--colors-violet-dark-p3-a-12);--colors-yellow-1: var(--colors-yellow-dark-1);--colors-yellow-2: var(--colors-yellow-dark-2);--colors-yellow-3: var(--colors-yellow-dark-3);--colors-yellow-4: var(--colors-yellow-dark-4);--colors-yellow-5: var(--colors-yellow-dark-5);--colors-yellow-6: var(--colors-yellow-dark-6);--colors-yellow-7: var(--colors-yellow-dark-7);--colors-yellow-8: var(--colors-yellow-dark-8);--colors-yellow-9: var(--colors-yellow-dark-9);--colors-yellow-10: var(--colors-yellow-dark-10);--colors-yellow-11: var(--colors-yellow-dark-11);--colors-yellow-12: var(--colors-yellow-dark-12);--colors-yellow-a-1: var(--colors-yellow-dark-a-1);--colors-yellow-a-2: var(--colors-yellow-dark-a-2);--colors-yellow-a-3: var(--colors-yellow-dark-a-3);--colors-yellow-a-4: var(--colors-yellow-dark-a-4);--colors-yellow-a-5: var(--colors-yellow-dark-a-5);--colors-yellow-a-6: var(--colors-yellow-dark-a-6);--colors-yellow-a-7: var(--colors-yellow-dark-a-7);--colors-yellow-a-8: var(--colors-yellow-dark-a-8);--colors-yellow-a-9: var(--colors-yellow-dark-a-9);--colors-yellow-a-10: var(--colors-yellow-dark-a-10);--colors-yellow-a-11: var(--colors-yellow-dark-a-11);--colors-yellow-a-12: var(--colors-yellow-dark-a-12);--colors-yellow-p3-1: var(--colors-yellow-dark-p3-1);--colors-yellow-p3-2: var(--colors-yellow-dark-p3-2);--colors-yellow-p3-3: var(--colors-yellow-dark-p3-3);--colors-yellow-p3-4: var(--colors-yellow-dark-p3-4);--colors-yellow-p3-5: var(--colors-yellow-dark-p3-5);--colors-yellow-p3-6: var(--colors-yellow-dark-p3-6);--colors-yellow-p3-7: var(--colors-yellow-dark-p3-7);--colors-yellow-p3-8: var(--colors-yellow-dark-p3-8);--colors-yellow-p3-9: var(--colors-yellow-dark-p3-9);--colors-yellow-p3-10: var(--colors-yellow-dark-p3-10);--colors-yellow-p3-11: var(--colors-yellow-dark-p3-11);--colors-yellow-p3-12: var(--colors-yellow-dark-p3-12);--colors-yellow-p3-a-1: var(--colors-yellow-dark-p3-a-1);--colors-yellow-p3-a-2: var(--colors-yellow-dark-p3-a-2);--colors-yellow-p3-a-3: var(--colors-yellow-dark-p3-a-3);--colors-yellow-p3-a-4: var(--colors-yellow-dark-p3-a-4);--colors-yellow-p3-a-5: var(--colors-yellow-dark-p3-a-5);--colors-yellow-p3-a-6: var(--colors-yellow-dark-p3-a-6);--colors-yellow-p3-a-7: var(--colors-yellow-dark-p3-a-7);--colors-yellow-p3-a-8: var(--colors-yellow-dark-p3-a-8);--colors-yellow-p3-a-9: var(--colors-yellow-dark-p3-a-9);--colors-yellow-p3-a-10: var(--colors-yellow-dark-p3-a-10);--colors-yellow-p3-a-11: var(--colors-yellow-dark-p3-a-11);--colors-yellow-p3-a-12: var(--colors-yellow-dark-p3-a-12);--colors-likec4-background-pattern: color-mix(in oklab, var(--mantine-color-dark-4) 70%, transparent 30%);--colors-likec4-mix-color: white;--colors-likec4-panel-bg: var(--mantine-color-dark-6);--colors-likec4-panel-action-bg: color-mix(in oklab, var(--mantine-color-dark-7) 70%, transparent 30%);--colors-likec4-panel-action-bg-hover: var(--mantine-color-dark-8);--colors-likec4-panel-action-warning-hover: var(--mantine-color-orange-5);--colors-likec4-panel-action-warning-bg: color-mix(in oklab, var(--mantine-color-orange-9) 10%, transparent 90%);--colors-likec4-panel-action-warning-bg-hover: color-mix(in oklab, var(--mantine-color-orange-9) 20%, transparent 80%);--colors-likec4-dropdown-bg: var(--mantine-color-dark-6);--colors-likec4-overlay-body: var(--mantine-color-dark-6);--colors-likec4-compare-manual: var(--mantine-color-orange-6);--colors-likec4-compare-manual-outline: color-mix(in oklab, var(--mantine-color-orange-6) 80%, transparent 20%) }[data-mantine-color-scheme=light]{--colors-likec4-background-pattern: var(--mantine-color-gray-4);--colors-likec4-mix-color: black;--colors-likec4-panel-border: var(--mantine-color-gray-2);--colors-likec4-overlay-backdrop: rgb(15 15 15);--colors-likec4-compare-manual: var(--mantine-color-orange-8);--colors-likec4-compare-manual-outline: var(--mantine-color-orange-8) }@keyframes indicatorOpacity{0%{opacity:.8;stroke-opacity:.8}to{opacity:.4;stroke-opacity:.4}}@keyframes xyedgeAnimated{0%{stroke-dashoffset:36}to{stroke-dashoffset:0}}}@layer recipes{@layer _base{.likec4-edge-label{background:var(--xy-edge-label-background-color);border:0px solid transparent;padding-block:var(--spacing-1);padding-inline:var(--spacing-1\\.5);gap:var(--spacing-0\\.5);border-radius:4px;font-family:var(--fonts-likec4-relation);display:flex;flex-direction:column;align-items:center;color:var(--xy-edge-label-color);width:max-content;max-width:var(--sizes-100\\%)}.likec4-edge-label .likec4-edge-label__step-number{padding:var(--spacing-1);background:color-mix(in oklab,var(--likec4-palette-relation-label-bg),var(--colors-likec4-mix-color) 10%);flex:0 0 auto;align-self:stretch;font-weight:600;font-size:14px;text-align:center;font-variant-numeric:tabular-nums;min-width:22px;border-top-left-radius:4px;border-bottom-left-radius:4px}.likec4-edge-label .likec4-edge-label__step-number:only-child{border-radius:4px;min-width:24px}[data-mantine-color-scheme=dark] :where([data-likec4-color=gray]) .likec4-edge-label .likec4-edge-label__step-number{background:color-mix(in oklab,var(--likec4-palette-relation-label-bg),var(--colors-likec4-mix-color) 15%)}.likec4-edge-label .likec4-edge-label__text{margin:var(--spacing-0);white-space-collapse:preserve-breaks;font-size:14px;line-height:1.2}.likec4-edge-label .likec4-edge-label__contents{display:contents}.likec4-edge-label .likec4-edge-label__contents:is(:empty,[data-empty]){display:none!important}.likec4-edge-label .likec4-edge-label__technology{text-align:center;white-space-collapse:preserve-breaks;font-size:11px;line-height:var(--line-heights-1);opacity:.75}.likec4-overlay{--_blur: 0px;--_level: 0;--_offset: 0px;--_inset: calc((1 + var(--_level) * .75) * var(--_offset));--_opacity: 0%;--_border-radius: 0px;margin:var(--spacing-0);background:var(--colors-likec4-overlay-border);border:var(--borders-transparent);inset:var(--spacing-0);padding:var(--spacing-0);outline:var(--borders-none);border-radius:var(--_border-radius);box-sizing:border-box;position:fixed;box-shadow:var(--shadows-xl);width:100vw;height:100vh;max-width:100vw;max-height:100vh}.likec4-overlay::backdrop{cursor:zoom-out}.likec4-overlay .likec4-overlay-body{border:var(--borders-transparent);background:var(--colors-likec4-overlay-body);overflow:hidden;position:relative;container-name:likec4-dialog;container-type:size;width:var(--sizes-100\\%);height:var(--sizes-100\\%)}.likec4-markdown-block{--text-fz: 1rem;--text-fz-sm: calc(var(--text-fz) * var(--mantine-scale, 1) / 1.125);--text-fz-md: calc(var(--text-fz) * var(--mantine-scale, 1));--typography-spacing: calc(.75 * var(--text-fz-md));--text-fw-headings: 600;--code-background: var(--mantine-color-gray-2);--code-color: var(--mantine-color-black);font-size:var(--text-fz-md);line-height:var(--mantine-line-height)}[data-mantine-color-scheme=dark] .likec4-markdown-block{--code-background: var(--mantine-color-dark-8);--code-color: var(--mantine-color-white);--color-border-default: #30363d;--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-danger-fg: #f85149;--color-danger-emphasis: #da3633;--color-attention-fg: #d29922;--color-attention-emphasis: #9e6a03;--color-done-fg: #a371f7;--color-done-emphasis: #8957e5;--color-success-fg: #3fb950;--color-success-emphasis: #238636}[data-mantine-color-scheme=light] .likec4-markdown-block{--color-border-default: #d0d7de;--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-danger-fg: #d1242f;--color-danger-emphasis: #cf222e;--color-attention-fg: #9a6700;--color-attention-emphasis: #9a6700;--color-done-fg: #8250df;--color-done-emphasis: #8250df;--color-success-fg: #1a7f37;--color-success-emphasis: #1f883d}.likec4-markdown-block :where(hr){border:var(--borders-none);border-bottom:1px solid;border-color:var(--mantine-color-gray-3);margin-top:calc(var(--typography-spacing) / 2);margin-bottom:calc(var(--typography-spacing) / 2)}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(hr){border-color:var(--mantine-color-dark-3)}.likec4-markdown-block :where(pre){margin:var(--spacing-0);padding-inline:var(--spacing-3);padding-block:var(--spacing-2);border-radius:var(--radii-sm);line-height:var(--mantine-line-height-xs);font-family:var(--mantine-font-family-monospace);font-size:var(--text-fz-sm);background-color:var(--code-background);color:var(--code-color);margin-top:var(--typography-spacing);margin-bottom:var(--typography-spacing);overflow-x:auto}.likec4-markdown-block :where(code){padding:1px 4px;border-radius:var(--radii-xs);line-height:var(--line-heights-1);font-family:var(--mantine-font-family-monospace);font-size:var(--text-fz-sm);background-color:var(--code-background);color:var(--code-color)}.likec4-markdown-block :where(pre code){padding:var(--spacing-0);border:0;border-radius:var(--radii-0);background-color:var(--colors-transparent);color:inherit}.likec4-markdown-block :where(blockquote){margin:var(--spacing-0);padding:var(--spacing-xs);border-radius:var(--mantine-radius-sm);font-size:var(--text-fz-md);background-color:var(--mantine-color-gray-1)}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(blockquote){background-color:var(--mantine-color-dark-5)}.likec4-markdown-block :where(blockquote):not(:first-child){margin-top:var(--typography-spacing)}.likec4-markdown-block :where(h1,h2,h3,h4,h5,h6){text-wrap:var(--mantine-heading-text-wrap);line-height:1.5;font-family:var(--mantine-font-family-headings);margin-bottom:var(--typography-spacing)}.likec4-markdown-block :where(a){text-decoration:none;font-size:var(--text-fz-md);color:var(--mantine-color-anchor);font-weight:500}.likec4-markdown-block :where(a):is(:hover,[data-hover]){text-decoration:underline}.likec4-markdown-block .markdown-alert{border-left:.25em solid var(--borderColor-default, var(--color-border-default));color:inherit;margin-bottom:calc(var(--typography-spacing) * 1.5);padding-left:1em;padding-right:.5em}.likec4-markdown-block .markdown-alert .markdown-alert-title{gap:var(--spacing-2);align-items:center;display:flex;font-size:var(--text-fz-md);font-weight:500;line-height:1.5;margin-bottom:.1em}.likec4-markdown-block .markdown-alert .markdown-alert-title svg{fill:currentColor;height:var(--text-fz-md)}.likec4-markdown-block .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--color-accent-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--color-success-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--color-done-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--color-attention-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--color-danger-fg)}.likec4-markdown-block .markdown-alert:last-child{margin-bottom:var(--spacing-0)!important}.likec4-markdown-block .markdown-alert.markdown-alert-note{border-left-color:var(--borderColor-accent-emphasis,var(--color-accent-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-tip{border-left-color:var(--borderColor-success-emphasis,var(--color-success-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-important{border-left-color:var(--borderColor-done-emphasis,var(--color-done-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-warning{border-left-color:var(--borderColor-attention-emphasis,var(--color-attention-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-caution{border-left-color:var(--borderColor-danger-emphasis,var(--color-danger-emphasis))}.likec4-markdown-block :is(h1){font-size:calc(1.476 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h2){font-size:calc(1.383 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h3){font-size:calc(1.296 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h4){font-size:calc(1.215 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h5){font-size:calc(1.138 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h6){font-size:calc(1.067 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :where(p){font-size:var(--text-fz-md);margin-top:var(--spacing-0);margin-bottom:var(--typography-spacing)}.likec4-markdown-block :where(strong){font-weight:500}.likec4-markdown-block :where(mark){font-size:var(--text-fz-md);background-color:var(--mantine-color-yellow-2);color:inherit}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(mark){background-color:var(--mantine-color-yellow-5);color:var(--mantine-color-black)}.likec4-markdown-block :where(ul,ol):not([data-type=taskList]){padding-inline-start:var(--typography-spacing);list-style-position:inside;margin-bottom:var(--typography-spacing)}.likec4-markdown-block :where(table){border-collapse:collapse;caption-side:bottom;width:var(--sizes-100\\%);margin-bottom:var(--typography-spacing)}[data-mantine-color-scheme=light] .likec4-markdown-block :where(table){--table-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(table){--table-border-color: var(--mantine-color-dark-4)}.likec4-markdown-block :where(table) :where(th){padding:var(--typography-spacing);text-align:left;font-weight:700;font-size:var(--text-fz-sm)}.likec4-markdown-block :where(table) :where(td){padding:var(--typography-spacing);border-bottom:1px solid;border-color:var(--table-border-color);font-size:var(--text-fz-sm)}.likec4-markdown-block :where(table) :where(thead th){border-bottom:1px solid;border-color:var(--table-border-color)}.likec4-markdown-block :where(table) :where(tfoot th){border-top:1px solid;border-color:var(--table-border-color)}.likec4-markdown-block :where(table) :where(tr:last-of-type td){border-bottom:0}.likec4-markdown-block :where(table) :where(caption){font-size:var(--text-fz-sm);color:var(--mantine-color-dimmed);margin-top:calc(.5 * var(--typography-spacing) + 1px)}.likec4-markdown-block :first-child{margin-top:var(--spacing-0)}.likec4-markdown-block :last-child{margin-bottom:var(--spacing-0)}.likec4-markdown-block :is(h1,h2,h3,h4,h5,h6):not(:first-child){margin-top:var(--typography-spacing)}.likec4-markdown-block :where(img){max-width:var(--sizes-100\\%);margin-bottom:var(--typography-spacing)}.likec4-navigation-panel-icon{color:var(--colors-likec4-panel-action)}.likec4-navigation-panel-icon:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){color:var(--colors-likec4-panel-action-disabled);opacity:.5}.likec4-navigation-panel-icon:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover)}.action-btn{--actionbtn-color: var(--likec4-palette-loContrast);--actionbtn-color-hovered: var(--likec4-palette-loContrast);--actionbtn-color-hovered-btn: var(--likec4-palette-hiContrast);--actionbtn-bg-idle: color-mix(in oklab , var(--likec4-palette-fill), transparent 99%);--actionbtn-bg-hovered: color-mix(in oklab , var(--likec4-palette-fill) 65%, var(--likec4-palette-stroke));--actionbtn-bg-hovered-btn: color-mix(in oklab , var(--likec4-palette-fill) 50%, var(--likec4-palette-stroke));--ai-bg: var(--actionbtn-bg-idle);background:var(--ai-bg);color:var(--actionbtn-color);opacity:.75}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .action-btn{--ai-bg: var(--actionbtn-bg-hovered);opacity:1;color:var(--actionbtn-color-hovered)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .action-btn{pointer-events:all;cursor:pointer}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .action-btn{display:none}:where([data-likec4-zoom-small=true]) .action-btn{display:none}.action-btn *{pointer-events:none}.action-btn:is(:hover,[data-hover]){--ai-bg: var(--actionbtn-bg-hovered-btn);opacity:1;color:var(--actionbtn-color-hovered-btn)}.likec4-compound-node{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l - .05) a b);--_border-width: 3px;--_border-radius: 6px;--_compound-transparency: 100%;--_border-transparency: 100%;--_indicator-spacing: calc(var(--_border-width) + 1px);--_compound-color: var(--likec4-palette-loContrast);padding:var(--spacing-0);margin:var(--spacing-0);border-style:solid;border-width:var(--_border-width);border-radius:var(--_border-radius);position:relative;pointer-events:none;background-clip:padding-box;-webkit-background-clip:padding-box;box-sizing:border-box;color:var(--_compound-color);width:var(--sizes-100\\%);height:var(--sizes-100\\%)}[data-mantine-color-scheme=dark] .likec4-compound-node{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l + .2) a b)}.likec4-compound-node:before{border-style:solid;border-width:calc(var(--_border-width) + 1px);border-radius:calc(var(--_border-radius) + 4px);border-color:var(--likec4-palette-outline);position:absolute;content:" ";pointer-events:none;display:none;animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorOpacity;animation-play-state:paused;top:calc(-1 * var(--_indicator-spacing));left:calc(-1 * var(--_indicator-spacing));width:calc(100% + 2 * var(--_indicator-spacing));height:calc(100% + 2 * var(--_indicator-spacing))}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-compound-node:before{display:block;animation-play-state:running}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-compound-node:before{display:block;animation-play-state:running}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-compound-node:before{animation-play-state:paused}.likec4-compound-node:has(.likec4-compound-navigation) .likec4-compound-title-container{padding-left:24px}.likec4-compound-node .action-btn{--actionbtn-color: var(--_compound-color);--actionbtn-color-hovered: var(--_compound-color);--actionbtn-color-hovered-btn: color-mix(in oklab, var(--_compound-color) 80%, #fff);opacity:.6}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-compound-node .action-btn{transition:all var(--durations-fast) var(--easings-in-out)}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-compound-node .action-btn{opacity:.75}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-compound-node .action-btn{opacity:.75}.likec4-compound-node .action-btn:is(:hover,[data-hover]){opacity:1}.likec4-compound-node .likec4-compound-title-container{gap:var(--spacing-1\\.5);position:absolute;display:flex;align-items:center;left:var(--spacing-2\\.5);top:var(--spacing-0\\.5);right:30px;width:auto;min-height:30px}:where(.react-flow__node.draggable) .likec4-compound-node .likec4-compound-title-container{pointer-events:all;cursor:grab}.likec4-compound-node .likec4-compound-title{flex:1 1 0%;font-family:var(--fonts-likec4-compound);font-weight:600;font-size:15px;text-transform:uppercase;letter-spacing:.25px;line-height:var(--line-heights-1);color:var(--_compound-color)}.likec4-compound-node .likec4-compound-icon{flex:0 0 20px;display:flex;align-items:center;justify-content:center;mix-blend-mode:hard-light;height:20px;width:20px}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-compound-node .likec4-compound-icon{mix-blend-mode:normal}.likec4-compound-node .likec4-compound-icon svg,.likec4-compound-node .likec4-compound-icon img{pointer-events:none;filter:drop-shadow(0 0 3px rgb(0 0 0 / 12%)) drop-shadow(0 1px 8px rgb(0 0 0 / 8%)) drop-shadow(1px 1px 16px rgb(0 0 0 / 3%));width:var(--sizes-100\\%);height:auto;max-height:var(--sizes-100\\%)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-compound-node .likec4-compound-icon svg,.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-compound-node .likec4-compound-icon img{filter:none}.likec4-compound-node .likec4-compound-icon img{object-fit:contain}.likec4-compound-node .likec4-compound-navigation{position:absolute;top:var(--spacing-1);left:var(--spacing-0\\.5)}:where([data-likec4-zoom-small=true]) .likec4-compound-node .likec4-compound-navigation{display:none}.likec4-compound-node .likec4-compound-details{position:absolute;top:var(--spacing-0\\.5);right:var(--spacing-0\\.5)}:where([data-likec4-zoom-small=true]) .likec4-compound-node .likec4-compound-details{display:none}.likec4-edge-action-btn{--ai-bg: transparent;--ai-hover: color-mix(in oklab , var(--xy-edge-label-background-color), var(--colors-likec4-mix-color) 10%);--ai-size: var(--ai-size-sm);--ai-radius: var(--radii-sm);transition:all var(--durations-fast) var(--easings-in-out);pointer-events:all;color:var(--xy-edge-label-color);cursor:pointer;opacity:.75;translate:var(--translate-x) var(--translate-y)}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-edge-action-btn{--ai-bg: var(--xy-edge-label-background-color);opacity:1}.likec4-edge-action-btn .tabler-icon{stroke-width:2;width:80%;height:80%}.likec4-edge-action-btn:is(:hover,[data-hover]){--translate-y: 2px;scale:1.15}.likec4-edge-action-btn:is(:active,[data-active]){--translate-y: -1px;scale:.9}.likec4-element-node-data{margin:0 auto;flex:1 1 0%;overflow:hidden;gap:var(--spacing-3);position:relative;display:flex;align-items:center;justify-content:center;flex-direction:row;pointer-events:none;text-align:center;height:fit-content;width:fit-content;max-height:var(--sizes-100\\%);max-width:var(--sizes-100\\%);padding-top:var(--likec4-spacing);padding-bottom:var(--likec4-spacing);padding-left:calc(var(--likec4-spacing) + 8px);padding-right:calc(var(--likec4-spacing) + 8px)}:where([data-likec4-shape-size=xs]) .likec4-element-node-data{--likec4-icon-size: 24px}:where([data-likec4-shape-size=sm]) .likec4-element-node-data{--likec4-icon-size: 36px}:where([data-likec4-shape-size=md]) .likec4-element-node-data{--likec4-icon-size: 60px}:where([data-likec4-shape-size=lg]) .likec4-element-node-data{--likec4-icon-size: 82px;gap:var(--spacing-4)}:where([data-likec4-shape-size=xl]) .likec4-element-node-data{--likec4-icon-size: 90px;gap:var(--spacing-4)}.likec4-element-node-data:has([data-likec4-icon]){gap:var(--spacing-4);text-align:left}.likec4-element-node-data:has([data-likec4-icon]) .likec4-element-node-content{align-items:flex-start;min-width:calc(50% + var(--likec4-icon-size))}:where([data-likec4-shape=queue]) .likec4-element-node-data{padding-left:46px;padding-right:16px}:where([data-likec4-shape=mobile]) .likec4-element-node-data{padding-left:46px;padding-right:16px}:where([data-likec4-shape=cylinder]) .likec4-element-node-data{padding-top:30px}:where([data-likec4-shape=storage]) .likec4-element-node-data{padding-top:30px}:where([data-likec4-shape=browser]) .likec4-element-node-data{padding-top:32px;padding-bottom:28px}.likec4-element-node-data [data-likec4-icon]{flex:0 0 var(--likec4-icon-size, 48px);display:flex;align-self:flex-start;align-items:center;justify-content:center;mix-blend-mode:hard-light;height:var(--likec4-icon-size, 48px);width:var(--likec4-icon-size, 48px)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-node-data [data-likec4-icon]{mix-blend-mode:normal}.likec4-element-node-data [data-likec4-icon] svg,.likec4-element-node-data [data-likec4-icon] img{pointer-events:none;filter:drop-shadow(0 0 3px rgb(0 0 0 / 12%));width:var(--sizes-100\\%);height:auto;max-height:var(--sizes-100\\%)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-node-data [data-likec4-icon] svg,.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-node-data [data-likec4-icon] img{filter:none}.likec4-element-node-data [data-likec4-icon] img{object-fit:contain}.likec4-element-node-data .likec4-element-node-content{flex:0 1 auto;overflow:hidden;gap:var(--spacing-2);display:flex;flex-direction:column;align-items:stretch;justify-content:center;flex-wrap:nowrap;height:fit-content;width:fit-content;max-height:var(--sizes-100\\%);max-width:var(--sizes-100\\%)}.likec4-element-node-data .likec4-element-node-content:has([data-likec4-node-description]):has([data-likec4-node-technology]){gap:var(--spacing-1\\.5)}.likec4-element-node-data [data-likec4-node-title]{flex:0 0 auto;font-family:var(--likec4-element-font, var(--fonts-likec4));font-weight:500;font-size:var(--likec4-text-size);line-height:1.15;text-wrap-style:balance;white-space:preserve-breaks;text-align:var(__text-align);color:var(--likec4-palette-hiContrast)}.likec4-element-node-data [data-likec4-node-description]{overflow:hidden;flex-grow:0;flex-shrink:1;--text-fz: calc(var(--likec4-text-size) * .74);font-family:var(--likec4-element-font, var(--fonts-likec4));font-weight:400;font-size:calc(var(--likec4-text-size) * .74);line-height:1.3;text-wrap-style:pretty;color:var(--likec4-palette-loContrast);text-align:var(__text-align);text-overflow:ellipsis}:where([data-likec4-shape-size=xs]) .likec4-element-node-data [data-likec4-node-description]{display:none}:where([data-likec4-zoom-small=true]) .likec4-element-node-data [data-likec4-node-description]{display:none}.likec4-element-node-data [data-likec4-node-description] a{pointer-events:all}.likec4-element-node-data [data-likec4-node-description] .markdown-alert{mix-blend-mode:screen}.likec4-element-node-data [data-likec4-node-technology]{flex:0 0 auto;text-wrap:balance;--text-fz: calc(var(--likec4-text-size) * .74);font-family:var(--likec4-element-font, var(--fonts-likec4));font-weight:400;font-size:calc(var(--likec4-text-size) * .635);line-height:1.125;text-wrap-style:pretty;color:var(--likec4-palette-loContrast);text-align:var(__text-align);opacity:.92}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-node-data [data-likec4-node-technology]{opacity:1}:where([data-likec4-shape-size=xs]) .likec4-element-node-data [data-likec4-node-technology]{display:none}:where([data-likec4-shape-size=sm]) .likec4-element-node-data [data-likec4-node-technology]{display:none}:where([data-likec4-zoom-small=true]) .likec4-element-node-data [data-likec4-node-technology]{display:none}.likec4-element-shape{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l - .05) a b);--likec4-outline-size: 4px;overflow:visible;position:absolute;pointer-events:none;top:var(--spacing-0);left:var(--spacing-0);width:var(--sizes-100\\%);height:var(--sizes-100\\%)}[data-mantine-color-scheme=dark] .likec4-element-shape{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l + .2) a b)}.likec4-element-shape .likec4-shape-outline{visibility:hidden;animation-play-state:paused;pointer-events:none}:where([data-likec4-zoom-small=true]) .likec4-element-shape .likec4-shape-outline{visibility:hidden}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape .likec4-shape-outline{visibility:visible;animation-play-state:running}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-element-shape .likec4-shape-outline{visibility:visible;animation-play-state:running}.group:is(:focus-visible,[data-focus-visible]) .likec4-element-shape .likec4-shape-outline{visibility:visible;animation-play-state:running}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-element-shape .likec4-shape-outline{animation-play-state:paused}.likec4-tag{transition:all var(--durations-fast) var(--easings-in-out);gap:1px;padding-inline:var(--spacing-1);padding-block:var(--spacing-0);pointer-events:all;display:inline-flex;align-items:center;justify-content:center;font-size:var(--font-sizes-xs);cursor:default;font-family:var(--fonts-likec4);font-weight:700;border:var(--borders-none);border-radius:3px;color:var(--colors-likec4-tag-text);background-color:var(--colors-likec4-tag-bg)}.likec4-tag:is(:hover,[data-hover]){background-color:var(--colors-likec4-tag-bg-hover)}.likec4-tag{white-space:nowrap;min-width:40px;width:min-content}@media screen and (min-width:36rem){.likec4-markdown-block .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--fgColor-accent,var(--color-accent-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--fgColor-success,var(--color-success-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--fgColor-done,var(--color-done-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--fgColor-attention,var(--color-attention-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--fgColor-danger,var(--color-danger-fg))}.likec4-element-node-data [data-likec4-icon] svg,.likec4-element-node-data [data-likec4-icon] img{filter:drop-shadow(0 1px 8px rgb(0 0 0 / 8%))}}@media screen and (min-width:48rem){.likec4-element-node-data [data-likec4-icon] svg,.likec4-element-node-data [data-likec4-icon] img{filter:drop-shadow(1px 1px 16px rgb(0 0 0 / 3%))}}@media print{.action-btn{display:none}.likec4-compound-node .likec4-compound-icon{mix-blend-mode:normal!important}.likec4-compound-node .action-btn,.likec4-compound-node .likec4-compound-navigation,.likec4-compound-node .likec4-compound-details,.likec4-edge-action-btn{display:none}}}.likec4-edge-label--pointerEvents_all{pointer-events:all}.likec4-edge-label--cursor_default{cursor:default}.likec4-edge-label--cursor_pointer{cursor:pointer}.likec4-edge-label--isStepEdge_true{padding:var(--spacing-0);gap:var(--spacing-1);flex-direction:row}.likec4-edge-label--isStepEdge_true .likec4-edge-label__contents{gap:var(--spacing-0\\.5);display:flex;flex-direction:column;align-items:center;padding-top:var(--spacing-0\\.5);padding-right:var(--spacing-1);padding-bottom:var(--spacing-1)}.likec4-edge-label--isStepEdge_true .likec4-edge-label__text{padding-block:var(--spacing-0\\.5);padding-right:var(--spacing-0\\.5)}.likec4-edge-label--pointerEvents_none{pointer-events:none}.likec4-overlay--withBackdrop_true::backdrop{background:color-mix(in oklab,var(--colors-likec4-overlay-backdrop) var(--_opacity),transparent);backdrop-filter:blur(var(--_blur));-webkit-backdrop-filter:blur(var(--_blur))}.likec4-overlay--fullscreen_true{inset:var(--spacing-0);padding:var(--spacing-0)}.likec4-overlay--withBackdrop_false::backdrop{display:none}.likec4-markdown-block--value_plaintext :where(p){white-space:preserve-breaks}.likec4-markdown-block--uselikec4palette_true{--code-background: color-mix(in oklab , var(--likec4-palette-stroke) 70%, transparent);--code-color: var(--likec4-palette-loContrast);--typography-spacing: calc(.5 * var(--text-fz-md))}.likec4-markdown-block--uselikec4palette_true :where(blockquote){padding:var(--spacing-xxs);--mix-backgroundColor: color-mix(in srgb, var(--likec4-palette-stroke) 65%, transparent);background-color:var(--mix-backgroundColor, var(--likec4-palette-stroke))}.likec4-markdown-block--uselikec4palette_true :where(hr){--mix-borderColor: color-mix(in srgb, var(--likec4-palette-stroke) 85%, transparent);border-color:var(--mix-borderColor, var(--likec4-palette-stroke))}.likec4-markdown-block--uselikec4palette_true :where(a){--mix-color: color-mix(in srgb, var(--likec4-palette-fill) 45%, transparent);color:var(--mix-color, var(--likec4-palette-fill));mix-blend-mode:difference}.likec4-markdown-block--uselikec4palette_true :where(strong){color:color-mix(in oklab,var(--likec4-palette-hiContrast) 50%,var(--likec4-palette-loContrast))}.likec4-navigation-panel-icon--variant_default{background-color:var(--colors-transparent)}.likec4-navigation-panel-icon--variant_default:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.likec4-navigation-panel-icon--variant_filled{background-color:var(--colors-likec4-panel-action-bg)}.likec4-navigation-panel-icon--variant_filled:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.likec4-navigation-panel-icon--type_warning{color:var(--colors-likec4-panel-action-warning)}.likec4-navigation-panel-icon--type_warning:is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-warning-hover)}.action-btn--size_md{--ai-size: var(--ai-size-md)}.action-btn--radius_md{--ai-radius: var(--mantine-radius-md)}.action-btn--variant_transparent{--actionbtn-bg-hovered: var(--actionbtn-bg-idle)}.action-btn--variant_filled{box-shadow:1px 1px 3px 0 transparent}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .action-btn--variant_filled{box-shadow:1px 1px 3px #0003}.likec4-root:is([data-likec4-reduced-graphics]) .action-btn--variant_filled{box-shadow:var(--shadows-none)}.action-btn--size_sm{--ai-size: var(--ai-size-sm)}.action-btn--radius_sm{--ai-radius: var(--mantine-radius-sm)}.likec4-compound-node--borderStyle_dashed{border-style:dashed}.likec4-compound-node--borderStyle_none{--_indicator-spacing: calc(var(--_border-width) * 2);border-color:var(--colors-transparent)!important;background-clip:border-box!important;-webkit-background-clip:border-box!important}.likec4-compound-node--isTransparent_false{border-color:var(--likec4-palette-stroke);background-color:var(--likec4-palette-fill)}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-compound-node--isTransparent_false{box-shadow:0 4px 10px .5px #0000001a,0 2px 2px -1px #0006}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-compound-node--isTransparent_false{box-shadow:var(--shadows-none)}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-compound-node--isTransparent_false{box-shadow:var(--shadows-none)!important}.likec4-compound-node--isTransparent_true{border-color:color-mix(in oklab,var(--likec4-palette-stroke) var(--_border-transparency),transparent);background-color:color-mix(in oklab,var(--likec4-palette-fill) var(--_compound-transparency),transparent)}.likec4-compound-node--inverseColor_true{--_compound-color: var(--likec4-palette-stroke)}[data-mantine-color-scheme=dark] .likec4-compound-node--inverseColor_true{--_compound-color: color-mix(in oklab, var(--likec4-palette-loContrast) 60%, var(--likec4-palette-fill))}[data-mantine-color-scheme=dark] .likec4-compound-node--inverseColor_true .action-btn{--actionbtn-color-hovered-btn: var(--likec4-palette-loContrast)}[data-mantine-color-scheme=light] .likec4-compound-node--inverseColor_true .action-btn{--actionbtn-color: var(--likec4-palette-stroke);--actionbtn-color-hovered: var(--likec4-palette-stroke);--actionbtn-color-hovered-btn: var(--likec4-palette-hiContrast);--actionbtn-bg-hovered: var(--likec4-palette-fill)/50;--actionbtn-bg-hovered-btn: var(--likec4-palette-fill)}.likec4-compound-node--borderStyle_solid{border-style:solid}.likec4-compound-node--borderStyle_dotted{border-style:dotted}.likec4-element-shape--shapetype_html{border-radius:6px;transition:background-color .12s linear,box-shadow .13s var(--easings-in-out);background-color:var(--likec4-palette-fill);box-shadow:0 2px 1px #00000036,0 1px 1px color-mix(in oklab,var(--likec4-palette-stroke) 40%,transparent),0 5px 3px #0000001a;transition-delay:0ms}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_html{transition:none}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_html{box-shadow:#26394df2 0 20px 30px -10px}[data-mantine-color-scheme=dark] :where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_html{box-shadow:#0a0b10e5 0 20px 30px -10px}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_html{box-shadow:var(--shadows-none)}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_html{box-shadow:var(--shadows-none)}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_html{box-shadow:var(--shadows-none)}.likec4-element-shape--shapetype_html .likec4-shape-multiple{border-radius:6px;transition:all var(--durations-fast) var(--easings-in-out);position:absolute;content:" ";background-color:var(--likec4-palette-fill);z-index:var(--z-index--1);filter:brightness(.5)!important;visibility:visible;top:16px;left:16px;width:calc(100% - 6px);height:calc(100% - 6px)}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_html .likec4-shape-multiple{transform:translate(-14px,-14px)}.likec4-element-shape--shapetype_html .likec4-shape-outline{border-style:solid;border-width:var(--likec4-outline-size);border-radius:11px;border-color:var(--likec4-palette-outline);position:absolute;content:" ";animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorOpacity;top:calc(-1 * var(--likec4-outline-size) - 1px);left:calc(-1 * var(--likec4-outline-size) - 1px);width:calc(100% + 2 * var(--likec4-outline-size) + 2px);height:calc(100% + 2 * var(--likec4-outline-size) + 2px)}.likec4-element-shape--shapetype_svg{transition:fill .12s linear,filter .13s var(--easings-in-out);fill:var(--likec4-palette-fill);stroke:var(--likec4-palette-stroke);transition-delay:0ms;filter:drop-shadow(0 2px 1px rgba(0,0,0,.21)) drop-shadow(0 1px 1px color-mix(in oklab,var(--likec4-palette-stroke) 40%,transparent)) drop-shadow(0 5px 3px rgba(0,0,0,.1))}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_svg{filter:drop-shadow(0 2px 1px rgba(0,0,0,.12)) drop-shadow(0px 4px 2px rgba(0,0,0,.12)) drop-shadow(0px 8px 4px rgba(0,0,0,.12)) drop-shadow(0px 16px 8px rgba(0,0,0,.1)) drop-shadow(0px 32px 16px rgba(0,0,0,.09))}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_svg{filter:none}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_svg{filter:none}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_svg{filter:none}.likec4-element-shape--shapetype_svg [data-likec4-fill=fill]{fill:var(--likec4-palette-fill)}.likec4-element-shape--shapetype_svg [data-likec4-fill=stroke]{fill:var(--likec4-palette-stroke)}.likec4-element-shape--shapetype_svg [data-likec4-fill=mix-stroke]{fill:color-mix(in oklab,var(--likec4-palette-stroke) 90%,var(--likec4-palette-fill))}.likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transition:all var(--durations-fast) var(--easings-in-out);transform-origin:50% 50%;transform:translate(14px,14px) perspective(200px) translateZ(-4px);filter:brightness(.5)!important;stroke:var(--colors-none)}:where([data-likec4-shape=queue]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform-origin:75% 25%}:where([data-likec4-shape=cylinder]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform-origin:50% 100%}:where([data-likec4-shape=storage]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform-origin:50% 100%}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform:translate(2px,2px) perspective(200px) translateZ(-4px)}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}.likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]) [data-likec4-fill=mix-stroke]{fill:var(--likec4-palette-fill)}.likec4-element-shape--shapetype_svg .likec4-shape-outline{stroke:var(--likec4-palette-outline);fill:var(--colors-none);stroke-width:3;stroke-opacity:.8;animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorOpacity}.likec4-tag--autoTextColor_false>span{color:var(--colors-likec4-tag-text)}.likec4-tag--autoTextColor_false>span:first-child{opacity:.65}.likec4-tag--autoTextColor_true>span{background:inherit;color:var(--colors-transparent);filter:invert(1) grayscale(1) brightness(1.3) contrast(1000);background-clip:text;-webkit-background-clip:text;mix-blend-mode:plus-lighter}.hover\\:likec4-tag--autoTextColor_true:is(:hover,[data-hover])>span{background:inherit;color:var(--colors-transparent);filter:invert(1) grayscale(1) brightness(1.3) contrast(1000);background-clip:text;-webkit-background-clip:text;mix-blend-mode:plus-lighter}.hover\\:likec4-tag--autoTextColor_false:is(:hover,[data-hover])>span{color:var(--colors-likec4-tag-text)}.hover\\:likec4-tag--autoTextColor_false:is(:hover,[data-hover])>span:first-child{opacity:.65}@media screen and (min-width:48rem){.likec4-overlay--fullscreen_false{--_border-radius: 6px;--_offset: 1rem;inset:var(--_inset) var(--_inset) var(--_offset) var(--_inset);padding:var(--spacing-1\\.5);border-radius:calc(var(--_border-radius) - 2px);width:calc(100vw - 2 * var(--_inset));height:calc(100vh - var(--_offset) - var(--_inset))}}@media screen and (min-width:62rem){.likec4-overlay--fullscreen_false{--_offset: 1rem}}@media screen and (min-width:75rem){.likec4-overlay--fullscreen_false{--_offset: 2rem}}@media screen and (min-width:88rem){.likec4-overlay--fullscreen_false{--_offset: 4rem}}@media print{.likec4-markdown-block--uselikec4palette_true :where(a){mix-blend-mode:normal!important}}@media print{.likec4-tag--autoTextColor_true>span{mix-blend-mode:normal!important}}@media print{.hover\\:likec4-tag--autoTextColor_true:is(:hover,[data-hover])>span{mix-blend-mode:normal!important}}}@layer recipes.slots{@layer _base{.likec4-navlink__root{border-radius:var(--radii-sm);padding-inline:var(--spacing-xs);padding-block:var(--spacing-xxs)}.likec4-navlink__root:is(:hover,[data-hover]):not([data-active]){background-color:var(--colors-mantine-colors-gray\\[1\\])}[data-mantine-color-scheme=dark] .likec4-navlink__root:is(:hover,[data-hover]):not([data-active]){background-color:var(--colors-mantine-colors-dark\\[5\\])}.likec4-navlink__body{gap:var(--spacing-0\\.5);display:flex;flex-direction:column}.likec4-navlink__section:where([data-position=left]){margin-inline-end:var(--spacing-xxs)}.likec4-navlink__label{display:block;font-size:var(--font-sizes-sm);font-weight:500;line-height:1.2}.likec4-navlink__description{display:block;font-size:var(--font-sizes-xxs);line-height:1.2}.likec4-edge__path{fill:var(--colors-none);stroke-dashoffset:0}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge__path{transition:stroke .13s ease-out,stroke-width .13s ease-out;animation-duration:.8s;animation-iteration-count:infinite;animation-timing-function:linear;animation-fill-mode:both;animation-name:xyedgeAnimated;animation-play-state:paused}:where([data-edge-dir=back]) .likec4-edge__path{animation-direction:reverse}:where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed]) .likec4-edge__path{animation-play-state:paused}:where([data-likec4-zoom-small=true]) .likec4-edge__path{animation-name:none}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-edge__path{stroke-dasharray:none!important;animation-play-state:paused}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-edge__path{animation-play-state:running;animation-delay:.45s}.likec4-root:not([data-likec4-reduced-graphics]) :where(.selected,[data-edge-active=true],[data-edge-animated=true]) .likec4-edge__path{animation-play-state:running;animation-delay:0ms}.likec4-edge__pathBg{pointer-events:none;fill:var(--colors-none);stroke-width:calc(var(--xy-edge-stroke-width) + 2);stroke-opacity:.08}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge__pathBg{--transition-prop: stroke-width, stroke-opacity;transition-property:stroke-width,stroke-opacity;--transition-duration: var(--durations-fast);transition-duration:var(--durations-fast);--transition-easing: var(--easings-in-out);transition-timing-function:var(--easings-in-out)}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-edge__pathBg{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out);stroke-width:calc(var(--xy-edge-stroke-width) + 4);stroke-opacity:.2}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-edge__pathBg{stroke-width:calc(var(--xy-edge-stroke-width) + 6);stroke-opacity:.25}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) :where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-edge__pathBg{stroke-opacity:.4}.likec4-edge__markersCtx{fill:var(--xy-edge-stroke);stroke:var(--xy-edge-stroke)}.likec4-edge__middlePoint{visibility:hidden;offset-distance:50%;cx:0;cy:0;r:4px;pointer-events:none}}.likec4-navlink__label--truncateLabel_true,.likec4-navlink__description--truncateLabel_true{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:var(--sizes-100\\%)}}@layer utilities{@layer compositions{.layerStyle_likec4\\.panel{padding:var(--spacing-1);border:1px solid var(--colors-likec4-panel-border);border-radius:var(--radii-0);background-color:var(--colors-likec4-panel-bg)}.layerStyle_likec4\\.dropdown{padding:var(--spacing-2);border:1px solid var(--colors-likec4-dropdown-border);border-radius:var(--radii-md);background-color:var(--colors-likec4-dropdown-bg);box-shadow:var(--shadows-lg)}.layerStyle_likec4\\.tag{border:var(--borders-none);border-radius:3px;color:var(--colors-likec4-tag-text);background-color:var(--colors-likec4-tag-bg)}.layerStyle_likec4\\.tag:is(:hover,[data-hover]){background-color:var(--colors-likec4-tag-bg-hover)}.textStyle_xs{font-size:.75rem;line-height:1rem}.layerStyle_likec4\\.panel\\.action{border:var(--borders-transparent);padding-inline:var(--spacing-xxs);padding-block:var(--spacing-xxs);border-radius:var(--radii-sm);color:var(--colors-likec4-panel-action);cursor:pointer}.layerStyle_likec4\\.panel\\.action:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){color:var(--colors-likec4-panel-action-disabled);cursor:not-allowed}.layerStyle_likec4\\.panel\\.action:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover);background-color:var(--colors-likec4-panel-action-bg-hover)}.layerStyle_likec4\\.panel\\.action\\.filled{border:var(--borders-transparent);padding-inline:var(--spacing-xxs);padding-block:var(--spacing-xxs);border-radius:var(--radii-sm);color:var(--colors-likec4-panel-action);cursor:pointer;background-color:var(--colors-likec4-panel-action-bg)}.layerStyle_likec4\\.panel\\.action\\.filled:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){color:var(--colors-likec4-panel-action-disabled);cursor:not-allowed;background-color:var(--colors-likec4-panel-action-bg)}.layerStyle_likec4\\.panel\\.action\\.filled:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover);background-color:var(--colors-likec4-panel-action-bg-hover)}@container (min-width: 40rem){.layerStyle_likec4\\.panel{border-radius:var(--radii-md);padding-inline:var(--spacing-2);box-shadow:var(--shadows-lg)}}}.--mantine-cursor-pointer_pointer{--mantine-cursor-pointer: pointer}.--thickness_1px{--thickness: 1px}.--bleed-x_token\\(spacing\\.2\\,_2\\){--bleed-x: var(--spacing-2, 2)}.--bleed-y_token\\(spacing\\.2\\,_2\\){--bleed-y: var(--spacing-2, 2)}.--text-fz_\\{fontSizes\\.sm\\}{--text-fz: var(--font-sizes-sm)}.--view-title-color_\\{colors\\.mantine\\.colors\\.dark\\[1\\]\\}{--view-title-color: var(--colors-mantine-colors-dark\\[1\\])}.--likec4-icon-size_24px{--likec4-icon-size: 24px}.--ti-size_var\\(--likec4-icon-size\\,_24px\\){--ti-size: var(--likec4-icon-size, 24px)}.--_color_var\\(--likec4-palette-stroke\\){--_color: var(--likec4-palette-stroke)}.--ai-radius_0px{--ai-radius: 0px}.--badge-radius_2px{--badge-radius: 2px}.--badge-fz_9\\.5px{--badge-fz: 9.5px}.--badge-padding-x_3px{--badge-padding-x: 3px}.--badge-height_13\\.5px{--badge-height: 13.5px}.--badge-lh_1{--badge-lh: 1}.--badge-bg_var\\(--likec4-palette-fill\\){--badge-bg: var(--likec4-palette-fill)}.--badge-color_var\\(--likec4-palette-hiContrast\\){--badge-color: var(--likec4-palette-hiContrast)}.bg_dots{background:dots}.bg_transparent{background:var(--colors-transparent)}.m_0{margin:var(--spacing-0)}.p_0{padding:var(--spacing-0)}.bg_likec4\\.overlay\\.body{background:var(--colors-likec4-overlay-body)}.p_xl{padding:var(--spacing-xl)}.bd_1px_solid{border:1px solid}.bg_mantine\\.colors\\.default{background:var(--colors-mantine-colors-default)}.p_\\[4px_7px\\]{padding:4px 7px}.bg_\\[transparent\\]{background:var(--colors-transparent)}.p_1{padding:var(--spacing-1)}.p_4{padding:var(--spacing-4)}.bg_white{background:#fff}.bd_default{border:var(--borders-default)}.p_0\\.5{padding:var(--spacing-0\\.5)}.m_xs{margin:var(--spacing-xs)}.p_md{padding:var(--spacing-md)}.p_1\\.5{padding:var(--spacing-1\\.5)}.p_8{padding:var(--spacing-8)}.p_xxs{padding:var(--spacing-xxs)}.p_\\[4px_6px\\]{padding:4px 6px}.bg_mantine\\.colors\\.gray\\[2\\]{background:var(--colors-mantine-colors-gray\\[2\\])}.bg_mantine\\.colors\\.gray\\[3\\]{background:var(--colors-mantine-colors-gray\\[3\\])}.bd_2px_solid{border:2px solid}.inset_0{inset:var(--spacing-0)}.bd_transparent{border:var(--borders-transparent)}.bd_none{border:var(--borders-none)}.bg_\\[_linear-gradient\\(180deg\\,_color-mix\\(in_oklab\\,_var\\(--likec4-palette-fill\\)_60\\%\\,_transparent\\)\\,_color-mix\\(in_oklab\\,_var\\(--likec4-palette-fill\\)_20\\%\\,_transparent\\)_8px\\,_color-mix\\(in_oklab\\,_var\\(--likec4-palette-fill\\)_14\\%\\,_transparent\\)_20px\\,_transparent_80px_\\)\\,_linear-gradient\\(180deg\\,_var\\(--likec4-palette-fill\\)\\,_var\\(--likec4-palette-fill\\)_4px\\,_transparent_4px\\)\\,_\\{colors\\.likec4\\.overlay\\.body\\}_\\]{background:linear-gradient(180deg,color-mix(in oklab,var(--likec4-palette-fill) 60%,transparent),color-mix(in oklab,var(--likec4-palette-fill) 20%,transparent) 8px,color-mix(in oklab,var(--likec4-palette-fill) 14%,transparent) 20px,transparent 80px),linear-gradient(180deg,var(--likec4-palette-fill),var(--likec4-palette-fill) 4px,transparent 4px),var(--colors-likec4-overlay-body)}.bg_mantine\\.colors\\.body{background:var(--colors-mantine-colors-body)}.p_\\[10px_8px\\]{padding:10px 8px}.bd_1px_dashed{border:1px dashed}.bg_mantine\\.colors\\.gray\\[1\\]{background:var(--colors-mantine-colors-gray\\[1\\])}.p_\\[6px_8px\\]{padding:6px 8px}.bd_3\\.5px_solid{border:3.5px solid}.p_xs{padding:var(--spacing-xs)}.p_\\[4px_8px\\]{padding:4px 8px}.p_\\[1px_4px\\]{padding:1px 4px}.p_\\[3px_6px\\]{padding:3px 6px}.bg_var\\(--likec4-palette-fill\\)\\/75{--mix-background: color-mix(in srgb, var(--likec4-palette-fill) 75%, transparent);background:var(--mix-background, var(--likec4-palette-fill))}.bd_1px_solid_\\{colors\\.mantine\\.colors\\.defaultBorder\\}{border:1px solid var(--colors-mantine-colors-default-border)}.p_\\[1px_5px\\]{padding:1px 5px}.bg_mantine\\.colors\\.dark\\[7\\]{background:var(--colors-mantine-colors-dark\\[7\\])}.p_\\[6px_2px_0_2px\\]{padding:6px 2px 0}.p_\\[0_4px_5px_4px\\]{padding:0 4px 5px}.bg_mantine\\.colors\\.dark\\[9\\]\\/30{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[9\\]) 30%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[9\\]))}.bg_mantine\\.colors\\.primary\\[8\\]{background:var(--colors-mantine-colors-primary\\[8\\])}.p_\\[12px_8px_12px_14px\\]{padding:12px 8px 12px 14px}.bd_2px_dashed{border:2px dashed}.p_2{padding:var(--spacing-2)}.bd_3px_dashed{border:3px dashed}.gap_20{gap:20px}.bdr_sm{border-radius:var(--radii-sm)}.bd-w_3{border-width:3px}.bd-c_likec4\\.overlay\\.border{border-color:var(--colors-likec4-overlay-border)}.ring_none{outline:var(--borders-none)}.gap_lg{gap:var(--spacing-lg)}.gap_md{gap:var(--spacing-md)}.gap_sm{gap:var(--spacing-sm)}.flex_1{flex:1 1 0%}.transition_fast{transition:all var(--durations-fast) var(--easings-in-out)}.td_none{text-decoration:none}.bd-c_mantine\\.colors\\.defaultBorder{border-color:var(--colors-mantine-colors-default-border)}.gap_xs{gap:var(--spacing-xs)}.gap_xxs{gap:var(--spacing-xxs)}.gap_1{gap:var(--spacing-1)}.ov_hidden{overflow:hidden}.gap_0\\.5{gap:var(--spacing-0\\.5)}.gap_\\[4px\\]{gap:4px}.px_xs{padding-inline:var(--spacing-xs)}.py_xxs{padding-block:var(--spacing-xxs)}.px_sm{padding-inline:var(--spacing-sm)}.gap_8px{gap:8px}.gap_1\\.5{gap:var(--spacing-1\\.5)}.bdr_\\[4px\\]{border-radius:4px}.px_1\\.5{padding-inline:var(--spacing-1\\.5)}.gap_3{gap:var(--spacing-3)}.mx_calc\\(var\\(--bleed-x\\,_0\\)_\\*_-1\\){margin-inline:calc(var(--bleed-x, 0) * -1)}.my_calc\\(var\\(--bleed-y\\,_0\\)_\\*_-1\\){margin-block:calc(var(--bleed-y, 0) * -1)}.py_2\\.5{padding-block:var(--spacing-2\\.5)}.px_2{padding-inline:var(--spacing-2)}.gap_2{gap:var(--spacing-2)}.offset_2{offset:2px}.offset_10{offset:10px}.py_1\\.5{padding-block:var(--spacing-1\\.5)}.bd-l_2px_dotted{border-left:2px dotted}.px_1{padding-inline:var(--spacing-1)}.py_0\\.5{padding-block:var(--spacing-0\\.5)}.bdr_\\[2px\\]{border-radius:2px}.bd-w_4{border-width:4px}.px_4{padding-inline:var(--spacing-4)}.py_1{padding-block:var(--spacing-1)}.gap_\\[1px\\]{gap:1px}.ov_auto{overflow:auto}.ovs-b_contain{overscroll-behavior:contain}.ov_visible{overflow:visible}.px_xxs{padding-inline:var(--spacing-xxs)}.my_10{margin-block:var(--spacing-10)}.flex_1_1_40\\%{flex:1 1 40%}.bd-c_mantine\\.colors\\.gray\\[4\\]{border-color:var(--colors-mantine-colors-gray\\[4\\])}.bd-c_mantine\\.colors\\.gray\\[5\\]{border-color:var(--colors-mantine-colors-gray\\[5\\])}.bdr_3{border-radius:3px}.bd-c_mantine\\.colors\\.orange\\[6\\]{border-color:var(--colors-mantine-colors-orange\\[6\\])}.tw_pretty{text-wrap:pretty}.flex_0{flex:0}.flex_0_0_40px{flex:0 0 40px}.gap_\\[24px_20px\\]{gap:24px 20px}.bd-c_mantine\\.colors\\.dark\\[3\\]{border-color:var(--colors-mantine-colors-dark\\[3\\])}.bd-t_none{border-top:var(--borders-none)}.bd-l_none{border-left:var(--borders-none)}.bdr_2px{border-radius:2px}.gap_4{gap:var(--spacing-4)}.gap_6{gap:var(--spacing-6)}.gap_\\[12px_16px\\]{gap:12px 16px}.bd-c_mantine\\.colors\\.gray\\[3\\]{border-color:var(--colors-mantine-colors-gray\\[3\\])}.flex_0_1_auto{flex:0 1 auto}.transition_all_150ms_ease{transition:all .15s ease}.bdr_xs{border-radius:var(--radii-xs)}.flex_1_1_100\\%{flex:1 1 100%}.offset_0{offset:0}.py_4{padding-block:var(--spacing-4)}.gap_8{gap:var(--spacing-8)}.px_md{padding-inline:var(--spacing-md)}.py_xs{padding-block:var(--spacing-xs)}.grid-c_1{grid-column:1}.grid-c_2{grid-column:2}.grid-c_3{grid-column:3}.bd-b_1px_solid{border-bottom:1px solid}.gap_0{gap:var(--spacing-0)}.gap_\\[10px_12px\\]{gap:10px 12px}.py_3{padding-block:var(--spacing-3)}.offset_4{offset:4px}.flex_1_0_auto{flex:1 0 auto}.ring_none\\!{outline:var(--borders-none)!important}.bdr_4px{border-radius:4px}.mx_auto{margin-inline:auto}.py_md{padding-block:var(--spacing-md)}.bd-c_mantine\\.colors\\.primary\\[9\\]{border-color:var(--colors-mantine-colors-primary\\[9\\])}.flex_0_0_var\\(--likec4-icon-size\\,_24px\\){flex:0 0 var(--likec4-icon-size, 24px)}.bdr_md{border-radius:var(--radii-md)}.py_xl{padding-block:var(--spacing-xl)}.bd-w_1{border-width:1px}.bd-c_\\[var\\(--_color\\)\\/30\\]{--mix-borderColor: color-mix(in srgb, var(--_color) 30%, transparent);border-color:var(--mix-borderColor, var(--_color))}.transition_all_100ms_ease-in{transition:all .1s ease-in}.transition_all_150ms_ease-in-out{transition:all .15s ease-in-out}.py_sm{padding-block:var(--spacing-sm)}.flex_0_0_auto{flex:0 0 auto}.flex_0_0_70px{flex:0 0 70px}.bd-w_3px{border-width:3px}.border-style_dashed{border-style:dashed}.px_3{padding-inline:var(--spacing-3)}.px_5{padding-inline:var(--spacing-5)}.gap_6px{gap:6px}.px_4px{padding-inline:4px}.cursor_pointer{cursor:pointer}.pos_absolute{position:absolute}.z_999{z-index:999}.c_gray{color:gray}.pos_fixed{position:fixed}.bx-sh_xl{box-shadow:var(--shadows-xl)}.d_flex{display:flex}.ai_flex-start{align-items:flex-start}.flex-d_row{flex-direction:row}.flex-wrap_nowrap{flex-wrap:nowrap}.ai_center{align-items:center}.c_red{color:red}.ai_stretch{align-items:stretch}.flex-d_column{flex-direction:column}.c_teal{color:teal}.op_1{opacity:1}.op_0\\.45{opacity:.45}.us_all{-webkit-user-select:all;user-select:all}.bg-c_transparent{background-color:var(--colors-transparent)}.stk_2\\.5{stroke:2.5px}.op_0\\.7{opacity:.7}.fill_\\[\\#FCFBF7\\]{fill:#fcfbf7}.bx-sh_xs{box-shadow:var(--shadows-xs)}.fs_sm{font-size:var(--font-sizes-sm)}.fw_500{font-weight:500}.c_mantine\\.colors\\.placeholder{color:var(--colors-mantine-colors-placeholder)}.fs_11px{font-size:11px}.fw_600{font-weight:600}.lh_1{line-height:var(--line-heights-1)}.stk_2{stroke:2px}.pointer-events_none{pointer-events:none}.main-axis_4{main-axis:4px}.pos_bottom-start{position:bottom-start}.pos_relative{position:relative}.pointer-events_all{pointer-events:all}.us_none{-webkit-user-select:none;user-select:none}.d_none{display:none}.flex-sh_1{flex-shrink:1}.flex-g_1{flex-grow:1}.flex-g_0{flex-grow:0}.op_0\\.3{opacity:.3}.bg-c_mantine\\.colors\\.gray\\[1\\]{background-color:var(--colors-mantine-colors-gray\\[1\\])}.stk_1\\.5{stroke:1.5px}.bd-e-w_var\\(--thickness\\){border-inline-end-width:var(--thickness)}.c_mantine\\.colors\\.gray\\[5\\]{color:var(--colors-mantine-colors-gray\\[5\\])}.bg-c_likec4\\.panel\\.action\\.warning\\.bg{background-color:var(--colors-likec4-panel-action-warning-bg)}.c_likec4\\.panel\\.action{color:var(--colors-likec4-panel-action)}.trunc_true{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.c_likec4\\.panel\\.text\\.dimmed{color:var(--colors-likec4-panel-text-dimmed)}.bg-c_\\[rgb\\(34_34_34_\\/_var\\(--_opacity\\,_95\\%\\)\\)\\]{background-color:rgb(34 34 34 / var(--_opacity, 95%))}.bkdp_auto{backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, );-webkit-backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, )}.bkdp-blur_var\\(--_blur\\,_10px\\){--backdrop-blur: blur(var(--_blur, 10px))}.jc_stretch{justify-content:stretch}.cq-n_likec4-search-elements{container-name:likec4-search-elements}.cq-t_size{container-type:size}.d_contents{display:contents}.d_grid{display:grid}.order_6{order:6}.stk_1\\.8{stroke:1.8px}.trunc_end{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trs-dur_normal{--transition-duration: var(--durations-normal);transition-duration:var(--durations-normal)}.trs-dly_0\\.2s{transition-delay:.2s}.fill_none{fill:var(--colors-none)}.jc_center{justify-content:center}.z_1{z-index:var(--z-index-1)}.ai_flex-end{align-items:flex-end}.justify-items_stretch{justify-items:stretch}.fs_lg{font-size:var(--font-sizes-lg)}.ai_baseline{align-items:baseline}.flex-wrap_wrap{flex-wrap:wrap}.translate_auto{translate:var(--translate-x) var(--translate-y)}.translate-x_\\[-8px\\]{--translate-x: -8px}.bd-be-w_var\\(--thickness\\){border-block-end-width:var(--thickness)}.cursor_default{cursor:default}.c_orange{color:orange}.pos_top-start{position:top-start}.pos_right{position:right}.op_0\\.65{opacity:.65}.d_inline-flex{display:inline-flex}.op_0\\.5{opacity:.5}.d_block{display:block}.fs_xxs{font-size:var(--font-sizes-xxs)}.lh_sm{line-height:var(--line-heights-sm)}.c_mantine\\.colors\\.dimmed{color:var(--colors-mantine-colors-dimmed)}.white-space_nowrap{white-space:nowrap}.white-space-collapse_preserve-breaks{white-space-collapse:preserve-breaks}.fs_xs{font-size:var(--font-sizes-xs)}.fw_medium{font-weight:var(--font-weights-medium)}.trf_translateY\\(-4px\\){transform:translateY(-4px)}.c_mantine\\.colors\\.gray\\[9\\]{color:var(--colors-mantine-colors-gray\\[9\\])}.bx-sh_lg{box-shadow:var(--shadows-lg)}.pos_right-start{position:right-start}.stk_1\\.7{stroke:1.7px}.c_likec4\\.panel\\.text{color:var(--colors-likec4-panel-text)}.c_green{color:green}.pos_bottom-end{position:bottom-end}.op_0\\.8{opacity:.8}.me_0\\.5{margin-inline-end:var(--spacing-0\\.5)}.cross-axis_-22{cross-axis:-22px}.bg-c_none{background-color:var(--colors-none)}.fw_400{font-weight:400}.bx-sh_md{box-shadow:var(--shadows-md)}.main-axis_2{main-axis:2px}.lh_1\\.1{line-height:1.1}.main-axis_10{main-axis:10px}.op_0\\.6{opacity:.6}.pos_top{position:top}.main-axis_12{main-axis:12px}.ta_center{text-align:center}.bx-sh_inset_1px_1px_3px_0px_\\#00000024{box-shadow:inset 1px 1px 3px #00000024}.trf_translate\\(-50\\%\\,_-50\\%\\){transform:translate(-50%,-50%)}.flex-sh_0{flex-shrink:0}.ms_0{margin-inline-start:var(--spacing-0)}.z_9{z-index:9}.ta_left{text-align:left}.lh_1\\.25{line-height:1.25}.bx-s_border-box{box-sizing:border-box}.c_mantine\\.colors\\.text{color:var(--colors-mantine-colors-text)}.cursor_move{cursor:move}.ff_likec4\\.element{font-family:var(--fonts-likec4-element)}.font-optical-sizing_auto{font-optical-sizing:auto}.font-style_normal{font-style:normal}.fs_24px{font-size:24px}.lh_xs{line-height:var(--line-heights-xs)}.as_flex-start{align-self:flex-start}.c_\\[var\\(--view-title-color\\,_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}\\)\\]{color:var(--view-title-color, var(--colors-mantine-colors-gray\\[7\\]))}.fs_15px{font-size:15px}.lh_1\\.4{line-height:1.4}.c_mantine\\.colors\\.gray\\[7\\]{color:var(--colors-mantine-colors-gray\\[7\\])}.grid-tc_min-content_1fr{grid-template-columns:min-content 1fr}.grid-ar_min-content_max-content{grid-auto-rows:min-content max-content}.justify-self_end{justify-self:end}.ta_right{text-align:right}.cursor_se-resize{cursor:se-resize}.ai_start{align-items:start}.jc_space-between{justify-content:space-between}.stk_1\\.6{stroke:1.6px}.grid-ar_min-content{grid-auto-rows:min-content}.white-space_pre-wrap{white-space:pre-wrap}.tov_unset{text-overflow:unset}.tov_ellipsis{text-overflow:ellipsis}.wb_break-word{word-break:break-word}.wb_normal{word-break:normal}.bg-c_mantine\\.colors\\.white{background-color:var(--colors-mantine-colors-white)}.jc_flex-end{justify-content:flex-end}.c_mantine\\.colors\\.gray\\[6\\]{color:var(--colors-mantine-colors-gray\\[6\\])}.fw_700{font-weight:700}.justify-self_stretch{justify-self:stretch}.as_start{align-self:start}.ps_\\[16px\\]{padding-inline-start:16px}.pe_2\\.5{padding-inline-end:var(--spacing-2\\.5)}.stk_1\\.2{stroke:1.2px}.d_inline-block{display:inline-block}.lh_1\\.2{line-height:1.2}.c_var\\(--likec4-palette-hiContrast\\){color:var(--likec4-palette-hiContrast)}.fs_xl{font-size:var(--font-sizes-xl)}.c_mantine\\.colors\\.defaultColor{color:var(--colors-mantine-colors-default-color)}.bx-sh_none{box-shadow:var(--shadows-none)}.pos_top-right{position:top-right}.pos_top-left{position:top-left}.grid-cs_1{grid-column-start:1}.grid-ce_4{grid-column-end:4}.grid-tc_1fr_30px_1fr{grid-template-columns:1fr 30px 1fr}.justify-items_start{justify-items:start}.c_dark{color:dark}.stk_3\\.5{stroke:3.5px}.cq-n_likec4-tree{container-name:likec4-tree}.cq-t_inline-size{container-type:inline-size}.fs_10px{font-size:10px}.lh_1\\.3{line-height:1.3}.order_2{order:2}.grayscale_0\\.9{--grayscale: grayscale(.9)}.filter_auto{filter:var(--blur, ) var(--brightness, ) var(--contrast, ) var(--grayscale, ) var(--hue-rotate, ) var(--invert, ) var(--saturate, ) var(--sepia, ) var(--drop-shadow, )}.cross-axis_50{cross-axis:50px}.sr_true{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fs_13px{font-size:13px}.fs_16px{font-size:16px}.c_mantine\\.colors\\.dark\\[1\\]{color:var(--colors-mantine-colors-dark\\[1\\])}.fs_12px{font-size:12px}.fs_md{font-size:var(--font-sizes-md)}.bg-c_\\[rgb\\(34_34_34_\\/_0\\.7\\)\\]{background-color:#222222b3}.z_902{z-index:902}.bkdp-blur_10px{--backdrop-blur: blur(10px)}.trf_translateX\\(-50\\%\\){transform:translate(-50%)}.z_903{z-index:903}.stk_likec4\\.compare\\.manual\\.outline{stroke:var(--colors-likec4-compare-manual-outline)}.stk-w_8px{stroke-width:8px}.stk-op_0\\.5{stroke-opacity:.5}.z_9999{z-index:9999}.fill_\\[var\\(--xy-edge-stroke\\)\\]{fill:var(--xy-edge-stroke)}.stk_transparent{stroke:var(--colors-transparent)}.fill-opacity_0\\.5{fill-opacity:.5}.stk-w_10{stroke-width:10}.r_4{r:4px}.cursor_grab{cursor:grab}.vis_hidden{visibility:hidden}.trs-dur_120ms{--transition-duration: .12s;transition-duration:.12s}.trs-prop_visibility\\,_fill\\,_fill-opacity\\,_r{--transition-prop: visibility, fill, fill-opacity, r;transition-property:visibility,fill,fill-opacity,r}.trs-tmf_inOut{--transition-easing: var(--easings-in-out);transition-timing-function:var(--easings-in-out)}.trs-dly_20ms{transition-delay:20ms}.bg-c_var\\(--likec4-palette-fill\\)\\/15{--mix-backgroundColor: color-mix(in srgb, var(--likec4-palette-fill) 15%, transparent);background-color:var(--mix-backgroundColor, var(--likec4-palette-fill))}.fw_bold{font-weight:700}.ls_\\.75px{letter-spacing:.75px}.c_\\[var\\(--_color\\)\\/75\\]{--mix-color: color-mix(in srgb, var(--_color) 75%, transparent);color:var(--mix-color, var(--_color))}.bg-c_var\\(--likec4-palette-fill\\){background-color:var(--likec4-palette-fill)}.translate-x_-1\\/2{--translate-x: -50%}.translate-y_-1\\/2{--translate-y: -50%}.ring-c_likec4\\.compare\\.manual\\.outline{outline-color:var(--colors-likec4-compare-manual-outline)}.ring-w_4px{outline-width:4px}.outline-style_dashed{outline-style:dashed}.ring-o_1\\.5{outline-offset:var(--spacing-1\\.5)}.bg-c_mantine\\.colors\\.body\\/80{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-body) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-body))}.fill_var\\(--likec4-palette-fill\\){fill:var(--likec4-palette-fill)}.stk_var\\(--likec4-palette-stroke\\){stroke:var(--likec4-palette-stroke)}.stk-w_1{stroke-width:1}.filter_drop-shadow\\(0_2px_3px_rgb\\(0_0_0_\\/_22\\%\\)\\)_drop-shadow\\(0_1px_8px_rgb\\(0_0_0_\\/_10\\%\\)\\){filter:drop-shadow(0 2px 3px rgb(0 0 0 / 22%)) drop-shadow(0 1px 8px rgb(0 0 0 / 10%))}.ls_0\\.2px{letter-spacing:.2px}.tt_lowercase{text-transform:lowercase}.op_0\\.25{opacity:.25}.stk-w_5{stroke-width:5}.pos_right-end{position:right-end}.jc_flex-start{justify-content:flex-start}.pos_left-start{position:left-start}.top_4{top:var(--spacing-4)}.right_4{right:var(--spacing-4)}.top_10{top:var(--spacing-10)}.left_10{left:var(--spacing-10)}.w_\\[calc\\(100vw_-_\\(\\{spacing\\.10\\}_\\*_2\\)\\)\\]{width:calc(100vw - (var(--spacing-10) * 2))}.h_max-content{height:max-content}.max-h_\\[calc\\(100vh_-_\\(\\{spacing\\.10\\}_\\*_3\\)\\)\\]{max-height:calc(100vh - (var(--spacing-10) * 3))}.mt_md{margin-top:var(--spacing-md)}.min-h_24{min-height:24px}.max-w_500{max-width:500px}.pr_0{padding-right:var(--spacing-0)}.h_12{height:12px}.w_12{width:12px}.h_30px{height:30px}.pl_sm{padding-left:var(--spacing-sm)}.pr_1{padding-right:var(--spacing-1)}.w_100\\%{width:var(--sizes-100\\%)}.pr_2\\.5{padding-right:var(--spacing-2\\.5)}.top_0{top:var(--spacing-0)}.left_0{left:var(--spacing-0)}.max-w_calc\\(100vw\\){max-width:100vw}.max-w_200px{max-width:200px}.max-w_calc\\(100vw_-_50px\\){max-width:calc(100vw - 50px)}.max-w_calc\\(100vw_-_250px\\){max-width:calc(100vw - 250px)}.max-h_calc\\(100vh_-_200px\\){max-height:calc(100vh - 200px)}.max-h_calc\\(100vh_-_160px\\){max-height:calc(100vh - 160px)}.h_100\\%{height:var(--sizes-100\\%)}.mb_1{margin-bottom:var(--spacing-1)}.max-h_100vh{max-height:100vh}.pt_\\[20px\\]{padding-top:20px}.pl_md{padding-left:var(--spacing-md)}.pr_md{padding-right:var(--spacing-md)}.pb_sm{padding-bottom:var(--spacing-sm)}.pr_xs{padding-right:var(--spacing-xs)}.lc_5{-webkit-line-clamp:5}.lc_5,.lc_2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.lc_2{-webkit-line-clamp:2}.lc_3{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.top_0\\.5{top:var(--spacing-0\\.5)}.right_0\\.5{right:var(--spacing-0\\.5)}.w_full{width:var(--sizes-full)}.h_full{height:var(--sizes-full)}.bottom_0{bottom:var(--spacing-0)}.max-w_50{max-width:50px}.h_5{height:5px}.w_max-content{width:max-content}.pt_2{padding-top:var(--spacing-2)}.mt_2{margin-top:var(--spacing-2)}.mt_0{margin-top:var(--spacing-0)}.w_350{width:350px}.pl_2\\.5{padding-left:var(--spacing-2\\.5)}.bd-l-c_mantine\\.colors\\.gray\\[3\\]{border-left-color:var(--colors-mantine-colors-gray\\[3\\])}.bdr-bl_sm{border-bottom-left-radius:var(--radii-sm)}.bdr-br_sm{border-bottom-right-radius:var(--radii-sm)}.pl_3{padding-left:var(--spacing-3)}.w_\\[20px\\]{width:20px}.mt_1{margin-top:var(--spacing-1)}.mb_xxs{margin-bottom:var(--spacing-xxs)}.pb_lg{padding-bottom:var(--spacing-lg)}.max-w_calc\\(100cqw_-_52px\\){max-width:calc(100cqw - 52px)}.min-w_200px{min-width:200px}.max-h_calc\\(100cqh_-_100px\\){max-height:calc(100cqh - 100px)}.mt_4{margin-top:var(--spacing-4)}.mt_xs{margin-top:var(--spacing-xs)}.h_auto{height:auto}.pt_6{padding-top:var(--spacing-6)}.mb_10{margin-bottom:var(--spacing-10)}.pt_100\\%{padding-top:100%}.left_2{left:var(--spacing-2)}.bottom_2{bottom:var(--spacing-2)}.top_md{top:var(--spacing-md)}.left_md{left:var(--spacing-md)}.w_8{width:8px}.h_8{height:8px}.mr_sm{margin-right:var(--spacing-sm)}.h_26{height:26px}.top_\\[1px\\]{top:1px}.right_\\[1px\\]{right:1px}.pt_xxs{padding-top:var(--spacing-xxs)}.max-w_calc\\(100cqw_-_32px\\){max-width:calc(100cqw - 32px)}.min-w_calc\\(100cqw_-_50px\\){min-width:calc(100cqw - 50px)}.w_100vw{width:100vw}.h_100vh{height:100vh}.max-w_100vw{max-width:100vw}.h_40px{height:40px}.w_40px{width:40px}.w_14px{width:14px}.h_14px{height:14px}.bottom_0\\.5{bottom:var(--spacing-0\\.5)}.mb_sm{margin-bottom:var(--spacing-sm)}.lc_1{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.mt_6{margin-top:var(--spacing-6)}.pt_xs{padding-top:var(--spacing-xs)}.w_300{width:300px}.min-w_0{min-width:0}.min-h_32px{min-height:32px}.max-w_min\\(200px\\,_100\\%\\){max-width:min(200px,100%)}.min-w_60px{min-width:60px}.mb_0{margin-bottom:var(--spacing-0)}.h_36px{height:36px}.min-w_24{min-width:24px}.mb_4{margin-bottom:var(--spacing-4)}.top_12{top:12px}.right_12{right:12px}.mt_sm{margin-top:var(--spacing-sm)}.ml_sm{margin-left:var(--spacing-sm)}.pl_1{padding-left:var(--spacing-1)}.bd-b-c_mantine\\.colors\\.defaultBorder{border-bottom-color:var(--colors-mantine-colors-default-border)}.max-h_70vh{max-height:70vh}.mb_2{margin-bottom:var(--spacing-2)}.max-w_8xl{max-width:8xl}.pl_\\[48px\\]{padding-left:48px}.mr_1{margin-right:var(--spacing-1)}.min-h_60px{min-height:60px}.h_var\\(--likec4-icon-size\\,_24px\\){height:var(--likec4-icon-size, 24px)}.w_var\\(--likec4-icon-size\\,_24px\\){width:var(--likec4-icon-size, 24px)}.top_\\[2rem\\]{top:2rem}.left_\\[50\\%\\]{left:50%}.max-w_600px{max-width:600px}.pl_2{padding-left:var(--spacing-2)}.pt_0\\.5{padding-top:var(--spacing-0\\.5)}.w_5px{width:5px}.top_1{top:var(--spacing-1)}.right_0{right:var(--spacing-0)}.w_min-content{width:min-content}.h_min-content{height:min-content}.min-w_200{min-width:200px}.max-w_calc\\(100vw_-_20px\\){max-width:calc(100vw - 20px)}.pt_0{padding-top:var(--spacing-0)}.pb_0{padding-bottom:var(--spacing-0)}.ml_2{margin-left:var(--spacing-2)}.h_xs{height:xs}.pb_8{padding-bottom:var(--spacing-8)}.pt_4{padding-top:var(--spacing-4)}.max-w_220px{max-width:220px}.\\[\\&_\\.action-icon\\]\\:--ai-size_2rem .action-icon{--ai-size: 2rem}[data-mantine-color-scheme=light] .light\\:--icon-color_\\{colors\\.mantine\\.colors\\.gray\\[6\\]\\}{--icon-color: var(--colors-mantine-colors-gray\\[6\\])}[data-mantine-color-scheme=light] .light\\:--view-title-color_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}{--view-title-color: var(--colors-mantine-colors-gray\\[7\\])}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:--ti-size_22px .mantine-ThemeIcon-root{--ti-size: 22px}[data-mantine-color-scheme=dark] .dark\\:--_color_\\[color-mix\\(in_oklab\\,_var\\(--likec4-palette-hiContrast\\)_40\\%\\,_var\\(--likec4-palette-fill\\)\\)\\]{--_color: color-mix(in oklab, var(--likec4-palette-hiContrast) 40%, var(--likec4-palette-fill))}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:--ai-radius_\\{radii\\.md\\}{--ai-radius: var(--radii-md)}.backdrop\\:bg_\\[color-mix\\(in_oklab\\,_\\{colors\\.likec4\\.overlay\\.backdrop\\}_60\\%\\,_transparent\\)\\]::backdrop{background:color-mix(in oklab,var(--colors-likec4-overlay-backdrop) 60%,transparent)}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.white{background:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[6\\]{background:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=light] .light\\:bg_var\\(--likec4-palette-fill\\)\\/90{--mix-background: color-mix(in srgb, var(--likec4-palette-fill) 90%, transparent);background:var(--mix-background, var(--likec4-palette-fill))}[data-mantine-color-scheme=dark] .dark\\:bg_var\\(--likec4-palette-fill\\)\\/60{--mix-background: color-mix(in srgb, var(--likec4-palette-fill) 60%, transparent);background:var(--mix-background, var(--likec4-palette-fill))}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[5\\]{background:var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[7\\]{background:var(--colors-mantine-colors-dark\\[7\\])}.\\[\\&\\[data-active\\]\\]\\:bg_mantine\\.colors\\.white[data-active]{background:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.gray\\[1\\]{background:var(--colors-mantine-colors-gray\\[1\\])}.\\[\\&\\[data-missing\\]\\]\\:bg_mantine\\.colors\\.orange\\[8\\]\\/15[data-missing]{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-orange\\[8\\]) 15%, transparent);background:var(--mix-background, var(--colors-mantine-colors-orange\\[8\\]))}.\\[\\&\\[data-missing\\]\\]\\:bg_mantine\\.colors\\.orange\\[8\\]\\/20[data-missing]{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-orange\\[8\\]) 20%, transparent);background:var(--mix-background, var(--colors-mantine-colors-orange\\[8\\]))}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.gray\\[3\\]\\/20{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[3\\]) 20%, transparent);background:var(--mix-background, var(--colors-mantine-colors-gray\\[3\\]))}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[6\\]\\/80{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[6\\]) 80%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[6\\]))}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.white\\/80{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-white) 80%, transparent);background:var(--mix-background, var(--colors-mantine-colors-white))}[data-mantine-color-scheme=light] .light\\:bd-c_mantine\\.colors\\.gray\\[4\\]{border-color:var(--colors-mantine-colors-gray\\[4\\])}[data-mantine-color-scheme=dark] .dark\\:bd-c_mantine\\.colors\\.dark\\[4\\]{border-color:var(--colors-mantine-colors-dark\\[4\\])}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:transition_none\\!{transition:none!important}[data-mantine-color-scheme=light] .light\\:bd-c_mantine\\.colors\\.gray\\[2\\]{border-color:var(--colors-mantine-colors-gray\\[2\\])}[data-mantine-color-scheme=dark] .dark\\:bd-c_mantine\\.colors\\.dark\\[7\\]{border-color:var(--colors-mantine-colors-dark\\[7\\])}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:bdr_4{border-radius:4px}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:transition_fast .mantine-ThemeIcon-root{transition:all var(--durations-fast) var(--easings-in-out)}.\\[\\&_\\>_\\*\\]\\:transition_all_130ms_\\{easings\\.inOut\\}>*{transition:all .13s var(--easings-in-out)}.\\[\\&\\[data-active\\]\\]\\:transition_none[data-active]{transition:none}.\\[\\&_\\>_\\*\\]\\:transition_fast>*,.\\[\\&_\\.tabler-icon\\]\\:transition_fast .tabler-icon{transition:all var(--durations-fast) var(--easings-in-out)}.\\[\\&\\[data-missing\\]\\]\\:bd-c_mantine\\.colors\\.orange\\[5\\]\\/20[data-missing]{--mix-borderColor: color-mix(in srgb, var(--colors-mantine-colors-orange\\[5\\]) 20%, transparent);border-color:var(--mix-borderColor, var(--colors-mantine-colors-orange\\[5\\]))}[data-mantine-color-scheme=light] .light\\:bd-c_mantine\\.colors\\.gray\\[3\\]{border-color:var(--colors-mantine-colors-gray\\[3\\])}.\\[\\&\\:last-child_\\.likec4-edge-label\\]\\:bd-b_none:last-child .likec4-edge-label{border-bottom:var(--borders-none)}.\\[\\&_\\>_\\*\\]\\:transition_all_0\\.15s_ease-in>*{transition:all .15s ease-in}[data-mantine-color-scheme=dark] .dark\\:bd-c_transparent{border-color:var(--colors-transparent)}.\\[\\&_\\:where\\(\\.likec4-diagram\\,_\\.likec4-compound-node\\,_\\.likec4-element-node\\)\\]\\:cursor_pointer :where(.likec4-diagram,.likec4-compound-node,.likec4-element-node){cursor:pointer}.backdrop\\:cursor_zoom-out::backdrop{cursor:zoom-out}.backdrop\\:bkdp_blur\\(18px\\)::backdrop{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:c_mantine\\.colors\\.dimmed:is([data-position=left]){color:var(--colors-mantine-colors-dimmed)}.\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:us_none:is([data-position=left]){-webkit-user-select:none;user-select:none}.\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:pointer-events_none:is([data-position=left]){pointer-events:none}[data-mantine-color-scheme=light] .light\\:fill_\\[\\#222221\\]{fill:#222221}.\\[\\&_\\.tabler-icon\\]\\:c_mantine\\.colors\\.text .tabler-icon{color:var(--colors-mantine-colors-text)}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:bx-sh_none\\!{box-shadow:var(--shadows-none)!important}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[7\\]{color:var(--colors-mantine-colors-gray\\[7\\])}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[0\\]{color:var(--colors-mantine-colors-dark\\[0\\])}[data-mantine-color-scheme=light] .light\\:bg-c_mantine\\.colors\\.gray\\[2\\]\\/70{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-gray\\[2\\]) 70%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-gray\\[2\\]))}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[8\\]\\/70{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[8\\]) 70%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[8\\]))}.empty\\:d_none:is(:empty,[data-empty]){display:none}.\\[\\&_\\>_mark\\]\\:bg-c_mantine\\.colors\\.yellow\\[2\\]\\/90>mark{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-yellow\\[2\\]) 90%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-yellow\\[2\\]))}[data-mantine-color-scheme=dark] .dark\\:op_0\\.5{opacity:.5}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[5\\]\\/80{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[5\\]))}.placeholder\\:c_mantine\\.colors\\.dimmed::placeholder,.placeholder\\:c_mantine\\.colors\\.dimmed[data-placeholder]{color:var(--colors-mantine-colors-dimmed)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[3\\]{color:var(--colors-mantine-colors-dark\\[3\\])}[data-mantine-color-scheme=light] .light\\:bg-c_\\[rgb\\(250_250_250_\\/_var\\(--_opacity\\,_95\\%\\)\\)\\]{background-color:rgb(250 250 250 / var(--_opacity, 95%))}:where([data-likec4-zoom-small=true]) .smallZoom\\:d_none{display:none}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:pointer-events_all{pointer-events:all}:where(.react-flow__node.selectable:not(.dragging)) .\\[\\:where\\(\\.react-flow__node\\.selectable\\:not\\(\\.dragging\\)\\)_\\&\\]\\:cursor_pointer{cursor:pointer}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:trs-dly_\\.08s{transition-delay:.08s}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:pointer-events_none{pointer-events:none}[data-mantine-color-scheme=light] .light\\:c_var\\(--likec4-palette-hiContrast\\){color:var(--likec4-palette-hiContrast)}[data-mantine-color-scheme=dark] .dark\\:c_var\\(--likec4-palette-loContrast\\){color:var(--likec4-palette-loContrast)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.gray\\[4\\]{color:var(--colors-mantine-colors-gray\\[4\\])}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[8\\]{color:var(--colors-mantine-colors-gray\\[8\\])}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[9\\]{color:var(--colors-mantine-colors-gray\\[9\\])}.\\[\\&\\:is\\(\\[data-position\\=\\"right\\"\\]\\)\\]\\:ms_1:is([data-position=right]){margin-inline-start:var(--spacing-1)}.\\[\\&_\\:where\\(button\\,_\\.action-icon\\,_\\[role\\=\\'dialog\\'\\]\\)\\]\\:pointer-events_all :where(button,.action-icon,[role=dialog]){pointer-events:all}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:bx-sh_none{box-shadow:var(--shadows-none)}.backdrop\\:bkdp_auto::backdrop{backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, );-webkit-backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, )}.backdrop\\:bkdp-blur_var\\(--_blur\\)::backdrop{--backdrop-blur: blur(var(--_blur))}.backdrop\\:bg-c_\\[rgb\\(36_36_36_\\/_var\\(--_opacity\\,_5\\%\\)\\)\\]::backdrop{background-color:rgb(36 36 36 / var(--_opacity, 5%))}.\\[\\&_\\.react-flow__attribution\\]\\:d_none .react-flow__attribution{display:none}[data-mantine-color-scheme=dark] .dark\\:mix-bm_hard-light{mix-blend-mode:hard-light}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:pointer-events_none :where(svg,img){pointer-events:none}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:filter_drop-shadow\\(0_0_3px_rgb\\(0_0_0_\\/_10\\%\\)\\)_drop-shadow\\(0_1px_8px_rgb\\(0_0_0_\\/_5\\%\\)\\)_drop-shadow\\(1px_1px_16px_rgb\\(0_0_0_\\/_2\\%\\)\\) :where(svg,img){filter:drop-shadow(0 0 3px rgb(0 0 0 / 10%)) drop-shadow(0 1px 8px rgb(0 0 0 / 5%)) drop-shadow(1px 1px 16px rgb(0 0 0 / 2%))}.\\[\\&_img\\]\\:obj-f_contain img{object-fit:contain}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:c_\\[var\\(--icon-color\\,_\\{colors\\.mantine\\.colors\\.dark\\[2\\]\\}\\)\\] .mantine-ThemeIcon-root{color:var(--icon-color, var(--colors-mantine-colors-dark\\[2\\]))}.\\[\\&\\[data-active\\]\\]\\:bx-sh_xs[data-active]{box-shadow:var(--shadows-xs)}.\\[\\&\\[data-active\\]\\]\\:c_mantine\\.colors\\.defaultColor[data-active]{color:var(--colors-mantine-colors-default-color)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[1\\]{color:var(--colors-mantine-colors-dark\\[1\\])}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[9\\]{background-color:var(--colors-mantine-colors-dark\\[9\\])}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.text{color:var(--colors-mantine-colors-text)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[2\\]{color:var(--colors-mantine-colors-dark\\[2\\])}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[6\\]{background-color:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.gray\\.lightColor{color:var(--colors-mantine-colors-gray-light-color)}.\\[\\&_\\.tabler-icon\\]\\:op_0\\.65 .tabler-icon{opacity:.65}.\\[\\&\\[data-missing\\]\\]\\:c_mantine\\.colors\\.orange\\[4\\][data-missing]{color:var(--colors-mantine-colors-orange\\[4\\])}.before\\:content_\\"scope\\:\\":before{content:"scope:"}.before\\:pos_absolute:before{position:absolute}.before\\:fs_xxs:before{font-size:var(--font-sizes-xxs)}.before\\:fw_500:before{font-weight:500}.before\\:lh_1:before{line-height:var(--line-heights-1)}.before\\:c_mantine\\.colors\\.dimmed:before{color:var(--colors-mantine-colors-dimmed)}.before\\:op_0\\.85:before{opacity:.85}.before\\:trf_translateY\\(-100\\%\\)_translateY\\(-2px\\):before{transform:translateY(-100%) translateY(-2px)}.\\[\\&\\[data-zero\\]\\]\\:c_mantine\\.colors\\.dimmed[data-zero]{color:var(--colors-mantine-colors-dimmed)}.\\[\\&_\\.mantine-Text-root\\]\\:c_mantine\\.colors\\.text\\/90 .mantine-Text-root{--mix-color: color-mix(in srgb, var(--colors-mantine-colors-text) 90%, transparent);color:var(--mix-color, var(--colors-mantine-colors-text))}.\\[\\&_\\.mantine-Text-root\\]\\:fs_xs .mantine-Text-root{font-size:var(--font-sizes-xs)}.\\[\\&_\\.mantine-Text-root\\]\\:fw_500 .mantine-Text-root{font-weight:500}.\\[\\&_\\.mantine-Text-root\\]\\:lh_1\\.2 .mantine-Text-root{line-height:1.2}.\\[\\&_\\.mantine-Text-root\\]\\:fs_xxs .mantine-Text-root{font-size:var(--font-sizes-xxs)}.\\[\\&_\\.mantine-Text-root\\]\\:fw_400 .mantine-Text-root{font-weight:400}.\\[\\&_\\.mantine-Text-root\\]\\:lh_xs .mantine-Text-root{line-height:var(--line-heights-xs)}.\\[\\&_\\.mantine-Text-root\\]\\:c_mantine\\.colors\\.dimmed .mantine-Text-root{color:var(--colors-mantine-colors-dimmed)}.\\[\\&\\[data-disabled\\]_\\.mantine-ThemeIcon-root\\]\\:op_0\\.45[data-disabled] .mantine-ThemeIcon-root{opacity:.45}:where(.likec4-view-btn[data-disabled]) .\\[\\:where\\(\\.likec4-view-btn\\[data-disabled\\]\\)_\\&\\]\\:op_0\\.85{opacity:.85}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[5\\]{color:var(--colors-mantine-colors-gray\\[5\\])}.\\[\\&_svg\\,_\\&_img\\]\\:pointer-events_none svg,.\\[\\&_svg\\,_\\&_img\\]\\:pointer-events_none img{pointer-events:none}.\\[\\&\\.likec4-shape-icon_svg\\]\\:stk-w_1\\.5.likec4-shape-icon svg{stroke-width:1.5}:where([data-disabled]) .\\[\\:where\\(\\[data-disabled\\]\\)_\\&\\]\\:op_0\\.4{opacity:.4}:where([data-disabled]) .\\[\\:where\\(\\[data-disabled\\]\\)_\\&\\]\\:op_0\\.85{opacity:.85}[data-mantine-color-scheme=light] .light\\:bg-c_\\[rgb\\(255_255_255_\\/_0\\.6\\)\\]{background-color:#fff9}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:stk-w_12px{stroke-width:12px}.\\[\\&_\\.react-flow__edge-interaction\\]\\:cursor_copy .react-flow__edge-interaction{cursor:copy}[data-mantine-color-scheme=dark] .dark\\:mix-bm_screen{mix-blend-mode:screen}[data-mantine-color-scheme=light] .light\\:mix-bm_multiply{mix-blend-mode:multiply}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:vis_visible{visibility:visible}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:fill-opacity_1{fill-opacity:1}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:trs-tmf_out{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:trs-dly_0ms{transition-delay:0ms}:where([data-likec4-selected=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\)_\\&\\]\\:r_6{r:6px}:is([data-likec4-hovered=true]) .\\[\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:r_8{r:8px}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:ring-c_likec4\\.compare\\.manual\\.outline+.likec4-element-shape{outline-color:var(--colors-likec4-compare-manual-outline)}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:ring-w_4px+.likec4-element-shape{outline-width:4px}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:outline-style_dashed+.likec4-element-shape{outline-style:dashed}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:ring-o_1\\.5+.likec4-element-shape{outline-offset:var(--spacing-1\\.5)}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[6\\]\\/80{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[6\\]) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[6\\]))}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:min-h_100\\% .mantine-ScrollArea-viewport{min-height:var(--sizes-100\\%)}:where([data-likec4-shape=browser]) .shapeBrowser\\:right_\\[5px\\]{right:5px}:where([data-likec4-shape=cylinder]) .shapeCylinder\\:top_\\[14px\\]{top:14px}:where([data-likec4-shape=storage]) .shapeStorage\\:top_\\[14px\\]{top:14px}:where([data-likec4-shape=queue]) .shapeQueue\\:top_\\[1px\\]{top:1px}:where([data-likec4-shape=queue]) .shapeQueue\\:right_3{right:var(--spacing-3)}:where([data-likec4-shape=cylinder]) .shapeCylinder\\:bottom_\\[5px\\]{bottom:5px}:where([data-likec4-shape=storage]) .shapeStorage\\:bottom_\\[5px\\]{bottom:5px}:where([data-likec4-shape=queue]) .shapeQueue\\:bottom_0{bottom:var(--spacing-0)}:where([data-likec4-shape=queue]) .shapeQueue\\:pl_\\[14px\\]{padding-left:14px}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:h_12{height:12px}[data-mantine-color-scheme=dark] .dark\\:bd-l-c_mantine\\.colors\\.dark\\[4\\]{border-left-color:var(--colors-mantine-colors-dark\\[4\\])}.\\[\\&_\\>_svg\\]\\:w_70\\%>svg{width:70%}.\\[\\&_\\>_svg\\]\\:h_70\\%>svg{height:70%}.\\[\\&_\\.tabler-icon\\]\\:w_65\\% .tabler-icon{width:65%}.\\[\\&_\\.tabler-icon\\]\\:h_65\\% .tabler-icon{height:65%}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:w_100\\% :where(svg,img){width:var(--sizes-100\\%)}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:h_auto :where(svg,img){height:auto}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:max-h_100\\% :where(svg,img){max-height:var(--sizes-100\\%)}.\\[\\&\\:not\\(\\:has\\(\\.mantine-ScrollArea-root\\)\\)\\]\\:pl_1:not(:has(.mantine-ScrollArea-root)){padding-left:var(--spacing-1)}.\\[\\&\\:not\\(\\:has\\(\\.mantine-ScrollArea-root\\)\\)\\]\\:pr_1:not(:has(.mantine-ScrollArea-root)){padding-right:var(--spacing-1)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:w_100\\% .mantine-ScrollArea-root{width:var(--sizes-100\\%)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:h_100\\% .mantine-ScrollArea-root{height:var(--sizes-100\\%)}.\\[\\&\\[data-level\\=\\'1\\'\\]\\]\\:mb_sm[data-level="1"]{margin-bottom:var(--spacing-sm)}.\\[\\&_\\.tabler-icon\\]\\:w_90\\% .tabler-icon{width:90%}.before\\:top_0:before{top:var(--spacing-0)}.before\\:left_2:before{left:var(--spacing-2)}.\\[\\&\\:last-child_\\.likec4-edge-label\\]\\:mb_0:last-child .likec4-edge-label{margin-bottom:var(--spacing-0)}.\\[\\&_svg\\,_\\&_img\\]\\:w_100\\% svg,.\\[\\&_svg\\,_\\&_img\\]\\:w_100\\% img{width:var(--sizes-100\\%)}.\\[\\&_svg\\,_\\&_img\\]\\:h_auto svg,.\\[\\&_svg\\,_\\&_img\\]\\:h_auto img{height:auto}.\\[\\&_svg\\,_\\&_img\\]\\:max-h_100\\% svg,.\\[\\&_svg\\,_\\&_img\\]\\:max-h_100\\% img{max-height:var(--sizes-100\\%)}:is(.\\[\\&_\\+_\\&\\]\\:mt_\\[32px\\])+:is(.\\[\\&_\\+_\\&\\]\\:mt_\\[32px\\]){margin-top:32px}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:w_7px{width:7px}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .whenSelected\\:w_7px{width:7px}.focusWithin\\:bg_mantine\\.colors\\.gray\\[4\\]\\/55\\!:focus-within{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[4\\]) 55%, transparent) !important;background:var(--mix-background, var(--colors-mantine-colors-gray\\[4\\]))!important}.group:focus-within .groupFocusWithin\\:op_1{opacity:1}.group:focus-within .groupFocusWithin\\:grayscale_0{--grayscale: grayscale(0)}.focus\\:bg_mantine\\.colors\\.primary\\[8\\]:is(:focus,[data-focus]){background:var(--colors-mantine-colors-primary\\[8\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:bg_mantine\\.colors\\.primary\\[8\\]{background:var(--colors-mantine-colors-primary\\[8\\])}.group:is(:focus,[data-focus]) .groupFocus\\:transition_none{transition:none}.focus\\:ring_none:is(:focus,[data-focus]){outline:var(--borders-none)}.focusVisible\\:ring_none:is(:focus-visible,[data-focus-visible]){outline:var(--borders-none)}.focus\\:bd-c_mantine\\.colors\\.primary\\[9\\]:is(:focus,[data-focus]){border-color:var(--colors-mantine-colors-primary\\[9\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:ring_none{outline:var(--borders-none)}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:bd-c_mantine\\.colors\\.primary\\[9\\]{border-color:var(--colors-mantine-colors-primary\\[9\\])}.group:is(:focus,[data-focus]) .groupFocus\\:c_\\[inherit\\]\\!{color:inherit!important}.group:is(:focus,[data-focus]) .groupFocus\\:op_0\\.5{opacity:.5}.group:is(:focus,[data-focus]) .groupFocus\\:op_0\\.8{opacity:.8}.focus\\:bg-c_mantine\\.colors\\.gray\\[2\\]:is(:focus,[data-focus]){background-color:var(--colors-mantine-colors-gray\\[2\\])}.focus\\:c_mantine\\.colors\\.primary\\.lightColor\\!:is(:focus,[data-focus]){color:var(--colors-mantine-colors-primary-light-color)!important}.focus\\:bg-c_mantine\\.colors\\.primary\\.lightHover\\!:is(:focus,[data-focus]){background-color:var(--colors-mantine-colors-primary-light-hover)!important}.group:is(:focus,[data-focus]) .groupFocus\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}.group:is(:focus,[data-focus]) .groupFocus\\:c_mantine\\.colors\\.primary\\[1\\]{color:var(--colors-mantine-colors-primary\\[1\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:c_mantine\\.colors\\.primary\\[1\\]{color:var(--colors-mantine-colors-primary\\[1\\])}.hover\\:--icon-color_\\{colors\\.mantine\\.colors\\.dark\\[1\\]\\}:is(:hover,[data-hover]){--icon-color: var(--colors-mantine-colors-dark\\[1\\])}.hover\\:--view-title-color_\\{colors\\.mantine\\.colors\\.defaultColor\\}:is(:hover,[data-hover]){--view-title-color: var(--colors-mantine-colors-default-color)}.hover\\:bg_mantine\\.colors\\.defaultHover:is(:hover,[data-hover]){background:var(--colors-mantine-colors-default-hover)}.hover\\:bg_mantine\\.colors\\.gray\\[3\\]:is(:hover,[data-hover]){background:var(--colors-mantine-colors-gray\\[3\\])}.hover\\:bg_mantine\\.colors\\.gray\\.lightHover:is(:hover,[data-hover]){background:var(--colors-mantine-colors-gray-light-hover)}.hover\\:bg_mantine\\.colors\\.primary\\[8\\]\\/60:is(:hover,[data-hover]){--mix-background: color-mix(in srgb, var(--colors-mantine-colors-primary\\[8\\]) 60%, transparent);background:var(--mix-background, var(--colors-mantine-colors-primary\\[8\\]))}.group:is(:hover,[data-hover]) .groupHover\\:bg_mantine\\.colors\\.gray\\[3\\]\\/35{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[3\\]) 35%, transparent);background:var(--mix-background, var(--colors-mantine-colors-gray\\[3\\]))}.hover\\:td_underline:is(:hover,[data-hover]){text-decoration:underline}.hover\\:bd-c_mantine\\.colors\\.defaultBorder:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-default-border)}.hover\\:bd-w_4px:is(:hover,[data-hover]){border-width:4px}.hover\\:bd-c_mantine\\.colors\\.dark\\[1\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-dark\\[1\\])}.hover\\:border-style_solid:is(:hover,[data-hover]){border-style:solid}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:transition_all_0\\.15s_ease-out:is(:hover,[data-selected=true])>*{transition:all .15s ease-out}.hover\\:ring_none:is(:hover,[data-hover]){outline:var(--borders-none)}.hover\\:bd-c_mantine\\.colors\\.primary\\[9\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-primary\\[9\\])}.hover\\:transition_all_120ms_ease-out:is(:hover,[data-hover]){transition:all .12s ease-out}.hover\\:op_1:is(:hover,[data-hover]){opacity:1}.hover\\:bg-c_mantine\\.colors\\.gray\\[1\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-gray\\[1\\])}.hover\\:bx-sh_sm:is(:hover,[data-hover]){box-shadow:var(--shadows-sm)}.group:is(:hover,[data-hover]) .groupHover\\:c_mantine\\.colors\\.dimmed{color:var(--colors-mantine-colors-dimmed)}.group:is(:hover,[data-hover]) .groupHover\\:op_0\\.5{opacity:.5}.group:is(:hover,[data-hover]) .groupHover\\:op_0\\.8{opacity:.8}.hover\\:bg-c_mantine\\.colors\\.gray\\[2\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-gray\\[2\\])}.hover\\:bg-c_likec4\\.panel\\.action\\.warning\\.bg\\.hover:is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-warning-bg-hover)}.hover\\:c_likec4\\.panel\\.action\\.hover:is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover)}.hover\\:c_likec4\\.panel\\.action:is(:hover,[data-hover]){color:var(--colors-likec4-panel-action)}.hover\\:trs-dly_0s:is(:hover,[data-hover]){transition-delay:0s}.hover\\:bg-c_likec4\\.panel\\.action\\.bg\\.hover:is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.\\[\\&\\:hover_\\>_\\*\\]\\:trs-tmf_out:hover>*{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.\\[\\&\\:hover_\\>_\\*\\]\\:trf_translateX\\(1\\.6px\\):hover>*{transform:translate(1.6px)}.hover\\:trs-tmf_out:is(:hover,[data-hover]){--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.hover\\:c_mantine\\.colors\\.defaultColor:is(:hover,[data-hover]){color:var(--colors-mantine-colors-default-color)}.hover\\:c_mantine\\.colors\\.primary\\[6\\]:is(:hover,[data-hover]){color:var(--colors-mantine-colors-primary\\[6\\])}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:cursor_pointer:is(:hover,[data-selected=true])>*{cursor:pointer}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:bg-c_mantine\\.colors\\.defaultHover:is(:hover,[data-selected=true])>*{background-color:var(--colors-mantine-colors-default-hover)}.hover\\:bg-c_mantine\\.colors\\.gray\\[0\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-gray\\[0\\])}.group:is(:hover,[data-hover]) .groupHover\\:op_1{opacity:1}.group:is(:hover,[data-hover]) .groupHover\\:grayscale_0{--grayscale: grayscale(0)}.group:is(:hover,[data-hover]) .groupHover\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}.group:is(:hover,[data-hover]) .groupHover\\:c_mantine\\.colors\\.primary\\[1\\]{color:var(--colors-mantine-colors-primary\\[1\\])}.hover\\:fill_mantine\\.colors\\.primary\\.filledHover:is(:hover,[data-hover]){fill:var(--colors-mantine-colors-primary-filled-hover)}.hover\\:r_10:is(:hover,[data-hover]){r:10px}.hover\\:trs-dur_100ms:is(:hover,[data-hover]){--transition-duration: .1s;transition-duration:.1s}.hover\\:bg-c_mantine\\.colors\\.primary\\[2\\]\\/50:is(:hover,[data-hover]){--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-primary\\[2\\]) 50%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-primary\\[2\\]))}.group:is(:active,[data-active]) .groupActive\\:op_0\\.5{opacity:.5}.group:is(:active,[data-active]) .groupActive\\:op_0\\.8{opacity:.8}.active\\:trf_translateY\\(-3px\\):is(:active,[data-active]){transform:translateY(-3px)}.group:is(:active,[data-active]) .groupActive\\:cursor_grabbing{cursor:grabbing}.likec4-root:is([data-likec4-reduced-graphics]) .reduceGraphics\\:\\[\\&_\\.action-icon\\]\\:--ai-radius_0px .action-icon{--ai-radius: 0px}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:bg_transparent:before{background:var(--colors-transparent)}[data-mantine-color-scheme=dark] .dark\\:\\[\\&\\:is\\(\\[data-active\\]\\)\\]\\:bg_mantine\\.colors\\.dark\\[5\\]:is([data-active]){background:var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=light] .light\\:\\[\\&_\\.mantine-SegmentedControl-root\\]\\:bg_mantine\\.colors\\.gray\\[3\\] .mantine-SegmentedControl-root{background:var(--colors-mantine-colors-gray\\[3\\])}.group:is(:hover,[data-hover]) .\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:groupHover\\:c_\\[var\\(--badge-color\\)\\]:is([data-position=left]){color:var(--badge-color)}.group:is(:hover,[data-hover]) .\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:groupHover\\:op_0\\.7:is([data-position=left]){opacity:.7}[data-mantine-color-scheme=dark] .\\[\\&_\\>_mark\\]\\:dark\\:bg-c_mantine\\.colors\\.yellow\\[5\\]\\/80>mark{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-yellow\\[5\\]) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-yellow\\[5\\]))}.group:is(:focus,[data-focus]) .\\[\\&_\\>_mark\\]\\:groupFocus\\:bg-c_\\[transparent\\]>mark{background-color:var(--colors-transparent)}.group:is(:focus,[data-focus]) .\\[\\&_\\>_mark\\]\\:groupFocus\\:c_\\[inherit\\]\\!>mark{color:inherit!important}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:content_\\"_\\":before{content:" "}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:pos_absolute:before{position:absolute}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:pointer-events_all:before{pointer-events:all}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .reduceGraphicsOnPan\\:before\\:d_none:before{display:none}.notDisabled\\:hover\\:bg-c_likec4\\.panel\\.action\\.bg\\.hover:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:hover\\:c_mantine\\.colors\\.defaultColor .mantine-ThemeIcon-root:is(:hover,[data-hover]){color:var(--colors-mantine-colors-default-color)}[data-mantine-color-scheme=dark] .dark\\:\\[\\&\\:is\\(\\[data-active\\]\\)\\]\\:c_mantine\\.colors\\.white:is([data-active]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .\\[\\&\\[data-missing\\]\\]\\:light\\:c_mantine\\.colors\\.orange\\[8\\][data-missing]{color:var(--colors-mantine-colors-orange\\[8\\])}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:\\[\\&_\\>_div\\]\\:min-h_100\\% .mantine-ScrollArea-viewport>div{min-height:var(--sizes-100\\%)}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:\\[\\&_\\>_div\\]\\:h_100\\% .mantine-ScrollArea-viewport>div{height:var(--sizes-100\\%)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:top_\\[calc\\(100\\%_-_4px\\)\\]:before{top:calc(100% - 4px)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:left_0:before{left:var(--spacing-0)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:w_full:before{width:var(--sizes-full)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:h_24px:before{height:24px}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:\\[\\&_\\>_div\\]\\:pl_1 .mantine-ScrollArea-root>div{padding-left:var(--spacing-1)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:\\[\\&_\\>_div\\]\\:pr_1 .mantine-ScrollArea-root>div{padding-right:var(--spacing-1)}[data-mantine-color-scheme=dark] .focusWithin\\:dark\\:bg_mantine\\.colors\\.dark\\[5\\]\\/55\\!:focus-within{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 55%, transparent) !important;background:var(--mix-background, var(--colors-mantine-colors-dark\\[5\\]))!important}[data-mantine-color-scheme=dark] .focus\\:dark\\:bg-c_mantine\\.colors\\.dark\\[4\\]:is(:focus,[data-focus]){background-color:var(--colors-mantine-colors-dark\\[4\\])}[data-mantine-color-scheme=light] .group:is(:focus,[data-focus]) .groupFocus\\:light\\:c_mantine\\.colors\\.white{color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:light\\:c_mantine\\.colors\\.white{color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .light\\:hover\\:--icon-color_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}:is(:hover,[data-hover]){--icon-color: var(--colors-mantine-colors-gray\\[7\\])}[data-mantine-color-scheme=dark] .dark\\:hover\\:bg_mantine\\.colors\\.dark\\[6\\]:is(:hover,[data-hover]){background:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=dark] .group:is(:hover,[data-hover]) .groupHover\\:dark\\:bg_mantine\\.colors\\.dark\\[5\\]\\/35{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 35%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[5\\]))}[data-mantine-color-scheme=light] .light\\:hover\\:bd-c_mantine\\.colors\\.primary\\[6\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-primary\\[6\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[5\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=light] .group:is(:hover,[data-hover]) .groupHover\\:light\\:bg-c_mantine\\.colors\\.gray\\[2\\]{background-color:var(--colors-mantine-colors-gray\\[2\\])}[data-mantine-color-scheme=dark] .group:is(:hover,[data-hover]) .groupHover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[8\\]{background-color:var(--colors-mantine-colors-dark\\[8\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[4\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-dark\\[4\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[5\\]\\/70:is(:hover,[data-hover]){--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 70%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[5\\]))}[data-mantine-color-scheme=dark] .dark\\:hover\\:c_mantine\\.colors\\.white:is(:hover,[data-hover]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[7\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-dark\\[7\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:c_mantine\\.colors\\.primary\\[4\\]:is(:hover,[data-hover]){color:var(--colors-mantine-colors-primary\\[4\\])}.hover\\:\\[\\&_\\>_\\:not\\(\\[data-no-transform\\]\\)\\]\\:trs-tmf_out:is(:hover,[data-hover])>:not([data-no-transform]){--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.hover\\:\\[\\&_\\>_\\:not\\(\\[data-no-transform\\]\\)\\]\\:trf_translateX\\(1px\\):is(:hover,[data-hover])>:not([data-no-transform]){transform:translate(1px)}.hover\\:\\[\\&_\\>_\\*\\]\\:trs-tmf_out:is(:hover,[data-hover])>*{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.hover\\:\\[\\&_\\>_\\*\\]\\:trf_translateX\\(1px\\):is(:hover,[data-hover])>*{transform:translate(1px)}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.defaultHover:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-default-hover)}[data-mantine-color-scheme=dark] .hover\\:dark\\:c_mantine\\.colors\\.white:is(:hover,[data-hover]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .light\\:hover\\:bg-c_mantine\\.colors\\.primary\\[5\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-primary\\[5\\])}[data-mantine-color-scheme=light] .group:is(:hover,[data-hover]) .groupHover\\:light\\:c_mantine\\.colors\\.white{color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .group:is(:hover,[data-hover]) .groupHover\\:light\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}[data-mantine-color-scheme=dark] .dark\\:hover\\:bg-c_mantine\\.colors\\.dark\\[3\\]\\/40:is(:hover,[data-hover]){--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[3\\]) 40%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[3\\]))}@container (min-width: 24rem){.\\@\\/xs\\:d_flex{display:flex}}@media screen and (min-width:36rem){.xs\\:max-w_calc\\(100cqw\\){max-width:100cqw}.xs\\:max-w_calc\\(100cqw_-_50px\\){max-width:calc(100cqw - 50px)}.xs\\:max-w_calc\\(100cqw_-_250px\\){max-width:calc(100cqw - 250px)}.xs\\:max-h_calc\\(100cqh_-_200px\\){max-height:calc(100cqh - 200px)}.xs\\:max-h_calc\\(100cqh_-_160px\\){max-height:calc(100cqh - 160px)}.xs\\:h_100cqh{height:100cqh}.xs\\:max-h_calc\\(100cqh_-_70px\\){max-height:calc(100cqh - 70px)}}@container (min-width: 40rem){.\\@\\/sm\\:m_xs{margin:var(--spacing-xs)}.\\@\\/sm\\:gap_xs{gap:var(--spacing-xs)}.\\@\\/sm\\:w_max-content{width:max-content}.\\@\\/sm\\:max-w_calc\\(100vw_-_2_\\*_\\{spacing\\.md\\}\\){max-width:calc(100vw - 2 * var(--spacing-md))}.\\@\\/sm\\:min-w_400{min-width:400px}.\\@\\/sm\\:max-w_550{max-width:550px}}@container (min-width: 40rem){@media screen and (min-width:36rem){.\\@\\/sm\\:xs\\:max-w_calc\\(100cqw_-_2_\\*_\\{spacing\\.md\\}\\){max-width:calc(100cqw - 2 * var(--spacing-md))}}}@container (min-width: 48rem){.\\@\\/md\\:d_block{display:block}.\\@\\/md\\:d_flex{display:flex}.\\@\\/md\\:d_none{display:none}.\\@\\/md\\:d_inherit{display:inherit}.\\@\\/md\\:ms_2{margin-inline-start:var(--spacing-2)}.\\@\\/md\\:w_\\[64px\\]{width:64px}}@media screen and (min-width:48rem){.sm\\:pr_\\[30px\\]{padding-right:30px}.sm\\:min-w_300{min-width:300px}.sm\\:max-w_65vw{max-width:65vw}}@media screen and (min-width:62rem){.md\\:--text-fz_\\{fontSizes\\.md\\}{--text-fz: var(--font-sizes-md)}.md\\:bd-w_4{border-width:4px}.md\\:px_6{padding-inline:var(--spacing-6)}.md\\:pr_\\[50px\\]{padding-right:50px}.md\\:max-w_40vw{max-width:40vw}}@container (min-width: 64rem){.\\@\\/lg\\:max-w_700{max-width:700px}}@media screen and (min-width:75rem){.lg\\:px_8{padding-inline:var(--spacing-8)}}@container likec4-tree (max-width: 450px){.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:--likec4-icon-size_18px{--likec4-icon-size: 18px}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:gap_0\\.5{gap:var(--spacing-0\\.5)}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:flex-d_column-reverse{flex-direction:column-reverse}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:ai_flex-start{align-items:flex-start}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:d_none{display:none}}@media print{.print\\:d_none{display:none}}}`,Bre={autoContrast:!0,primaryColor:"indigo",cursorType:"pointer",defaultRadius:"sm",fontFamily:"var(--likec4-app-font, var(--likec4-app-font-default))",headings:{fontWeight:"500",sizes:{h1:{fontWeight:"600"},h2:{fontWeight:"500"}}},components:{Portal:py.extend({defaultProps:{reuseTargetNode:!0}}),Tooltip:_n.extend({defaultProps:{color:"dark"}})}};fe({cursor:"pointer","--mantine-cursor-pointer":"pointer","& :where(.likec4-diagram, .likec4-compound-node, .likec4-element-node)":{cursor:"pointer"}});function UQe(e,r){const[n,o]=S.useState([]);return f7(()=>{if(e&&!document.querySelector("style[data-likec4-font]")){const i=document.createElement("style");i.setAttribute("type","text/css"),i.setAttribute("data-likec4-font",""),pw(r)&&i.setAttribute("nonce",r),ey(r)&&i.setAttribute("nonce",r()),i.appendChild(document.createTextNode(HQe)),document.head.appendChild(i)}},[e]),f7(()=>{const i=new CSSStyleSheet;return i.replaceSync(Pre.replaceAll(":where(:root,:host)",".likec4-shadow-root").replaceAll(":root",".likec4-shadow-root").replaceAll(new RegExp("(?{i.replaceSync("")}},[Pre]),n}const Ire=()=>{try{const e=window.getComputedStyle(document.documentElement).colorScheme??"",r=hf(e.split(" "));if(r==="light"||r==="dark")return r}catch{}return null};function WQe(e){const r=mH(),[n,o]=S.useState(Ire);return $H(bf(()=>o(Ire),100),{attributes:!0,childList:!1,subtree:!1},()=>document.documentElement),e??n??r}function Ore({children:e}){const r=S.useContext(Aw);return S.useEffect(()=>{r||console.warn("LikeC4Diagram must be a child of MantineProvider")},[]),r?y.jsx(y.Fragment,{children:e}):y.jsx(z9,{defaultColorScheme:"auto",theme:Bre,children:e})}Ore.displayName="EnsureMantine";const wz=({reducedMotion:e="user",children:r})=>{const n=np()?.();return y.jsx(sLe,{features:rVe,strict:!0,children:y.jsx(uLe,{reducedMotion:e,...n&&{nonce:n},children:r})})};function Lre({onCanvasClick:e,onCanvasContextMenu:r,onCanvasDblClick:n,onEdgeClick:o,onEdgeContextMenu:i,onNavigateTo:a,onNodeClick:l,onNodeContextMenu:s,onOpenSource:c,onBurgerMenuClick:d,onLayoutTypeChange:u,onInitialized:p,view:f,className:g,controls:v=!0,fitView:w=!0,fitViewPadding:x=v?y2.withControls:y2.default,pannable:k=!0,zoomable:C=!0,background:_="dots",enableElementTags:$=!1,enableFocusMode:R=!1,enableElementDetails:T=!1,enableRelationshipDetails:A=!1,enableRelationshipBrowser:z=!1,enableCompareWithLatest:j=!!u,nodesSelectable:I,enableNotations:P=!1,showNavigationButtons:L=!!a,enableDynamicViewWalkthrough:H=!1,dynamicViewVariant:M,enableSearch:V=!1,initialWidth:B,initialHeight:F,reduceGraphics:q="auto",renderIcon:G,where:U,reactFlowProps:Y,renderNodes:K,children:O}){const W=DG(),Z=S.useRef(null),Q=!!rre(),ie=!Q;I??=Q||R||!!a||!!l;const te=kee(f,M),re=GQe(x);Z.current==null&&(Z.current={defaultEdges:[],defaultNodes:[],initialWidth:B??te.width,initialHeight:F??te.height,initialFitViewOptions:{maxZoom:l$,minZoom:xa,padding:re},initialMaxZoom:l$,initialMinZoom:xa});const ue=q==="auto"?k&&(te.width??1)*(te.height??1)>6e6&&f.nodes.some(_e=>_e.children?.length>0):q;return y.jsx(Ore,{children:y.jsx(wz,{...ue&&{reducedMotion:"always"},children:y.jsx(U5e,{value:G??null,children:y.jsx(mp,{features:{enableFitView:w,enableEditor:Q,enableReadOnly:ie,enableFocusMode:R,enableNavigateTo:!!a,enableElementDetails:T,enableRelationshipDetails:A,enableRelationshipBrowser:z,enableSearch:V,enableNavigationButtons:L&&!!a,enableDynamicViewWalkthrough:f._type==="dynamic"&&H,enableNotations:P,enableVscode:!!c,enableControls:v,enableElementTags:$,enableCompareWithLatest:j&&!!u},children:y.jsxs(eGe,{handlers:{onCanvasClick:e,onCanvasContextMenu:r,onCanvasDblClick:n,onEdgeClick:o,onEdgeContextMenu:i,onNavigateTo:a,onNodeClick:l,onNodeContextMenu:s,onOpenSource:c,onBurgerMenuClick:d,onInitialized:p,onLayoutTypeChange:u},children:[y.jsx(qQe,{id:W}),y.jsx(wNe,{rootSelector:`#${W}`,children:y.jsx(mNe,{id:W,className:g,reduceGraphics:ue,children:y.jsx(lw,{fitView:w,...Z.current,children:y.jsxs($Qe,{view:f,zoomable:C,pannable:k,fitViewPadding:re,nodesDraggable:Q,nodesSelectable:I,where:U??null,dynamicViewVariant:M,children:[y.jsx(_Ze,{background:_,reactFlowProps:Y,renderNodes:K,children:O}),y.jsx(yte,{})]})})})})]})})})})})}const Fre=e=>typeof e=="number"?`${e}px`:e;function GQe(e){return SL(()=>{if(a9(e))return D$e(e,Fre);const r=Fre(e);return{x:r,y:r}},[e],tt)}function YQe({children:e,likec4model:r}){return y.jsx(Sy.Provider,{value:r,children:e})}const kz=({children:e})=>y.jsx("div",{style:{margin:"1rem 0"},children:y.jsx("div",{style:{margin:"0 auto",display:"inline-block",padding:"2rem",background:"rgba(250,82,82,.15)",color:"#ffa8a8"},children:e})}),XQe=({viewId:e})=>y.jsxs(kz,{children:["View ",y.jsx("code",{children:e})," not found"]}),KQe=e=>{throw new Error("LikeC4View is not available SSR")};var Vre={exports:{}},_z,qre;function ZQe(){if(qre)return _z;qre=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return _z=e,_z}var Sz,Hre;function QQe(){if(Hre)return Sz;Hre=1;var e=ZQe();function r(){}function n(){}return n.resetWarningCache=r,Sz=function(){function o(l,s,c,d,u,p){if(p!==e){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}}o.isRequired=o;function i(){return o}var a={array:o,bigint:o,bool:o,func:o,number:o,object:o,string:o,symbol:o,any:o,arrayOf:i,element:o,elementType:o,instanceOf:i,node:o,objectOf:i,oneOf:i,oneOfType:i,shape:i,exact:i,checkPropTypes:n,resetWarningCache:r};return a.PropTypes=a,a},Sz}var Ure;function JQe(){return Ure||(Ure=1,Vre.exports=QQe()()),Vre.exports}var eJe=JQe();const ml=Y7(eJe);var tJe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Wre(e,r){return e(r={exports:{}},r.exports),r.exports}var rJe=Wre((function(e){(function(r){var n=function(x,k,C){if(!c(k)||u(k)||p(k)||f(k)||s(k))return k;var _,$=0,R=0;if(d(k))for(_=[],R=k.length;$e.length)&&(r=e.length);for(var n=0,o=new Array(r);n=0||(i[n]=e[n]);return i},Xre=function(e,r){if(e==null)return{};var n,o,i=sJe(e,r);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i},cJe=S.createContext(null);function Kre(e){var r=e.children,n=r===void 0?"":r,o=Xre(e,["children"]);return typeof n!="string"&&(n=KQe()),Zr.createElement("template",Yre({},o,{dangerouslySetInnerHTML:{__html:n}}))}function Zre(e){var r=e.root,n=e.children;return Va.createPortal(n===void 0?null:n,r)}function dJe(e){var r=S.forwardRef((function(n,o){var i,a,l=n.mode,s=l===void 0?"open":l,c=n.delegatesFocus,d=c!==void 0&&c,u=n.styleSheets,p=u===void 0?[]:u,f=n.ssr,g=f!==void 0&&f,v=n.children,w=Xre(n,["mode","delegatesFocus","styleSheets","ssr","children"]),x=(a=S.useRef((i=o)&&i.current),S.useEffect((function(){i&&(i.current=a.current)}),[i]),a),k=S.useState(null),C=lJe(k,2),_=C[0],$=C[1],R="node_".concat(s).concat(d);return S.useLayoutEffect((function(){if(x.current)try{if(typeof o=="function"&&o(x.current),g){var T=x.current.shadowRoot;return void $(T)}var A=x.current.attachShadow({mode:s,delegatesFocus:d});p.length>0&&(A.adoptedStyleSheets=p),$(A)}catch(z){(function(j){var I=j.error,P=j.styleSheets,L=j.root;switch(I.name){case"NotSupportedError":P.length>0&&(L.adoptedStyleSheets=P);break;default:throw I}})({error:z,styleSheets:p,root:_})}}),[o,x,p]),Zr.createElement(Zr.Fragment,null,Zr.createElement(e.tag,Yre({key:R,ref:x},w),(_||g)&&Zr.createElement(cJe.Provider,{value:_},g?Zr.createElement(Kre,{shadowroot:s,shadowrootmode:s},e.render({root:_,ssr:g,children:v})):Zr.createElement(Zre,{root:_},e.render({root:_,ssr:g,children:v})))))}));return r.propTypes={mode:ml.oneOf(["open","closed"]),delegatesFocus:ml.bool,styleSheets:ml.arrayOf(ml.instanceOf(globalThis.CSSStyleSheet)),ssr:ml.bool,children:ml.node},r}Kre.propTypes={children:ml.oneOfType([ml.string,ml.node])},Zre.propTypes={root:ml.object.isRequired,children:ml.node};var Ez=new Map;function uJe(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"core",n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:function(o){return o.children};return new Proxy(e,{get:function(o,i){var a=rJe(i,{separator:"-"}),l="".concat(r,"-").concat(a);return Ez.has(l)||Ez.set(l,dJe({tag:a,render:n})),Ez.get(l)}})}var pJe=uJe();const hJe=pJe.div;function fJe(e,r=!1){if(r===!1)return` +`))}const qQe=S.memo(({id:e})=>{const r=`#${e}`,n=np()?.(),{theme:o}=Tte(),i=VQe(r,o);return y.jsx("style",{type:"text/css","data-likec4-colors":e,dangerouslySetInnerHTML:{__html:i},nonce:n})}),HQe='@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-400-normal.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-500-normal.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-600-normal.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-400-normal.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-500-normal.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-600-normal.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-400-normal.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-500-normal.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/cyrillic-ext-600-normal.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-400-normal.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-500-normal.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans@latest/latin-ext-600-normal.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}',Nre=`@layer reset,base,mantine,xyflow,tokens,recipes,utilities;@layer mantine{:root,:host{color-scheme:var(--mantine-color-scheme)}*,*:before,*:after{box-sizing:border-box}input,button,textarea,select{font:inherit}button,select{text-transform:none}body,:host{margin:0;font-family:var(--mantine-font-family);font-size:var(--mantine-font-size-md);line-height:var(--mantine-line-height);background-color:var(--mantine-color-body);color:var(--mantine-color-text);-webkit-font-smoothing:var(--mantine-webkit-font-smoothing);-moz-osx-font-smoothing:var(--mantine-moz-font-smoothing)}@media screen and (max-device-width:31.25em){body,:host{-webkit-text-size-adjust:100%}}@media(prefers-reduced-motion:reduce){[data-respect-reduced-motion] [data-reduce-motion]{transition:none;animation:none}}[data-mantine-color-scheme=light] .mantine-light-hidden,[data-mantine-color-scheme=dark] .mantine-dark-hidden{display:none}.mantine-focus-auto:focus-visible{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.mantine-focus-always:focus{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.mantine-focus-never:focus{outline:none}.mantine-active:active{transform:translateY(calc(.0625rem * var(--mantine-scale)))}fieldset:disabled .mantine-active:active{transform:none}:where([dir=rtl]) .mantine-rotate-rtl{transform:rotate(180deg)}:root,:host{--mantine-z-index-app: 100;--mantine-z-index-modal: 200;--mantine-z-index-popover: 300;--mantine-z-index-overlay: 400;--mantine-z-index-max: 9999;--mantine-scale: 1;--mantine-cursor-type: default;--mantine-webkit-font-smoothing: antialiased;--mantine-moz-font-smoothing: grayscale;--mantine-color-white: #fff;--mantine-color-black: #000;--mantine-line-height: 1.55;--mantine-font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--mantine-font-family-monospace: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;--mantine-font-family-headings: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--mantine-heading-font-weight: 700;--mantine-heading-text-wrap: wrap;--mantine-radius-default: calc(.25rem * var(--mantine-scale));--mantine-primary-color-filled: var(--mantine-color-blue-filled);--mantine-primary-color-filled-hover: var(--mantine-color-blue-filled-hover);--mantine-primary-color-light: var(--mantine-color-blue-light);--mantine-primary-color-light-hover: var(--mantine-color-blue-light-hover);--mantine-primary-color-light-color: var(--mantine-color-blue-light-color);--mantine-breakpoint-xs: 36em;--mantine-breakpoint-sm: 48em;--mantine-breakpoint-md: 62em;--mantine-breakpoint-lg: 75em;--mantine-breakpoint-xl: 88em;--mantine-spacing-xs: calc(.625rem * var(--mantine-scale));--mantine-spacing-sm: calc(.75rem * var(--mantine-scale));--mantine-spacing-md: calc(1rem * var(--mantine-scale));--mantine-spacing-lg: calc(1.25rem * var(--mantine-scale));--mantine-spacing-xl: calc(2rem * var(--mantine-scale));--mantine-font-size-xs: calc(.75rem * var(--mantine-scale));--mantine-font-size-sm: calc(.875rem * var(--mantine-scale));--mantine-font-size-md: calc(1rem * var(--mantine-scale));--mantine-font-size-lg: calc(1.125rem * var(--mantine-scale));--mantine-font-size-xl: calc(1.25rem * var(--mantine-scale));--mantine-line-height-xs: 1.4;--mantine-line-height-sm: 1.45;--mantine-line-height-md: 1.55;--mantine-line-height-lg: 1.6;--mantine-line-height-xl: 1.65;--mantine-shadow-xs: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), 0 calc(.0625rem * var(--mantine-scale)) calc(.125rem * var(--mantine-scale)) rgba(0, 0, 0, .1);--mantine-shadow-sm: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(.625rem * var(--mantine-scale)) calc(.9375rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.4375rem * var(--mantine-scale)) calc(.4375rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale));--mantine-shadow-md: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(1.25rem * var(--mantine-scale)) calc(1.5625rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.625rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale)) calc(-.3125rem * var(--mantine-scale));--mantine-shadow-lg: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(1.75rem * var(--mantine-scale)) calc(1.4375rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(.75rem * var(--mantine-scale)) calc(.75rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale));--mantine-shadow-xl: 0 calc(.0625rem * var(--mantine-scale)) calc(.1875rem * var(--mantine-scale)) rgba(0, 0, 0, .05), rgba(0, 0, 0, .05) 0 calc(2.25rem * var(--mantine-scale)) calc(1.75rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale)), rgba(0, 0, 0, .04) 0 calc(1.0625rem * var(--mantine-scale)) calc(1.0625rem * var(--mantine-scale)) calc(-.4375rem * var(--mantine-scale));--mantine-radius-xs: calc(.125rem * var(--mantine-scale));--mantine-radius-sm: calc(.25rem * var(--mantine-scale));--mantine-radius-md: calc(.5rem * var(--mantine-scale));--mantine-radius-lg: calc(1rem * var(--mantine-scale));--mantine-radius-xl: calc(2rem * var(--mantine-scale));--mantine-primary-color-0: var(--mantine-color-blue-0);--mantine-primary-color-1: var(--mantine-color-blue-1);--mantine-primary-color-2: var(--mantine-color-blue-2);--mantine-primary-color-3: var(--mantine-color-blue-3);--mantine-primary-color-4: var(--mantine-color-blue-4);--mantine-primary-color-5: var(--mantine-color-blue-5);--mantine-primary-color-6: var(--mantine-color-blue-6);--mantine-primary-color-7: var(--mantine-color-blue-7);--mantine-primary-color-8: var(--mantine-color-blue-8);--mantine-primary-color-9: var(--mantine-color-blue-9);--mantine-color-dark-0: #c9c9c9;--mantine-color-dark-1: #b8b8b8;--mantine-color-dark-2: #828282;--mantine-color-dark-3: #696969;--mantine-color-dark-4: #424242;--mantine-color-dark-5: #3b3b3b;--mantine-color-dark-6: #2e2e2e;--mantine-color-dark-7: #242424;--mantine-color-dark-8: #1f1f1f;--mantine-color-dark-9: #141414;--mantine-color-gray-0: #f8f9fa;--mantine-color-gray-1: #f1f3f5;--mantine-color-gray-2: #e9ecef;--mantine-color-gray-3: #dee2e6;--mantine-color-gray-4: #ced4da;--mantine-color-gray-5: #adb5bd;--mantine-color-gray-6: #868e96;--mantine-color-gray-7: #495057;--mantine-color-gray-8: #343a40;--mantine-color-gray-9: #212529;--mantine-color-red-0: #fff5f5;--mantine-color-red-1: #ffe3e3;--mantine-color-red-2: #ffc9c9;--mantine-color-red-3: #ffa8a8;--mantine-color-red-4: #ff8787;--mantine-color-red-5: #ff6b6b;--mantine-color-red-6: #fa5252;--mantine-color-red-7: #f03e3e;--mantine-color-red-8: #e03131;--mantine-color-red-9: #c92a2a;--mantine-color-pink-0: #fff0f6;--mantine-color-pink-1: #ffdeeb;--mantine-color-pink-2: #fcc2d7;--mantine-color-pink-3: #faa2c1;--mantine-color-pink-4: #f783ac;--mantine-color-pink-5: #f06595;--mantine-color-pink-6: #e64980;--mantine-color-pink-7: #d6336c;--mantine-color-pink-8: #c2255c;--mantine-color-pink-9: #a61e4d;--mantine-color-grape-0: #f8f0fc;--mantine-color-grape-1: #f3d9fa;--mantine-color-grape-2: #eebefa;--mantine-color-grape-3: #e599f7;--mantine-color-grape-4: #da77f2;--mantine-color-grape-5: #cc5de8;--mantine-color-grape-6: #be4bdb;--mantine-color-grape-7: #ae3ec9;--mantine-color-grape-8: #9c36b5;--mantine-color-grape-9: #862e9c;--mantine-color-violet-0: #f3f0ff;--mantine-color-violet-1: #e5dbff;--mantine-color-violet-2: #d0bfff;--mantine-color-violet-3: #b197fc;--mantine-color-violet-4: #9775fa;--mantine-color-violet-5: #845ef7;--mantine-color-violet-6: #7950f2;--mantine-color-violet-7: #7048e8;--mantine-color-violet-8: #6741d9;--mantine-color-violet-9: #5f3dc4;--mantine-color-indigo-0: #edf2ff;--mantine-color-indigo-1: #dbe4ff;--mantine-color-indigo-2: #bac8ff;--mantine-color-indigo-3: #91a7ff;--mantine-color-indigo-4: #748ffc;--mantine-color-indigo-5: #5c7cfa;--mantine-color-indigo-6: #4c6ef5;--mantine-color-indigo-7: #4263eb;--mantine-color-indigo-8: #3b5bdb;--mantine-color-indigo-9: #364fc7;--mantine-color-blue-0: #e7f5ff;--mantine-color-blue-1: #d0ebff;--mantine-color-blue-2: #a5d8ff;--mantine-color-blue-3: #74c0fc;--mantine-color-blue-4: #4dabf7;--mantine-color-blue-5: #339af0;--mantine-color-blue-6: #228be6;--mantine-color-blue-7: #1c7ed6;--mantine-color-blue-8: #1971c2;--mantine-color-blue-9: #1864ab;--mantine-color-cyan-0: #e3fafc;--mantine-color-cyan-1: #c5f6fa;--mantine-color-cyan-2: #99e9f2;--mantine-color-cyan-3: #66d9e8;--mantine-color-cyan-4: #3bc9db;--mantine-color-cyan-5: #22b8cf;--mantine-color-cyan-6: #15aabf;--mantine-color-cyan-7: #1098ad;--mantine-color-cyan-8: #0c8599;--mantine-color-cyan-9: #0b7285;--mantine-color-teal-0: #e6fcf5;--mantine-color-teal-1: #c3fae8;--mantine-color-teal-2: #96f2d7;--mantine-color-teal-3: #63e6be;--mantine-color-teal-4: #38d9a9;--mantine-color-teal-5: #20c997;--mantine-color-teal-6: #12b886;--mantine-color-teal-7: #0ca678;--mantine-color-teal-8: #099268;--mantine-color-teal-9: #087f5b;--mantine-color-green-0: #ebfbee;--mantine-color-green-1: #d3f9d8;--mantine-color-green-2: #b2f2bb;--mantine-color-green-3: #8ce99a;--mantine-color-green-4: #69db7c;--mantine-color-green-5: #51cf66;--mantine-color-green-6: #40c057;--mantine-color-green-7: #37b24d;--mantine-color-green-8: #2f9e44;--mantine-color-green-9: #2b8a3e;--mantine-color-lime-0: #f4fce3;--mantine-color-lime-1: #e9fac8;--mantine-color-lime-2: #d8f5a2;--mantine-color-lime-3: #c0eb75;--mantine-color-lime-4: #a9e34b;--mantine-color-lime-5: #94d82d;--mantine-color-lime-6: #82c91e;--mantine-color-lime-7: #74b816;--mantine-color-lime-8: #66a80f;--mantine-color-lime-9: #5c940d;--mantine-color-yellow-0: #fff9db;--mantine-color-yellow-1: #fff3bf;--mantine-color-yellow-2: #ffec99;--mantine-color-yellow-3: #ffe066;--mantine-color-yellow-4: #ffd43b;--mantine-color-yellow-5: #fcc419;--mantine-color-yellow-6: #fab005;--mantine-color-yellow-7: #f59f00;--mantine-color-yellow-8: #f08c00;--mantine-color-yellow-9: #e67700;--mantine-color-orange-0: #fff4e6;--mantine-color-orange-1: #ffe8cc;--mantine-color-orange-2: #ffd8a8;--mantine-color-orange-3: #ffc078;--mantine-color-orange-4: #ffa94d;--mantine-color-orange-5: #ff922b;--mantine-color-orange-6: #fd7e14;--mantine-color-orange-7: #f76707;--mantine-color-orange-8: #e8590c;--mantine-color-orange-9: #d9480f;--mantine-h1-font-size: calc(2.125rem * var(--mantine-scale));--mantine-h1-line-height: 1.3;--mantine-h1-font-weight: 700;--mantine-h2-font-size: calc(1.625rem * var(--mantine-scale));--mantine-h2-line-height: 1.35;--mantine-h2-font-weight: 700;--mantine-h3-font-size: calc(1.375rem * var(--mantine-scale));--mantine-h3-line-height: 1.4;--mantine-h3-font-weight: 700;--mantine-h4-font-size: calc(1.125rem * var(--mantine-scale));--mantine-h4-line-height: 1.45;--mantine-h4-font-weight: 700;--mantine-h5-font-size: calc(1rem * var(--mantine-scale));--mantine-h5-line-height: 1.5;--mantine-h5-font-weight: 700;--mantine-h6-font-size: calc(.875rem * var(--mantine-scale));--mantine-h6-line-height: 1.5;--mantine-h6-font-weight: 700}:root[data-mantine-color-scheme=dark],:host([data-mantine-color-scheme="dark"]){--mantine-color-scheme: dark;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-white);--mantine-color-text: var(--mantine-color-dark-0);--mantine-color-body: var(--mantine-color-dark-7);--mantine-color-error: var(--mantine-color-red-8);--mantine-color-placeholder: var(--mantine-color-dark-3);--mantine-color-anchor: var(--mantine-color-blue-4);--mantine-color-default: var(--mantine-color-dark-6);--mantine-color-default-hover: var(--mantine-color-dark-5);--mantine-color-default-color: var(--mantine-color-white);--mantine-color-default-border: var(--mantine-color-dark-4);--mantine-color-dimmed: var(--mantine-color-dark-2);--mantine-color-disabled: var(--mantine-color-dark-6);--mantine-color-disabled-color: var(--mantine-color-dark-3);--mantine-color-disabled-border: var(--mantine-color-dark-4);--mantine-color-dark-text: var(--mantine-color-dark-4);--mantine-color-dark-filled: var(--mantine-color-dark-8);--mantine-color-dark-filled-hover: var(--mantine-color-dark-9);--mantine-color-dark-light: rgba(46, 46, 46, .15);--mantine-color-dark-light-hover: rgba(46, 46, 46, .2);--mantine-color-dark-light-color: var(--mantine-color-dark-3);--mantine-color-dark-outline: var(--mantine-color-dark-4);--mantine-color-dark-outline-hover: rgba(66, 66, 66, .05);--mantine-color-gray-text: var(--mantine-color-gray-4);--mantine-color-gray-filled: var(--mantine-color-gray-8);--mantine-color-gray-filled-hover: var(--mantine-color-gray-9);--mantine-color-gray-light: rgba(134, 142, 150, .15);--mantine-color-gray-light-hover: rgba(134, 142, 150, .2);--mantine-color-gray-light-color: var(--mantine-color-gray-3);--mantine-color-gray-outline: var(--mantine-color-gray-4);--mantine-color-gray-outline-hover: rgba(206, 212, 218, .05);--mantine-color-red-text: var(--mantine-color-red-4);--mantine-color-red-filled: var(--mantine-color-red-8);--mantine-color-red-filled-hover: var(--mantine-color-red-9);--mantine-color-red-light: rgba(250, 82, 82, .15);--mantine-color-red-light-hover: rgba(250, 82, 82, .2);--mantine-color-red-light-color: var(--mantine-color-red-3);--mantine-color-red-outline: var(--mantine-color-red-4);--mantine-color-red-outline-hover: rgba(255, 135, 135, .05);--mantine-color-pink-text: var(--mantine-color-pink-4);--mantine-color-pink-filled: var(--mantine-color-pink-8);--mantine-color-pink-filled-hover: var(--mantine-color-pink-9);--mantine-color-pink-light: rgba(230, 73, 128, .15);--mantine-color-pink-light-hover: rgba(230, 73, 128, .2);--mantine-color-pink-light-color: var(--mantine-color-pink-3);--mantine-color-pink-outline: var(--mantine-color-pink-4);--mantine-color-pink-outline-hover: rgba(247, 131, 172, .05);--mantine-color-grape-text: var(--mantine-color-grape-4);--mantine-color-grape-filled: var(--mantine-color-grape-8);--mantine-color-grape-filled-hover: var(--mantine-color-grape-9);--mantine-color-grape-light: rgba(190, 75, 219, .15);--mantine-color-grape-light-hover: rgba(190, 75, 219, .2);--mantine-color-grape-light-color: var(--mantine-color-grape-3);--mantine-color-grape-outline: var(--mantine-color-grape-4);--mantine-color-grape-outline-hover: rgba(218, 119, 242, .05);--mantine-color-violet-text: var(--mantine-color-violet-4);--mantine-color-violet-filled: var(--mantine-color-violet-8);--mantine-color-violet-filled-hover: var(--mantine-color-violet-9);--mantine-color-violet-light: rgba(121, 80, 242, .15);--mantine-color-violet-light-hover: rgba(121, 80, 242, .2);--mantine-color-violet-light-color: var(--mantine-color-violet-3);--mantine-color-violet-outline: var(--mantine-color-violet-4);--mantine-color-violet-outline-hover: rgba(151, 117, 250, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-4);--mantine-color-indigo-filled: var(--mantine-color-indigo-8);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-9);--mantine-color-indigo-light: rgba(76, 110, 245, .15);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .2);--mantine-color-indigo-light-color: var(--mantine-color-indigo-3);--mantine-color-indigo-outline: var(--mantine-color-indigo-4);--mantine-color-indigo-outline-hover: rgba(116, 143, 252, .05);--mantine-color-blue-text: var(--mantine-color-blue-4);--mantine-color-blue-filled: var(--mantine-color-blue-8);--mantine-color-blue-filled-hover: var(--mantine-color-blue-9);--mantine-color-blue-light: rgba(34, 139, 230, .15);--mantine-color-blue-light-hover: rgba(34, 139, 230, .2);--mantine-color-blue-light-color: var(--mantine-color-blue-3);--mantine-color-blue-outline: var(--mantine-color-blue-4);--mantine-color-blue-outline-hover: rgba(77, 171, 247, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-4);--mantine-color-cyan-filled: var(--mantine-color-cyan-8);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-9);--mantine-color-cyan-light: rgba(21, 170, 191, .15);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .2);--mantine-color-cyan-light-color: var(--mantine-color-cyan-3);--mantine-color-cyan-outline: var(--mantine-color-cyan-4);--mantine-color-cyan-outline-hover: rgba(59, 201, 219, .05);--mantine-color-teal-text: var(--mantine-color-teal-4);--mantine-color-teal-filled: var(--mantine-color-teal-8);--mantine-color-teal-filled-hover: var(--mantine-color-teal-9);--mantine-color-teal-light: rgba(18, 184, 134, .15);--mantine-color-teal-light-hover: rgba(18, 184, 134, .2);--mantine-color-teal-light-color: var(--mantine-color-teal-3);--mantine-color-teal-outline: var(--mantine-color-teal-4);--mantine-color-teal-outline-hover: rgba(56, 217, 169, .05);--mantine-color-green-text: var(--mantine-color-green-4);--mantine-color-green-filled: var(--mantine-color-green-8);--mantine-color-green-filled-hover: var(--mantine-color-green-9);--mantine-color-green-light: rgba(64, 192, 87, .15);--mantine-color-green-light-hover: rgba(64, 192, 87, .2);--mantine-color-green-light-color: var(--mantine-color-green-3);--mantine-color-green-outline: var(--mantine-color-green-4);--mantine-color-green-outline-hover: rgba(105, 219, 124, .05);--mantine-color-lime-text: var(--mantine-color-lime-4);--mantine-color-lime-filled: var(--mantine-color-lime-8);--mantine-color-lime-filled-hover: var(--mantine-color-lime-9);--mantine-color-lime-light: rgba(130, 201, 30, .15);--mantine-color-lime-light-hover: rgba(130, 201, 30, .2);--mantine-color-lime-light-color: var(--mantine-color-lime-3);--mantine-color-lime-outline: var(--mantine-color-lime-4);--mantine-color-lime-outline-hover: rgba(169, 227, 75, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-4);--mantine-color-yellow-filled: var(--mantine-color-yellow-8);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-9);--mantine-color-yellow-light: rgba(250, 176, 5, .15);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .2);--mantine-color-yellow-light-color: var(--mantine-color-yellow-3);--mantine-color-yellow-outline: var(--mantine-color-yellow-4);--mantine-color-yellow-outline-hover: rgba(255, 212, 59, .05);--mantine-color-orange-text: var(--mantine-color-orange-4);--mantine-color-orange-filled: var(--mantine-color-orange-8);--mantine-color-orange-filled-hover: var(--mantine-color-orange-9);--mantine-color-orange-light: rgba(253, 126, 20, .15);--mantine-color-orange-light-hover: rgba(253, 126, 20, .2);--mantine-color-orange-light-color: var(--mantine-color-orange-3);--mantine-color-orange-outline: var(--mantine-color-orange-4);--mantine-color-orange-outline-hover: rgba(255, 169, 77, .05)}:root[data-mantine-color-scheme=light],:host([data-mantine-color-scheme="light"]){--mantine-color-scheme: light;--mantine-primary-color-contrast: var(--mantine-color-white);--mantine-color-bright: var(--mantine-color-black);--mantine-color-text: #000;--mantine-color-body: #fff;--mantine-color-error: var(--mantine-color-red-6);--mantine-color-placeholder: var(--mantine-color-gray-5);--mantine-color-anchor: var(--mantine-color-blue-6);--mantine-color-default: var(--mantine-color-white);--mantine-color-default-hover: var(--mantine-color-gray-0);--mantine-color-default-color: var(--mantine-color-black);--mantine-color-default-border: var(--mantine-color-gray-4);--mantine-color-dimmed: var(--mantine-color-gray-6);--mantine-color-disabled: var(--mantine-color-gray-2);--mantine-color-disabled-color: var(--mantine-color-gray-5);--mantine-color-disabled-border: var(--mantine-color-gray-3);--mantine-color-dark-text: var(--mantine-color-dark-filled);--mantine-color-dark-filled: var(--mantine-color-dark-6);--mantine-color-dark-filled-hover: var(--mantine-color-dark-7);--mantine-color-dark-light: rgba(46, 46, 46, .1);--mantine-color-dark-light-hover: rgba(46, 46, 46, .12);--mantine-color-dark-light-color: var(--mantine-color-dark-6);--mantine-color-dark-outline: var(--mantine-color-dark-6);--mantine-color-dark-outline-hover: rgba(46, 46, 46, .05);--mantine-color-gray-text: var(--mantine-color-gray-filled);--mantine-color-gray-filled: var(--mantine-color-gray-6);--mantine-color-gray-filled-hover: var(--mantine-color-gray-7);--mantine-color-gray-light: rgba(134, 142, 150, .1);--mantine-color-gray-light-hover: rgba(134, 142, 150, .12);--mantine-color-gray-light-color: var(--mantine-color-gray-6);--mantine-color-gray-outline: var(--mantine-color-gray-6);--mantine-color-gray-outline-hover: rgba(134, 142, 150, .05);--mantine-color-red-text: var(--mantine-color-red-filled);--mantine-color-red-filled: var(--mantine-color-red-6);--mantine-color-red-filled-hover: var(--mantine-color-red-7);--mantine-color-red-light: rgba(250, 82, 82, .1);--mantine-color-red-light-hover: rgba(250, 82, 82, .12);--mantine-color-red-light-color: var(--mantine-color-red-6);--mantine-color-red-outline: var(--mantine-color-red-6);--mantine-color-red-outline-hover: rgba(250, 82, 82, .05);--mantine-color-pink-text: var(--mantine-color-pink-filled);--mantine-color-pink-filled: var(--mantine-color-pink-6);--mantine-color-pink-filled-hover: var(--mantine-color-pink-7);--mantine-color-pink-light: rgba(230, 73, 128, .1);--mantine-color-pink-light-hover: rgba(230, 73, 128, .12);--mantine-color-pink-light-color: var(--mantine-color-pink-6);--mantine-color-pink-outline: var(--mantine-color-pink-6);--mantine-color-pink-outline-hover: rgba(230, 73, 128, .05);--mantine-color-grape-text: var(--mantine-color-grape-filled);--mantine-color-grape-filled: var(--mantine-color-grape-6);--mantine-color-grape-filled-hover: var(--mantine-color-grape-7);--mantine-color-grape-light: rgba(190, 75, 219, .1);--mantine-color-grape-light-hover: rgba(190, 75, 219, .12);--mantine-color-grape-light-color: var(--mantine-color-grape-6);--mantine-color-grape-outline: var(--mantine-color-grape-6);--mantine-color-grape-outline-hover: rgba(190, 75, 219, .05);--mantine-color-violet-text: var(--mantine-color-violet-filled);--mantine-color-violet-filled: var(--mantine-color-violet-6);--mantine-color-violet-filled-hover: var(--mantine-color-violet-7);--mantine-color-violet-light: rgba(121, 80, 242, .1);--mantine-color-violet-light-hover: rgba(121, 80, 242, .12);--mantine-color-violet-light-color: var(--mantine-color-violet-6);--mantine-color-violet-outline: var(--mantine-color-violet-6);--mantine-color-violet-outline-hover: rgba(121, 80, 242, .05);--mantine-color-indigo-text: var(--mantine-color-indigo-filled);--mantine-color-indigo-filled: var(--mantine-color-indigo-6);--mantine-color-indigo-filled-hover: var(--mantine-color-indigo-7);--mantine-color-indigo-light: rgba(76, 110, 245, .1);--mantine-color-indigo-light-hover: rgba(76, 110, 245, .12);--mantine-color-indigo-light-color: var(--mantine-color-indigo-6);--mantine-color-indigo-outline: var(--mantine-color-indigo-6);--mantine-color-indigo-outline-hover: rgba(76, 110, 245, .05);--mantine-color-blue-text: var(--mantine-color-blue-filled);--mantine-color-blue-filled: var(--mantine-color-blue-6);--mantine-color-blue-filled-hover: var(--mantine-color-blue-7);--mantine-color-blue-light: rgba(34, 139, 230, .1);--mantine-color-blue-light-hover: rgba(34, 139, 230, .12);--mantine-color-blue-light-color: var(--mantine-color-blue-6);--mantine-color-blue-outline: var(--mantine-color-blue-6);--mantine-color-blue-outline-hover: rgba(34, 139, 230, .05);--mantine-color-cyan-text: var(--mantine-color-cyan-filled);--mantine-color-cyan-filled: var(--mantine-color-cyan-6);--mantine-color-cyan-filled-hover: var(--mantine-color-cyan-7);--mantine-color-cyan-light: rgba(21, 170, 191, .1);--mantine-color-cyan-light-hover: rgba(21, 170, 191, .12);--mantine-color-cyan-light-color: var(--mantine-color-cyan-6);--mantine-color-cyan-outline: var(--mantine-color-cyan-6);--mantine-color-cyan-outline-hover: rgba(21, 170, 191, .05);--mantine-color-teal-text: var(--mantine-color-teal-filled);--mantine-color-teal-filled: var(--mantine-color-teal-6);--mantine-color-teal-filled-hover: var(--mantine-color-teal-7);--mantine-color-teal-light: rgba(18, 184, 134, .1);--mantine-color-teal-light-hover: rgba(18, 184, 134, .12);--mantine-color-teal-light-color: var(--mantine-color-teal-6);--mantine-color-teal-outline: var(--mantine-color-teal-6);--mantine-color-teal-outline-hover: rgba(18, 184, 134, .05);--mantine-color-green-text: var(--mantine-color-green-filled);--mantine-color-green-filled: var(--mantine-color-green-6);--mantine-color-green-filled-hover: var(--mantine-color-green-7);--mantine-color-green-light: rgba(64, 192, 87, .1);--mantine-color-green-light-hover: rgba(64, 192, 87, .12);--mantine-color-green-light-color: var(--mantine-color-green-6);--mantine-color-green-outline: var(--mantine-color-green-6);--mantine-color-green-outline-hover: rgba(64, 192, 87, .05);--mantine-color-lime-text: var(--mantine-color-lime-filled);--mantine-color-lime-filled: var(--mantine-color-lime-6);--mantine-color-lime-filled-hover: var(--mantine-color-lime-7);--mantine-color-lime-light: rgba(130, 201, 30, .1);--mantine-color-lime-light-hover: rgba(130, 201, 30, .12);--mantine-color-lime-light-color: var(--mantine-color-lime-6);--mantine-color-lime-outline: var(--mantine-color-lime-6);--mantine-color-lime-outline-hover: rgba(130, 201, 30, .05);--mantine-color-yellow-text: var(--mantine-color-yellow-filled);--mantine-color-yellow-filled: var(--mantine-color-yellow-6);--mantine-color-yellow-filled-hover: var(--mantine-color-yellow-7);--mantine-color-yellow-light: rgba(250, 176, 5, .1);--mantine-color-yellow-light-hover: rgba(250, 176, 5, .12);--mantine-color-yellow-light-color: var(--mantine-color-yellow-6);--mantine-color-yellow-outline: var(--mantine-color-yellow-6);--mantine-color-yellow-outline-hover: rgba(250, 176, 5, .05);--mantine-color-orange-text: var(--mantine-color-orange-filled);--mantine-color-orange-filled: var(--mantine-color-orange-6);--mantine-color-orange-filled-hover: var(--mantine-color-orange-7);--mantine-color-orange-light: rgba(253, 126, 20, .1);--mantine-color-orange-light-hover: rgba(253, 126, 20, .12);--mantine-color-orange-light-color: var(--mantine-color-orange-6);--mantine-color-orange-outline: var(--mantine-color-orange-6);--mantine-color-orange-outline-hover: rgba(253, 126, 20, .05)}.m_d57069b5{--scrollarea-scrollbar-size: calc(.75rem * var(--mantine-scale));position:relative;overflow:hidden}.m_d57069b5:where([data-autosize]) .m_b1336c6{min-width:min-content}.m_c0783ff9{scrollbar-width:none;overscroll-behavior:var(--scrollarea-over-scroll-behavior);-ms-overflow-style:none;-webkit-overflow-scrolling:touch;width:100%;height:100%}.m_c0783ff9::-webkit-scrollbar{display:none}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=y]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=y],[data-offset-scrollbars=present]):where([data-vertical-hidden]){padding-inline-end:0;padding-inline-start:0}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=y]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=y],[data-offset-scrollbars=present]):not([data-vertical-hidden]){padding-inline-end:var(--scrollarea-scrollbar-size);padding-inline-start:unset}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=x]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=x],[data-offset-scrollbars=present]):where([data-horizontal-hidden]){padding-bottom:0}.m_c0783ff9:where([data-scrollbars=xy],[data-scrollbars=x]):where([data-offset-scrollbars=xy],[data-offset-scrollbars=x],[data-offset-scrollbars=present]):not([data-horizontal-hidden]){padding-bottom:var(--scrollarea-scrollbar-size)}.m_f8f631dd{min-width:100%;display:table}.m_c44ba933{user-select:none;touch-action:none;box-sizing:border-box;transition:background-color .15s ease,opacity .15s ease;padding:calc(var(--scrollarea-scrollbar-size) / 5);display:flex;background-color:transparent;flex-direction:row}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_c44ba933:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=light]) .m_c44ba933:hover>.m_d8b5e363{background-color:#00000080}:where([data-mantine-color-scheme=dark]) .m_c44ba933:hover{background-color:var(--mantine-color-dark-8)}:where([data-mantine-color-scheme=dark]) .m_c44ba933:hover>.m_d8b5e363{background-color:#ffffff80}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_c44ba933:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=light]) .m_c44ba933:active>.m_d8b5e363{background-color:#00000080}:where([data-mantine-color-scheme=dark]) .m_c44ba933:active{background-color:var(--mantine-color-dark-8)}:where([data-mantine-color-scheme=dark]) .m_c44ba933:active>.m_d8b5e363{background-color:#ffffff80}}.m_c44ba933:where([data-hidden],[data-state=hidden]){display:none}.m_c44ba933:where([data-orientation=vertical]){width:var(--scrollarea-scrollbar-size);top:0;bottom:var(--sa-corner-width);inset-inline-end:0}.m_c44ba933:where([data-orientation=horizontal]){height:var(--scrollarea-scrollbar-size);flex-direction:column;bottom:0;inset-inline-start:0;inset-inline-end:var(--sa-corner-width)}.m_d8b5e363{flex:1;border-radius:var(--scrollarea-scrollbar-size);position:relative;transition:background-color .15s ease;overflow:hidden;opacity:var(--thumb-opacity)}.m_d8b5e363:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:calc(2.75rem * var(--mantine-scale));min-height:calc(2.75rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_d8b5e363{background-color:#0006}:where([data-mantine-color-scheme=dark]) .m_d8b5e363{background-color:#fff6}.m_21657268{position:absolute;opacity:0;transition:opacity .15s ease;display:block;inset-inline-end:0;bottom:0}:where([data-mantine-color-scheme=light]) .m_21657268{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_21657268{background-color:var(--mantine-color-dark-8)}.m_21657268:where([data-hovered]){opacity:1}.m_21657268:where([data-hidden]){display:none}.m_b1336c6{min-width:100%}.m_87cf2631{background-color:transparent;cursor:pointer;border:0;padding:0;appearance:none;font-size:var(--mantine-font-size-md);text-align:left;text-decoration:none;color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}:where([dir=rtl]) .m_87cf2631{text-align:right}.m_515a97f8{border:0;clip:rect(0 0 0 0);height:calc(.0625rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));margin:calc(-.0625rem * var(--mantine-scale));overflow:hidden;padding:0;position:absolute;white-space:nowrap}.m_1b7284a3{--paper-radius: var(--mantine-radius-default);outline:0;-webkit-tap-highlight-color:transparent;display:block;touch-action:manipulation;text-decoration:none;border-radius:var(--paper-radius);box-shadow:var(--paper-shadow);background-color:var(--mantine-color-body)}[data-mantine-color-scheme=light] .m_1b7284a3{--paper-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_1b7284a3{--paper-border-color: var(--mantine-color-dark-4)}.m_1b7284a3:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--paper-border-color)}.m_9814e45f{inset:0;position:absolute;background:var(--overlay-bg, rgba(0, 0, 0, .6));-webkit-backdrop-filter:var(--overlay-filter);backdrop-filter:var(--overlay-filter);border-radius:var(--overlay-radius, 0);z-index:var(--overlay-z-index)}.m_9814e45f:where([data-fixed]){position:fixed}.m_9814e45f:where([data-center]){display:flex;align-items:center;justify-content:center}.m_38a85659{position:absolute;border:1px solid var(--popover-border-color);padding:var(--mantine-spacing-sm) var(--mantine-spacing-md);box-shadow:var(--popover-shadow, none);border-radius:var(--popover-radius, var(--mantine-radius-default))}.m_38a85659:where([data-fixed]){position:fixed}.m_38a85659:focus{outline:none}:where([data-mantine-color-scheme=light]) .m_38a85659{--popover-border-color: var(--mantine-color-gray-2);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_38a85659{--popover-border-color: var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}.m_a31dc6c1{background-color:inherit;border:1px solid var(--popover-border-color);z-index:1}.m_3d7bc908{position:fixed;inset:0}.m_5ae2e3c{--loader-size-xs: calc(1.125rem * var(--mantine-scale));--loader-size-sm: calc(1.375rem * var(--mantine-scale));--loader-size-md: calc(2.25rem * var(--mantine-scale));--loader-size-lg: calc(2.75rem * var(--mantine-scale));--loader-size-xl: calc(3.625rem * var(--mantine-scale));--loader-size: var(--loader-size-md);--loader-color: var(--mantine-primary-color-filled)}@keyframes m_5d2b3b9d{0%{transform:scale(.6);opacity:0}50%,to{transform:scale(1)}}.m_7a2bd4cd{position:relative;width:var(--loader-size);height:var(--loader-size);display:flex;gap:calc(var(--loader-size) / 5)}.m_870bb79{flex:1;background:var(--loader-color);animation:m_5d2b3b9d 1.2s cubic-bezier(0,.5,.5,1) infinite;border-radius:calc(.125rem * var(--mantine-scale))}.m_870bb79:nth-of-type(1){animation-delay:-.24s}.m_870bb79:nth-of-type(2){animation-delay:-.12s}.m_870bb79:nth-of-type(3){animation-delay:0}@keyframes m_aac34a1{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.5}}.m_4e3f22d7{display:flex;justify-content:center;align-items:center;gap:calc(var(--loader-size) / 10);position:relative;width:var(--loader-size);height:var(--loader-size)}.m_870c4af{width:calc(var(--loader-size) / 3 - var(--loader-size) / 15);height:calc(var(--loader-size) / 3 - var(--loader-size) / 15);border-radius:50%;background:var(--loader-color);animation:m_aac34a1 .8s infinite linear}.m_870c4af:nth-child(2){animation-delay:.4s}@keyframes m_f8e89c4b{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.m_b34414df{display:inline-block;width:var(--loader-size);height:var(--loader-size)}.m_b34414df:after{content:"";display:block;width:var(--loader-size);height:var(--loader-size);border-radius:calc(625rem * var(--mantine-scale));border-width:calc(var(--loader-size) / 8);border-style:solid;border-color:var(--loader-color) var(--loader-color) var(--loader-color) transparent;animation:m_f8e89c4b 1.2s linear infinite}.m_8d3f4000{--ai-size-xs: calc(1.125rem * var(--mantine-scale));--ai-size-sm: calc(1.375rem * var(--mantine-scale));--ai-size-md: calc(1.75rem * var(--mantine-scale));--ai-size-lg: calc(2.125rem * var(--mantine-scale));--ai-size-xl: calc(2.75rem * var(--mantine-scale));--ai-size-input-xs: calc(1.875rem * var(--mantine-scale));--ai-size-input-sm: calc(2.25rem * var(--mantine-scale));--ai-size-input-md: calc(2.625rem * var(--mantine-scale));--ai-size-input-lg: calc(3.125rem * var(--mantine-scale));--ai-size-input-xl: calc(3.75rem * var(--mantine-scale));--ai-size: var(--ai-size-md);--ai-color: var(--mantine-color-white);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;user-select:none;overflow:hidden;width:var(--ai-size);height:var(--ai-size);min-width:var(--ai-size);min-height:var(--ai-size);border-radius:var(--ai-radius, var(--mantine-radius-default));background:var(--ai-bg, var(--mantine-primary-color-filled));color:var(--ai-color, var(--mantine-color-white));border:var(--ai-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);cursor:pointer}@media(hover:hover){.m_8d3f4000:hover:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--ai-hover, var(--mantine-primary-color-filled-hover));color:var(--ai-hover-color, var(--ai-color))}}@media(hover:none){.m_8d3f4000:active:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--ai-hover, var(--mantine-primary-color-filled-hover));color:var(--ai-hover-color, var(--ai-color))}}.m_8d3f4000[data-loading]{cursor:not-allowed}.m_8d3f4000[data-loading] .m_8d3afb97{opacity:0;transform:translateY(100%)}.m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){cursor:not-allowed;border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-disabled-color);background:var(--mantine-color-disabled)}.m_8d3f4000:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])):active{transform:none}.m_302b9fb1{inset:calc(-.0625rem * var(--mantine-scale));position:absolute;border-radius:var(--ai-radius, var(--mantine-radius-default));display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_302b9fb1{background-color:#ffffff26}:where([data-mantine-color-scheme=dark]) .m_302b9fb1{background-color:#00000026}.m_1a0f1b21{--ai-border-width: calc(.0625rem * var(--mantine-scale));display:flex}.m_1a0f1b21 :where(*):focus{position:relative;z-index:1}.m_1a0f1b21[data-orientation=horizontal]{flex-direction:row}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):first-child,.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):first-child{border-end-end-radius:0;border-start-end-radius:0;border-inline-end-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):last-child,.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):last-child{border-end-start-radius:0;border-start-start-radius:0;border-inline-start-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=horizontal] .m_8d3f4000:not(:only-child):not(:first-child):not(:last-child),.m_1a0f1b21[data-orientation=horizontal] .m_437b6484:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-inline-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical]{flex-direction:column}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):first-child,.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):first-child{border-end-start-radius:0;border-end-end-radius:0;border-bottom-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):last-child,.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):last-child{border-start-start-radius:0;border-start-end-radius:0;border-top-width:calc(var(--ai-border-width) / 2)}.m_1a0f1b21[data-orientation=vertical] .m_8d3f4000:not(:only-child):not(:first-child):not(:last-child),.m_1a0f1b21[data-orientation=vertical] .m_437b6484:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-bottom-width:calc(var(--ai-border-width) / 2);border-top-width:calc(var(--ai-border-width) / 2)}.m_8d3afb97{display:flex;align-items:center;justify-content:center;transition:transform .15s ease,opacity .1s ease;width:100%;height:100%}.m_437b6484{--section-height-xs: calc(1.125rem * var(--mantine-scale));--section-height-sm: calc(1.375rem * var(--mantine-scale));--section-height-md: calc(1.75rem * var(--mantine-scale));--section-height-lg: calc(2.125rem * var(--mantine-scale));--section-height-xl: calc(2.75rem * var(--mantine-scale));--section-height-input-xs: calc(1.875rem * var(--mantine-scale));--section-height-input-sm: calc(2.25rem * var(--mantine-scale));--section-height-input-md: calc(2.625rem * var(--mantine-scale));--section-height-input-lg: calc(3.125rem * var(--mantine-scale));--section-height-input-xl: calc(3.75rem * var(--mantine-scale));--section-padding-x-xs: calc(.375rem * var(--mantine-scale));--section-padding-x-sm: calc(.5rem * var(--mantine-scale));--section-padding-x-md: calc(.625rem * var(--mantine-scale));--section-padding-x-lg: calc(.75rem * var(--mantine-scale));--section-padding-x-xl: calc(1rem * var(--mantine-scale));--section-height: var(--section-height-sm);--section-padding-x: var(--section-padding-x-sm);--section-color: var(--mantine-color-white);font-weight:600;width:auto;border-radius:var(--section-radius, var(--mantine-radius-default));font-size:var(--section-fz, var(--mantine-font-size-sm));background:var(--section-bg, var(--mantine-primary-color-filled));border:var(--section-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--section-color, var(--mantine-color-white));height:var(--section-height, var(--section-height-sm));padding-inline:var(--section-padding-x, var(--section-padding-x-sm));vertical-align:middle;line-height:1;display:inline-flex;align-items:center;justify-content:center}.m_86a44da5{--cb-size-xs: calc(1.125rem * var(--mantine-scale));--cb-size-sm: calc(1.375rem * var(--mantine-scale));--cb-size-md: calc(1.75rem * var(--mantine-scale));--cb-size-lg: calc(2.125rem * var(--mantine-scale));--cb-size-xl: calc(2.75rem * var(--mantine-scale));--cb-size: var(--cb-size-md);--cb-icon-size: 70%;--cb-radius: var(--mantine-radius-default);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;user-select:none;width:var(--cb-size);height:var(--cb-size);min-width:var(--cb-size);min-height:var(--cb-size);border-radius:var(--cb-radius)}:where([data-mantine-color-scheme=light]) .m_86a44da5{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_86a44da5{color:var(--mantine-color-dark-1)}.m_86a44da5[data-disabled],.m_86a44da5:disabled{cursor:not-allowed;opacity:.6}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_220c80f2:where(:not([data-disabled],:disabled)):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_220c80f2:where(:not([data-disabled],:disabled)):hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_220c80f2:where(:not([data-disabled],:disabled)):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_220c80f2:where(:not([data-disabled],:disabled)):active{background-color:var(--mantine-color-dark-6)}}.m_4081bf90{display:flex;flex-direction:row;flex-wrap:var(--group-wrap, wrap);justify-content:var(--group-justify, flex-start);align-items:var(--group-align, center);gap:var(--group-gap, var(--mantine-spacing-md))}.m_4081bf90:where([data-grow])>*{flex-grow:1;max-width:var(--group-child-width)}.m_615af6c9{line-height:1;padding:0;margin:0;font-weight:400;font-size:var(--mantine-font-size-md)}.m_b5489c3c{display:flex;justify-content:space-between;align-items:center;padding:var(--mb-padding, var(--mantine-spacing-md));padding-inline-end:calc(var(--mb-padding, var(--mantine-spacing-md)) - calc(.3125rem * var(--mantine-scale)));position:sticky;top:0;background-color:var(--mantine-color-body);z-index:1000;min-height:calc(3.75rem * var(--mantine-scale));transition:padding-inline-end .1s}.m_60c222c7{position:fixed;width:100%;top:0;bottom:0;z-index:var(--mb-z-index);pointer-events:none}.m_fd1ab0aa{pointer-events:all;box-shadow:var(--mb-shadow, var(--mantine-shadow-xl))}.m_fd1ab0aa [data-mantine-scrollbar]{z-index:1001}[data-offset-scrollbars] .m_fd1ab0aa:has([data-mantine-scrollbar]) .m_b5489c3c{padding-inline-end:calc(var(--mb-padding, var(--mantine-spacing-md)) + calc(.3125rem * var(--mantine-scale)))}.m_606cb269{margin-inline-start:auto}.m_5df29311{padding:var(--mb-padding, var(--mantine-spacing-md));padding-top:var(--mb-padding, var(--mantine-spacing-md))}.m_5df29311:where(:not(:only-child)){padding-top:0}.m_6c018570{position:relative;margin-top:var(--input-margin-top, 0rem);margin-bottom:var(--input-margin-bottom, 0rem);--input-height-xs: calc(1.875rem * var(--mantine-scale));--input-height-sm: calc(2.25rem * var(--mantine-scale));--input-height-md: calc(2.625rem * var(--mantine-scale));--input-height-lg: calc(3.125rem * var(--mantine-scale));--input-height-xl: calc(3.75rem * var(--mantine-scale));--input-padding-y-xs: calc(.3125rem * var(--mantine-scale));--input-padding-y-sm: calc(.375rem * var(--mantine-scale));--input-padding-y-md: calc(.5rem * var(--mantine-scale));--input-padding-y-lg: calc(.625rem * var(--mantine-scale));--input-padding-y-xl: calc(.8125rem * var(--mantine-scale));--input-height: var(--input-height-sm);--input-radius: var(--mantine-radius-default);--input-cursor: text;--input-text-align: left;--input-line-height: calc(var(--input-height) - calc(.125rem * var(--mantine-scale)));--input-padding: calc(var(--input-height) / 3);--input-padding-inline-start: var(--input-padding);--input-padding-inline-end: var(--input-padding);--input-placeholder-color: var(--mantine-color-placeholder);--input-color: var(--mantine-color-text);--input-disabled-bg: var(--mantine-color-disabled);--input-disabled-color: var(--mantine-color-disabled-color);--input-left-section-size: var(--input-left-section-width, calc(var(--input-height) - calc(.125rem * var(--mantine-scale))));--input-right-section-size: var( --input-right-section-width, calc(var(--input-height) - calc(.125rem * var(--mantine-scale))) );--input-size: var(--input-height);--section-y: calc(.0625rem * var(--mantine-scale));--left-section-start: calc(.0625rem * var(--mantine-scale));--left-section-border-radius: var(--input-radius) 0 0 var(--input-radius);--right-section-end: calc(.0625rem * var(--mantine-scale));--right-section-border-radius: 0 var(--input-radius) var(--input-radius) 0}.m_6c018570[data-variant=unstyled]{--input-padding: 0;--input-padding-y: 0;--input-padding-inline-start: 0;--input-padding-inline-end: 0}.m_6c018570[data-pointer]{--input-cursor: pointer}.m_6c018570[data-multiline]{--input-padding-y-xs: calc(.28125rem * var(--mantine-scale));--input-padding-y-sm: calc(.34375rem * var(--mantine-scale));--input-padding-y-md: calc(.4375rem * var(--mantine-scale));--input-padding-y-lg: calc(.59375rem * var(--mantine-scale));--input-padding-y-xl: calc(.8125rem * var(--mantine-scale));--input-size: auto;--input-line-height: var(--mantine-line-height)}.m_6c018570[data-with-left-section]{--input-padding-inline-start: var(--input-left-section-size)}.m_6c018570[data-with-right-section]{--input-padding-inline-end: var(--input-right-section-size)}.m_6c018570[data-size=xs] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(2.5625rem * var(--mantine-scale))}.m_6c018570[data-size=sm] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(3.125rem * var(--mantine-scale))}.m_6c018570[data-size=md] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(3.75rem * var(--mantine-scale))}.m_6c018570[data-size=lg] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(4.5rem * var(--mantine-scale))}.m_6c018570[data-size=xl] .m_6c018570[data-with-right-section]:has([data-combined-clear-section]){--input-padding-inline-end: calc(5.5625rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_6c018570[data-variant=default]{--input-bd: var(--mantine-color-gray-4);--input-bg: var(--mantine-color-white);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=filled]{--input-bd: transparent;--input-bg: var(--mantine-color-gray-1);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=light] .m_6c018570[data-variant=unstyled]{--input-bd: transparent;--input-bg: transparent;--input-bd-focus: transparent}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=default]{--input-bd: var(--mantine-color-dark-4);--input-bg: var(--mantine-color-dark-6);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=filled]{--input-bd: transparent;--input-bg: var(--mantine-color-dark-5);--input-bd-focus: var(--mantine-primary-color-filled)}[data-mantine-color-scheme=dark] .m_6c018570[data-variant=unstyled]{--input-bd: transparent;--input-bg: transparent;--input-bd-focus: transparent}[data-mantine-color-scheme] .m_6c018570[data-error]:not([data-variant=unstyled]){--input-bd: var(--mantine-color-error)}[data-mantine-color-scheme] .m_6c018570[data-error]{--input-color: var(--mantine-color-error);--input-placeholder-color: var(--mantine-color-error);--input-section-color: var(--mantine-color-error)}:where([dir=rtl]) .m_6c018570{--input-text-align: right;--left-section-border-radius: 0 var(--input-radius) var(--input-radius) 0;--right-section-border-radius: var(--input-radius) 0 0 var(--input-radius)}.m_8fb7ebe7{-webkit-tap-highlight-color:transparent;appearance:none;resize:var(--input-resize, none);display:block;width:100%;transition:border-color .1s ease;text-align:var(--input-text-align);color:var(--input-color);border:calc(.0625rem * var(--mantine-scale)) solid var(--input-bd);background-color:var(--input-bg);font-family:var(--input-font-family, var(--mantine-font-family));height:var(--input-size);min-height:var(--input-height);line-height:var(--input-line-height);font-size:var(--_input-fz, var(--input-fz, var(--mantine-font-size-md)));border-radius:var(--input-radius);padding-inline-start:var(--input-padding-inline-start);padding-inline-end:var(--input-padding-inline-end);padding-top:var(--input-padding-y, 0rem);padding-bottom:var(--input-padding-y, 0rem);cursor:var(--input-cursor);overflow:var(--input-overflow)}.m_8fb7ebe7[data-no-overflow]{--input-overflow: hidden}.m_8fb7ebe7[data-monospace]{--input-font-family: var(--mantine-font-family-monospace);--_input-fz: calc(var(--input-fz) - calc(.125rem * var(--mantine-scale)))}.m_8fb7ebe7:focus,.m_8fb7ebe7:focus-within{outline:none;--input-bd: var(--input-bd-focus)}[data-error] .m_8fb7ebe7:focus,[data-error] .m_8fb7ebe7:focus-within{--input-bd: var(--mantine-color-error)}.m_8fb7ebe7::placeholder{color:var(--input-placeholder-color);opacity:1}.m_8fb7ebe7::-webkit-inner-spin-button,.m_8fb7ebe7::-webkit-outer-spin-button,.m_8fb7ebe7::-webkit-search-decoration,.m_8fb7ebe7::-webkit-search-cancel-button,.m_8fb7ebe7::-webkit-search-results-button,.m_8fb7ebe7::-webkit-search-results-decoration{appearance:none}.m_8fb7ebe7[type=number]{-moz-appearance:textfield}.m_8fb7ebe7:disabled,.m_8fb7ebe7[data-disabled]{cursor:not-allowed;opacity:.6;background-color:var(--input-disabled-bg);color:var(--input-disabled-color)}.m_8fb7ebe7:has(input:disabled){cursor:not-allowed;opacity:.6;background-color:var(--input-disabled-bg);color:var(--input-disabled-color)}.m_8fb7ebe7[readonly]{caret-color:transparent}.m_82577fc2{pointer-events:var(--section-pointer-events);position:absolute;z-index:1;inset-inline-start:var(--section-start);inset-inline-end:var(--section-end);bottom:var(--section-y);top:var(--section-y);display:flex;align-items:center;justify-content:center;width:var(--section-size);border-radius:var(--section-border-radius);color:var(--input-section-color, var(--mantine-color-dimmed))}.m_82577fc2[data-position=right]{--section-pointer-events: var(--input-right-section-pointer-events);--section-end: var(--right-section-end);--section-size: var(--input-right-section-size);--section-border-radius: var(--right-section-border-radius)}.m_6c018570[data-size=xs] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(2.5625rem * var(--mantine-scale))}.m_6c018570[data-size=sm] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(3.125rem * var(--mantine-scale))}.m_6c018570[data-size=md] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(3.75rem * var(--mantine-scale))}.m_6c018570[data-size=lg] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(4.5rem * var(--mantine-scale))}.m_6c018570[data-size=xl] .m_82577fc2[data-position=right]:has([data-combined-clear-section]){--section-size: calc(5.5625rem * var(--mantine-scale))}.m_82577fc2[data-position=left]{--section-pointer-events: var(--input-left-section-pointer-events);--section-start: var(--left-section-start);--section-size: var(--input-left-section-size);--section-border-radius: var(--left-section-border-radius)}.m_88bacfd0{color:var(--input-placeholder-color, var(--mantine-color-placeholder))}[data-error] .m_88bacfd0{--input-placeholder-color: var(--input-color, var(--mantine-color-placeholder))}.m_46b77525{line-height:var(--mantine-line-height)}.m_8fdc1311{display:inline-block;font-weight:500;overflow-wrap:break-word;cursor:default;-webkit-tap-highlight-color:transparent;font-size:var(--input-label-size, var(--mantine-font-size-sm))}.m_78a94662{color:var(--input-asterisk-color, var(--mantine-color-error))}.m_8f816625,.m_fe47ce59{word-wrap:break-word;line-height:1.2;display:block;margin:0;padding:0}.m_8f816625{color:var(--mantine-color-error);font-size:var(--input-error-size, calc(var(--mantine-font-size-sm) - calc(.125rem * var(--mantine-scale))))}.m_fe47ce59{color:var(--mantine-color-dimmed);font-size:var(--input-description-size, calc(var(--mantine-font-size-sm) - calc(.125rem * var(--mantine-scale))))}.m_8bffd616{display:flex}.m_96b553a6{--transition-duration: .15s;top:0;left:0;position:absolute;z-index:0;transition-property:transform,width,height;transition-timing-function:ease;transition-duration:0ms}.m_96b553a6:where([data-initialized]){transition-duration:var(--transition-duration)}.m_96b553a6:where([data-hidden]){background-color:red;display:none}.m_9bdbb667{--accordion-radius: var(--mantine-radius-default)}.m_df78851f{overflow-wrap:break-word}.m_4ba554d4{padding:var(--mantine-spacing-md);padding-top:calc(var(--mantine-spacing-xs) / 2)}.m_8fa820a0{margin:0;padding:0}.m_4ba585b8{width:100%;display:flex;align-items:center;flex-direction:row-reverse;padding-inline:var(--mantine-spacing-md);opacity:1;cursor:pointer;background-color:transparent;color:var(--mantine-color-bright)}.m_4ba585b8:where([data-chevron-position=left]){flex-direction:row;padding-inline-start:0}.m_4ba585b8:where(:disabled,[data-disabled]){opacity:.4;cursor:not-allowed}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):hover,:where([data-mantine-color-scheme=light]) .m_4271d21b:where(:not(:disabled,[data-disabled])):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):hover,:where([data-mantine-color-scheme=dark]) .m_4271d21b:where(:not(:disabled,[data-disabled])):hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):active,:where([data-mantine-color-scheme=light]) .m_4271d21b:where(:not(:disabled,[data-disabled])):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_6939a5e9:where(:not(:disabled,[data-disabled])):active,:where([data-mantine-color-scheme=dark]) .m_4271d21b:where(:not(:disabled,[data-disabled])):active{background-color:var(--mantine-color-dark-6)}}.m_df3ffa0f{color:inherit;font-weight:400;flex:1;overflow:hidden;text-overflow:ellipsis;padding-top:var(--mantine-spacing-sm);padding-bottom:var(--mantine-spacing-sm)}.m_3f35ae96{display:flex;align-items:center;justify-content:flex-start;transition:transform var(--accordion-transition-duration, .2s) ease;width:var(--accordion-chevron-size, calc(.9375rem * var(--mantine-scale)));min-width:var(--accordion-chevron-size, calc(.9375rem * var(--mantine-scale)));transform:rotate(0)}.m_3f35ae96:where([data-rotate]){transform:rotate(180deg)}.m_3f35ae96:where([data-position=left]){margin-inline-end:var(--mantine-spacing-md);margin-inline-start:var(--mantine-spacing-md)}.m_9bd771fe{display:flex;align-items:center;justify-content:center;margin-inline-end:var(--mantine-spacing-sm)}.m_9bd771fe:where([data-chevron-position=left]){margin-inline-end:0;margin-inline-start:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_9bd7b098{--item-border-color: var(--mantine-color-gray-3);--item-filled-color: var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_9bd7b098{--item-border-color: var(--mantine-color-dark-4);--item-filled-color: var(--mantine-color-dark-6)}.m_fe19b709{border-bottom:1px solid var(--item-border-color)}.m_1f921b3b{border:1px solid var(--item-border-color);transition:background-color .15s ease}.m_1f921b3b:where([data-active]){background-color:var(--item-filled-color)}.m_1f921b3b:first-of-type{border-start-start-radius:var(--accordion-radius);border-start-end-radius:var(--accordion-radius)}.m_1f921b3b:first-of-type>[data-accordion-control]{border-start-start-radius:var(--accordion-radius);border-start-end-radius:var(--accordion-radius)}.m_1f921b3b:last-of-type{border-end-start-radius:var(--accordion-radius);border-end-end-radius:var(--accordion-radius)}.m_1f921b3b:last-of-type>[data-accordion-control]{border-end-start-radius:var(--accordion-radius);border-end-end-radius:var(--accordion-radius)}.m_1f921b3b+.m_1f921b3b{border-top:0}.m_2cdf939a{border-radius:var(--accordion-radius)}.m_2cdf939a:where([data-active]){background-color:var(--item-filled-color)}.m_9f59b069{background-color:var(--item-filled-color);border-radius:var(--accordion-radius);border:calc(.0625rem * var(--mantine-scale)) solid transparent;transition:background-color .15s ease}.m_9f59b069[data-active]{border-color:var(--item-border-color)}:where([data-mantine-color-scheme=light]) .m_9f59b069[data-active]{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_9f59b069[data-active]{background-color:var(--mantine-color-dark-7)}.m_9f59b069+.m_9f59b069{margin-top:var(--mantine-spacing-md)}.m_7f854edf{position:fixed;z-index:var(--affix-z-index);inset-inline-start:var(--affix-left);inset-inline-end:var(--affix-right);top:var(--affix-top);bottom:var(--affix-bottom)}.m_66836ed3{--alert-radius: var(--mantine-radius-default);--alert-bg: var(--mantine-primary-color-light);--alert-bd: calc(.0625rem * var(--mantine-scale)) solid transparent;--alert-color: var(--mantine-primary-color-light-color);padding:var(--mantine-spacing-md) var(--mantine-spacing-md);border-radius:var(--alert-radius);position:relative;overflow:hidden;background-color:var(--alert-bg);border:var(--alert-bd);color:var(--alert-color)}.m_a5d60502{display:flex}.m_667c2793{flex:1;display:flex;flex-direction:column;gap:var(--mantine-spacing-xs)}.m_6a03f287{display:flex;align-items:center;justify-content:space-between;font-size:var(--mantine-font-size-sm);font-weight:700}.m_6a03f287:where([data-with-close-button]){padding-inline-end:var(--mantine-spacing-md)}.m_698f4f23{display:block;overflow:hidden;text-overflow:ellipsis}.m_667f2a6a{line-height:1;width:calc(1.25rem * var(--mantine-scale));height:calc(1.25rem * var(--mantine-scale));display:flex;align-items:center;justify-content:flex-start;margin-inline-end:var(--mantine-spacing-md);margin-top:calc(.0625rem * var(--mantine-scale))}.m_7fa78076{text-overflow:ellipsis;overflow:hidden;font-size:var(--mantine-font-size-sm)}:where([data-mantine-color-scheme=light]) .m_7fa78076{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_7fa78076{color:var(--mantine-color-white)}.m_7fa78076:where([data-variant=filled]){color:var(--alert-color)}.m_7fa78076:where([data-variant=white]){color:var(--mantine-color-black)}.m_87f54839{width:calc(1.25rem * var(--mantine-scale));height:calc(1.25rem * var(--mantine-scale));color:var(--alert-color)}.m_b6d8b162{-webkit-tap-highlight-color:transparent;text-decoration:none;font-size:var(--text-fz, var(--mantine-font-size-md));line-height:var(--text-lh, var(--mantine-line-height-md));font-weight:400;margin:0;padding:0;color:var(--text-color)}.m_b6d8b162:where([data-truncate]){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m_b6d8b162:where([data-truncate=start]){direction:rtl;text-align:right}:where([dir=rtl]) .m_b6d8b162:where([data-truncate=start]){direction:ltr;text-align:left}.m_b6d8b162:where([data-variant=gradient]){background-image:var(--text-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.m_b6d8b162:where([data-line-clamp]){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--text-line-clamp);-webkit-box-orient:vertical}.m_b6d8b162:where([data-inherit]){line-height:inherit;font-weight:inherit;font-size:inherit}.m_b6d8b162:where([data-inline]){line-height:1}.m_849cf0da{color:var(--mantine-color-anchor);text-decoration:none;appearance:none;border:none;display:inline;padding:0;margin:0;background-color:transparent;cursor:pointer}@media(hover:hover){.m_849cf0da:where([data-underline=hover]):hover{text-decoration:underline}}@media(hover:none){.m_849cf0da:where([data-underline=hover]):active{text-decoration:underline}}.m_849cf0da:where([data-underline=not-hover]){text-decoration:underline}@media(hover:hover){.m_849cf0da:where([data-underline=not-hover]):hover{text-decoration:none}}@media(hover:none){.m_849cf0da:where([data-underline=not-hover]):active{text-decoration:none}}.m_849cf0da:where([data-underline=always]){text-decoration:underline}.m_849cf0da:where([data-variant=gradient]),.m_849cf0da:where([data-variant=gradient]):hover{text-decoration:none}.m_849cf0da:where([data-line-clamp]){display:-webkit-box}.m_48204f9b{width:var(--slider-size);height:var(--slider-size);position:relative;border-radius:100%;display:flex;align-items:center;justify-content:center;user-select:none}.m_48204f9b:focus-within{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_48204f9b{--slider-size: calc(3.75rem * var(--mantine-scale));--thumb-size: calc(var(--slider-size) / 5)}:where([data-mantine-color-scheme=light]) .m_48204f9b{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_48204f9b{background-color:var(--mantine-color-dark-5)}.m_bb9cdbad{position:absolute;inset:calc(.0625rem * var(--mantine-scale));border-radius:var(--slider-size);pointer-events:none}.m_481dd586{width:calc(.125rem * var(--mantine-scale));position:absolute;top:0;bottom:0;left:calc(50% - 1px);transform:rotate(var(--angle))}.m_481dd586:before{content:"";position:absolute;top:calc(var(--thumb-size) / 3);left:calc(.03125rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));height:calc(var(--thumb-size) / 1.5);transform:translate(-50%,-50%)}:where([data-mantine-color-scheme=light]) .m_481dd586:before{background-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_481dd586:before{background-color:var(--mantine-color-dark-3)}.m_481dd586[data-label]:after{min-width:calc(1.125rem * var(--mantine-scale));text-align:center;content:attr(data-label);position:absolute;top:calc(-1.5rem * var(--mantine-scale));left:calc(-.4375rem * var(--mantine-scale));transform:rotate(calc(360deg - var(--angle)));font-size:var(--mantine-font-size-xs)}.m_bc02ba3d{position:absolute;inset-block:0;inset-inline-start:calc(50% - 1.5px);inset-inline-end:0;height:100%;width:calc(.1875rem * var(--mantine-scale));outline:none;pointer-events:none}.m_bc02ba3d:before{content:"";position:absolute;right:0;top:0;height:min(var(--thumb-size),calc(var(--slider-size) / 2));width:calc(.1875rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_bc02ba3d:before{background-color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_bc02ba3d:before{background-color:var(--mantine-color-dark-1)}.m_bb8e875b{font-size:var(--mantine-font-size-xs)}.m_89ab340[data-resizing]{--app-shell-transition-duration: 0ms !important}.m_89ab340[data-disabled]{--app-shell-header-offset: 0rem !important;--app-shell-navbar-offset: 0rem !important;--app-shell-aside-offset: 0rem !important;--app-shell-footer-offset: 0rem !important}[data-mantine-color-scheme=light] .m_89ab340{--app-shell-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_89ab340{--app-shell-border-color: var(--mantine-color-dark-4)}.m_45252eee,.m_9cdde9a,.m_3b16f56b,.m_8983817,.m_3840c879{transition-duration:var(--app-shell-transition-duration);transition-timing-function:var(--app-shell-transition-timing-function)}.m_45252eee,.m_9cdde9a{position:fixed;display:flex;flex-direction:column;top:var(--app-shell-header-offset, 0rem);height:calc(100dvh - var(--app-shell-header-offset, 0rem) - var(--app-shell-footer-offset, 0rem));background-color:var(--mantine-color-body);transition-property:transform,top,height}:where([data-layout=alt]) .m_45252eee,:where([data-layout=alt]) .m_9cdde9a{top:0rem;height:100dvh}.m_45252eee{inset-inline-start:0;width:var(--app-shell-navbar-width);transition-property:transform,top,height;transform:var(--app-shell-navbar-transform);z-index:var(--app-shell-navbar-z-index)}:where([dir=rtl]) .m_45252eee{transform:var(--app-shell-navbar-transform-rtl)}.m_45252eee:where([data-with-border]){border-inline-end:1px solid var(--app-shell-border-color)}.m_9cdde9a{inset-inline-end:0;width:var(--app-shell-aside-width);transform:var(--app-shell-aside-transform);z-index:var(--app-shell-aside-z-index)}:where([dir=rtl]) .m_9cdde9a{transform:var(--app-shell-aside-transform-rtl)}.m_9cdde9a:where([data-with-border]){border-inline-start:1px solid var(--app-shell-border-color)}:where([data-scroll-locked]) .m_9cdde9a{visibility:var(--app-shell-aside-scroll-locked-visibility)}.m_8983817{padding-inline-start:calc(var(--app-shell-navbar-offset, 0rem) + var(--app-shell-padding));padding-inline-end:calc(var(--app-shell-aside-offset, 0rem) + var(--app-shell-padding));padding-top:calc(var(--app-shell-header-offset, 0rem) + var(--app-shell-padding));padding-bottom:calc(var(--app-shell-footer-offset, 0rem) + var(--app-shell-padding));min-height:100dvh;transition-property:padding}.m_3b16f56b,.m_3840c879{position:fixed;inset-inline:0;transition-property:transform,margin-inline-start,margin-inline-end;background-color:var(--mantine-color-body)}:where([data-layout=alt]) .m_3b16f56b,:where([data-layout=alt]) .m_3840c879{margin-inline-start:var(--app-shell-navbar-offset, 0rem);margin-inline-end:var(--app-shell-aside-offset, 0rem)}.m_3b16f56b{top:0;height:var(--app-shell-header-height);background-color:var(--mantine-color-body);transform:var(--app-shell-header-transform);z-index:var(--app-shell-header-z-index)}.m_3b16f56b:where([data-with-border]){border-bottom:1px solid var(--app-shell-border-color)}.m_3840c879{bottom:0;height:calc(var(--app-shell-footer-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);transform:var(--app-shell-footer-transform);z-index:var(--app-shell-footer-z-index)}.m_3840c879:where([data-with-border]){border-top:1px solid var(--app-shell-border-color)}.m_6dcfc7c7{flex-grow:0}.m_6dcfc7c7:where([data-grow]){flex-grow:1}.m_71ac47fc{--ar-ratio: 1;max-width:100%}.m_71ac47fc>:where(*:not(style)){aspect-ratio:var(--ar-ratio);width:100%}.m_71ac47fc>:where(img,video){object-fit:cover}.m_88b62a41{--combobox-padding: calc(.25rem * var(--mantine-scale));padding:var(--combobox-padding)}.m_88b62a41:has([data-mantine-scrollbar]) .m_985517d8{max-width:calc(100% + var(--combobox-padding))}.m_88b62a41[data-composed]{padding-inline-end:0}.m_88b62a41[data-hidden]{display:none}.m_88b62a41,.m_b2821a6e{--combobox-option-padding-xs: calc(.25rem * var(--mantine-scale)) calc(.5rem * var(--mantine-scale));--combobox-option-padding-sm: calc(.375rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--combobox-option-padding-md: calc(.5rem * var(--mantine-scale)) calc(.75rem * var(--mantine-scale));--combobox-option-padding-lg: calc(.625rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--combobox-option-padding-xl: calc(.875rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));--combobox-option-padding: var(--combobox-option-padding-sm)}.m_92253aa5{padding:var(--combobox-option-padding);font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));border-radius:var(--mantine-radius-default);background-color:transparent;color:inherit;cursor:pointer;overflow-wrap:break-word}.m_92253aa5:where([data-combobox-selected]){background-color:var(--mantine-primary-color-filled);color:var(--mantine-color-white)}.m_92253aa5:where([data-combobox-disabled]){cursor:not-allowed;opacity:.35}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_92253aa5:hover:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_92253aa5:hover:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-dark-7)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_92253aa5:active:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_92253aa5:active:where(:not([data-combobox-selected],[data-combobox-disabled])){background-color:var(--mantine-color-dark-7)}}.m_985517d8{margin-inline:calc(var(--combobox-padding) * -1);margin-top:calc(var(--combobox-padding) * -1);width:calc(100% + var(--combobox-padding) * 2);border-top-width:0;border-inline-width:0;border-end-start-radius:0;border-end-end-radius:0;margin-bottom:var(--combobox-padding);position:relative}:where([data-mantine-color-scheme=light]) .m_985517d8,:where([data-mantine-color-scheme=light]) .m_985517d8:focus{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_985517d8,:where([data-mantine-color-scheme=dark]) .m_985517d8:focus{border-color:var(--mantine-color-dark-4)}:where([data-mantine-color-scheme=light]) .m_985517d8{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_985517d8{background-color:var(--mantine-color-dark-7)}.m_2530cd1d{font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));text-align:center;padding:var(--combobox-option-padding);color:var(--mantine-color-dimmed)}.m_858f94bd,.m_82b967cb{font-size:var(--combobox-option-fz, var(--mantine-font-size-sm));border:0 solid transparent;margin-inline:calc(var(--combobox-padding) * -1);padding:var(--combobox-option-padding)}:where([data-mantine-color-scheme=light]) .m_858f94bd,:where([data-mantine-color-scheme=light]) .m_82b967cb{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_858f94bd,:where([data-mantine-color-scheme=dark]) .m_82b967cb{border-color:var(--mantine-color-dark-4)}.m_82b967cb{border-top-width:calc(.0625rem * var(--mantine-scale));margin-top:var(--combobox-padding);margin-bottom:calc(var(--combobox-padding) * -1)}.m_858f94bd{border-bottom-width:calc(.0625rem * var(--mantine-scale));margin-bottom:var(--combobox-padding);margin-top:calc(var(--combobox-padding) * -1)}.m_254f3e4f:has(.m_2bb2e9e5:only-child){display:none}.m_2bb2e9e5{color:var(--mantine-color-dimmed);font-size:calc(var(--combobox-option-fz, var(--mantine-font-size-sm)) * .85);padding:var(--combobox-option-padding);font-weight:500;position:relative;display:flex;align-items:center}.m_2bb2e9e5:after{content:"";flex:1;inset-inline:0;height:calc(.0625rem * var(--mantine-scale));margin-inline-start:var(--mantine-spacing-xs)}:where([data-mantine-color-scheme=light]) .m_2bb2e9e5:after{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_2bb2e9e5:after{background-color:var(--mantine-color-dark-4)}.m_2bb2e9e5:only-child{display:none}.m_2943220b{--combobox-chevron-size-xs: calc(.875rem * var(--mantine-scale));--combobox-chevron-size-sm: calc(1.125rem * var(--mantine-scale));--combobox-chevron-size-md: calc(1.25rem * var(--mantine-scale));--combobox-chevron-size-lg: calc(1.5rem * var(--mantine-scale));--combobox-chevron-size-xl: calc(1.75rem * var(--mantine-scale));--combobox-chevron-size: var(--combobox-chevron-size-sm)}:where([data-mantine-color-scheme=light]) .m_2943220b{--_combobox-chevron-color: var(--combobox-chevron-color, var(--mantine-color-gray-6))}:where([data-mantine-color-scheme=dark]) .m_2943220b{--_combobox-chevron-color: var(--combobox-chevron-color, var(--mantine-color-dark-3))}.m_2943220b{width:var(--combobox-chevron-size);height:var(--combobox-chevron-size);color:var(--_combobox-chevron-color)}.m_2943220b:where([data-error]){color:var(--combobox-chevron-color, var(--mantine-color-error))}.m_390b5f4{display:flex;align-items:center;gap:calc(.5rem * var(--mantine-scale))}.m_390b5f4:where([data-reverse]){justify-content:space-between}.m_8ee53fc2{opacity:.4;width:.8em;min-width:.8em;height:.8em}:where([data-combobox-selected]) .m_8ee53fc2{opacity:1}.m_a530ee0a{width:.8em;min-width:.8em;height:.8em}.m_5f75b09e{--label-lh-xs: calc(1rem * var(--mantine-scale));--label-lh-sm: calc(1.25rem * var(--mantine-scale));--label-lh-md: calc(1.5rem * var(--mantine-scale));--label-lh-lg: calc(1.875rem * var(--mantine-scale));--label-lh-xl: calc(2.25rem * var(--mantine-scale));--label-lh: var(--label-lh-sm)}.m_5f75b09e[data-label-position=left]{--label-order: 1;--label-offset-end: var(--mantine-spacing-sm);--label-offset-start: 0}.m_5f75b09e[data-label-position=right]{--label-order: 2;--label-offset-end: 0;--label-offset-start: var(--mantine-spacing-sm)}.m_5f6e695e{-webkit-tap-highlight-color:transparent;display:flex}.m_d3ea56bb{--label-cursor: var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:inline-flex;flex-direction:column;font-size:var(--label-fz, var(--mantine-font-size-sm));line-height:var(--label-lh);cursor:var(--label-cursor);order:var(--label-order)}fieldset:disabled .m_d3ea56bb,.m_d3ea56bb[data-disabled]{--label-cursor: not-allowed}.m_8ee546b8{cursor:var(--label-cursor);color:inherit;padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}fieldset:disabled .m_8ee546b8,.m_8ee546b8:where([data-disabled]){color:var(--mantine-color-disabled-color)}.m_328f68c0{margin-top:calc(var(--mantine-spacing-xs) / 2);padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end);cursor:default}.m_8e8a99cc{margin-top:calc(var(--mantine-spacing-xs) / 2);padding-inline-start:var(--label-offset-start);padding-inline-end:var(--label-offset-end)}.m_26775b0a{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_26775b0a :where(*){cursor:inherit}.m_26775b0a:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_26775b0a:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_5e5256ee{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled)}.m_5e5256ee:where([data-variant=filled]){--checkbox-icon-color: var(--mantine-color-white)}.m_5e5256ee:where([data-variant=outline]){--checkbox-icon-color: var(--checkbox-color)}.m_5e5256ee{position:relative;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--checkbox-size);min-width:var(--checkbox-size);height:var(--checkbox-size);min-height:var(--checkbox-size);border-radius:var(--checkbox-radius, var(--mantine-radius-default));transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_5e5256ee{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_5e5256ee{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_5e5256ee[data-indeterminate],.m_5e5256ee[data-checked]{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}.m_5e5256ee[data-indeterminate]>.m_1b1c543a,.m_5e5256ee[data-checked]>.m_1b1c543a{opacity:1;transform:none;color:var(--checkbox-icon-color)}.m_5e5256ee[data-disabled]{cursor:not-allowed;border-color:var(--mantine-color-disabled-border);background-color:var(--mantine-color-disabled)}[data-mantine-color-scheme=light] .m_5e5256ee[data-disabled][data-checked]>.m_1b1c543a{color:var(--mantine-color-gray-5)}[data-mantine-color-scheme=dark] .m_5e5256ee[data-disabled][data-checked]>.m_1b1c543a{color:var(--mantine-color-dark-3)}.m_76e20374[data-indeterminate]:not([data-disabled]),.m_76e20374[data-checked]:not([data-disabled]){background-color:transparent;border-color:var(--checkbox-color)}.m_76e20374[data-indeterminate]:not([data-disabled])>.m_1b1c543a,.m_76e20374[data-checked]:not([data-disabled])>.m_1b1c543a{color:var(--checkbox-icon-color);opacity:1;transform:none}.m_1b1c543a{display:block;width:60%;color:transparent;pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:1;transition:transform .1s ease,opacity .1s ease}.m_bf2d988c{--checkbox-size-xs: calc(1rem * var(--mantine-scale));--checkbox-size-sm: calc(1.25rem * var(--mantine-scale));--checkbox-size-md: calc(1.5rem * var(--mantine-scale));--checkbox-size-lg: calc(1.875rem * var(--mantine-scale));--checkbox-size-xl: calc(2.25rem * var(--mantine-scale));--checkbox-size: var(--checkbox-size-sm);--checkbox-color: var(--mantine-primary-color-filled)}.m_bf2d988c:where([data-variant=filled]){--checkbox-icon-color: var(--mantine-color-white)}.m_bf2d988c:where([data-variant=outline]){--checkbox-icon-color: var(--checkbox-color)}.m_26062bec{position:relative;width:var(--checkbox-size);height:var(--checkbox-size);order:1}.m_26062bec:where([data-label-position=left]){order:2}.m_26063560{appearance:none;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--checkbox-size);height:var(--checkbox-size);border-radius:var(--checkbox-radius, var(--mantine-radius-default));padding:0;display:block;margin:0;transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent}:where([data-mantine-color-scheme=light]) .m_26063560{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_26063560{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_26063560:where([data-error]){border-color:var(--mantine-color-error)}.m_26063560[data-indeterminate],.m_26063560:checked{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}.m_26063560[data-indeterminate]+.m_bf295423,.m_26063560:checked+.m_bf295423{opacity:1;transform:none}.m_26063560:disabled{cursor:not-allowed;border-color:var(--mantine-color-disabled-border);background-color:var(--mantine-color-disabled)}.m_26063560:disabled+.m_bf295423{color:var(--mantine-color-disabled-color)}.m_215c4542+.m_bf295423{color:var(--checkbox-color)}.m_215c4542[data-indeterminate]:not(:disabled),.m_215c4542:checked:not(:disabled){background-color:transparent;border-color:var(--checkbox-color)}.m_215c4542[data-indeterminate]:not(:disabled)+.m_bf295423,.m_215c4542:checked:not(:disabled)+.m_bf295423{color:var(--checkbox-icon-color);opacity:1;transform:none}.m_bf295423{position:absolute;inset:0;width:60%;margin:auto;color:var(--checkbox-icon-color);pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:0;transition:transform .1s ease,opacity .1s ease}.m_11def92b{--ag-spacing: var(--mantine-spacing-sm);--ag-offset: calc(var(--ag-spacing) * -1);display:flex;padding-inline-start:var(--ag-spacing)}.m_f85678b6{--avatar-size-xs: calc(1rem * var(--mantine-scale));--avatar-size-sm: calc(1.625rem * var(--mantine-scale));--avatar-size-md: calc(2.375rem * var(--mantine-scale));--avatar-size-lg: calc(3.5rem * var(--mantine-scale));--avatar-size-xl: calc(5.25rem * var(--mantine-scale));--avatar-size: var(--avatar-size-md);--avatar-radius: calc(62.5rem * var(--mantine-scale));--avatar-bg: var(--mantine-color-gray-light);--avatar-bd: calc(.0625rem * var(--mantine-scale)) solid transparent;--avatar-color: var(--mantine-color-gray-light-color);--avatar-placeholder-fz: calc(var(--avatar-size) / 2.5);-webkit-tap-highlight-color:transparent;position:relative;display:block;user-select:none;overflow:hidden;border-radius:var(--avatar-radius);text-decoration:none;padding:0;width:var(--avatar-size);height:var(--avatar-size);min-width:var(--avatar-size)}.m_f85678b6:where([data-within-group]){margin-inline-start:var(--ag-offset);border:2px solid var(--mantine-color-body);background:var(--mantine-color-body)}.m_11f8ac07{object-fit:cover;width:100%;height:100%;display:block}.m_104cd71f{font-weight:700;display:flex;align-items:center;justify-content:center;width:100%;height:100%;user-select:none;border-radius:var(--avatar-radius);font-size:var(--avatar-placeholder-fz);background:var(--avatar-bg);border:var(--avatar-bd);color:var(--avatar-color)}.m_104cd71f>[data-avatar-placeholder-icon]{width:70%;height:70%}.m_2ce0de02{background-size:cover;background-position:center;display:block;width:100%;border:0;text-decoration:none;border-radius:var(--bi-radius, 0)}.m_347db0ec{--badge-height-xs: calc(1rem * var(--mantine-scale));--badge-height-sm: calc(1.125rem * var(--mantine-scale));--badge-height-md: calc(1.25rem * var(--mantine-scale));--badge-height-lg: calc(1.625rem * var(--mantine-scale));--badge-height-xl: calc(2rem * var(--mantine-scale));--badge-fz-xs: calc(.5625rem * var(--mantine-scale));--badge-fz-sm: calc(.625rem * var(--mantine-scale));--badge-fz-md: calc(.6875rem * var(--mantine-scale));--badge-fz-lg: calc(.8125rem * var(--mantine-scale));--badge-fz-xl: calc(1rem * var(--mantine-scale));--badge-padding-x-xs: calc(.375rem * var(--mantine-scale));--badge-padding-x-sm: calc(.5rem * var(--mantine-scale));--badge-padding-x-md: calc(.625rem * var(--mantine-scale));--badge-padding-x-lg: calc(.75rem * var(--mantine-scale));--badge-padding-x-xl: calc(1rem * var(--mantine-scale));--badge-height: var(--badge-height-md);--badge-fz: var(--badge-fz-md);--badge-padding-x: var(--badge-padding-x-md);--badge-radius: calc(62.5rem * var(--mantine-scale));--badge-lh: calc(var(--badge-height) - calc(.125rem * var(--mantine-scale)));--badge-color: var(--mantine-color-white);--badge-bg: var(--mantine-primary-color-filled);--badge-border-width: calc(.0625rem * var(--mantine-scale));--badge-bd: var(--badge-border-width) solid transparent;-webkit-tap-highlight-color:transparent;font-size:var(--badge-fz);border-radius:var(--badge-radius);height:var(--badge-height);line-height:var(--badge-lh);text-decoration:none;padding:0 var(--badge-padding-x);display:inline-grid;align-items:center;justify-content:center;width:fit-content;text-transform:uppercase;font-weight:700;letter-spacing:calc(.015625rem * var(--mantine-scale));cursor:default;text-overflow:ellipsis;overflow:hidden;color:var(--badge-color);background:var(--badge-bg);border:var(--badge-bd)}.m_347db0ec:where([data-with-left-section],[data-variant=dot]){grid-template-columns:auto 1fr}.m_347db0ec:where([data-with-right-section]){grid-template-columns:1fr auto}.m_347db0ec:where([data-with-left-section][data-with-right-section],[data-variant=dot][data-with-right-section]){grid-template-columns:auto 1fr auto}.m_347db0ec:where([data-block]){display:flex;width:100%}.m_347db0ec:where([data-circle]){padding-inline:calc(.125rem * var(--mantine-scale));display:flex;width:var(--badge-height)}.m_fbd81e3d{--badge-dot-size: calc(var(--badge-height) / 3.4)}:where([data-mantine-color-scheme=light]) .m_fbd81e3d{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_fbd81e3d{background-color:var(--mantine-color-dark-5);border-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_fbd81e3d:before{content:"";display:block;width:var(--badge-dot-size);height:var(--badge-dot-size);border-radius:var(--badge-dot-size);background-color:var(--badge-dot-color);margin-inline-end:var(--badge-dot-size)}.m_5add502a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;cursor:inherit}.m_91fdda9b{--badge-section-margin: calc(var(--mantine-spacing-xs) / 2);display:inline-flex;justify-content:center;align-items:center;max-height:calc(var(--badge-height) - var(--badge-border-width) * 2)}.m_91fdda9b:where([data-position=left]){margin-inline-end:var(--badge-section-margin)}.m_91fdda9b:where([data-position=right]){margin-inline-start:var(--badge-section-margin)}.m_ddec01c0{--blockquote-border: 3px solid var(--bq-bd);position:relative;margin:0;border-inline-start:var(--blockquote-border);border-start-end-radius:var(--bq-radius);border-end-end-radius:var(--bq-radius);padding:var(--mantine-spacing-xl) calc(2.375rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_ddec01c0{background-color:var(--bq-bg-light)}:where([data-mantine-color-scheme=dark]) .m_ddec01c0{background-color:var(--bq-bg-dark)}.m_dde7bd57{--blockquote-icon-offset: calc(var(--bq-icon-size) / -2);position:absolute;color:var(--bq-bd);background-color:var(--mantine-color-body);display:flex;align-items:center;justify-content:center;top:var(--blockquote-icon-offset);inset-inline-start:var(--blockquote-icon-offset);width:var(--bq-icon-size);height:var(--bq-icon-size);border-radius:var(--bq-icon-size)}.m_dde51a35{display:block;margin-top:var(--mantine-spacing-md);opacity:.6;font-size:85%}.m_8b3717df{display:flex;align-items:center;flex-wrap:wrap}.m_f678d540{line-height:1;white-space:nowrap;-webkit-tap-highlight-color:transparent}.m_3b8f2208{margin-inline:var(--bc-separator-margin, var(--mantine-spacing-xs));line-height:1;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_3b8f2208{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_3b8f2208{color:var(--mantine-color-dark-2)}.m_fea6bf1a{--burger-size-xs: calc(.75rem * var(--mantine-scale));--burger-size-sm: calc(1.125rem * var(--mantine-scale));--burger-size-md: calc(1.5rem * var(--mantine-scale));--burger-size-lg: calc(2.125rem * var(--mantine-scale));--burger-size-xl: calc(2.625rem * var(--mantine-scale));--burger-size: var(--burger-size-md);--burger-line-size: calc(var(--burger-size) / 12);width:calc(var(--burger-size) + var(--mantine-spacing-xs));height:calc(var(--burger-size) + var(--mantine-spacing-xs));padding:calc(var(--mantine-spacing-xs) / 2);cursor:pointer}:where([data-mantine-color-scheme=light]) .m_fea6bf1a{--burger-color: var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_fea6bf1a{--burger-color: var(--mantine-color-white)}.m_d4fb9cad{position:relative;user-select:none}.m_d4fb9cad,.m_d4fb9cad:before,.m_d4fb9cad:after{display:block;width:var(--burger-size);height:var(--burger-line-size);background-color:var(--burger-color);outline:calc(.0625rem * var(--mantine-scale)) solid transparent;transition-property:background-color,transform;transition-duration:var(--burger-transition-duration, .3s);transition-timing-function:var(--burger-transition-timing-function, ease)}.m_d4fb9cad:before,.m_d4fb9cad:after{position:absolute;content:"";inset-inline-start:0}.m_d4fb9cad:before{top:calc(var(--burger-size) / -3)}.m_d4fb9cad:after{top:calc(var(--burger-size) / 3)}.m_d4fb9cad[data-opened]{background-color:transparent}.m_d4fb9cad[data-opened]:before{transform:translateY(calc(var(--burger-size) / 3)) rotate(45deg)}.m_d4fb9cad[data-opened]:after{transform:translateY(calc(var(--burger-size) / -3)) rotate(-45deg)}.m_77c9d27d{--button-height-xs: calc(1.875rem * var(--mantine-scale));--button-height-sm: calc(2.25rem * var(--mantine-scale));--button-height-md: calc(2.625rem * var(--mantine-scale));--button-height-lg: calc(3.125rem * var(--mantine-scale));--button-height-xl: calc(3.75rem * var(--mantine-scale));--button-height-compact-xs: calc(1.375rem * var(--mantine-scale));--button-height-compact-sm: calc(1.625rem * var(--mantine-scale));--button-height-compact-md: calc(1.875rem * var(--mantine-scale));--button-height-compact-lg: calc(2.125rem * var(--mantine-scale));--button-height-compact-xl: calc(2.5rem * var(--mantine-scale));--button-padding-x-xs: calc(.875rem * var(--mantine-scale));--button-padding-x-sm: calc(1.125rem * var(--mantine-scale));--button-padding-x-md: calc(1.375rem * var(--mantine-scale));--button-padding-x-lg: calc(1.625rem * var(--mantine-scale));--button-padding-x-xl: calc(2rem * var(--mantine-scale));--button-padding-x-compact-xs: calc(.4375rem * var(--mantine-scale));--button-padding-x-compact-sm: calc(.5rem * var(--mantine-scale));--button-padding-x-compact-md: calc(.625rem * var(--mantine-scale));--button-padding-x-compact-lg: calc(.75rem * var(--mantine-scale));--button-padding-x-compact-xl: calc(.875rem * var(--mantine-scale));--button-height: var(--button-height-sm);--button-padding-x: var(--button-padding-x-sm);--button-color: var(--mantine-color-white);user-select:none;font-weight:600;position:relative;line-height:1;text-align:center;overflow:hidden;width:auto;cursor:pointer;display:inline-block;border-radius:var(--button-radius, var(--mantine-radius-default));font-size:var(--button-fz, var(--mantine-font-size-sm));background:var(--button-bg, var(--mantine-primary-color-filled));border:var(--button-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--button-color, var(--mantine-color-white));height:var(--button-height, var(--button-height-sm));padding-inline:var(--button-padding-x, var(--button-padding-x-sm));vertical-align:middle}.m_77c9d27d:where([data-block]){display:block;width:100%}.m_77c9d27d:where([data-with-left-section]){padding-inline-start:calc(var(--button-padding-x) / 1.5)}.m_77c9d27d:where([data-with-right-section]){padding-inline-end:calc(var(--button-padding-x) / 1.5)}.m_77c9d27d:where(:disabled:not([data-loading]),[data-disabled]:not([data-loading])){cursor:not-allowed;border:calc(.0625rem * var(--mantine-scale)) solid transparent;transform:none;color:var(--mantine-color-disabled-color);background:var(--mantine-color-disabled)}.m_77c9d27d:before{content:"";pointer-events:none;position:absolute;inset:calc(-.0625rem * var(--mantine-scale));border-radius:var(--button-radius, var(--mantine-radius-default));transform:translateY(-100%);opacity:0;filter:blur(12px);transition:transform .15s ease,opacity .1s ease}:where([data-mantine-color-scheme=light]) .m_77c9d27d:before{background-color:#ffffff26}:where([data-mantine-color-scheme=dark]) .m_77c9d27d:before{background-color:#00000026}.m_77c9d27d:where([data-loading]){cursor:not-allowed;transform:none}.m_77c9d27d:where([data-loading]):before{transform:translateY(0);opacity:1}.m_77c9d27d:where([data-loading]) .m_80f1301b{opacity:0;transform:translateY(100%)}@media(hover:hover){.m_77c9d27d:hover:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--button-hover, var(--mantine-primary-color-filled-hover));color:var(--button-hover-color, var(--button-color))}}@media(hover:none){.m_77c9d27d:active:where(:not([data-loading],:disabled,[data-disabled])){background-color:var(--button-hover, var(--mantine-primary-color-filled-hover));color:var(--button-hover-color, var(--button-color))}}.m_80f1301b{display:flex;align-items:center;justify-content:var(--button-justify, center);height:100%;overflow:visible;transition:transform .15s ease,opacity .1s ease}.m_811560b9{white-space:nowrap;height:100%;overflow:hidden;display:flex;align-items:center;opacity:1}.m_811560b9:where([data-loading]){opacity:.2}.m_a74036a{display:flex;align-items:center}.m_a74036a:where([data-position=left]){margin-inline-end:var(--mantine-spacing-xs)}.m_a74036a:where([data-position=right]){margin-inline-start:var(--mantine-spacing-xs)}.m_a25b86ee{position:absolute;left:50%;top:50%}.m_80d6d844{--button-border-width: calc(.0625rem * var(--mantine-scale));display:flex}.m_80d6d844 :where(.m_77c9d27d):focus{position:relative;z-index:1}.m_80d6d844[data-orientation=horizontal]{flex-direction:row}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):first-child,.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):first-child{border-end-end-radius:0;border-start-end-radius:0;border-inline-end-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):last-child,.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):last-child{border-end-start-radius:0;border-start-start-radius:0;border-inline-start-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=horizontal] .m_77c9d27d:not(:only-child):not(:first-child):not(:last-child),.m_80d6d844[data-orientation=horizontal] .m_70be2a01:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-inline-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical]{flex-direction:column}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):first-child,.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):first-child{border-end-start-radius:0;border-end-end-radius:0;border-bottom-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):last-child,.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):last-child{border-start-start-radius:0;border-start-end-radius:0;border-top-width:calc(var(--button-border-width) / 2)}.m_80d6d844[data-orientation=vertical] .m_77c9d27d:not(:only-child):not(:first-child):not(:last-child),.m_80d6d844[data-orientation=vertical] .m_70be2a01:not(:only-child):not(:first-child):not(:last-child){border-radius:0;border-bottom-width:calc(var(--button-border-width) / 2);border-top-width:calc(var(--button-border-width) / 2)}.m_70be2a01{--section-height-xs: calc(1.875rem * var(--mantine-scale));--section-height-sm: calc(2.25rem * var(--mantine-scale));--section-height-md: calc(2.625rem * var(--mantine-scale));--section-height-lg: calc(3.125rem * var(--mantine-scale));--section-height-xl: calc(3.75rem * var(--mantine-scale));--section-height-compact-xs: calc(1.375rem * var(--mantine-scale));--section-height-compact-sm: calc(1.625rem * var(--mantine-scale));--section-height-compact-md: calc(1.875rem * var(--mantine-scale));--section-height-compact-lg: calc(2.125rem * var(--mantine-scale));--section-height-compact-xl: calc(2.5rem * var(--mantine-scale));--section-padding-x-xs: calc(.875rem * var(--mantine-scale));--section-padding-x-sm: calc(1.125rem * var(--mantine-scale));--section-padding-x-md: calc(1.375rem * var(--mantine-scale));--section-padding-x-lg: calc(1.625rem * var(--mantine-scale));--section-padding-x-xl: calc(2rem * var(--mantine-scale));--section-padding-x-compact-xs: calc(.4375rem * var(--mantine-scale));--section-padding-x-compact-sm: calc(.5rem * var(--mantine-scale));--section-padding-x-compact-md: calc(.625rem * var(--mantine-scale));--section-padding-x-compact-lg: calc(.75rem * var(--mantine-scale));--section-padding-x-compact-xl: calc(.875rem * var(--mantine-scale));--section-height: var(--section-height-sm);--section-padding-x: var(--section-padding-x-sm);--section-color: var(--mantine-color-white);font-weight:600;width:auto;border-radius:var(--section-radius, var(--mantine-radius-default));font-size:var(--section-fz, var(--mantine-font-size-sm));background:var(--section-bg, var(--mantine-primary-color-filled));border:var(--section-bd, calc(.0625rem * var(--mantine-scale)) solid transparent);color:var(--section-color, var(--mantine-color-white));height:var(--section-height, var(--section-height-sm));padding-inline:var(--section-padding-x, var(--section-padding-x-sm));vertical-align:middle;line-height:1;display:inline-flex;align-items:center;justify-content:center}.m_e615b15f{--card-padding: var(--mantine-spacing-md);position:relative;overflow:hidden;display:flex;flex-direction:column;padding:var(--card-padding);color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_e615b15f{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_e615b15f{background-color:var(--mantine-color-dark-6)}.m_599a2148{display:block;margin-inline:calc(var(--card-padding) * -1)}.m_599a2148:where(:first-child){margin-top:calc(var(--card-padding) * -1);border-top:none!important}.m_599a2148:where(:last-child){margin-bottom:calc(var(--card-padding) * -1);border-bottom:none!important}.m_599a2148:where([data-inherit-padding]){padding-inline:var(--card-padding)}.m_599a2148:where([data-with-border]){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-bottom:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_599a2148{border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_599a2148{border-color:var(--mantine-color-dark-4)}.m_599a2148+.m_599a2148{border-top:none!important}.m_4451eb3a{display:flex;align-items:center;justify-content:center}.m_4451eb3a:where([data-inline]){display:inline-flex}.m_f59ffda3{--chip-size-xs: calc(1.4375rem * var(--mantine-scale));--chip-size-sm: calc(1.75rem * var(--mantine-scale));--chip-size-md: calc(2rem * var(--mantine-scale));--chip-size-lg: calc(2.25rem * var(--mantine-scale));--chip-size-xl: calc(2.5rem * var(--mantine-scale));--chip-icon-size-xs: calc(.5625rem * var(--mantine-scale));--chip-icon-size-sm: calc(.75rem * var(--mantine-scale));--chip-icon-size-md: calc(.875rem * var(--mantine-scale));--chip-icon-size-lg: calc(1rem * var(--mantine-scale));--chip-icon-size-xl: calc(1.125rem * var(--mantine-scale));--chip-padding-xs: calc(1rem * var(--mantine-scale));--chip-padding-sm: calc(1.25rem * var(--mantine-scale));--chip-padding-md: calc(1.5rem * var(--mantine-scale));--chip-padding-lg: calc(1.75rem * var(--mantine-scale));--chip-padding-xl: calc(2rem * var(--mantine-scale));--chip-checked-padding-xs: calc(.5125rem * var(--mantine-scale));--chip-checked-padding-sm: calc(.625rem * var(--mantine-scale));--chip-checked-padding-md: calc(.73125rem * var(--mantine-scale));--chip-checked-padding-lg: calc(.84375rem * var(--mantine-scale));--chip-checked-padding-xl: calc(.98125rem * var(--mantine-scale));--chip-spacing-xs: calc(.625rem * var(--mantine-scale));--chip-spacing-sm: calc(.75rem * var(--mantine-scale));--chip-spacing-md: calc(1rem * var(--mantine-scale));--chip-spacing-lg: calc(1.25rem * var(--mantine-scale));--chip-spacing-xl: calc(1.375rem * var(--mantine-scale));--chip-size: var(--chip-size-sm);--chip-icon-size: var(--chip-icon-size-sm);--chip-padding: var(--chip-padding-sm);--chip-spacing: var(--chip-spacing-sm);--chip-checked-padding: var(--chip-checked-padding-sm);--chip-bg: var(--mantine-primary-color-filled);--chip-hover: var(--mantine-primary-color-filled-hover);--chip-color: var(--mantine-color-white);--chip-bd: calc(.0625rem * var(--mantine-scale)) solid transparent}.m_be049a53{display:inline-flex;align-items:center;user-select:none;border-radius:var(--chip-radius, 1000rem);height:var(--chip-size);font-size:var(--chip-fz, var(--mantine-font-size-sm));line-height:calc(var(--chip-size) - calc(.125rem * var(--mantine-scale)));padding-inline:var(--chip-padding);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-text)}.m_be049a53:where([data-checked]){padding:var(--chip-checked-padding)}.m_be049a53:where([data-disabled]){cursor:not-allowed;background-color:var(--mantine-color-disabled);color:var(--mantine-color-disabled-color)}:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]){background-color:var(--mantine-color-white);border:1px solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]){background-color:var(--mantine-color-dark-6);border:1px solid var(--mantine-color-dark-4)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]):hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]):hover{background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_3904c1af:not([data-disabled]):active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_3904c1af:not([data-disabled]):active{background-color:var(--mantine-color-dark-5)}}.m_3904c1af:not([data-disabled]):where([data-checked]){--chip-icon-color: var(--chip-color);border:var(--chip-bd)}@media(hover:hover){.m_3904c1af:not([data-disabled]):where([data-checked]):hover{background-color:var(--chip-hover)}}@media(hover:none){.m_3904c1af:not([data-disabled]):where([data-checked]):active{background-color:var(--chip-hover)}}.m_fa109255:not([data-disabled]),.m_f7e165c3:not([data-disabled]){border:calc(.0625rem * var(--mantine-scale)) solid transparent;color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]),:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]),:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]){background-color:var(--mantine-color-dark-5)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]):hover,:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]):hover{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]):hover,:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]):hover{background-color:var(--mantine-color-dark-4)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_fa109255:not([data-disabled]):active,:where([data-mantine-color-scheme=light]) .m_f7e165c3:not([data-disabled]):active{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa109255:not([data-disabled]):active,:where([data-mantine-color-scheme=dark]) .m_f7e165c3:not([data-disabled]):active{background-color:var(--mantine-color-dark-4)}}.m_fa109255:not([data-disabled]):where([data-checked]),.m_f7e165c3:not([data-disabled]):where([data-checked]){--chip-icon-color: var(--chip-color);color:var(--chip-color);background-color:var(--chip-bg)}@media(hover:hover){.m_fa109255:not([data-disabled]):where([data-checked]):hover,.m_f7e165c3:not([data-disabled]):where([data-checked]):hover{background-color:var(--chip-hover)}}@media(hover:none){.m_fa109255:not([data-disabled]):where([data-checked]):active,.m_f7e165c3:not([data-disabled]):where([data-checked]):active{background-color:var(--chip-hover)}}.m_9ac86df9{width:calc(var(--chip-icon-size) + (var(--chip-spacing) / 1.5));max-width:calc(var(--chip-icon-size) + (var(--chip-spacing) / 1.5));height:var(--chip-icon-size);display:flex;align-items:center;overflow:hidden}.m_d6d72580{width:var(--chip-icon-size);height:var(--chip-icon-size);display:block;color:var(--chip-icon-color, inherit)}.m_bde07329{width:0;height:0;padding:0;opacity:0;margin:0}.m_bde07329:focus-visible+.m_be049a53{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_b183c0a2{font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);padding:2px calc(var(--mantine-spacing-xs) / 2);border-radius:var(--mantine-radius-sm);font-size:var(--mantine-font-size-xs);margin:0;overflow:auto}:where([data-mantine-color-scheme=light]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-gray-0))}:where([data-mantine-color-scheme=dark]) .m_b183c0a2{background-color:var(--code-bg, var(--mantine-color-dark-6))}.m_b183c0a2[data-block]{padding:var(--mantine-spacing-xs)}.m_de3d2490{--cs-size: calc(1.75rem * var(--mantine-scale));--cs-radius: calc(62.5rem * var(--mantine-scale));-webkit-tap-highlight-color:transparent;border:none;appearance:none;display:block;line-height:1;position:relative;width:var(--cs-size);height:var(--cs-size);min-width:var(--cs-size);min-height:var(--cs-size);border-radius:var(--cs-radius);color:inherit;text-decoration:none}[data-mantine-color-scheme=light] .m_de3d2490{--alpha-overlay-color: var(--mantine-color-gray-3);--alpha-overlay-bg: var(--mantine-color-white)}[data-mantine-color-scheme=dark] .m_de3d2490{--alpha-overlay-color: var(--mantine-color-dark-4);--alpha-overlay-bg: var(--mantine-color-dark-7)}.m_862f3d1b{position:absolute;inset:0;border-radius:var(--cs-radius)}.m_98ae7f22{position:absolute;inset:0;border-radius:var(--cs-radius);z-index:1;box-shadow:#0000001a 0 0 0 calc(.0625rem * var(--mantine-scale)) inset,#00000026 0 0 calc(.25rem * var(--mantine-scale)) inset}.m_95709ac0{position:absolute;inset:0;border-radius:var(--cs-radius);background-size:calc(.5rem * var(--mantine-scale)) calc(.5rem * var(--mantine-scale));background-position:0 0,0 calc(.25rem * var(--mantine-scale)),calc(.25rem * var(--mantine-scale)) calc(-.25rem * var(--mantine-scale)),calc(-.25rem * var(--mantine-scale)) 0;background-image:linear-gradient(45deg,var(--alpha-overlay-color) 25%,transparent 25%),linear-gradient(-45deg,var(--alpha-overlay-color) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--alpha-overlay-color) 75%),linear-gradient(-45deg,var(--alpha-overlay-bg) 75%,var(--alpha-overlay-color) 75%)}.m_93e74e3{position:absolute;inset:0;border-radius:var(--cs-radius);z-index:2;display:flex;align-items:center;justify-content:center}.m_fee9c77{--cp-width-xs: calc(11.25rem * var(--mantine-scale));--cp-width-sm: calc(12.5rem * var(--mantine-scale));--cp-width-md: calc(15rem * var(--mantine-scale));--cp-width-lg: calc(17.5rem * var(--mantine-scale));--cp-width-xl: calc(20rem * var(--mantine-scale));--cp-preview-size-xs: calc(1.625rem * var(--mantine-scale));--cp-preview-size-sm: calc(2.125rem * var(--mantine-scale));--cp-preview-size-md: calc(2.625rem * var(--mantine-scale));--cp-preview-size-lg: calc(3.125rem * var(--mantine-scale));--cp-preview-size-xl: calc(3.375rem * var(--mantine-scale));--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));--cp-saturation-height-xs: calc(6.25rem * var(--mantine-scale));--cp-saturation-height-sm: calc(6.875rem * var(--mantine-scale));--cp-saturation-height-md: calc(7.5rem * var(--mantine-scale));--cp-saturation-height-lg: calc(8.75rem * var(--mantine-scale));--cp-saturation-height-xl: calc(10rem * var(--mantine-scale));--cp-preview-size: var(--cp-preview-size-sm);--cp-thumb-size: var(--cp-thumb-size-sm);--cp-saturation-height: var(--cp-saturation-height-sm);--cp-width: var(--cp-width-sm);--cp-body-spacing: var(--mantine-spacing-sm);width:var(--cp-width);padding:calc(.0625rem * var(--mantine-scale))}.m_fee9c77:where([data-full-width]){width:100%}.m_9dddfbac{width:var(--cp-preview-size);height:var(--cp-preview-size)}.m_bffecc3e{display:flex;padding-top:calc(var(--cp-body-spacing) / 2)}.m_3283bb96{flex:1}.m_3283bb96:not(:only-child){margin-inline-end:var(--mantine-spacing-xs)}.m_40d572ba{overflow:hidden;position:absolute;box-shadow:0 0 1px #0009;border:2px solid var(--mantine-color-white);width:var(--cp-thumb-size);height:var(--cp-thumb-size);border-radius:var(--cp-thumb-size);left:calc(var(--thumb-x-offset) - var(--cp-thumb-size) / 2);top:calc(var(--thumb-y-offset) - var(--cp-thumb-size) / 2)}.m_d8ee6fd8{height:unset!important;width:unset!important;min-width:0!important;min-height:0!important;margin:calc(.125rem * var(--mantine-scale));cursor:pointer;padding-bottom:calc(var(--cp-swatch-size) - calc(.25rem * var(--mantine-scale)));flex:0 0 calc(var(--cp-swatch-size) - calc(.25rem * var(--mantine-scale)))}.m_5711e686{margin-top:calc(.3125rem * var(--mantine-scale));margin-inline:calc(-.125rem * var(--mantine-scale));display:flex;flex-wrap:wrap}.m_5711e686:only-child{margin-top:0}.m_202a296e{--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));-webkit-tap-highlight-color:transparent;position:relative;height:var(--cp-saturation-height);border-radius:var(--mantine-radius-sm);margin:calc(var(--cp-thumb-size) / 2)}.m_202a296e:where([data-focus-ring=auto]):focus:focus-visible .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_202a296e:where([data-focus-ring=always]):focus .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_11b3db02{position:absolute;border-radius:var(--mantine-radius-sm);inset:calc(var(--cp-thumb-size) * -1 / 2 - calc(.0625rem * var(--mantine-scale)))}.m_d856d47d{--cp-thumb-size-xs: calc(.5rem * var(--mantine-scale));--cp-thumb-size-sm: calc(.75rem * var(--mantine-scale));--cp-thumb-size-md: calc(1rem * var(--mantine-scale));--cp-thumb-size-lg: calc(1.25rem * var(--mantine-scale));--cp-thumb-size-xl: calc(1.375rem * var(--mantine-scale));--cp-thumb-size: var(--cp-thumb-size, calc(.75rem * var(--mantine-scale)));position:relative;height:calc(var(--cp-thumb-size) + calc(.125rem * var(--mantine-scale)));margin-inline:calc(var(--cp-thumb-size) / 2);outline:none}.m_d856d47d+.m_d856d47d{margin-top:calc(.375rem * var(--mantine-scale))}.m_d856d47d:where([data-focus-ring=auto]):focus:focus-visible .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}.m_d856d47d:where([data-focus-ring=always]):focus .m_40d572ba{outline:2px solid var(--mantine-color-blue-filled)}:where([data-mantine-color-scheme=light]) .m_d856d47d{--slider-checkers: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d856d47d{--slider-checkers: var(--mantine-color-dark-4)}.m_8f327113{position:absolute;top:0;bottom:0;inset-inline:calc(var(--cp-thumb-size) * -1 / 2 - calc(.0625rem * var(--mantine-scale)));border-radius:10000rem}.m_b077c2bc{--ci-eye-dropper-icon-size-xs: calc(.875rem * var(--mantine-scale));--ci-eye-dropper-icon-size-sm: calc(1rem * var(--mantine-scale));--ci-eye-dropper-icon-size-md: calc(1.125rem * var(--mantine-scale));--ci-eye-dropper-icon-size-lg: calc(1.25rem * var(--mantine-scale));--ci-eye-dropper-icon-size-xl: calc(1.375rem * var(--mantine-scale));--ci-eye-dropper-icon-size: var(--ci-eye-dropper-icon-size-sm)}.m_66a028b5{--ci-button-size-xs: calc(1.375rem * var(--mantine-scale));--ci-button-size-sm: calc(1.625rem * var(--mantine-scale));--ci-button-size-md: calc(1.75rem * var(--mantine-scale));--ci-button-size-lg: calc(2rem * var(--mantine-scale));--ci-button-size-xl: calc(2.5rem * var(--mantine-scale));--ci-button-size: var(--ci-button-size-sm);width:var(--ci-button-size);height:var(--ci-button-size);min-width:var(--ci-button-size);min-height:var(--ci-button-size)}.m_c5ccdcab{--ci-preview-size-xs: calc(1rem * var(--mantine-scale));--ci-preview-size-sm: calc(1.125rem * var(--mantine-scale));--ci-preview-size-md: calc(1.375rem * var(--mantine-scale));--ci-preview-size-lg: calc(1.75rem * var(--mantine-scale));--ci-preview-size-xl: calc(2.25rem * var(--mantine-scale));--ci-preview-size: var(--ci-preview-size-sm)}.m_5ece2cd7{padding:calc(.5rem * var(--mantine-scale))}.m_7485cace{--container-size-xs: calc(33.75rem * var(--mantine-scale));--container-size-sm: calc(45rem * var(--mantine-scale));--container-size-md: calc(60rem * var(--mantine-scale));--container-size-lg: calc(71.25rem * var(--mantine-scale));--container-size-xl: calc(82.5rem * var(--mantine-scale));--container-size: var(--container-size-md)}.m_7485cace:where([data-strategy=block]){max-width:var(--container-size);padding-inline:var(--mantine-spacing-md);margin-inline:auto}.m_7485cace:where([data-strategy=block]):where([data-fluid]){max-width:100%}.m_7485cace:where([data-strategy=grid]){display:grid;grid-template-columns:1fr min(100%,var(--container-size)) 1fr;margin-inline:auto}.m_7485cace:where([data-strategy=grid])>*{grid-column:2}.m_7485cace:where([data-strategy=grid])>[data-breakout]{grid-column:1 / -1}.m_7485cace:where([data-strategy=grid])>[data-breakout]>[data-container]{max-width:var(--container-size);margin-inline:auto}.m_e2125a27{--dialog-size-xs: calc(10rem * var(--mantine-scale));--dialog-size-sm: calc(12.5rem * var(--mantine-scale));--dialog-size-md: calc(21.25rem * var(--mantine-scale));--dialog-size-lg: calc(25rem * var(--mantine-scale));--dialog-size-xl: calc(31.25rem * var(--mantine-scale));--dialog-size: var(--dialog-size-md);position:relative;width:var(--dialog-size);max-width:calc(100vw - var(--mantine-spacing-xl) * 2);min-height:calc(3.125rem * var(--mantine-scale))}.m_5abab665{position:absolute;top:calc(var(--mantine-spacing-md) / 2);inset-inline-end:calc(var(--mantine-spacing-md) / 2)}.m_3eebeb36{--divider-size-xs: calc(.0625rem * var(--mantine-scale));--divider-size-sm: calc(.125rem * var(--mantine-scale));--divider-size-md: calc(.1875rem * var(--mantine-scale));--divider-size-lg: calc(.25rem * var(--mantine-scale));--divider-size-xl: calc(.3125rem * var(--mantine-scale));--divider-size: var(--divider-size-xs)}:where([data-mantine-color-scheme=light]) .m_3eebeb36{--divider-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_3eebeb36{--divider-color: var(--mantine-color-dark-4)}.m_3eebeb36:where([data-orientation=horizontal]){border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color)}.m_3eebeb36:where([data-orientation=vertical]){border-inline-start:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);height:auto;align-self:stretch}.m_3eebeb36:where([data-with-label]){border:0}.m_9e365f20{display:flex;align-items:center;font-size:var(--mantine-font-size-xs);color:var(--mantine-color-dimmed);white-space:nowrap}.m_9e365f20:where([data-position=left]):before{display:none}.m_9e365f20:where([data-position=right]):after{display:none}.m_9e365f20:before{content:"";flex:1;height:calc(.0625rem * var(--mantine-scale));border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);margin-inline-end:var(--mantine-spacing-xs)}.m_9e365f20:after{content:"";flex:1;height:calc(.0625rem * var(--mantine-scale));border-top:var(--divider-size) var(--divider-border-style, solid) var(--divider-color);margin-inline-start:var(--mantine-spacing-xs)}.m_f11b401e{--drawer-size-xs: calc(20rem * var(--mantine-scale));--drawer-size-sm: calc(23.75rem * var(--mantine-scale));--drawer-size-md: calc(27.5rem * var(--mantine-scale));--drawer-size-lg: calc(38.75rem * var(--mantine-scale));--drawer-size-xl: calc(48.75rem * var(--mantine-scale));--drawer-size: var(--drawer-size-md);--drawer-offset: 0rem}.m_5a7c2c9{z-index:1000}.m_b8a05bbd{flex:var(--drawer-flex, 0 0 var(--drawer-size));height:var(--drawer-height, calc(100% - var(--drawer-offset) * 2));margin:var(--drawer-offset);max-width:calc(100% - var(--drawer-offset) * 2);max-height:calc(100% - var(--drawer-offset) * 2);overflow-y:auto}.m_b8a05bbd[data-hidden]{opacity:0!important;pointer-events:none}.m_31cd769a{display:flex;justify-content:var(--drawer-justify, flex-start);align-items:var(--drawer-align, flex-start)}.m_e9408a47{padding:var(--mantine-spacing-lg);padding-top:var(--mantine-spacing-xs);border-radius:var(--fieldset-radius, var(--mantine-radius-default));min-inline-size:auto}.m_84c9523a{border:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_84c9523a{border-color:var(--mantine-color-gray-3);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_84c9523a{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-7)}.m_ef274e49{border:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_ef274e49{border-color:var(--mantine-color-gray-3);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_ef274e49{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}.m_eda993d3{padding:0;border:0;border-radius:0}.m_90794832{font-size:var(--mantine-font-size-sm)}.m_74ca27fe{padding:0;margin-bottom:var(--mantine-spacing-sm)}.m_8478a6da{container:mantine-grid / inline-size}.m_410352e9{--grid-overflow: visible;--grid-margin: calc(var(--grid-gutter) / -2);--grid-col-padding: calc(var(--grid-gutter) / 2);overflow:var(--grid-overflow)}.m_dee7bd2f{width:calc(100% + var(--grid-gutter));display:flex;flex-wrap:wrap;justify-content:var(--grid-justify);align-items:var(--grid-align);margin:var(--grid-margin)}.m_96bdd299{--col-flex-grow: 0;--col-offset: 0rem;flex-shrink:0;order:var(--col-order);flex-basis:var(--col-flex-basis);width:var(--col-width);max-width:var(--col-max-width);flex-grow:var(--col-flex-grow);margin-inline-start:var(--col-offset);padding:var(--grid-col-padding)}.m_bcb3f3c2{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=light]) .m_bcb3f3c2{background-color:var(--mark-bg-light)}:where([data-mantine-color-scheme=dark]) .m_bcb3f3c2{background-color:var(--mark-bg-dark)}.m_9e117634{display:block;object-fit:var(--image-object-fit, cover);width:100%;border-radius:var(--image-radius, 0)}@keyframes m_885901b1{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(2.8)}}.m_e5262200{--indicator-size: calc(.625rem * var(--mantine-scale));--indicator-color: var(--mantine-primary-color-filled);position:relative;display:block}.m_e5262200:where([data-inline]){display:inline-block}.m_760d1fb1{position:absolute;top:var(--indicator-top);left:var(--indicator-left);right:var(--indicator-right);bottom:var(--indicator-bottom);transform:translate(var(--indicator-translate-x),var(--indicator-translate-y));min-width:var(--indicator-size);height:var(--indicator-size);border-radius:var(--indicator-radius, 1000rem);z-index:var(--indicator-z-index, 200);display:flex;align-items:center;justify-content:center;font-size:var(--mantine-font-size-xs);background-color:var(--indicator-color);color:var(--indicator-text-color, var(--mantine-color-white));white-space:nowrap}.m_760d1fb1:before{content:"";position:absolute;inset:0;background-color:var(--indicator-color);border-radius:var(--indicator-radius, 1000rem);z-index:-1}.m_760d1fb1:where([data-with-label]){padding-inline:calc(var(--mantine-spacing-xs) / 2)}.m_760d1fb1:where([data-with-border]){border:2px solid var(--mantine-color-body)}.m_760d1fb1[data-processing]:before{animation:m_885901b1 1s linear infinite}.m_dc6f14e2{--kbd-fz-xs: calc(.625rem * var(--mantine-scale));--kbd-fz-sm: calc(.75rem * var(--mantine-scale));--kbd-fz-md: calc(.875rem * var(--mantine-scale));--kbd-fz-lg: calc(1rem * var(--mantine-scale));--kbd-fz-xl: calc(1.25rem * var(--mantine-scale));--kbd-fz: var(--kbd-fz-sm);font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);font-weight:700;font-size:var(--kbd-fz);border-radius:var(--mantine-radius-sm);border:calc(.0625rem * var(--mantine-scale)) solid;border-bottom-width:calc(.1875rem * var(--mantine-scale));unicode-bidi:embed;text-align:center;padding:.12em .45em}:where([data-mantine-color-scheme=light]) .m_dc6f14e2{border-color:var(--mantine-color-gray-3);color:var(--mantine-color-gray-7);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_dc6f14e2{border-color:var(--mantine-color-dark-4);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-6)}.m_abbac491{--list-fz: var(--mantine-font-size-md);--list-lh: var(--mantine-line-height-md);--list-marker-gap: var(--mantine-spacing-lg);list-style-position:outside;font-size:var(--list-fz);line-height:var(--list-lh);margin:0;padding:0;padding-inline-start:var(--list-marker-gap)}.m_abbac491[data-type=none]{--list-marker-gap: 0}.m_abbac491:where([data-with-padding]){padding-inline-start:calc(var(--list-marker-gap) + var(--mantine-spacing-md))}.m_abb6bec2{white-space:normal;line-height:var(--list-lh)}.m_abb6bec2:where([data-with-icon]){list-style:none}.m_abb6bec2:where([data-with-icon]) .m_75cd9f71{--li-direction: row;--li-align: center}.m_abb6bec2:where(:not(:first-of-type)){margin-top:var(--list-spacing, 0)}.m_abb6bec2:where([data-centered]){line-height:1}.m_75cd9f71{display:inline-flex;flex-direction:var(--li-direction, column);align-items:var(--li-align, flex-start);white-space:normal}.m_60f83e5b{display:inline-block;vertical-align:middle;margin-inline-end:var(--mantine-spacing-sm)}.m_6e45937b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:var(--lo-z-index)}.m_e8eb006c{position:relative;z-index:calc(var(--lo-z-index) + 1)}.m_df587f17{z-index:var(--lo-z-index)}.m_dc9b7c9f{padding:calc(.25rem * var(--mantine-scale))}.m_9bfac126{color:var(--mantine-color-dimmed);font-weight:500;font-size:var(--mantine-font-size-xs);padding:calc(var(--mantine-spacing-xs) / 2) var(--mantine-spacing-sm);cursor:default}.m_efdf90cb{margin-top:calc(.25rem * var(--mantine-scale));margin-bottom:calc(.25rem * var(--mantine-scale));border-top:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_efdf90cb{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_efdf90cb{border-color:var(--mantine-color-dark-4)}.m_99ac2aa1{font-size:var(--mantine-font-size-sm);width:100%;padding:calc(var(--mantine-spacing-xs) / 1.5) var(--mantine-spacing-sm);border-radius:var(--popover-radius, var(--mantine-radius-default));color:var(--menu-item-color, var(--mantine-color-text));display:flex;align-items:center;user-select:none}.m_99ac2aa1:where([data-disabled],:disabled){color:var(--mantine-color-disabled-color);opacity:.6;cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_99ac2aa1:where(:hover,:focus):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-gray-1))}:where([data-mantine-color-scheme=dark]) .m_99ac2aa1:where(:hover,:focus):where(:not(:disabled,[data-disabled])){background-color:var(--menu-item-hover, var(--mantine-color-dark-4))}.m_99ac2aa1:where([data-sub-menu-item]){padding-inline-end:calc(.3125rem * var(--mantine-scale))}.m_5476e0d3{flex:1}.m_8b75e504{display:flex;justify-content:center;align-items:center}.m_8b75e504:where([data-position=left]){margin-inline-end:var(--mantine-spacing-xs)}.m_8b75e504:where([data-position=right]){margin-inline-start:var(--mantine-spacing-xs)}.m_b85b0bed{transform:rotate(-90deg)}:where([dir=rtl]) .m_b85b0bed{transform:rotate(90deg)}.m_9df02822{--modal-size-xs: calc(20rem * var(--mantine-scale));--modal-size-sm: calc(23.75rem * var(--mantine-scale));--modal-size-md: calc(27.5rem * var(--mantine-scale));--modal-size-lg: calc(38.75rem * var(--mantine-scale));--modal-size-xl: calc(48.75rem * var(--mantine-scale));--modal-size: var(--modal-size-md);--modal-y-offset: 5dvh;--modal-x-offset: 5vw}.m_9df02822[data-full-screen]{--modal-border-radius: 0 !important}.m_9df02822[data-full-screen] .m_54c44539{--modal-content-flex: 0 0 100%;--modal-content-max-height: auto;--modal-content-height: 100dvh}.m_9df02822[data-full-screen] .m_1f958f16{--modal-inner-y-offset: 0;--modal-inner-x-offset: 0}.m_9df02822[data-centered] .m_1f958f16{--modal-inner-align: center}.m_d0e2b9cd{border-start-start-radius:var(--modal-radius, var(--mantine-radius-default));border-start-end-radius:var(--modal-radius, var(--mantine-radius-default))}.m_54c44539{flex:var(--modal-content-flex, 0 0 var(--modal-size));max-width:100%;max-height:var(--modal-content-max-height, calc(100dvh - var(--modal-y-offset) * 2));height:var(--modal-content-height, auto);overflow-y:auto}.m_54c44539[data-full-screen]{border-radius:0}.m_54c44539[data-hidden]{opacity:0!important;pointer-events:none}.m_1f958f16{display:flex;justify-content:center;align-items:var(--modal-inner-align, flex-start);padding-top:var(--modal-inner-y-offset, var(--modal-y-offset));padding-bottom:var(--modal-inner-y-offset, var(--modal-y-offset));padding-inline:var(--modal-inner-x-offset, var(--modal-x-offset))}.m_7cda1cd6{--pill-fz-xs: calc(.625rem * var(--mantine-scale));--pill-fz-sm: calc(.75rem * var(--mantine-scale));--pill-fz-md: calc(.875rem * var(--mantine-scale));--pill-fz-lg: calc(1rem * var(--mantine-scale));--pill-fz-xl: calc(1.125rem * var(--mantine-scale));--pill-height-xs: calc(1.125rem * var(--mantine-scale));--pill-height-sm: calc(1.375rem * var(--mantine-scale));--pill-height-md: calc(1.5625rem * var(--mantine-scale));--pill-height-lg: calc(1.75rem * var(--mantine-scale));--pill-height-xl: calc(2rem * var(--mantine-scale));--pill-fz: var(--pill-fz-sm);--pill-height: var(--pill-height-sm);font-size:var(--pill-fz);flex:0;height:var(--pill-height);padding-inline:.8em;display:inline-flex;align-items:center;border-radius:var(--pill-radius, 1000rem);line-height:1;white-space:nowrap;user-select:none;-webkit-user-select:none;max-width:100%}:where([data-mantine-color-scheme=dark]) .m_7cda1cd6{background-color:var(--mantine-color-dark-7);color:var(--mantine-color-dark-0)}:where([data-mantine-color-scheme=light]) .m_7cda1cd6{color:var(--mantine-color-black)}.m_7cda1cd6:where([data-with-remove]:not(:has(button:disabled))){padding-inline-end:0}.m_7cda1cd6:where([data-disabled],:has(button:disabled)){cursor:not-allowed}:where([data-mantine-color-scheme=light]) .m_44da308b{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=light]) .m_44da308b:where([data-disabled],:has(button:disabled)){background-color:var(--mantine-color-disabled)}:where([data-mantine-color-scheme=light]) .m_e3a01f8{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=light]) .m_e3a01f8:where([data-disabled],:has(button:disabled)){background-color:var(--mantine-color-disabled)}.m_1e0e6180{cursor:inherit;overflow:hidden;height:100%;line-height:var(--pill-height);text-overflow:ellipsis}.m_ae386778{color:inherit;font-size:inherit;height:100%;min-height:unset;min-width:2em;width:unset;border-radius:0;padding-inline-start:.1em;padding-inline-end:.3em;flex:0;border-end-end-radius:var(--pill-radius, 50%);border-start-end-radius:var(--pill-radius, 50%)}.m_7cda1cd6[data-disabled]>.m_ae386778,.m_ae386778:disabled{display:none;background-color:transparent;width:.8em;min-width:.8em;padding:0;cursor:not-allowed}.m_7cda1cd6[data-disabled]>.m_ae386778>svg,.m_ae386778:disabled>svg{display:none}.m_ae386778>svg{pointer-events:none}.m_1dcfd90b{--pg-gap-xs: calc(.375rem * var(--mantine-scale));--pg-gap-sm: calc(.5rem * var(--mantine-scale));--pg-gap-md: calc(.625rem * var(--mantine-scale));--pg-gap-lg: calc(.75rem * var(--mantine-scale));--pg-gap-xl: calc(.75rem * var(--mantine-scale));--pg-gap: var(--pg-gap-sm);display:flex;align-items:center;gap:var(--pg-gap);flex-wrap:wrap}.m_45c4369d{background-color:transparent;appearance:none;min-width:calc(6.25rem * var(--mantine-scale));flex:1;border:0;font-size:inherit;height:1.6em;color:inherit;padding:0}.m_45c4369d::placeholder{color:var(--input-placeholder-color);opacity:1}.m_45c4369d:where([data-type=hidden],[data-type=auto]){height:calc(.0625rem * var(--mantine-scale));width:calc(.0625rem * var(--mantine-scale));top:0;left:0;pointer-events:none;position:absolute;opacity:0}.m_45c4369d:focus{outline:none}.m_45c4369d:where([data-type=auto]:focus){height:1.6em;visibility:visible;opacity:1;position:static}.m_45c4369d:where([data-pointer]:not([data-disabled],:disabled)){cursor:pointer}.m_45c4369d:where([data-disabled],:disabled){cursor:not-allowed}.m_f0824112{--nl-bg: var(--mantine-primary-color-light);--nl-hover: var(--mantine-primary-color-light-hover);--nl-color: var(--mantine-primary-color-light-color);display:flex;align-items:center;width:100%;padding:8px var(--mantine-spacing-sm);user-select:none}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_f0824112:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_f0824112:hover{background-color:var(--mantine-color-dark-6)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_f0824112:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_f0824112:active{background-color:var(--mantine-color-dark-6)}}.m_f0824112:where([data-disabled]){opacity:.4;pointer-events:none}.m_f0824112:where([data-active],[aria-current=page]){background-color:var(--nl-bg);color:var(--nl-color)}@media(hover:hover){.m_f0824112:where([data-active],[aria-current=page]):hover{background-color:var(--nl-hover)}}@media(hover:none){.m_f0824112:where([data-active],[aria-current=page]):active{background-color:var(--nl-hover)}}.m_f0824112:where([data-active],[aria-current=page]) .m_57492dcc{--description-opacity: .9;--description-color: var(--nl-color)}.m_690090b5{display:flex;align-items:center;justify-content:center;transition:transform .15s ease}.m_690090b5>svg{display:block}.m_690090b5:where([data-position=left]){margin-inline-end:var(--mantine-spacing-sm)}.m_690090b5:where([data-position=right]){margin-inline-start:var(--mantine-spacing-sm)}.m_690090b5:where([data-rotate]){transform:rotate(90deg)}.m_1f6ac4c4{font-size:var(--mantine-font-size-sm)}.m_f07af9d2{flex:1;overflow:hidden;text-overflow:ellipsis}.m_f07af9d2:where([data-no-wrap]){white-space:nowrap}.m_57492dcc{display:block;font-size:var(--mantine-font-size-xs);opacity:var(--description-opacity, 1);color:var(--description-color, var(--mantine-color-dimmed));overflow:hidden;text-overflow:ellipsis}:where([data-no-wrap]) .m_57492dcc{white-space:nowrap}.m_e17b862f{padding-inline-start:var(--nl-offset, var(--mantine-spacing-lg))}.m_1fd8a00b{transform:rotate(-90deg)}.m_a513464{--notification-radius: var(--mantine-radius-default);--notification-color: var(--mantine-primary-color-filled);overflow:hidden;box-sizing:border-box;position:relative;display:flex;align-items:center;padding-inline-start:calc(1.375rem * var(--mantine-scale));padding-inline-end:var(--mantine-spacing-xs);padding-top:var(--mantine-spacing-xs);padding-bottom:var(--mantine-spacing-xs);border-radius:var(--notification-radius);box-shadow:var(--mantine-shadow-lg)}.m_a513464:before{content:"";display:block;position:absolute;width:calc(.375rem * var(--mantine-scale));top:var(--notification-radius);bottom:var(--notification-radius);inset-inline-start:calc(.25rem * var(--mantine-scale));border-radius:var(--notification-radius);background-color:var(--notification-color)}:where([data-mantine-color-scheme=light]) .m_a513464{background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_a513464{background-color:var(--mantine-color-dark-6)}.m_a513464:where([data-with-icon]):before{display:none}:where([data-mantine-color-scheme=light]) .m_a513464:where([data-with-border]){border:1px solid var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_a513464:where([data-with-border]){border:1px solid var(--mantine-color-dark-4)}.m_a4ceffb{box-sizing:border-box;margin-inline-end:var(--mantine-spacing-md);width:calc(1.75rem * var(--mantine-scale));height:calc(1.75rem * var(--mantine-scale));border-radius:calc(1.75rem * var(--mantine-scale));display:flex;align-items:center;justify-content:center;background-color:var(--notification-color);color:var(--mantine-color-white)}.m_b0920b15{margin-inline-end:var(--mantine-spacing-md)}.m_a49ed24{flex:1;overflow:hidden;margin-inline-end:var(--mantine-spacing-xs)}.m_3feedf16{margin-bottom:calc(.125rem * var(--mantine-scale));overflow:hidden;text-overflow:ellipsis;font-size:var(--mantine-font-size-sm);line-height:var(--mantine-line-height-sm);font-weight:500}:where([data-mantine-color-scheme=light]) .m_3feedf16{color:var(--mantine-color-gray-9)}:where([data-mantine-color-scheme=dark]) .m_3feedf16{color:var(--mantine-color-white)}.m_3d733a3a{font-size:var(--mantine-font-size-sm);line-height:var(--mantine-line-height-sm);overflow:hidden;text-overflow:ellipsis}:where([data-mantine-color-scheme=light]) .m_3d733a3a{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_3d733a3a{color:var(--mantine-color-dark-0)}:where([data-mantine-color-scheme=light]) .m_3d733a3a:where([data-with-title]){color:var(--mantine-color-gray-6)}:where([data-mantine-color-scheme=dark]) .m_3d733a3a:where([data-with-title]){color:var(--mantine-color-dark-2)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_919a4d88:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_919a4d88:hover{background-color:var(--mantine-color-dark-8)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_919a4d88:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_919a4d88:active{background-color:var(--mantine-color-dark-8)}}.m_e2f5cd4e{--ni-right-section-width-xs: calc(1.0625rem * var(--mantine-scale));--ni-right-section-width-sm: calc(1.5rem * var(--mantine-scale));--ni-right-section-width-md: calc(1.6875rem * var(--mantine-scale));--ni-right-section-width-lg: calc(1.9375rem * var(--mantine-scale));--ni-right-section-width-xl: calc(2.125rem * var(--mantine-scale))}.m_95e17d22{--ni-chevron-size-xs: calc(.625rem * var(--mantine-scale));--ni-chevron-size-sm: calc(.875rem * var(--mantine-scale));--ni-chevron-size-md: calc(1rem * var(--mantine-scale));--ni-chevron-size-lg: calc(1.125rem * var(--mantine-scale));--ni-chevron-size-xl: calc(1.25rem * var(--mantine-scale));--ni-chevron-size: var(--ni-chevron-size-sm);display:flex;flex-direction:column;width:100%;height:calc(var(--input-height) - calc(.125rem * var(--mantine-scale)));max-width:calc(var(--ni-chevron-size) * 1.7);margin-inline-start:auto}.m_80b4b171{--control-border: 1px solid var(--input-bd);--control-radius: calc(var(--input-radius) - calc(.0625rem * var(--mantine-scale)));flex:0 0 50%;width:100%;padding:0;height:calc(var(--input-height) / 2 - calc(.0625rem * var(--mantine-scale)));border-inline-start:var(--control-border);display:flex;align-items:center;justify-content:center;color:var(--mantine-color-text);background-color:transparent;cursor:pointer}.m_80b4b171:where(:disabled){background-color:transparent;cursor:not-allowed;opacity:.6;color:var(--mantine-color-disabled-color)}.m_e2f5cd4e[data-error] :where(.m_80b4b171){color:var(--mantine-color-error)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_80b4b171:hover{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:hover{background-color:var(--mantine-color-dark-4)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_80b4b171:active{background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_80b4b171:active{background-color:var(--mantine-color-dark-4)}}.m_80b4b171:where(:first-of-type){border-radius:0;border-start-end-radius:var(--control-radius)}.m_80b4b171:last-of-type{border-radius:0;border-end-end-radius:var(--control-radius)}.m_4addd315{--pagination-control-size-xs: calc(1.375rem * var(--mantine-scale));--pagination-control-size-sm: calc(1.625rem * var(--mantine-scale));--pagination-control-size-md: calc(2rem * var(--mantine-scale));--pagination-control-size-lg: calc(2.375rem * var(--mantine-scale));--pagination-control-size-xl: calc(2.75rem * var(--mantine-scale));--pagination-control-size: var(--pagination-control-size-md);--pagination-control-fz: var(--mantine-font-size-md);--pagination-active-bg: var(--mantine-primary-color-filled)}.m_326d024a{display:flex;align-items:center;justify-content:center;border:calc(.0625rem * var(--mantine-scale)) solid;cursor:pointer;color:var(--mantine-color-text);height:var(--pagination-control-size);min-width:var(--pagination-control-size);font-size:var(--pagination-control-fz);line-height:1;border-radius:var(--pagination-control-radius, var(--mantine-radius-default))}.m_326d024a:where([data-with-padding]){padding:calc(var(--pagination-control-size) / 4)}.m_326d024a:where(:disabled,[data-disabled]){cursor:not-allowed;opacity:.4}:where([data-mantine-color-scheme=light]) .m_326d024a{border-color:var(--mantine-color-gray-4);background-color:var(--mantine-color-white)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_326d024a:hover:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-gray-0)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_326d024a:active:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-gray-0)}}:where([data-mantine-color-scheme=dark]) .m_326d024a{border-color:var(--mantine-color-dark-4);background-color:var(--mantine-color-dark-6)}@media(hover:hover){:where([data-mantine-color-scheme=dark]) .m_326d024a:hover:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=dark]) .m_326d024a:active:where(:not(:disabled,[data-disabled])){background-color:var(--mantine-color-dark-5)}}.m_326d024a:where([data-active]){background-color:var(--pagination-active-bg);border-color:var(--pagination-active-bg);color:var(--pagination-active-color, var(--mantine-color-white))}@media(hover:hover){.m_326d024a:where([data-active]):hover{background-color:var(--pagination-active-bg)}}@media(hover:none){.m_326d024a:where([data-active]):active{background-color:var(--pagination-active-bg)}}.m_4ad7767d{height:var(--pagination-control-size);min-width:var(--pagination-control-size);display:flex;align-items:center;justify-content:center;pointer-events:none}.m_f61ca620{--psi-button-size-xs: calc(1.375rem * var(--mantine-scale));--psi-button-size-sm: calc(1.625rem * var(--mantine-scale));--psi-button-size-md: calc(1.75rem * var(--mantine-scale));--psi-button-size-lg: calc(2rem * var(--mantine-scale));--psi-button-size-xl: calc(2.5rem * var(--mantine-scale));--psi-icon-size-xs: calc(.75rem * var(--mantine-scale));--psi-icon-size-sm: calc(.9375rem * var(--mantine-scale));--psi-icon-size-md: calc(1.0625rem * var(--mantine-scale));--psi-icon-size-lg: calc(1.1875rem * var(--mantine-scale));--psi-icon-size-xl: calc(1.3125rem * var(--mantine-scale));--psi-button-size: var(--psi-button-size-sm);--psi-icon-size: var(--psi-icon-size-sm)}.m_ccf8da4c{position:relative;overflow:hidden}.m_f2d85dd2{font-family:var(--mantine-font-family);background-color:transparent;border:0;padding-inline-end:var(--input-padding-inline-end);padding-inline-start:var(--input-padding-inline-start);position:absolute;inset:0;outline:0;font-size:inherit;line-height:var(--mantine-line-height);height:100%;width:100%;color:inherit}.m_ccf8da4c[data-disabled] .m_f2d85dd2,.m_f2d85dd2:disabled{cursor:not-allowed}.m_f2d85dd2::placeholder{color:var(--input-placeholder-color);opacity:1}.m_f2d85dd2::-ms-reveal{display:none}.m_b1072d44{width:var(--psi-button-size);height:var(--psi-button-size);min-width:var(--psi-button-size);min-height:var(--psi-button-size)}.m_b1072d44:disabled{display:none}.m_f1cb205a{--pin-input-size-xs: calc(1.875rem * var(--mantine-scale));--pin-input-size-sm: calc(2.25rem * var(--mantine-scale));--pin-input-size-md: calc(2.625rem * var(--mantine-scale));--pin-input-size-lg: calc(3.125rem * var(--mantine-scale));--pin-input-size-xl: calc(3.75rem * var(--mantine-scale));--pin-input-size: var(--pin-input-size-sm)}.m_cb288ead{width:var(--pin-input-size);height:var(--pin-input-size)}@keyframes m_81a374bd{0%{background-position:0 0}to{background-position:calc(2.5rem * var(--mantine-scale)) 0}}@keyframes m_e0fb7a86{0%{background-position:0 0}to{background-position:0 calc(2.5rem * var(--mantine-scale))}}.m_db6d6462{--progress-radius: var(--mantine-radius-default);--progress-size: var(--progress-size-md);--progress-size-xs: calc(.1875rem * var(--mantine-scale));--progress-size-sm: calc(.3125rem * var(--mantine-scale));--progress-size-md: calc(.5rem * var(--mantine-scale));--progress-size-lg: calc(.75rem * var(--mantine-scale));--progress-size-xl: calc(1rem * var(--mantine-scale));position:relative;height:var(--progress-size);border-radius:var(--progress-radius);overflow:hidden;display:flex}:where([data-mantine-color-scheme=light]) .m_db6d6462{background-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_db6d6462{background-color:var(--mantine-color-dark-4)}.m_db6d6462:where([data-orientation=vertical]){height:auto;width:var(--progress-size);flex-direction:column-reverse}.m_2242eb65{background-color:var(--progress-section-color);height:100%;width:var(--progress-section-size);display:flex;align-items:center;justify-content:center;overflow:hidden;background-size:calc(1.25rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));transition:width var(--progress-transition-duration, .1s) ease}.m_2242eb65:where([data-striped]){background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.m_2242eb65:where([data-animated]){animation:m_81a374bd 1s linear infinite}.m_2242eb65:where(:last-of-type){border-radius:0;border-start-end-radius:var(--progress-radius);border-end-end-radius:var(--progress-radius)}.m_2242eb65:where(:first-of-type){border-radius:0;border-start-start-radius:var(--progress-radius);border-end-start-radius:var(--progress-radius)}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65{width:100%;height:var(--progress-section-size);transition:height var(--progress-transition-duration, .1s) ease}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where([data-striped]){background-image:linear-gradient(135deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where([data-animated]){animation:m_e0fb7a86 1s linear infinite}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where(:last-of-type){border-radius:0;border-start-start-radius:var(--progress-radius);border-start-end-radius:var(--progress-radius)}.m_db6d6462:where([data-orientation=vertical]) .m_2242eb65:where(:first-of-type){border-radius:0;border-end-start-radius:var(--progress-radius);border-end-end-radius:var(--progress-radius)}.m_91e40b74{color:var(--progress-label-color, var(--mantine-color-white));font-weight:700;user-select:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:min(calc(var(--progress-size) * .65),calc(1.125rem * var(--mantine-scale)));line-height:1;padding-inline:calc(.25rem * var(--mantine-scale))}.m_db6d6462:where([data-orientation=vertical]) .m_91e40b74{writing-mode:vertical-rl}.m_9dc8ae12{--card-radius: var(--mantine-radius-default);display:block;width:100%;border-radius:var(--card-radius);cursor:pointer}.m_9dc8ae12 :where(*){cursor:inherit}.m_9dc8ae12:where([data-with-border]){border:calc(.0625rem * var(--mantine-scale)) solid transparent}:where([data-mantine-color-scheme=light]) .m_9dc8ae12:where([data-with-border]){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_9dc8ae12:where([data-with-border]){border-color:var(--mantine-color-dark-4)}.m_717d7ff6{--radio-size-xs: calc(1rem * var(--mantine-scale));--radio-size-sm: calc(1.25rem * var(--mantine-scale));--radio-size-md: calc(1.5rem * var(--mantine-scale));--radio-size-lg: calc(1.875rem * var(--mantine-scale));--radio-size-xl: calc(2.25rem * var(--mantine-scale));--radio-icon-size-xs: calc(.375rem * var(--mantine-scale));--radio-icon-size-sm: calc(.5rem * var(--mantine-scale));--radio-icon-size-md: calc(.625rem * var(--mantine-scale));--radio-icon-size-lg: calc(.875rem * var(--mantine-scale));--radio-icon-size-xl: calc(1rem * var(--mantine-scale));--radio-icon-size: var(--radio-icon-size-sm);--radio-size: var(--radio-size-sm);--radio-color: var(--mantine-primary-color-filled);--radio-icon-color: var(--mantine-color-white);position:relative;border:calc(.0625rem * var(--mantine-scale)) solid transparent;width:var(--radio-size);min-width:var(--radio-size);height:var(--radio-size);min-height:var(--radio-size);border-radius:var(--radio-radius, 10000px);transition:border-color .1s ease,background-color .1s ease;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}:where([data-mantine-color-scheme=light]) .m_717d7ff6{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_717d7ff6{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_717d7ff6[data-indeterminate],.m_717d7ff6[data-checked]{background-color:var(--radio-color);border-color:var(--radio-color)}.m_717d7ff6[data-indeterminate]>.m_3e4da632,.m_717d7ff6[data-checked]>.m_3e4da632{opacity:1;transform:none;color:var(--radio-icon-color)}.m_717d7ff6[data-disabled]{cursor:not-allowed;background-color:var(--mantine-color-disabled);border-color:var(--mantine-color-disabled-border)}.m_717d7ff6[data-disabled][data-checked]>.m_3e4da632{color:var(--mantine-color-disabled-color)}.m_2980836c[data-indeterminate]:not([data-disabled]),.m_2980836c[data-checked]:not([data-disabled]){background-color:transparent;border-color:var(--radio-color)}.m_2980836c[data-indeterminate]:not([data-disabled])>.m_3e4da632,.m_2980836c[data-checked]:not([data-disabled])>.m_3e4da632{color:var(--radio-color);opacity:1;transform:none}.m_3e4da632{display:block;width:var(--radio-icon-size);height:var(--radio-icon-size);color:transparent;pointer-events:none;transform:translateY(calc(.3125rem * var(--mantine-scale))) scale(.5);opacity:1;transition:transform .1s ease,opacity .1s ease}.m_f3f1af94{--radio-size-xs: calc(1rem * var(--mantine-scale));--radio-size-sm: calc(1.25rem * var(--mantine-scale));--radio-size-md: calc(1.5rem * var(--mantine-scale));--radio-size-lg: calc(1.875rem * var(--mantine-scale));--radio-size-xl: calc(2.25rem * var(--mantine-scale));--radio-size: var(--radio-size-sm);--radio-icon-size-xs: calc(.375rem * var(--mantine-scale));--radio-icon-size-sm: calc(.5rem * var(--mantine-scale));--radio-icon-size-md: calc(.625rem * var(--mantine-scale));--radio-icon-size-lg: calc(.875rem * var(--mantine-scale));--radio-icon-size-xl: calc(1rem * var(--mantine-scale));--radio-icon-size: var(--radio-icon-size-sm);--radio-icon-color: var(--mantine-color-white)}.m_89c4f5e4{position:relative;width:var(--radio-size);height:var(--radio-size);order:1}.m_89c4f5e4:where([data-label-position=left]){order:2}.m_f3ed6b2b{color:var(--radio-icon-color);opacity:var(--radio-icon-opacity, 0);transform:var(--radio-icon-transform, scale(.2) translateY(calc(.625rem * var(--mantine-scale))));transition:opacity .1s ease,transform .2s ease;pointer-events:none;width:var(--radio-icon-size);height:var(--radio-icon-size);position:absolute;top:calc(50% - var(--radio-icon-size) / 2);left:calc(50% - var(--radio-icon-size) / 2)}.m_8a3dbb89{border:calc(.0625rem * var(--mantine-scale)) solid;position:relative;appearance:none;width:var(--radio-size);height:var(--radio-size);border-radius:var(--radio-radius, var(--radio-size));margin:0;display:flex;align-items:center;justify-content:center;transition-property:background-color,border-color;transition-timing-function:ease;transition-duration:.1s;cursor:var(--mantine-cursor-type);-webkit-tap-highlight-color:transparent}:where([data-mantine-color-scheme=light]) .m_8a3dbb89{background-color:var(--mantine-color-white);border-color:var(--mantine-color-gray-4)}:where([data-mantine-color-scheme=dark]) .m_8a3dbb89{background-color:var(--mantine-color-dark-6);border-color:var(--mantine-color-dark-4)}.m_8a3dbb89:checked{background-color:var(--radio-color, var(--mantine-primary-color-filled));border-color:var(--radio-color, var(--mantine-primary-color-filled))}.m_8a3dbb89:checked+.m_f3ed6b2b{--radio-icon-opacity: 1;--radio-icon-transform: scale(1)}.m_8a3dbb89:disabled{cursor:not-allowed;background-color:var(--mantine-color-disabled);border-color:var(--mantine-color-disabled-border)}.m_8a3dbb89:disabled+.m_f3ed6b2b{--radio-icon-color: var(--mantine-color-disabled-color)}.m_8a3dbb89:where([data-error]){border-color:var(--mantine-color-error)}.m_1bfe9d39+.m_f3ed6b2b{--radio-icon-color: var(--radio-color)}.m_1bfe9d39:checked:not(:disabled){background-color:transparent;border-color:var(--radio-color)}.m_1bfe9d39:checked:not(:disabled)+.m_f3ed6b2b{--radio-icon-color: var(--radio-color);--radio-icon-opacity: 1;--radio-icon-transform: none}.m_f8d312f2{--rating-size-xs: calc(.875rem * var(--mantine-scale));--rating-size-sm: calc(1.125rem * var(--mantine-scale));--rating-size-md: calc(1.25rem * var(--mantine-scale));--rating-size-lg: calc(1.75rem * var(--mantine-scale));--rating-size-xl: calc(2rem * var(--mantine-scale));display:flex;width:max-content}.m_f8d312f2:where(:has(input:disabled)){pointer-events:none}.m_61734bb7{position:relative;transition:transform .1s ease}.m_61734bb7:where([data-active]){z-index:1;transform:scale(1.1)}.m_5662a89a{width:var(--rating-size);height:var(--rating-size);display:block}:where([data-mantine-color-scheme=light]) .m_5662a89a{fill:var(--mantine-color-gray-3);stroke:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_5662a89a{fill:var(--mantine-color-dark-3);stroke:var(--mantine-color-dark-3)}.m_5662a89a:where([data-filled]){fill:var(--rating-color);stroke:var(--rating-color)}.m_211007ba{height:0;width:0;position:absolute;overflow:hidden;white-space:nowrap;opacity:0;-webkit-tap-highlight-color:transparent}.m_211007ba:focus-visible+label{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_21342ee4{display:block;cursor:pointer;position:absolute;top:0;left:0;z-index:var(--rating-item-z-index, 0);-webkit-tap-highlight-color:transparent}.m_21342ee4:where([data-read-only]){cursor:default}.m_21342ee4:where(:last-of-type){position:relative}.m_fae05d6a{clip-path:var(--rating-symbol-clip-path)}.m_1b3c8819{--tooltip-radius: var(--mantine-radius-default);position:absolute;padding:calc(var(--mantine-spacing-xs) / 2) var(--mantine-spacing-xs);pointer-events:none;font-size:var(--mantine-font-size-sm);white-space:nowrap;border-radius:var(--tooltip-radius)}:where([data-mantine-color-scheme=light]) .m_1b3c8819{background-color:var(--tooltip-bg, var(--mantine-color-gray-9));color:var(--tooltip-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_1b3c8819{background-color:var(--tooltip-bg, var(--mantine-color-gray-2));color:var(--tooltip-color, var(--mantine-color-black))}.m_1b3c8819:where([data-multiline]){white-space:normal}.m_1b3c8819:where([data-fixed]){position:fixed}.m_f898399f{background-color:inherit;border:0;z-index:1}.m_b32e4812{position:relative;width:var(--rp-size);height:var(--rp-size);min-width:var(--rp-size);min-height:var(--rp-size);--rp-transition-duration: 0ms}.m_d43b5134{width:var(--rp-size);height:var(--rp-size);min-width:var(--rp-size);min-height:var(--rp-size);transform:rotate(-90deg)}.m_b1ca1fbf{stroke:var(--curve-color, var(--rp-curve-root-color));transition:stroke-dashoffset var(--rp-transition-duration) ease,stroke-dasharray var(--rp-transition-duration) ease,stroke var(--rp-transition-duration)}[data-mantine-color-scheme=light] .m_b1ca1fbf{--rp-curve-root-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_b1ca1fbf{--rp-curve-root-color: var(--mantine-color-dark-4)}.m_b23f9dc4{position:absolute;top:50%;transform:translateY(-50%);inset-inline:var(--rp-label-offset)}.m_cf365364{--sc-padding-xs: calc(.125rem * var(--mantine-scale)) calc(.375rem * var(--mantine-scale));--sc-padding-sm: calc(.1875rem * var(--mantine-scale)) calc(.625rem * var(--mantine-scale));--sc-padding-md: calc(.25rem * var(--mantine-scale)) calc(.875rem * var(--mantine-scale));--sc-padding-lg: calc(.4375rem * var(--mantine-scale)) calc(1rem * var(--mantine-scale));--sc-padding-xl: calc(.625rem * var(--mantine-scale)) calc(1.25rem * var(--mantine-scale));--sc-transition-duration: .2s;--sc-padding: var(--sc-padding-sm);--sc-transition-timing-function: ease;--sc-font-size: var(--mantine-font-size-sm);position:relative;display:inline-flex;flex-direction:row;width:auto;border-radius:var(--sc-radius, var(--mantine-radius-default));overflow:hidden;padding:calc(.25rem * var(--mantine-scale))}.m_cf365364:where([data-full-width]){display:flex}.m_cf365364:where([data-orientation=vertical]){display:flex;flex-direction:column;width:max-content}.m_cf365364:where([data-orientation=vertical]):where([data-full-width]){width:auto}:where([data-mantine-color-scheme=light]) .m_cf365364{background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_cf365364{background-color:var(--mantine-color-dark-8)}.m_9e182ccd{position:absolute;display:block;z-index:1;border-radius:var(--sc-radius, var(--mantine-radius-default))}:where([data-mantine-color-scheme=light]) .m_9e182ccd{box-shadow:var(--sc-shadow, none);background-color:var(--sc-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_9e182ccd{box-shadow:none;background-color:var(--sc-color, var(--mantine-color-dark-5))}.m_1738fcb2{-webkit-tap-highlight-color:transparent;font-weight:500;display:block;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;border-radius:var(--sc-radius, var(--mantine-radius-default));font-size:var(--sc-font-size);padding:var(--sc-padding);transition:color var(--sc-transition-duration) var(--sc-transition-timing-function);cursor:pointer;outline:var(--segmented-control-outline, none)}:where([data-mantine-color-scheme=light]) .m_1738fcb2{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2{color:var(--mantine-color-dark-1)}.m_1738fcb2:where([data-read-only]){cursor:default}fieldset:disabled .m_1738fcb2,.m_1738fcb2:where([data-disabled]){cursor:not-allowed;color:var(--mantine-color-disabled-color)}:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-active]){color:var(--sc-label-color, var(--mantine-color-black))}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-active]){color:var(--sc-label-color, var(--mantine-color-white))}.m_cf365364:where([data-initialized]) .m_1738fcb2:where([data-active]):before{display:none}.m_1738fcb2:where([data-active]):before{content:"";inset:0;z-index:0;position:absolute;border-radius:var(--sc-radius, var(--mantine-radius-default))}:where([data-mantine-color-scheme=light]) .m_1738fcb2:where([data-active]):before{box-shadow:var(--sc-shadow, none);background-color:var(--sc-color, var(--mantine-color-white))}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where([data-active]):before{box-shadow:none;background-color:var(--sc-color, var(--mantine-color-dark-5))}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):hover{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):hover{color:var(--mantine-color-white)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):active{color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_1738fcb2:where(:not([data-disabled],[data-active],[data-read-only])):active{color:var(--mantine-color-white)}}@media(hover:hover){fieldset:disabled .m_1738fcb2:hover{color:var(--mantine-color-disabled-color)!important}}@media(hover:none){fieldset:disabled .m_1738fcb2:active{color:var(--mantine-color-disabled-color)!important}}.m_1714d588{height:0;width:0;position:absolute;overflow:hidden;white-space:nowrap;opacity:0}.m_1714d588[data-focus-ring=auto]:focus:focus-visible+.m_1738fcb2{--segmented-control-outline: 2px solid var(--mantine-primary-color-filled)}.m_1714d588[data-focus-ring=always]:focus+.m_1738fcb2{--segmented-control-outline: 2px solid var(--mantine-primary-color-filled)}.m_69686b9b{position:relative;flex:1;z-index:2;transition:border-color var(--sc-transition-duration) var(--sc-transition-timing-function)}.m_cf365364[data-with-items-borders] :where(.m_69686b9b):before{content:"";position:absolute;top:0;bottom:0;inset-inline-start:0;background-color:var(--separator-color);width:calc(.0625rem * var(--mantine-scale));transition:background-color var(--sc-transition-duration) var(--sc-transition-timing-function)}.m_69686b9b[data-orientation=vertical]:before{top:0;inset-inline:0;bottom:auto;height:calc(.0625rem * var(--mantine-scale));width:auto}:where([data-mantine-color-scheme=light]) .m_69686b9b{--separator-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_69686b9b{--separator-color: var(--mantine-color-dark-4)}.m_69686b9b:first-of-type:before{--separator-color: transparent}[data-mantine-color-scheme] .m_69686b9b[data-active]:before,[data-mantine-color-scheme] .m_69686b9b[data-active]+.m_69686b9b:before{--separator-color: transparent}.m_78882f40{position:relative;z-index:2}.m_fa528724{--scp-filled-segment-color: var(--mantine-primary-color-filled);--scp-transition-duration: 0ms;--scp-thickness: calc(.625rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_fa528724{--scp-empty-segment-color: var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_fa528724{--scp-empty-segment-color: var(--mantine-color-dark-4)}.m_fa528724{position:relative;width:fit-content}.m_62e9e7e2{display:block;transform:var(--scp-rotation);overflow:hidden}.m_c573fb6f{transition:stroke-dashoffset var(--scp-transition-duration) ease,stroke-dasharray var(--scp-transition-duration) ease,stroke var(--scp-transition-duration)}.m_4fa340f2{position:absolute;margin:0;padding:0;inset-inline:0;text-align:center;z-index:1}.m_4fa340f2:where([data-position=bottom]){bottom:0;padding-inline:calc(var(--scp-thickness) * 2)}.m_4fa340f2:where([data-position=bottom]):where([data-orientation=down]){bottom:auto;top:0}.m_4fa340f2:where([data-position=center]){top:50%;padding-inline:calc(var(--scp-thickness) * 3)}.m_925c2d2c{container:simple-grid / inline-size}.m_2415a157{display:grid;grid-template-columns:repeat(var(--sg-cols),minmax(0,1fr));gap:var(--sg-spacing-y) var(--sg-spacing-x)}@keyframes m_299c329c{0%,to{opacity:.4}50%{opacity:1}}.m_18320242{height:var(--skeleton-height, auto);width:var(--skeleton-width, 100%);border-radius:var(--skeleton-radius, var(--mantine-radius-default));position:relative;transform:translateZ(0);-webkit-transform:translateZ(0)}.m_18320242:where([data-animate]):after{animation:m_299c329c 1.5s linear infinite}.m_18320242:where([data-visible]){overflow:hidden}.m_18320242:where([data-visible]):before{position:absolute;content:"";inset:0;z-index:10;background-color:var(--mantine-color-body)}.m_18320242:where([data-visible]):after{position:absolute;content:"";inset:0;z-index:11}:where([data-mantine-color-scheme=light]) .m_18320242:where([data-visible]):after{background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_18320242:where([data-visible]):after{background-color:var(--mantine-color-dark-4)}.m_dd36362e{--slider-size-xs: calc(.25rem * var(--mantine-scale));--slider-size-sm: calc(.375rem * var(--mantine-scale));--slider-size-md: calc(.5rem * var(--mantine-scale));--slider-size-lg: calc(.625rem * var(--mantine-scale));--slider-size-xl: calc(.75rem * var(--mantine-scale));--slider-size: var(--slider-size-md);--slider-radius: calc(62.5rem * var(--mantine-scale));--slider-color: var(--mantine-primary-color-filled);--slider-track-disabled-bg: var(--mantine-color-disabled);-webkit-tap-highlight-color:transparent;outline:none;height:calc(var(--slider-size) * 2);padding-inline:var(--slider-size);display:flex;flex-direction:column;align-items:center;touch-action:none;position:relative}[data-mantine-color-scheme=light] .m_dd36362e{--slider-track-bg: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_dd36362e{--slider-track-bg: var(--mantine-color-dark-4)}.m_c9357328{position:absolute;top:calc(-2.25rem * var(--mantine-scale));font-size:var(--mantine-font-size-xs);color:var(--mantine-color-white);padding:calc(var(--mantine-spacing-xs) / 2);border-radius:var(--mantine-radius-sm);white-space:nowrap;pointer-events:none;user-select:none;touch-action:none}:where([data-mantine-color-scheme=light]) .m_c9357328{background-color:var(--mantine-color-gray-9)}:where([data-mantine-color-scheme=dark]) .m_c9357328{background-color:var(--mantine-color-dark-4)}.m_c9a9a60a{position:absolute;display:flex;height:var(--slider-thumb-size);width:var(--slider-thumb-size);border:calc(.25rem * var(--mantine-scale)) solid;transform:translate(-50%,-50%);top:50%;cursor:pointer;border-radius:var(--slider-radius);align-items:center;justify-content:center;transition:box-shadow .1s ease,transform .1s ease;z-index:3;user-select:none;touch-action:none;outline-offset:calc(.125rem * var(--mantine-scale));left:var(--slider-thumb-offset)}:where([dir=rtl]) .m_c9a9a60a{left:auto;right:calc(var(--slider-thumb-offset) - var(--slider-thumb-size))}fieldset:disabled .m_c9a9a60a,.m_c9a9a60a:where([data-disabled]){display:none}.m_c9a9a60a:where([data-dragging]){transform:translate(-50%,-50%) scale(1.05);box-shadow:var(--mantine-shadow-sm)}:where([data-mantine-color-scheme=light]) .m_c9a9a60a{color:var(--slider-color);border-color:var(--slider-color);background-color:var(--mantine-color-white)}:where([data-mantine-color-scheme=dark]) .m_c9a9a60a{color:var(--mantine-color-white);border-color:var(--mantine-color-white);background-color:var(--slider-color)}.m_a8645c2{display:flex;align-items:center;width:100%;height:calc(var(--slider-size) * 2);cursor:pointer}fieldset:disabled .m_a8645c2,.m_a8645c2:where([data-disabled]){cursor:not-allowed}.m_c9ade57f{position:relative;width:100%;height:var(--slider-size)}.m_c9ade57f:where([data-inverted]:not([data-disabled])){--track-bg: var(--slider-color)}fieldset:disabled .m_c9ade57f:where([data-inverted]),.m_c9ade57f:where([data-inverted][data-disabled]){--track-bg: var(--slider-track-disabled-bg)}.m_c9ade57f:before{content:"";position:absolute;top:0;bottom:0;border-radius:var(--slider-radius);inset-inline:calc(var(--slider-size) * -1);background-color:var(--track-bg, var(--slider-track-bg));z-index:0}.m_38aeed47{position:absolute;z-index:1;top:0;bottom:0;background-color:var(--slider-color);border-radius:var(--slider-radius);width:var(--slider-bar-width);inset-inline-start:var(--slider-bar-offset)}.m_38aeed47:where([data-inverted]){background-color:var(--slider-track-bg)}fieldset:disabled .m_38aeed47:where(:not([data-inverted])),.m_38aeed47:where([data-disabled]:not([data-inverted])){background-color:var(--mantine-color-disabled-color)}.m_b7b0423a{position:absolute;inset-inline-start:calc(var(--mark-offset) - var(--slider-size) / 2);top:0;z-index:2;height:0;pointer-events:none}.m_dd33bc19{border:calc(.125rem * var(--mantine-scale)) solid;height:var(--slider-size);width:var(--slider-size);border-radius:calc(62.5rem * var(--mantine-scale));background-color:var(--mantine-color-white);pointer-events:none}:where([data-mantine-color-scheme=light]) .m_dd33bc19{border-color:var(--mantine-color-gray-2)}:where([data-mantine-color-scheme=dark]) .m_dd33bc19{border-color:var(--mantine-color-dark-4)}.m_dd33bc19:where([data-filled]){border-color:var(--slider-color)}.m_dd33bc19:where([data-filled]):where([data-disabled]){border-color:var(--mantine-color-disabled-border)}.m_68c77a5b{transform:translate(calc(-50% + var(--slider-size) / 2),calc(var(--mantine-spacing-xs) / 2));font-size:var(--mantine-font-size-sm);white-space:nowrap;cursor:pointer;user-select:none}:where([data-mantine-color-scheme=light]) .m_68c77a5b{color:var(--mantine-color-gray-6)}:where([data-mantine-color-scheme=dark]) .m_68c77a5b{color:var(--mantine-color-dark-2)}.m_559cce2d{position:relative}.m_559cce2d:where([data-has-spoiler]){margin-bottom:calc(1.5rem * var(--mantine-scale))}.m_b912df4e{display:flex;flex-direction:column;overflow:hidden;transition:max-height var(--spoiler-transition-duration, .2s) ease}.m_b9131032{position:absolute;inset-inline-start:0;top:100%;height:calc(1.5rem * var(--mantine-scale))}.m_6d731127{display:flex;flex-direction:column;align-items:var(--stack-align, stretch);justify-content:var(--stack-justify, flex-start);gap:var(--stack-gap, var(--mantine-spacing-md))}.m_cbb4ea7e{--stepper-icon-size-xs: calc(2.125rem * var(--mantine-scale));--stepper-icon-size-sm: calc(2.25rem * var(--mantine-scale));--stepper-icon-size-md: calc(2.625rem * var(--mantine-scale));--stepper-icon-size-lg: calc(3rem * var(--mantine-scale));--stepper-icon-size-xl: calc(3.25rem * var(--mantine-scale));--stepper-icon-size: var(--stepper-icon-size-md);--stepper-color: var(--mantine-primary-color-filled);--stepper-content-padding: var(--mantine-spacing-md);--stepper-spacing: var(--mantine-spacing-md);--stepper-radius: calc(62.5rem * var(--mantine-scale));--stepper-fz: var(--mantine-font-size-md);--stepper-outline-thickness: calc(.125rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_cbb4ea7e{--stepper-outline-color: var(--mantine-color-gray-2)}[data-mantine-color-scheme=dark] .m_cbb4ea7e{--stepper-outline-color: var(--mantine-color-dark-5)}.m_aaf89d0b{display:flex;flex-wrap:nowrap;align-items:center}.m_aaf89d0b:where([data-wrap]){flex-wrap:wrap;gap:var(--mantine-spacing-md) 0}.m_aaf89d0b:where([data-orientation=vertical]){flex-direction:column}.m_aaf89d0b:where([data-orientation=vertical]):where([data-icon-position=left]){align-items:flex-start}.m_aaf89d0b:where([data-orientation=vertical]):where([data-icon-position=right]){align-items:flex-end}.m_aaf89d0b:where([data-orientation=horizontal]){flex-direction:row}.m_2a371ac9{transition:background-color .15s ease;flex:1;height:var(--stepper-outline-thickness);margin-inline:var(--mantine-spacing-md);background-color:var(--stepper-outline-color)}.m_2a371ac9:where([data-active]){background-color:var(--stepper-color)}.m_78da155d{padding-top:var(--stepper-content-padding)}.m_cbb57068{--step-color: var(--stepper-color);display:flex;cursor:default}.m_cbb57068:where([data-allow-click]){cursor:pointer}.m_cbb57068:where([data-icon-position=left]){flex-direction:row}.m_cbb57068:where([data-icon-position=right]){flex-direction:row-reverse}.m_f56b1e2c{align-items:center}.m_833edb7e{--separator-spacing: calc(var(--mantine-spacing-xs) / 2);justify-content:flex-start;min-height:calc(var(--stepper-icon-size) + var(--mantine-spacing-xl) + var(--separator-spacing));margin-top:var(--separator-spacing);overflow:hidden}.m_833edb7e:where(:first-of-type){margin-top:0}.m_833edb7e:where(:last-of-type){min-height:auto}.m_833edb7e:where(:last-of-type) .m_6496b3f3{display:none}.m_818e70b{position:relative}.m_6496b3f3{top:calc(var(--stepper-icon-size) + var(--separator-spacing));inset-inline-start:calc(var(--stepper-icon-size) / 2);height:100vh;position:absolute;border-inline-start:var(--stepper-outline-thickness) solid var(--stepper-outline-color)}.m_6496b3f3:where([data-active]){border-color:var(--stepper-color)}.m_1959ad01{height:var(--stepper-icon-size);width:var(--stepper-icon-size);min-height:var(--stepper-icon-size);min-width:var(--stepper-icon-size);border-radius:var(--stepper-radius);font-size:var(--stepper-fz);display:flex;align-items:center;justify-content:center;position:relative;font-weight:700;transition:background-color .15s ease,border-color .15s ease;border:var(--stepper-outline-thickness) solid var(--stepper-outline-color);background-color:var(--stepper-outline-color)}:where([data-mantine-color-scheme=light]) .m_1959ad01{color:var(--mantine-color-gray-7)}:where([data-mantine-color-scheme=dark]) .m_1959ad01{color:var(--mantine-color-dark-1)}.m_1959ad01:where([data-progress]){border-color:var(--step-color)}.m_1959ad01:where([data-completed]){color:var(--stepper-icon-color, var(--mantine-color-white));background-color:var(--step-color);border-color:var(--step-color)}.m_a79331dc{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--stepper-icon-color, var(--mantine-color-white))}.m_1956aa2a{display:flex;flex-direction:column}.m_1956aa2a:where([data-icon-position=left]){margin-inline-start:var(--mantine-spacing-sm)}.m_1956aa2a:where([data-icon-position=right]){text-align:right;margin-inline-end:var(--mantine-spacing-sm)}:where([dir=rtl]) .m_1956aa2a:where([data-icon-position=right]){text-align:left}.m_12051f6c{font-weight:500;font-size:var(--stepper-fz);line-height:1}.m_164eea74{margin-top:calc(var(--stepper-spacing) / 3);margin-bottom:calc(var(--stepper-spacing) / 3);font-size:calc(var(--stepper-fz) - calc(.125rem * var(--mantine-scale)));line-height:1;color:var(--mantine-color-dimmed)}.m_5f93f3bb{--switch-height-xs: calc(1rem * var(--mantine-scale));--switch-height-sm: calc(1.25rem * var(--mantine-scale));--switch-height-md: calc(1.5rem * var(--mantine-scale));--switch-height-lg: calc(1.875rem * var(--mantine-scale));--switch-height-xl: calc(2.25rem * var(--mantine-scale));--switch-width-xs: calc(2rem * var(--mantine-scale));--switch-width-sm: calc(2.375rem * var(--mantine-scale));--switch-width-md: calc(2.875rem * var(--mantine-scale));--switch-width-lg: calc(3.5rem * var(--mantine-scale));--switch-width-xl: calc(4.5rem * var(--mantine-scale));--switch-thumb-size-xs: calc(.75rem * var(--mantine-scale));--switch-thumb-size-sm: calc(.875rem * var(--mantine-scale));--switch-thumb-size-md: calc(1.125rem * var(--mantine-scale));--switch-thumb-size-lg: calc(1.375rem * var(--mantine-scale));--switch-thumb-size-xl: calc(1.75rem * var(--mantine-scale));--switch-label-font-size-xs: calc(.3125rem * var(--mantine-scale));--switch-label-font-size-sm: calc(.375rem * var(--mantine-scale));--switch-label-font-size-md: calc(.4375rem * var(--mantine-scale));--switch-label-font-size-lg: calc(.5625rem * var(--mantine-scale));--switch-label-font-size-xl: calc(.6875rem * var(--mantine-scale));--switch-track-label-padding-xs: calc(.125rem * var(--mantine-scale));--switch-track-label-padding-sm: calc(.15625rem * var(--mantine-scale));--switch-track-label-padding-md: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-lg: calc(.1875rem * var(--mantine-scale));--switch-track-label-padding-xl: calc(.21875rem * var(--mantine-scale));--switch-height: var(--switch-height-sm);--switch-width: var(--switch-width-sm);--switch-thumb-size: var(--switch-thumb-size-sm);--switch-label-font-size: var(--switch-label-font-size-sm);--switch-track-label-padding: var(--switch-track-label-padding-sm);--switch-radius: calc(62.5rem * var(--mantine-scale));--switch-color: var(--mantine-primary-color-filled);--switch-disabled-color: var(--mantine-color-disabled);position:relative}.m_926b4011{height:0;width:0;opacity:0;margin:0;padding:0;position:absolute;overflow:hidden;white-space:nowrap}.m_9307d992{-webkit-tap-highlight-color:transparent;cursor:var(--switch-cursor, var(--mantine-cursor-type));overflow:hidden;position:relative;border-radius:var(--switch-radius);background-color:var(--switch-bg);height:var(--switch-height);min-width:var(--switch-width);margin:0;transition:background-color .15s ease,border-color .15s ease;appearance:none;display:flex;align-items:center;font-size:var(--switch-label-font-size);font-weight:600;order:var(--switch-order, 1);user-select:none;z-index:0;line-height:0;color:var(--switch-text-color)}.m_9307d992:where([data-without-labels]){width:var(--switch-width)}.m_926b4011:focus-visible+.m_9307d992{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_926b4011:checked+.m_9307d992{--switch-bg: var(--switch-color);--switch-text-color: var(--mantine-color-white)}.m_926b4011:disabled+.m_9307d992,.m_926b4011[data-disabled]+.m_9307d992{--switch-bg: var(--switch-disabled-color);--switch-cursor: not-allowed}[data-mantine-color-scheme=light] .m_9307d992{--switch-bg: var(--mantine-color-gray-3);--switch-text-color: var(--mantine-color-gray-6)}[data-mantine-color-scheme=dark] .m_9307d992{--switch-bg: var(--mantine-color-dark-5);--switch-text-color: var(--mantine-color-dark-1)}.m_9307d992[data-label-position=left]{--switch-order: 2}.m_93039a1d{position:absolute;z-index:1;border-radius:var(--switch-radius);display:flex;background-color:var(--switch-thumb-bg, var(--mantine-color-white));height:var(--switch-thumb-size);width:var(--switch-thumb-size);inset-inline-start:var(--switch-thumb-start, var(--switch-track-label-padding));transition:inset-inline-start .15s ease}.m_93039a1d:where([data-with-thumb-indicator]):before{content:"";width:40%;height:40%;background-color:var(--switch-bg);position:absolute;border-radius:var(--switch-radius);top:50%;left:50%;transform:translate(-50%,-50%)}.m_93039a1d>*{margin:auto}.m_926b4011:checked+*>.m_93039a1d{--switch-thumb-start: calc(100% - var(--switch-thumb-size) - var(--switch-track-label-padding))}.m_926b4011:disabled+*>.m_93039a1d,.m_926b4011[data-disabled]+*>.m_93039a1d{--switch-thumb-bg: var(--switch-thumb-bg-disabled)}[data-mantine-color-scheme=light] .m_93039a1d{--switch-thumb-bg-disabled: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_93039a1d{--switch-thumb-bg-disabled: var(--mantine-color-dark-3)}.m_8277e082{height:100%;display:grid;place-content:center;min-width:calc(var(--switch-width) - var(--switch-thumb-size));padding-inline:var(--switch-track-label-padding);margin-inline-start:calc(var(--switch-thumb-size) + var(--switch-track-label-padding));transition:margin .15s ease}.m_926b4011:checked+*>.m_8277e082{margin-inline-end:calc(var(--switch-thumb-size) + var(--switch-track-label-padding));margin-inline-start:0}.m_b23fa0ef{width:100%;border-collapse:collapse;border-spacing:0;line-height:var(--mantine-line-height);font-size:var(--mantine-font-size-sm);table-layout:var(--table-layout, auto);caption-side:var(--table-caption-side, bottom);border:none}:where([data-mantine-color-scheme=light]) .m_b23fa0ef{--table-hover-color: var(--mantine-color-gray-1);--table-striped-color: var(--mantine-color-gray-0);--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_b23fa0ef{--table-hover-color: var(--mantine-color-dark-5);--table-striped-color: var(--mantine-color-dark-6);--table-border-color: var(--mantine-color-dark-4)}.m_b23fa0ef:where([data-with-table-border]){border:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_b23fa0ef:where([data-tabular-nums]){font-variant-numeric:tabular-nums}.m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){font-weight:500}:where([data-mantine-color-scheme=light]) .m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_b23fa0ef:where([data-variant=vertical]) :where(.m_4e7aa4f3){background-color:var(--mantine-color-dark-6)}.m_4e7aa4f3{text-align:left}:where([dir=rtl]) .m_4e7aa4f3{text-align:right}.m_4e7aa4fd{border-bottom:none;background-color:transparent}@media(hover:hover){.m_4e7aa4fd:hover:where([data-hover]){background-color:var(--tr-hover-bg)}}@media(hover:none){.m_4e7aa4fd:active:where([data-hover]){background-color:var(--tr-hover-bg)}}.m_4e7aa4fd:where([data-with-row-border]){border-bottom:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_4e7aa4ef,.m_4e7aa4f3{padding:var(--table-vertical-spacing) var(--table-horizontal-spacing, var(--mantine-spacing-xs))}.m_4e7aa4ef:where([data-with-column-border]:not(:first-child)),.m_4e7aa4f3:where([data-with-column-border]:not(:first-child)){border-inline-start:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_4e7aa4ef:where([data-with-column-border]:not(:last-child)),.m_4e7aa4f3:where([data-with-column-border]:not(:last-child)){border-inline-end:calc(.0625rem * var(--mantine-scale)) solid var(--table-border-color)}.m_b2404537>:where(tr):where([data-with-row-border]:last-of-type){border-bottom:none}.m_b2404537>:where(tr):where([data-striped=odd]:nth-of-type(odd)){background-color:var(--table-striped-color)}.m_b2404537>:where(tr):where([data-striped=even]:nth-of-type(2n)){background-color:var(--table-striped-color)}.m_b2404537>:where(tr)[data-hover]{--tr-hover-bg: var(--table-highlight-on-hover-color, var(--table-hover-color))}.m_b242d975{top:var(--table-sticky-header-offset, 0);z-index:3}.m_b242d975:where([data-sticky]){position:sticky}.m_b242d975:where([data-sticky]) :where(.m_4e7aa4f3){position:sticky;top:var(--table-sticky-header-offset, 0);background-color:var(--mantine-color-body)}:where([data-with-table-border]) .m_b242d975[data-sticky]{position:sticky;top:var(--table-sticky-header-offset, 0);z-index:4;border-top:none}:where([data-with-table-border]) .m_b242d975[data-sticky]:before{content:"";display:block;position:absolute;left:0;top:calc(-.03125rem * var(--mantine-scale));width:100%;height:calc(.0625rem * var(--mantine-scale));background-color:var(--table-border-color);z-index:5}:where([data-with-table-border]) .m_b242d975[data-sticky] .m_4e7aa4f3:first-child{border-top:none}.m_9e5a3ac7{color:var(--mantine-color-dimmed)}.m_9e5a3ac7:where([data-side=top]){margin-bottom:var(--mantine-spacing-xs)}.m_9e5a3ac7:where([data-side=bottom]){margin-top:var(--mantine-spacing-xs)}.m_a100c15{overflow-x:var(--table-overflow)}.m_62259741{min-width:var(--table-min-width);max-height:var(--table-max-height)}.m_bcaa9990{display:flex;flex-direction:column;--toc-depth-offset: .8em}.m_375a65ef{display:block;padding:.3em .8em;font-size:var(--toc-size, var(--mantine-font-size-md));border-radius:var(--toc-radius, var(--mantine-radius-default));padding-left:max(calc(var(--depth-offset) * var(--toc-depth-offset)),.8em)}@media(hover:hover){:where([data-mantine-color-scheme=light]) .m_375a65ef:where(:hover):where(:not([data-variant=none])){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_375a65ef:where(:hover):where(:not([data-variant=none])){background-color:var(--mantine-color-dark-5)}}@media(hover:none){:where([data-mantine-color-scheme=light]) .m_375a65ef:where(:active):where(:not([data-variant=none])){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_375a65ef:where(:active):where(:not([data-variant=none])){background-color:var(--mantine-color-dark-5)}}.m_375a65ef:where([data-active]){background-color:var(--toc-bg);color:var(--toc-color)}[data-mantine-color-scheme=light] .m_89d60db1{--tab-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .m_89d60db1{--tab-border-color: var(--mantine-color-dark-4)}.m_89d60db1{display:var(--tabs-display);flex-direction:var(--tabs-flex-direction);--tabs-list-direction: row;--tabs-panel-grow: unset;--tabs-display: block;--tabs-flex-direction: row;--tabs-list-border-width: 0;--tabs-list-border-size: 0 0 var(--tabs-list-border-width) 0;--tabs-list-gap: unset;--tabs-list-line-bottom: 0;--tabs-list-line-top: unset;--tabs-list-line-start: 0;--tabs-list-line-end: 0;--tab-radius: var(--tabs-radius) var(--tabs-radius) 0 0;--tab-border-width: 0 0 var(--tabs-list-border-width) 0}.m_89d60db1[data-inverted]{--tabs-list-line-bottom: unset;--tabs-list-line-top: 0;--tab-radius: 0 0 var(--tabs-radius) var(--tabs-radius);--tab-border-width: var(--tabs-list-border-width) 0 0 0}.m_89d60db1[data-inverted] .m_576c9d4:before{top:0;bottom:unset}.m_89d60db1[data-orientation=vertical]{--tabs-list-line-start: unset;--tabs-list-line-end: 0;--tabs-list-line-top: 0;--tabs-list-line-bottom: 0;--tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;--tab-border-width: 0 var(--tabs-list-border-width) 0 0;--tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius);--tabs-list-direction: column;--tabs-panel-grow: 1;--tabs-display: flex}[dir=rtl] .m_89d60db1[data-orientation=vertical]{--tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);--tab-border-width: 0 0 0 var(--tabs-list-border-width);--tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0}.m_89d60db1[data-orientation=vertical][data-placement=right]{--tabs-flex-direction: row-reverse;--tabs-list-line-start: 0;--tabs-list-line-end: unset;--tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);--tab-border-width: 0 0 0 var(--tabs-list-border-width);--tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0}[dir=rtl] .m_89d60db1[data-orientation=vertical][data-placement=right]{--tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;--tab-border-width: 0 var(--tabs-list-border-width) 0 0;--tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius)}.m_89d60db1[data-variant=default]{--tabs-list-border-width: calc(.125rem * var(--mantine-scale))}[data-mantine-color-scheme=light] .m_89d60db1[data-variant=default]{--tab-hover-color: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_89d60db1[data-variant=default]{--tab-hover-color: var(--mantine-color-dark-6)}.m_89d60db1[data-variant=outline]{--tabs-list-border-width: calc(.0625rem * var(--mantine-scale))}.m_89d60db1[data-variant=pills]{--tabs-list-gap: calc(var(--mantine-spacing-sm) / 2)}[data-mantine-color-scheme=light] .m_89d60db1[data-variant=pills]{--tab-hover-color: var(--mantine-color-gray-0)}[data-mantine-color-scheme=dark] .m_89d60db1[data-variant=pills]{--tab-hover-color: var(--mantine-color-dark-6)}.m_89d33d6d{display:flex;flex-wrap:wrap;justify-content:var(--tabs-justify, flex-start);flex-direction:var(--tabs-list-direction);gap:var(--tabs-list-gap)}.m_89d33d6d:where([data-grow]) .m_4ec4dce6{flex:1}.m_b0c91715{flex-grow:var(--tabs-panel-grow)}.m_4ec4dce6{position:relative;padding:var(--mantine-spacing-xs) var(--mantine-spacing-md);font-size:var(--mantine-font-size-sm);white-space:nowrap;z-index:0;display:flex;align-items:center;line-height:1;user-select:none}.m_4ec4dce6:where(:disabled,[data-disabled]){opacity:.5;cursor:not-allowed}.m_4ec4dce6:focus{z-index:1}.m_fc420b1f{display:flex;align-items:center;justify-content:center}.m_fc420b1f:where([data-position=left]:not(:only-child)){margin-inline-end:var(--mantine-spacing-xs)}.m_fc420b1f:where([data-position=right]:not(:only-child)){margin-inline-start:var(--mantine-spacing-xs)}.m_42bbd1ae{flex:1;text-align:center}.m_576c9d4{position:relative}.m_576c9d4:before{content:"";position:absolute;border:1px solid var(--tab-border-color);bottom:var(--tabs-list-line-bottom);inset-inline-start:var(--tabs-list-line-start);inset-inline-end:var(--tabs-list-line-end);top:var(--tabs-list-line-top)}.m_539e827b{border-radius:var(--tab-radius);border-width:var(--tab-border-width);border-style:solid;border-color:transparent;background-color:transparent}.m_539e827b:where([data-active]){border-color:var(--tabs-color)}@media(hover:hover){.m_539e827b:hover{background-color:var(--tab-hover-color)}.m_539e827b:hover:where(:not([data-active])){border-color:var(--tab-border-color)}}@media(hover:none){.m_539e827b:active{background-color:var(--tab-hover-color)}.m_539e827b:active:where(:not([data-active])){border-color:var(--tab-border-color)}}@media(hover:hover){.m_539e827b:disabled:hover,.m_539e827b[data-disabled]:hover{background-color:transparent}}@media(hover:none){.m_539e827b:disabled:active,.m_539e827b[data-disabled]:active{background-color:transparent}}.m_6772fbd5{position:relative}.m_6772fbd5:before{content:"";position:absolute;border-color:var(--tab-border-color);border-width:var(--tabs-list-border-size);border-style:solid;bottom:var(--tabs-list-line-bottom);inset-inline-start:var(--tabs-list-line-start);inset-inline-end:var(--tabs-list-line-end);top:var(--tabs-list-line-top)}.m_b59ab47c{border-top:calc(.0625rem * var(--mantine-scale)) solid transparent;border-bottom:calc(.0625rem * var(--mantine-scale)) solid transparent;border-right:calc(.0625rem * var(--mantine-scale)) solid transparent;border-left:calc(.0625rem * var(--mantine-scale)) solid transparent;border-top-color:var(--tab-border-top-color);border-bottom-color:var(--tab-border-bottom-color);border-radius:var(--tab-radius);position:relative;--tab-border-bottom-color: transparent;--tab-border-top-color: transparent;--tab-border-inline-end-color: transparent;--tab-border-inline-start-color: transparent}.m_b59ab47c:where([data-active]):before{content:"";position:absolute;background-color:var(--tab-border-color);bottom:var(--tab-before-bottom, calc(-.0625rem * var(--mantine-scale)));left:var(--tab-before-left, calc(-.0625rem * var(--mantine-scale)));right:var(--tab-before-right, auto);top:var(--tab-before-top, auto);width:calc(.0625rem * var(--mantine-scale));height:calc(.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active]):after{content:"";position:absolute;background-color:var(--tab-border-color);bottom:var(--tab-after-bottom, calc(-.0625rem * var(--mantine-scale)));right:var(--tab-after-right, calc(-.0625rem * var(--mantine-scale)));left:var(--tab-after-left, auto);top:var(--tab-after-top, auto);width:calc(.0625rem * var(--mantine-scale));height:calc(.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active]){border-top-color:var(--tab-border-top-color);border-bottom-color:var(--tab-border-bottom-color);border-inline-start-color:var(--tab-border-inline-start-color);border-inline-end-color:var(--tab-border-inline-end-color);--tab-border-top-color: var(--tab-border-color);--tab-border-inline-start-color: var(--tab-border-color);--tab-border-inline-end-color: var(--tab-border-color);--tab-border-bottom-color: var(--mantine-color-body)}.m_b59ab47c:where([data-active])[data-inverted]{--tab-border-bottom-color: var(--tab-border-color);--tab-border-top-color: var(--mantine-color-body);--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-bottom: auto;--tab-after-top: calc(-.0625rem * var(--mantine-scale))}.m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=left]{--tab-border-inline-end-color: var(--mantine-color-body);--tab-border-inline-start-color: var(--tab-border-color);--tab-border-bottom-color: var(--tab-border-color);--tab-before-right: calc(-.0625rem * var(--mantine-scale));--tab-before-left: auto;--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-left: auto;--tab-after-right: calc(-.0625rem * var(--mantine-scale))}[dir=rtl] .m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=left]{--tab-before-right: auto;--tab-before-left: calc(-.0625rem * var(--mantine-scale));--tab-after-left: calc(-.0625rem * var(--mantine-scale));--tab-after-right: auto}.m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=right]{--tab-border-inline-start-color: var(--mantine-color-body);--tab-border-inline-end-color: var(--tab-border-color);--tab-border-bottom-color: var(--tab-border-color);--tab-before-left: calc(-.0625rem * var(--mantine-scale));--tab-before-right: auto;--tab-before-bottom: auto;--tab-before-top: calc(-.0625rem * var(--mantine-scale));--tab-after-right: auto;--tab-after-left: calc(-.0625rem * var(--mantine-scale))}[dir=rtl] .m_b59ab47c:where([data-active])[data-orientation=vertical][data-placement=right]{--tab-before-left: auto;--tab-before-right: calc(-.0625rem * var(--mantine-scale));--tab-after-right: calc(-.0625rem * var(--mantine-scale));--tab-after-left: auto}.m_c3381914{border-radius:var(--tabs-radius);background-color:var(--tab-bg);color:var(--tab-color);--tab-bg: transparent;--tab-color: inherit}@media(hover:hover){.m_c3381914:not([data-disabled]):hover{--tab-bg: var(--tab-hover-color)}}@media(hover:none){.m_c3381914:not([data-disabled]):active{--tab-bg: var(--tab-hover-color)}}.m_c3381914[data-active][data-active]{--tab-bg: var(--tabs-color);--tab-color: var(--tabs-text-color, var(--mantine-color-white))}@media(hover:hover){.m_c3381914[data-active][data-active]:hover{--tab-bg: var(--tabs-color)}}@media(hover:none){.m_c3381914[data-active][data-active]:active{--tab-bg: var(--tabs-color)}}.m_7341320d{--ti-size-xs: calc(1.125rem * var(--mantine-scale));--ti-size-sm: calc(1.375rem * var(--mantine-scale));--ti-size-md: calc(1.75rem * var(--mantine-scale));--ti-size-lg: calc(2.125rem * var(--mantine-scale));--ti-size-xl: calc(2.75rem * var(--mantine-scale));--ti-size: var(--ti-size-md);line-height:1;display:inline-flex;align-items:center;justify-content:center;position:relative;user-select:none;width:var(--ti-size);height:var(--ti-size);min-width:var(--ti-size);min-height:var(--ti-size);border-radius:var(--ti-radius, var(--mantine-radius-default));background:var(--ti-bg, var(--mantine-primary-color-filled));color:var(--ti-color, var(--mantine-color-white));border:var(--ti-bd, 1px solid transparent)}.m_43657ece{--offset: calc(var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2);--tl-bullet-size: calc(1.25rem * var(--mantine-scale));--tl-line-width: calc(.25rem * var(--mantine-scale));--tl-radius: calc(62.5rem * var(--mantine-scale));--tl-color: var(--mantine-primary-color-filled)}.m_43657ece:where([data-align=left]){padding-inline-start:var(--offset)}.m_43657ece:where([data-align=right]){padding-inline-end:var(--offset)}.m_2ebe8099{font-weight:500;line-height:1;margin-bottom:calc(var(--mantine-spacing-xs) / 2)}.m_436178ff{--item-border: var(--tl-line-width) var(--tli-border-style, solid) var(--item-border-color);position:relative;color:var(--mantine-color-text)}.m_436178ff:before{content:"";pointer-events:none;position:absolute;top:0;left:var(--timeline-line-left, 0);right:var(--timeline-line-right, 0);bottom:calc(var(--mantine-spacing-xl) * -1);border-inline-start:var(--item-border);display:var(--timeline-line-display, none)}.m_43657ece[data-align=left] .m_436178ff:before{--timeline-line-left: calc(var(--tl-line-width) * -1);--timeline-line-right: auto}[dir=rtl] .m_43657ece[data-align=left] .m_436178ff:before{--timeline-line-left: auto;--timeline-line-right: calc(var(--tl-line-width) * -1)}.m_43657ece[data-align=right] .m_436178ff:before{--timeline-line-left: auto;--timeline-line-right: calc(var(--tl-line-width) * -1)}[dir=rtl] .m_43657ece[data-align=right] .m_436178ff:before{--timeline-line-left: calc(var(--tl-line-width) * -1);--timeline-line-right: auto}.m_43657ece:where([data-align=left]) .m_436178ff{padding-inline-start:var(--offset);text-align:left}.m_43657ece:where([data-align=right]) .m_436178ff{padding-inline-end:var(--offset);text-align:right}:where([data-mantine-color-scheme=light]) .m_436178ff{--item-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_436178ff{--item-border-color: var(--mantine-color-dark-4)}.m_436178ff:where([data-line-active]):before{border-color:var(--tli-color, var(--tl-color))}.m_436178ff:where(:not(:last-of-type)){--timeline-line-display: block}.m_436178ff:where(:not(:first-of-type)){margin-top:var(--mantine-spacing-xl)}.m_8affcee1{width:var(--tl-bullet-size);height:var(--tl-bullet-size);border-radius:var(--tli-radius, var(--tl-radius));border:var(--tl-line-width) solid;background-color:var(--mantine-color-body);position:absolute;top:0;display:flex;align-items:center;justify-content:center;color:var(--mantine-color-text)}:where([data-mantine-color-scheme=light]) .m_8affcee1{border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8affcee1{border-color:var(--mantine-color-dark-4)}.m_43657ece:where([data-align=left]) .m_8affcee1{left:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);right:auto}:where([dir=rtl]) .m_43657ece:where([data-align=left]) .m_8affcee1{left:auto;right:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1)}.m_43657ece:where([data-align=right]) .m_8affcee1{left:auto;right:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1)}:where([dir=rtl]) .m_43657ece:where([data-align=right]) .m_8affcee1{left:calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);right:auto}.m_8affcee1:where([data-with-child]){border-width:var(--tl-line-width)}:where([data-mantine-color-scheme=light]) .m_8affcee1:where([data-with-child]){background-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_8affcee1:where([data-with-child]){background-color:var(--mantine-color-dark-4)}.m_8affcee1:where([data-active]){border-color:var(--tli-color, var(--tl-color));background-color:var(--mantine-color-white);color:var(--tl-icon-color, var(--mantine-color-white))}.m_8affcee1:where([data-active]):where([data-with-child]){background-color:var(--tli-color, var(--tl-color));color:var(--tl-icon-color, var(--mantine-color-white))}.m_43657ece:where([data-align=left]) .m_540e8f41{padding-inline-start:var(--offset);text-align:left}:where([dir=rtl]) .m_43657ece:where([data-align=left]) .m_540e8f41{text-align:right}.m_43657ece:where([data-align=right]) .m_540e8f41{padding-inline-end:var(--offset);text-align:right}:where([dir=rtl]) .m_43657ece:where([data-align=right]) .m_540e8f41{text-align:left}.m_8a5d1357{margin:0;font-weight:var(--title-fw);font-size:var(--title-fz);line-height:var(--title-lh);font-family:var(--mantine-font-family-headings);text-wrap:var(--title-text-wrap, var(--mantine-heading-text-wrap))}.m_8a5d1357:where([data-line-clamp]){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--title-line-clamp);-webkit-box-orient:vertical}.m_f698e191{--level-offset: var(--mantine-spacing-lg);margin:0;padding:0;user-select:none}.m_75f3ecf{margin:0;padding:0}.m_f6970eb1{cursor:pointer;list-style:none;margin:0;padding:0;outline:0}.m_f6970eb1:focus-visible>.m_dc283425{outline:2px solid var(--mantine-primary-color-filled);outline-offset:calc(.125rem * var(--mantine-scale))}.m_dc283425{padding-inline-start:var(--label-offset)}:where([data-mantine-color-scheme=light]) .m_dc283425:where([data-selected]){background-color:var(--mantine-color-gray-1)}:where([data-mantine-color-scheme=dark]) .m_dc283425:where([data-selected]){background-color:var(--mantine-color-dark-5)}.m_d08caa0 :first-child{margin-top:0}.m_d08caa0 :last-child{margin-bottom:0}.m_d08caa0 :where(h1,h2,h3,h4,h5,h6){margin-bottom:var(--mantine-spacing-xs);text-wrap:var(--mantine-heading-text-wrap);font-family:var(--mantine-font-family-headings)}.m_d08caa0 :where(h1){margin-top:calc(1.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h1-font-size);line-height:var(--mantine-h1-line-height);font-weight:var(--mantine-h1-font-weight)}.m_d08caa0 :where(h2){margin-top:var(--mantine-spacing-xl);font-size:var(--mantine-h2-font-size);line-height:var(--mantine-h2-line-height);font-weight:var(--mantine-h2-font-weight)}.m_d08caa0 :where(h3){margin-top:calc(.8 * var(--mantine-spacing-xl));font-size:var(--mantine-h3-font-size);line-height:var(--mantine-h3-line-height);font-weight:var(--mantine-h3-font-weight)}.m_d08caa0 :where(h4){margin-top:calc(.8 * var(--mantine-spacing-xl));font-size:var(--mantine-h4-font-size);line-height:var(--mantine-h4-line-height);font-weight:var(--mantine-h4-font-weight)}.m_d08caa0 :where(h5){margin-top:calc(.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h5-font-size);line-height:var(--mantine-h5-line-height);font-weight:var(--mantine-h5-font-weight)}.m_d08caa0 :where(h6){margin-top:calc(.5 * var(--mantine-spacing-xl));font-size:var(--mantine-h6-font-size);line-height:var(--mantine-h6-line-height);font-weight:var(--mantine-h6-font-weight)}.m_d08caa0 :where(img){max-width:100%;margin-bottom:var(--mantine-spacing-xs)}.m_d08caa0 :where(p){margin-top:0;margin-bottom:var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(mark){background-color:var(--mantine-color-yellow-2);color:inherit}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(mark){background-color:var(--mantine-color-yellow-5);color:var(--mantine-color-black)}.m_d08caa0 :where(a){color:var(--mantine-color-anchor);text-decoration:none}@media(hover:hover){.m_d08caa0 :where(a):hover{text-decoration:underline}}@media(hover:none){.m_d08caa0 :where(a):active{text-decoration:underline}}.m_d08caa0 :where(hr){margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);border:0;border-top:calc(.0625rem * var(--mantine-scale)) solid}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(hr){border-color:var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(hr){border-color:var(--mantine-color-dark-3)}.m_d08caa0 :where(pre){padding:var(--mantine-spacing-xs);line-height:var(--mantine-line-height);margin:0;margin-top:var(--mantine-spacing-md);margin-bottom:var(--mantine-spacing-md);overflow-x:auto;font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs);border-radius:var(--mantine-radius-sm)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(pre){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(pre){background-color:var(--mantine-color-dark-8)}.m_d08caa0 :where(pre) :where(code){background-color:transparent;padding:0;border-radius:0;color:inherit;border:0}.m_d08caa0 :where(kbd){--kbd-fz: calc(.75rem * var(--mantine-scale));--kbd-padding: calc(.1875rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));font-family:var(--mantine-font-family-monospace);line-height:var(--mantine-line-height);font-weight:700;padding:var(--kbd-padding);font-size:var(--kbd-fz);border-radius:var(--mantine-radius-sm);border:calc(.0625rem * var(--mantine-scale)) solid;border-bottom-width:calc(.1875rem * var(--mantine-scale))}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(kbd){border-color:var(--mantine-color-gray-3);color:var(--mantine-color-gray-7);background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(kbd){border-color:var(--mantine-color-dark-3);color:var(--mantine-color-dark-0);background-color:var(--mantine-color-dark-5)}.m_d08caa0 :where(code){line-height:var(--mantine-line-height);padding:calc(.0625rem * var(--mantine-scale)) calc(.3125rem * var(--mantine-scale));border-radius:var(--mantine-radius-sm);font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(code){background-color:var(--mantine-color-gray-0);color:var(--mantine-color-black)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(code){background-color:var(--mantine-color-dark-5);color:var(--mantine-color-white)}.m_d08caa0 :where(ul,ol):not([data-type=taskList]){margin-bottom:var(--mantine-spacing-md);padding-inline-start:var(--mantine-spacing-xl);list-style-position:outside}.m_d08caa0 :where(table){width:100%;border-collapse:collapse;caption-side:bottom;margin-bottom:var(--mantine-spacing-md)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(table){--table-border-color: var(--mantine-color-gray-3)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(table){--table-border-color: var(--mantine-color-dark-4)}.m_d08caa0 :where(table) :where(caption){margin-top:var(--mantine-spacing-xs);font-size:var(--mantine-font-size-sm);color:var(--mantine-color-dimmed)}.m_d08caa0 :where(table) :where(th){text-align:left;font-weight:700;font-size:var(--mantine-font-size-sm);padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm)}.m_d08caa0 :where(table) :where(thead th){border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d08caa0 :where(table) :where(tfoot th){border-top:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color)}.m_d08caa0 :where(table) :where(td){padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm);border-bottom:calc(.0625rem * var(--mantine-scale)) solid;border-color:var(--table-border-color);font-size:var(--mantine-font-size-sm)}.m_d08caa0 :where(table) :where(tr:last-of-type td){border-bottom:0}.m_d08caa0 :where(blockquote){font-size:var(--mantine-font-size-lg);line-height:var(--mantine-line-height);margin:var(--mantine-spacing-md) 0;border-radius:var(--mantine-radius-sm);padding:var(--mantine-spacing-md) var(--mantine-spacing-lg)}:where([data-mantine-color-scheme=light]) .m_d08caa0 :where(blockquote){background-color:var(--mantine-color-gray-0)}:where([data-mantine-color-scheme=dark]) .m_d08caa0 :where(blockquote){background-color:var(--mantine-color-dark-8)}}@layer xyflow{.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}}@layer base{:root{--made-with-panda: "🐼"}*,:before,:after,::backdrop{--blur: ;--brightness: ;--contrast: ;--grayscale: ;--hue-rotate: ;--invert: ;--saturate: ;--sepia: ;--drop-shadow: ;--backdrop-blur: ;--backdrop-brightness: ;--backdrop-contrast: ;--backdrop-grayscale: ;--backdrop-hue-rotate: ;--backdrop-invert: ;--backdrop-opacity: ;--backdrop-saturate: ;--backdrop-sepia: ;--gradient-from-position: ;--gradient-to-position: ;--gradient-via-position: ;--scroll-snap-strictness: proximity;--border-spacing-x: 0;--border-spacing-y: 0;--translate-x: 0;--translate-y: 0;--rotate: 0;--rotate-x: 0;--rotate-y: 0;--skew-x: 0;--skew-y: 0;--scale-x: 1;--scale-y: 1}:where(:root,:host){--likec4-app-font-default: "IBM Plex Sans",'ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'}:where([data-likec4-text-size=xs]){--likec4-text-size: var(--font-sizes-likec4-xs)}:where([data-likec4-text-size=sm]){--likec4-text-size: var(--font-sizes-likec4-sm)}:where([data-likec4-text-size=md]){--likec4-text-size: var(--font-sizes-likec4-md)}:where([data-likec4-text-size=lg]){--likec4-text-size: var(--font-sizes-likec4-lg)}:where([data-likec4-text-size=xl]){--likec4-text-size: var(--font-sizes-likec4-xl)}:where([data-likec4-spacing=xs]){--likec4-spacing: var(--spacing-likec4-xs)}:where([data-likec4-spacing=sm]){--likec4-spacing: var(--spacing-likec4-sm)}:where([data-likec4-spacing=md]){--likec4-spacing: var(--spacing-likec4-md)}:where([data-likec4-spacing=lg]){--likec4-spacing: var(--spacing-likec4-lg)}:where([data-likec4-spacing=xl]){--likec4-spacing: var(--spacing-likec4-xl)}.likec4-shadow-root{--mantine-font-family: var(--likec4-app-font, var(--likec4-app-font-default));--mantine-font-family-headings: var(--likec4-app-font, var(--likec4-app-font-default));display:contents}.likec4-shadow-root dialog{color:var(--mantine-color-text)}.likec4-edge-label-container{position:absolute;top:var(--spacing-0);left:var(--spacing-0);width:auto;height:auto}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-edge-label-container{display:none}:where([data-likec4-zoom-small=true]) .likec4-edge-label-container{display:none}.likec4-root{padding:var(--spacing-0);margin:var(--spacing-0);border:0px solid transparent;background:var(--colors-transparent);overflow:hidden;position:relative;container-name:likec4-root;container-type:size;width:var(--sizes-100\\%);height:var(--sizes-100\\%)}.likec4-root .react-flow{--xy-background-color: var(--colors-likec4-background);--xy-background-pattern-color: var(--colors-likec4-background-pattern, var(--colors-likec4-background))}.likec4-root .react-flow:is(.bg-transparent){--xy-background-color: transparent !important;background:var(--colors-transparent)!important}.likec4-root .react-flow:is(.not-initialized){opacity:0}.likec4-root .react-flow .react-flow__pane{-webkit-user-select:none;user-select:none}.likec4-root .react-flow :where(.react-flow__nodes,.react-flow__edges,.react-flow__edgelabel-renderer){display:contents}.likec4-root .react-flow .react-flow__node.draggable:has(.likec4-compound-node){cursor:default}.likec4-root .react-flow .likec4-node-handle-center{visibility:hidden!important;transform:translate(-50%,-50%)!important;top:50%!important;left:50%!important;right:unset!important;bottom:unset!important;width:5px!important;height:5px!important}.likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container){--xy-edge-stroke-width: 3;--xy-edge-stroke: var(--likec4-palette-relation-stroke);--xy-edge-stroke-selected: var(--likec4-palette-relation-stroke-selected);--xy-edge-label-color: var(--likec4-palette-relation-label);--xy-edge-label-background-color: var(--likec4-palette-relation-label-bg)}[data-mantine-color-scheme=dark] .likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container){--xy-edge-label-background-color: color-mix(in oklab, var(--likec4-palette-relation-label-bg) 50%, transparent)}[data-mantine-color-scheme=light] .likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container){--xy-edge-label-color: color-mix(in oklab, var(--likec4-palette-relation-label), #FFF 50%);--xy-edge-label-background-color: color-mix(in oklab, var(--likec4-palette-relation-label-bg) 65%, transparent)}.likec4-root :where(.react-flow__edge,.likec4-edge-container,.likec4-edge-label-container):is([data-likec4-hovered=true],[data-edge-active=true]){--xy-edge-stroke-width: 4;--xy-edge-stroke: var(--likec4-palette-relation-stroke-selected)}.likec4-root :where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed]){opacity:.25}.likec4-root .likec4-edge-label-container:is([data-likec4-dimmed]){opacity:.25}.likec4-root:is([data-likec4-reduced-graphics]) .hide-on-reduced-graphics{display:none}.likec4-root :where(.relationships-browser,.likec4-relationship-details) .react-flow__attribution{display:none}.likec4-root .mantine-ActionIcon-icon .tabler-icon{width:75%;height:75%}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed]){filter:grayscale(85%)}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed=true]){--transition-prop: opacity, filter;transition-property:opacity,filter;--transition-easing: cubic-bezier(.5, 0, .2, 1);transition-timing-function:cubic-bezier(.5,0,.2,1);--transition-duration: .4s;transition-duration:.4s}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge-label-container:is([data-likec4-dimmed]){filter:grayscale(85%)}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge-label-container:is([data-likec4-dimmed=true]){--transition-prop: opacity, filter;transition-property:opacity,filter;--transition-easing: cubic-bezier(.5, 0, .2, 1);transition-timing-function:cubic-bezier(.5,0,.2,1);--transition-duration: .4s;transition-duration:.4s}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edgelabel-renderer)>*{mix-blend-mode:screen}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edgelabel-renderer)>*{mix-blend-mode:hard-light}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges)>svg{mix-blend-mode:plus-lighter}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges)>svg{mix-blend-mode:multiply}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]):has(.react-flow__node-seq-parallel) :where(.react-flow__edges>svg){mix-blend-mode:color-burn}[data-mantine-color-scheme=dark] .likec4-root:not([data-likec4-reduced-graphics]) .react-flow__node-seq-parallel{mix-blend-mode:luminosity}[data-mantine-color-scheme=light] .likec4-root:not([data-likec4-reduced-graphics]) .react-flow__node-seq-parallel{mix-blend-mode:color-burn}.likec4-static-view .react-flow .react-flow__attribution{display:none}:where(:root,:host){--likec4-text-size: 1.2rem;--likec4-palette-fill: #3b82f6;--likec4-palette-stroke: #2563eb;--likec4-palette-hiContrast: #eff6ff;--likec4-palette-loContrast: #bfdbfe;--likec4-palette-relation-stroke: #8D8D8D;--likec4-palette-relation-label: #C9C9C9;--likec4-palette-relation-label-bg: #18191B;--mantine-scale: 1;--likec4-palette-outline: var(--likec4-palette-loContrast);--likec4-spacing: ;--text-fz: ;--likec4-icon-size: }@media print{.likec4-root .react-flow{--xy-background-color: transparent !important;background:var(--colors-transparent)!important}.likec4-root .react-flow__background{display:none}.likec4-root *{color-adjust:exact!important;print-color-adjust:exact!important}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edgelabel-renderer)>*{mix-blend-mode:normal!important}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__edges)>svg{mix-blend-mode:normal!important}.likec4-root:not([data-likec4-reduced-graphics]) .react-flow__node-seq-parallel{mix-blend-mode:normal!important}}}@layer tokens{:where(:root,:host){--spacing-0: 0px;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-5: 20px;--spacing-6: 24px;--spacing-7: 28px;--spacing-8: 32px;--spacing-9: 36px;--spacing-10: 40px;--spacing-likec4-xs: 8px;--spacing-likec4-sm: 10px;--spacing-likec4-md: 16px;--spacing-likec4-lg: 24px;--spacing-likec4-xl: 32px;--spacing-0\\.5: 2px;--spacing-1\\.5: 6px;--spacing-2\\.5: 10px;--spacing-3\\.5: 14px;--spacing-4\\.5: 18px;--spacing-xxs: calc(.5rem * var(--mantine-scale));--spacing-xs: calc(.625rem * var(--mantine-scale));--spacing-sm: calc(.75rem * var(--mantine-scale));--spacing-md: calc(1rem * var(--mantine-scale));--spacing-lg: calc(1.25rem * var(--mantine-scale));--spacing-xl: calc(2rem * var(--mantine-scale));--font-sizes-xxs: .625rem;--font-sizes-xs: calc(.75rem * var(--mantine-scale));--font-sizes-sm: calc(.875rem * var(--mantine-scale));--font-sizes-md: calc(1rem * var(--mantine-scale));--font-sizes-lg: calc(1.125rem * var(--mantine-scale));--font-sizes-xl: calc(1.25rem * var(--mantine-scale));--font-sizes-likec4-xs: .833rem;--font-sizes-likec4-sm: 1rem;--font-sizes-likec4-md: 1.2rem;--font-sizes-likec4-lg: 1.44rem;--font-sizes-likec4-xl: 1.73rem;--line-heights-1: 1;--line-heights-xs: 1.4;--line-heights-sm: 1.45;--line-heights-md: 1.55;--line-heights-lg: 1.6;--line-heights-xl: 1.65;--colors-mantine-colors-primary: var(--mantine-primary-color-6);--colors-mantine-colors-primary-filled: var(--mantine-primary-color-filled);--colors-mantine-colors-primary-filled-hover: var(--mantine-primary-color-filled-hover);--colors-mantine-colors-primary-light: var(--mantine-primary-color-light);--colors-mantine-colors-primary-light-hover: var(--mantine-primary-color-light-hover);--colors-mantine-colors-primary-light-color: var(--mantine-primary-color-light-color);--colors-mantine-colors-primary-outline: var(--mantine-primary-color-outline);--colors-mantine-colors-primary-outline-hover: var(--mantine-primary-color-outline-hover);--colors-mantine-colors-primary\\[0\\]: var(--mantine-primary-color-0);--colors-mantine-colors-primary\\[1\\]: var(--mantine-primary-color-1);--colors-mantine-colors-primary\\[2\\]: var(--mantine-primary-color-2);--colors-mantine-colors-primary\\[3\\]: var(--mantine-primary-color-3);--colors-mantine-colors-primary\\[4\\]: var(--mantine-primary-color-4);--colors-mantine-colors-primary\\[5\\]: var(--mantine-primary-color-5);--colors-mantine-colors-primary\\[6\\]: var(--mantine-primary-color-6);--colors-mantine-colors-primary\\[7\\]: var(--mantine-primary-color-7);--colors-mantine-colors-primary\\[8\\]: var(--mantine-primary-color-8);--colors-mantine-colors-primary\\[9\\]: var(--mantine-primary-color-9);--colors-mantine-colors-white: var(--mantine-color-white);--colors-mantine-colors-text: var(--mantine-color-text);--colors-mantine-colors-body: var(--mantine-color-body);--colors-mantine-colors-dimmed: var(--mantine-color-dimmed);--colors-mantine-colors-default-border: var(--mantine-color-default-border);--colors-mantine-colors-default-color: var(--mantine-color-default-color);--colors-mantine-colors-default-hover: var(--mantine-color-default-hover);--colors-mantine-colors-default: var(--mantine-color-default);--colors-mantine-colors-error: var(--mantine-color-error);--colors-mantine-colors-placeholder: var(--mantine-color-placeholder);--colors-mantine-colors-gray: var(--mantine-color-gray-6);--colors-mantine-colors-gray-filled: var(--mantine-color-gray-filled);--colors-mantine-colors-gray-filled-hover: var(--mantine-color-gray-filled-hover);--colors-mantine-colors-gray-light: var(--mantine-color-gray-light);--colors-mantine-colors-gray-light-hover: var(--mantine-color-gray-light-hover);--colors-mantine-colors-gray-light-color: var(--mantine-color-gray-light-color);--colors-mantine-colors-gray-outline: var(--mantine-color-gray-outline);--colors-mantine-colors-gray-outline-hover: var(--mantine-color-gray-outline-hover);--colors-mantine-colors-gray\\[0\\]: var(--mantine-color-gray-0);--colors-mantine-colors-gray\\[1\\]: var(--mantine-color-gray-1);--colors-mantine-colors-gray\\[2\\]: var(--mantine-color-gray-2);--colors-mantine-colors-gray\\[3\\]: var(--mantine-color-gray-3);--colors-mantine-colors-gray\\[4\\]: var(--mantine-color-gray-4);--colors-mantine-colors-gray\\[5\\]: var(--mantine-color-gray-5);--colors-mantine-colors-gray\\[6\\]: var(--mantine-color-gray-6);--colors-mantine-colors-gray\\[7\\]: var(--mantine-color-gray-7);--colors-mantine-colors-gray\\[8\\]: var(--mantine-color-gray-8);--colors-mantine-colors-gray\\[9\\]: var(--mantine-color-gray-9);--colors-mantine-colors-dark: var(--mantine-color-dark-6);--colors-mantine-colors-dark-filled: var(--mantine-color-dark-filled);--colors-mantine-colors-dark-filled-hover: var(--mantine-color-dark-filled-hover);--colors-mantine-colors-dark-light: var(--mantine-color-dark-light);--colors-mantine-colors-dark-light-hover: var(--mantine-color-dark-light-hover);--colors-mantine-colors-dark-light-color: var(--mantine-color-dark-light-color);--colors-mantine-colors-dark-outline: var(--mantine-color-dark-outline);--colors-mantine-colors-dark-outline-hover: var(--mantine-color-dark-outline-hover);--colors-mantine-colors-dark\\[0\\]: var(--mantine-color-dark-0);--colors-mantine-colors-dark\\[1\\]: var(--mantine-color-dark-1);--colors-mantine-colors-dark\\[2\\]: var(--mantine-color-dark-2);--colors-mantine-colors-dark\\[3\\]: var(--mantine-color-dark-3);--colors-mantine-colors-dark\\[4\\]: var(--mantine-color-dark-4);--colors-mantine-colors-dark\\[5\\]: var(--mantine-color-dark-5);--colors-mantine-colors-dark\\[6\\]: var(--mantine-color-dark-6);--colors-mantine-colors-dark\\[7\\]: var(--mantine-color-dark-7);--colors-mantine-colors-dark\\[8\\]: var(--mantine-color-dark-8);--colors-mantine-colors-dark\\[9\\]: var(--mantine-color-dark-9);--colors-mantine-colors-orange: var(--mantine-color-orange-6);--colors-mantine-colors-orange-filled: var(--mantine-color-orange-filled);--colors-mantine-colors-orange-filled-hover: var(--mantine-color-orange-filled-hover);--colors-mantine-colors-orange-light: var(--mantine-color-orange-light);--colors-mantine-colors-orange-light-hover: var(--mantine-color-orange-light-hover);--colors-mantine-colors-orange-light-color: var(--mantine-color-orange-light-color);--colors-mantine-colors-orange-outline: var(--mantine-color-orange-outline);--colors-mantine-colors-orange-outline-hover: var(--mantine-color-orange-outline-hover);--colors-mantine-colors-orange\\[0\\]: var(--mantine-color-orange-0);--colors-mantine-colors-orange\\[1\\]: var(--mantine-color-orange-1);--colors-mantine-colors-orange\\[2\\]: var(--mantine-color-orange-2);--colors-mantine-colors-orange\\[3\\]: var(--mantine-color-orange-3);--colors-mantine-colors-orange\\[4\\]: var(--mantine-color-orange-4);--colors-mantine-colors-orange\\[5\\]: var(--mantine-color-orange-5);--colors-mantine-colors-orange\\[6\\]: var(--mantine-color-orange-6);--colors-mantine-colors-orange\\[7\\]: var(--mantine-color-orange-7);--colors-mantine-colors-orange\\[8\\]: var(--mantine-color-orange-8);--colors-mantine-colors-orange\\[9\\]: var(--mantine-color-orange-9);--colors-mantine-colors-teal: var(--mantine-color-teal-6);--colors-mantine-colors-teal-filled: var(--mantine-color-teal-filled);--colors-mantine-colors-teal-filled-hover: var(--mantine-color-teal-filled-hover);--colors-mantine-colors-teal-light: var(--mantine-color-teal-light);--colors-mantine-colors-teal-light-hover: var(--mantine-color-teal-light-hover);--colors-mantine-colors-teal-light-color: var(--mantine-color-teal-light-color);--colors-mantine-colors-teal-outline: var(--mantine-color-teal-outline);--colors-mantine-colors-teal-outline-hover: var(--mantine-color-teal-outline-hover);--colors-mantine-colors-teal\\[0\\]: var(--mantine-color-teal-0);--colors-mantine-colors-teal\\[1\\]: var(--mantine-color-teal-1);--colors-mantine-colors-teal\\[2\\]: var(--mantine-color-teal-2);--colors-mantine-colors-teal\\[3\\]: var(--mantine-color-teal-3);--colors-mantine-colors-teal\\[4\\]: var(--mantine-color-teal-4);--colors-mantine-colors-teal\\[5\\]: var(--mantine-color-teal-5);--colors-mantine-colors-teal\\[6\\]: var(--mantine-color-teal-6);--colors-mantine-colors-teal\\[7\\]: var(--mantine-color-teal-7);--colors-mantine-colors-teal\\[8\\]: var(--mantine-color-teal-8);--colors-mantine-colors-teal\\[9\\]: var(--mantine-color-teal-9);--colors-mantine-colors-red: var(--mantine-color-red-6);--colors-mantine-colors-red-filled: var(--mantine-color-red-filled);--colors-mantine-colors-red-filled-hover: var(--mantine-color-red-filled-hover);--colors-mantine-colors-red-light: var(--mantine-color-red-light);--colors-mantine-colors-red-light-hover: var(--mantine-color-red-light-hover);--colors-mantine-colors-red-light-color: var(--mantine-color-red-light-color);--colors-mantine-colors-red-outline: var(--mantine-color-red-outline);--colors-mantine-colors-red-outline-hover: var(--mantine-color-red-outline-hover);--colors-mantine-colors-red\\[0\\]: var(--mantine-color-red-0);--colors-mantine-colors-red\\[1\\]: var(--mantine-color-red-1);--colors-mantine-colors-red\\[2\\]: var(--mantine-color-red-2);--colors-mantine-colors-red\\[3\\]: var(--mantine-color-red-3);--colors-mantine-colors-red\\[4\\]: var(--mantine-color-red-4);--colors-mantine-colors-red\\[5\\]: var(--mantine-color-red-5);--colors-mantine-colors-red\\[6\\]: var(--mantine-color-red-6);--colors-mantine-colors-red\\[7\\]: var(--mantine-color-red-7);--colors-mantine-colors-red\\[8\\]: var(--mantine-color-red-8);--colors-mantine-colors-red\\[9\\]: var(--mantine-color-red-9);--colors-mantine-colors-green: var(--mantine-color-green-6);--colors-mantine-colors-green-filled: var(--mantine-color-green-filled);--colors-mantine-colors-green-filled-hover: var(--mantine-color-green-filled-hover);--colors-mantine-colors-green-light: var(--mantine-color-green-light);--colors-mantine-colors-green-light-hover: var(--mantine-color-green-light-hover);--colors-mantine-colors-green-light-color: var(--mantine-color-green-light-color);--colors-mantine-colors-green-outline: var(--mantine-color-green-outline);--colors-mantine-colors-green-outline-hover: var(--mantine-color-green-outline-hover);--colors-mantine-colors-green\\[0\\]: var(--mantine-color-green-0);--colors-mantine-colors-green\\[1\\]: var(--mantine-color-green-1);--colors-mantine-colors-green\\[2\\]: var(--mantine-color-green-2);--colors-mantine-colors-green\\[3\\]: var(--mantine-color-green-3);--colors-mantine-colors-green\\[4\\]: var(--mantine-color-green-4);--colors-mantine-colors-green\\[5\\]: var(--mantine-color-green-5);--colors-mantine-colors-green\\[6\\]: var(--mantine-color-green-6);--colors-mantine-colors-green\\[7\\]: var(--mantine-color-green-7);--colors-mantine-colors-green\\[8\\]: var(--mantine-color-green-8);--colors-mantine-colors-green\\[9\\]: var(--mantine-color-green-9);--colors-mantine-colors-yellow: var(--mantine-color-yellow-6);--colors-mantine-colors-yellow-filled: var(--mantine-color-yellow-filled);--colors-mantine-colors-yellow-filled-hover: var(--mantine-color-yellow-filled-hover);--colors-mantine-colors-yellow-light: var(--mantine-color-yellow-light);--colors-mantine-colors-yellow-light-hover: var(--mantine-color-yellow-light-hover);--colors-mantine-colors-yellow-light-color: var(--mantine-color-yellow-light-color);--colors-mantine-colors-yellow-outline: var(--mantine-color-yellow-outline);--colors-mantine-colors-yellow-outline-hover: var(--mantine-color-yellow-outline-hover);--colors-mantine-colors-yellow\\[0\\]: var(--mantine-color-yellow-0);--colors-mantine-colors-yellow\\[1\\]: var(--mantine-color-yellow-1);--colors-mantine-colors-yellow\\[2\\]: var(--mantine-color-yellow-2);--colors-mantine-colors-yellow\\[3\\]: var(--mantine-color-yellow-3);--colors-mantine-colors-yellow\\[4\\]: var(--mantine-color-yellow-4);--colors-mantine-colors-yellow\\[5\\]: var(--mantine-color-yellow-5);--colors-mantine-colors-yellow\\[6\\]: var(--mantine-color-yellow-6);--colors-mantine-colors-yellow\\[7\\]: var(--mantine-color-yellow-7);--colors-mantine-colors-yellow\\[8\\]: var(--mantine-color-yellow-8);--colors-mantine-colors-yellow\\[9\\]: var(--mantine-color-yellow-9);--colors-transparent: transparent;--colors-none: none;--sizes-100\\%: 100%;--sizes-full: 100%;--sizes-breakpoint-xs: 36em;--sizes-breakpoint-sm: 48em;--sizes-breakpoint-md: 62em;--sizes-breakpoint-lg: 75em;--sizes-breakpoint-xl: 88em;--borders-none: none;--borders-transparent: 0px solid transparent;--borders-default: 1px solid var(--mantine-color-default-border);--radii-0: 0px;--radii-xs: .125rem;--radii-sm: .25rem;--radii-md: .5rem;--radii-lg: 1rem;--radii-xl: 2rem;--font-weights-normal: 400;--font-weights-medium: 500;--fonts-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--fonts-body: var(--likec4-app-font, var(--likec4-app-font-default));--fonts-likec4: var(--likec4-app-font, var(--likec4-app-font-default));--fonts-likec4-element: var(--likec4-element-font, var(--fonts-likec4));--fonts-likec4-compound: var(--likec4-compound-font, var(--fonts-likec4));--fonts-likec4-relation: var(--likec4-relation-font, var(--fonts-likec4));--easings-default: cubic-bezier(.4, 0, .2, 1);--easings-in: cubic-bezier(.4, 0, 1, 1);--easings-out: cubic-bezier(0, 0, .4, 1);--easings-in-out: cubic-bezier(.5, 0, .2, 1);--durations-fastest: 50ms;--durations-faster: .1s;--durations-fast: .13s;--durations-normal: .17s;--durations-slow: .3s;--durations-slower: .4s;--durations-slowest: .5s;--shadows-none: none;--shadows-xs: 0 1px 3px rgb(0 0 0/5%), 0 1px 2px rgb(0 0 0/10%);--shadows-sm: 0 1px 3px rgb(0 0 0/5%), 0 10px 15px -5px rgb(0 0 0/5%), 0 7px 7px -5px rgb(0 0 0/4%);--shadows-md: 0 1px 3px rgb(0 0 0/5%), 0 20px 25px -5px rgb(0 0 0/5%), 0 10px 10px -5px rgb(0 0 0/4%);--shadows-lg: 0 1px 3px rgb(0 0 0/5%), 0 28px 23px -7px rgb(0 0 0/5%), 0 12px 12px -7px rgb(0 0 0/4%);--shadows-xl: 0 1px 3px rgb(0 0 0/5%), 0 36px 28px -7px rgb(0 0 0/5%), 0 17px 17px -7px rgb(0 0 0/4%);--z-index-0: 0;--z-index-1: 1;--z-index--1: -1;--z-index-likec4-panel: 100;--z-index-likec4-dropdown: 200;--breakpoints-xs: 36em;--breakpoints-sm: 48em;--breakpoints-md: 62em;--breakpoints-lg: 75em;--breakpoints-xl: 88em;--colors-amber-1: var(--colors-amber-light-1);--colors-amber-2: var(--colors-amber-light-2);--colors-amber-3: var(--colors-amber-light-3);--colors-amber-4: var(--colors-amber-light-4);--colors-amber-5: var(--colors-amber-light-5);--colors-amber-6: var(--colors-amber-light-6);--colors-amber-7: var(--colors-amber-light-7);--colors-amber-8: var(--colors-amber-light-8);--colors-amber-9: var(--colors-amber-light-9);--colors-amber-10: var(--colors-amber-light-10);--colors-amber-11: var(--colors-amber-light-11);--colors-amber-12: var(--colors-amber-light-12);--colors-amber-light-1: #fefdfb;--colors-amber-light-2: #fefbe9;--colors-amber-light-3: #fff7c2;--colors-amber-light-4: #ffee9c;--colors-amber-light-5: #fbe577;--colors-amber-light-6: #f3d673;--colors-amber-light-7: #e9c162;--colors-amber-light-8: #e2a336;--colors-amber-light-9: #ffc53d;--colors-amber-light-10: #ffba18;--colors-amber-light-11: #ab6400;--colors-amber-light-12: #4f3422;--colors-amber-light-a-1: #c0800004;--colors-amber-light-a-2: #f4d10016;--colors-amber-light-a-3: #ffde003d;--colors-amber-light-a-4: #ffd40063;--colors-amber-light-a-5: #f8cf0088;--colors-amber-light-a-6: #eab5008c;--colors-amber-light-a-7: #dc9b009d;--colors-amber-light-a-8: #da8a00c9;--colors-amber-light-a-9: #ffb300c2;--colors-amber-light-a-10: #ffb300e7;--colors-amber-light-a-11: #ab6400;--colors-amber-light-a-12: #341500dd;--colors-amber-light-p3-1: color(display-p3 .995 .992 .985);--colors-amber-light-p3-2: color(display-p3 .994 .986 .921);--colors-amber-light-p3-3: color(display-p3 .994 .969 .782);--colors-amber-light-p3-4: color(display-p3 .989 .937 .65);--colors-amber-light-p3-5: color(display-p3 .97 .902 .527);--colors-amber-light-p3-6: color(display-p3 .936 .844 .506);--colors-amber-light-p3-7: color(display-p3 .89 .762 .443);--colors-amber-light-p3-8: color(display-p3 .85 .65 .3);--colors-amber-light-p3-9: color(display-p3 1 .77 .26);--colors-amber-light-p3-10: color(display-p3 .959 .741 .274);--colors-amber-light-p3-11: color(display-p3 .64 .4 0);--colors-amber-light-p3-12: color(display-p3 .294 .208 .145);--colors-amber-light-p3-a-1: color(display-p3 .757 .514 .024 / .016);--colors-amber-light-p3-a-2: color(display-p3 .902 .804 .008 / .079);--colors-amber-light-p3-a-3: color(display-p3 .965 .859 .004 / .22);--colors-amber-light-p3-a-4: color(display-p3 .969 .82 .004 / .35);--colors-amber-light-p3-a-5: color(display-p3 .933 .796 .004 / .475);--colors-amber-light-p3-a-6: color(display-p3 .875 .682 .004 / .495);--colors-amber-light-p3-a-7: color(display-p3 .804 .573 0 / .557);--colors-amber-light-p3-a-8: color(display-p3 .788 .502 0 / .699);--colors-amber-light-p3-a-9: color(display-p3 1 .686 0 / .742);--colors-amber-light-p3-a-10: color(display-p3 .945 .643 0 / .726);--colors-amber-light-p3-a-11: color(display-p3 .64 .4 0);--colors-amber-light-p3-a-12: color(display-p3 .294 .208 .145);--colors-amber-dark-1: #16120c;--colors-amber-dark-2: #1d180f;--colors-amber-dark-3: #302008;--colors-amber-dark-4: #3f2700;--colors-amber-dark-5: #4d3000;--colors-amber-dark-6: #5c3d05;--colors-amber-dark-7: #714f19;--colors-amber-dark-8: #8f6424;--colors-amber-dark-9: #ffc53d;--colors-amber-dark-10: #ffd60a;--colors-amber-dark-11: #ffca16;--colors-amber-dark-12: #ffe7b3;--colors-amber-dark-a-1: #e63c0006;--colors-amber-dark-a-2: #fd9b000d;--colors-amber-dark-a-3: #fa820022;--colors-amber-dark-a-4: #fc820032;--colors-amber-dark-a-5: #fd8b0041;--colors-amber-dark-a-6: #fd9b0051;--colors-amber-dark-a-7: #ffab2567;--colors-amber-dark-a-8: #ffae3587;--colors-amber-dark-a-9: #ffc53d;--colors-amber-dark-a-10: #ffd60a;--colors-amber-dark-a-11: #ffca16;--colors-amber-dark-a-12: #ffe7b3;--colors-amber-dark-p3-1: color(display-p3 .082 .07 .05);--colors-amber-dark-p3-2: color(display-p3 .111 .094 .064);--colors-amber-dark-p3-3: color(display-p3 .178 .128 .049);--colors-amber-dark-p3-4: color(display-p3 .239 .156 0);--colors-amber-dark-p3-5: color(display-p3 .29 .193 0);--colors-amber-dark-p3-6: color(display-p3 .344 .245 .076);--colors-amber-dark-p3-7: color(display-p3 .422 .314 .141);--colors-amber-dark-p3-8: color(display-p3 .535 .399 .189);--colors-amber-dark-p3-9: color(display-p3 1 .77 .26);--colors-amber-dark-p3-10: color(display-p3 1 .87 .15);--colors-amber-dark-p3-11: color(display-p3 1 .8 .29);--colors-amber-dark-p3-12: color(display-p3 .984 .909 .726);--colors-amber-dark-p3-a-1: color(display-p3 .992 .298 0 / .017);--colors-amber-dark-p3-a-2: color(display-p3 .988 .651 0 / .047);--colors-amber-dark-p3-a-3: color(display-p3 1 .6 0 / .118);--colors-amber-dark-p3-a-4: color(display-p3 1 .557 0 / .185);--colors-amber-dark-p3-a-5: color(display-p3 1 .592 0 / .24);--colors-amber-dark-p3-a-6: color(display-p3 1 .659 .094 / .299);--colors-amber-dark-p3-a-7: color(display-p3 1 .714 .263 / .383);--colors-amber-dark-p3-a-8: color(display-p3 .996 .729 .306 / .5);--colors-amber-dark-p3-a-9: color(display-p3 1 .769 .259);--colors-amber-dark-p3-a-10: color(display-p3 1 .871 .149);--colors-amber-dark-p3-a-11: color(display-p3 1 .8 .29);--colors-amber-dark-p3-a-12: color(display-p3 .984 .909 .726);--colors-amber-a-1: var(--colors-amber-light-a-1);--colors-amber-a-2: var(--colors-amber-light-a-2);--colors-amber-a-3: var(--colors-amber-light-a-3);--colors-amber-a-4: var(--colors-amber-light-a-4);--colors-amber-a-5: var(--colors-amber-light-a-5);--colors-amber-a-6: var(--colors-amber-light-a-6);--colors-amber-a-7: var(--colors-amber-light-a-7);--colors-amber-a-8: var(--colors-amber-light-a-8);--colors-amber-a-9: var(--colors-amber-light-a-9);--colors-amber-a-10: var(--colors-amber-light-a-10);--colors-amber-a-11: var(--colors-amber-light-a-11);--colors-amber-a-12: var(--colors-amber-light-a-12);--colors-amber-p3-1: var(--colors-amber-light-p3-1);--colors-amber-p3-2: var(--colors-amber-light-p3-2);--colors-amber-p3-3: var(--colors-amber-light-p3-3);--colors-amber-p3-4: var(--colors-amber-light-p3-4);--colors-amber-p3-5: var(--colors-amber-light-p3-5);--colors-amber-p3-6: var(--colors-amber-light-p3-6);--colors-amber-p3-7: var(--colors-amber-light-p3-7);--colors-amber-p3-8: var(--colors-amber-light-p3-8);--colors-amber-p3-9: var(--colors-amber-light-p3-9);--colors-amber-p3-10: var(--colors-amber-light-p3-10);--colors-amber-p3-11: var(--colors-amber-light-p3-11);--colors-amber-p3-12: var(--colors-amber-light-p3-12);--colors-amber-p3-a-1: var(--colors-amber-light-p3-a-1);--colors-amber-p3-a-2: var(--colors-amber-light-p3-a-2);--colors-amber-p3-a-3: var(--colors-amber-light-p3-a-3);--colors-amber-p3-a-4: var(--colors-amber-light-p3-a-4);--colors-amber-p3-a-5: var(--colors-amber-light-p3-a-5);--colors-amber-p3-a-6: var(--colors-amber-light-p3-a-6);--colors-amber-p3-a-7: var(--colors-amber-light-p3-a-7);--colors-amber-p3-a-8: var(--colors-amber-light-p3-a-8);--colors-amber-p3-a-9: var(--colors-amber-light-p3-a-9);--colors-amber-p3-a-10: var(--colors-amber-light-p3-a-10);--colors-amber-p3-a-11: var(--colors-amber-light-p3-a-11);--colors-amber-p3-a-12: var(--colors-amber-light-p3-a-12);--colors-blue-1: var(--colors-blue-light-1);--colors-blue-2: var(--colors-blue-light-2);--colors-blue-3: var(--colors-blue-light-3);--colors-blue-4: var(--colors-blue-light-4);--colors-blue-5: var(--colors-blue-light-5);--colors-blue-6: var(--colors-blue-light-6);--colors-blue-7: var(--colors-blue-light-7);--colors-blue-8: var(--colors-blue-light-8);--colors-blue-9: var(--colors-blue-light-9);--colors-blue-10: var(--colors-blue-light-10);--colors-blue-11: var(--colors-blue-light-11);--colors-blue-12: var(--colors-blue-light-12);--colors-blue-light-1: #fbfdff;--colors-blue-light-2: #f4faff;--colors-blue-light-3: #e6f4fe;--colors-blue-light-4: #d5efff;--colors-blue-light-5: #c2e5ff;--colors-blue-light-6: #acd8fc;--colors-blue-light-7: #8ec8f6;--colors-blue-light-8: #5eb1ef;--colors-blue-light-9: #0090ff;--colors-blue-light-10: #0588f0;--colors-blue-light-11: #0d74ce;--colors-blue-light-12: #113264;--colors-blue-light-a-1: #0080ff04;--colors-blue-light-a-2: #008cff0b;--colors-blue-light-a-3: #008ff519;--colors-blue-light-a-4: #009eff2a;--colors-blue-light-a-5: #0093ff3d;--colors-blue-light-a-6: #0088f653;--colors-blue-light-a-7: #0083eb71;--colors-blue-light-a-8: #0084e6a1;--colors-blue-light-a-9: #0090ff;--colors-blue-light-a-10: #0086f0fa;--colors-blue-light-a-11: #006dcbf2;--colors-blue-light-a-12: #002359ee;--colors-blue-light-p3-1: color(display-p3 .986 .992 .999);--colors-blue-light-p3-2: color(display-p3 .96 .979 .998);--colors-blue-light-p3-3: color(display-p3 .912 .956 .991);--colors-blue-light-p3-4: color(display-p3 .853 .932 1);--colors-blue-light-p3-5: color(display-p3 .788 .894 .998);--colors-blue-light-p3-6: color(display-p3 .709 .843 .976);--colors-blue-light-p3-7: color(display-p3 .606 .777 .947);--colors-blue-light-p3-8: color(display-p3 .451 .688 .917);--colors-blue-light-p3-9: color(display-p3 .247 .556 .969);--colors-blue-light-p3-10: color(display-p3 .234 .523 .912);--colors-blue-light-p3-11: color(display-p3 .15 .44 .84);--colors-blue-light-p3-12: color(display-p3 .102 .193 .379);--colors-blue-light-p3-a-1: color(display-p3 .024 .514 1 / .016);--colors-blue-light-p3-a-2: color(display-p3 .024 .514 .906 / .04);--colors-blue-light-p3-a-3: color(display-p3 .012 .506 .914 / .087);--colors-blue-light-p3-a-4: color(display-p3 .008 .545 1 / .146);--colors-blue-light-p3-a-5: color(display-p3 .004 .502 .984 / .212);--colors-blue-light-p3-a-6: color(display-p3 .004 .463 .922 / .291);--colors-blue-light-p3-a-7: color(display-p3 .004 .431 .863 / .393);--colors-blue-light-p3-a-8: color(display-p3 0 .427 .851 / .55);--colors-blue-light-p3-a-9: color(display-p3 0 .412 .961 / .753);--colors-blue-light-p3-a-10: color(display-p3 0 .376 .886 / .765);--colors-blue-light-p3-a-11: color(display-p3 .15 .44 .84);--colors-blue-light-p3-a-12: color(display-p3 .102 .193 .379);--colors-blue-dark-1: #0d1520;--colors-blue-dark-2: #111927;--colors-blue-dark-3: #0d2847;--colors-blue-dark-4: #003362;--colors-blue-dark-5: #004074;--colors-blue-dark-6: #104d87;--colors-blue-dark-7: #205d9e;--colors-blue-dark-8: #2870bd;--colors-blue-dark-9: #0090ff;--colors-blue-dark-10: #3b9eff;--colors-blue-dark-11: #70b8ff;--colors-blue-dark-12: #c2e6ff;--colors-blue-dark-a-1: #004df211;--colors-blue-dark-a-2: #1166fb18;--colors-blue-dark-a-3: #0077ff3a;--colors-blue-dark-a-4: #0075ff57;--colors-blue-dark-a-5: #0081fd6b;--colors-blue-dark-a-6: #0f89fd7f;--colors-blue-dark-a-7: #2a91fe98;--colors-blue-dark-a-8: #3094feb9;--colors-blue-dark-a-9: #0090ff;--colors-blue-dark-a-10: #3b9eff;--colors-blue-dark-a-11: #70b8ff;--colors-blue-dark-a-12: #c2e6ff;--colors-blue-dark-p3-1: color(display-p3 .057 .081 .122);--colors-blue-dark-p3-2: color(display-p3 .072 .098 .147);--colors-blue-dark-p3-3: color(display-p3 .078 .154 .27);--colors-blue-dark-p3-4: color(display-p3 .033 .197 .37);--colors-blue-dark-p3-5: color(display-p3 .08 .245 .441);--colors-blue-dark-p3-6: color(display-p3 .14 .298 .511);--colors-blue-dark-p3-7: color(display-p3 .195 .361 .6);--colors-blue-dark-p3-8: color(display-p3 .239 .434 .72);--colors-blue-dark-p3-9: color(display-p3 .247 .556 .969);--colors-blue-dark-p3-10: color(display-p3 .344 .612 .973);--colors-blue-dark-p3-11: color(display-p3 .49 .72 1);--colors-blue-dark-p3-12: color(display-p3 .788 .898 .99);--colors-blue-dark-p3-a-1: color(display-p3 0 .333 1 / .059);--colors-blue-dark-p3-a-2: color(display-p3 .114 .435 .988 / .085);--colors-blue-dark-p3-a-3: color(display-p3 .122 .463 1 / .219);--colors-blue-dark-p3-a-4: color(display-p3 0 .467 1 / .324);--colors-blue-dark-p3-a-5: color(display-p3 .098 .51 1 / .4);--colors-blue-dark-p3-a-6: color(display-p3 .224 .557 1 / .475);--colors-blue-dark-p3-a-7: color(display-p3 .294 .584 1 / .572);--colors-blue-dark-p3-a-8: color(display-p3 .314 .592 1 / .702);--colors-blue-dark-p3-a-9: color(display-p3 .251 .573 .996 / .967);--colors-blue-dark-p3-a-10: color(display-p3 .357 .631 1 / .971);--colors-blue-dark-p3-a-11: color(display-p3 .49 .72 1);--colors-blue-dark-p3-a-12: color(display-p3 .788 .898 .99);--colors-blue-a-1: var(--colors-blue-light-a-1);--colors-blue-a-2: var(--colors-blue-light-a-2);--colors-blue-a-3: var(--colors-blue-light-a-3);--colors-blue-a-4: var(--colors-blue-light-a-4);--colors-blue-a-5: var(--colors-blue-light-a-5);--colors-blue-a-6: var(--colors-blue-light-a-6);--colors-blue-a-7: var(--colors-blue-light-a-7);--colors-blue-a-8: var(--colors-blue-light-a-8);--colors-blue-a-9: var(--colors-blue-light-a-9);--colors-blue-a-10: var(--colors-blue-light-a-10);--colors-blue-a-11: var(--colors-blue-light-a-11);--colors-blue-a-12: var(--colors-blue-light-a-12);--colors-blue-p3-1: var(--colors-blue-light-p3-1);--colors-blue-p3-2: var(--colors-blue-light-p3-2);--colors-blue-p3-3: var(--colors-blue-light-p3-3);--colors-blue-p3-4: var(--colors-blue-light-p3-4);--colors-blue-p3-5: var(--colors-blue-light-p3-5);--colors-blue-p3-6: var(--colors-blue-light-p3-6);--colors-blue-p3-7: var(--colors-blue-light-p3-7);--colors-blue-p3-8: var(--colors-blue-light-p3-8);--colors-blue-p3-9: var(--colors-blue-light-p3-9);--colors-blue-p3-10: var(--colors-blue-light-p3-10);--colors-blue-p3-11: var(--colors-blue-light-p3-11);--colors-blue-p3-12: var(--colors-blue-light-p3-12);--colors-blue-p3-a-1: var(--colors-blue-light-p3-a-1);--colors-blue-p3-a-2: var(--colors-blue-light-p3-a-2);--colors-blue-p3-a-3: var(--colors-blue-light-p3-a-3);--colors-blue-p3-a-4: var(--colors-blue-light-p3-a-4);--colors-blue-p3-a-5: var(--colors-blue-light-p3-a-5);--colors-blue-p3-a-6: var(--colors-blue-light-p3-a-6);--colors-blue-p3-a-7: var(--colors-blue-light-p3-a-7);--colors-blue-p3-a-8: var(--colors-blue-light-p3-a-8);--colors-blue-p3-a-9: var(--colors-blue-light-p3-a-9);--colors-blue-p3-a-10: var(--colors-blue-light-p3-a-10);--colors-blue-p3-a-11: var(--colors-blue-light-p3-a-11);--colors-blue-p3-a-12: var(--colors-blue-light-p3-a-12);--colors-crimson-1: var(--colors-crimson-light-1);--colors-crimson-2: var(--colors-crimson-light-2);--colors-crimson-3: var(--colors-crimson-light-3);--colors-crimson-4: var(--colors-crimson-light-4);--colors-crimson-5: var(--colors-crimson-light-5);--colors-crimson-6: var(--colors-crimson-light-6);--colors-crimson-7: var(--colors-crimson-light-7);--colors-crimson-8: var(--colors-crimson-light-8);--colors-crimson-9: var(--colors-crimson-light-9);--colors-crimson-10: var(--colors-crimson-light-10);--colors-crimson-11: var(--colors-crimson-light-11);--colors-crimson-12: var(--colors-crimson-light-12);--colors-crimson-light-1: #fffcfd;--colors-crimson-light-2: #fef7f9;--colors-crimson-light-3: #ffe9f0;--colors-crimson-light-4: #fedce7;--colors-crimson-light-5: #facedd;--colors-crimson-light-6: #f3bed1;--colors-crimson-light-7: #eaacc3;--colors-crimson-light-8: #e093b2;--colors-crimson-light-9: #e93d82;--colors-crimson-light-10: #df3478;--colors-crimson-light-11: #cb1d63;--colors-crimson-light-12: #621639;--colors-crimson-light-a-1: #ff005503;--colors-crimson-light-a-2: #e0004008;--colors-crimson-light-a-3: #ff005216;--colors-crimson-light-a-4: #f8005123;--colors-crimson-light-a-5: #e5004f31;--colors-crimson-light-a-6: #d0004b41;--colors-crimson-light-a-7: #bf004753;--colors-crimson-light-a-8: #b6004a6c;--colors-crimson-light-a-9: #e2005bc2;--colors-crimson-light-a-10: #d70056cb;--colors-crimson-light-a-11: #c4004fe2;--colors-crimson-light-a-12: #530026e9;--colors-crimson-light-p3-1: color(display-p3 .998 .989 .992);--colors-crimson-light-p3-2: color(display-p3 .991 .969 .976);--colors-crimson-light-p3-3: color(display-p3 .987 .917 .941);--colors-crimson-light-p3-4: color(display-p3 .975 .866 .904);--colors-crimson-light-p3-5: color(display-p3 .953 .813 .864);--colors-crimson-light-p3-6: color(display-p3 .921 .755 .817);--colors-crimson-light-p3-7: color(display-p3 .88 .683 .761);--colors-crimson-light-p3-8: color(display-p3 .834 .592 .694);--colors-crimson-light-p3-9: color(display-p3 .843 .298 .507);--colors-crimson-light-p3-10: color(display-p3 .807 .266 .468);--colors-crimson-light-p3-11: color(display-p3 .731 .195 .388);--colors-crimson-light-p3-12: color(display-p3 .352 .111 .221);--colors-crimson-light-p3-a-1: color(display-p3 .675 .024 .349 / .012);--colors-crimson-light-p3-a-2: color(display-p3 .757 .02 .267 / .032);--colors-crimson-light-p3-a-3: color(display-p3 .859 .008 .294 / .083);--colors-crimson-light-p3-a-4: color(display-p3 .827 .008 .298 / .134);--colors-crimson-light-p3-a-5: color(display-p3 .753 .008 .275 / .189);--colors-crimson-light-p3-a-6: color(display-p3 .682 .004 .247 / .244);--colors-crimson-light-p3-a-7: color(display-p3 .62 .004 .251 / .318);--colors-crimson-light-p3-a-8: color(display-p3 .6 .004 .251 / .408);--colors-crimson-light-p3-a-9: color(display-p3 .776 0 .298 / .702);--colors-crimson-light-p3-a-10: color(display-p3 .737 0 .275 / .734);--colors-crimson-light-p3-a-11: color(display-p3 .731 .195 .388);--colors-crimson-light-p3-a-12: color(display-p3 .352 .111 .221);--colors-crimson-dark-1: #191114;--colors-crimson-dark-2: #201318;--colors-crimson-dark-3: #381525;--colors-crimson-dark-4: #4d122f;--colors-crimson-dark-5: #5c1839;--colors-crimson-dark-6: #6d2545;--colors-crimson-dark-7: #873356;--colors-crimson-dark-8: #b0436e;--colors-crimson-dark-9: #e93d82;--colors-crimson-dark-10: #ee518a;--colors-crimson-dark-11: #ff92ad;--colors-crimson-dark-12: #fdd3e8;--colors-crimson-dark-a-1: #f4126709;--colors-crimson-dark-a-2: #f22f7a11;--colors-crimson-dark-a-3: #fe2a8b2a;--colors-crimson-dark-a-4: #fd158741;--colors-crimson-dark-a-5: #fd278f51;--colors-crimson-dark-a-6: #fe459763;--colors-crimson-dark-a-7: #fd559b7f;--colors-crimson-dark-a-8: #fe5b9bab;--colors-crimson-dark-a-9: #fe418de8;--colors-crimson-dark-a-10: #ff5693ed;--colors-crimson-dark-a-11: #ff92ad;--colors-crimson-dark-a-12: #ffd5eafd;--colors-crimson-dark-p3-1: color(display-p3 .093 .068 .078);--colors-crimson-dark-p3-2: color(display-p3 .117 .078 .095);--colors-crimson-dark-p3-3: color(display-p3 .203 .091 .143);--colors-crimson-dark-p3-4: color(display-p3 .277 .087 .182);--colors-crimson-dark-p3-5: color(display-p3 .332 .115 .22);--colors-crimson-dark-p3-6: color(display-p3 .394 .162 .268);--colors-crimson-dark-p3-7: color(display-p3 .489 .222 .336);--colors-crimson-dark-p3-8: color(display-p3 .638 .289 .429);--colors-crimson-dark-p3-9: color(display-p3 .843 .298 .507);--colors-crimson-dark-p3-10: color(display-p3 .864 .364 .539);--colors-crimson-dark-p3-11: color(display-p3 1 .56 .66);--colors-crimson-dark-p3-12: color(display-p3 .966 .834 .906);--colors-crimson-dark-p3-a-1: color(display-p3 .984 .071 .463 / .03);--colors-crimson-dark-p3-a-2: color(display-p3 .996 .282 .569 / .055);--colors-crimson-dark-p3-a-3: color(display-p3 .996 .227 .573 / .148);--colors-crimson-dark-p3-a-4: color(display-p3 1 .157 .569 / .227);--colors-crimson-dark-p3-a-5: color(display-p3 1 .231 .604 / .286);--colors-crimson-dark-p3-a-6: color(display-p3 1 .337 .643 / .349);--colors-crimson-dark-p3-a-7: color(display-p3 1 .416 .663 / .454);--colors-crimson-dark-p3-a-8: color(display-p3 .996 .427 .651 / .614);--colors-crimson-dark-p3-a-9: color(display-p3 1 .345 .596 / .832);--colors-crimson-dark-p3-a-10: color(display-p3 1 .42 .62 / .853);--colors-crimson-dark-p3-a-11: color(display-p3 1 .56 .66);--colors-crimson-dark-p3-a-12: color(display-p3 .966 .834 .906);--colors-crimson-a-1: var(--colors-crimson-light-a-1);--colors-crimson-a-2: var(--colors-crimson-light-a-2);--colors-crimson-a-3: var(--colors-crimson-light-a-3);--colors-crimson-a-4: var(--colors-crimson-light-a-4);--colors-crimson-a-5: var(--colors-crimson-light-a-5);--colors-crimson-a-6: var(--colors-crimson-light-a-6);--colors-crimson-a-7: var(--colors-crimson-light-a-7);--colors-crimson-a-8: var(--colors-crimson-light-a-8);--colors-crimson-a-9: var(--colors-crimson-light-a-9);--colors-crimson-a-10: var(--colors-crimson-light-a-10);--colors-crimson-a-11: var(--colors-crimson-light-a-11);--colors-crimson-a-12: var(--colors-crimson-light-a-12);--colors-crimson-p3-1: var(--colors-crimson-light-p3-1);--colors-crimson-p3-2: var(--colors-crimson-light-p3-2);--colors-crimson-p3-3: var(--colors-crimson-light-p3-3);--colors-crimson-p3-4: var(--colors-crimson-light-p3-4);--colors-crimson-p3-5: var(--colors-crimson-light-p3-5);--colors-crimson-p3-6: var(--colors-crimson-light-p3-6);--colors-crimson-p3-7: var(--colors-crimson-light-p3-7);--colors-crimson-p3-8: var(--colors-crimson-light-p3-8);--colors-crimson-p3-9: var(--colors-crimson-light-p3-9);--colors-crimson-p3-10: var(--colors-crimson-light-p3-10);--colors-crimson-p3-11: var(--colors-crimson-light-p3-11);--colors-crimson-p3-12: var(--colors-crimson-light-p3-12);--colors-crimson-p3-a-1: var(--colors-crimson-light-p3-a-1);--colors-crimson-p3-a-2: var(--colors-crimson-light-p3-a-2);--colors-crimson-p3-a-3: var(--colors-crimson-light-p3-a-3);--colors-crimson-p3-a-4: var(--colors-crimson-light-p3-a-4);--colors-crimson-p3-a-5: var(--colors-crimson-light-p3-a-5);--colors-crimson-p3-a-6: var(--colors-crimson-light-p3-a-6);--colors-crimson-p3-a-7: var(--colors-crimson-light-p3-a-7);--colors-crimson-p3-a-8: var(--colors-crimson-light-p3-a-8);--colors-crimson-p3-a-9: var(--colors-crimson-light-p3-a-9);--colors-crimson-p3-a-10: var(--colors-crimson-light-p3-a-10);--colors-crimson-p3-a-11: var(--colors-crimson-light-p3-a-11);--colors-crimson-p3-a-12: var(--colors-crimson-light-p3-a-12);--colors-grass-1: var(--colors-grass-light-1);--colors-grass-2: var(--colors-grass-light-2);--colors-grass-3: var(--colors-grass-light-3);--colors-grass-4: var(--colors-grass-light-4);--colors-grass-5: var(--colors-grass-light-5);--colors-grass-6: var(--colors-grass-light-6);--colors-grass-7: var(--colors-grass-light-7);--colors-grass-8: var(--colors-grass-light-8);--colors-grass-9: var(--colors-grass-light-9);--colors-grass-10: var(--colors-grass-light-10);--colors-grass-11: var(--colors-grass-light-11);--colors-grass-12: var(--colors-grass-light-12);--colors-grass-light-1: #fbfefb;--colors-grass-light-2: #f5fbf5;--colors-grass-light-3: #e9f6e9;--colors-grass-light-4: #daf1db;--colors-grass-light-5: #c9e8ca;--colors-grass-light-6: #b2ddb5;--colors-grass-light-7: #94ce9a;--colors-grass-light-8: #65ba74;--colors-grass-light-9: #46a758;--colors-grass-light-10: #3e9b4f;--colors-grass-light-11: #2a7e3b;--colors-grass-light-12: #203c25;--colors-grass-light-a-1: #00c00004;--colors-grass-light-a-2: #0099000a;--colors-grass-light-a-3: #00970016;--colors-grass-light-a-4: #009f0725;--colors-grass-light-a-5: #00930536;--colors-grass-light-a-6: #008f0a4d;--colors-grass-light-a-7: #018b0f6b;--colors-grass-light-a-8: #008d199a;--colors-grass-light-a-9: #008619b9;--colors-grass-light-a-10: #007b17c1;--colors-grass-light-a-11: #006514d5;--colors-grass-light-a-12: #002006df;--colors-grass-light-p3-1: color(display-p3 .986 .996 .985);--colors-grass-light-p3-2: color(display-p3 .966 .983 .964);--colors-grass-light-p3-3: color(display-p3 .923 .965 .917);--colors-grass-light-p3-4: color(display-p3 .872 .94 .865);--colors-grass-light-p3-5: color(display-p3 .811 .908 .802);--colors-grass-light-p3-6: color(display-p3 .733 .864 .724);--colors-grass-light-p3-7: color(display-p3 .628 .803 .622);--colors-grass-light-p3-8: color(display-p3 .477 .72 .482);--colors-grass-light-p3-9: color(display-p3 .38 .647 .378);--colors-grass-light-p3-10: color(display-p3 .344 .598 .342);--colors-grass-light-p3-11: color(display-p3 .263 .488 .261);--colors-grass-light-p3-12: color(display-p3 .151 .233 .153);--colors-grass-light-p3-a-1: color(display-p3 .024 .757 .024 / .016);--colors-grass-light-p3-a-2: color(display-p3 .024 .565 .024 / .036);--colors-grass-light-p3-a-3: color(display-p3 .059 .576 .008 / .083);--colors-grass-light-p3-a-4: color(display-p3 .035 .565 .008 / .134);--colors-grass-light-p3-a-5: color(display-p3 .047 .545 .008 / .197);--colors-grass-light-p3-a-6: color(display-p3 .031 .502 .004 / .275);--colors-grass-light-p3-a-7: color(display-p3 .012 .482 .004 / .377);--colors-grass-light-p3-a-8: color(display-p3 0 .467 .008 / .522);--colors-grass-light-p3-a-9: color(display-p3 .008 .435 0 / .624);--colors-grass-light-p3-a-10: color(display-p3 .008 .388 0 / .659);--colors-grass-light-p3-a-11: color(display-p3 .263 .488 .261);--colors-grass-light-p3-a-12: color(display-p3 .151 .233 .153);--colors-grass-dark-1: #0e1511;--colors-grass-dark-2: #141a15;--colors-grass-dark-3: #1b2a1e;--colors-grass-dark-4: #1d3a24;--colors-grass-dark-5: #25482d;--colors-grass-dark-6: #2d5736;--colors-grass-dark-7: #366740;--colors-grass-dark-8: #3e7949;--colors-grass-dark-9: #46a758;--colors-grass-dark-10: #53b365;--colors-grass-dark-11: #71d083;--colors-grass-dark-12: #c2f0c2;--colors-grass-dark-a-1: #00de1205;--colors-grass-dark-a-2: #5ef7780a;--colors-grass-dark-a-3: #70fe8c1b;--colors-grass-dark-a-4: #57ff802c;--colors-grass-dark-a-5: #68ff8b3b;--colors-grass-dark-a-6: #71ff8f4b;--colors-grass-dark-a-7: #77fd925d;--colors-grass-dark-a-8: #77fd9070;--colors-grass-dark-a-9: #65ff82a1;--colors-grass-dark-a-10: #72ff8dae;--colors-grass-dark-a-11: #89ff9fcd;--colors-grass-dark-a-12: #ceffceef;--colors-grass-dark-p3-1: color(display-p3 .062 .083 .067);--colors-grass-dark-p3-2: color(display-p3 .083 .103 .085);--colors-grass-dark-p3-3: color(display-p3 .118 .163 .122);--colors-grass-dark-p3-4: color(display-p3 .142 .225 .15);--colors-grass-dark-p3-5: color(display-p3 .178 .279 .186);--colors-grass-dark-p3-6: color(display-p3 .217 .337 .224);--colors-grass-dark-p3-7: color(display-p3 .258 .4 .264);--colors-grass-dark-p3-8: color(display-p3 .302 .47 .305);--colors-grass-dark-p3-9: color(display-p3 .38 .647 .378);--colors-grass-dark-p3-10: color(display-p3 .426 .694 .426);--colors-grass-dark-p3-11: color(display-p3 .535 .807 .542);--colors-grass-dark-p3-12: color(display-p3 .797 .936 .776);--colors-grass-dark-p3-a-1: color(display-p3 0 .992 .071 / .017);--colors-grass-dark-p3-a-2: color(display-p3 .482 .996 .584 / .038);--colors-grass-dark-p3-a-3: color(display-p3 .549 .992 .588 / .106);--colors-grass-dark-p3-a-4: color(display-p3 .51 .996 .557 / .169);--colors-grass-dark-p3-a-5: color(display-p3 .553 1 .588 / .227);--colors-grass-dark-p3-a-6: color(display-p3 .584 1 .608 / .29);--colors-grass-dark-p3-a-7: color(display-p3 .604 1 .616 / .358);--colors-grass-dark-p3-a-8: color(display-p3 .608 1 .62 / .433);--colors-grass-dark-p3-a-9: color(display-p3 .573 1 .569 / .622);--colors-grass-dark-p3-a-10: color(display-p3 .6 .996 .6 / .673);--colors-grass-dark-p3-a-11: color(display-p3 .535 .807 .542);--colors-grass-dark-p3-a-12: color(display-p3 .797 .936 .776);--colors-grass-a-1: var(--colors-grass-light-a-1);--colors-grass-a-2: var(--colors-grass-light-a-2);--colors-grass-a-3: var(--colors-grass-light-a-3);--colors-grass-a-4: var(--colors-grass-light-a-4);--colors-grass-a-5: var(--colors-grass-light-a-5);--colors-grass-a-6: var(--colors-grass-light-a-6);--colors-grass-a-7: var(--colors-grass-light-a-7);--colors-grass-a-8: var(--colors-grass-light-a-8);--colors-grass-a-9: var(--colors-grass-light-a-9);--colors-grass-a-10: var(--colors-grass-light-a-10);--colors-grass-a-11: var(--colors-grass-light-a-11);--colors-grass-a-12: var(--colors-grass-light-a-12);--colors-grass-p3-1: var(--colors-grass-light-p3-1);--colors-grass-p3-2: var(--colors-grass-light-p3-2);--colors-grass-p3-3: var(--colors-grass-light-p3-3);--colors-grass-p3-4: var(--colors-grass-light-p3-4);--colors-grass-p3-5: var(--colors-grass-light-p3-5);--colors-grass-p3-6: var(--colors-grass-light-p3-6);--colors-grass-p3-7: var(--colors-grass-light-p3-7);--colors-grass-p3-8: var(--colors-grass-light-p3-8);--colors-grass-p3-9: var(--colors-grass-light-p3-9);--colors-grass-p3-10: var(--colors-grass-light-p3-10);--colors-grass-p3-11: var(--colors-grass-light-p3-11);--colors-grass-p3-12: var(--colors-grass-light-p3-12);--colors-grass-p3-a-1: var(--colors-grass-light-p3-a-1);--colors-grass-p3-a-2: var(--colors-grass-light-p3-a-2);--colors-grass-p3-a-3: var(--colors-grass-light-p3-a-3);--colors-grass-p3-a-4: var(--colors-grass-light-p3-a-4);--colors-grass-p3-a-5: var(--colors-grass-light-p3-a-5);--colors-grass-p3-a-6: var(--colors-grass-light-p3-a-6);--colors-grass-p3-a-7: var(--colors-grass-light-p3-a-7);--colors-grass-p3-a-8: var(--colors-grass-light-p3-a-8);--colors-grass-p3-a-9: var(--colors-grass-light-p3-a-9);--colors-grass-p3-a-10: var(--colors-grass-light-p3-a-10);--colors-grass-p3-a-11: var(--colors-grass-light-p3-a-11);--colors-grass-p3-a-12: var(--colors-grass-light-p3-a-12);--colors-indigo-1: var(--colors-indigo-light-1);--colors-indigo-2: var(--colors-indigo-light-2);--colors-indigo-3: var(--colors-indigo-light-3);--colors-indigo-4: var(--colors-indigo-light-4);--colors-indigo-5: var(--colors-indigo-light-5);--colors-indigo-6: var(--colors-indigo-light-6);--colors-indigo-7: var(--colors-indigo-light-7);--colors-indigo-8: var(--colors-indigo-light-8);--colors-indigo-9: var(--colors-indigo-light-9);--colors-indigo-10: var(--colors-indigo-light-10);--colors-indigo-11: var(--colors-indigo-light-11);--colors-indigo-12: var(--colors-indigo-light-12);--colors-indigo-light-1: #fdfdfe;--colors-indigo-light-2: #f7f9ff;--colors-indigo-light-3: #edf2fe;--colors-indigo-light-4: #e1e9ff;--colors-indigo-light-5: #d2deff;--colors-indigo-light-6: #c1d0ff;--colors-indigo-light-7: #abbdf9;--colors-indigo-light-8: #8da4ef;--colors-indigo-light-9: #3e63dd;--colors-indigo-light-10: #3358d4;--colors-indigo-light-11: #3a5bc7;--colors-indigo-light-12: #1f2d5c;--colors-indigo-light-a-1: #00008002;--colors-indigo-light-a-2: #0040ff08;--colors-indigo-light-a-3: #0047f112;--colors-indigo-light-a-4: #0044ff1e;--colors-indigo-light-a-5: #0044ff2d;--colors-indigo-light-a-6: #003eff3e;--colors-indigo-light-a-7: #0037ed54;--colors-indigo-light-a-8: #0034dc72;--colors-indigo-light-a-9: #0031d2c1;--colors-indigo-light-a-10: #002ec9cc;--colors-indigo-light-a-11: #002bb7c5;--colors-indigo-light-a-12: #001046e0;--colors-indigo-light-p3-1: color(display-p3 .992 .992 .996);--colors-indigo-light-p3-2: color(display-p3 .971 .977 .998);--colors-indigo-light-p3-3: color(display-p3 .933 .948 .992);--colors-indigo-light-p3-4: color(display-p3 .885 .914 1);--colors-indigo-light-p3-5: color(display-p3 .831 .87 1);--colors-indigo-light-p3-6: color(display-p3 .767 .814 .995);--colors-indigo-light-p3-7: color(display-p3 .685 .74 .957);--colors-indigo-light-p3-8: color(display-p3 .569 .639 .916);--colors-indigo-light-p3-9: color(display-p3 .276 .384 .837);--colors-indigo-light-p3-10: color(display-p3 .234 .343 .801);--colors-indigo-light-p3-11: color(display-p3 .256 .354 .755);--colors-indigo-light-p3-12: color(display-p3 .133 .175 .348);--colors-indigo-light-p3-a-1: color(display-p3 .02 .02 .51 / .008);--colors-indigo-light-p3-a-2: color(display-p3 .024 .161 .863 / .028);--colors-indigo-light-p3-a-3: color(display-p3 .008 .239 .886 / .067);--colors-indigo-light-p3-a-4: color(display-p3 .004 .247 1 / .114);--colors-indigo-light-p3-a-5: color(display-p3 .004 .235 1 / .169);--colors-indigo-light-p3-a-6: color(display-p3 .004 .208 .984 / .232);--colors-indigo-light-p3-a-7: color(display-p3 .004 .176 .863 / .314);--colors-indigo-light-p3-a-8: color(display-p3 .004 .165 .812 / .432);--colors-indigo-light-p3-a-9: color(display-p3 0 .153 .773 / .726);--colors-indigo-light-p3-a-10: color(display-p3 0 .137 .737 / .765);--colors-indigo-light-p3-a-11: color(display-p3 .256 .354 .755);--colors-indigo-light-p3-a-12: color(display-p3 .133 .175 .348);--colors-indigo-dark-1: #11131f;--colors-indigo-dark-2: #141726;--colors-indigo-dark-3: #182449;--colors-indigo-dark-4: #1d2e62;--colors-indigo-dark-5: #253974;--colors-indigo-dark-6: #304384;--colors-indigo-dark-7: #3a4f97;--colors-indigo-dark-8: #435db1;--colors-indigo-dark-9: #3e63dd;--colors-indigo-dark-10: #5472e4;--colors-indigo-dark-11: #9eb1ff;--colors-indigo-dark-12: #d6e1ff;--colors-indigo-dark-a-1: #1133ff0f;--colors-indigo-dark-a-2: #3354fa17;--colors-indigo-dark-a-3: #2f62ff3c;--colors-indigo-dark-a-4: #3566ff57;--colors-indigo-dark-a-5: #4171fd6b;--colors-indigo-dark-a-6: #5178fd7c;--colors-indigo-dark-a-7: #5a7fff90;--colors-indigo-dark-a-8: #5b81feac;--colors-indigo-dark-a-9: #4671ffdb;--colors-indigo-dark-a-10: #5c7efee3;--colors-indigo-dark-a-11: #9eb1ff;--colors-indigo-dark-a-12: #d6e1ff;--colors-indigo-dark-p3-1: color(display-p3 .068 .074 .118);--colors-indigo-dark-p3-2: color(display-p3 .081 .089 .144);--colors-indigo-dark-p3-3: color(display-p3 .105 .141 .275);--colors-indigo-dark-p3-4: color(display-p3 .129 .18 .369);--colors-indigo-dark-p3-5: color(display-p3 .163 .22 .439);--colors-indigo-dark-p3-6: color(display-p3 .203 .262 .5);--colors-indigo-dark-p3-7: color(display-p3 .245 .309 .575);--colors-indigo-dark-p3-8: color(display-p3 .285 .362 .674);--colors-indigo-dark-p3-9: color(display-p3 .276 .384 .837);--colors-indigo-dark-p3-10: color(display-p3 .354 .445 .866);--colors-indigo-dark-p3-11: color(display-p3 .63 .69 1);--colors-indigo-dark-p3-12: color(display-p3 .848 .881 .99);--colors-indigo-dark-p3-a-1: color(display-p3 .071 .212 .996 / .055);--colors-indigo-dark-p3-a-2: color(display-p3 .251 .345 .988 / .085);--colors-indigo-dark-p3-a-3: color(display-p3 .243 .404 1 / .223);--colors-indigo-dark-p3-a-4: color(display-p3 .263 .42 1 / .324);--colors-indigo-dark-p3-a-5: color(display-p3 .314 .451 1 / .4);--colors-indigo-dark-p3-a-6: color(display-p3 .361 .49 1 / .467);--colors-indigo-dark-p3-a-7: color(display-p3 .388 .51 1 / .547);--colors-indigo-dark-p3-a-8: color(display-p3 .404 .518 1 / .652);--colors-indigo-dark-p3-a-9: color(display-p3 .318 .451 1 / .824);--colors-indigo-dark-p3-a-10: color(display-p3 .404 .506 1 / .858);--colors-indigo-dark-p3-a-11: color(display-p3 .63 .69 1);--colors-indigo-dark-p3-a-12: color(display-p3 .848 .881 .99);--colors-indigo-a-1: var(--colors-indigo-light-a-1);--colors-indigo-a-2: var(--colors-indigo-light-a-2);--colors-indigo-a-3: var(--colors-indigo-light-a-3);--colors-indigo-a-4: var(--colors-indigo-light-a-4);--colors-indigo-a-5: var(--colors-indigo-light-a-5);--colors-indigo-a-6: var(--colors-indigo-light-a-6);--colors-indigo-a-7: var(--colors-indigo-light-a-7);--colors-indigo-a-8: var(--colors-indigo-light-a-8);--colors-indigo-a-9: var(--colors-indigo-light-a-9);--colors-indigo-a-10: var(--colors-indigo-light-a-10);--colors-indigo-a-11: var(--colors-indigo-light-a-11);--colors-indigo-a-12: var(--colors-indigo-light-a-12);--colors-indigo-p3-1: var(--colors-indigo-light-p3-1);--colors-indigo-p3-2: var(--colors-indigo-light-p3-2);--colors-indigo-p3-3: var(--colors-indigo-light-p3-3);--colors-indigo-p3-4: var(--colors-indigo-light-p3-4);--colors-indigo-p3-5: var(--colors-indigo-light-p3-5);--colors-indigo-p3-6: var(--colors-indigo-light-p3-6);--colors-indigo-p3-7: var(--colors-indigo-light-p3-7);--colors-indigo-p3-8: var(--colors-indigo-light-p3-8);--colors-indigo-p3-9: var(--colors-indigo-light-p3-9);--colors-indigo-p3-10: var(--colors-indigo-light-p3-10);--colors-indigo-p3-11: var(--colors-indigo-light-p3-11);--colors-indigo-p3-12: var(--colors-indigo-light-p3-12);--colors-indigo-p3-a-1: var(--colors-indigo-light-p3-a-1);--colors-indigo-p3-a-2: var(--colors-indigo-light-p3-a-2);--colors-indigo-p3-a-3: var(--colors-indigo-light-p3-a-3);--colors-indigo-p3-a-4: var(--colors-indigo-light-p3-a-4);--colors-indigo-p3-a-5: var(--colors-indigo-light-p3-a-5);--colors-indigo-p3-a-6: var(--colors-indigo-light-p3-a-6);--colors-indigo-p3-a-7: var(--colors-indigo-light-p3-a-7);--colors-indigo-p3-a-8: var(--colors-indigo-light-p3-a-8);--colors-indigo-p3-a-9: var(--colors-indigo-light-p3-a-9);--colors-indigo-p3-a-10: var(--colors-indigo-light-p3-a-10);--colors-indigo-p3-a-11: var(--colors-indigo-light-p3-a-11);--colors-indigo-p3-a-12: var(--colors-indigo-light-p3-a-12);--colors-lime-1: var(--colors-lime-light-1);--colors-lime-2: var(--colors-lime-light-2);--colors-lime-3: var(--colors-lime-light-3);--colors-lime-4: var(--colors-lime-light-4);--colors-lime-5: var(--colors-lime-light-5);--colors-lime-6: var(--colors-lime-light-6);--colors-lime-7: var(--colors-lime-light-7);--colors-lime-8: var(--colors-lime-light-8);--colors-lime-9: var(--colors-lime-light-9);--colors-lime-10: var(--colors-lime-light-10);--colors-lime-11: var(--colors-lime-light-11);--colors-lime-12: var(--colors-lime-light-12);--colors-lime-light-1: #fcfdfa;--colors-lime-light-2: #f8faf3;--colors-lime-light-3: #eef6d6;--colors-lime-light-4: #e2f0bd;--colors-lime-light-5: #d3e7a6;--colors-lime-light-6: #c2da91;--colors-lime-light-7: #abc978;--colors-lime-light-8: #8db654;--colors-lime-light-9: #bdee63;--colors-lime-light-10: #b0e64c;--colors-lime-light-11: #5c7c2f;--colors-lime-light-12: #37401c;--colors-lime-light-a-1: #66990005;--colors-lime-light-a-2: #6b95000c;--colors-lime-light-a-3: #96c80029;--colors-lime-light-a-4: #8fc60042;--colors-lime-light-a-5: #81bb0059;--colors-lime-light-a-6: #72aa006e;--colors-lime-light-a-7: #61990087;--colors-lime-light-a-8: #559200ab;--colors-lime-light-a-9: #93e4009c;--colors-lime-light-a-10: #8fdc00b3;--colors-lime-light-a-11: #375f00d0;--colors-lime-light-a-12: #1e2900e3;--colors-lime-light-p3-1: color(display-p3 .989 .992 .981);--colors-lime-light-p3-2: color(display-p3 .975 .98 .954);--colors-lime-light-p3-3: color(display-p3 .939 .965 .851);--colors-lime-light-p3-4: color(display-p3 .896 .94 .76);--colors-lime-light-p3-5: color(display-p3 .843 .903 .678);--colors-lime-light-p3-6: color(display-p3 .778 .852 .599);--colors-lime-light-p3-7: color(display-p3 .694 .784 .508);--colors-lime-light-p3-8: color(display-p3 .585 .707 .378);--colors-lime-light-p3-9: color(display-p3 .78 .928 .466);--colors-lime-light-p3-10: color(display-p3 .734 .896 .397);--colors-lime-light-p3-11: color(display-p3 .386 .482 .227);--colors-lime-light-p3-12: color(display-p3 .222 .25 .128);--colors-lime-light-p3-a-1: color(display-p3 .412 .608 .02 / .02);--colors-lime-light-p3-a-2: color(display-p3 .514 .592 .024 / .048);--colors-lime-light-p3-a-3: color(display-p3 .584 .765 .008 / .15);--colors-lime-light-p3-a-4: color(display-p3 .561 .757 .004 / .24);--colors-lime-light-p3-a-5: color(display-p3 .514 .698 .004 / .322);--colors-lime-light-p3-a-6: color(display-p3 .443 .627 0 / .4);--colors-lime-light-p3-a-7: color(display-p3 .376 .561 .004 / .491);--colors-lime-light-p3-a-8: color(display-p3 .333 .529 0 / .624);--colors-lime-light-p3-a-9: color(display-p3 .588 .867 0 / .534);--colors-lime-light-p3-a-10: color(display-p3 .561 .827 0 / .604);--colors-lime-light-p3-a-11: color(display-p3 .386 .482 .227);--colors-lime-light-p3-a-12: color(display-p3 .222 .25 .128);--colors-lime-dark-1: #11130c;--colors-lime-dark-2: #151a10;--colors-lime-dark-3: #1f2917;--colors-lime-dark-4: #29371d;--colors-lime-dark-5: #334423;--colors-lime-dark-6: #3d522a;--colors-lime-dark-7: #496231;--colors-lime-dark-8: #577538;--colors-lime-dark-9: #bdee63;--colors-lime-dark-10: #d4ff70;--colors-lime-dark-11: #bde56c;--colors-lime-dark-12: #e3f7ba;--colors-lime-dark-a-1: #11bb0003;--colors-lime-dark-a-2: #78f7000a;--colors-lime-dark-a-3: #9bfd4c1a;--colors-lime-dark-a-4: #a7fe5c29;--colors-lime-dark-a-5: #affe6537;--colors-lime-dark-a-6: #b2fe6d46;--colors-lime-dark-a-7: #b6ff6f57;--colors-lime-dark-a-8: #b6fd6d6c;--colors-lime-dark-a-9: #caff69ed;--colors-lime-dark-a-10: #d4ff70;--colors-lime-dark-a-11: #d1fe77e4;--colors-lime-dark-a-12: #e9febff7;--colors-lime-dark-p3-1: color(display-p3 .067 .073 .048);--colors-lime-dark-p3-2: color(display-p3 .086 .1 .067);--colors-lime-dark-p3-3: color(display-p3 .13 .16 .099);--colors-lime-dark-p3-4: color(display-p3 .172 .214 .126);--colors-lime-dark-p3-5: color(display-p3 .213 .266 .153);--colors-lime-dark-p3-6: color(display-p3 .257 .321 .182);--colors-lime-dark-p3-7: color(display-p3 .307 .383 .215);--colors-lime-dark-p3-8: color(display-p3 .365 .456 .25);--colors-lime-dark-p3-9: color(display-p3 .78 .928 .466);--colors-lime-dark-p3-10: color(display-p3 .865 .995 .519);--colors-lime-dark-p3-11: color(display-p3 .771 .893 .485);--colors-lime-dark-p3-12: color(display-p3 .905 .966 .753);--colors-lime-dark-p3-a-1: color(display-p3 .067 .941 0 / .009);--colors-lime-dark-p3-a-2: color(display-p3 .584 .996 .071 / .038);--colors-lime-dark-p3-a-3: color(display-p3 .69 1 .38 / .101);--colors-lime-dark-p3-a-4: color(display-p3 .729 1 .435 / .16);--colors-lime-dark-p3-a-5: color(display-p3 .745 1 .471 / .215);--colors-lime-dark-p3-a-6: color(display-p3 .769 1 .482 / .274);--colors-lime-dark-p3-a-7: color(display-p3 .769 1 .506 / .341);--colors-lime-dark-p3-a-8: color(display-p3 .784 1 .51 / .416);--colors-lime-dark-p3-a-9: color(display-p3 .839 1 .502 / .925);--colors-lime-dark-p3-a-10: color(display-p3 .871 1 .522 / .996);--colors-lime-dark-p3-a-11: color(display-p3 .771 .893 .485);--colors-lime-dark-p3-a-12: color(display-p3 .905 .966 .753);--colors-lime-a-1: var(--colors-lime-light-a-1);--colors-lime-a-2: var(--colors-lime-light-a-2);--colors-lime-a-3: var(--colors-lime-light-a-3);--colors-lime-a-4: var(--colors-lime-light-a-4);--colors-lime-a-5: var(--colors-lime-light-a-5);--colors-lime-a-6: var(--colors-lime-light-a-6);--colors-lime-a-7: var(--colors-lime-light-a-7);--colors-lime-a-8: var(--colors-lime-light-a-8);--colors-lime-a-9: var(--colors-lime-light-a-9);--colors-lime-a-10: var(--colors-lime-light-a-10);--colors-lime-a-11: var(--colors-lime-light-a-11);--colors-lime-a-12: var(--colors-lime-light-a-12);--colors-lime-p3-1: var(--colors-lime-light-p3-1);--colors-lime-p3-2: var(--colors-lime-light-p3-2);--colors-lime-p3-3: var(--colors-lime-light-p3-3);--colors-lime-p3-4: var(--colors-lime-light-p3-4);--colors-lime-p3-5: var(--colors-lime-light-p3-5);--colors-lime-p3-6: var(--colors-lime-light-p3-6);--colors-lime-p3-7: var(--colors-lime-light-p3-7);--colors-lime-p3-8: var(--colors-lime-light-p3-8);--colors-lime-p3-9: var(--colors-lime-light-p3-9);--colors-lime-p3-10: var(--colors-lime-light-p3-10);--colors-lime-p3-11: var(--colors-lime-light-p3-11);--colors-lime-p3-12: var(--colors-lime-light-p3-12);--colors-lime-p3-a-1: var(--colors-lime-light-p3-a-1);--colors-lime-p3-a-2: var(--colors-lime-light-p3-a-2);--colors-lime-p3-a-3: var(--colors-lime-light-p3-a-3);--colors-lime-p3-a-4: var(--colors-lime-light-p3-a-4);--colors-lime-p3-a-5: var(--colors-lime-light-p3-a-5);--colors-lime-p3-a-6: var(--colors-lime-light-p3-a-6);--colors-lime-p3-a-7: var(--colors-lime-light-p3-a-7);--colors-lime-p3-a-8: var(--colors-lime-light-p3-a-8);--colors-lime-p3-a-9: var(--colors-lime-light-p3-a-9);--colors-lime-p3-a-10: var(--colors-lime-light-p3-a-10);--colors-lime-p3-a-11: var(--colors-lime-light-p3-a-11);--colors-lime-p3-a-12: var(--colors-lime-light-p3-a-12);--colors-orange-1: var(--colors-orange-light-1);--colors-orange-2: var(--colors-orange-light-2);--colors-orange-3: var(--colors-orange-light-3);--colors-orange-4: var(--colors-orange-light-4);--colors-orange-5: var(--colors-orange-light-5);--colors-orange-6: var(--colors-orange-light-6);--colors-orange-7: var(--colors-orange-light-7);--colors-orange-8: var(--colors-orange-light-8);--colors-orange-9: var(--colors-orange-light-9);--colors-orange-10: var(--colors-orange-light-10);--colors-orange-11: var(--colors-orange-light-11);--colors-orange-12: var(--colors-orange-light-12);--colors-orange-light-1: #fefcfb;--colors-orange-light-2: #fff7ed;--colors-orange-light-3: #ffefd6;--colors-orange-light-4: #ffdfb5;--colors-orange-light-5: #ffd19a;--colors-orange-light-6: #ffc182;--colors-orange-light-7: #f5ae73;--colors-orange-light-8: #ec9455;--colors-orange-light-9: #f76b15;--colors-orange-light-10: #ef5f00;--colors-orange-light-11: #cc4e00;--colors-orange-light-12: #582d1d;--colors-orange-light-a-1: #c0400004;--colors-orange-light-a-2: #ff8e0012;--colors-orange-light-a-3: #ff9c0029;--colors-orange-light-a-4: #ff91014a;--colors-orange-light-a-5: #ff8b0065;--colors-orange-light-a-6: #ff81007d;--colors-orange-light-a-7: #ed6c008c;--colors-orange-light-a-8: #e35f00aa;--colors-orange-light-a-9: #f65e00ea;--colors-orange-light-a-10: #ef5f00;--colors-orange-light-a-11: #cc4e00;--colors-orange-light-a-12: #431200e2;--colors-orange-light-p3-1: color(display-p3 .995 .988 .985);--colors-orange-light-p3-2: color(display-p3 .994 .968 .934);--colors-orange-light-p3-3: color(display-p3 .989 .938 .85);--colors-orange-light-p3-4: color(display-p3 1 .874 .687);--colors-orange-light-p3-5: color(display-p3 1 .821 .583);--colors-orange-light-p3-6: color(display-p3 .975 .767 .545);--colors-orange-light-p3-7: color(display-p3 .919 .693 .486);--colors-orange-light-p3-8: color(display-p3 .877 .597 .379);--colors-orange-light-p3-9: color(display-p3 .9 .45 .2);--colors-orange-light-p3-10: color(display-p3 .87 .409 .164);--colors-orange-light-p3-11: color(display-p3 .76 .34 0);--colors-orange-light-p3-12: color(display-p3 .323 .185 .127);--colors-orange-light-p3-a-1: color(display-p3 .757 .267 .024 / .016);--colors-orange-light-p3-a-2: color(display-p3 .886 .533 .008 / .067);--colors-orange-light-p3-a-3: color(display-p3 .922 .584 .008 / .15);--colors-orange-light-p3-a-4: color(display-p3 1 .604 .004 / .314);--colors-orange-light-p3-a-5: color(display-p3 1 .569 .004 / .416);--colors-orange-light-p3-a-6: color(display-p3 .949 .494 .004 / .455);--colors-orange-light-p3-a-7: color(display-p3 .839 .408 0 / .514);--colors-orange-light-p3-a-8: color(display-p3 .804 .349 0 / .62);--colors-orange-light-p3-a-9: color(display-p3 .878 .314 0 / .8);--colors-orange-light-p3-a-10: color(display-p3 .843 .29 0 / .836);--colors-orange-light-p3-a-11: color(display-p3 .76 .34 0);--colors-orange-light-p3-a-12: color(display-p3 .323 .185 .127);--colors-orange-dark-1: #17120e;--colors-orange-dark-2: #1e160f;--colors-orange-dark-3: #331e0b;--colors-orange-dark-4: #462100;--colors-orange-dark-5: #562800;--colors-orange-dark-6: #66350c;--colors-orange-dark-7: #7e451d;--colors-orange-dark-8: #a35829;--colors-orange-dark-9: #f76b15;--colors-orange-dark-10: #ff801f;--colors-orange-dark-11: #ffa057;--colors-orange-dark-12: #ffe0c2;--colors-orange-dark-a-1: #ec360007;--colors-orange-dark-a-2: #fe6d000e;--colors-orange-dark-a-3: #fb6a0025;--colors-orange-dark-a-4: #ff590039;--colors-orange-dark-a-5: #ff61004a;--colors-orange-dark-a-6: #fd75045c;--colors-orange-dark-a-7: #ff832c75;--colors-orange-dark-a-8: #fe84389d;--colors-orange-dark-a-9: #fe6d15f7;--colors-orange-dark-a-10: #ff801f;--colors-orange-dark-a-11: #ffa057;--colors-orange-dark-a-12: #ffe0c2;--colors-orange-dark-p3-1: color(display-p3 .088 .07 .057);--colors-orange-dark-p3-2: color(display-p3 .113 .089 .061);--colors-orange-dark-p3-3: color(display-p3 .189 .12 .056);--colors-orange-dark-p3-4: color(display-p3 .262 .132 0);--colors-orange-dark-p3-5: color(display-p3 .315 .168 .016);--colors-orange-dark-p3-6: color(display-p3 .376 .219 .088);--colors-orange-dark-p3-7: color(display-p3 .465 .283 .147);--colors-orange-dark-p3-8: color(display-p3 .601 .359 .201);--colors-orange-dark-p3-9: color(display-p3 .9 .45 .2);--colors-orange-dark-p3-10: color(display-p3 .98 .51 .23);--colors-orange-dark-p3-11: color(display-p3 1 .63 .38);--colors-orange-dark-p3-12: color(display-p3 .98 .883 .775);--colors-orange-dark-p3-a-1: color(display-p3 .961 .247 0 / .022);--colors-orange-dark-p3-a-2: color(display-p3 .992 .529 0 / .051);--colors-orange-dark-p3-a-3: color(display-p3 .996 .486 0 / .131);--colors-orange-dark-p3-a-4: color(display-p3 .996 .384 0 / .211);--colors-orange-dark-p3-a-5: color(display-p3 1 .455 0 / .265);--colors-orange-dark-p3-a-6: color(display-p3 1 .529 .129 / .332);--colors-orange-dark-p3-a-7: color(display-p3 1 .569 .251 / .429);--colors-orange-dark-p3-a-8: color(display-p3 1 .584 .302 / .572);--colors-orange-dark-p3-a-9: color(display-p3 1 .494 .216 / .895);--colors-orange-dark-p3-a-10: color(display-p3 1 .522 .235 / .979);--colors-orange-dark-p3-a-11: color(display-p3 1 .63 .38);--colors-orange-dark-p3-a-12: color(display-p3 .98 .883 .775);--colors-orange-a-1: var(--colors-orange-light-a-1);--colors-orange-a-2: var(--colors-orange-light-a-2);--colors-orange-a-3: var(--colors-orange-light-a-3);--colors-orange-a-4: var(--colors-orange-light-a-4);--colors-orange-a-5: var(--colors-orange-light-a-5);--colors-orange-a-6: var(--colors-orange-light-a-6);--colors-orange-a-7: var(--colors-orange-light-a-7);--colors-orange-a-8: var(--colors-orange-light-a-8);--colors-orange-a-9: var(--colors-orange-light-a-9);--colors-orange-a-10: var(--colors-orange-light-a-10);--colors-orange-a-11: var(--colors-orange-light-a-11);--colors-orange-a-12: var(--colors-orange-light-a-12);--colors-orange-p3-1: var(--colors-orange-light-p3-1);--colors-orange-p3-2: var(--colors-orange-light-p3-2);--colors-orange-p3-3: var(--colors-orange-light-p3-3);--colors-orange-p3-4: var(--colors-orange-light-p3-4);--colors-orange-p3-5: var(--colors-orange-light-p3-5);--colors-orange-p3-6: var(--colors-orange-light-p3-6);--colors-orange-p3-7: var(--colors-orange-light-p3-7);--colors-orange-p3-8: var(--colors-orange-light-p3-8);--colors-orange-p3-9: var(--colors-orange-light-p3-9);--colors-orange-p3-10: var(--colors-orange-light-p3-10);--colors-orange-p3-11: var(--colors-orange-light-p3-11);--colors-orange-p3-12: var(--colors-orange-light-p3-12);--colors-orange-p3-a-1: var(--colors-orange-light-p3-a-1);--colors-orange-p3-a-2: var(--colors-orange-light-p3-a-2);--colors-orange-p3-a-3: var(--colors-orange-light-p3-a-3);--colors-orange-p3-a-4: var(--colors-orange-light-p3-a-4);--colors-orange-p3-a-5: var(--colors-orange-light-p3-a-5);--colors-orange-p3-a-6: var(--colors-orange-light-p3-a-6);--colors-orange-p3-a-7: var(--colors-orange-light-p3-a-7);--colors-orange-p3-a-8: var(--colors-orange-light-p3-a-8);--colors-orange-p3-a-9: var(--colors-orange-light-p3-a-9);--colors-orange-p3-a-10: var(--colors-orange-light-p3-a-10);--colors-orange-p3-a-11: var(--colors-orange-light-p3-a-11);--colors-orange-p3-a-12: var(--colors-orange-light-p3-a-12);--colors-pink-1: var(--colors-pink-light-1);--colors-pink-2: var(--colors-pink-light-2);--colors-pink-3: var(--colors-pink-light-3);--colors-pink-4: var(--colors-pink-light-4);--colors-pink-5: var(--colors-pink-light-5);--colors-pink-6: var(--colors-pink-light-6);--colors-pink-7: var(--colors-pink-light-7);--colors-pink-8: var(--colors-pink-light-8);--colors-pink-9: var(--colors-pink-light-9);--colors-pink-10: var(--colors-pink-light-10);--colors-pink-11: var(--colors-pink-light-11);--colors-pink-12: var(--colors-pink-light-12);--colors-pink-light-1: #fffcfe;--colors-pink-light-2: #fef7fb;--colors-pink-light-3: #fee9f5;--colors-pink-light-4: #fbdcef;--colors-pink-light-5: #f6cee7;--colors-pink-light-6: #efbfdd;--colors-pink-light-7: #e7acd0;--colors-pink-light-8: #dd93c2;--colors-pink-light-9: #d6409f;--colors-pink-light-10: #cf3897;--colors-pink-light-11: #c2298a;--colors-pink-light-12: #651249;--colors-pink-light-a-1: #ff00aa03;--colors-pink-light-a-2: #e0008008;--colors-pink-light-a-3: #f4008c16;--colors-pink-light-a-4: #e2008b23;--colors-pink-light-a-5: #d1008331;--colors-pink-light-a-6: #c0007840;--colors-pink-light-a-7: #b6006f53;--colors-pink-light-a-8: #af006f6c;--colors-pink-light-a-9: #c8007fbf;--colors-pink-light-a-10: #c2007ac7;--colors-pink-light-a-11: #b60074d6;--colors-pink-light-a-12: #59003bed;--colors-pink-light-p3-1: color(display-p3 .998 .989 .996);--colors-pink-light-p3-2: color(display-p3 .992 .97 .985);--colors-pink-light-p3-3: color(display-p3 .981 .917 .96);--colors-pink-light-p3-4: color(display-p3 .963 .867 .932);--colors-pink-light-p3-5: color(display-p3 .939 .815 .899);--colors-pink-light-p3-6: color(display-p3 .907 .756 .859);--colors-pink-light-p3-7: color(display-p3 .869 .683 .81);--colors-pink-light-p3-8: color(display-p3 .825 .59 .751);--colors-pink-light-p3-9: color(display-p3 .775 .297 .61);--colors-pink-light-p3-10: color(display-p3 .748 .27 .581);--colors-pink-light-p3-11: color(display-p3 .698 .219 .528);--colors-pink-light-p3-12: color(display-p3 .363 .101 .279);--colors-pink-light-p3-a-1: color(display-p3 .675 .024 .675 / .012);--colors-pink-light-p3-a-2: color(display-p3 .757 .02 .51 / .032);--colors-pink-light-p3-a-3: color(display-p3 .765 .008 .529 / .083);--colors-pink-light-p3-a-4: color(display-p3 .737 .008 .506 / .134);--colors-pink-light-p3-a-5: color(display-p3 .663 .004 .451 / .185);--colors-pink-light-p3-a-6: color(display-p3 .616 .004 .424 / .244);--colors-pink-light-p3-a-7: color(display-p3 .596 .004 .412 / .318);--colors-pink-light-p3-a-8: color(display-p3 .573 .004 .404 / .412);--colors-pink-light-p3-a-9: color(display-p3 .682 0 .447 / .702);--colors-pink-light-p3-a-10: color(display-p3 .655 0 .424 / .73);--colors-pink-light-p3-a-11: color(display-p3 .698 .219 .528);--colors-pink-light-p3-a-12: color(display-p3 .363 .101 .279);--colors-pink-dark-1: #191117;--colors-pink-dark-2: #21121d;--colors-pink-dark-3: #37172f;--colors-pink-dark-4: #4b143d;--colors-pink-dark-5: #591c47;--colors-pink-dark-6: #692955;--colors-pink-dark-7: #833869;--colors-pink-dark-8: #a84885;--colors-pink-dark-9: #d6409f;--colors-pink-dark-10: #de51a8;--colors-pink-dark-11: #ff8dcc;--colors-pink-dark-12: #fdd1ea;--colors-pink-dark-a-1: #f412bc09;--colors-pink-dark-a-2: #f420bb12;--colors-pink-dark-a-3: #fe37cc29;--colors-pink-dark-a-4: #fc1ec43f;--colors-pink-dark-a-5: #fd35c24e;--colors-pink-dark-a-6: #fd51c75f;--colors-pink-dark-a-7: #fd62c87b;--colors-pink-dark-a-8: #ff68c8a2;--colors-pink-dark-a-9: #fe49bcd4;--colors-pink-dark-a-10: #ff5cc0dc;--colors-pink-dark-a-11: #ff8dcc;--colors-pink-dark-a-12: #ffd3ecfd;--colors-pink-dark-p3-1: color(display-p3 .093 .068 .089);--colors-pink-dark-p3-2: color(display-p3 .121 .073 .11);--colors-pink-dark-p3-3: color(display-p3 .198 .098 .179);--colors-pink-dark-p3-4: color(display-p3 .271 .095 .231);--colors-pink-dark-p3-5: color(display-p3 .32 .127 .273);--colors-pink-dark-p3-6: color(display-p3 .382 .177 .326);--colors-pink-dark-p3-7: color(display-p3 .477 .238 .405);--colors-pink-dark-p3-8: color(display-p3 .612 .304 .51);--colors-pink-dark-p3-9: color(display-p3 .775 .297 .61);--colors-pink-dark-p3-10: color(display-p3 .808 .356 .645);--colors-pink-dark-p3-11: color(display-p3 1 .535 .78);--colors-pink-dark-p3-12: color(display-p3 .964 .826 .912);--colors-pink-dark-p3-a-1: color(display-p3 .984 .071 .855 / .03);--colors-pink-dark-p3-a-2: color(display-p3 1 .2 .8 / .059);--colors-pink-dark-p3-a-3: color(display-p3 1 .294 .886 / .139);--colors-pink-dark-p3-a-4: color(display-p3 1 .192 .82 / .219);--colors-pink-dark-p3-a-5: color(display-p3 1 .282 .827 / .274);--colors-pink-dark-p3-a-6: color(display-p3 1 .396 .835 / .337);--colors-pink-dark-p3-a-7: color(display-p3 1 .459 .831 / .442);--colors-pink-dark-p3-a-8: color(display-p3 1 .478 .827 / .585);--colors-pink-dark-p3-a-9: color(display-p3 1 .373 .784 / .761);--colors-pink-dark-p3-a-10: color(display-p3 1 .435 .792 / .795);--colors-pink-dark-p3-a-11: color(display-p3 1 .535 .78);--colors-pink-dark-p3-a-12: color(display-p3 .964 .826 .912);--colors-pink-a-1: var(--colors-pink-light-a-1);--colors-pink-a-2: var(--colors-pink-light-a-2);--colors-pink-a-3: var(--colors-pink-light-a-3);--colors-pink-a-4: var(--colors-pink-light-a-4);--colors-pink-a-5: var(--colors-pink-light-a-5);--colors-pink-a-6: var(--colors-pink-light-a-6);--colors-pink-a-7: var(--colors-pink-light-a-7);--colors-pink-a-8: var(--colors-pink-light-a-8);--colors-pink-a-9: var(--colors-pink-light-a-9);--colors-pink-a-10: var(--colors-pink-light-a-10);--colors-pink-a-11: var(--colors-pink-light-a-11);--colors-pink-a-12: var(--colors-pink-light-a-12);--colors-pink-p3-1: var(--colors-pink-light-p3-1);--colors-pink-p3-2: var(--colors-pink-light-p3-2);--colors-pink-p3-3: var(--colors-pink-light-p3-3);--colors-pink-p3-4: var(--colors-pink-light-p3-4);--colors-pink-p3-5: var(--colors-pink-light-p3-5);--colors-pink-p3-6: var(--colors-pink-light-p3-6);--colors-pink-p3-7: var(--colors-pink-light-p3-7);--colors-pink-p3-8: var(--colors-pink-light-p3-8);--colors-pink-p3-9: var(--colors-pink-light-p3-9);--colors-pink-p3-10: var(--colors-pink-light-p3-10);--colors-pink-p3-11: var(--colors-pink-light-p3-11);--colors-pink-p3-12: var(--colors-pink-light-p3-12);--colors-pink-p3-a-1: var(--colors-pink-light-p3-a-1);--colors-pink-p3-a-2: var(--colors-pink-light-p3-a-2);--colors-pink-p3-a-3: var(--colors-pink-light-p3-a-3);--colors-pink-p3-a-4: var(--colors-pink-light-p3-a-4);--colors-pink-p3-a-5: var(--colors-pink-light-p3-a-5);--colors-pink-p3-a-6: var(--colors-pink-light-p3-a-6);--colors-pink-p3-a-7: var(--colors-pink-light-p3-a-7);--colors-pink-p3-a-8: var(--colors-pink-light-p3-a-8);--colors-pink-p3-a-9: var(--colors-pink-light-p3-a-9);--colors-pink-p3-a-10: var(--colors-pink-light-p3-a-10);--colors-pink-p3-a-11: var(--colors-pink-light-p3-a-11);--colors-pink-p3-a-12: var(--colors-pink-light-p3-a-12);--colors-purple-1: var(--colors-purple-light-1);--colors-purple-2: var(--colors-purple-light-2);--colors-purple-3: var(--colors-purple-light-3);--colors-purple-4: var(--colors-purple-light-4);--colors-purple-5: var(--colors-purple-light-5);--colors-purple-6: var(--colors-purple-light-6);--colors-purple-7: var(--colors-purple-light-7);--colors-purple-8: var(--colors-purple-light-8);--colors-purple-9: var(--colors-purple-light-9);--colors-purple-10: var(--colors-purple-light-10);--colors-purple-11: var(--colors-purple-light-11);--colors-purple-12: var(--colors-purple-light-12);--colors-purple-light-1: #fefcfe;--colors-purple-light-2: #fbf7fe;--colors-purple-light-3: #f7edfe;--colors-purple-light-4: #f2e2fc;--colors-purple-light-5: #ead5f9;--colors-purple-light-6: #e0c4f4;--colors-purple-light-7: #d1afec;--colors-purple-light-8: #be93e4;--colors-purple-light-9: #8e4ec6;--colors-purple-light-10: #8347b9;--colors-purple-light-11: #8145b5;--colors-purple-light-12: #402060;--colors-purple-light-a-1: #aa00aa03;--colors-purple-light-a-2: #8000e008;--colors-purple-light-a-3: #8e00f112;--colors-purple-light-a-4: #8d00e51d;--colors-purple-light-a-5: #8000db2a;--colors-purple-light-a-6: #7a01d03b;--colors-purple-light-a-7: #6d00c350;--colors-purple-light-a-8: #6600c06c;--colors-purple-light-a-9: #5c00adb1;--colors-purple-light-a-10: #53009eb8;--colors-purple-light-a-11: #52009aba;--colors-purple-light-a-12: #250049df;--colors-purple-light-p3-1: color(display-p3 .995 .988 .996);--colors-purple-light-p3-2: color(display-p3 .983 .971 .993);--colors-purple-light-p3-3: color(display-p3 .963 .931 .989);--colors-purple-light-p3-4: color(display-p3 .937 .888 .981);--colors-purple-light-p3-5: color(display-p3 .904 .837 .966);--colors-purple-light-p3-6: color(display-p3 .86 .774 .942);--colors-purple-light-p3-7: color(display-p3 .799 .69 .91);--colors-purple-light-p3-8: color(display-p3 .719 .583 .874);--colors-purple-light-p3-9: color(display-p3 .523 .318 .751);--colors-purple-light-p3-10: color(display-p3 .483 .289 .7);--colors-purple-light-p3-11: color(display-p3 .473 .281 .687);--colors-purple-light-p3-12: color(display-p3 .234 .132 .363);--colors-purple-light-p3-a-1: color(display-p3 .675 .024 .675 / .012);--colors-purple-light-p3-a-2: color(display-p3 .443 .024 .722 / .028);--colors-purple-light-p3-a-3: color(display-p3 .506 .008 .835 / .071);--colors-purple-light-p3-a-4: color(display-p3 .451 .004 .831 / .114);--colors-purple-light-p3-a-5: color(display-p3 .431 .004 .788 / .165);--colors-purple-light-p3-a-6: color(display-p3 .384 .004 .745 / .228);--colors-purple-light-p3-a-7: color(display-p3 .357 .004 .71 / .31);--colors-purple-light-p3-a-8: color(display-p3 .322 .004 .702 / .416);--colors-purple-light-p3-a-9: color(display-p3 .298 0 .639 / .683);--colors-purple-light-p3-a-10: color(display-p3 .271 0 .58 / .71);--colors-purple-light-p3-a-11: color(display-p3 .473 .281 .687);--colors-purple-light-p3-a-12: color(display-p3 .234 .132 .363);--colors-purple-dark-1: #18111b;--colors-purple-dark-2: #1e1523;--colors-purple-dark-3: #301c3b;--colors-purple-dark-4: #3d224e;--colors-purple-dark-5: #48295c;--colors-purple-dark-6: #54346b;--colors-purple-dark-7: #664282;--colors-purple-dark-8: #8457aa;--colors-purple-dark-9: #8e4ec6;--colors-purple-dark-10: #9a5cd0;--colors-purple-dark-11: #d19dff;--colors-purple-dark-12: #ecd9fa;--colors-purple-dark-a-1: #b412f90b;--colors-purple-dark-a-2: #b744f714;--colors-purple-dark-a-3: #c150ff2d;--colors-purple-dark-a-4: #bb53fd42;--colors-purple-dark-a-5: #be5cfd51;--colors-purple-dark-a-6: #c16dfd61;--colors-purple-dark-a-7: #c378fd7a;--colors-purple-dark-a-8: #c47effa4;--colors-purple-dark-a-9: #b661ffc2;--colors-purple-dark-a-10: #bc6fffcd;--colors-purple-dark-a-11: #d19dff;--colors-purple-dark-a-12: #f1ddfffa;--colors-purple-dark-p3-1: color(display-p3 .09 .068 .103);--colors-purple-dark-p3-2: color(display-p3 .113 .082 .134);--colors-purple-dark-p3-3: color(display-p3 .175 .112 .224);--colors-purple-dark-p3-4: color(display-p3 .224 .137 .297);--colors-purple-dark-p3-5: color(display-p3 .264 .167 .349);--colors-purple-dark-p3-6: color(display-p3 .311 .208 .406);--colors-purple-dark-p3-7: color(display-p3 .381 .266 .496);--colors-purple-dark-p3-8: color(display-p3 .49 .349 .649);--colors-purple-dark-p3-9: color(display-p3 .523 .318 .751);--colors-purple-dark-p3-10: color(display-p3 .57 .373 .791);--colors-purple-dark-p3-11: color(display-p3 .8 .62 1);--colors-purple-dark-p3-12: color(display-p3 .913 .854 .971);--colors-purple-dark-p3-a-1: color(display-p3 .686 .071 .996 / .038);--colors-purple-dark-p3-a-2: color(display-p3 .722 .286 .996 / .072);--colors-purple-dark-p3-a-3: color(display-p3 .718 .349 .996 / .169);--colors-purple-dark-p3-a-4: color(display-p3 .702 .353 1 / .248);--colors-purple-dark-p3-a-5: color(display-p3 .718 .404 1 / .303);--colors-purple-dark-p3-a-6: color(display-p3 .733 .455 1 / .366);--colors-purple-dark-p3-a-7: color(display-p3 .753 .506 1 / .458);--colors-purple-dark-p3-a-8: color(display-p3 .749 .522 1 / .622);--colors-purple-dark-p3-a-9: color(display-p3 .686 .408 1 / .736);--colors-purple-dark-p3-a-10: color(display-p3 .71 .459 1 / .778);--colors-purple-dark-p3-a-11: color(display-p3 .8 .62 1);--colors-purple-dark-p3-a-12: color(display-p3 .913 .854 .971);--colors-purple-a-1: var(--colors-purple-light-a-1);--colors-purple-a-2: var(--colors-purple-light-a-2);--colors-purple-a-3: var(--colors-purple-light-a-3);--colors-purple-a-4: var(--colors-purple-light-a-4);--colors-purple-a-5: var(--colors-purple-light-a-5);--colors-purple-a-6: var(--colors-purple-light-a-6);--colors-purple-a-7: var(--colors-purple-light-a-7);--colors-purple-a-8: var(--colors-purple-light-a-8);--colors-purple-a-9: var(--colors-purple-light-a-9);--colors-purple-a-10: var(--colors-purple-light-a-10);--colors-purple-a-11: var(--colors-purple-light-a-11);--colors-purple-a-12: var(--colors-purple-light-a-12);--colors-purple-p3-1: var(--colors-purple-light-p3-1);--colors-purple-p3-2: var(--colors-purple-light-p3-2);--colors-purple-p3-3: var(--colors-purple-light-p3-3);--colors-purple-p3-4: var(--colors-purple-light-p3-4);--colors-purple-p3-5: var(--colors-purple-light-p3-5);--colors-purple-p3-6: var(--colors-purple-light-p3-6);--colors-purple-p3-7: var(--colors-purple-light-p3-7);--colors-purple-p3-8: var(--colors-purple-light-p3-8);--colors-purple-p3-9: var(--colors-purple-light-p3-9);--colors-purple-p3-10: var(--colors-purple-light-p3-10);--colors-purple-p3-11: var(--colors-purple-light-p3-11);--colors-purple-p3-12: var(--colors-purple-light-p3-12);--colors-purple-p3-a-1: var(--colors-purple-light-p3-a-1);--colors-purple-p3-a-2: var(--colors-purple-light-p3-a-2);--colors-purple-p3-a-3: var(--colors-purple-light-p3-a-3);--colors-purple-p3-a-4: var(--colors-purple-light-p3-a-4);--colors-purple-p3-a-5: var(--colors-purple-light-p3-a-5);--colors-purple-p3-a-6: var(--colors-purple-light-p3-a-6);--colors-purple-p3-a-7: var(--colors-purple-light-p3-a-7);--colors-purple-p3-a-8: var(--colors-purple-light-p3-a-8);--colors-purple-p3-a-9: var(--colors-purple-light-p3-a-9);--colors-purple-p3-a-10: var(--colors-purple-light-p3-a-10);--colors-purple-p3-a-11: var(--colors-purple-light-p3-a-11);--colors-purple-p3-a-12: var(--colors-purple-light-p3-a-12);--colors-red-1: var(--colors-red-light-1);--colors-red-2: var(--colors-red-light-2);--colors-red-3: var(--colors-red-light-3);--colors-red-4: var(--colors-red-light-4);--colors-red-5: var(--colors-red-light-5);--colors-red-6: var(--colors-red-light-6);--colors-red-7: var(--colors-red-light-7);--colors-red-8: var(--colors-red-light-8);--colors-red-9: var(--colors-red-light-9);--colors-red-10: var(--colors-red-light-10);--colors-red-11: var(--colors-red-light-11);--colors-red-12: var(--colors-red-light-12);--colors-red-light-1: #fffcfc;--colors-red-light-2: #fff7f7;--colors-red-light-3: #feebec;--colors-red-light-4: #ffdbdc;--colors-red-light-5: #ffcdce;--colors-red-light-6: #fdbdbe;--colors-red-light-7: #f4a9aa;--colors-red-light-8: #eb8e90;--colors-red-light-9: #e5484d;--colors-red-light-10: #dc3e42;--colors-red-light-11: #ce2c31;--colors-red-light-12: #641723;--colors-red-light-a-1: #ff000003;--colors-red-light-a-2: #ff000008;--colors-red-light-a-3: #f3000d14;--colors-red-light-a-4: #ff000824;--colors-red-light-a-5: #ff000632;--colors-red-light-a-6: #f8000442;--colors-red-light-a-7: #df000356;--colors-red-light-a-8: #d2000571;--colors-red-light-a-9: #db0007b7;--colors-red-light-a-10: #d10005c1;--colors-red-light-a-11: #c40006d3;--colors-red-light-a-12: #55000de8;--colors-red-light-p3-1: color(display-p3 .998 .989 .988);--colors-red-light-p3-2: color(display-p3 .995 .971 .971);--colors-red-light-p3-3: color(display-p3 .985 .925 .925);--colors-red-light-p3-4: color(display-p3 .999 .866 .866);--colors-red-light-p3-5: color(display-p3 .984 .812 .811);--colors-red-light-p3-6: color(display-p3 .955 .751 .749);--colors-red-light-p3-7: color(display-p3 .915 .675 .672);--colors-red-light-p3-8: color(display-p3 .872 .575 .572);--colors-red-light-p3-9: color(display-p3 .83 .329 .324);--colors-red-light-p3-10: color(display-p3 .798 .294 .285);--colors-red-light-p3-11: color(display-p3 .744 .234 .222);--colors-red-light-p3-12: color(display-p3 .36 .115 .143);--colors-red-light-p3-a-1: color(display-p3 .675 .024 .024 / .012);--colors-red-light-p3-a-2: color(display-p3 .863 .024 .024 / .028);--colors-red-light-p3-a-3: color(display-p3 .792 .008 .008 / .075);--colors-red-light-p3-a-4: color(display-p3 1 .008 .008 / .134);--colors-red-light-p3-a-5: color(display-p3 .918 .008 .008 / .189);--colors-red-light-p3-a-6: color(display-p3 .831 .02 .004 / .251);--colors-red-light-p3-a-7: color(display-p3 .741 .016 .004 / .33);--colors-red-light-p3-a-8: color(display-p3 .698 .012 .004 / .428);--colors-red-light-p3-a-9: color(display-p3 .749 .008 0 / .675);--colors-red-light-p3-a-10: color(display-p3 .714 .012 0 / .714);--colors-red-light-p3-a-11: color(display-p3 .744 .234 .222);--colors-red-light-p3-a-12: color(display-p3 .36 .115 .143);--colors-red-dark-1: #191111;--colors-red-dark-2: #201314;--colors-red-dark-3: #3b1219;--colors-red-dark-4: #500f1c;--colors-red-dark-5: #611623;--colors-red-dark-6: #72232d;--colors-red-dark-7: #8c333a;--colors-red-dark-8: #b54548;--colors-red-dark-9: #e5484d;--colors-red-dark-10: #ec5d5e;--colors-red-dark-11: #ff9592;--colors-red-dark-12: #ffd1d9;--colors-red-dark-a-1: #f4121209;--colors-red-dark-a-2: #f22f3e11;--colors-red-dark-a-3: #ff173f2d;--colors-red-dark-a-4: #fe0a3b44;--colors-red-dark-a-5: #ff204756;--colors-red-dark-a-6: #ff3e5668;--colors-red-dark-a-7: #ff536184;--colors-red-dark-a-8: #ff5d61b0;--colors-red-dark-a-9: #fe4e54e4;--colors-red-dark-a-10: #ff6465eb;--colors-red-dark-a-11: #ff9592;--colors-red-dark-a-12: #ffd1d9;--colors-red-dark-p3-1: color(display-p3 .093 .068 .067);--colors-red-dark-p3-2: color(display-p3 .118 .077 .079);--colors-red-dark-p3-3: color(display-p3 .211 .081 .099);--colors-red-dark-p3-4: color(display-p3 .287 .079 .113);--colors-red-dark-p3-5: color(display-p3 .348 .11 .142);--colors-red-dark-p3-6: color(display-p3 .414 .16 .183);--colors-red-dark-p3-7: color(display-p3 .508 .224 .236);--colors-red-dark-p3-8: color(display-p3 .659 .298 .297);--colors-red-dark-p3-9: color(display-p3 .83 .329 .324);--colors-red-dark-p3-10: color(display-p3 .861 .403 .387);--colors-red-dark-p3-11: color(display-p3 1 .57 .55);--colors-red-dark-p3-12: color(display-p3 .971 .826 .852);--colors-red-dark-p3-a-1: color(display-p3 .984 .071 .071 / .03);--colors-red-dark-p3-a-2: color(display-p3 .996 .282 .282 / .055);--colors-red-dark-p3-a-3: color(display-p3 1 .169 .271 / .156);--colors-red-dark-p3-a-4: color(display-p3 1 .118 .267 / .236);--colors-red-dark-p3-a-5: color(display-p3 1 .212 .314 / .303);--colors-red-dark-p3-a-6: color(display-p3 1 .318 .38 / .374);--colors-red-dark-p3-a-7: color(display-p3 1 .4 .424 / .475);--colors-red-dark-p3-a-8: color(display-p3 1 .431 .431 / .635);--colors-red-dark-p3-a-9: color(display-p3 1 .388 .384 / .82);--colors-red-dark-p3-a-10: color(display-p3 1 .463 .447 / .853);--colors-red-dark-p3-a-11: color(display-p3 1 .57 .55);--colors-red-dark-p3-a-12: color(display-p3 .971 .826 .852);--colors-red-a-1: var(--colors-red-light-a-1);--colors-red-a-2: var(--colors-red-light-a-2);--colors-red-a-3: var(--colors-red-light-a-3);--colors-red-a-4: var(--colors-red-light-a-4);--colors-red-a-5: var(--colors-red-light-a-5);--colors-red-a-6: var(--colors-red-light-a-6);--colors-red-a-7: var(--colors-red-light-a-7);--colors-red-a-8: var(--colors-red-light-a-8);--colors-red-a-9: var(--colors-red-light-a-9);--colors-red-a-10: var(--colors-red-light-a-10);--colors-red-a-11: var(--colors-red-light-a-11);--colors-red-a-12: var(--colors-red-light-a-12);--colors-red-p3-1: var(--colors-red-light-p3-1);--colors-red-p3-2: var(--colors-red-light-p3-2);--colors-red-p3-3: var(--colors-red-light-p3-3);--colors-red-p3-4: var(--colors-red-light-p3-4);--colors-red-p3-5: var(--colors-red-light-p3-5);--colors-red-p3-6: var(--colors-red-light-p3-6);--colors-red-p3-7: var(--colors-red-light-p3-7);--colors-red-p3-8: var(--colors-red-light-p3-8);--colors-red-p3-9: var(--colors-red-light-p3-9);--colors-red-p3-10: var(--colors-red-light-p3-10);--colors-red-p3-11: var(--colors-red-light-p3-11);--colors-red-p3-12: var(--colors-red-light-p3-12);--colors-red-p3-a-1: var(--colors-red-light-p3-a-1);--colors-red-p3-a-2: var(--colors-red-light-p3-a-2);--colors-red-p3-a-3: var(--colors-red-light-p3-a-3);--colors-red-p3-a-4: var(--colors-red-light-p3-a-4);--colors-red-p3-a-5: var(--colors-red-light-p3-a-5);--colors-red-p3-a-6: var(--colors-red-light-p3-a-6);--colors-red-p3-a-7: var(--colors-red-light-p3-a-7);--colors-red-p3-a-8: var(--colors-red-light-p3-a-8);--colors-red-p3-a-9: var(--colors-red-light-p3-a-9);--colors-red-p3-a-10: var(--colors-red-light-p3-a-10);--colors-red-p3-a-11: var(--colors-red-light-p3-a-11);--colors-red-p3-a-12: var(--colors-red-light-p3-a-12);--colors-ruby-1: var(--colors-ruby-light-1);--colors-ruby-2: var(--colors-ruby-light-2);--colors-ruby-3: var(--colors-ruby-light-3);--colors-ruby-4: var(--colors-ruby-light-4);--colors-ruby-5: var(--colors-ruby-light-5);--colors-ruby-6: var(--colors-ruby-light-6);--colors-ruby-7: var(--colors-ruby-light-7);--colors-ruby-8: var(--colors-ruby-light-8);--colors-ruby-9: var(--colors-ruby-light-9);--colors-ruby-10: var(--colors-ruby-light-10);--colors-ruby-11: var(--colors-ruby-light-11);--colors-ruby-12: var(--colors-ruby-light-12);--colors-ruby-light-1: #fffcfd;--colors-ruby-light-2: #fff7f8;--colors-ruby-light-3: #feeaed;--colors-ruby-light-4: #ffdce1;--colors-ruby-light-5: #ffced6;--colors-ruby-light-6: #f8bfc8;--colors-ruby-light-7: #efacb8;--colors-ruby-light-8: #e592a3;--colors-ruby-light-9: #e54666;--colors-ruby-light-10: #dc3b5d;--colors-ruby-light-11: #ca244d;--colors-ruby-light-12: #64172b;--colors-ruby-light-a-1: #ff005503;--colors-ruby-light-a-2: #ff002008;--colors-ruby-light-a-3: #f3002515;--colors-ruby-light-a-4: #ff002523;--colors-ruby-light-a-5: #ff002a31;--colors-ruby-light-a-6: #e4002440;--colors-ruby-light-a-7: #ce002553;--colors-ruby-light-a-8: #c300286d;--colors-ruby-light-a-9: #db002cb9;--colors-ruby-light-a-10: #d2002cc4;--colors-ruby-light-a-11: #c10030db;--colors-ruby-light-a-12: #550016e8;--colors-ruby-light-p3-1: color(display-p3 .998 .989 .992);--colors-ruby-light-p3-2: color(display-p3 .995 .971 .974);--colors-ruby-light-p3-3: color(display-p3 .983 .92 .928);--colors-ruby-light-p3-4: color(display-p3 .987 .869 .885);--colors-ruby-light-p3-5: color(display-p3 .968 .817 .839);--colors-ruby-light-p3-6: color(display-p3 .937 .758 .786);--colors-ruby-light-p3-7: color(display-p3 .897 .685 .721);--colors-ruby-light-p3-8: color(display-p3 .851 .588 .639);--colors-ruby-light-p3-9: color(display-p3 .83 .323 .408);--colors-ruby-light-p3-10: color(display-p3 .795 .286 .375);--colors-ruby-light-p3-11: color(display-p3 .728 .211 .311);--colors-ruby-light-p3-12: color(display-p3 .36 .115 .171);--colors-ruby-light-p3-a-1: color(display-p3 .675 .024 .349 / .012);--colors-ruby-light-p3-a-2: color(display-p3 .863 .024 .024 / .028);--colors-ruby-light-p3-a-3: color(display-p3 .804 .008 .11 / .079);--colors-ruby-light-p3-a-4: color(display-p3 .91 .008 .125 / .13);--colors-ruby-light-p3-a-5: color(display-p3 .831 .004 .133 / .185);--colors-ruby-light-p3-a-6: color(display-p3 .745 .004 .118 / .244);--colors-ruby-light-p3-a-7: color(display-p3 .678 .004 .114 / .314);--colors-ruby-light-p3-a-8: color(display-p3 .639 .004 .125 / .412);--colors-ruby-light-p3-a-9: color(display-p3 .753 0 .129 / .679);--colors-ruby-light-p3-a-10: color(display-p3 .714 0 .125 / .714);--colors-ruby-light-p3-a-11: color(display-p3 .728 .211 .311);--colors-ruby-light-p3-a-12: color(display-p3 .36 .115 .171);--colors-ruby-dark-1: #191113;--colors-ruby-dark-2: #1e1517;--colors-ruby-dark-3: #3a141e;--colors-ruby-dark-4: #4e1325;--colors-ruby-dark-5: #5e1a2e;--colors-ruby-dark-6: #6f2539;--colors-ruby-dark-7: #883447;--colors-ruby-dark-8: #b3445a;--colors-ruby-dark-9: #e54666;--colors-ruby-dark-10: #ec5a72;--colors-ruby-dark-11: #ff949d;--colors-ruby-dark-12: #fed2e1;--colors-ruby-dark-a-1: #f4124a09;--colors-ruby-dark-a-2: #fe5a7f0e;--colors-ruby-dark-a-3: #ff235d2c;--colors-ruby-dark-a-4: #fd195e42;--colors-ruby-dark-a-5: #fe2d6b53;--colors-ruby-dark-a-6: #ff447665;--colors-ruby-dark-a-7: #ff577d80;--colors-ruby-dark-a-8: #ff5c7cae;--colors-ruby-dark-a-9: #fe4c70e4;--colors-ruby-dark-a-10: #ff617beb;--colors-ruby-dark-a-11: #ff949d;--colors-ruby-dark-a-12: #ffd3e2fe;--colors-ruby-dark-p3-1: color(display-p3 .093 .068 .074);--colors-ruby-dark-p3-2: color(display-p3 .113 .083 .089);--colors-ruby-dark-p3-3: color(display-p3 .208 .088 .117);--colors-ruby-dark-p3-4: color(display-p3 .279 .092 .147);--colors-ruby-dark-p3-5: color(display-p3 .337 .12 .18);--colors-ruby-dark-p3-6: color(display-p3 .401 .166 .223);--colors-ruby-dark-p3-7: color(display-p3 .495 .224 .281);--colors-ruby-dark-p3-8: color(display-p3 .652 .295 .359);--colors-ruby-dark-p3-9: color(display-p3 .83 .323 .408);--colors-ruby-dark-p3-10: color(display-p3 .857 .392 .455);--colors-ruby-dark-p3-11: color(display-p3 1 .57 .59);--colors-ruby-dark-p3-12: color(display-p3 .968 .83 .88);--colors-ruby-dark-p3-a-1: color(display-p3 .984 .071 .329 / .03);--colors-ruby-dark-p3-a-2: color(display-p3 .992 .376 .529 / .051);--colors-ruby-dark-p3-a-3: color(display-p3 .996 .196 .404 / .152);--colors-ruby-dark-p3-a-4: color(display-p3 1 .173 .416 / .227);--colors-ruby-dark-p3-a-5: color(display-p3 1 .259 .459 / .29);--colors-ruby-dark-p3-a-6: color(display-p3 1 .341 .506 / .358);--colors-ruby-dark-p3-a-7: color(display-p3 1 .412 .541 / .458);--colors-ruby-dark-p3-a-8: color(display-p3 1 .431 .537 / .627);--colors-ruby-dark-p3-a-9: color(display-p3 1 .376 .482 / .82);--colors-ruby-dark-p3-a-10: color(display-p3 1 .447 .522 / .849);--colors-ruby-dark-p3-a-11: color(display-p3 1 .57 .59);--colors-ruby-dark-p3-a-12: color(display-p3 .968 .83 .88);--colors-ruby-a-1: var(--colors-ruby-light-a-1);--colors-ruby-a-2: var(--colors-ruby-light-a-2);--colors-ruby-a-3: var(--colors-ruby-light-a-3);--colors-ruby-a-4: var(--colors-ruby-light-a-4);--colors-ruby-a-5: var(--colors-ruby-light-a-5);--colors-ruby-a-6: var(--colors-ruby-light-a-6);--colors-ruby-a-7: var(--colors-ruby-light-a-7);--colors-ruby-a-8: var(--colors-ruby-light-a-8);--colors-ruby-a-9: var(--colors-ruby-light-a-9);--colors-ruby-a-10: var(--colors-ruby-light-a-10);--colors-ruby-a-11: var(--colors-ruby-light-a-11);--colors-ruby-a-12: var(--colors-ruby-light-a-12);--colors-ruby-p3-1: var(--colors-ruby-light-p3-1);--colors-ruby-p3-2: var(--colors-ruby-light-p3-2);--colors-ruby-p3-3: var(--colors-ruby-light-p3-3);--colors-ruby-p3-4: var(--colors-ruby-light-p3-4);--colors-ruby-p3-5: var(--colors-ruby-light-p3-5);--colors-ruby-p3-6: var(--colors-ruby-light-p3-6);--colors-ruby-p3-7: var(--colors-ruby-light-p3-7);--colors-ruby-p3-8: var(--colors-ruby-light-p3-8);--colors-ruby-p3-9: var(--colors-ruby-light-p3-9);--colors-ruby-p3-10: var(--colors-ruby-light-p3-10);--colors-ruby-p3-11: var(--colors-ruby-light-p3-11);--colors-ruby-p3-12: var(--colors-ruby-light-p3-12);--colors-ruby-p3-a-1: var(--colors-ruby-light-p3-a-1);--colors-ruby-p3-a-2: var(--colors-ruby-light-p3-a-2);--colors-ruby-p3-a-3: var(--colors-ruby-light-p3-a-3);--colors-ruby-p3-a-4: var(--colors-ruby-light-p3-a-4);--colors-ruby-p3-a-5: var(--colors-ruby-light-p3-a-5);--colors-ruby-p3-a-6: var(--colors-ruby-light-p3-a-6);--colors-ruby-p3-a-7: var(--colors-ruby-light-p3-a-7);--colors-ruby-p3-a-8: var(--colors-ruby-light-p3-a-8);--colors-ruby-p3-a-9: var(--colors-ruby-light-p3-a-9);--colors-ruby-p3-a-10: var(--colors-ruby-light-p3-a-10);--colors-ruby-p3-a-11: var(--colors-ruby-light-p3-a-11);--colors-ruby-p3-a-12: var(--colors-ruby-light-p3-a-12);--colors-teal-1: var(--colors-teal-light-1);--colors-teal-2: var(--colors-teal-light-2);--colors-teal-3: var(--colors-teal-light-3);--colors-teal-4: var(--colors-teal-light-4);--colors-teal-5: var(--colors-teal-light-5);--colors-teal-6: var(--colors-teal-light-6);--colors-teal-7: var(--colors-teal-light-7);--colors-teal-8: var(--colors-teal-light-8);--colors-teal-9: var(--colors-teal-light-9);--colors-teal-10: var(--colors-teal-light-10);--colors-teal-11: var(--colors-teal-light-11);--colors-teal-12: var(--colors-teal-light-12);--colors-teal-light-1: #fafefd;--colors-teal-light-2: #f3fbf9;--colors-teal-light-3: #e0f8f3;--colors-teal-light-4: #ccf3ea;--colors-teal-light-5: #b8eae0;--colors-teal-light-6: #a1ded2;--colors-teal-light-7: #83cdc1;--colors-teal-light-8: #53b9ab;--colors-teal-light-9: #12a594;--colors-teal-light-10: #0d9b8a;--colors-teal-light-11: #008573;--colors-teal-light-12: #0d3d38;--colors-teal-light-a-1: #00cc9905;--colors-teal-light-a-2: #00aa800c;--colors-teal-light-a-3: #00c69d1f;--colors-teal-light-a-4: #00c39633;--colors-teal-light-a-5: #00b49047;--colors-teal-light-a-6: #00a6855e;--colors-teal-light-a-7: #0099807c;--colors-teal-light-a-8: #009783ac;--colors-teal-light-a-9: #009e8ced;--colors-teal-light-a-10: #009684f2;--colors-teal-light-a-11: #008573;--colors-teal-light-a-12: #00332df2;--colors-teal-light-p3-1: color(display-p3 .983 .996 .992);--colors-teal-light-p3-2: color(display-p3 .958 .983 .976);--colors-teal-light-p3-3: color(display-p3 .895 .971 .952);--colors-teal-light-p3-4: color(display-p3 .831 .949 .92);--colors-teal-light-p3-5: color(display-p3 .761 .914 .878);--colors-teal-light-p3-6: color(display-p3 .682 .864 .825);--colors-teal-light-p3-7: color(display-p3 .581 .798 .756);--colors-teal-light-p3-8: color(display-p3 .433 .716 .671);--colors-teal-light-p3-9: color(display-p3 .297 .637 .581);--colors-teal-light-p3-10: color(display-p3 .275 .599 .542);--colors-teal-light-p3-11: color(display-p3 .08 .5 .43);--colors-teal-light-p3-12: color(display-p3 .11 .235 .219);--colors-teal-light-p3-a-1: color(display-p3 .024 .757 .514 / .016);--colors-teal-light-p3-a-2: color(display-p3 .02 .647 .467 / .044);--colors-teal-light-p3-a-3: color(display-p3 .004 .741 .557 / .106);--colors-teal-light-p3-a-4: color(display-p3 .004 .702 .537 / .169);--colors-teal-light-p3-a-5: color(display-p3 .004 .643 .494 / .24);--colors-teal-light-p3-a-6: color(display-p3 .004 .569 .447 / .318);--colors-teal-light-p3-a-7: color(display-p3 .004 .518 .424 / .42);--colors-teal-light-p3-a-8: color(display-p3 0 .506 .424 / .569);--colors-teal-light-p3-a-9: color(display-p3 0 .482 .404 / .702);--colors-teal-light-p3-a-10: color(display-p3 0 .451 .369 / .726);--colors-teal-light-p3-a-11: color(display-p3 .08 .5 .43);--colors-teal-light-p3-a-12: color(display-p3 .11 .235 .219);--colors-teal-dark-1: #0d1514;--colors-teal-dark-2: #111c1b;--colors-teal-dark-3: #0d2d2a;--colors-teal-dark-4: #023b37;--colors-teal-dark-5: #084843;--colors-teal-dark-6: #145750;--colors-teal-dark-7: #1c6961;--colors-teal-dark-8: #207e73;--colors-teal-dark-9: #12a594;--colors-teal-dark-10: #0eb39e;--colors-teal-dark-11: #0bd8b6;--colors-teal-dark-12: #adf0dd;--colors-teal-dark-a-1: #00deab05;--colors-teal-dark-a-2: #12fbe60c;--colors-teal-dark-a-3: #00ffe61e;--colors-teal-dark-a-4: #00ffe92d;--colors-teal-dark-a-5: #00ffea3b;--colors-teal-dark-a-6: #1cffe84b;--colors-teal-dark-a-7: #2efde85f;--colors-teal-dark-a-8: #32ffe775;--colors-teal-dark-a-9: #13ffe49f;--colors-teal-dark-a-10: #0dffe0ae;--colors-teal-dark-a-11: #0afed5d6;--colors-teal-dark-a-12: #b8ffebef;--colors-teal-dark-p3-1: color(display-p3 .059 .083 .079);--colors-teal-dark-p3-2: color(display-p3 .075 .11 .107);--colors-teal-dark-p3-3: color(display-p3 .087 .175 .165);--colors-teal-dark-p3-4: color(display-p3 .087 .227 .214);--colors-teal-dark-p3-5: color(display-p3 .12 .277 .261);--colors-teal-dark-p3-6: color(display-p3 .162 .335 .314);--colors-teal-dark-p3-7: color(display-p3 .205 .406 .379);--colors-teal-dark-p3-8: color(display-p3 .245 .489 .453);--colors-teal-dark-p3-9: color(display-p3 .297 .637 .581);--colors-teal-dark-p3-10: color(display-p3 .319 .69 .62);--colors-teal-dark-p3-11: color(display-p3 .388 .835 .719);--colors-teal-dark-p3-12: color(display-p3 .734 .934 .87);--colors-teal-dark-p3-a-1: color(display-p3 0 .992 .761 / .017);--colors-teal-dark-p3-a-2: color(display-p3 .235 .988 .902 / .047);--colors-teal-dark-p3-a-3: color(display-p3 .235 1 .898 / .118);--colors-teal-dark-p3-a-4: color(display-p3 .18 .996 .929 / .173);--colors-teal-dark-p3-a-5: color(display-p3 .31 1 .933 / .227);--colors-teal-dark-p3-a-6: color(display-p3 .396 1 .933 / .286);--colors-teal-dark-p3-a-7: color(display-p3 .443 1 .925 / .366);--colors-teal-dark-p3-a-8: color(display-p3 .459 1 .925 / .454);--colors-teal-dark-p3-a-9: color(display-p3 .443 .996 .906 / .61);--colors-teal-dark-p3-a-10: color(display-p3 .439 .996 .89 / .669);--colors-teal-dark-p3-a-11: color(display-p3 .388 .835 .719);--colors-teal-dark-p3-a-12: color(display-p3 .734 .934 .87);--colors-teal-a-1: var(--colors-teal-light-a-1);--colors-teal-a-2: var(--colors-teal-light-a-2);--colors-teal-a-3: var(--colors-teal-light-a-3);--colors-teal-a-4: var(--colors-teal-light-a-4);--colors-teal-a-5: var(--colors-teal-light-a-5);--colors-teal-a-6: var(--colors-teal-light-a-6);--colors-teal-a-7: var(--colors-teal-light-a-7);--colors-teal-a-8: var(--colors-teal-light-a-8);--colors-teal-a-9: var(--colors-teal-light-a-9);--colors-teal-a-10: var(--colors-teal-light-a-10);--colors-teal-a-11: var(--colors-teal-light-a-11);--colors-teal-a-12: var(--colors-teal-light-a-12);--colors-teal-p3-1: var(--colors-teal-light-p3-1);--colors-teal-p3-2: var(--colors-teal-light-p3-2);--colors-teal-p3-3: var(--colors-teal-light-p3-3);--colors-teal-p3-4: var(--colors-teal-light-p3-4);--colors-teal-p3-5: var(--colors-teal-light-p3-5);--colors-teal-p3-6: var(--colors-teal-light-p3-6);--colors-teal-p3-7: var(--colors-teal-light-p3-7);--colors-teal-p3-8: var(--colors-teal-light-p3-8);--colors-teal-p3-9: var(--colors-teal-light-p3-9);--colors-teal-p3-10: var(--colors-teal-light-p3-10);--colors-teal-p3-11: var(--colors-teal-light-p3-11);--colors-teal-p3-12: var(--colors-teal-light-p3-12);--colors-teal-p3-a-1: var(--colors-teal-light-p3-a-1);--colors-teal-p3-a-2: var(--colors-teal-light-p3-a-2);--colors-teal-p3-a-3: var(--colors-teal-light-p3-a-3);--colors-teal-p3-a-4: var(--colors-teal-light-p3-a-4);--colors-teal-p3-a-5: var(--colors-teal-light-p3-a-5);--colors-teal-p3-a-6: var(--colors-teal-light-p3-a-6);--colors-teal-p3-a-7: var(--colors-teal-light-p3-a-7);--colors-teal-p3-a-8: var(--colors-teal-light-p3-a-8);--colors-teal-p3-a-9: var(--colors-teal-light-p3-a-9);--colors-teal-p3-a-10: var(--colors-teal-light-p3-a-10);--colors-teal-p3-a-11: var(--colors-teal-light-p3-a-11);--colors-teal-p3-a-12: var(--colors-teal-light-p3-a-12);--colors-tomato-1: var(--colors-tomato-light-1);--colors-tomato-2: var(--colors-tomato-light-2);--colors-tomato-3: var(--colors-tomato-light-3);--colors-tomato-4: var(--colors-tomato-light-4);--colors-tomato-5: var(--colors-tomato-light-5);--colors-tomato-6: var(--colors-tomato-light-6);--colors-tomato-7: var(--colors-tomato-light-7);--colors-tomato-8: var(--colors-tomato-light-8);--colors-tomato-9: var(--colors-tomato-light-9);--colors-tomato-10: var(--colors-tomato-light-10);--colors-tomato-11: var(--colors-tomato-light-11);--colors-tomato-12: var(--colors-tomato-light-12);--colors-tomato-light-1: #fffcfc;--colors-tomato-light-2: #fff8f7;--colors-tomato-light-3: #feebe7;--colors-tomato-light-4: #ffdcd3;--colors-tomato-light-5: #ffcdc2;--colors-tomato-light-6: #fdbdaf;--colors-tomato-light-7: #f5a898;--colors-tomato-light-8: #ec8e7b;--colors-tomato-light-9: #e54d2e;--colors-tomato-light-10: #dd4425;--colors-tomato-light-11: #d13415;--colors-tomato-light-12: #5c271f;--colors-tomato-light-a-1: #ff000003;--colors-tomato-light-a-2: #ff200008;--colors-tomato-light-a-3: #f52b0018;--colors-tomato-light-a-4: #ff35002c;--colors-tomato-light-a-5: #ff2e003d;--colors-tomato-light-a-6: #f92d0050;--colors-tomato-light-a-7: #e7280067;--colors-tomato-light-a-8: #db250084;--colors-tomato-light-a-9: #df2600d1;--colors-tomato-light-a-10: #d72400da;--colors-tomato-light-a-11: #cd2200ea;--colors-tomato-light-a-12: #460900e0;--colors-tomato-light-p3-1: color(display-p3 .998 .989 .988);--colors-tomato-light-p3-2: color(display-p3 .994 .974 .969);--colors-tomato-light-p3-3: color(display-p3 .985 .924 .909);--colors-tomato-light-p3-4: color(display-p3 .996 .868 .835);--colors-tomato-light-p3-5: color(display-p3 .98 .812 .77);--colors-tomato-light-p3-6: color(display-p3 .953 .75 .698);--colors-tomato-light-p3-7: color(display-p3 .917 .673 .611);--colors-tomato-light-p3-8: color(display-p3 .875 .575 .502);--colors-tomato-light-p3-9: color(display-p3 .831 .345 .231);--colors-tomato-light-p3-10: color(display-p3 .802 .313 .2);--colors-tomato-light-p3-11: color(display-p3 .755 .259 .152);--colors-tomato-light-p3-12: color(display-p3 .335 .165 .132);--colors-tomato-light-p3-a-1: color(display-p3 .675 .024 .024 / .012);--colors-tomato-light-p3-a-2: color(display-p3 .757 .145 .02 / .032);--colors-tomato-light-p3-a-3: color(display-p3 .831 .184 .012 / .091);--colors-tomato-light-p3-a-4: color(display-p3 .976 .192 .004 / .165);--colors-tomato-light-p3-a-5: color(display-p3 .918 .192 .004 / .232);--colors-tomato-light-p3-a-6: color(display-p3 .847 .173 .004 / .302);--colors-tomato-light-p3-a-7: color(display-p3 .788 .165 .004 / .389);--colors-tomato-light-p3-a-8: color(display-p3 .749 .153 .004 / .499);--colors-tomato-light-p3-a-9: color(display-p3 .78 .149 0 / .769);--colors-tomato-light-p3-a-10: color(display-p3 .757 .141 0 / .8);--colors-tomato-light-p3-a-11: color(display-p3 .755 .259 .152);--colors-tomato-light-p3-a-12: color(display-p3 .335 .165 .132);--colors-tomato-dark-1: #181111;--colors-tomato-dark-2: #1f1513;--colors-tomato-dark-3: #391714;--colors-tomato-dark-4: #4e1511;--colors-tomato-dark-5: #5e1c16;--colors-tomato-dark-6: #6e2920;--colors-tomato-dark-7: #853a2d;--colors-tomato-dark-8: #ac4d39;--colors-tomato-dark-9: #e54d2e;--colors-tomato-dark-10: #ec6142;--colors-tomato-dark-11: #ff977d;--colors-tomato-dark-12: #fbd3cb;--colors-tomato-dark-a-1: #f1121208;--colors-tomato-dark-a-2: #ff55330f;--colors-tomato-dark-a-3: #ff35232b;--colors-tomato-dark-a-4: #fd201142;--colors-tomato-dark-a-5: #fe332153;--colors-tomato-dark-a-6: #ff4f3864;--colors-tomato-dark-a-7: #fd644a7d;--colors-tomato-dark-a-8: #fe6d4ea7;--colors-tomato-dark-a-9: #fe5431e4;--colors-tomato-dark-a-10: #ff6847eb;--colors-tomato-dark-a-11: #ff977d;--colors-tomato-dark-a-12: #ffd6cefb;--colors-tomato-dark-p3-1: color(display-p3 .09 .068 .067);--colors-tomato-dark-p3-2: color(display-p3 .115 .084 .076);--colors-tomato-dark-p3-3: color(display-p3 .205 .097 .083);--colors-tomato-dark-p3-4: color(display-p3 .282 .099 .077);--colors-tomato-dark-p3-5: color(display-p3 .339 .129 .101);--colors-tomato-dark-p3-6: color(display-p3 .398 .179 .141);--colors-tomato-dark-p3-7: color(display-p3 .487 .245 .194);--colors-tomato-dark-p3-8: color(display-p3 .629 .322 .248);--colors-tomato-dark-p3-9: color(display-p3 .831 .345 .231);--colors-tomato-dark-p3-10: color(display-p3 .862 .415 .298);--colors-tomato-dark-p3-11: color(display-p3 1 .585 .455);--colors-tomato-dark-p3-12: color(display-p3 .959 .833 .802);--colors-tomato-dark-p3-a-1: color(display-p3 .973 .071 .071 / .026);--colors-tomato-dark-p3-a-2: color(display-p3 .992 .376 .224 / .051);--colors-tomato-dark-p3-a-3: color(display-p3 .996 .282 .176 / .148);--colors-tomato-dark-p3-a-4: color(display-p3 1 .204 .118 / .232);--colors-tomato-dark-p3-a-5: color(display-p3 1 .286 .192 / .29);--colors-tomato-dark-p3-a-6: color(display-p3 1 .392 .278 / .353);--colors-tomato-dark-p3-a-7: color(display-p3 1 .459 .349 / .45);--colors-tomato-dark-p3-a-8: color(display-p3 1 .49 .369 / .601);--colors-tomato-dark-p3-a-9: color(display-p3 1 .408 .267 / .82);--colors-tomato-dark-p3-a-10: color(display-p3 1 .478 .341 / .853);--colors-tomato-dark-p3-a-11: color(display-p3 1 .585 .455);--colors-tomato-dark-p3-a-12: color(display-p3 .959 .833 .802);--colors-tomato-a-1: var(--colors-tomato-light-a-1);--colors-tomato-a-2: var(--colors-tomato-light-a-2);--colors-tomato-a-3: var(--colors-tomato-light-a-3);--colors-tomato-a-4: var(--colors-tomato-light-a-4);--colors-tomato-a-5: var(--colors-tomato-light-a-5);--colors-tomato-a-6: var(--colors-tomato-light-a-6);--colors-tomato-a-7: var(--colors-tomato-light-a-7);--colors-tomato-a-8: var(--colors-tomato-light-a-8);--colors-tomato-a-9: var(--colors-tomato-light-a-9);--colors-tomato-a-10: var(--colors-tomato-light-a-10);--colors-tomato-a-11: var(--colors-tomato-light-a-11);--colors-tomato-a-12: var(--colors-tomato-light-a-12);--colors-tomato-p3-1: var(--colors-tomato-light-p3-1);--colors-tomato-p3-2: var(--colors-tomato-light-p3-2);--colors-tomato-p3-3: var(--colors-tomato-light-p3-3);--colors-tomato-p3-4: var(--colors-tomato-light-p3-4);--colors-tomato-p3-5: var(--colors-tomato-light-p3-5);--colors-tomato-p3-6: var(--colors-tomato-light-p3-6);--colors-tomato-p3-7: var(--colors-tomato-light-p3-7);--colors-tomato-p3-8: var(--colors-tomato-light-p3-8);--colors-tomato-p3-9: var(--colors-tomato-light-p3-9);--colors-tomato-p3-10: var(--colors-tomato-light-p3-10);--colors-tomato-p3-11: var(--colors-tomato-light-p3-11);--colors-tomato-p3-12: var(--colors-tomato-light-p3-12);--colors-tomato-p3-a-1: var(--colors-tomato-light-p3-a-1);--colors-tomato-p3-a-2: var(--colors-tomato-light-p3-a-2);--colors-tomato-p3-a-3: var(--colors-tomato-light-p3-a-3);--colors-tomato-p3-a-4: var(--colors-tomato-light-p3-a-4);--colors-tomato-p3-a-5: var(--colors-tomato-light-p3-a-5);--colors-tomato-p3-a-6: var(--colors-tomato-light-p3-a-6);--colors-tomato-p3-a-7: var(--colors-tomato-light-p3-a-7);--colors-tomato-p3-a-8: var(--colors-tomato-light-p3-a-8);--colors-tomato-p3-a-9: var(--colors-tomato-light-p3-a-9);--colors-tomato-p3-a-10: var(--colors-tomato-light-p3-a-10);--colors-tomato-p3-a-11: var(--colors-tomato-light-p3-a-11);--colors-tomato-p3-a-12: var(--colors-tomato-light-p3-a-12);--colors-violet-1: var(--colors-violet-light-1);--colors-violet-2: var(--colors-violet-light-2);--colors-violet-3: var(--colors-violet-light-3);--colors-violet-4: var(--colors-violet-light-4);--colors-violet-5: var(--colors-violet-light-5);--colors-violet-6: var(--colors-violet-light-6);--colors-violet-7: var(--colors-violet-light-7);--colors-violet-8: var(--colors-violet-light-8);--colors-violet-9: var(--colors-violet-light-9);--colors-violet-10: var(--colors-violet-light-10);--colors-violet-11: var(--colors-violet-light-11);--colors-violet-12: var(--colors-violet-light-12);--colors-violet-light-1: #fdfcfe;--colors-violet-light-2: #faf8ff;--colors-violet-light-3: #f4f0fe;--colors-violet-light-4: #ebe4ff;--colors-violet-light-5: #e1d9ff;--colors-violet-light-6: #d4cafe;--colors-violet-light-7: #c2b5f5;--colors-violet-light-8: #aa99ec;--colors-violet-light-9: #6e56cf;--colors-violet-light-10: #654dc4;--colors-violet-light-11: #6550b9;--colors-violet-light-12: #2f265f;--colors-violet-light-a-1: #5500aa03;--colors-violet-light-a-2: #4900ff07;--colors-violet-light-a-3: #4400ee0f;--colors-violet-light-a-4: #4300ff1b;--colors-violet-light-a-5: #3600ff26;--colors-violet-light-a-6: #3100fb35;--colors-violet-light-a-7: #2d01dd4a;--colors-violet-light-a-8: #2b00d066;--colors-violet-light-a-9: #2400b7a9;--colors-violet-light-a-10: #2300abb2;--colors-violet-light-a-11: #1f0099af;--colors-violet-light-a-12: #0b0043d9;--colors-violet-light-p3-1: color(display-p3 .991 .988 .995);--colors-violet-light-p3-2: color(display-p3 .978 .974 .998);--colors-violet-light-p3-3: color(display-p3 .953 .943 .993);--colors-violet-light-p3-4: color(display-p3 .916 .897 1);--colors-violet-light-p3-5: color(display-p3 .876 .851 1);--colors-violet-light-p3-6: color(display-p3 .825 .793 .981);--colors-violet-light-p3-7: color(display-p3 .752 .712 .943);--colors-violet-light-p3-8: color(display-p3 .654 .602 .902);--colors-violet-light-p3-9: color(display-p3 .417 .341 .784);--colors-violet-light-p3-10: color(display-p3 .381 .306 .741);--colors-violet-light-p3-11: color(display-p3 .383 .317 .702);--colors-violet-light-p3-12: color(display-p3 .179 .15 .359);--colors-violet-light-p3-a-1: color(display-p3 .349 .024 .675 / .012);--colors-violet-light-p3-a-2: color(display-p3 .161 .024 .863 / .028);--colors-violet-light-p3-a-3: color(display-p3 .204 .004 .871 / .059);--colors-violet-light-p3-a-4: color(display-p3 .196 .004 1 / .102);--colors-violet-light-p3-a-5: color(display-p3 .165 .008 1 / .15);--colors-violet-light-p3-a-6: color(display-p3 .153 .004 .906 / .208);--colors-violet-light-p3-a-7: color(display-p3 .141 .004 .796 / .287);--colors-violet-light-p3-a-8: color(display-p3 .133 .004 .753 / .397);--colors-violet-light-p3-a-9: color(display-p3 .114 0 .675 / .659);--colors-violet-light-p3-a-10: color(display-p3 .11 0 .627 / .695);--colors-violet-light-p3-a-11: color(display-p3 .383 .317 .702);--colors-violet-light-p3-a-12: color(display-p3 .179 .15 .359);--colors-violet-dark-1: #14121f;--colors-violet-dark-2: #1b1525;--colors-violet-dark-3: #291f43;--colors-violet-dark-4: #33255b;--colors-violet-dark-5: #3c2e69;--colors-violet-dark-6: #473876;--colors-violet-dark-7: #56468b;--colors-violet-dark-8: #6958ad;--colors-violet-dark-9: #6e56cf;--colors-violet-dark-10: #7d66d9;--colors-violet-dark-11: #baa7ff;--colors-violet-dark-12: #e2ddfe;--colors-violet-dark-a-1: #4422ff0f;--colors-violet-dark-a-2: #853ff916;--colors-violet-dark-a-3: #8354fe36;--colors-violet-dark-a-4: #7d51fd50;--colors-violet-dark-a-5: #845ffd5f;--colors-violet-dark-a-6: #8f6cfd6d;--colors-violet-dark-a-7: #9879ff83;--colors-violet-dark-a-8: #977dfea8;--colors-violet-dark-a-9: #8668ffcc;--colors-violet-dark-a-10: #9176fed7;--colors-violet-dark-a-11: #baa7ff;--colors-violet-dark-a-12: #e3defffe;--colors-violet-dark-p3-1: color(display-p3 .077 .071 .118);--colors-violet-dark-p3-2: color(display-p3 .101 .084 .141);--colors-violet-dark-p3-3: color(display-p3 .154 .123 .256);--colors-violet-dark-p3-4: color(display-p3 .191 .148 .345);--colors-violet-dark-p3-5: color(display-p3 .226 .182 .396);--colors-violet-dark-p3-6: color(display-p3 .269 .223 .449);--colors-violet-dark-p3-7: color(display-p3 .326 .277 .53);--colors-violet-dark-p3-8: color(display-p3 .399 .346 .656);--colors-violet-dark-p3-9: color(display-p3 .417 .341 .784);--colors-violet-dark-p3-10: color(display-p3 .477 .402 .823);--colors-violet-dark-p3-11: color(display-p3 .72 .65 1);--colors-violet-dark-p3-12: color(display-p3 .883 .867 .986);--colors-violet-dark-p3-a-1: color(display-p3 .282 .141 .996 / .055);--colors-violet-dark-p3-a-2: color(display-p3 .51 .263 1 / .08);--colors-violet-dark-p3-a-3: color(display-p3 .494 .337 .996 / .202);--colors-violet-dark-p3-a-4: color(display-p3 .49 .345 1 / .299);--colors-violet-dark-p3-a-5: color(display-p3 .525 .392 1 / .353);--colors-violet-dark-p3-a-6: color(display-p3 .569 .455 1 / .408);--colors-violet-dark-p3-a-7: color(display-p3 .588 .494 1 / .496);--colors-violet-dark-p3-a-8: color(display-p3 .596 .51 1 / .631);--colors-violet-dark-p3-a-9: color(display-p3 .522 .424 1 / .769);--colors-violet-dark-p3-a-10: color(display-p3 .576 .482 1 / .811);--colors-violet-dark-p3-a-11: color(display-p3 .72 .65 1);--colors-violet-dark-p3-a-12: color(display-p3 .883 .867 .986);--colors-violet-a-1: var(--colors-violet-light-a-1);--colors-violet-a-2: var(--colors-violet-light-a-2);--colors-violet-a-3: var(--colors-violet-light-a-3);--colors-violet-a-4: var(--colors-violet-light-a-4);--colors-violet-a-5: var(--colors-violet-light-a-5);--colors-violet-a-6: var(--colors-violet-light-a-6);--colors-violet-a-7: var(--colors-violet-light-a-7);--colors-violet-a-8: var(--colors-violet-light-a-8);--colors-violet-a-9: var(--colors-violet-light-a-9);--colors-violet-a-10: var(--colors-violet-light-a-10);--colors-violet-a-11: var(--colors-violet-light-a-11);--colors-violet-a-12: var(--colors-violet-light-a-12);--colors-violet-p3-1: var(--colors-violet-light-p3-1);--colors-violet-p3-2: var(--colors-violet-light-p3-2);--colors-violet-p3-3: var(--colors-violet-light-p3-3);--colors-violet-p3-4: var(--colors-violet-light-p3-4);--colors-violet-p3-5: var(--colors-violet-light-p3-5);--colors-violet-p3-6: var(--colors-violet-light-p3-6);--colors-violet-p3-7: var(--colors-violet-light-p3-7);--colors-violet-p3-8: var(--colors-violet-light-p3-8);--colors-violet-p3-9: var(--colors-violet-light-p3-9);--colors-violet-p3-10: var(--colors-violet-light-p3-10);--colors-violet-p3-11: var(--colors-violet-light-p3-11);--colors-violet-p3-12: var(--colors-violet-light-p3-12);--colors-violet-p3-a-1: var(--colors-violet-light-p3-a-1);--colors-violet-p3-a-2: var(--colors-violet-light-p3-a-2);--colors-violet-p3-a-3: var(--colors-violet-light-p3-a-3);--colors-violet-p3-a-4: var(--colors-violet-light-p3-a-4);--colors-violet-p3-a-5: var(--colors-violet-light-p3-a-5);--colors-violet-p3-a-6: var(--colors-violet-light-p3-a-6);--colors-violet-p3-a-7: var(--colors-violet-light-p3-a-7);--colors-violet-p3-a-8: var(--colors-violet-light-p3-a-8);--colors-violet-p3-a-9: var(--colors-violet-light-p3-a-9);--colors-violet-p3-a-10: var(--colors-violet-light-p3-a-10);--colors-violet-p3-a-11: var(--colors-violet-light-p3-a-11);--colors-violet-p3-a-12: var(--colors-violet-light-p3-a-12);--colors-yellow-1: var(--colors-yellow-light-1);--colors-yellow-2: var(--colors-yellow-light-2);--colors-yellow-3: var(--colors-yellow-light-3);--colors-yellow-4: var(--colors-yellow-light-4);--colors-yellow-5: var(--colors-yellow-light-5);--colors-yellow-6: var(--colors-yellow-light-6);--colors-yellow-7: var(--colors-yellow-light-7);--colors-yellow-8: var(--colors-yellow-light-8);--colors-yellow-9: var(--colors-yellow-light-9);--colors-yellow-10: var(--colors-yellow-light-10);--colors-yellow-11: var(--colors-yellow-light-11);--colors-yellow-12: var(--colors-yellow-light-12);--colors-yellow-light-1: #fdfdf9;--colors-yellow-light-2: #fefce9;--colors-yellow-light-3: #fffab8;--colors-yellow-light-4: #fff394;--colors-yellow-light-5: #ffe770;--colors-yellow-light-6: #f3d768;--colors-yellow-light-7: #e4c767;--colors-yellow-light-8: #d5ae39;--colors-yellow-light-9: #ffe629;--colors-yellow-light-10: #ffdc00;--colors-yellow-light-11: #9e6c00;--colors-yellow-light-12: #473b1f;--colors-yellow-light-a-1: #aaaa0006;--colors-yellow-light-a-2: #f4dd0016;--colors-yellow-light-a-3: #ffee0047;--colors-yellow-light-a-4: #ffe3016b;--colors-yellow-light-a-5: #ffd5008f;--colors-yellow-light-a-6: #ebbc0097;--colors-yellow-light-a-7: #d2a10098;--colors-yellow-light-a-8: #c99700c6;--colors-yellow-light-a-9: #ffe100d6;--colors-yellow-light-a-10: #ffdc00;--colors-yellow-light-a-11: #9e6c00;--colors-yellow-light-a-12: #2e2000e0;--colors-yellow-light-p3-1: color(display-p3 .992 .992 .978);--colors-yellow-light-p3-2: color(display-p3 .995 .99 .922);--colors-yellow-light-p3-3: color(display-p3 .997 .982 .749);--colors-yellow-light-p3-4: color(display-p3 .992 .953 .627);--colors-yellow-light-p3-5: color(display-p3 .984 .91 .51);--colors-yellow-light-p3-6: color(display-p3 .934 .847 .474);--colors-yellow-light-p3-7: color(display-p3 .876 .785 .46);--colors-yellow-light-p3-8: color(display-p3 .811 .689 .313);--colors-yellow-light-p3-9: color(display-p3 1 .92 .22);--colors-yellow-light-p3-10: color(display-p3 .977 .868 .291);--colors-yellow-light-p3-11: color(display-p3 .6 .44 0);--colors-yellow-light-p3-12: color(display-p3 .271 .233 .137);--colors-yellow-light-p3-a-1: color(display-p3 .675 .675 .024 / .024);--colors-yellow-light-p3-a-2: color(display-p3 .953 .855 .008 / .079);--colors-yellow-light-p3-a-3: color(display-p3 .988 .925 .004 / .251);--colors-yellow-light-p3-a-4: color(display-p3 .98 .875 .004 / .373);--colors-yellow-light-p3-a-5: color(display-p3 .969 .816 .004 / .491);--colors-yellow-light-p3-a-6: color(display-p3 .875 .71 0 / .526);--colors-yellow-light-p3-a-7: color(display-p3 .769 .604 0 / .542);--colors-yellow-light-p3-a-8: color(display-p3 .725 .549 0 / .687);--colors-yellow-light-p3-a-9: color(display-p3 1 .898 0 / .781);--colors-yellow-light-p3-a-10: color(display-p3 .969 .812 0 / .71);--colors-yellow-light-p3-a-11: color(display-p3 .6 .44 0);--colors-yellow-light-p3-a-12: color(display-p3 .271 .233 .137);--colors-yellow-dark-1: #14120b;--colors-yellow-dark-2: #1b180f;--colors-yellow-dark-3: #2d2305;--colors-yellow-dark-4: #362b00;--colors-yellow-dark-5: #433500;--colors-yellow-dark-6: #524202;--colors-yellow-dark-7: #665417;--colors-yellow-dark-8: #836a21;--colors-yellow-dark-9: #ffe629;--colors-yellow-dark-10: #ffff57;--colors-yellow-dark-11: #f5e147;--colors-yellow-dark-12: #f6eeb4;--colors-yellow-dark-a-1: #d1510004;--colors-yellow-dark-a-2: #f9b4000b;--colors-yellow-dark-a-3: #ffaa001e;--colors-yellow-dark-a-4: #fdb70028;--colors-yellow-dark-a-5: #febb0036;--colors-yellow-dark-a-6: #fec40046;--colors-yellow-dark-a-7: #fdcb225c;--colors-yellow-dark-a-8: #fdca327b;--colors-yellow-dark-a-9: #ffe629;--colors-yellow-dark-a-10: #ffff57;--colors-yellow-dark-a-11: #fee949f5;--colors-yellow-dark-a-12: #fef6baf6;--colors-yellow-dark-p3-1: color(display-p3 .078 .069 .047);--colors-yellow-dark-p3-2: color(display-p3 .103 .094 .063);--colors-yellow-dark-p3-3: color(display-p3 .168 .137 .039);--colors-yellow-dark-p3-4: color(display-p3 .209 .169 0);--colors-yellow-dark-p3-5: color(display-p3 .255 .209 0);--colors-yellow-dark-p3-6: color(display-p3 .31 .261 .07);--colors-yellow-dark-p3-7: color(display-p3 .389 .331 .135);--colors-yellow-dark-p3-8: color(display-p3 .497 .42 .182);--colors-yellow-dark-p3-9: color(display-p3 1 .92 .22);--colors-yellow-dark-p3-10: color(display-p3 1 1 .456);--colors-yellow-dark-p3-11: color(display-p3 .948 .885 .392);--colors-yellow-dark-p3-12: color(display-p3 .959 .934 .731);--colors-yellow-dark-p3-a-1: color(display-p3 .973 .369 0 / .013);--colors-yellow-dark-p3-a-2: color(display-p3 .996 .792 0 / .038);--colors-yellow-dark-p3-a-3: color(display-p3 .996 .71 0 / .11);--colors-yellow-dark-p3-a-4: color(display-p3 .996 .741 0 / .152);--colors-yellow-dark-p3-a-5: color(display-p3 .996 .765 0 / .202);--colors-yellow-dark-p3-a-6: color(display-p3 .996 .816 .082 / .261);--colors-yellow-dark-p3-a-7: color(display-p3 1 .831 .263 / .345);--colors-yellow-dark-p3-a-8: color(display-p3 1 .831 .314 / .463);--colors-yellow-dark-p3-a-9: color(display-p3 1 .922 .22);--colors-yellow-dark-p3-a-10: color(display-p3 1 1 .455);--colors-yellow-dark-p3-a-11: color(display-p3 .948 .885 .392);--colors-yellow-dark-p3-a-12: color(display-p3 .959 .934 .731);--colors-yellow-a-1: var(--colors-yellow-light-a-1);--colors-yellow-a-2: var(--colors-yellow-light-a-2);--colors-yellow-a-3: var(--colors-yellow-light-a-3);--colors-yellow-a-4: var(--colors-yellow-light-a-4);--colors-yellow-a-5: var(--colors-yellow-light-a-5);--colors-yellow-a-6: var(--colors-yellow-light-a-6);--colors-yellow-a-7: var(--colors-yellow-light-a-7);--colors-yellow-a-8: var(--colors-yellow-light-a-8);--colors-yellow-a-9: var(--colors-yellow-light-a-9);--colors-yellow-a-10: var(--colors-yellow-light-a-10);--colors-yellow-a-11: var(--colors-yellow-light-a-11);--colors-yellow-a-12: var(--colors-yellow-light-a-12);--colors-yellow-p3-1: var(--colors-yellow-light-p3-1);--colors-yellow-p3-2: var(--colors-yellow-light-p3-2);--colors-yellow-p3-3: var(--colors-yellow-light-p3-3);--colors-yellow-p3-4: var(--colors-yellow-light-p3-4);--colors-yellow-p3-5: var(--colors-yellow-light-p3-5);--colors-yellow-p3-6: var(--colors-yellow-light-p3-6);--colors-yellow-p3-7: var(--colors-yellow-light-p3-7);--colors-yellow-p3-8: var(--colors-yellow-light-p3-8);--colors-yellow-p3-9: var(--colors-yellow-light-p3-9);--colors-yellow-p3-10: var(--colors-yellow-light-p3-10);--colors-yellow-p3-11: var(--colors-yellow-light-p3-11);--colors-yellow-p3-12: var(--colors-yellow-light-p3-12);--colors-yellow-p3-a-1: var(--colors-yellow-light-p3-a-1);--colors-yellow-p3-a-2: var(--colors-yellow-light-p3-a-2);--colors-yellow-p3-a-3: var(--colors-yellow-light-p3-a-3);--colors-yellow-p3-a-4: var(--colors-yellow-light-p3-a-4);--colors-yellow-p3-a-5: var(--colors-yellow-light-p3-a-5);--colors-yellow-p3-a-6: var(--colors-yellow-light-p3-a-6);--colors-yellow-p3-a-7: var(--colors-yellow-light-p3-a-7);--colors-yellow-p3-a-8: var(--colors-yellow-light-p3-a-8);--colors-yellow-p3-a-9: var(--colors-yellow-light-p3-a-9);--colors-yellow-p3-a-10: var(--colors-yellow-light-p3-a-10);--colors-yellow-p3-a-11: var(--colors-yellow-light-p3-a-11);--colors-yellow-p3-a-12: var(--colors-yellow-light-p3-a-12);--colors-text: var(--mantine-color-text);--colors-text-dimmed: var(--mantine-color-dimmed);--colors-likec4-background: var(--mantine-color-body);--colors-likec4-tag-bg: var(--colors-tomato-9);--colors-likec4-tag-bg-hover: var(--colors-tomato-10);--colors-likec4-tag-border: var(--colors-tomato-8);--colors-likec4-tag-text: var(--colors-tomato-12);--colors-likec4-panel-bg: var(--mantine-color-body);--colors-likec4-panel-border: transparent;--colors-likec4-panel-text: color-mix(in oklab, var(--mantine-color-text) 85%, transparent 15%);--colors-likec4-panel-text-dimmed: var(--mantine-color-dimmed);--colors-likec4-panel-action: color-mix(in oklab, var(--mantine-color-text) 90%, transparent 10%);--colors-likec4-panel-action-disabled: var(--mantine-color-dimmed);--colors-likec4-panel-action-hover: var(--mantine-color-bright);--colors-likec4-panel-action-bg: var(--mantine-color-gray-1);--colors-likec4-panel-action-bg-hover: var(--mantine-color-gray-2);--colors-likec4-panel-action-warning: var(--mantine-color-orange-6);--colors-likec4-panel-action-warning-hover: var(--mantine-color-orange-7);--colors-likec4-panel-action-warning-bg: color-mix(in oklab, var(--mantine-color-orange-1) 90%, transparent 10%);--colors-likec4-panel-action-warning-bg-hover: color-mix(in oklab, var(--mantine-color-orange-3) 70%, transparent 30%);--colors-likec4-dropdown-bg: #FFF;--colors-likec4-dropdown-border: var(--colors-likec4-panel-border);--colors-likec4-overlay-backdrop: rgb(34 34 34);--colors-likec4-overlay-body: var(--mantine-color-body);--colors-likec4-overlay-border: color-mix(in oklab, var(--mantine-color-default-border) 50%, transparent 50%);--colors-likec4-compare-latest: var(--mantine-color-green-6)}[data-mantine-color-scheme=dark]{--colors-amber-1: var(--colors-amber-dark-1);--colors-amber-2: var(--colors-amber-dark-2);--colors-amber-3: var(--colors-amber-dark-3);--colors-amber-4: var(--colors-amber-dark-4);--colors-amber-5: var(--colors-amber-dark-5);--colors-amber-6: var(--colors-amber-dark-6);--colors-amber-7: var(--colors-amber-dark-7);--colors-amber-8: var(--colors-amber-dark-8);--colors-amber-9: var(--colors-amber-dark-9);--colors-amber-10: var(--colors-amber-dark-10);--colors-amber-11: var(--colors-amber-dark-11);--colors-amber-12: var(--colors-amber-dark-12);--colors-amber-a-1: var(--colors-amber-dark-a-1);--colors-amber-a-2: var(--colors-amber-dark-a-2);--colors-amber-a-3: var(--colors-amber-dark-a-3);--colors-amber-a-4: var(--colors-amber-dark-a-4);--colors-amber-a-5: var(--colors-amber-dark-a-5);--colors-amber-a-6: var(--colors-amber-dark-a-6);--colors-amber-a-7: var(--colors-amber-dark-a-7);--colors-amber-a-8: var(--colors-amber-dark-a-8);--colors-amber-a-9: var(--colors-amber-dark-a-9);--colors-amber-a-10: var(--colors-amber-dark-a-10);--colors-amber-a-11: var(--colors-amber-dark-a-11);--colors-amber-a-12: var(--colors-amber-dark-a-12);--colors-amber-p3-1: var(--colors-amber-dark-p3-1);--colors-amber-p3-2: var(--colors-amber-dark-p3-2);--colors-amber-p3-3: var(--colors-amber-dark-p3-3);--colors-amber-p3-4: var(--colors-amber-dark-p3-4);--colors-amber-p3-5: var(--colors-amber-dark-p3-5);--colors-amber-p3-6: var(--colors-amber-dark-p3-6);--colors-amber-p3-7: var(--colors-amber-dark-p3-7);--colors-amber-p3-8: var(--colors-amber-dark-p3-8);--colors-amber-p3-9: var(--colors-amber-dark-p3-9);--colors-amber-p3-10: var(--colors-amber-dark-p3-10);--colors-amber-p3-11: var(--colors-amber-dark-p3-11);--colors-amber-p3-12: var(--colors-amber-dark-p3-12);--colors-amber-p3-a-1: var(--colors-amber-dark-p3-a-1);--colors-amber-p3-a-2: var(--colors-amber-dark-p3-a-2);--colors-amber-p3-a-3: var(--colors-amber-dark-p3-a-3);--colors-amber-p3-a-4: var(--colors-amber-dark-p3-a-4);--colors-amber-p3-a-5: var(--colors-amber-dark-p3-a-5);--colors-amber-p3-a-6: var(--colors-amber-dark-p3-a-6);--colors-amber-p3-a-7: var(--colors-amber-dark-p3-a-7);--colors-amber-p3-a-8: var(--colors-amber-dark-p3-a-8);--colors-amber-p3-a-9: var(--colors-amber-dark-p3-a-9);--colors-amber-p3-a-10: var(--colors-amber-dark-p3-a-10);--colors-amber-p3-a-11: var(--colors-amber-dark-p3-a-11);--colors-amber-p3-a-12: var(--colors-amber-dark-p3-a-12);--colors-blue-1: var(--colors-blue-dark-1);--colors-blue-2: var(--colors-blue-dark-2);--colors-blue-3: var(--colors-blue-dark-3);--colors-blue-4: var(--colors-blue-dark-4);--colors-blue-5: var(--colors-blue-dark-5);--colors-blue-6: var(--colors-blue-dark-6);--colors-blue-7: var(--colors-blue-dark-7);--colors-blue-8: var(--colors-blue-dark-8);--colors-blue-9: var(--colors-blue-dark-9);--colors-blue-10: var(--colors-blue-dark-10);--colors-blue-11: var(--colors-blue-dark-11);--colors-blue-12: var(--colors-blue-dark-12);--colors-blue-a-1: var(--colors-blue-dark-a-1);--colors-blue-a-2: var(--colors-blue-dark-a-2);--colors-blue-a-3: var(--colors-blue-dark-a-3);--colors-blue-a-4: var(--colors-blue-dark-a-4);--colors-blue-a-5: var(--colors-blue-dark-a-5);--colors-blue-a-6: var(--colors-blue-dark-a-6);--colors-blue-a-7: var(--colors-blue-dark-a-7);--colors-blue-a-8: var(--colors-blue-dark-a-8);--colors-blue-a-9: var(--colors-blue-dark-a-9);--colors-blue-a-10: var(--colors-blue-dark-a-10);--colors-blue-a-11: var(--colors-blue-dark-a-11);--colors-blue-a-12: var(--colors-blue-dark-a-12);--colors-blue-p3-1: var(--colors-blue-dark-p3-1);--colors-blue-p3-2: var(--colors-blue-dark-p3-2);--colors-blue-p3-3: var(--colors-blue-dark-p3-3);--colors-blue-p3-4: var(--colors-blue-dark-p3-4);--colors-blue-p3-5: var(--colors-blue-dark-p3-5);--colors-blue-p3-6: var(--colors-blue-dark-p3-6);--colors-blue-p3-7: var(--colors-blue-dark-p3-7);--colors-blue-p3-8: var(--colors-blue-dark-p3-8);--colors-blue-p3-9: var(--colors-blue-dark-p3-9);--colors-blue-p3-10: var(--colors-blue-dark-p3-10);--colors-blue-p3-11: var(--colors-blue-dark-p3-11);--colors-blue-p3-12: var(--colors-blue-dark-p3-12);--colors-blue-p3-a-1: var(--colors-blue-dark-p3-a-1);--colors-blue-p3-a-2: var(--colors-blue-dark-p3-a-2);--colors-blue-p3-a-3: var(--colors-blue-dark-p3-a-3);--colors-blue-p3-a-4: var(--colors-blue-dark-p3-a-4);--colors-blue-p3-a-5: var(--colors-blue-dark-p3-a-5);--colors-blue-p3-a-6: var(--colors-blue-dark-p3-a-6);--colors-blue-p3-a-7: var(--colors-blue-dark-p3-a-7);--colors-blue-p3-a-8: var(--colors-blue-dark-p3-a-8);--colors-blue-p3-a-9: var(--colors-blue-dark-p3-a-9);--colors-blue-p3-a-10: var(--colors-blue-dark-p3-a-10);--colors-blue-p3-a-11: var(--colors-blue-dark-p3-a-11);--colors-blue-p3-a-12: var(--colors-blue-dark-p3-a-12);--colors-crimson-1: var(--colors-crimson-dark-1);--colors-crimson-2: var(--colors-crimson-dark-2);--colors-crimson-3: var(--colors-crimson-dark-3);--colors-crimson-4: var(--colors-crimson-dark-4);--colors-crimson-5: var(--colors-crimson-dark-5);--colors-crimson-6: var(--colors-crimson-dark-6);--colors-crimson-7: var(--colors-crimson-dark-7);--colors-crimson-8: var(--colors-crimson-dark-8);--colors-crimson-9: var(--colors-crimson-dark-9);--colors-crimson-10: var(--colors-crimson-dark-10);--colors-crimson-11: var(--colors-crimson-dark-11);--colors-crimson-12: var(--colors-crimson-dark-12);--colors-crimson-a-1: var(--colors-crimson-dark-a-1);--colors-crimson-a-2: var(--colors-crimson-dark-a-2);--colors-crimson-a-3: var(--colors-crimson-dark-a-3);--colors-crimson-a-4: var(--colors-crimson-dark-a-4);--colors-crimson-a-5: var(--colors-crimson-dark-a-5);--colors-crimson-a-6: var(--colors-crimson-dark-a-6);--colors-crimson-a-7: var(--colors-crimson-dark-a-7);--colors-crimson-a-8: var(--colors-crimson-dark-a-8);--colors-crimson-a-9: var(--colors-crimson-dark-a-9);--colors-crimson-a-10: var(--colors-crimson-dark-a-10);--colors-crimson-a-11: var(--colors-crimson-dark-a-11);--colors-crimson-a-12: var(--colors-crimson-dark-a-12);--colors-crimson-p3-1: var(--colors-crimson-dark-p3-1);--colors-crimson-p3-2: var(--colors-crimson-dark-p3-2);--colors-crimson-p3-3: var(--colors-crimson-dark-p3-3);--colors-crimson-p3-4: var(--colors-crimson-dark-p3-4);--colors-crimson-p3-5: var(--colors-crimson-dark-p3-5);--colors-crimson-p3-6: var(--colors-crimson-dark-p3-6);--colors-crimson-p3-7: var(--colors-crimson-dark-p3-7);--colors-crimson-p3-8: var(--colors-crimson-dark-p3-8);--colors-crimson-p3-9: var(--colors-crimson-dark-p3-9);--colors-crimson-p3-10: var(--colors-crimson-dark-p3-10);--colors-crimson-p3-11: var(--colors-crimson-dark-p3-11);--colors-crimson-p3-12: var(--colors-crimson-dark-p3-12);--colors-crimson-p3-a-1: var(--colors-crimson-dark-p3-a-1);--colors-crimson-p3-a-2: var(--colors-crimson-dark-p3-a-2);--colors-crimson-p3-a-3: var(--colors-crimson-dark-p3-a-3);--colors-crimson-p3-a-4: var(--colors-crimson-dark-p3-a-4);--colors-crimson-p3-a-5: var(--colors-crimson-dark-p3-a-5);--colors-crimson-p3-a-6: var(--colors-crimson-dark-p3-a-6);--colors-crimson-p3-a-7: var(--colors-crimson-dark-p3-a-7);--colors-crimson-p3-a-8: var(--colors-crimson-dark-p3-a-8);--colors-crimson-p3-a-9: var(--colors-crimson-dark-p3-a-9);--colors-crimson-p3-a-10: var(--colors-crimson-dark-p3-a-10);--colors-crimson-p3-a-11: var(--colors-crimson-dark-p3-a-11);--colors-crimson-p3-a-12: var(--colors-crimson-dark-p3-a-12);--colors-grass-1: var(--colors-grass-dark-1);--colors-grass-2: var(--colors-grass-dark-2);--colors-grass-3: var(--colors-grass-dark-3);--colors-grass-4: var(--colors-grass-dark-4);--colors-grass-5: var(--colors-grass-dark-5);--colors-grass-6: var(--colors-grass-dark-6);--colors-grass-7: var(--colors-grass-dark-7);--colors-grass-8: var(--colors-grass-dark-8);--colors-grass-9: var(--colors-grass-dark-9);--colors-grass-10: var(--colors-grass-dark-10);--colors-grass-11: var(--colors-grass-dark-11);--colors-grass-12: var(--colors-grass-dark-12);--colors-grass-a-1: var(--colors-grass-dark-a-1);--colors-grass-a-2: var(--colors-grass-dark-a-2);--colors-grass-a-3: var(--colors-grass-dark-a-3);--colors-grass-a-4: var(--colors-grass-dark-a-4);--colors-grass-a-5: var(--colors-grass-dark-a-5);--colors-grass-a-6: var(--colors-grass-dark-a-6);--colors-grass-a-7: var(--colors-grass-dark-a-7);--colors-grass-a-8: var(--colors-grass-dark-a-8);--colors-grass-a-9: var(--colors-grass-dark-a-9);--colors-grass-a-10: var(--colors-grass-dark-a-10);--colors-grass-a-11: var(--colors-grass-dark-a-11);--colors-grass-a-12: var(--colors-grass-dark-a-12);--colors-grass-p3-1: var(--colors-grass-dark-p3-1);--colors-grass-p3-2: var(--colors-grass-dark-p3-2);--colors-grass-p3-3: var(--colors-grass-dark-p3-3);--colors-grass-p3-4: var(--colors-grass-dark-p3-4);--colors-grass-p3-5: var(--colors-grass-dark-p3-5);--colors-grass-p3-6: var(--colors-grass-dark-p3-6);--colors-grass-p3-7: var(--colors-grass-dark-p3-7);--colors-grass-p3-8: var(--colors-grass-dark-p3-8);--colors-grass-p3-9: var(--colors-grass-dark-p3-9);--colors-grass-p3-10: var(--colors-grass-dark-p3-10);--colors-grass-p3-11: var(--colors-grass-dark-p3-11);--colors-grass-p3-12: var(--colors-grass-dark-p3-12);--colors-grass-p3-a-1: var(--colors-grass-dark-p3-a-1);--colors-grass-p3-a-2: var(--colors-grass-dark-p3-a-2);--colors-grass-p3-a-3: var(--colors-grass-dark-p3-a-3);--colors-grass-p3-a-4: var(--colors-grass-dark-p3-a-4);--colors-grass-p3-a-5: var(--colors-grass-dark-p3-a-5);--colors-grass-p3-a-6: var(--colors-grass-dark-p3-a-6);--colors-grass-p3-a-7: var(--colors-grass-dark-p3-a-7);--colors-grass-p3-a-8: var(--colors-grass-dark-p3-a-8);--colors-grass-p3-a-9: var(--colors-grass-dark-p3-a-9);--colors-grass-p3-a-10: var(--colors-grass-dark-p3-a-10);--colors-grass-p3-a-11: var(--colors-grass-dark-p3-a-11);--colors-grass-p3-a-12: var(--colors-grass-dark-p3-a-12);--colors-indigo-1: var(--colors-indigo-dark-1);--colors-indigo-2: var(--colors-indigo-dark-2);--colors-indigo-3: var(--colors-indigo-dark-3);--colors-indigo-4: var(--colors-indigo-dark-4);--colors-indigo-5: var(--colors-indigo-dark-5);--colors-indigo-6: var(--colors-indigo-dark-6);--colors-indigo-7: var(--colors-indigo-dark-7);--colors-indigo-8: var(--colors-indigo-dark-8);--colors-indigo-9: var(--colors-indigo-dark-9);--colors-indigo-10: var(--colors-indigo-dark-10);--colors-indigo-11: var(--colors-indigo-dark-11);--colors-indigo-12: var(--colors-indigo-dark-12);--colors-indigo-a-1: var(--colors-indigo-dark-a-1);--colors-indigo-a-2: var(--colors-indigo-dark-a-2);--colors-indigo-a-3: var(--colors-indigo-dark-a-3);--colors-indigo-a-4: var(--colors-indigo-dark-a-4);--colors-indigo-a-5: var(--colors-indigo-dark-a-5);--colors-indigo-a-6: var(--colors-indigo-dark-a-6);--colors-indigo-a-7: var(--colors-indigo-dark-a-7);--colors-indigo-a-8: var(--colors-indigo-dark-a-8);--colors-indigo-a-9: var(--colors-indigo-dark-a-9);--colors-indigo-a-10: var(--colors-indigo-dark-a-10);--colors-indigo-a-11: var(--colors-indigo-dark-a-11);--colors-indigo-a-12: var(--colors-indigo-dark-a-12);--colors-indigo-p3-1: var(--colors-indigo-dark-p3-1);--colors-indigo-p3-2: var(--colors-indigo-dark-p3-2);--colors-indigo-p3-3: var(--colors-indigo-dark-p3-3);--colors-indigo-p3-4: var(--colors-indigo-dark-p3-4);--colors-indigo-p3-5: var(--colors-indigo-dark-p3-5);--colors-indigo-p3-6: var(--colors-indigo-dark-p3-6);--colors-indigo-p3-7: var(--colors-indigo-dark-p3-7);--colors-indigo-p3-8: var(--colors-indigo-dark-p3-8);--colors-indigo-p3-9: var(--colors-indigo-dark-p3-9);--colors-indigo-p3-10: var(--colors-indigo-dark-p3-10);--colors-indigo-p3-11: var(--colors-indigo-dark-p3-11);--colors-indigo-p3-12: var(--colors-indigo-dark-p3-12);--colors-indigo-p3-a-1: var(--colors-indigo-dark-p3-a-1);--colors-indigo-p3-a-2: var(--colors-indigo-dark-p3-a-2);--colors-indigo-p3-a-3: var(--colors-indigo-dark-p3-a-3);--colors-indigo-p3-a-4: var(--colors-indigo-dark-p3-a-4);--colors-indigo-p3-a-5: var(--colors-indigo-dark-p3-a-5);--colors-indigo-p3-a-6: var(--colors-indigo-dark-p3-a-6);--colors-indigo-p3-a-7: var(--colors-indigo-dark-p3-a-7);--colors-indigo-p3-a-8: var(--colors-indigo-dark-p3-a-8);--colors-indigo-p3-a-9: var(--colors-indigo-dark-p3-a-9);--colors-indigo-p3-a-10: var(--colors-indigo-dark-p3-a-10);--colors-indigo-p3-a-11: var(--colors-indigo-dark-p3-a-11);--colors-indigo-p3-a-12: var(--colors-indigo-dark-p3-a-12);--colors-lime-1: var(--colors-lime-dark-1);--colors-lime-2: var(--colors-lime-dark-2);--colors-lime-3: var(--colors-lime-dark-3);--colors-lime-4: var(--colors-lime-dark-4);--colors-lime-5: var(--colors-lime-dark-5);--colors-lime-6: var(--colors-lime-dark-6);--colors-lime-7: var(--colors-lime-dark-7);--colors-lime-8: var(--colors-lime-dark-8);--colors-lime-9: var(--colors-lime-dark-9);--colors-lime-10: var(--colors-lime-dark-10);--colors-lime-11: var(--colors-lime-dark-11);--colors-lime-12: var(--colors-lime-dark-12);--colors-lime-a-1: var(--colors-lime-dark-a-1);--colors-lime-a-2: var(--colors-lime-dark-a-2);--colors-lime-a-3: var(--colors-lime-dark-a-3);--colors-lime-a-4: var(--colors-lime-dark-a-4);--colors-lime-a-5: var(--colors-lime-dark-a-5);--colors-lime-a-6: var(--colors-lime-dark-a-6);--colors-lime-a-7: var(--colors-lime-dark-a-7);--colors-lime-a-8: var(--colors-lime-dark-a-8);--colors-lime-a-9: var(--colors-lime-dark-a-9);--colors-lime-a-10: var(--colors-lime-dark-a-10);--colors-lime-a-11: var(--colors-lime-dark-a-11);--colors-lime-a-12: var(--colors-lime-dark-a-12);--colors-lime-p3-1: var(--colors-lime-dark-p3-1);--colors-lime-p3-2: var(--colors-lime-dark-p3-2);--colors-lime-p3-3: var(--colors-lime-dark-p3-3);--colors-lime-p3-4: var(--colors-lime-dark-p3-4);--colors-lime-p3-5: var(--colors-lime-dark-p3-5);--colors-lime-p3-6: var(--colors-lime-dark-p3-6);--colors-lime-p3-7: var(--colors-lime-dark-p3-7);--colors-lime-p3-8: var(--colors-lime-dark-p3-8);--colors-lime-p3-9: var(--colors-lime-dark-p3-9);--colors-lime-p3-10: var(--colors-lime-dark-p3-10);--colors-lime-p3-11: var(--colors-lime-dark-p3-11);--colors-lime-p3-12: var(--colors-lime-dark-p3-12);--colors-lime-p3-a-1: var(--colors-lime-dark-p3-a-1);--colors-lime-p3-a-2: var(--colors-lime-dark-p3-a-2);--colors-lime-p3-a-3: var(--colors-lime-dark-p3-a-3);--colors-lime-p3-a-4: var(--colors-lime-dark-p3-a-4);--colors-lime-p3-a-5: var(--colors-lime-dark-p3-a-5);--colors-lime-p3-a-6: var(--colors-lime-dark-p3-a-6);--colors-lime-p3-a-7: var(--colors-lime-dark-p3-a-7);--colors-lime-p3-a-8: var(--colors-lime-dark-p3-a-8);--colors-lime-p3-a-9: var(--colors-lime-dark-p3-a-9);--colors-lime-p3-a-10: var(--colors-lime-dark-p3-a-10);--colors-lime-p3-a-11: var(--colors-lime-dark-p3-a-11);--colors-lime-p3-a-12: var(--colors-lime-dark-p3-a-12);--colors-orange-1: var(--colors-orange-dark-1);--colors-orange-2: var(--colors-orange-dark-2);--colors-orange-3: var(--colors-orange-dark-3);--colors-orange-4: var(--colors-orange-dark-4);--colors-orange-5: var(--colors-orange-dark-5);--colors-orange-6: var(--colors-orange-dark-6);--colors-orange-7: var(--colors-orange-dark-7);--colors-orange-8: var(--colors-orange-dark-8);--colors-orange-9: var(--colors-orange-dark-9);--colors-orange-10: var(--colors-orange-dark-10);--colors-orange-11: var(--colors-orange-dark-11);--colors-orange-12: var(--colors-orange-dark-12);--colors-orange-a-1: var(--colors-orange-dark-a-1);--colors-orange-a-2: var(--colors-orange-dark-a-2);--colors-orange-a-3: var(--colors-orange-dark-a-3);--colors-orange-a-4: var(--colors-orange-dark-a-4);--colors-orange-a-5: var(--colors-orange-dark-a-5);--colors-orange-a-6: var(--colors-orange-dark-a-6);--colors-orange-a-7: var(--colors-orange-dark-a-7);--colors-orange-a-8: var(--colors-orange-dark-a-8);--colors-orange-a-9: var(--colors-orange-dark-a-9);--colors-orange-a-10: var(--colors-orange-dark-a-10);--colors-orange-a-11: var(--colors-orange-dark-a-11);--colors-orange-a-12: var(--colors-orange-dark-a-12);--colors-orange-p3-1: var(--colors-orange-dark-p3-1);--colors-orange-p3-2: var(--colors-orange-dark-p3-2);--colors-orange-p3-3: var(--colors-orange-dark-p3-3);--colors-orange-p3-4: var(--colors-orange-dark-p3-4);--colors-orange-p3-5: var(--colors-orange-dark-p3-5);--colors-orange-p3-6: var(--colors-orange-dark-p3-6);--colors-orange-p3-7: var(--colors-orange-dark-p3-7);--colors-orange-p3-8: var(--colors-orange-dark-p3-8);--colors-orange-p3-9: var(--colors-orange-dark-p3-9);--colors-orange-p3-10: var(--colors-orange-dark-p3-10);--colors-orange-p3-11: var(--colors-orange-dark-p3-11);--colors-orange-p3-12: var(--colors-orange-dark-p3-12);--colors-orange-p3-a-1: var(--colors-orange-dark-p3-a-1);--colors-orange-p3-a-2: var(--colors-orange-dark-p3-a-2);--colors-orange-p3-a-3: var(--colors-orange-dark-p3-a-3);--colors-orange-p3-a-4: var(--colors-orange-dark-p3-a-4);--colors-orange-p3-a-5: var(--colors-orange-dark-p3-a-5);--colors-orange-p3-a-6: var(--colors-orange-dark-p3-a-6);--colors-orange-p3-a-7: var(--colors-orange-dark-p3-a-7);--colors-orange-p3-a-8: var(--colors-orange-dark-p3-a-8);--colors-orange-p3-a-9: var(--colors-orange-dark-p3-a-9);--colors-orange-p3-a-10: var(--colors-orange-dark-p3-a-10);--colors-orange-p3-a-11: var(--colors-orange-dark-p3-a-11);--colors-orange-p3-a-12: var(--colors-orange-dark-p3-a-12);--colors-pink-1: var(--colors-pink-dark-1);--colors-pink-2: var(--colors-pink-dark-2);--colors-pink-3: var(--colors-pink-dark-3);--colors-pink-4: var(--colors-pink-dark-4);--colors-pink-5: var(--colors-pink-dark-5);--colors-pink-6: var(--colors-pink-dark-6);--colors-pink-7: var(--colors-pink-dark-7);--colors-pink-8: var(--colors-pink-dark-8);--colors-pink-9: var(--colors-pink-dark-9);--colors-pink-10: var(--colors-pink-dark-10);--colors-pink-11: var(--colors-pink-dark-11);--colors-pink-12: var(--colors-pink-dark-12);--colors-pink-a-1: var(--colors-pink-dark-a-1);--colors-pink-a-2: var(--colors-pink-dark-a-2);--colors-pink-a-3: var(--colors-pink-dark-a-3);--colors-pink-a-4: var(--colors-pink-dark-a-4);--colors-pink-a-5: var(--colors-pink-dark-a-5);--colors-pink-a-6: var(--colors-pink-dark-a-6);--colors-pink-a-7: var(--colors-pink-dark-a-7);--colors-pink-a-8: var(--colors-pink-dark-a-8);--colors-pink-a-9: var(--colors-pink-dark-a-9);--colors-pink-a-10: var(--colors-pink-dark-a-10);--colors-pink-a-11: var(--colors-pink-dark-a-11);--colors-pink-a-12: var(--colors-pink-dark-a-12);--colors-pink-p3-1: var(--colors-pink-dark-p3-1);--colors-pink-p3-2: var(--colors-pink-dark-p3-2);--colors-pink-p3-3: var(--colors-pink-dark-p3-3);--colors-pink-p3-4: var(--colors-pink-dark-p3-4);--colors-pink-p3-5: var(--colors-pink-dark-p3-5);--colors-pink-p3-6: var(--colors-pink-dark-p3-6);--colors-pink-p3-7: var(--colors-pink-dark-p3-7);--colors-pink-p3-8: var(--colors-pink-dark-p3-8);--colors-pink-p3-9: var(--colors-pink-dark-p3-9);--colors-pink-p3-10: var(--colors-pink-dark-p3-10);--colors-pink-p3-11: var(--colors-pink-dark-p3-11);--colors-pink-p3-12: var(--colors-pink-dark-p3-12);--colors-pink-p3-a-1: var(--colors-pink-dark-p3-a-1);--colors-pink-p3-a-2: var(--colors-pink-dark-p3-a-2);--colors-pink-p3-a-3: var(--colors-pink-dark-p3-a-3);--colors-pink-p3-a-4: var(--colors-pink-dark-p3-a-4);--colors-pink-p3-a-5: var(--colors-pink-dark-p3-a-5);--colors-pink-p3-a-6: var(--colors-pink-dark-p3-a-6);--colors-pink-p3-a-7: var(--colors-pink-dark-p3-a-7);--colors-pink-p3-a-8: var(--colors-pink-dark-p3-a-8);--colors-pink-p3-a-9: var(--colors-pink-dark-p3-a-9);--colors-pink-p3-a-10: var(--colors-pink-dark-p3-a-10);--colors-pink-p3-a-11: var(--colors-pink-dark-p3-a-11);--colors-pink-p3-a-12: var(--colors-pink-dark-p3-a-12);--colors-purple-1: var(--colors-purple-dark-1);--colors-purple-2: var(--colors-purple-dark-2);--colors-purple-3: var(--colors-purple-dark-3);--colors-purple-4: var(--colors-purple-dark-4);--colors-purple-5: var(--colors-purple-dark-5);--colors-purple-6: var(--colors-purple-dark-6);--colors-purple-7: var(--colors-purple-dark-7);--colors-purple-8: var(--colors-purple-dark-8);--colors-purple-9: var(--colors-purple-dark-9);--colors-purple-10: var(--colors-purple-dark-10);--colors-purple-11: var(--colors-purple-dark-11);--colors-purple-12: var(--colors-purple-dark-12);--colors-purple-a-1: var(--colors-purple-dark-a-1);--colors-purple-a-2: var(--colors-purple-dark-a-2);--colors-purple-a-3: var(--colors-purple-dark-a-3);--colors-purple-a-4: var(--colors-purple-dark-a-4);--colors-purple-a-5: var(--colors-purple-dark-a-5);--colors-purple-a-6: var(--colors-purple-dark-a-6);--colors-purple-a-7: var(--colors-purple-dark-a-7);--colors-purple-a-8: var(--colors-purple-dark-a-8);--colors-purple-a-9: var(--colors-purple-dark-a-9);--colors-purple-a-10: var(--colors-purple-dark-a-10);--colors-purple-a-11: var(--colors-purple-dark-a-11);--colors-purple-a-12: var(--colors-purple-dark-a-12);--colors-purple-p3-1: var(--colors-purple-dark-p3-1);--colors-purple-p3-2: var(--colors-purple-dark-p3-2);--colors-purple-p3-3: var(--colors-purple-dark-p3-3);--colors-purple-p3-4: var(--colors-purple-dark-p3-4);--colors-purple-p3-5: var(--colors-purple-dark-p3-5);--colors-purple-p3-6: var(--colors-purple-dark-p3-6);--colors-purple-p3-7: var(--colors-purple-dark-p3-7);--colors-purple-p3-8: var(--colors-purple-dark-p3-8);--colors-purple-p3-9: var(--colors-purple-dark-p3-9);--colors-purple-p3-10: var(--colors-purple-dark-p3-10);--colors-purple-p3-11: var(--colors-purple-dark-p3-11);--colors-purple-p3-12: var(--colors-purple-dark-p3-12);--colors-purple-p3-a-1: var(--colors-purple-dark-p3-a-1);--colors-purple-p3-a-2: var(--colors-purple-dark-p3-a-2);--colors-purple-p3-a-3: var(--colors-purple-dark-p3-a-3);--colors-purple-p3-a-4: var(--colors-purple-dark-p3-a-4);--colors-purple-p3-a-5: var(--colors-purple-dark-p3-a-5);--colors-purple-p3-a-6: var(--colors-purple-dark-p3-a-6);--colors-purple-p3-a-7: var(--colors-purple-dark-p3-a-7);--colors-purple-p3-a-8: var(--colors-purple-dark-p3-a-8);--colors-purple-p3-a-9: var(--colors-purple-dark-p3-a-9);--colors-purple-p3-a-10: var(--colors-purple-dark-p3-a-10);--colors-purple-p3-a-11: var(--colors-purple-dark-p3-a-11);--colors-purple-p3-a-12: var(--colors-purple-dark-p3-a-12);--colors-red-1: var(--colors-red-dark-1);--colors-red-2: var(--colors-red-dark-2);--colors-red-3: var(--colors-red-dark-3);--colors-red-4: var(--colors-red-dark-4);--colors-red-5: var(--colors-red-dark-5);--colors-red-6: var(--colors-red-dark-6);--colors-red-7: var(--colors-red-dark-7);--colors-red-8: var(--colors-red-dark-8);--colors-red-9: var(--colors-red-dark-9);--colors-red-10: var(--colors-red-dark-10);--colors-red-11: var(--colors-red-dark-11);--colors-red-12: var(--colors-red-dark-12);--colors-red-a-1: var(--colors-red-dark-a-1);--colors-red-a-2: var(--colors-red-dark-a-2);--colors-red-a-3: var(--colors-red-dark-a-3);--colors-red-a-4: var(--colors-red-dark-a-4);--colors-red-a-5: var(--colors-red-dark-a-5);--colors-red-a-6: var(--colors-red-dark-a-6);--colors-red-a-7: var(--colors-red-dark-a-7);--colors-red-a-8: var(--colors-red-dark-a-8);--colors-red-a-9: var(--colors-red-dark-a-9);--colors-red-a-10: var(--colors-red-dark-a-10);--colors-red-a-11: var(--colors-red-dark-a-11);--colors-red-a-12: var(--colors-red-dark-a-12);--colors-red-p3-1: var(--colors-red-dark-p3-1);--colors-red-p3-2: var(--colors-red-dark-p3-2);--colors-red-p3-3: var(--colors-red-dark-p3-3);--colors-red-p3-4: var(--colors-red-dark-p3-4);--colors-red-p3-5: var(--colors-red-dark-p3-5);--colors-red-p3-6: var(--colors-red-dark-p3-6);--colors-red-p3-7: var(--colors-red-dark-p3-7);--colors-red-p3-8: var(--colors-red-dark-p3-8);--colors-red-p3-9: var(--colors-red-dark-p3-9);--colors-red-p3-10: var(--colors-red-dark-p3-10);--colors-red-p3-11: var(--colors-red-dark-p3-11);--colors-red-p3-12: var(--colors-red-dark-p3-12);--colors-red-p3-a-1: var(--colors-red-dark-p3-a-1);--colors-red-p3-a-2: var(--colors-red-dark-p3-a-2);--colors-red-p3-a-3: var(--colors-red-dark-p3-a-3);--colors-red-p3-a-4: var(--colors-red-dark-p3-a-4);--colors-red-p3-a-5: var(--colors-red-dark-p3-a-5);--colors-red-p3-a-6: var(--colors-red-dark-p3-a-6);--colors-red-p3-a-7: var(--colors-red-dark-p3-a-7);--colors-red-p3-a-8: var(--colors-red-dark-p3-a-8);--colors-red-p3-a-9: var(--colors-red-dark-p3-a-9);--colors-red-p3-a-10: var(--colors-red-dark-p3-a-10);--colors-red-p3-a-11: var(--colors-red-dark-p3-a-11);--colors-red-p3-a-12: var(--colors-red-dark-p3-a-12);--colors-ruby-1: var(--colors-ruby-dark-1);--colors-ruby-2: var(--colors-ruby-dark-2);--colors-ruby-3: var(--colors-ruby-dark-3);--colors-ruby-4: var(--colors-ruby-dark-4);--colors-ruby-5: var(--colors-ruby-dark-5);--colors-ruby-6: var(--colors-ruby-dark-6);--colors-ruby-7: var(--colors-ruby-dark-7);--colors-ruby-8: var(--colors-ruby-dark-8);--colors-ruby-9: var(--colors-ruby-dark-9);--colors-ruby-10: var(--colors-ruby-dark-10);--colors-ruby-11: var(--colors-ruby-dark-11);--colors-ruby-12: var(--colors-ruby-dark-12);--colors-ruby-a-1: var(--colors-ruby-dark-a-1);--colors-ruby-a-2: var(--colors-ruby-dark-a-2);--colors-ruby-a-3: var(--colors-ruby-dark-a-3);--colors-ruby-a-4: var(--colors-ruby-dark-a-4);--colors-ruby-a-5: var(--colors-ruby-dark-a-5);--colors-ruby-a-6: var(--colors-ruby-dark-a-6);--colors-ruby-a-7: var(--colors-ruby-dark-a-7);--colors-ruby-a-8: var(--colors-ruby-dark-a-8);--colors-ruby-a-9: var(--colors-ruby-dark-a-9);--colors-ruby-a-10: var(--colors-ruby-dark-a-10);--colors-ruby-a-11: var(--colors-ruby-dark-a-11);--colors-ruby-a-12: var(--colors-ruby-dark-a-12);--colors-ruby-p3-1: var(--colors-ruby-dark-p3-1);--colors-ruby-p3-2: var(--colors-ruby-dark-p3-2);--colors-ruby-p3-3: var(--colors-ruby-dark-p3-3);--colors-ruby-p3-4: var(--colors-ruby-dark-p3-4);--colors-ruby-p3-5: var(--colors-ruby-dark-p3-5);--colors-ruby-p3-6: var(--colors-ruby-dark-p3-6);--colors-ruby-p3-7: var(--colors-ruby-dark-p3-7);--colors-ruby-p3-8: var(--colors-ruby-dark-p3-8);--colors-ruby-p3-9: var(--colors-ruby-dark-p3-9);--colors-ruby-p3-10: var(--colors-ruby-dark-p3-10);--colors-ruby-p3-11: var(--colors-ruby-dark-p3-11);--colors-ruby-p3-12: var(--colors-ruby-dark-p3-12);--colors-ruby-p3-a-1: var(--colors-ruby-dark-p3-a-1);--colors-ruby-p3-a-2: var(--colors-ruby-dark-p3-a-2);--colors-ruby-p3-a-3: var(--colors-ruby-dark-p3-a-3);--colors-ruby-p3-a-4: var(--colors-ruby-dark-p3-a-4);--colors-ruby-p3-a-5: var(--colors-ruby-dark-p3-a-5);--colors-ruby-p3-a-6: var(--colors-ruby-dark-p3-a-6);--colors-ruby-p3-a-7: var(--colors-ruby-dark-p3-a-7);--colors-ruby-p3-a-8: var(--colors-ruby-dark-p3-a-8);--colors-ruby-p3-a-9: var(--colors-ruby-dark-p3-a-9);--colors-ruby-p3-a-10: var(--colors-ruby-dark-p3-a-10);--colors-ruby-p3-a-11: var(--colors-ruby-dark-p3-a-11);--colors-ruby-p3-a-12: var(--colors-ruby-dark-p3-a-12);--colors-teal-1: var(--colors-teal-dark-1);--colors-teal-2: var(--colors-teal-dark-2);--colors-teal-3: var(--colors-teal-dark-3);--colors-teal-4: var(--colors-teal-dark-4);--colors-teal-5: var(--colors-teal-dark-5);--colors-teal-6: var(--colors-teal-dark-6);--colors-teal-7: var(--colors-teal-dark-7);--colors-teal-8: var(--colors-teal-dark-8);--colors-teal-9: var(--colors-teal-dark-9);--colors-teal-10: var(--colors-teal-dark-10);--colors-teal-11: var(--colors-teal-dark-11);--colors-teal-12: var(--colors-teal-dark-12);--colors-teal-a-1: var(--colors-teal-dark-a-1);--colors-teal-a-2: var(--colors-teal-dark-a-2);--colors-teal-a-3: var(--colors-teal-dark-a-3);--colors-teal-a-4: var(--colors-teal-dark-a-4);--colors-teal-a-5: var(--colors-teal-dark-a-5);--colors-teal-a-6: var(--colors-teal-dark-a-6);--colors-teal-a-7: var(--colors-teal-dark-a-7);--colors-teal-a-8: var(--colors-teal-dark-a-8);--colors-teal-a-9: var(--colors-teal-dark-a-9);--colors-teal-a-10: var(--colors-teal-dark-a-10);--colors-teal-a-11: var(--colors-teal-dark-a-11);--colors-teal-a-12: var(--colors-teal-dark-a-12);--colors-teal-p3-1: var(--colors-teal-dark-p3-1);--colors-teal-p3-2: var(--colors-teal-dark-p3-2);--colors-teal-p3-3: var(--colors-teal-dark-p3-3);--colors-teal-p3-4: var(--colors-teal-dark-p3-4);--colors-teal-p3-5: var(--colors-teal-dark-p3-5);--colors-teal-p3-6: var(--colors-teal-dark-p3-6);--colors-teal-p3-7: var(--colors-teal-dark-p3-7);--colors-teal-p3-8: var(--colors-teal-dark-p3-8);--colors-teal-p3-9: var(--colors-teal-dark-p3-9);--colors-teal-p3-10: var(--colors-teal-dark-p3-10);--colors-teal-p3-11: var(--colors-teal-dark-p3-11);--colors-teal-p3-12: var(--colors-teal-dark-p3-12);--colors-teal-p3-a-1: var(--colors-teal-dark-p3-a-1);--colors-teal-p3-a-2: var(--colors-teal-dark-p3-a-2);--colors-teal-p3-a-3: var(--colors-teal-dark-p3-a-3);--colors-teal-p3-a-4: var(--colors-teal-dark-p3-a-4);--colors-teal-p3-a-5: var(--colors-teal-dark-p3-a-5);--colors-teal-p3-a-6: var(--colors-teal-dark-p3-a-6);--colors-teal-p3-a-7: var(--colors-teal-dark-p3-a-7);--colors-teal-p3-a-8: var(--colors-teal-dark-p3-a-8);--colors-teal-p3-a-9: var(--colors-teal-dark-p3-a-9);--colors-teal-p3-a-10: var(--colors-teal-dark-p3-a-10);--colors-teal-p3-a-11: var(--colors-teal-dark-p3-a-11);--colors-teal-p3-a-12: var(--colors-teal-dark-p3-a-12);--colors-tomato-1: var(--colors-tomato-dark-1);--colors-tomato-2: var(--colors-tomato-dark-2);--colors-tomato-3: var(--colors-tomato-dark-3);--colors-tomato-4: var(--colors-tomato-dark-4);--colors-tomato-5: var(--colors-tomato-dark-5);--colors-tomato-6: var(--colors-tomato-dark-6);--colors-tomato-7: var(--colors-tomato-dark-7);--colors-tomato-8: var(--colors-tomato-dark-8);--colors-tomato-9: var(--colors-tomato-dark-9);--colors-tomato-10: var(--colors-tomato-dark-10);--colors-tomato-11: var(--colors-tomato-dark-11);--colors-tomato-12: var(--colors-tomato-dark-12);--colors-tomato-a-1: var(--colors-tomato-dark-a-1);--colors-tomato-a-2: var(--colors-tomato-dark-a-2);--colors-tomato-a-3: var(--colors-tomato-dark-a-3);--colors-tomato-a-4: var(--colors-tomato-dark-a-4);--colors-tomato-a-5: var(--colors-tomato-dark-a-5);--colors-tomato-a-6: var(--colors-tomato-dark-a-6);--colors-tomato-a-7: var(--colors-tomato-dark-a-7);--colors-tomato-a-8: var(--colors-tomato-dark-a-8);--colors-tomato-a-9: var(--colors-tomato-dark-a-9);--colors-tomato-a-10: var(--colors-tomato-dark-a-10);--colors-tomato-a-11: var(--colors-tomato-dark-a-11);--colors-tomato-a-12: var(--colors-tomato-dark-a-12);--colors-tomato-p3-1: var(--colors-tomato-dark-p3-1);--colors-tomato-p3-2: var(--colors-tomato-dark-p3-2);--colors-tomato-p3-3: var(--colors-tomato-dark-p3-3);--colors-tomato-p3-4: var(--colors-tomato-dark-p3-4);--colors-tomato-p3-5: var(--colors-tomato-dark-p3-5);--colors-tomato-p3-6: var(--colors-tomato-dark-p3-6);--colors-tomato-p3-7: var(--colors-tomato-dark-p3-7);--colors-tomato-p3-8: var(--colors-tomato-dark-p3-8);--colors-tomato-p3-9: var(--colors-tomato-dark-p3-9);--colors-tomato-p3-10: var(--colors-tomato-dark-p3-10);--colors-tomato-p3-11: var(--colors-tomato-dark-p3-11);--colors-tomato-p3-12: var(--colors-tomato-dark-p3-12);--colors-tomato-p3-a-1: var(--colors-tomato-dark-p3-a-1);--colors-tomato-p3-a-2: var(--colors-tomato-dark-p3-a-2);--colors-tomato-p3-a-3: var(--colors-tomato-dark-p3-a-3);--colors-tomato-p3-a-4: var(--colors-tomato-dark-p3-a-4);--colors-tomato-p3-a-5: var(--colors-tomato-dark-p3-a-5);--colors-tomato-p3-a-6: var(--colors-tomato-dark-p3-a-6);--colors-tomato-p3-a-7: var(--colors-tomato-dark-p3-a-7);--colors-tomato-p3-a-8: var(--colors-tomato-dark-p3-a-8);--colors-tomato-p3-a-9: var(--colors-tomato-dark-p3-a-9);--colors-tomato-p3-a-10: var(--colors-tomato-dark-p3-a-10);--colors-tomato-p3-a-11: var(--colors-tomato-dark-p3-a-11);--colors-tomato-p3-a-12: var(--colors-tomato-dark-p3-a-12);--colors-violet-1: var(--colors-violet-dark-1);--colors-violet-2: var(--colors-violet-dark-2);--colors-violet-3: var(--colors-violet-dark-3);--colors-violet-4: var(--colors-violet-dark-4);--colors-violet-5: var(--colors-violet-dark-5);--colors-violet-6: var(--colors-violet-dark-6);--colors-violet-7: var(--colors-violet-dark-7);--colors-violet-8: var(--colors-violet-dark-8);--colors-violet-9: var(--colors-violet-dark-9);--colors-violet-10: var(--colors-violet-dark-10);--colors-violet-11: var(--colors-violet-dark-11);--colors-violet-12: var(--colors-violet-dark-12);--colors-violet-a-1: var(--colors-violet-dark-a-1);--colors-violet-a-2: var(--colors-violet-dark-a-2);--colors-violet-a-3: var(--colors-violet-dark-a-3);--colors-violet-a-4: var(--colors-violet-dark-a-4);--colors-violet-a-5: var(--colors-violet-dark-a-5);--colors-violet-a-6: var(--colors-violet-dark-a-6);--colors-violet-a-7: var(--colors-violet-dark-a-7);--colors-violet-a-8: var(--colors-violet-dark-a-8);--colors-violet-a-9: var(--colors-violet-dark-a-9);--colors-violet-a-10: var(--colors-violet-dark-a-10);--colors-violet-a-11: var(--colors-violet-dark-a-11);--colors-violet-a-12: var(--colors-violet-dark-a-12);--colors-violet-p3-1: var(--colors-violet-dark-p3-1);--colors-violet-p3-2: var(--colors-violet-dark-p3-2);--colors-violet-p3-3: var(--colors-violet-dark-p3-3);--colors-violet-p3-4: var(--colors-violet-dark-p3-4);--colors-violet-p3-5: var(--colors-violet-dark-p3-5);--colors-violet-p3-6: var(--colors-violet-dark-p3-6);--colors-violet-p3-7: var(--colors-violet-dark-p3-7);--colors-violet-p3-8: var(--colors-violet-dark-p3-8);--colors-violet-p3-9: var(--colors-violet-dark-p3-9);--colors-violet-p3-10: var(--colors-violet-dark-p3-10);--colors-violet-p3-11: var(--colors-violet-dark-p3-11);--colors-violet-p3-12: var(--colors-violet-dark-p3-12);--colors-violet-p3-a-1: var(--colors-violet-dark-p3-a-1);--colors-violet-p3-a-2: var(--colors-violet-dark-p3-a-2);--colors-violet-p3-a-3: var(--colors-violet-dark-p3-a-3);--colors-violet-p3-a-4: var(--colors-violet-dark-p3-a-4);--colors-violet-p3-a-5: var(--colors-violet-dark-p3-a-5);--colors-violet-p3-a-6: var(--colors-violet-dark-p3-a-6);--colors-violet-p3-a-7: var(--colors-violet-dark-p3-a-7);--colors-violet-p3-a-8: var(--colors-violet-dark-p3-a-8);--colors-violet-p3-a-9: var(--colors-violet-dark-p3-a-9);--colors-violet-p3-a-10: var(--colors-violet-dark-p3-a-10);--colors-violet-p3-a-11: var(--colors-violet-dark-p3-a-11);--colors-violet-p3-a-12: var(--colors-violet-dark-p3-a-12);--colors-yellow-1: var(--colors-yellow-dark-1);--colors-yellow-2: var(--colors-yellow-dark-2);--colors-yellow-3: var(--colors-yellow-dark-3);--colors-yellow-4: var(--colors-yellow-dark-4);--colors-yellow-5: var(--colors-yellow-dark-5);--colors-yellow-6: var(--colors-yellow-dark-6);--colors-yellow-7: var(--colors-yellow-dark-7);--colors-yellow-8: var(--colors-yellow-dark-8);--colors-yellow-9: var(--colors-yellow-dark-9);--colors-yellow-10: var(--colors-yellow-dark-10);--colors-yellow-11: var(--colors-yellow-dark-11);--colors-yellow-12: var(--colors-yellow-dark-12);--colors-yellow-a-1: var(--colors-yellow-dark-a-1);--colors-yellow-a-2: var(--colors-yellow-dark-a-2);--colors-yellow-a-3: var(--colors-yellow-dark-a-3);--colors-yellow-a-4: var(--colors-yellow-dark-a-4);--colors-yellow-a-5: var(--colors-yellow-dark-a-5);--colors-yellow-a-6: var(--colors-yellow-dark-a-6);--colors-yellow-a-7: var(--colors-yellow-dark-a-7);--colors-yellow-a-8: var(--colors-yellow-dark-a-8);--colors-yellow-a-9: var(--colors-yellow-dark-a-9);--colors-yellow-a-10: var(--colors-yellow-dark-a-10);--colors-yellow-a-11: var(--colors-yellow-dark-a-11);--colors-yellow-a-12: var(--colors-yellow-dark-a-12);--colors-yellow-p3-1: var(--colors-yellow-dark-p3-1);--colors-yellow-p3-2: var(--colors-yellow-dark-p3-2);--colors-yellow-p3-3: var(--colors-yellow-dark-p3-3);--colors-yellow-p3-4: var(--colors-yellow-dark-p3-4);--colors-yellow-p3-5: var(--colors-yellow-dark-p3-5);--colors-yellow-p3-6: var(--colors-yellow-dark-p3-6);--colors-yellow-p3-7: var(--colors-yellow-dark-p3-7);--colors-yellow-p3-8: var(--colors-yellow-dark-p3-8);--colors-yellow-p3-9: var(--colors-yellow-dark-p3-9);--colors-yellow-p3-10: var(--colors-yellow-dark-p3-10);--colors-yellow-p3-11: var(--colors-yellow-dark-p3-11);--colors-yellow-p3-12: var(--colors-yellow-dark-p3-12);--colors-yellow-p3-a-1: var(--colors-yellow-dark-p3-a-1);--colors-yellow-p3-a-2: var(--colors-yellow-dark-p3-a-2);--colors-yellow-p3-a-3: var(--colors-yellow-dark-p3-a-3);--colors-yellow-p3-a-4: var(--colors-yellow-dark-p3-a-4);--colors-yellow-p3-a-5: var(--colors-yellow-dark-p3-a-5);--colors-yellow-p3-a-6: var(--colors-yellow-dark-p3-a-6);--colors-yellow-p3-a-7: var(--colors-yellow-dark-p3-a-7);--colors-yellow-p3-a-8: var(--colors-yellow-dark-p3-a-8);--colors-yellow-p3-a-9: var(--colors-yellow-dark-p3-a-9);--colors-yellow-p3-a-10: var(--colors-yellow-dark-p3-a-10);--colors-yellow-p3-a-11: var(--colors-yellow-dark-p3-a-11);--colors-yellow-p3-a-12: var(--colors-yellow-dark-p3-a-12);--colors-likec4-background-pattern: color-mix(in oklab, var(--mantine-color-dark-4) 70%, transparent 30%);--colors-likec4-mix-color: white;--colors-likec4-panel-bg: var(--mantine-color-dark-6);--colors-likec4-panel-action-bg: color-mix(in oklab, var(--mantine-color-dark-7) 70%, transparent 30%);--colors-likec4-panel-action-bg-hover: var(--mantine-color-dark-8);--colors-likec4-panel-action-warning-hover: var(--mantine-color-orange-5);--colors-likec4-panel-action-warning-bg: color-mix(in oklab, var(--mantine-color-orange-9) 10%, transparent 90%);--colors-likec4-panel-action-warning-bg-hover: color-mix(in oklab, var(--mantine-color-orange-9) 20%, transparent 80%);--colors-likec4-dropdown-bg: var(--mantine-color-dark-6);--colors-likec4-overlay-body: var(--mantine-color-dark-6);--colors-likec4-compare-manual: var(--mantine-color-orange-6);--colors-likec4-compare-manual-outline: color-mix(in oklab, var(--mantine-color-orange-6) 80%, transparent 20%) }[data-mantine-color-scheme=light]{--colors-likec4-background-pattern: var(--mantine-color-gray-4);--colors-likec4-mix-color: black;--colors-likec4-panel-border: var(--mantine-color-gray-2);--colors-likec4-overlay-backdrop: rgb(15 15 15);--colors-likec4-compare-manual: var(--mantine-color-orange-8);--colors-likec4-compare-manual-outline: var(--mantine-color-orange-8) }@keyframes indicatorOpacity{0%{opacity:.8;stroke-opacity:.8}to{opacity:.4;stroke-opacity:.4}}@keyframes xyedgeAnimated{0%{stroke-dashoffset:36}to{stroke-dashoffset:0}}}@layer recipes{@layer _base{.likec4-edge-label{background:var(--xy-edge-label-background-color);border:0px solid transparent;padding-block:var(--spacing-1);padding-inline:var(--spacing-1\\.5);gap:var(--spacing-0\\.5);border-radius:4px;font-family:var(--fonts-likec4-relation);display:flex;flex-direction:column;align-items:center;color:var(--xy-edge-label-color);width:max-content;max-width:var(--sizes-100\\%)}.likec4-edge-label .likec4-edge-label__step-number{padding:var(--spacing-1);background:color-mix(in oklab,var(--likec4-palette-relation-label-bg),var(--colors-likec4-mix-color) 10%);flex:0 0 auto;align-self:stretch;font-weight:600;font-size:14px;text-align:center;font-variant-numeric:tabular-nums;min-width:22px;border-top-left-radius:4px;border-bottom-left-radius:4px}.likec4-edge-label .likec4-edge-label__step-number:only-child{border-radius:4px;min-width:24px}[data-mantine-color-scheme=dark] :where([data-likec4-color=gray]) .likec4-edge-label .likec4-edge-label__step-number{background:color-mix(in oklab,var(--likec4-palette-relation-label-bg),var(--colors-likec4-mix-color) 15%)}.likec4-edge-label .likec4-edge-label__text{margin:var(--spacing-0);white-space-collapse:preserve-breaks;font-size:14px;line-height:1.2}.likec4-edge-label .likec4-edge-label__contents{display:contents}.likec4-edge-label .likec4-edge-label__contents:is(:empty,[data-empty]){display:none!important}.likec4-edge-label .likec4-edge-label__technology{text-align:center;white-space-collapse:preserve-breaks;font-size:11px;line-height:var(--line-heights-1);opacity:.75}.likec4-overlay{--_blur: 0px;--_level: 0;--_offset: 0px;--_inset: calc((1 + var(--_level) * .75) * var(--_offset));--_opacity: 0%;--_border-radius: 0px;margin:var(--spacing-0);background:var(--colors-likec4-overlay-border);border:var(--borders-transparent);inset:var(--spacing-0);padding:var(--spacing-0);outline:var(--borders-none);border-radius:var(--_border-radius);box-sizing:border-box;position:fixed;box-shadow:var(--shadows-xl);width:100vw;height:100vh;max-width:100vw;max-height:100vh}.likec4-overlay::backdrop{cursor:zoom-out}.likec4-overlay .likec4-overlay-body{border:var(--borders-transparent);background:var(--colors-likec4-overlay-body);overflow:hidden;position:relative;container-name:likec4-dialog;container-type:size;width:var(--sizes-100\\%);height:var(--sizes-100\\%)}.likec4-markdown-block{--text-fz: 1rem;--text-fz-sm: calc(var(--text-fz) * var(--mantine-scale, 1) / 1.125);--text-fz-md: calc(var(--text-fz) * var(--mantine-scale, 1));--typography-spacing: calc(.75 * var(--text-fz-md));--text-fw-headings: 600;--code-background: var(--mantine-color-gray-2);--code-color: var(--mantine-color-black);font-size:var(--text-fz-md);line-height:var(--mantine-line-height)}[data-mantine-color-scheme=dark] .likec4-markdown-block{--code-background: var(--mantine-color-dark-8);--code-color: var(--mantine-color-white);--color-border-default: #30363d;--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-danger-fg: #f85149;--color-danger-emphasis: #da3633;--color-attention-fg: #d29922;--color-attention-emphasis: #9e6a03;--color-done-fg: #a371f7;--color-done-emphasis: #8957e5;--color-success-fg: #3fb950;--color-success-emphasis: #238636}[data-mantine-color-scheme=light] .likec4-markdown-block{--color-border-default: #d0d7de;--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-danger-fg: #d1242f;--color-danger-emphasis: #cf222e;--color-attention-fg: #9a6700;--color-attention-emphasis: #9a6700;--color-done-fg: #8250df;--color-done-emphasis: #8250df;--color-success-fg: #1a7f37;--color-success-emphasis: #1f883d}.likec4-markdown-block :where(hr){border:var(--borders-none);border-bottom:1px solid;border-color:var(--mantine-color-gray-3);margin-top:calc(var(--typography-spacing) / 2);margin-bottom:calc(var(--typography-spacing) / 2)}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(hr){border-color:var(--mantine-color-dark-3)}.likec4-markdown-block :where(pre){margin:var(--spacing-0);padding-inline:var(--spacing-3);padding-block:var(--spacing-2);border-radius:var(--radii-sm);line-height:var(--mantine-line-height-xs);font-family:var(--mantine-font-family-monospace);font-size:var(--text-fz-sm);background-color:var(--code-background);color:var(--code-color);margin-top:var(--typography-spacing);margin-bottom:var(--typography-spacing);overflow-x:auto}.likec4-markdown-block :where(code){padding:1px 4px;border-radius:var(--radii-xs);line-height:var(--line-heights-1);font-family:var(--mantine-font-family-monospace);font-size:var(--text-fz-sm);background-color:var(--code-background);color:var(--code-color)}.likec4-markdown-block :where(pre code){padding:var(--spacing-0);border:0;border-radius:var(--radii-0);background-color:var(--colors-transparent);color:inherit}.likec4-markdown-block :where(blockquote){margin:var(--spacing-0);padding:var(--spacing-xs);border-radius:var(--mantine-radius-sm);font-size:var(--text-fz-md);background-color:var(--mantine-color-gray-1)}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(blockquote){background-color:var(--mantine-color-dark-5)}.likec4-markdown-block :where(blockquote):not(:first-child){margin-top:var(--typography-spacing)}.likec4-markdown-block :where(h1,h2,h3,h4,h5,h6){text-wrap:var(--mantine-heading-text-wrap);line-height:1.5;font-family:var(--mantine-font-family-headings);margin-bottom:var(--typography-spacing)}.likec4-markdown-block :where(a){text-decoration:none;font-size:var(--text-fz-md);color:var(--mantine-color-anchor);font-weight:500}.likec4-markdown-block :where(a):is(:hover,[data-hover]){text-decoration:underline}.likec4-markdown-block .markdown-alert{border-left:.25em solid var(--borderColor-default, var(--color-border-default));color:inherit;margin-bottom:calc(var(--typography-spacing) * 1.5);padding-left:1em;padding-right:.5em}.likec4-markdown-block .markdown-alert .markdown-alert-title{gap:var(--spacing-2);align-items:center;display:flex;font-size:var(--text-fz-md);font-weight:500;line-height:1.5;margin-bottom:.1em}.likec4-markdown-block .markdown-alert .markdown-alert-title svg{fill:currentColor;height:var(--text-fz-md)}.likec4-markdown-block .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--color-accent-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--color-success-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--color-done-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--color-attention-fg)}.likec4-markdown-block .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--color-danger-fg)}.likec4-markdown-block .markdown-alert:last-child{margin-bottom:var(--spacing-0)!important}.likec4-markdown-block .markdown-alert.markdown-alert-note{border-left-color:var(--borderColor-accent-emphasis,var(--color-accent-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-tip{border-left-color:var(--borderColor-success-emphasis,var(--color-success-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-important{border-left-color:var(--borderColor-done-emphasis,var(--color-done-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-warning{border-left-color:var(--borderColor-attention-emphasis,var(--color-attention-emphasis))}.likec4-markdown-block .markdown-alert.markdown-alert-caution{border-left-color:var(--borderColor-danger-emphasis,var(--color-danger-emphasis))}.likec4-markdown-block :is(h1){font-size:calc(1.476 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h2){font-size:calc(1.383 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h3){font-size:calc(1.296 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h4){font-size:calc(1.215 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h5){font-size:calc(1.138 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :is(h6){font-size:calc(1.067 * var(--text-fz-md));font-weight:var(--text-fw-headings)}.likec4-markdown-block :where(p){font-size:var(--text-fz-md);margin-top:var(--spacing-0);margin-bottom:var(--typography-spacing)}.likec4-markdown-block :where(strong){font-weight:500}.likec4-markdown-block :where(mark){font-size:var(--text-fz-md);background-color:var(--mantine-color-yellow-2);color:inherit}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(mark){background-color:var(--mantine-color-yellow-5);color:var(--mantine-color-black)}.likec4-markdown-block :where(ul,ol):not([data-type=taskList]){padding-inline-start:var(--typography-spacing);list-style-position:inside;margin-bottom:var(--typography-spacing)}.likec4-markdown-block :where(table){border-collapse:collapse;caption-side:bottom;width:var(--sizes-100\\%);margin-bottom:var(--typography-spacing)}[data-mantine-color-scheme=light] .likec4-markdown-block :where(table){--table-border-color: var(--mantine-color-gray-3)}[data-mantine-color-scheme=dark] .likec4-markdown-block :where(table){--table-border-color: var(--mantine-color-dark-4)}.likec4-markdown-block :where(table) :where(th){padding:var(--typography-spacing);text-align:left;font-weight:700;font-size:var(--text-fz-sm)}.likec4-markdown-block :where(table) :where(td){padding:var(--typography-spacing);border-bottom:1px solid;border-color:var(--table-border-color);font-size:var(--text-fz-sm)}.likec4-markdown-block :where(table) :where(thead th){border-bottom:1px solid;border-color:var(--table-border-color)}.likec4-markdown-block :where(table) :where(tfoot th){border-top:1px solid;border-color:var(--table-border-color)}.likec4-markdown-block :where(table) :where(tr:last-of-type td){border-bottom:0}.likec4-markdown-block :where(table) :where(caption){font-size:var(--text-fz-sm);color:var(--mantine-color-dimmed);margin-top:calc(.5 * var(--typography-spacing) + 1px)}.likec4-markdown-block :first-child{margin-top:var(--spacing-0)}.likec4-markdown-block :last-child{margin-bottom:var(--spacing-0)}.likec4-markdown-block :is(h1,h2,h3,h4,h5,h6):not(:first-child){margin-top:var(--typography-spacing)}.likec4-markdown-block :where(img){max-width:var(--sizes-100\\%);margin-bottom:var(--typography-spacing)}.likec4-navigation-panel-icon{color:var(--colors-likec4-panel-action)}.likec4-navigation-panel-icon:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){color:var(--colors-likec4-panel-action-disabled);opacity:.5}.likec4-navigation-panel-icon:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover)}.action-btn{--actionbtn-color: var(--likec4-palette-loContrast);--actionbtn-color-hovered: var(--likec4-palette-loContrast);--actionbtn-color-hovered-btn: var(--likec4-palette-hiContrast);--actionbtn-bg-idle: color-mix(in oklab , var(--likec4-palette-fill), transparent 99%);--actionbtn-bg-hovered: color-mix(in oklab , var(--likec4-palette-fill) 65%, var(--likec4-palette-stroke));--actionbtn-bg-hovered-btn: color-mix(in oklab , var(--likec4-palette-fill) 50%, var(--likec4-palette-stroke));--ai-bg: var(--actionbtn-bg-idle);background:var(--ai-bg);color:var(--actionbtn-color);opacity:.75}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .action-btn{--ai-bg: var(--actionbtn-bg-hovered);opacity:1;color:var(--actionbtn-color-hovered)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .action-btn{pointer-events:all;cursor:pointer}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .action-btn{display:none}:where([data-likec4-zoom-small=true]) .action-btn{display:none}.action-btn *{pointer-events:none}.action-btn:is(:hover,[data-hover]){--ai-bg: var(--actionbtn-bg-hovered-btn);opacity:1;color:var(--actionbtn-color-hovered-btn)}.likec4-compound-node{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l - .05) a b);--_border-width: 3px;--_border-radius: 6px;--_compound-transparency: 100%;--_border-transparency: 100%;--_indicator-spacing: calc(var(--_border-width) + 1px);--_compound-color: var(--likec4-palette-loContrast);padding:var(--spacing-0);margin:var(--spacing-0);border-style:solid;border-width:var(--_border-width);border-radius:var(--_border-radius);position:relative;pointer-events:none;background-clip:padding-box;-webkit-background-clip:padding-box;box-sizing:border-box;color:var(--_compound-color);width:var(--sizes-100\\%);height:var(--sizes-100\\%)}[data-mantine-color-scheme=dark] .likec4-compound-node{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l + .2) a b)}.likec4-compound-node:before{border-style:solid;border-width:calc(var(--_border-width) + 1px);border-radius:calc(var(--_border-radius) + 4px);border-color:var(--likec4-palette-outline);position:absolute;content:" ";pointer-events:none;display:none;animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorOpacity;animation-play-state:paused;top:calc(-1 * var(--_indicator-spacing));left:calc(-1 * var(--_indicator-spacing));width:calc(100% + 2 * var(--_indicator-spacing));height:calc(100% + 2 * var(--_indicator-spacing))}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-compound-node:before{display:block;animation-play-state:running}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-compound-node:before{display:block;animation-play-state:running}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-compound-node:before{animation-play-state:paused}.likec4-compound-node:has(.likec4-compound-navigation) .likec4-compound-title-container{padding-left:24px}.likec4-compound-node .action-btn{--actionbtn-color: var(--_compound-color);--actionbtn-color-hovered: var(--_compound-color);--actionbtn-color-hovered-btn: color-mix(in oklab, var(--_compound-color) 80%, #fff);opacity:.6}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-compound-node .action-btn{transition:all var(--durations-fast) var(--easings-in-out)}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-compound-node .action-btn{opacity:.75}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-compound-node .action-btn{opacity:.75}.likec4-compound-node .action-btn:is(:hover,[data-hover]){opacity:1}.likec4-compound-node .likec4-compound-title-container{gap:var(--spacing-1\\.5);position:absolute;display:flex;align-items:center;left:var(--spacing-2\\.5);top:var(--spacing-0\\.5);right:30px;width:auto;min-height:30px}:where(.react-flow__node.draggable) .likec4-compound-node .likec4-compound-title-container{pointer-events:all;cursor:grab}.likec4-compound-node .likec4-compound-title{flex:1 1 0%;font-family:var(--fonts-likec4-compound);font-weight:600;font-size:15px;text-transform:uppercase;letter-spacing:.25px;line-height:var(--line-heights-1);color:var(--_compound-color)}.likec4-compound-node .likec4-compound-icon{flex:0 0 20px;display:flex;align-items:center;justify-content:center;mix-blend-mode:hard-light;height:20px;width:20px}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-compound-node .likec4-compound-icon{mix-blend-mode:normal}.likec4-compound-node .likec4-compound-icon svg,.likec4-compound-node .likec4-compound-icon img{pointer-events:none;filter:drop-shadow(0 0 3px rgb(0 0 0 / 12%)) drop-shadow(0 1px 8px rgb(0 0 0 / 8%)) drop-shadow(1px 1px 16px rgb(0 0 0 / 3%));width:var(--sizes-100\\%);height:auto;max-height:var(--sizes-100\\%)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-compound-node .likec4-compound-icon svg,.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-compound-node .likec4-compound-icon img{filter:none}.likec4-compound-node .likec4-compound-icon img{object-fit:contain}.likec4-compound-node .likec4-compound-navigation{position:absolute;top:var(--spacing-1);left:var(--spacing-0\\.5)}:where([data-likec4-zoom-small=true]) .likec4-compound-node .likec4-compound-navigation{display:none}.likec4-compound-node .likec4-compound-details{position:absolute;top:var(--spacing-0\\.5);right:var(--spacing-0\\.5)}:where([data-likec4-zoom-small=true]) .likec4-compound-node .likec4-compound-details{display:none}.likec4-edge-action-btn{--ai-bg: transparent;--ai-hover: color-mix(in oklab , var(--xy-edge-label-background-color), var(--colors-likec4-mix-color) 10%);--ai-size: var(--ai-size-sm);--ai-radius: var(--radii-sm);transition:all var(--durations-fast) var(--easings-in-out);pointer-events:all;color:var(--xy-edge-label-color);cursor:pointer;opacity:.75;translate:var(--translate-x) var(--translate-y)}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-edge-action-btn{--ai-bg: var(--xy-edge-label-background-color);opacity:1}.likec4-edge-action-btn .tabler-icon{stroke-width:2;width:80%;height:80%}.likec4-edge-action-btn:is(:hover,[data-hover]){--translate-y: 2px;scale:1.15}.likec4-edge-action-btn:is(:active,[data-active]){--translate-y: -1px;scale:.9}.likec4-element-node-data{margin:0 auto;flex:1 1 0%;overflow:hidden;gap:var(--spacing-3);position:relative;display:flex;align-items:center;justify-content:center;flex-direction:row;pointer-events:none;text-align:center;height:fit-content;width:fit-content;max-height:var(--sizes-100\\%);max-width:var(--sizes-100\\%);padding-top:var(--likec4-spacing);padding-bottom:var(--likec4-spacing);padding-left:calc(var(--likec4-spacing) + 8px);padding-right:calc(var(--likec4-spacing) + 8px)}:where([data-likec4-shape-size=xs]) .likec4-element-node-data{--likec4-icon-size: 24px}:where([data-likec4-shape-size=sm]) .likec4-element-node-data{--likec4-icon-size: 36px}:where([data-likec4-shape-size=md]) .likec4-element-node-data{--likec4-icon-size: 60px}:where([data-likec4-shape-size=lg]) .likec4-element-node-data{--likec4-icon-size: 82px;gap:var(--spacing-4)}:where([data-likec4-shape-size=xl]) .likec4-element-node-data{--likec4-icon-size: 90px;gap:var(--spacing-4)}.likec4-element-node-data:has([data-likec4-icon]){gap:var(--spacing-4);text-align:left}.likec4-element-node-data:has([data-likec4-icon]) .likec4-element-node-content{align-items:flex-start;min-width:calc(50% + var(--likec4-icon-size))}:where([data-likec4-shape=queue]) .likec4-element-node-data{padding-left:46px;padding-right:16px}:where([data-likec4-shape=mobile]) .likec4-element-node-data{padding-left:46px;padding-right:16px}:where([data-likec4-shape=cylinder]) .likec4-element-node-data{padding-top:30px}:where([data-likec4-shape=storage]) .likec4-element-node-data{padding-top:30px}:where([data-likec4-shape=browser]) .likec4-element-node-data{padding-top:32px;padding-bottom:28px}.likec4-element-node-data [data-likec4-icon]{flex:0 0 var(--likec4-icon-size, 48px);display:flex;align-self:flex-start;align-items:center;justify-content:center;mix-blend-mode:hard-light;height:var(--likec4-icon-size, 48px);width:var(--likec4-icon-size, 48px)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-node-data [data-likec4-icon]{mix-blend-mode:normal}.likec4-element-node-data [data-likec4-icon] svg,.likec4-element-node-data [data-likec4-icon] img{pointer-events:none;filter:drop-shadow(0 0 3px rgb(0 0 0 / 12%));width:var(--sizes-100\\%);height:auto;max-height:var(--sizes-100\\%)}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-node-data [data-likec4-icon] svg,.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-node-data [data-likec4-icon] img{filter:none}.likec4-element-node-data [data-likec4-icon] img{object-fit:contain}.likec4-element-node-data .likec4-element-node-content{flex:0 1 auto;overflow:hidden;gap:var(--spacing-2);display:flex;flex-direction:column;align-items:stretch;justify-content:center;flex-wrap:nowrap;height:fit-content;width:fit-content;max-height:var(--sizes-100\\%);max-width:var(--sizes-100\\%)}.likec4-element-node-data .likec4-element-node-content:has([data-likec4-node-description]):has([data-likec4-node-technology]){gap:var(--spacing-1\\.5)}.likec4-element-node-data [data-likec4-node-title]{flex:0 0 auto;font-family:var(--likec4-element-font, var(--fonts-likec4));font-weight:500;font-size:var(--likec4-text-size);line-height:1.15;text-wrap-style:balance;white-space:preserve-breaks;text-align:var(__text-align);color:var(--likec4-palette-hiContrast)}.likec4-element-node-data [data-likec4-node-description]{overflow:hidden;flex-grow:0;flex-shrink:1;--text-fz: calc(var(--likec4-text-size) * .74);font-family:var(--likec4-element-font, var(--fonts-likec4));font-weight:400;font-size:calc(var(--likec4-text-size) * .74);line-height:1.3;text-wrap-style:pretty;color:var(--likec4-palette-loContrast);text-align:var(__text-align);text-overflow:ellipsis}:where([data-likec4-shape-size=xs]) .likec4-element-node-data [data-likec4-node-description]{display:none}:where([data-likec4-zoom-small=true]) .likec4-element-node-data [data-likec4-node-description]{display:none}.likec4-element-node-data [data-likec4-node-description] a{pointer-events:all}.likec4-element-node-data [data-likec4-node-description] .markdown-alert{mix-blend-mode:screen}.likec4-element-node-data [data-likec4-node-technology]{flex:0 0 auto;text-wrap:balance;--text-fz: calc(var(--likec4-text-size) * .74);font-family:var(--likec4-element-font, var(--fonts-likec4));font-weight:400;font-size:calc(var(--likec4-text-size) * .635);line-height:1.125;text-wrap-style:pretty;color:var(--likec4-palette-loContrast);text-align:var(__text-align);opacity:.92}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-node-data [data-likec4-node-technology]{opacity:1}:where([data-likec4-shape-size=xs]) .likec4-element-node-data [data-likec4-node-technology]{display:none}:where([data-likec4-shape-size=sm]) .likec4-element-node-data [data-likec4-node-technology]{display:none}:where([data-likec4-zoom-small=true]) .likec4-element-node-data [data-likec4-node-technology]{display:none}.likec4-element-shape{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l - .05) a b);--likec4-outline-size: 4px;overflow:visible;position:absolute;pointer-events:none;top:var(--spacing-0);left:var(--spacing-0);width:var(--sizes-100\\%);height:var(--sizes-100\\%)}[data-mantine-color-scheme=dark] .likec4-element-shape{--likec4-palette-outline: oklab(from var(--likec4-palette-stroke) calc(l + .2) a b)}.likec4-element-shape .likec4-shape-outline{visibility:hidden;animation-play-state:paused;pointer-events:none}:where([data-likec4-zoom-small=true]) .likec4-element-shape .likec4-shape-outline{visibility:hidden}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape .likec4-shape-outline{visibility:visible;animation-play-state:running}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-element-shape .likec4-shape-outline{visibility:visible;animation-play-state:running}.group:is(:focus-visible,[data-focus-visible]) .likec4-element-shape .likec4-shape-outline{visibility:visible;animation-play-state:running}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-element-shape .likec4-shape-outline{animation-play-state:paused}.likec4-tag{transition:all var(--durations-fast) var(--easings-in-out);gap:1px;padding-inline:var(--spacing-1);padding-block:var(--spacing-0);pointer-events:all;display:inline-flex;align-items:center;justify-content:center;font-size:var(--font-sizes-xs);cursor:default;font-family:var(--fonts-likec4);font-weight:700;border:var(--borders-none);border-radius:3px;color:var(--colors-likec4-tag-text);background-color:var(--colors-likec4-tag-bg)}.likec4-tag:is(:hover,[data-hover]){background-color:var(--colors-likec4-tag-bg-hover)}.likec4-tag{white-space:nowrap;min-width:40px;width:min-content}@media screen and (min-width:36rem){.likec4-markdown-block .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--fgColor-accent,var(--color-accent-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--fgColor-success,var(--color-success-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--fgColor-done,var(--color-done-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--fgColor-attention,var(--color-attention-fg))}.likec4-markdown-block .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--fgColor-danger,var(--color-danger-fg))}.likec4-element-node-data [data-likec4-icon] svg,.likec4-element-node-data [data-likec4-icon] img{filter:drop-shadow(0 1px 8px rgb(0 0 0 / 8%))}}@media screen and (min-width:48rem){.likec4-element-node-data [data-likec4-icon] svg,.likec4-element-node-data [data-likec4-icon] img{filter:drop-shadow(1px 1px 16px rgb(0 0 0 / 3%))}}@media print{.action-btn{display:none}.likec4-compound-node .likec4-compound-icon{mix-blend-mode:normal!important}.likec4-compound-node .action-btn,.likec4-compound-node .likec4-compound-navigation,.likec4-compound-node .likec4-compound-details,.likec4-edge-action-btn{display:none}}}.likec4-edge-label--pointerEvents_all{pointer-events:all}.likec4-edge-label--cursor_default{cursor:default}.likec4-edge-label--cursor_pointer{cursor:pointer}.likec4-edge-label--isStepEdge_true{padding:var(--spacing-0);gap:var(--spacing-1);flex-direction:row}.likec4-edge-label--isStepEdge_true .likec4-edge-label__contents{gap:var(--spacing-0\\.5);display:flex;flex-direction:column;align-items:center;padding-top:var(--spacing-0\\.5);padding-right:var(--spacing-1);padding-bottom:var(--spacing-1)}.likec4-edge-label--isStepEdge_true .likec4-edge-label__text{padding-block:var(--spacing-0\\.5);padding-right:var(--spacing-0\\.5)}.likec4-edge-label--pointerEvents_none{pointer-events:none}.likec4-overlay--withBackdrop_true::backdrop{background:color-mix(in oklab,var(--colors-likec4-overlay-backdrop) var(--_opacity),transparent);backdrop-filter:blur(var(--_blur));-webkit-backdrop-filter:blur(var(--_blur))}.likec4-overlay--fullscreen_true{inset:var(--spacing-0);padding:var(--spacing-0)}.likec4-overlay--withBackdrop_false::backdrop{display:none}.likec4-markdown-block--value_plaintext :where(p){white-space:preserve-breaks}.likec4-markdown-block--uselikec4palette_true{--code-background: color-mix(in oklab , var(--likec4-palette-stroke) 70%, transparent);--code-color: var(--likec4-palette-loContrast);--typography-spacing: calc(.5 * var(--text-fz-md))}.likec4-markdown-block--uselikec4palette_true :where(blockquote){padding:var(--spacing-xxs);--mix-backgroundColor: color-mix(in srgb, var(--likec4-palette-stroke) 65%, transparent);background-color:var(--mix-backgroundColor, var(--likec4-palette-stroke))}.likec4-markdown-block--uselikec4palette_true :where(hr){--mix-borderColor: color-mix(in srgb, var(--likec4-palette-stroke) 85%, transparent);border-color:var(--mix-borderColor, var(--likec4-palette-stroke))}.likec4-markdown-block--uselikec4palette_true :where(a){--mix-color: color-mix(in srgb, var(--likec4-palette-fill) 45%, transparent);color:var(--mix-color, var(--likec4-palette-fill));mix-blend-mode:difference}.likec4-markdown-block--uselikec4palette_true :where(strong){color:color-mix(in oklab,var(--likec4-palette-hiContrast) 50%,var(--likec4-palette-loContrast))}.likec4-navigation-panel-icon--variant_default{background-color:var(--colors-transparent)}.likec4-navigation-panel-icon--variant_default:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.likec4-navigation-panel-icon--variant_filled{background-color:var(--colors-likec4-panel-action-bg)}.likec4-navigation-panel-icon--variant_filled:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.likec4-navigation-panel-icon--type_warning{color:var(--colors-likec4-panel-action-warning)}.likec4-navigation-panel-icon--type_warning:is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-warning-hover)}.action-btn--size_md{--ai-size: var(--ai-size-md)}.action-btn--radius_md{--ai-radius: var(--mantine-radius-md)}.action-btn--variant_transparent{--actionbtn-bg-hovered: var(--actionbtn-bg-idle)}.action-btn--variant_filled{box-shadow:1px 1px 3px 0 transparent}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .action-btn--variant_filled{box-shadow:1px 1px 3px #0003}.likec4-root:is([data-likec4-reduced-graphics]) .action-btn--variant_filled{box-shadow:var(--shadows-none)}.action-btn--size_sm{--ai-size: var(--ai-size-sm)}.action-btn--radius_sm{--ai-radius: var(--mantine-radius-sm)}.likec4-compound-node--borderStyle_dashed{border-style:dashed}.likec4-compound-node--borderStyle_none{--_indicator-spacing: calc(var(--_border-width) * 2);border-color:var(--colors-transparent)!important;background-clip:border-box!important;-webkit-background-clip:border-box!important}.likec4-compound-node--isTransparent_false{border-color:var(--likec4-palette-stroke);background-color:var(--likec4-palette-fill)}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-compound-node--isTransparent_false{box-shadow:0 4px 10px .5px #0000001a,0 2px 2px -1px #0006}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-compound-node--isTransparent_false{box-shadow:var(--shadows-none)}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-compound-node--isTransparent_false{box-shadow:var(--shadows-none)!important}.likec4-compound-node--isTransparent_true{border-color:color-mix(in oklab,var(--likec4-palette-stroke) var(--_border-transparency),transparent);background-color:color-mix(in oklab,var(--likec4-palette-fill) var(--_compound-transparency),transparent)}.likec4-compound-node--inverseColor_true{--_compound-color: var(--likec4-palette-stroke)}[data-mantine-color-scheme=dark] .likec4-compound-node--inverseColor_true{--_compound-color: color-mix(in oklab, var(--likec4-palette-loContrast) 60%, var(--likec4-palette-fill))}[data-mantine-color-scheme=dark] .likec4-compound-node--inverseColor_true .action-btn{--actionbtn-color-hovered-btn: var(--likec4-palette-loContrast)}[data-mantine-color-scheme=light] .likec4-compound-node--inverseColor_true .action-btn{--actionbtn-color: var(--likec4-palette-stroke);--actionbtn-color-hovered: var(--likec4-palette-stroke);--actionbtn-color-hovered-btn: var(--likec4-palette-hiContrast);--actionbtn-bg-hovered: var(--likec4-palette-fill)/50;--actionbtn-bg-hovered-btn: var(--likec4-palette-fill)}.likec4-compound-node--borderStyle_solid{border-style:solid}.likec4-compound-node--borderStyle_dotted{border-style:dotted}.likec4-element-shape--shapetype_html{border-radius:6px;transition:background-color .12s linear,box-shadow .13s var(--easings-in-out);background-color:var(--likec4-palette-fill);box-shadow:0 2px 1px #00000036,0 1px 1px color-mix(in oklab,var(--likec4-palette-stroke) 40%,transparent),0 5px 3px #0000001a;transition-delay:0ms}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_html{transition:none}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_html{box-shadow:#26394df2 0 20px 30px -10px}[data-mantine-color-scheme=dark] :where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_html{box-shadow:#0a0b10e5 0 20px 30px -10px}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_html{box-shadow:var(--shadows-none)}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_html{box-shadow:var(--shadows-none)}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_html{box-shadow:var(--shadows-none)}.likec4-element-shape--shapetype_html .likec4-shape-multiple{border-radius:6px;transition:all var(--durations-fast) var(--easings-in-out);position:absolute;content:" ";background-color:var(--likec4-palette-fill);z-index:var(--z-index--1);filter:brightness(.5)!important;visibility:visible;top:16px;left:16px;width:calc(100% - 6px);height:calc(100% - 6px)}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_html .likec4-shape-multiple{visibility:hidden}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_html .likec4-shape-multiple{transform:translate(-14px,-14px)}.likec4-element-shape--shapetype_html .likec4-shape-outline{border-style:solid;border-width:var(--likec4-outline-size);border-radius:11px;border-color:var(--likec4-palette-outline);position:absolute;content:" ";animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorOpacity;top:calc(-1 * var(--likec4-outline-size) - 1px);left:calc(-1 * var(--likec4-outline-size) - 1px);width:calc(100% + 2 * var(--likec4-outline-size) + 2px);height:calc(100% + 2 * var(--likec4-outline-size) + 2px)}.likec4-element-shape--shapetype_svg{transition:fill .12s linear,filter .13s var(--easings-in-out);fill:var(--likec4-palette-fill);stroke:var(--likec4-palette-stroke);transition-delay:0ms;filter:drop-shadow(0 2px 1px rgba(0,0,0,.21)) drop-shadow(0 1px 1px color-mix(in oklab,var(--likec4-palette-stroke) 40%,transparent)) drop-shadow(0 5px 3px rgba(0,0,0,.1))}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_svg{filter:drop-shadow(0 2px 1px rgba(0,0,0,.12)) drop-shadow(0px 4px 2px rgba(0,0,0,.12)) drop-shadow(0px 8px 4px rgba(0,0,0,.12)) drop-shadow(0px 16px 8px rgba(0,0,0,.1)) drop-shadow(0px 32px 16px rgba(0,0,0,.09))}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_svg{filter:none}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_svg{filter:none}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_svg{filter:none}.likec4-element-shape--shapetype_svg [data-likec4-fill=fill]{fill:var(--likec4-palette-fill)}.likec4-element-shape--shapetype_svg [data-likec4-fill=stroke]{fill:var(--likec4-palette-stroke)}.likec4-element-shape--shapetype_svg [data-likec4-fill=mix-stroke]{fill:color-mix(in oklab,var(--likec4-palette-stroke) 90%,var(--likec4-palette-fill))}.likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transition:all var(--durations-fast) var(--easings-in-out);transform-origin:50% 50%;transform:translate(14px,14px) perspective(200px) translateZ(-4px);filter:brightness(.5)!important;stroke:var(--colors-none)}:where([data-likec4-shape=queue]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform-origin:75% 25%}:where([data-likec4-shape=cylinder]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform-origin:50% 100%}:where([data-likec4-shape=storage]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform-origin:50% 100%}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){transform:translate(2px,2px) perspective(200px) translateZ(-4px)}:where([data-likec4-zoom-small=true]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}:where(.react-flow__node,.react-flow__edge):is(:focus-visible,:focus,:focus-within) .likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]){display:none}.likec4-element-shape--shapetype_svg:is([data-likec4-shape-multiple=true]) [data-likec4-fill=mix-stroke]{fill:var(--likec4-palette-fill)}.likec4-element-shape--shapetype_svg .likec4-shape-outline{stroke:var(--likec4-palette-outline);fill:var(--colors-none);stroke-width:3;stroke-opacity:.8;animation-duration:1s;animation-iteration-count:infinite;animation-direction:alternate;animation-name:indicatorOpacity}.likec4-tag--autoTextColor_false>span{color:var(--colors-likec4-tag-text)}.likec4-tag--autoTextColor_false>span:first-child{opacity:.65}.likec4-tag--autoTextColor_true>span{background:inherit;color:var(--colors-transparent);filter:invert(1) grayscale(1) brightness(1.3) contrast(1000);background-clip:text;-webkit-background-clip:text;mix-blend-mode:plus-lighter}.hover\\:likec4-tag--autoTextColor_true:is(:hover,[data-hover])>span{background:inherit;color:var(--colors-transparent);filter:invert(1) grayscale(1) brightness(1.3) contrast(1000);background-clip:text;-webkit-background-clip:text;mix-blend-mode:plus-lighter}.hover\\:likec4-tag--autoTextColor_false:is(:hover,[data-hover])>span{color:var(--colors-likec4-tag-text)}.hover\\:likec4-tag--autoTextColor_false:is(:hover,[data-hover])>span:first-child{opacity:.65}@media screen and (min-width:48rem){.likec4-overlay--fullscreen_false{--_border-radius: 6px;--_offset: 1rem;inset:var(--_inset) var(--_inset) var(--_offset) var(--_inset);padding:var(--spacing-1\\.5);border-radius:calc(var(--_border-radius) - 2px);width:calc(100vw - 2 * var(--_inset));height:calc(100vh - var(--_offset) - var(--_inset))}}@media screen and (min-width:62rem){.likec4-overlay--fullscreen_false{--_offset: 1rem}}@media screen and (min-width:75rem){.likec4-overlay--fullscreen_false{--_offset: 2rem}}@media screen and (min-width:88rem){.likec4-overlay--fullscreen_false{--_offset: 4rem}}@media print{.likec4-markdown-block--uselikec4palette_true :where(a){mix-blend-mode:normal!important}}@media print{.likec4-tag--autoTextColor_true>span{mix-blend-mode:normal!important}}@media print{.hover\\:likec4-tag--autoTextColor_true:is(:hover,[data-hover])>span{mix-blend-mode:normal!important}}}@layer recipes.slots{@layer _base{.likec4-navlink__root{border-radius:var(--radii-sm);padding-inline:var(--spacing-xs);padding-block:var(--spacing-xxs)}.likec4-navlink__root:is(:hover,[data-hover]):not([data-active]){background-color:var(--colors-mantine-colors-gray\\[1\\])}[data-mantine-color-scheme=dark] .likec4-navlink__root:is(:hover,[data-hover]):not([data-active]){background-color:var(--colors-mantine-colors-dark\\[5\\])}.likec4-navlink__body{gap:var(--spacing-0\\.5);display:flex;flex-direction:column}.likec4-navlink__section:where([data-position=left]){margin-inline-end:var(--spacing-xxs)}.likec4-navlink__label{display:block;font-size:var(--font-sizes-sm);font-weight:500;line-height:1.2}.likec4-navlink__description{display:block;font-size:var(--font-sizes-xxs);line-height:1.2}.likec4-edge__path{fill:var(--colors-none);stroke-dashoffset:0}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge__path{transition:stroke .13s ease-out,stroke-width .13s ease-out;animation-duration:.8s;animation-iteration-count:infinite;animation-timing-function:linear;animation-fill-mode:both;animation-name:xyedgeAnimated;animation-play-state:paused}:where([data-edge-dir=back]) .likec4-edge__path{animation-direction:reverse}:where(.react-flow__node,.react-flow__edge):has([data-likec4-dimmed]) .likec4-edge__path{animation-play-state:paused}:where([data-likec4-zoom-small=true]) .likec4-edge__path{animation-name:none}.likec4-root:is([data-likec4-diagram-panning=true]) .likec4-edge__path{stroke-dasharray:none!important;animation-play-state:paused}.likec4-root:not([data-likec4-reduced-graphics]) :where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-edge__path{animation-play-state:running;animation-delay:.45s}.likec4-root:not([data-likec4-reduced-graphics]) :where(.selected,[data-edge-active=true],[data-edge-animated=true]) .likec4-edge__path{animation-play-state:running;animation-delay:0ms}.likec4-edge__pathBg{pointer-events:none;fill:var(--colors-none);stroke-width:calc(var(--xy-edge-stroke-width) + 2);stroke-opacity:.08}.likec4-root:not([data-likec4-reduced-graphics]) .likec4-edge__pathBg{--transition-prop: stroke-width, stroke-opacity;transition-property:stroke-width,stroke-opacity;--transition-duration: var(--durations-fast);transition-duration:var(--durations-fast);--transition-easing: var(--easings-in-out);transition-timing-function:var(--easings-in-out)}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .likec4-edge__pathBg{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out);stroke-width:calc(var(--xy-edge-stroke-width) + 4);stroke-opacity:.2}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-edge__pathBg{stroke-width:calc(var(--xy-edge-stroke-width) + 6);stroke-opacity:.25}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) :where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .likec4-edge__pathBg{stroke-opacity:.4}.likec4-edge__markersCtx{fill:var(--xy-edge-stroke);stroke:var(--xy-edge-stroke)}.likec4-edge__middlePoint{visibility:hidden;offset-distance:50%;cx:0;cy:0;r:4px;pointer-events:none}}.likec4-navlink__label--truncateLabel_true,.likec4-navlink__description--truncateLabel_true{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:var(--sizes-100\\%)}}@layer utilities{@layer compositions{.layerStyle_likec4\\.panel{padding:var(--spacing-1);border:1px solid var(--colors-likec4-panel-border);border-radius:var(--radii-0);background-color:var(--colors-likec4-panel-bg)}.layerStyle_likec4\\.dropdown{padding:var(--spacing-2);border:1px solid var(--colors-likec4-dropdown-border);border-radius:var(--radii-md);background-color:var(--colors-likec4-dropdown-bg);box-shadow:var(--shadows-lg)}.layerStyle_likec4\\.tag{border:var(--borders-none);border-radius:3px;color:var(--colors-likec4-tag-text);background-color:var(--colors-likec4-tag-bg)}.layerStyle_likec4\\.tag:is(:hover,[data-hover]){background-color:var(--colors-likec4-tag-bg-hover)}.textStyle_xs{font-size:.75rem;line-height:1rem}.layerStyle_likec4\\.panel\\.action{border:var(--borders-transparent);padding-inline:var(--spacing-xxs);padding-block:var(--spacing-xxs);border-radius:var(--radii-sm);color:var(--colors-likec4-panel-action);cursor:pointer}.layerStyle_likec4\\.panel\\.action:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){color:var(--colors-likec4-panel-action-disabled);cursor:not-allowed}.layerStyle_likec4\\.panel\\.action:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover);background-color:var(--colors-likec4-panel-action-bg-hover)}.layerStyle_likec4\\.panel\\.action\\.filled{border:var(--borders-transparent);padding-inline:var(--spacing-xxs);padding-block:var(--spacing-xxs);border-radius:var(--radii-sm);color:var(--colors-likec4-panel-action);cursor:pointer;background-color:var(--colors-likec4-panel-action-bg)}.layerStyle_likec4\\.panel\\.action\\.filled:is(:disabled,[disabled],[data-disabled],[aria-disabled=true]){color:var(--colors-likec4-panel-action-disabled);cursor:not-allowed;background-color:var(--colors-likec4-panel-action-bg)}.layerStyle_likec4\\.panel\\.action\\.filled:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover);background-color:var(--colors-likec4-panel-action-bg-hover)}@container (min-width: 40rem){.layerStyle_likec4\\.panel{border-radius:var(--radii-md);padding-inline:var(--spacing-2);box-shadow:var(--shadows-lg)}}}.--mantine-cursor-pointer_pointer{--mantine-cursor-pointer: pointer}.--thickness_1px{--thickness: 1px}.--bleed-x_token\\(spacing\\.2\\,_2\\){--bleed-x: var(--spacing-2, 2)}.--bleed-y_token\\(spacing\\.2\\,_2\\){--bleed-y: var(--spacing-2, 2)}.--text-fz_\\{fontSizes\\.sm\\}{--text-fz: var(--font-sizes-sm)}.--view-title-color_\\{colors\\.mantine\\.colors\\.dark\\[1\\]\\}{--view-title-color: var(--colors-mantine-colors-dark\\[1\\])}.--likec4-icon-size_24px{--likec4-icon-size: 24px}.--ti-size_var\\(--likec4-icon-size\\,_24px\\){--ti-size: var(--likec4-icon-size, 24px)}.--_color_var\\(--likec4-palette-stroke\\){--_color: var(--likec4-palette-stroke)}.--ai-radius_0px{--ai-radius: 0px}.--badge-radius_2px{--badge-radius: 2px}.--badge-fz_9\\.5px{--badge-fz: 9.5px}.--badge-padding-x_3px{--badge-padding-x: 3px}.--badge-height_13\\.5px{--badge-height: 13.5px}.--badge-lh_1{--badge-lh: 1}.--badge-bg_var\\(--likec4-palette-fill\\){--badge-bg: var(--likec4-palette-fill)}.--badge-color_var\\(--likec4-palette-hiContrast\\){--badge-color: var(--likec4-palette-hiContrast)}.bg_dots{background:dots}.bg_transparent{background:var(--colors-transparent)}.m_0{margin:var(--spacing-0)}.p_0{padding:var(--spacing-0)}.bg_likec4\\.overlay\\.body{background:var(--colors-likec4-overlay-body)}.p_xl{padding:var(--spacing-xl)}.bd_1px_solid{border:1px solid}.bg_mantine\\.colors\\.default{background:var(--colors-mantine-colors-default)}.p_\\[4px_7px\\]{padding:4px 7px}.bg_\\[transparent\\]{background:var(--colors-transparent)}.p_1{padding:var(--spacing-1)}.p_4{padding:var(--spacing-4)}.bg_white{background:#fff}.bd_default{border:var(--borders-default)}.p_0\\.5{padding:var(--spacing-0\\.5)}.m_xs{margin:var(--spacing-xs)}.p_md{padding:var(--spacing-md)}.p_1\\.5{padding:var(--spacing-1\\.5)}.p_8{padding:var(--spacing-8)}.p_xxs{padding:var(--spacing-xxs)}.p_\\[4px_6px\\]{padding:4px 6px}.bg_mantine\\.colors\\.gray\\[2\\]{background:var(--colors-mantine-colors-gray\\[2\\])}.bg_mantine\\.colors\\.gray\\[3\\]{background:var(--colors-mantine-colors-gray\\[3\\])}.bd_2px_solid{border:2px solid}.inset_0{inset:var(--spacing-0)}.bd_transparent{border:var(--borders-transparent)}.bd_none{border:var(--borders-none)}.bg_\\[_linear-gradient\\(180deg\\,_color-mix\\(in_oklab\\,_var\\(--likec4-palette-fill\\)_60\\%\\,_transparent\\)\\,_color-mix\\(in_oklab\\,_var\\(--likec4-palette-fill\\)_20\\%\\,_transparent\\)_8px\\,_color-mix\\(in_oklab\\,_var\\(--likec4-palette-fill\\)_14\\%\\,_transparent\\)_20px\\,_transparent_80px_\\)\\,_linear-gradient\\(180deg\\,_var\\(--likec4-palette-fill\\)\\,_var\\(--likec4-palette-fill\\)_4px\\,_transparent_4px\\)\\,_\\{colors\\.likec4\\.overlay\\.body\\}_\\]{background:linear-gradient(180deg,color-mix(in oklab,var(--likec4-palette-fill) 60%,transparent),color-mix(in oklab,var(--likec4-palette-fill) 20%,transparent) 8px,color-mix(in oklab,var(--likec4-palette-fill) 14%,transparent) 20px,transparent 80px),linear-gradient(180deg,var(--likec4-palette-fill),var(--likec4-palette-fill) 4px,transparent 4px),var(--colors-likec4-overlay-body)}.bg_mantine\\.colors\\.body{background:var(--colors-mantine-colors-body)}.p_\\[10px_8px\\]{padding:10px 8px}.bd_1px_dashed{border:1px dashed}.bg_mantine\\.colors\\.gray\\[1\\]{background:var(--colors-mantine-colors-gray\\[1\\])}.p_\\[6px_8px\\]{padding:6px 8px}.bd_3\\.5px_solid{border:3.5px solid}.p_xs{padding:var(--spacing-xs)}.p_\\[4px_8px\\]{padding:4px 8px}.p_\\[1px_4px\\]{padding:1px 4px}.p_\\[3px_6px\\]{padding:3px 6px}.bg_var\\(--likec4-palette-fill\\)\\/75{--mix-background: color-mix(in srgb, var(--likec4-palette-fill) 75%, transparent);background:var(--mix-background, var(--likec4-palette-fill))}.bd_1px_solid_\\{colors\\.mantine\\.colors\\.defaultBorder\\}{border:1px solid var(--colors-mantine-colors-default-border)}.p_\\[1px_5px\\]{padding:1px 5px}.bg_mantine\\.colors\\.dark\\[7\\]{background:var(--colors-mantine-colors-dark\\[7\\])}.p_\\[6px_2px_0_2px\\]{padding:6px 2px 0}.p_\\[0_4px_5px_4px\\]{padding:0 4px 5px}.bg_mantine\\.colors\\.dark\\[9\\]\\/30{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[9\\]) 30%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[9\\]))}.bg_mantine\\.colors\\.primary\\[8\\]{background:var(--colors-mantine-colors-primary\\[8\\])}.p_\\[12px_8px_12px_14px\\]{padding:12px 8px 12px 14px}.bd_2px_dashed{border:2px dashed}.p_2{padding:var(--spacing-2)}.bd_3px_dashed{border:3px dashed}.gap_20{gap:20px}.bdr_sm{border-radius:var(--radii-sm)}.bd-w_3{border-width:3px}.bd-c_likec4\\.overlay\\.border{border-color:var(--colors-likec4-overlay-border)}.ring_none{outline:var(--borders-none)}.gap_lg{gap:var(--spacing-lg)}.gap_md{gap:var(--spacing-md)}.gap_sm{gap:var(--spacing-sm)}.flex_1{flex:1 1 0%}.transition_fast{transition:all var(--durations-fast) var(--easings-in-out)}.td_none{text-decoration:none}.bd-c_mantine\\.colors\\.defaultBorder{border-color:var(--colors-mantine-colors-default-border)}.gap_xs{gap:var(--spacing-xs)}.gap_xxs{gap:var(--spacing-xxs)}.gap_1{gap:var(--spacing-1)}.ov_hidden{overflow:hidden}.gap_0\\.5{gap:var(--spacing-0\\.5)}.gap_\\[4px\\]{gap:4px}.px_xs{padding-inline:var(--spacing-xs)}.py_xxs{padding-block:var(--spacing-xxs)}.px_sm{padding-inline:var(--spacing-sm)}.gap_8px{gap:8px}.gap_1\\.5{gap:var(--spacing-1\\.5)}.bdr_\\[4px\\]{border-radius:4px}.px_1\\.5{padding-inline:var(--spacing-1\\.5)}.gap_3{gap:var(--spacing-3)}.mx_calc\\(var\\(--bleed-x\\,_0\\)_\\*_-1\\){margin-inline:calc(var(--bleed-x, 0) * -1)}.my_calc\\(var\\(--bleed-y\\,_0\\)_\\*_-1\\){margin-block:calc(var(--bleed-y, 0) * -1)}.py_2\\.5{padding-block:var(--spacing-2\\.5)}.px_2{padding-inline:var(--spacing-2)}.gap_2{gap:var(--spacing-2)}.offset_2{offset:2px}.offset_10{offset:10px}.py_1\\.5{padding-block:var(--spacing-1\\.5)}.bd-l_2px_dotted{border-left:2px dotted}.px_1{padding-inline:var(--spacing-1)}.py_0\\.5{padding-block:var(--spacing-0\\.5)}.bdr_\\[2px\\]{border-radius:2px}.bd-w_4{border-width:4px}.px_4{padding-inline:var(--spacing-4)}.py_1{padding-block:var(--spacing-1)}.gap_\\[1px\\]{gap:1px}.ov_auto{overflow:auto}.ovs-b_contain{overscroll-behavior:contain}.ov_visible{overflow:visible}.px_xxs{padding-inline:var(--spacing-xxs)}.my_10{margin-block:var(--spacing-10)}.flex_1_1_40\\%{flex:1 1 40%}.bd-c_mantine\\.colors\\.gray\\[4\\]{border-color:var(--colors-mantine-colors-gray\\[4\\])}.bd-c_mantine\\.colors\\.gray\\[5\\]{border-color:var(--colors-mantine-colors-gray\\[5\\])}.bdr_3{border-radius:3px}.bd-c_mantine\\.colors\\.orange\\[6\\]{border-color:var(--colors-mantine-colors-orange\\[6\\])}.tw_pretty{text-wrap:pretty}.flex_0{flex:0}.flex_0_0_40px{flex:0 0 40px}.gap_\\[24px_20px\\]{gap:24px 20px}.bd-c_mantine\\.colors\\.dark\\[3\\]{border-color:var(--colors-mantine-colors-dark\\[3\\])}.bd-t_none{border-top:var(--borders-none)}.bd-l_none{border-left:var(--borders-none)}.bdr_2px{border-radius:2px}.gap_4{gap:var(--spacing-4)}.gap_6{gap:var(--spacing-6)}.gap_\\[12px_16px\\]{gap:12px 16px}.bd-c_mantine\\.colors\\.gray\\[3\\]{border-color:var(--colors-mantine-colors-gray\\[3\\])}.flex_0_1_auto{flex:0 1 auto}.transition_all_150ms_ease{transition:all .15s ease}.bdr_xs{border-radius:var(--radii-xs)}.flex_1_1_100\\%{flex:1 1 100%}.offset_0{offset:0}.py_4{padding-block:var(--spacing-4)}.gap_8{gap:var(--spacing-8)}.px_md{padding-inline:var(--spacing-md)}.py_xs{padding-block:var(--spacing-xs)}.grid-c_1{grid-column:1}.grid-c_2{grid-column:2}.grid-c_3{grid-column:3}.bd-b_1px_solid{border-bottom:1px solid}.gap_0{gap:var(--spacing-0)}.gap_\\[10px_12px\\]{gap:10px 12px}.py_3{padding-block:var(--spacing-3)}.offset_4{offset:4px}.flex_1_0_auto{flex:1 0 auto}.ring_none\\!{outline:var(--borders-none)!important}.bdr_4px{border-radius:4px}.mx_auto{margin-inline:auto}.py_md{padding-block:var(--spacing-md)}.bd-c_mantine\\.colors\\.primary\\[9\\]{border-color:var(--colors-mantine-colors-primary\\[9\\])}.flex_0_0_var\\(--likec4-icon-size\\,_24px\\){flex:0 0 var(--likec4-icon-size, 24px)}.bdr_md{border-radius:var(--radii-md)}.py_xl{padding-block:var(--spacing-xl)}.bd-w_1{border-width:1px}.bd-c_\\[var\\(--_color\\)\\/30\\]{--mix-borderColor: color-mix(in srgb, var(--_color) 30%, transparent);border-color:var(--mix-borderColor, var(--_color))}.transition_all_100ms_ease-in{transition:all .1s ease-in}.transition_all_150ms_ease-in-out{transition:all .15s ease-in-out}.py_sm{padding-block:var(--spacing-sm)}.flex_0_0_auto{flex:0 0 auto}.flex_0_0_70px{flex:0 0 70px}.bd-w_3px{border-width:3px}.border-style_dashed{border-style:dashed}.px_3{padding-inline:var(--spacing-3)}.px_5{padding-inline:var(--spacing-5)}.gap_6px{gap:6px}.px_4px{padding-inline:4px}.cursor_pointer{cursor:pointer}.pos_absolute{position:absolute}.z_999{z-index:999}.c_gray{color:gray}.pos_fixed{position:fixed}.bx-sh_xl{box-shadow:var(--shadows-xl)}.d_flex{display:flex}.ai_flex-start{align-items:flex-start}.flex-d_row{flex-direction:row}.flex-wrap_nowrap{flex-wrap:nowrap}.ai_center{align-items:center}.c_red{color:red}.ai_stretch{align-items:stretch}.flex-d_column{flex-direction:column}.c_teal{color:teal}.op_1{opacity:1}.op_0\\.45{opacity:.45}.us_all{-webkit-user-select:all;user-select:all}.bg-c_transparent{background-color:var(--colors-transparent)}.stk_2\\.5{stroke:2.5px}.op_0\\.7{opacity:.7}.fill_\\[\\#FCFBF7\\]{fill:#fcfbf7}.bx-sh_xs{box-shadow:var(--shadows-xs)}.fs_sm{font-size:var(--font-sizes-sm)}.fw_500{font-weight:500}.c_mantine\\.colors\\.placeholder{color:var(--colors-mantine-colors-placeholder)}.fs_11px{font-size:11px}.fw_600{font-weight:600}.lh_1{line-height:var(--line-heights-1)}.stk_2{stroke:2px}.pointer-events_none{pointer-events:none}.main-axis_4{main-axis:4px}.pos_bottom-start{position:bottom-start}.pos_relative{position:relative}.pointer-events_all{pointer-events:all}.us_none{-webkit-user-select:none;user-select:none}.d_none{display:none}.flex-sh_1{flex-shrink:1}.flex-g_1{flex-grow:1}.flex-g_0{flex-grow:0}.op_0\\.3{opacity:.3}.bg-c_mantine\\.colors\\.gray\\[1\\]{background-color:var(--colors-mantine-colors-gray\\[1\\])}.stk_1\\.5{stroke:1.5px}.bd-e-w_var\\(--thickness\\){border-inline-end-width:var(--thickness)}.c_mantine\\.colors\\.gray\\[5\\]{color:var(--colors-mantine-colors-gray\\[5\\])}.bg-c_likec4\\.panel\\.action\\.warning\\.bg{background-color:var(--colors-likec4-panel-action-warning-bg)}.c_likec4\\.panel\\.action{color:var(--colors-likec4-panel-action)}.trunc_true{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.c_likec4\\.panel\\.text\\.dimmed{color:var(--colors-likec4-panel-text-dimmed)}.bg-c_\\[rgb\\(34_34_34_\\/_var\\(--_opacity\\,_95\\%\\)\\)\\]{background-color:rgb(34 34 34 / var(--_opacity, 95%))}.bkdp_auto{backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, );-webkit-backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, )}.bkdp-blur_var\\(--_blur\\,_10px\\){--backdrop-blur: blur(var(--_blur, 10px))}.jc_stretch{justify-content:stretch}.cq-n_likec4-search-elements{container-name:likec4-search-elements}.cq-t_size{container-type:size}.d_contents{display:contents}.d_grid{display:grid}.order_6{order:6}.stk_1\\.8{stroke:1.8px}.trunc_end{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trs-dur_normal{--transition-duration: var(--durations-normal);transition-duration:var(--durations-normal)}.trs-dly_0\\.2s{transition-delay:.2s}.fill_none{fill:var(--colors-none)}.jc_center{justify-content:center}.z_1{z-index:var(--z-index-1)}.ai_flex-end{align-items:flex-end}.justify-items_stretch{justify-items:stretch}.fs_lg{font-size:var(--font-sizes-lg)}.ai_baseline{align-items:baseline}.flex-wrap_wrap{flex-wrap:wrap}.translate_auto{translate:var(--translate-x) var(--translate-y)}.translate-x_\\[-8px\\]{--translate-x: -8px}.bd-be-w_var\\(--thickness\\){border-block-end-width:var(--thickness)}.cursor_default{cursor:default}.c_orange{color:orange}.pos_top-start{position:top-start}.pos_right{position:right}.op_0\\.65{opacity:.65}.d_inline-flex{display:inline-flex}.op_0\\.5{opacity:.5}.d_block{display:block}.fs_xxs{font-size:var(--font-sizes-xxs)}.lh_sm{line-height:var(--line-heights-sm)}.c_mantine\\.colors\\.dimmed{color:var(--colors-mantine-colors-dimmed)}.white-space_nowrap{white-space:nowrap}.white-space-collapse_preserve-breaks{white-space-collapse:preserve-breaks}.fs_xs{font-size:var(--font-sizes-xs)}.fw_medium{font-weight:var(--font-weights-medium)}.trf_translateY\\(-4px\\){transform:translateY(-4px)}.c_mantine\\.colors\\.gray\\[9\\]{color:var(--colors-mantine-colors-gray\\[9\\])}.bx-sh_lg{box-shadow:var(--shadows-lg)}.pos_right-start{position:right-start}.stk_1\\.7{stroke:1.7px}.c_likec4\\.panel\\.text{color:var(--colors-likec4-panel-text)}.c_green{color:green}.pos_bottom-end{position:bottom-end}.op_0\\.8{opacity:.8}.me_0\\.5{margin-inline-end:var(--spacing-0\\.5)}.cross-axis_-22{cross-axis:-22px}.bg-c_none{background-color:var(--colors-none)}.fw_400{font-weight:400}.bx-sh_md{box-shadow:var(--shadows-md)}.main-axis_2{main-axis:2px}.lh_1\\.1{line-height:1.1}.main-axis_10{main-axis:10px}.op_0\\.6{opacity:.6}.pos_top{position:top}.main-axis_12{main-axis:12px}.ta_center{text-align:center}.bx-sh_inset_1px_1px_3px_0px_\\#00000024{box-shadow:inset 1px 1px 3px #00000024}.trf_translate\\(-50\\%\\,_-50\\%\\){transform:translate(-50%,-50%)}.flex-sh_0{flex-shrink:0}.ms_0{margin-inline-start:var(--spacing-0)}.z_9{z-index:9}.ta_left{text-align:left}.lh_1\\.25{line-height:1.25}.bx-s_border-box{box-sizing:border-box}.c_mantine\\.colors\\.text{color:var(--colors-mantine-colors-text)}.cursor_move{cursor:move}.ff_likec4\\.element{font-family:var(--fonts-likec4-element)}.font-optical-sizing_auto{font-optical-sizing:auto}.font-style_normal{font-style:normal}.fs_24px{font-size:24px}.lh_xs{line-height:var(--line-heights-xs)}.as_flex-start{align-self:flex-start}.c_\\[var\\(--view-title-color\\,_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}\\)\\]{color:var(--view-title-color, var(--colors-mantine-colors-gray\\[7\\]))}.fs_15px{font-size:15px}.lh_1\\.4{line-height:1.4}.c_mantine\\.colors\\.gray\\[7\\]{color:var(--colors-mantine-colors-gray\\[7\\])}.grid-tc_min-content_1fr{grid-template-columns:min-content 1fr}.grid-ar_min-content_max-content{grid-auto-rows:min-content max-content}.justify-self_end{justify-self:end}.ta_right{text-align:right}.cursor_se-resize{cursor:se-resize}.ai_start{align-items:start}.jc_space-between{justify-content:space-between}.stk_1\\.6{stroke:1.6px}.grid-ar_min-content{grid-auto-rows:min-content}.white-space_pre-wrap{white-space:pre-wrap}.tov_unset{text-overflow:unset}.tov_ellipsis{text-overflow:ellipsis}.wb_break-word{word-break:break-word}.wb_normal{word-break:normal}.bg-c_mantine\\.colors\\.white{background-color:var(--colors-mantine-colors-white)}.jc_flex-end{justify-content:flex-end}.c_mantine\\.colors\\.gray\\[6\\]{color:var(--colors-mantine-colors-gray\\[6\\])}.fw_700{font-weight:700}.justify-self_stretch{justify-self:stretch}.as_start{align-self:start}.ps_\\[16px\\]{padding-inline-start:16px}.pe_2\\.5{padding-inline-end:var(--spacing-2\\.5)}.stk_1\\.2{stroke:1.2px}.d_inline-block{display:inline-block}.lh_1\\.2{line-height:1.2}.c_var\\(--likec4-palette-hiContrast\\){color:var(--likec4-palette-hiContrast)}.fs_xl{font-size:var(--font-sizes-xl)}.c_mantine\\.colors\\.defaultColor{color:var(--colors-mantine-colors-default-color)}.bx-sh_none{box-shadow:var(--shadows-none)}.pos_top-right{position:top-right}.pos_top-left{position:top-left}.grid-cs_1{grid-column-start:1}.grid-ce_4{grid-column-end:4}.grid-tc_1fr_30px_1fr{grid-template-columns:1fr 30px 1fr}.justify-items_start{justify-items:start}.c_dark{color:dark}.stk_3\\.5{stroke:3.5px}.cq-n_likec4-tree{container-name:likec4-tree}.cq-t_inline-size{container-type:inline-size}.fs_10px{font-size:10px}.lh_1\\.3{line-height:1.3}.order_2{order:2}.grayscale_0\\.9{--grayscale: grayscale(.9)}.filter_auto{filter:var(--blur, ) var(--brightness, ) var(--contrast, ) var(--grayscale, ) var(--hue-rotate, ) var(--invert, ) var(--saturate, ) var(--sepia, ) var(--drop-shadow, )}.cross-axis_50{cross-axis:50px}.sr_true{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fs_13px{font-size:13px}.fs_16px{font-size:16px}.c_mantine\\.colors\\.dark\\[1\\]{color:var(--colors-mantine-colors-dark\\[1\\])}.fs_12px{font-size:12px}.fs_md{font-size:var(--font-sizes-md)}.bg-c_\\[rgb\\(34_34_34_\\/_0\\.7\\)\\]{background-color:#222222b3}.z_902{z-index:902}.bkdp-blur_10px{--backdrop-blur: blur(10px)}.trf_translateX\\(-50\\%\\){transform:translate(-50%)}.z_903{z-index:903}.stk_likec4\\.compare\\.manual\\.outline{stroke:var(--colors-likec4-compare-manual-outline)}.stk-w_8px{stroke-width:8px}.stk-op_0\\.5{stroke-opacity:.5}.z_9999{z-index:9999}.fill_\\[var\\(--xy-edge-stroke\\)\\]{fill:var(--xy-edge-stroke)}.stk_transparent{stroke:var(--colors-transparent)}.fill-opacity_0\\.5{fill-opacity:.5}.stk-w_10{stroke-width:10}.r_4{r:4px}.cursor_grab{cursor:grab}.vis_hidden{visibility:hidden}.trs-dur_120ms{--transition-duration: .12s;transition-duration:.12s}.trs-prop_visibility\\,_fill\\,_fill-opacity\\,_r{--transition-prop: visibility, fill, fill-opacity, r;transition-property:visibility,fill,fill-opacity,r}.trs-tmf_inOut{--transition-easing: var(--easings-in-out);transition-timing-function:var(--easings-in-out)}.trs-dly_20ms{transition-delay:20ms}.bg-c_var\\(--likec4-palette-fill\\)\\/15{--mix-backgroundColor: color-mix(in srgb, var(--likec4-palette-fill) 15%, transparent);background-color:var(--mix-backgroundColor, var(--likec4-palette-fill))}.fw_bold{font-weight:700}.ls_\\.75px{letter-spacing:.75px}.c_\\[var\\(--_color\\)\\/75\\]{--mix-color: color-mix(in srgb, var(--_color) 75%, transparent);color:var(--mix-color, var(--_color))}.bg-c_var\\(--likec4-palette-fill\\){background-color:var(--likec4-palette-fill)}.translate-x_-1\\/2{--translate-x: -50%}.translate-y_-1\\/2{--translate-y: -50%}.ring-c_likec4\\.compare\\.manual\\.outline{outline-color:var(--colors-likec4-compare-manual-outline)}.ring-w_4px{outline-width:4px}.outline-style_dashed{outline-style:dashed}.ring-o_1\\.5{outline-offset:var(--spacing-1\\.5)}.bg-c_mantine\\.colors\\.body\\/80{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-body) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-body))}.fill_var\\(--likec4-palette-fill\\){fill:var(--likec4-palette-fill)}.stk_var\\(--likec4-palette-stroke\\){stroke:var(--likec4-palette-stroke)}.stk-w_1{stroke-width:1}.filter_drop-shadow\\(0_2px_3px_rgb\\(0_0_0_\\/_22\\%\\)\\)_drop-shadow\\(0_1px_8px_rgb\\(0_0_0_\\/_10\\%\\)\\){filter:drop-shadow(0 2px 3px rgb(0 0 0 / 22%)) drop-shadow(0 1px 8px rgb(0 0 0 / 10%))}.ls_0\\.2px{letter-spacing:.2px}.tt_lowercase{text-transform:lowercase}.op_0\\.25{opacity:.25}.stk-w_5{stroke-width:5}.pos_right-end{position:right-end}.jc_flex-start{justify-content:flex-start}.pos_left-start{position:left-start}.top_4{top:var(--spacing-4)}.right_4{right:var(--spacing-4)}.top_10{top:var(--spacing-10)}.left_10{left:var(--spacing-10)}.w_\\[calc\\(100vw_-_\\(\\{spacing\\.10\\}_\\*_2\\)\\)\\]{width:calc(100vw - (var(--spacing-10) * 2))}.h_max-content{height:max-content}.max-h_\\[calc\\(100vh_-_\\(\\{spacing\\.10\\}_\\*_3\\)\\)\\]{max-height:calc(100vh - (var(--spacing-10) * 3))}.mt_md{margin-top:var(--spacing-md)}.min-h_24{min-height:24px}.max-w_500{max-width:500px}.pr_0{padding-right:var(--spacing-0)}.h_12{height:12px}.w_12{width:12px}.h_30px{height:30px}.pl_sm{padding-left:var(--spacing-sm)}.pr_1{padding-right:var(--spacing-1)}.w_100\\%{width:var(--sizes-100\\%)}.pr_2\\.5{padding-right:var(--spacing-2\\.5)}.top_0{top:var(--spacing-0)}.left_0{left:var(--spacing-0)}.max-w_calc\\(100vw\\){max-width:100vw}.max-w_200px{max-width:200px}.max-w_calc\\(100vw_-_50px\\){max-width:calc(100vw - 50px)}.max-w_calc\\(100vw_-_250px\\){max-width:calc(100vw - 250px)}.max-h_calc\\(100vh_-_200px\\){max-height:calc(100vh - 200px)}.max-h_calc\\(100vh_-_160px\\){max-height:calc(100vh - 160px)}.h_100\\%{height:var(--sizes-100\\%)}.mb_1{margin-bottom:var(--spacing-1)}.max-h_100vh{max-height:100vh}.pt_\\[20px\\]{padding-top:20px}.pl_md{padding-left:var(--spacing-md)}.pr_md{padding-right:var(--spacing-md)}.pb_sm{padding-bottom:var(--spacing-sm)}.pr_xs{padding-right:var(--spacing-xs)}.lc_5{-webkit-line-clamp:5}.lc_5,.lc_2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.lc_2{-webkit-line-clamp:2}.lc_3{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.top_0\\.5{top:var(--spacing-0\\.5)}.right_0\\.5{right:var(--spacing-0\\.5)}.w_full{width:var(--sizes-full)}.h_full{height:var(--sizes-full)}.bottom_0{bottom:var(--spacing-0)}.max-w_50{max-width:50px}.h_5{height:5px}.w_max-content{width:max-content}.pt_2{padding-top:var(--spacing-2)}.mt_2{margin-top:var(--spacing-2)}.mt_0{margin-top:var(--spacing-0)}.w_350{width:350px}.pl_2\\.5{padding-left:var(--spacing-2\\.5)}.bd-l-c_mantine\\.colors\\.gray\\[3\\]{border-left-color:var(--colors-mantine-colors-gray\\[3\\])}.bdr-bl_sm{border-bottom-left-radius:var(--radii-sm)}.bdr-br_sm{border-bottom-right-radius:var(--radii-sm)}.pl_3{padding-left:var(--spacing-3)}.w_\\[20px\\]{width:20px}.mt_1{margin-top:var(--spacing-1)}.mb_xxs{margin-bottom:var(--spacing-xxs)}.pb_lg{padding-bottom:var(--spacing-lg)}.max-w_calc\\(100cqw_-_52px\\){max-width:calc(100cqw - 52px)}.min-w_200px{min-width:200px}.max-h_calc\\(100cqh_-_100px\\){max-height:calc(100cqh - 100px)}.mt_4{margin-top:var(--spacing-4)}.mt_xs{margin-top:var(--spacing-xs)}.h_auto{height:auto}.pt_6{padding-top:var(--spacing-6)}.mb_10{margin-bottom:var(--spacing-10)}.pt_100\\%{padding-top:100%}.left_2{left:var(--spacing-2)}.bottom_2{bottom:var(--spacing-2)}.top_md{top:var(--spacing-md)}.left_md{left:var(--spacing-md)}.w_8{width:8px}.h_8{height:8px}.mr_sm{margin-right:var(--spacing-sm)}.h_26{height:26px}.top_\\[1px\\]{top:1px}.right_\\[1px\\]{right:1px}.pt_xxs{padding-top:var(--spacing-xxs)}.max-w_calc\\(100cqw_-_32px\\){max-width:calc(100cqw - 32px)}.min-w_calc\\(100cqw_-_50px\\){min-width:calc(100cqw - 50px)}.w_100vw{width:100vw}.h_100vh{height:100vh}.max-w_100vw{max-width:100vw}.h_40px{height:40px}.w_40px{width:40px}.w_14px{width:14px}.h_14px{height:14px}.bottom_0\\.5{bottom:var(--spacing-0\\.5)}.mb_sm{margin-bottom:var(--spacing-sm)}.lc_1{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.mt_6{margin-top:var(--spacing-6)}.pt_xs{padding-top:var(--spacing-xs)}.w_300{width:300px}.min-w_0{min-width:0}.min-h_32px{min-height:32px}.max-w_min\\(200px\\,_100\\%\\){max-width:min(200px,100%)}.min-w_60px{min-width:60px}.mb_0{margin-bottom:var(--spacing-0)}.h_36px{height:36px}.min-w_24{min-width:24px}.mb_4{margin-bottom:var(--spacing-4)}.top_12{top:12px}.right_12{right:12px}.mt_sm{margin-top:var(--spacing-sm)}.ml_sm{margin-left:var(--spacing-sm)}.pl_1{padding-left:var(--spacing-1)}.bd-b-c_mantine\\.colors\\.defaultBorder{border-bottom-color:var(--colors-mantine-colors-default-border)}.max-h_70vh{max-height:70vh}.mb_2{margin-bottom:var(--spacing-2)}.max-w_8xl{max-width:8xl}.pl_\\[48px\\]{padding-left:48px}.mr_1{margin-right:var(--spacing-1)}.min-h_60px{min-height:60px}.h_var\\(--likec4-icon-size\\,_24px\\){height:var(--likec4-icon-size, 24px)}.w_var\\(--likec4-icon-size\\,_24px\\){width:var(--likec4-icon-size, 24px)}.top_\\[2rem\\]{top:2rem}.left_\\[50\\%\\]{left:50%}.max-w_600px{max-width:600px}.pl_2{padding-left:var(--spacing-2)}.pt_0\\.5{padding-top:var(--spacing-0\\.5)}.w_5px{width:5px}.top_1{top:var(--spacing-1)}.right_0{right:var(--spacing-0)}.w_min-content{width:min-content}.h_min-content{height:min-content}.min-w_200{min-width:200px}.max-w_calc\\(100vw_-_20px\\){max-width:calc(100vw - 20px)}.pt_0{padding-top:var(--spacing-0)}.pb_0{padding-bottom:var(--spacing-0)}.ml_2{margin-left:var(--spacing-2)}.h_xs{height:xs}.pb_8{padding-bottom:var(--spacing-8)}.pt_4{padding-top:var(--spacing-4)}.max-w_220px{max-width:220px}.\\[\\&_\\.action-icon\\]\\:--ai-size_2rem .action-icon{--ai-size: 2rem}[data-mantine-color-scheme=light] .light\\:--icon-color_\\{colors\\.mantine\\.colors\\.gray\\[6\\]\\}{--icon-color: var(--colors-mantine-colors-gray\\[6\\])}[data-mantine-color-scheme=light] .light\\:--view-title-color_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}{--view-title-color: var(--colors-mantine-colors-gray\\[7\\])}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:--ti-size_22px .mantine-ThemeIcon-root{--ti-size: 22px}[data-mantine-color-scheme=dark] .dark\\:--_color_\\[color-mix\\(in_oklab\\,_var\\(--likec4-palette-hiContrast\\)_40\\%\\,_var\\(--likec4-palette-fill\\)\\)\\]{--_color: color-mix(in oklab, var(--likec4-palette-hiContrast) 40%, var(--likec4-palette-fill))}.likec4-root:not([data-likec4-reduced-graphics]) .noReduceGraphics\\:--ai-radius_\\{radii\\.md\\}{--ai-radius: var(--radii-md)}.backdrop\\:bg_\\[color-mix\\(in_oklab\\,_\\{colors\\.likec4\\.overlay\\.backdrop\\}_60\\%\\,_transparent\\)\\]::backdrop{background:color-mix(in oklab,var(--colors-likec4-overlay-backdrop) 60%,transparent)}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.white{background:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[6\\]{background:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=light] .light\\:bg_var\\(--likec4-palette-fill\\)\\/90{--mix-background: color-mix(in srgb, var(--likec4-palette-fill) 90%, transparent);background:var(--mix-background, var(--likec4-palette-fill))}[data-mantine-color-scheme=dark] .dark\\:bg_var\\(--likec4-palette-fill\\)\\/60{--mix-background: color-mix(in srgb, var(--likec4-palette-fill) 60%, transparent);background:var(--mix-background, var(--likec4-palette-fill))}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[5\\]{background:var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[7\\]{background:var(--colors-mantine-colors-dark\\[7\\])}.\\[\\&\\[data-active\\]\\]\\:bg_mantine\\.colors\\.white[data-active]{background:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.gray\\[1\\]{background:var(--colors-mantine-colors-gray\\[1\\])}.\\[\\&\\[data-missing\\]\\]\\:bg_mantine\\.colors\\.orange\\[8\\]\\/15[data-missing]{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-orange\\[8\\]) 15%, transparent);background:var(--mix-background, var(--colors-mantine-colors-orange\\[8\\]))}.\\[\\&\\[data-missing\\]\\]\\:bg_mantine\\.colors\\.orange\\[8\\]\\/20[data-missing]{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-orange\\[8\\]) 20%, transparent);background:var(--mix-background, var(--colors-mantine-colors-orange\\[8\\]))}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.gray\\[3\\]\\/20{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[3\\]) 20%, transparent);background:var(--mix-background, var(--colors-mantine-colors-gray\\[3\\]))}[data-mantine-color-scheme=dark] .dark\\:bg_mantine\\.colors\\.dark\\[6\\]\\/80{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[6\\]) 80%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[6\\]))}[data-mantine-color-scheme=light] .light\\:bg_mantine\\.colors\\.white\\/80{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-white) 80%, transparent);background:var(--mix-background, var(--colors-mantine-colors-white))}[data-mantine-color-scheme=light] .light\\:bd-c_mantine\\.colors\\.gray\\[4\\]{border-color:var(--colors-mantine-colors-gray\\[4\\])}[data-mantine-color-scheme=dark] .dark\\:bd-c_mantine\\.colors\\.dark\\[4\\]{border-color:var(--colors-mantine-colors-dark\\[4\\])}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:transition_none\\!{transition:none!important}[data-mantine-color-scheme=light] .light\\:bd-c_mantine\\.colors\\.gray\\[2\\]{border-color:var(--colors-mantine-colors-gray\\[2\\])}[data-mantine-color-scheme=dark] .dark\\:bd-c_mantine\\.colors\\.dark\\[7\\]{border-color:var(--colors-mantine-colors-dark\\[7\\])}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:bdr_4{border-radius:4px}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:transition_fast .mantine-ThemeIcon-root{transition:all var(--durations-fast) var(--easings-in-out)}.\\[\\&_\\>_\\*\\]\\:transition_all_130ms_\\{easings\\.inOut\\}>*{transition:all .13s var(--easings-in-out)}.\\[\\&\\[data-active\\]\\]\\:transition_none[data-active]{transition:none}.\\[\\&_\\>_\\*\\]\\:transition_fast>*,.\\[\\&_\\.tabler-icon\\]\\:transition_fast .tabler-icon{transition:all var(--durations-fast) var(--easings-in-out)}.\\[\\&\\[data-missing\\]\\]\\:bd-c_mantine\\.colors\\.orange\\[5\\]\\/20[data-missing]{--mix-borderColor: color-mix(in srgb, var(--colors-mantine-colors-orange\\[5\\]) 20%, transparent);border-color:var(--mix-borderColor, var(--colors-mantine-colors-orange\\[5\\]))}[data-mantine-color-scheme=light] .light\\:bd-c_mantine\\.colors\\.gray\\[3\\]{border-color:var(--colors-mantine-colors-gray\\[3\\])}.\\[\\&\\:last-child_\\.likec4-edge-label\\]\\:bd-b_none:last-child .likec4-edge-label{border-bottom:var(--borders-none)}.\\[\\&_\\>_\\*\\]\\:transition_all_0\\.15s_ease-in>*{transition:all .15s ease-in}[data-mantine-color-scheme=dark] .dark\\:bd-c_transparent{border-color:var(--colors-transparent)}.\\[\\&_\\:where\\(\\.likec4-diagram\\,_\\.likec4-compound-node\\,_\\.likec4-element-node\\)\\]\\:cursor_pointer :where(.likec4-diagram,.likec4-compound-node,.likec4-element-node){cursor:pointer}.backdrop\\:cursor_zoom-out::backdrop{cursor:zoom-out}.backdrop\\:bkdp_blur\\(18px\\)::backdrop{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:c_mantine\\.colors\\.dimmed:is([data-position=left]){color:var(--colors-mantine-colors-dimmed)}.\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:us_none:is([data-position=left]){-webkit-user-select:none;user-select:none}.\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:pointer-events_none:is([data-position=left]){pointer-events:none}[data-mantine-color-scheme=light] .light\\:fill_\\[\\#222221\\]{fill:#222221}.\\[\\&_\\.tabler-icon\\]\\:c_mantine\\.colors\\.text .tabler-icon{color:var(--colors-mantine-colors-text)}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:bx-sh_none\\!{box-shadow:var(--shadows-none)!important}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[7\\]{color:var(--colors-mantine-colors-gray\\[7\\])}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[0\\]{color:var(--colors-mantine-colors-dark\\[0\\])}[data-mantine-color-scheme=light] .light\\:bg-c_mantine\\.colors\\.gray\\[2\\]\\/70{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-gray\\[2\\]) 70%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-gray\\[2\\]))}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[8\\]\\/70{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[8\\]) 70%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[8\\]))}.empty\\:d_none:is(:empty,[data-empty]){display:none}.\\[\\&_\\>_mark\\]\\:bg-c_mantine\\.colors\\.yellow\\[2\\]\\/90>mark{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-yellow\\[2\\]) 90%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-yellow\\[2\\]))}[data-mantine-color-scheme=dark] .dark\\:op_0\\.5{opacity:.5}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[5\\]\\/80{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[5\\]))}.placeholder\\:c_mantine\\.colors\\.dimmed::placeholder,.placeholder\\:c_mantine\\.colors\\.dimmed[data-placeholder]{color:var(--colors-mantine-colors-dimmed)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[3\\]{color:var(--colors-mantine-colors-dark\\[3\\])}[data-mantine-color-scheme=light] .light\\:bg-c_\\[rgb\\(250_250_250_\\/_var\\(--_opacity\\,_95\\%\\)\\)\\]{background-color:rgb(250 250 250 / var(--_opacity, 95%))}:where([data-likec4-zoom-small=true]) .smallZoom\\:d_none{display:none}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:pointer-events_all{pointer-events:all}:where(.react-flow__node.selectable:not(.dragging)) .\\[\\:where\\(\\.react-flow__node\\.selectable\\:not\\(\\.dragging\\)\\)_\\&\\]\\:cursor_pointer{cursor:pointer}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:trs-dly_\\.08s{transition-delay:.08s}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:pointer-events_none{pointer-events:none}[data-mantine-color-scheme=light] .light\\:c_var\\(--likec4-palette-hiContrast\\){color:var(--likec4-palette-hiContrast)}[data-mantine-color-scheme=dark] .dark\\:c_var\\(--likec4-palette-loContrast\\){color:var(--likec4-palette-loContrast)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.gray\\[4\\]{color:var(--colors-mantine-colors-gray\\[4\\])}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[8\\]{color:var(--colors-mantine-colors-gray\\[8\\])}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[9\\]{color:var(--colors-mantine-colors-gray\\[9\\])}.\\[\\&\\:is\\(\\[data-position\\=\\"right\\"\\]\\)\\]\\:ms_1:is([data-position=right]){margin-inline-start:var(--spacing-1)}.\\[\\&_\\:where\\(button\\,_\\.action-icon\\,_\\[role\\=\\'dialog\\'\\]\\)\\]\\:pointer-events_all :where(button,.action-icon,[role=dialog]){pointer-events:all}.likec4-root:is([data-likec4-diagram-panning=true]) .whenPanning\\:bx-sh_none{box-shadow:var(--shadows-none)}.backdrop\\:bkdp_auto::backdrop{backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, );-webkit-backdrop-filter:var(--backdrop-blur, ) var(--backdrop-brightness, ) var(--backdrop-contrast, ) var(--backdrop-grayscale, ) var(--backdrop-hue-rotate, ) var(--backdrop-invert, ) var(--backdrop-opacity, ) var(--backdrop-saturate, ) var(--backdrop-sepia, )}.backdrop\\:bkdp-blur_var\\(--_blur\\)::backdrop{--backdrop-blur: blur(var(--_blur))}.backdrop\\:bg-c_\\[rgb\\(36_36_36_\\/_var\\(--_opacity\\,_5\\%\\)\\)\\]::backdrop{background-color:rgb(36 36 36 / var(--_opacity, 5%))}.\\[\\&_\\.react-flow__attribution\\]\\:d_none .react-flow__attribution{display:none}[data-mantine-color-scheme=dark] .dark\\:mix-bm_hard-light{mix-blend-mode:hard-light}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:pointer-events_none :where(svg,img){pointer-events:none}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:filter_drop-shadow\\(0_0_3px_rgb\\(0_0_0_\\/_10\\%\\)\\)_drop-shadow\\(0_1px_8px_rgb\\(0_0_0_\\/_5\\%\\)\\)_drop-shadow\\(1px_1px_16px_rgb\\(0_0_0_\\/_2\\%\\)\\) :where(svg,img){filter:drop-shadow(0 0 3px rgb(0 0 0 / 10%)) drop-shadow(0 1px 8px rgb(0 0 0 / 5%)) drop-shadow(1px 1px 16px rgb(0 0 0 / 2%))}.\\[\\&_img\\]\\:obj-f_contain img{object-fit:contain}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:c_\\[var\\(--icon-color\\,_\\{colors\\.mantine\\.colors\\.dark\\[2\\]\\}\\)\\] .mantine-ThemeIcon-root{color:var(--icon-color, var(--colors-mantine-colors-dark\\[2\\]))}.\\[\\&\\[data-active\\]\\]\\:bx-sh_xs[data-active]{box-shadow:var(--shadows-xs)}.\\[\\&\\[data-active\\]\\]\\:c_mantine\\.colors\\.defaultColor[data-active]{color:var(--colors-mantine-colors-default-color)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[1\\]{color:var(--colors-mantine-colors-dark\\[1\\])}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[9\\]{background-color:var(--colors-mantine-colors-dark\\[9\\])}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.text{color:var(--colors-mantine-colors-text)}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.dark\\[2\\]{color:var(--colors-mantine-colors-dark\\[2\\])}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[6\\]{background-color:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=dark] .dark\\:c_mantine\\.colors\\.gray\\.lightColor{color:var(--colors-mantine-colors-gray-light-color)}.\\[\\&_\\.tabler-icon\\]\\:op_0\\.65 .tabler-icon{opacity:.65}.\\[\\&\\[data-missing\\]\\]\\:c_mantine\\.colors\\.orange\\[4\\][data-missing]{color:var(--colors-mantine-colors-orange\\[4\\])}.before\\:content_\\"scope\\:\\":before{content:"scope:"}.before\\:pos_absolute:before{position:absolute}.before\\:fs_xxs:before{font-size:var(--font-sizes-xxs)}.before\\:fw_500:before{font-weight:500}.before\\:lh_1:before{line-height:var(--line-heights-1)}.before\\:c_mantine\\.colors\\.dimmed:before{color:var(--colors-mantine-colors-dimmed)}.before\\:op_0\\.85:before{opacity:.85}.before\\:trf_translateY\\(-100\\%\\)_translateY\\(-2px\\):before{transform:translateY(-100%) translateY(-2px)}.\\[\\&\\[data-zero\\]\\]\\:c_mantine\\.colors\\.dimmed[data-zero]{color:var(--colors-mantine-colors-dimmed)}.\\[\\&_\\.mantine-Text-root\\]\\:c_mantine\\.colors\\.text\\/90 .mantine-Text-root{--mix-color: color-mix(in srgb, var(--colors-mantine-colors-text) 90%, transparent);color:var(--mix-color, var(--colors-mantine-colors-text))}.\\[\\&_\\.mantine-Text-root\\]\\:fs_xs .mantine-Text-root{font-size:var(--font-sizes-xs)}.\\[\\&_\\.mantine-Text-root\\]\\:fw_500 .mantine-Text-root{font-weight:500}.\\[\\&_\\.mantine-Text-root\\]\\:lh_1\\.2 .mantine-Text-root{line-height:1.2}.\\[\\&_\\.mantine-Text-root\\]\\:fs_xxs .mantine-Text-root{font-size:var(--font-sizes-xxs)}.\\[\\&_\\.mantine-Text-root\\]\\:fw_400 .mantine-Text-root{font-weight:400}.\\[\\&_\\.mantine-Text-root\\]\\:lh_xs .mantine-Text-root{line-height:var(--line-heights-xs)}.\\[\\&_\\.mantine-Text-root\\]\\:c_mantine\\.colors\\.dimmed .mantine-Text-root{color:var(--colors-mantine-colors-dimmed)}.\\[\\&\\[data-disabled\\]_\\.mantine-ThemeIcon-root\\]\\:op_0\\.45[data-disabled] .mantine-ThemeIcon-root{opacity:.45}:where(.likec4-view-btn[data-disabled]) .\\[\\:where\\(\\.likec4-view-btn\\[data-disabled\\]\\)_\\&\\]\\:op_0\\.85{opacity:.85}[data-mantine-color-scheme=light] .light\\:c_mantine\\.colors\\.gray\\[5\\]{color:var(--colors-mantine-colors-gray\\[5\\])}.\\[\\&_svg\\,_\\&_img\\]\\:pointer-events_none svg,.\\[\\&_svg\\,_\\&_img\\]\\:pointer-events_none img{pointer-events:none}.\\[\\&\\.likec4-shape-icon_svg\\]\\:stk-w_1\\.5.likec4-shape-icon svg{stroke-width:1.5}:where([data-disabled]) .\\[\\:where\\(\\[data-disabled\\]\\)_\\&\\]\\:op_0\\.4{opacity:.4}:where([data-disabled]) .\\[\\:where\\(\\[data-disabled\\]\\)_\\&\\]\\:op_0\\.85{opacity:.85}[data-mantine-color-scheme=light] .light\\:bg-c_\\[rgb\\(255_255_255_\\/_0\\.6\\)\\]{background-color:#fff9}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:stk-w_12px{stroke-width:12px}.\\[\\&_\\.react-flow__edge-interaction\\]\\:cursor_copy .react-flow__edge-interaction{cursor:copy}[data-mantine-color-scheme=dark] .dark\\:mix-bm_screen{mix-blend-mode:screen}[data-mantine-color-scheme=light] .light\\:mix-bm_multiply{mix-blend-mode:multiply}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:vis_visible{visibility:visible}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:fill-opacity_1{fill-opacity:1}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:trs-tmf_out{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}:where([data-likec4-selected=true],[data-likec4-hovered=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\,_\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:trs-dly_0ms{transition-delay:0ms}:where([data-likec4-selected=true]) .\\[\\:where\\(\\[data-likec4-selected\\=\\'true\\'\\]\\)_\\&\\]\\:r_6{r:6px}:is([data-likec4-hovered=true]) .\\[\\:is\\(\\[data-likec4-hovered\\=\\'true\\'\\]\\)_\\&\\]\\:r_8{r:8px}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:ring-c_likec4\\.compare\\.manual\\.outline+.likec4-element-shape{outline-color:var(--colors-likec4-compare-manual-outline)}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:ring-w_4px+.likec4-element-shape{outline-width:4px}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:outline-style_dashed+.likec4-element-shape{outline-style:dashed}.\\[\\&_\\+_\\.likec4-element-shape\\]\\:ring-o_1\\.5+.likec4-element-shape{outline-offset:var(--spacing-1\\.5)}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[6\\]\\/80{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[6\\]) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[6\\]))}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:min-h_100\\% .mantine-ScrollArea-viewport{min-height:var(--sizes-100\\%)}:where([data-likec4-shape=browser]) .shapeBrowser\\:right_\\[5px\\]{right:5px}:where([data-likec4-shape=cylinder]) .shapeCylinder\\:top_\\[14px\\]{top:14px}:where([data-likec4-shape=storage]) .shapeStorage\\:top_\\[14px\\]{top:14px}:where([data-likec4-shape=queue]) .shapeQueue\\:top_\\[1px\\]{top:1px}:where([data-likec4-shape=queue]) .shapeQueue\\:right_3{right:var(--spacing-3)}:where([data-likec4-shape=cylinder]) .shapeCylinder\\:bottom_\\[5px\\]{bottom:5px}:where([data-likec4-shape=storage]) .shapeStorage\\:bottom_\\[5px\\]{bottom:5px}:where([data-likec4-shape=queue]) .shapeQueue\\:bottom_0{bottom:var(--spacing-0)}:where([data-likec4-shape=queue]) .shapeQueue\\:pl_\\[14px\\]{padding-left:14px}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:h_12{height:12px}[data-mantine-color-scheme=dark] .dark\\:bd-l-c_mantine\\.colors\\.dark\\[4\\]{border-left-color:var(--colors-mantine-colors-dark\\[4\\])}.\\[\\&_\\>_svg\\]\\:w_70\\%>svg{width:70%}.\\[\\&_\\>_svg\\]\\:h_70\\%>svg{height:70%}.\\[\\&_\\.tabler-icon\\]\\:w_65\\% .tabler-icon{width:65%}.\\[\\&_\\.tabler-icon\\]\\:h_65\\% .tabler-icon{height:65%}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:w_100\\% :where(svg,img){width:var(--sizes-100\\%)}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:h_auto :where(svg,img){height:auto}.\\[\\&_\\:where\\(svg\\,_img\\)\\]\\:max-h_100\\% :where(svg,img){max-height:var(--sizes-100\\%)}.\\[\\&\\:not\\(\\:has\\(\\.mantine-ScrollArea-root\\)\\)\\]\\:pl_1:not(:has(.mantine-ScrollArea-root)){padding-left:var(--spacing-1)}.\\[\\&\\:not\\(\\:has\\(\\.mantine-ScrollArea-root\\)\\)\\]\\:pr_1:not(:has(.mantine-ScrollArea-root)){padding-right:var(--spacing-1)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:w_100\\% .mantine-ScrollArea-root{width:var(--sizes-100\\%)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:h_100\\% .mantine-ScrollArea-root{height:var(--sizes-100\\%)}.\\[\\&\\[data-level\\=\\'1\\'\\]\\]\\:mb_sm[data-level="1"]{margin-bottom:var(--spacing-sm)}.\\[\\&_\\.tabler-icon\\]\\:w_90\\% .tabler-icon{width:90%}.before\\:top_0:before{top:var(--spacing-0)}.before\\:left_2:before{left:var(--spacing-2)}.\\[\\&\\:last-child_\\.likec4-edge-label\\]\\:mb_0:last-child .likec4-edge-label{margin-bottom:var(--spacing-0)}.\\[\\&_svg\\,_\\&_img\\]\\:w_100\\% svg,.\\[\\&_svg\\,_\\&_img\\]\\:w_100\\% img{width:var(--sizes-100\\%)}.\\[\\&_svg\\,_\\&_img\\]\\:h_auto svg,.\\[\\&_svg\\,_\\&_img\\]\\:h_auto img{height:auto}.\\[\\&_svg\\,_\\&_img\\]\\:max-h_100\\% svg,.\\[\\&_svg\\,_\\&_img\\]\\:max-h_100\\% img{max-height:var(--sizes-100\\%)}:is(.\\[\\&_\\+_\\&\\]\\:mt_\\[32px\\])+:is(.\\[\\&_\\+_\\&\\]\\:mt_\\[32px\\]){margin-top:32px}:where(.react-flow__node:has([data-likec4-hovered=true]),.react-flow__edge:has([data-likec4-hovered=true]),.likec4-edge-container[data-likec4-hovered=true]) .whenHovered\\:w_7px{width:7px}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selected) .whenSelected\\:w_7px{width:7px}.focusWithin\\:bg_mantine\\.colors\\.gray\\[4\\]\\/55\\!:focus-within{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[4\\]) 55%, transparent) !important;background:var(--mix-background, var(--colors-mantine-colors-gray\\[4\\]))!important}.group:focus-within .groupFocusWithin\\:op_1{opacity:1}.group:focus-within .groupFocusWithin\\:grayscale_0{--grayscale: grayscale(0)}.focus\\:bg_mantine\\.colors\\.primary\\[8\\]:is(:focus,[data-focus]){background:var(--colors-mantine-colors-primary\\[8\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:bg_mantine\\.colors\\.primary\\[8\\]{background:var(--colors-mantine-colors-primary\\[8\\])}.group:is(:focus,[data-focus]) .groupFocus\\:transition_none{transition:none}.focus\\:ring_none:is(:focus,[data-focus]){outline:var(--borders-none)}.focusVisible\\:ring_none:is(:focus-visible,[data-focus-visible]){outline:var(--borders-none)}.focus\\:bd-c_mantine\\.colors\\.primary\\[9\\]:is(:focus,[data-focus]){border-color:var(--colors-mantine-colors-primary\\[9\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:ring_none{outline:var(--borders-none)}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:bd-c_mantine\\.colors\\.primary\\[9\\]{border-color:var(--colors-mantine-colors-primary\\[9\\])}.group:is(:focus,[data-focus]) .groupFocus\\:c_\\[inherit\\]\\!{color:inherit!important}.group:is(:focus,[data-focus]) .groupFocus\\:op_0\\.5{opacity:.5}.group:is(:focus,[data-focus]) .groupFocus\\:op_0\\.8{opacity:.8}.focus\\:bg-c_mantine\\.colors\\.gray\\[2\\]:is(:focus,[data-focus]){background-color:var(--colors-mantine-colors-gray\\[2\\])}.focus\\:c_mantine\\.colors\\.primary\\.lightColor\\!:is(:focus,[data-focus]){color:var(--colors-mantine-colors-primary-light-color)!important}.focus\\:bg-c_mantine\\.colors\\.primary\\.lightHover\\!:is(:focus,[data-focus]){background-color:var(--colors-mantine-colors-primary-light-hover)!important}.group:is(:focus,[data-focus]) .groupFocus\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}.group:is(:focus,[data-focus]) .groupFocus\\:c_mantine\\.colors\\.primary\\[1\\]{color:var(--colors-mantine-colors-primary\\[1\\])}.mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:c_mantine\\.colors\\.primary\\[1\\]{color:var(--colors-mantine-colors-primary\\[1\\])}.hover\\:--icon-color_\\{colors\\.mantine\\.colors\\.dark\\[1\\]\\}:is(:hover,[data-hover]){--icon-color: var(--colors-mantine-colors-dark\\[1\\])}.hover\\:--view-title-color_\\{colors\\.mantine\\.colors\\.defaultColor\\}:is(:hover,[data-hover]){--view-title-color: var(--colors-mantine-colors-default-color)}.hover\\:bg_mantine\\.colors\\.defaultHover:is(:hover,[data-hover]){background:var(--colors-mantine-colors-default-hover)}.hover\\:bg_mantine\\.colors\\.gray\\[3\\]:is(:hover,[data-hover]){background:var(--colors-mantine-colors-gray\\[3\\])}.hover\\:bg_mantine\\.colors\\.gray\\.lightHover:is(:hover,[data-hover]){background:var(--colors-mantine-colors-gray-light-hover)}.hover\\:bg_mantine\\.colors\\.primary\\[8\\]\\/60:is(:hover,[data-hover]){--mix-background: color-mix(in srgb, var(--colors-mantine-colors-primary\\[8\\]) 60%, transparent);background:var(--mix-background, var(--colors-mantine-colors-primary\\[8\\]))}.group:is(:hover,[data-hover]) .groupHover\\:bg_mantine\\.colors\\.gray\\[3\\]\\/35{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-gray\\[3\\]) 35%, transparent);background:var(--mix-background, var(--colors-mantine-colors-gray\\[3\\]))}.hover\\:td_underline:is(:hover,[data-hover]){text-decoration:underline}.hover\\:bd-c_mantine\\.colors\\.defaultBorder:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-default-border)}.hover\\:bd-w_4px:is(:hover,[data-hover]){border-width:4px}.hover\\:bd-c_mantine\\.colors\\.dark\\[1\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-dark\\[1\\])}.hover\\:border-style_solid:is(:hover,[data-hover]){border-style:solid}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:transition_all_0\\.15s_ease-out:is(:hover,[data-selected=true])>*{transition:all .15s ease-out}.hover\\:ring_none:is(:hover,[data-hover]){outline:var(--borders-none)}.hover\\:bd-c_mantine\\.colors\\.primary\\[9\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-primary\\[9\\])}.hover\\:transition_all_120ms_ease-out:is(:hover,[data-hover]){transition:all .12s ease-out}.hover\\:op_1:is(:hover,[data-hover]){opacity:1}.hover\\:bg-c_mantine\\.colors\\.gray\\[1\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-gray\\[1\\])}.hover\\:bx-sh_sm:is(:hover,[data-hover]){box-shadow:var(--shadows-sm)}.group:is(:hover,[data-hover]) .groupHover\\:c_mantine\\.colors\\.dimmed{color:var(--colors-mantine-colors-dimmed)}.group:is(:hover,[data-hover]) .groupHover\\:op_0\\.5{opacity:.5}.group:is(:hover,[data-hover]) .groupHover\\:op_0\\.8{opacity:.8}.hover\\:bg-c_mantine\\.colors\\.gray\\[2\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-gray\\[2\\])}.hover\\:bg-c_likec4\\.panel\\.action\\.warning\\.bg\\.hover:is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-warning-bg-hover)}.hover\\:c_likec4\\.panel\\.action\\.hover:is(:hover,[data-hover]){color:var(--colors-likec4-panel-action-hover)}.hover\\:c_likec4\\.panel\\.action:is(:hover,[data-hover]){color:var(--colors-likec4-panel-action)}.hover\\:trs-dly_0s:is(:hover,[data-hover]){transition-delay:0s}.hover\\:bg-c_likec4\\.panel\\.action\\.bg\\.hover:is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.\\[\\&\\:hover_\\>_\\*\\]\\:trs-tmf_out:hover>*{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.\\[\\&\\:hover_\\>_\\*\\]\\:trf_translateX\\(1\\.6px\\):hover>*{transform:translate(1.6px)}.hover\\:trs-tmf_out:is(:hover,[data-hover]){--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.hover\\:c_mantine\\.colors\\.defaultColor:is(:hover,[data-hover]){color:var(--colors-mantine-colors-default-color)}.hover\\:c_mantine\\.colors\\.primary\\[6\\]:is(:hover,[data-hover]){color:var(--colors-mantine-colors-primary\\[6\\])}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:cursor_pointer:is(:hover,[data-selected=true])>*{cursor:pointer}.\\[\\&\\:is\\(\\:hover\\,_\\[data-selected\\=true\\]\\)_\\>_\\*\\]\\:bg-c_mantine\\.colors\\.defaultHover:is(:hover,[data-selected=true])>*{background-color:var(--colors-mantine-colors-default-hover)}.hover\\:bg-c_mantine\\.colors\\.gray\\[0\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-gray\\[0\\])}.group:is(:hover,[data-hover]) .groupHover\\:op_1{opacity:1}.group:is(:hover,[data-hover]) .groupHover\\:grayscale_0{--grayscale: grayscale(0)}.group:is(:hover,[data-hover]) .groupHover\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}.group:is(:hover,[data-hover]) .groupHover\\:c_mantine\\.colors\\.primary\\[1\\]{color:var(--colors-mantine-colors-primary\\[1\\])}.hover\\:fill_mantine\\.colors\\.primary\\.filledHover:is(:hover,[data-hover]){fill:var(--colors-mantine-colors-primary-filled-hover)}.hover\\:r_10:is(:hover,[data-hover]){r:10px}.hover\\:trs-dur_100ms:is(:hover,[data-hover]){--transition-duration: .1s;transition-duration:.1s}.hover\\:bg-c_mantine\\.colors\\.primary\\[2\\]\\/50:is(:hover,[data-hover]){--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-primary\\[2\\]) 50%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-primary\\[2\\]))}.group:is(:active,[data-active]) .groupActive\\:op_0\\.5{opacity:.5}.group:is(:active,[data-active]) .groupActive\\:op_0\\.8{opacity:.8}.active\\:trf_translateY\\(-3px\\):is(:active,[data-active]){transform:translateY(-3px)}.group:is(:active,[data-active]) .groupActive\\:cursor_grabbing{cursor:grabbing}.likec4-root:is([data-likec4-reduced-graphics]) .reduceGraphics\\:\\[\\&_\\.action-icon\\]\\:--ai-radius_0px .action-icon{--ai-radius: 0px}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:bg_transparent:before{background:var(--colors-transparent)}[data-mantine-color-scheme=dark] .dark\\:\\[\\&\\:is\\(\\[data-active\\]\\)\\]\\:bg_mantine\\.colors\\.dark\\[5\\]:is([data-active]){background:var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=light] .light\\:\\[\\&_\\.mantine-SegmentedControl-root\\]\\:bg_mantine\\.colors\\.gray\\[3\\] .mantine-SegmentedControl-root{background:var(--colors-mantine-colors-gray\\[3\\])}.group:is(:hover,[data-hover]) .\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:groupHover\\:c_\\[var\\(--badge-color\\)\\]:is([data-position=left]){color:var(--badge-color)}.group:is(:hover,[data-hover]) .\\[\\&\\:is\\(\\[data-position\\=\\"left\\"\\]\\)\\]\\:groupHover\\:op_0\\.7:is([data-position=left]){opacity:.7}[data-mantine-color-scheme=dark] .\\[\\&_\\>_mark\\]\\:dark\\:bg-c_mantine\\.colors\\.yellow\\[5\\]\\/80>mark{--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-yellow\\[5\\]) 80%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-yellow\\[5\\]))}.group:is(:focus,[data-focus]) .\\[\\&_\\>_mark\\]\\:groupFocus\\:bg-c_\\[transparent\\]>mark{background-color:var(--colors-transparent)}.group:is(:focus,[data-focus]) .\\[\\&_\\>_mark\\]\\:groupFocus\\:c_\\[inherit\\]\\!>mark{color:inherit!important}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:content_\\"_\\":before{content:" "}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:pos_absolute:before{position:absolute}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:pointer-events_all:before{pointer-events:all}.likec4-root:is([data-likec4-reduced-graphics][data-likec4-diagram-panning=true]) .reduceGraphicsOnPan\\:before\\:d_none:before{display:none}.notDisabled\\:hover\\:bg-c_likec4\\.panel\\.action\\.bg\\.hover:not(:is(:disabled,[disabled],[data-disabled])):is(:hover,[data-hover]){background-color:var(--colors-likec4-panel-action-bg-hover)}.\\[\\&_\\.mantine-ThemeIcon-root\\]\\:hover\\:c_mantine\\.colors\\.defaultColor .mantine-ThemeIcon-root:is(:hover,[data-hover]){color:var(--colors-mantine-colors-default-color)}[data-mantine-color-scheme=dark] .dark\\:\\[\\&\\:is\\(\\[data-active\\]\\)\\]\\:c_mantine\\.colors\\.white:is([data-active]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .\\[\\&\\[data-missing\\]\\]\\:light\\:c_mantine\\.colors\\.orange\\[8\\][data-missing]{color:var(--colors-mantine-colors-orange\\[8\\])}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:\\[\\&_\\>_div\\]\\:min-h_100\\% .mantine-ScrollArea-viewport>div{min-height:var(--sizes-100\\%)}.\\[\\&_\\.mantine-ScrollArea-viewport\\]\\:\\[\\&_\\>_div\\]\\:h_100\\% .mantine-ScrollArea-viewport>div{height:var(--sizes-100\\%)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:top_\\[calc\\(100\\%_-_4px\\)\\]:before{top:calc(100% - 4px)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:left_0:before{left:var(--spacing-0)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:w_full:before{width:var(--sizes-full)}:where(.react-flow__node,.react-flow__edge,.likec4-edge-container):is(.selectable) .whenSelectable\\:before\\:h_24px:before{height:24px}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:\\[\\&_\\>_div\\]\\:pl_1 .mantine-ScrollArea-root>div{padding-left:var(--spacing-1)}.\\[\\&_\\.mantine-ScrollArea-root\\]\\:\\[\\&_\\>_div\\]\\:pr_1 .mantine-ScrollArea-root>div{padding-right:var(--spacing-1)}[data-mantine-color-scheme=dark] .focusWithin\\:dark\\:bg_mantine\\.colors\\.dark\\[5\\]\\/55\\!:focus-within{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 55%, transparent) !important;background:var(--mix-background, var(--colors-mantine-colors-dark\\[5\\]))!important}[data-mantine-color-scheme=dark] .focus\\:dark\\:bg-c_mantine\\.colors\\.dark\\[4\\]:is(:focus,[data-focus]){background-color:var(--colors-mantine-colors-dark\\[4\\])}[data-mantine-color-scheme=light] .group:is(:focus,[data-focus]) .groupFocus\\:light\\:c_mantine\\.colors\\.white{color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .mantine-Tree-node:focus>.mantine-Tree-label .\\[\\.mantine-Tree-node\\:focus_\\>_\\.mantine-Tree-label_\\&\\]\\:light\\:c_mantine\\.colors\\.white{color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .light\\:hover\\:--icon-color_\\{colors\\.mantine\\.colors\\.gray\\[7\\]\\}:is(:hover,[data-hover]){--icon-color: var(--colors-mantine-colors-gray\\[7\\])}[data-mantine-color-scheme=dark] .dark\\:hover\\:bg_mantine\\.colors\\.dark\\[6\\]:is(:hover,[data-hover]){background:var(--colors-mantine-colors-dark\\[6\\])}[data-mantine-color-scheme=dark] .group:is(:hover,[data-hover]) .groupHover\\:dark\\:bg_mantine\\.colors\\.dark\\[5\\]\\/35{--mix-background: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 35%, transparent);background:var(--mix-background, var(--colors-mantine-colors-dark\\[5\\]))}[data-mantine-color-scheme=light] .light\\:hover\\:bd-c_mantine\\.colors\\.primary\\[6\\]:is(:hover,[data-hover]){border-color:var(--colors-mantine-colors-primary\\[6\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[5\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-dark\\[5\\])}[data-mantine-color-scheme=light] .group:is(:hover,[data-hover]) .groupHover\\:light\\:bg-c_mantine\\.colors\\.gray\\[2\\]{background-color:var(--colors-mantine-colors-gray\\[2\\])}[data-mantine-color-scheme=dark] .group:is(:hover,[data-hover]) .groupHover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[8\\]{background-color:var(--colors-mantine-colors-dark\\[8\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[4\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-dark\\[4\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[5\\]\\/70:is(:hover,[data-hover]){--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[5\\]) 70%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[5\\]))}[data-mantine-color-scheme=dark] .dark\\:hover\\:c_mantine\\.colors\\.white:is(:hover,[data-hover]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.dark\\[7\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-dark\\[7\\])}[data-mantine-color-scheme=dark] .hover\\:dark\\:c_mantine\\.colors\\.primary\\[4\\]:is(:hover,[data-hover]){color:var(--colors-mantine-colors-primary\\[4\\])}.hover\\:\\[\\&_\\>_\\:not\\(\\[data-no-transform\\]\\)\\]\\:trs-tmf_out:is(:hover,[data-hover])>:not([data-no-transform]){--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.hover\\:\\[\\&_\\>_\\:not\\(\\[data-no-transform\\]\\)\\]\\:trf_translateX\\(1px\\):is(:hover,[data-hover])>:not([data-no-transform]){transform:translate(1px)}.hover\\:\\[\\&_\\>_\\*\\]\\:trs-tmf_out:is(:hover,[data-hover])>*{--transition-easing: var(--easings-out);transition-timing-function:var(--easings-out)}.hover\\:\\[\\&_\\>_\\*\\]\\:trf_translateX\\(1px\\):is(:hover,[data-hover])>*{transform:translate(1px)}[data-mantine-color-scheme=dark] .hover\\:dark\\:bg-c_mantine\\.colors\\.defaultHover:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-default-hover)}[data-mantine-color-scheme=dark] .hover\\:dark\\:c_mantine\\.colors\\.white:is(:hover,[data-hover]){color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .light\\:hover\\:bg-c_mantine\\.colors\\.primary\\[5\\]:is(:hover,[data-hover]){background-color:var(--colors-mantine-colors-primary\\[5\\])}[data-mantine-color-scheme=light] .group:is(:hover,[data-hover]) .groupHover\\:light\\:c_mantine\\.colors\\.white{color:var(--colors-mantine-colors-white)}[data-mantine-color-scheme=light] .group:is(:hover,[data-hover]) .groupHover\\:light\\:c_mantine\\.colors\\.primary\\[0\\]{color:var(--colors-mantine-colors-primary\\[0\\])}[data-mantine-color-scheme=dark] .dark\\:hover\\:bg-c_mantine\\.colors\\.dark\\[3\\]\\/40:is(:hover,[data-hover]){--mix-backgroundColor: color-mix(in srgb, var(--colors-mantine-colors-dark\\[3\\]) 40%, transparent);background-color:var(--mix-backgroundColor, var(--colors-mantine-colors-dark\\[3\\]))}@container (min-width: 24rem){.\\@\\/xs\\:d_flex{display:flex}}@media screen and (min-width:36rem){.xs\\:max-w_calc\\(100cqw\\){max-width:100cqw}.xs\\:max-w_calc\\(100cqw_-_50px\\){max-width:calc(100cqw - 50px)}.xs\\:max-w_calc\\(100cqw_-_250px\\){max-width:calc(100cqw - 250px)}.xs\\:max-h_calc\\(100cqh_-_200px\\){max-height:calc(100cqh - 200px)}.xs\\:max-h_calc\\(100cqh_-_160px\\){max-height:calc(100cqh - 160px)}.xs\\:h_100cqh{height:100cqh}.xs\\:max-h_calc\\(100cqh_-_70px\\){max-height:calc(100cqh - 70px)}}@container (min-width: 40rem){.\\@\\/sm\\:m_xs{margin:var(--spacing-xs)}.\\@\\/sm\\:gap_xs{gap:var(--spacing-xs)}.\\@\\/sm\\:w_max-content{width:max-content}.\\@\\/sm\\:max-w_calc\\(100vw_-_2_\\*_\\{spacing\\.md\\}\\){max-width:calc(100vw - 2 * var(--spacing-md))}.\\@\\/sm\\:min-w_400{min-width:400px}.\\@\\/sm\\:max-w_550{max-width:550px}}@container (min-width: 40rem){@media screen and (min-width:36rem){.\\@\\/sm\\:xs\\:max-w_calc\\(100cqw_-_2_\\*_\\{spacing\\.md\\}\\){max-width:calc(100cqw - 2 * var(--spacing-md))}}}@container (min-width: 48rem){.\\@\\/md\\:d_block{display:block}.\\@\\/md\\:d_flex{display:flex}.\\@\\/md\\:d_none{display:none}.\\@\\/md\\:d_inherit{display:inherit}.\\@\\/md\\:ms_2{margin-inline-start:var(--spacing-2)}.\\@\\/md\\:w_\\[64px\\]{width:64px}}@media screen and (min-width:48rem){.sm\\:pr_\\[30px\\]{padding-right:30px}.sm\\:min-w_300{min-width:300px}.sm\\:max-w_65vw{max-width:65vw}}@media screen and (min-width:62rem){.md\\:--text-fz_\\{fontSizes\\.md\\}{--text-fz: var(--font-sizes-md)}.md\\:bd-w_4{border-width:4px}.md\\:px_6{padding-inline:var(--spacing-6)}.md\\:pr_\\[50px\\]{padding-right:50px}.md\\:max-w_40vw{max-width:40vw}}@container (min-width: 64rem){.\\@\\/lg\\:max-w_700{max-width:700px}}@media screen and (min-width:75rem){.lg\\:px_8{padding-inline:var(--spacing-8)}}@container likec4-tree (max-width: 450px){.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:--likec4-icon-size_18px{--likec4-icon-size: 18px}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:gap_0\\.5{gap:var(--spacing-0\\.5)}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:flex-d_column-reverse{flex-direction:column-reverse}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:ai_flex-start{align-items:flex-start}.\\[\\@container_likec4-tree_\\(max-width\\:_450px\\)\\]\\:d_none{display:none}}@media print{.print\\:d_none{display:none}}}`,Bre={autoContrast:!0,primaryColor:"indigo",cursorType:"pointer",defaultRadius:"sm",fontFamily:"var(--likec4-app-font, var(--likec4-app-font-default))",headings:{fontWeight:"500",sizes:{h1:{fontWeight:"600"},h2:{fontWeight:"500"}}},components:{Portal:py.extend({defaultProps:{reuseTargetNode:!0}}),Tooltip:_n.extend({defaultProps:{color:"dark"}})}};fe({cursor:"pointer","--mantine-cursor-pointer":"pointer","& :where(.likec4-diagram, .likec4-compound-node, .likec4-element-node)":{cursor:"pointer"}});function UQe(e,r){const[n,o]=S.useState([]);return f7(()=>{if(e&&!document.querySelector("style[data-likec4-font]")){const i=document.createElement("style");i.setAttribute("type","text/css"),i.setAttribute("data-likec4-font",""),pw(r)&&i.setAttribute("nonce",r),ey(r)&&i.setAttribute("nonce",r()),i.appendChild(document.createTextNode(HQe)),document.head.appendChild(i)}},[e]),f7(()=>{const i=new CSSStyleSheet;return i.replaceSync(Nre.replaceAll(":where(:root,:host)",".likec4-shadow-root").replaceAll(":root",".likec4-shadow-root").replaceAll(new RegExp("(?{i.replaceSync("")}},[Nre]),n}const Ire=()=>{try{const e=window.getComputedStyle(document.documentElement).colorScheme??"",r=hf(e.split(" "));if(r==="light"||r==="dark")return r}catch{}return null};function WQe(e){const r=gH(),[n,o]=S.useState(Ire);return $H(bf(()=>o(Ire),100),{attributes:!0,childList:!1,subtree:!1},()=>document.documentElement),e??n??r}function Ore({children:e}){const r=S.useContext(Aw);return S.useEffect(()=>{r||console.warn("LikeC4Diagram must be a child of MantineProvider")},[]),r?y.jsx(y.Fragment,{children:e}):y.jsx(z9,{defaultColorScheme:"auto",theme:Bre,children:e})}Ore.displayName="EnsureMantine";const wz=({reducedMotion:e="user",children:r})=>{const n=np()?.();return y.jsx(sLe,{features:rVe,strict:!0,children:y.jsx(uLe,{reducedMotion:e,...n&&{nonce:n},children:r})})};function Lre({onCanvasClick:e,onCanvasContextMenu:r,onCanvasDblClick:n,onEdgeClick:o,onEdgeContextMenu:i,onNavigateTo:a,onNodeClick:l,onNodeContextMenu:s,onOpenSource:c,onBurgerMenuClick:d,onLayoutTypeChange:u,onInitialized:p,view:f,className:m,controls:v=!0,fitView:w=!0,fitViewPadding:x=v?y2.withControls:y2.default,pannable:k=!0,zoomable:C=!0,background:_="dots",enableElementTags:$=!1,enableFocusMode:R=!1,enableElementDetails:T=!1,enableRelationshipDetails:A=!1,enableRelationshipBrowser:z=!1,enableCompareWithLatest:j=!!u,nodesSelectable:I,enableNotations:N=!1,showNavigationButtons:L=!!a,enableDynamicViewWalkthrough:H=!1,dynamicViewVariant:P,enableSearch:V=!1,initialWidth:B,initialHeight:F,reduceGraphics:q="auto",renderIcon:G,where:U,reactFlowProps:Y,renderNodes:K,children:O}){const W=DG(),Z=S.useRef(null),Q=!!rre(),ie=!Q;I??=Q||R||!!a||!!l;const te=kee(f,P),re=GQe(x);Z.current==null&&(Z.current={defaultEdges:[],defaultNodes:[],initialWidth:B??te.width,initialHeight:F??te.height,initialFitViewOptions:{maxZoom:l$,minZoom:xa,padding:re},initialMaxZoom:l$,initialMinZoom:xa});const ue=q==="auto"?k&&(te.width??1)*(te.height??1)>6e6&&f.nodes.some(_e=>_e.children?.length>0):q;return y.jsx(Ore,{children:y.jsx(wz,{...ue&&{reducedMotion:"always"},children:y.jsx(Uke,{value:G??null,children:y.jsx(gp,{features:{enableFitView:w,enableEditor:Q,enableReadOnly:ie,enableFocusMode:R,enableNavigateTo:!!a,enableElementDetails:T,enableRelationshipDetails:A,enableRelationshipBrowser:z,enableSearch:V,enableNavigationButtons:L&&!!a,enableDynamicViewWalkthrough:f._type==="dynamic"&&H,enableNotations:N,enableVscode:!!c,enableControls:v,enableElementTags:$,enableCompareWithLatest:j&&!!u},children:y.jsxs(eGe,{handlers:{onCanvasClick:e,onCanvasContextMenu:r,onCanvasDblClick:n,onEdgeClick:o,onEdgeContextMenu:i,onNavigateTo:a,onNodeClick:l,onNodeContextMenu:s,onOpenSource:c,onBurgerMenuClick:d,onInitialized:p,onLayoutTypeChange:u},children:[y.jsx(qQe,{id:W}),y.jsx(wMe,{rootSelector:`#${W}`,children:y.jsx(gMe,{id:W,className:m,reduceGraphics:ue,children:y.jsx(lw,{fitView:w,...Z.current,children:y.jsxs($Qe,{view:f,zoomable:C,pannable:k,fitViewPadding:re,nodesDraggable:Q,nodesSelectable:I,where:U??null,dynamicViewVariant:P,children:[y.jsx(_Ze,{background:_,reactFlowProps:Y,renderNodes:K,children:O}),y.jsx(yte,{})]})})})})]})})})})})}const Fre=e=>typeof e=="number"?`${e}px`:e;function GQe(e){return SL(()=>{if(a9(e))return D$e(e,Fre);const r=Fre(e);return{x:r,y:r}},[e],tt)}function YQe({children:e,likec4model:r}){return y.jsx(Sy.Provider,{value:r,children:e})}const kz=({children:e})=>y.jsx("div",{style:{margin:"1rem 0"},children:y.jsx("div",{style:{margin:"0 auto",display:"inline-block",padding:"2rem",background:"rgba(250,82,82,.15)",color:"#ffa8a8"},children:e})}),XQe=({viewId:e})=>y.jsxs(kz,{children:["View ",y.jsx("code",{children:e})," not found"]}),KQe=e=>{throw new Error("LikeC4View is not available SSR")};var Vre={exports:{}},_z,qre;function ZQe(){if(qre)return _z;qre=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return _z=e,_z}var Sz,Hre;function QQe(){if(Hre)return Sz;Hre=1;var e=ZQe();function r(){}function n(){}return n.resetWarningCache=r,Sz=function(){function o(l,s,c,d,u,p){if(p!==e){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}}o.isRequired=o;function i(){return o}var a={array:o,bigint:o,bool:o,func:o,number:o,object:o,string:o,symbol:o,any:o,arrayOf:i,element:o,elementType:o,instanceOf:i,node:o,objectOf:i,oneOf:i,oneOfType:i,shape:i,exact:i,checkPropTypes:n,resetWarningCache:r};return a.PropTypes=a,a},Sz}var Ure;function JQe(){return Ure||(Ure=1,Vre.exports=QQe()()),Vre.exports}var eJe=JQe();const gl=Y7(eJe);var tJe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Wre(e,r){return e(r={exports:{}},r.exports),r.exports}var rJe=Wre((function(e){(function(r){var n=function(x,k,C){if(!c(k)||u(k)||p(k)||f(k)||s(k))return k;var _,$=0,R=0;if(d(k))for(_=[],R=k.length;$e.length)&&(r=e.length);for(var n=0,o=new Array(r);n=0||(i[n]=e[n]);return i},Xre=function(e,r){if(e==null)return{};var n,o,i=sJe(e,r);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i},cJe=S.createContext(null);function Kre(e){var r=e.children,n=r===void 0?"":r,o=Xre(e,["children"]);return typeof n!="string"&&(n=KQe()),Zr.createElement("template",Yre({},o,{dangerouslySetInnerHTML:{__html:n}}))}function Zre(e){var r=e.root,n=e.children;return Va.createPortal(n===void 0?null:n,r)}function dJe(e){var r=S.forwardRef((function(n,o){var i,a,l=n.mode,s=l===void 0?"open":l,c=n.delegatesFocus,d=c!==void 0&&c,u=n.styleSheets,p=u===void 0?[]:u,f=n.ssr,m=f!==void 0&&f,v=n.children,w=Xre(n,["mode","delegatesFocus","styleSheets","ssr","children"]),x=(a=S.useRef((i=o)&&i.current),S.useEffect((function(){i&&(i.current=a.current)}),[i]),a),k=S.useState(null),C=lJe(k,2),_=C[0],$=C[1],R="node_".concat(s).concat(d);return S.useLayoutEffect((function(){if(x.current)try{if(typeof o=="function"&&o(x.current),m){var T=x.current.shadowRoot;return void $(T)}var A=x.current.attachShadow({mode:s,delegatesFocus:d});p.length>0&&(A.adoptedStyleSheets=p),$(A)}catch(z){(function(j){var I=j.error,N=j.styleSheets,L=j.root;switch(I.name){case"NotSupportedError":N.length>0&&(L.adoptedStyleSheets=N);break;default:throw I}})({error:z,styleSheets:p,root:_})}}),[o,x,p]),Zr.createElement(Zr.Fragment,null,Zr.createElement(e.tag,Yre({key:R,ref:x},w),(_||m)&&Zr.createElement(cJe.Provider,{value:_},m?Zr.createElement(Kre,{shadowroot:s,shadowrootmode:s},e.render({root:_,ssr:m,children:v})):Zr.createElement(Zre,{root:_},e.render({root:_,ssr:m,children:v})))))}));return r.propTypes={mode:gl.oneOf(["open","closed"]),delegatesFocus:gl.bool,styleSheets:gl.arrayOf(gl.instanceOf(globalThis.CSSStyleSheet)),ssr:gl.bool,children:gl.node},r}Kre.propTypes={children:gl.oneOfType([gl.string,gl.node])},Zre.propTypes={root:gl.object.isRequired,children:gl.node};var Ez=new Map;function uJe(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"core",n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:function(o){return o.children};return new Proxy(e,{get:function(o,i){var a=rJe(i,{separator:"-"}),l="".concat(r,"-").concat(a);return Ez.has(l)||Ez.set(l,dJe({tag:a,render:n})),Ez.get(l)}})}var pJe=uJe();const hJe=pJe.div;function fJe(e,r=!1){if(r===!1)return` :where([data-likec4-instance="${e}"]) { display: block; box-sizing: border-box; @@ -205,16 +205,16 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho ${i?"min-width: 80px;":"min-height: 80px;"} max-height: min(100%, var(--likec4-view-max-height, ${Math.ceil(o)}px)); } -`.trim()}const Qre=S.forwardRef(({children:e,theme:r=Bre,injectFontCss:n=!0,styleNonce:o,colorScheme:i,keepAspectRatio:a=!1,...l},s)=>{const c=WQe(i),d=DG(),u=fJe(d,a),p=S.useRef(null),f=UQe(n,o),g=S.useCallback(()=>p.current??void 0,[p]),v=at(()=>{if(ra(o)){if(typeof o=="string")return o;if(typeof o=="function")return o()}return""});let w=ra(o)?v():void 0;return y.jsxs(y.Fragment,{children:[y.jsx("style",{type:"text/css",nonce:w,dangerouslySetInnerHTML:{__html:u}}),y.jsx(hJe,{ssr:!1,...l,styleSheets:f,"data-likec4-instance":d,children:y.jsx("div",{ref:$r(p,s),"data-mantine-color-scheme":c,className:"likec4-shadow-root",children:y.jsx(z9,{...i&&{forceColorScheme:i},defaultColorScheme:c,getRootElement:g,...!!w&&{getStyleNonce:v},cssVariablesSelector:".likec4-shadow-root",theme:r,children:y.jsx(wz,{children:e})})})})]})});Qre.displayName="ShadowRoot";const mJe=fe({cursor:"pointer","--mantine-cursor-pointer":"pointer","& :where(.likec4-diagram, .likec4-compound-node, .likec4-element-node)":{cursor:"pointer"}});function gJe({viewId:e,className:r,pannable:n=!1,zoomable:o=!1,keepAspectRatio:i=!0,colorScheme:a,injectFontCss:l=!0,controls:s=!1,background:c="transparent",browser:d=!0,showNavigationButtons:u=!1,enableNotations:p,enableFocusMode:f=!1,enableDynamicViewWalkthrough:g=!1,enableElementDetails:v=!1,enableRelationshipDetails:w=!1,enableRelationshipBrowser:x=w,reduceGraphics:k="auto",mantineTheme:C,styleNonce:_,style:$,reactFlowProps:R,renderNodes:T,children:A,...z}){const j=S.useRef(null),I=gNe(),[P,L]=S.useState("manual"),[H,M]=S.useState(null),V=at(Q=>{Q&&Q!==H&&L("manual"),M(Q)}),B=at(()=>{V(e)});if(!I)return y.jsx(kz,{children:"LikeC4Model not found. Make sure you provided LikeC4ModelProvider."});const F=I.findView(e)?.$layouted;if(!F)return y.jsx(XQe,{viewId:e});if(F._stage!=="layouted")return y.jsxs(kz,{children:['LikeC4 View "$',e,'" is not layouted. Make sure you have LikeC4ModelProvider with layouted model.']});const q=H?I.findView(H):null,G=P==="manual"?q?.$layouted:q?.$view,U=!!p&&(F.notation?.nodes?.length??0)>0,Y=(G?.notation?.nodes?.length??0)>0,K=d!==!1,O=Pq(d)?{}:d,W=kee(F,z.dynamicViewVariant),Z=j.current?{root:j.current}:void 0;return y.jsx(Qre,{ref:j,injectFontCss:l,theme:C,colorScheme:a,styleNonce:_,keepAspectRatio:i?W:!1,className:Ge("likec4-view",r),style:$,children:y.jsxs(wz,{children:[y.jsx(Lre,{view:F,pannable:n,zoomable:o,background:c,fitView:!0,fitViewPadding:y2.default,enableNotations:U,enableDynamicViewWalkthrough:g,showNavigationButtons:u,enableCompareWithLatest:!1,enableFocusMode:f,enableRelationshipDetails:w,enableElementDetails:v,enableRelationshipBrowser:x,enableElementTags:!1,controls:s,reduceGraphics:k,className:Ge("likec4-static-view",K&&mJe),enableSearch:!1,...K&&{onCanvasClick:B,onNodeClick:B},reactFlowProps:R,renderNodes:T,children:A,...z}),y.jsx(Cn,{...Z,children:G&&y.jsxs(p0,{openDelay:0,onClose:()=>V(null),children:[y.jsx(Lre,{view:G,pannable:!0,zoomable:!0,background:"dots",onNavigateTo:V,showNavigationButtons:!0,enableDynamicViewWalkthrough:!0,enableFocusMode:!0,enableRelationshipBrowser:!0,enableElementDetails:!0,enableRelationshipDetails:!0,enableSearch:!0,enableElementTags:!0,enableCompareWithLatest:!0,controls:!0,fitView:!0,...z,fitViewPadding:y2.withControls,...O,enableNotations:Y&&(O.enableNotations??!0),renderNodes:T,onLayoutTypeChange:L}),y.jsx(hr,{pos:"absolute",top:"4",right:"4",zIndex:"999",children:y.jsx(lr,{variant:"default",color:"gray",onClick:Q=>{Q.stopPropagation(),V(null)},children:y.jsx(fp,{})})})]})})]})})}var yJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 131",...e,children:y.jsx("path",{fill:"#2396ED",d:"m140.598 25.715 3.892 2.818c6.77 5.46 10.662 11.625 11.508 18.67 7.277-1.409 16.584-.352 20.646 2.466l3.723 2.29-.677 1.41c-1.185 2.641-1.523 3.346-1.692 3.698-6.6 13.21-19.631 13.386-25.723 13.21-15.4 38.573-48.23 59.885-92.57 59.885-20.476 0-36.045-6.517-46.538-19.375C-.709 93.88-.709 71.862.475 64.817l.339-1.41h122.353c6.43 0 11.339-1.76 13.708-3.17-2.539-3.875-3.385-8.278-3.554-10.744-.508-7.045 1.185-14.443 4.57-19.727zm106.014 8.179q2.048 0 3.468 1.373t1.42 3.467v43.563q0 10.89-7.634 18.43-7.726 7.633-18.43 7.633-10.798 0-18.43-7.633-7.633-7.633-7.633-18.43t7.633-18.43q7.632-7.634 18.43-7.633 9.262 0 16.336 5.724V38.734q0-2.094 1.373-3.467t3.467-1.373m36.49 22.34q10.705 0 18.43 7.632 3.818 3.818 5.702 8.424 1.885 4.608 1.932 10.007 0 10.89-7.633 18.43-7.725 7.633-18.43 7.633-10.798 0-18.43-7.633-7.634-7.633-7.634-18.43t7.633-18.43q7.633-7.634 18.43-7.633m57.574 0q9.82 0 16.988 6.33 1.675 1.488 1.675 3.676 0 2.095-1.373 3.49-1.373 1.397-3.467 1.397a4.93 4.93 0 0 1-3.165-1.117q-2.373-2.002-4.98-3.025t-5.678-1.024q-3.397 0-6.376 1.28a16.7 16.7 0 0 0-5.213 3.49 16.2 16.2 0 0 0-3.514 5.19q-1.28 2.977-1.28 6.376 0 3.397 1.28 6.376a16.2 16.2 0 0 0 3.514 5.19 16.7 16.7 0 0 0 5.213 3.49q2.979 1.28 6.376 1.28 3.072 0 5.678-1 2.607-1.002 4.933-3.003 1.304-.977 3.072-1.024 2.094 0 3.467 1.373t1.373 3.468q0 2.048-1.535 3.583-7.214 6.33-16.988 6.33-10.798 0-18.43-7.633-7.633-7.633-7.633-18.43t7.633-18.43q7.632-7.634 18.43-7.633m29.044-22.34q2.001 0 3.42 1.42 1.42 1.418 1.42 3.467v36.302l27.832-18.105q1.163-.744 2.606-.744 1.024 0 1.908.372.885.372 1.536 1.047t1.047 1.56.396 1.86q0 2.607-1.862 3.864l-19.5 12.66 20.012 22.525q1.35 1.489 1.35 3.398 0 .977-.396 1.861a5.4 5.4 0 0 1-1.047 1.56q-.651.675-1.536 1.046a4.9 4.9 0 0 1-1.908.373q-1.955 0-3.258-1.257l-21.502-24.155-5.678 3.724v16.801q0 2.001-1.42 3.444t-3.42 1.443q-2.048 0-3.468-1.443t-1.42-3.444V38.781q0-2.048 1.42-3.468t3.468-1.42m71.489 22.34q10.704 0 18.43 7.632 3.816 3.77 5.725 8.401 1.908 4.63 1.908 10.03 0 2.094-1.42 3.467t-3.467 1.373h-36.86a15.9 15.9 0 0 0 2.327 4.677 16.3 16.3 0 0 0 3.606 3.63 16.7 16.7 0 0 0 4.562 2.351q2.49.838 5.189.838 3.072 0 5.631-.931 2.56-.93 4.748-2.793a5.1 5.1 0 0 1 3.21-1.21q2.095 0 3.468 1.373t1.373 3.468q0 2.047-1.396 3.49-7.214 6.33-17.034 6.33-10.798 0-18.43-7.633-7.633-7.633-7.633-18.43t7.633-18.43q7.632-7.634 18.43-7.633m57.48 0q2.048 0 4.398.279 2.35.28 4.329 1 1.978.721 3.28 1.978 1.305 1.257 1.304 3.258 0 1.025-.396 1.909a5.4 5.4 0 0 1-1.047 1.559q-.651.675-1.536 1.047a4.9 4.9 0 0 1-1.908.372q-.885 0-2.048-.512-2.932-1.163-6.376-1.163-3.397 0-6.376 1.28-2.978 1.28-5.19 3.49-2.21 2.211-3.49 5.19-1.28 2.977-1.28 6.376v21.223q0 2.001-1.42 3.42t-3.42 1.42q-2.048 0-3.467-1.42t-1.42-3.42V61.074q0-2.002 1.42-3.42 1.42-1.42 3.467-1.42 2.001 0 3.42 1.42 1.42 1.418 1.42 3.42v.93a26.7 26.7 0 0 1 7.586-4.281q4.095-1.49 8.75-1.49M225.436 65.96q-3.444 0-6.423 1.303t-5.166 3.514-3.467 5.19-1.28 6.329 1.28 6.33 3.467 5.189 5.166 3.514q2.979 1.302 6.423 1.303 3.397 0 6.376-1.303a16.6 16.6 0 0 0 5.19-3.538 16.8 16.8 0 0 0 3.49-5.189q1.28-2.955 1.28-6.306t-1.28-6.307a16.8 16.8 0 0 0-3.49-5.189 16.6 16.6 0 0 0-5.19-3.537q-2.978-1.303-6.376-1.303m57.667 0q-3.444 0-6.423 1.303t-5.166 3.514-3.468 5.19-1.28 6.329 1.28 6.33q1.281 2.978 3.468 5.189t5.166 3.514 6.423 1.303q3.397 0 6.376-1.303a16.6 16.6 0 0 0 5.19-3.538 16.8 16.8 0 0 0 3.49-5.189q1.28-2.955 1.28-6.306t-1.28-6.307a16.8 16.8 0 0 0-3.49-5.189 16.6 16.6 0 0 0-5.19-3.537q-2.979-1.303-6.376-1.303m158.106 0q-2.653 0-5.166.837a17 17 0 0 0-4.608 2.35 16.1 16.1 0 0 0-3.63 3.631 15.1 15.1 0 0 0-2.28 4.677h31.368a15.6 15.6 0 0 0-2.35-4.677 16.8 16.8 0 0 0-3.63-3.63 16.7 16.7 0 0 0-4.561-2.35 16 16 0 0 0-5.143-.838M32.629 42.27v17.614H14.014V42.272zm22 0v17.614H36.014V42.272zm22 0v17.614H58.013V42.272zm22 0v17.614H80.013V42.272zm22 0v17.614h-18.616V42.272zm-22-21.135v17.613H80.013V21.136zm-22 0v17.613H58.013V21.136zm-22 0v17.613H36.014V21.136zM98.629 0v17.613H80.013V0z"})}),vJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 288",...e,children:[y.jsx("path",{fill:"#343741",d:"M0 143.82c0 12.44 1.744 24.441 4.71 35.956h175.067c19.856 0 35.955-16.1 35.955-35.956 0-19.865-16.1-35.955-35.955-35.955H4.71C1.744 119.371 0 131.38 0 143.82"}),y.jsx("path",{fill:"#FEC514",d:"M242.013 68.863c5.025-4.629 9.7-9.6 13.987-14.93C229.636 21.079 189.213 0 143.82 0 87 0 38.101 33.052 14.775 80.9h196.559c11.38 0 22.319-4.324 30.678-12.037"}),y.jsx("path",{fill:"#00BFB3",d:"M211.334 206.742H14.774c23.336 47.839 72.226 80.9 129.045 80.9 45.393 0 85.816-21.088 112.18-53.933a136.6 136.6 0 0 0-13.987-14.94c-8.36-7.721-19.299-12.027-30.678-12.027"})]}),bJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 278",...e,children:y.jsx("path",{fill:"#47848F",d:"M90.317 59.645c-36.264-6.605-64.936.308-76.364 20.101-8.527 14.77-6.09 34.353 5.912 55.285a3.719 3.719 0 1 0 6.452-3.699c-10.811-18.856-12.915-35.757-5.923-47.867 9.493-16.442 35.068-22.608 68.59-16.503a3.719 3.719 0 1 0 1.333-7.317m53.63-33.684c-2.959 5.723-8.932 9.635-15.819 9.635-9.83 0-17.798-7.969-17.798-17.798C110.33 7.968 118.3 0 128.128 0c9.83 0 17.798 7.968 17.798 17.798q0 .386-.016.767c29.461 15.237 49.933 67.197 49.933 127.226 0 24.69-3.452 48.382-9.879 68.92a3.719 3.719 0 1 1-7.097-2.221c6.196-19.802 9.539-42.747 9.539-66.699 0-56.524-18.789-105.163-44.458-119.83M16.469 193.319a18 18 0 0 1 1.33-.05c9.83 0 17.798 7.97 17.798 17.799s-7.969 17.797-17.798 17.797C7.968 228.865 0 220.897 0 211.068c0-6.692 3.693-12.52 9.151-15.56-2.68-33.265 32.283-77.855 85.12-108.36 21.946-12.671 44.798-21.665 66.267-26.265a3.719 3.719 0 0 1 1.558 7.273c-20.69 4.433-42.817 13.141-64.107 25.433-49.759 28.728-82.66 70.134-81.52 99.73m206.26 26.546a17.7 17.7 0 0 1-2.324-8.797c0-9.83 7.969-17.798 17.798-17.798 9.83 0 17.798 7.968 17.798 17.798s-7.968 17.797-17.798 17.797a17.7 17.7 0 0 1-10.38-3.338c-28.392 16.703-82.625 8.184-133.66-21.282-21.726-12.543-40.776-27.657-55.439-43.77a3.719 3.719 0 0 1 5.5-5.006c14.134 15.532 32.581 30.167 53.657 42.335 48.165 27.808 98.886 36.084 124.847 22.061m-1.166-63.914a3.719 3.719 0 0 1-5.676-4.805c21.946-25.926 29.34-51.086 19.867-67.492-6.876-11.91-22.159-18.52-43.362-18.796a3.719 3.719 0 1 1 .097-7.437c23.575.307 41.315 7.98 49.706 22.514 11.404 19.752 3.113 47.965-20.632 76.016M72.564 221.49a3.719 3.719 0 0 1 7.001-2.507c11.476 32.045 29.591 51.082 48.563 51.082 13.645 0 26.91-9.774 37.71-27.74a3.719 3.719 0 0 1 6.375 3.832c-12.018 19.99-27.428 31.345-44.085 31.345-22.839 0-43.15-21.344-55.564-56.011m175.999-10.423c0-5.722-4.639-10.361-10.36-10.361-5.723 0-10.362 4.639-10.362 10.36 0 5.723 4.64 10.361 10.361 10.361s10.36-4.638 10.36-10.36m-230.765 10.36c5.722 0 10.36-4.638 10.36-10.36s-4.638-10.361-10.36-10.361-10.36 4.639-10.36 10.36c0 5.723 4.638 10.361 10.36 10.361m110.33-193.27c5.722 0 10.36-4.638 10.36-10.36s-4.638-10.36-10.36-10.36-10.36 4.638-10.36 10.36 4.638 10.36 10.36 10.36m2.718 130.22c-6.951 1.502-13.8-2.916-15.305-9.868-1.499-6.952 2.916-13.8 9.868-15.305 6.951-1.502 13.8 2.915 15.305 9.867 1.502 6.952-2.916 13.8-9.868 15.305"})}),xJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 108",...e,children:[y.jsx("path",{fill:"#2F2707",d:"M152.984 37.214c-5.597 0-9.765 2.748-9.765 9.362 0 4.983 2.747 8.443 9.463 8.443 5.693 0 9.56-3.355 9.56-8.65 0-6-3.46-9.155-9.258-9.155m-11.19 46.701c-1.325 1.625-2.645 3.353-2.645 5.39 0 4.067 5.186 5.291 12.31 5.291 5.9 0 13.938-.414 13.938-5.9 0-3.261-3.867-3.462-8.753-3.768zm30.113-46.394c1.828 2.34 3.764 5.597 3.764 10.276 0 11.292-8.851 17.904-21.667 17.904-3.259 0-6.209-.406-8.038-.914l-3.359 5.39 9.969.61c17.602 1.122 27.975 1.632 27.975 15.157 0 11.702-10.272 18.311-27.975 18.311-18.413 0-25.433-4.68-25.433-12.716 0-4.578 2.035-7.015 5.596-10.378-3.358-1.419-4.476-3.961-4.476-6.71 0-2.24 1.118-4.273 2.952-6.208 1.83-1.93 3.864-3.865 6.306-6.103-4.984-2.442-8.75-7.732-8.75-15.262 0-11.697 7.733-19.731 23.295-19.731 4.376 0 7.022.402 9.362 1.017h19.84v8.644zM199.166 19.034c-5.8 0-9.157-3.36-9.157-9.161 0-5.793 3.356-8.95 9.157-8.95 5.9 0 9.258 3.157 9.258 8.95 0 5.801-3.357 9.161-9.258 9.161M186.04 80.171v-8.033l5.19-.71c1.425-.205 1.627-.509 1.627-2.038V39.48c0-1.116-.304-1.832-1.325-2.134l-5.492-1.935 1.118-8.238h21.061V69.39c0 1.63.098 1.833 1.629 2.039l5.188.71v8.032zM255.267 76.227c-4.376 2.135-10.785 4.068-16.586 4.068-12.106 0-16.682-4.878-16.682-16.38V37.264c0-.61 0-1.017-.817-1.017h-7.12V27.19c8.955-1.02 12.513-5.496 13.632-16.585h9.666v14.45c0 .71 0 1.017.815 1.017h14.343v10.173H237.36v24.313c0 6.002 1.426 8.34 6.917 8.34 2.852 0 5.799-.71 8.24-1.626z"}),y.jsx("path",{fill:"#DE4C36",d:"M104.529 49.53 58.013 3.017a6.86 6.86 0 0 0-9.703 0l-9.659 9.66 12.253 12.252a8.15 8.15 0 0 1 8.383 1.953 8.16 8.16 0 0 1 1.936 8.434L73.03 47.125c2.857-.984 6.154-.347 8.435 1.938a8.16 8.16 0 0 1 0 11.545 8.164 8.164 0 0 1-13.324-8.88L57.129 40.716l-.001 28.98a8.3 8.3 0 0 1 2.159 1.544 8.164 8.164 0 0 1 0 11.547c-3.19 3.19-8.36 3.19-11.545 0a8.164 8.164 0 0 1 2.672-13.328v-29.25a8.1 8.1 0 0 1-2.672-1.782c-2.416-2.413-2.997-5.958-1.759-8.925l-12.078-12.08L2.011 49.314a6.863 6.863 0 0 0 0 9.706l46.516 46.514a6.86 6.86 0 0 0 9.703 0l46.299-46.297a6.866 6.866 0 0 0 0-9.707"})]}),wJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 139",...e,children:y.jsx("path",{fill:"#11110F",d:"M98.696 59.312h-43.06c-1.111 0-2.013.903-2.013 2.014v21.053c0 1.111.902 2.015 2.012 2.015h16.799v26.157s-3.772 1.286-14.2 1.286c-12.303 0-29.49-4.496-29.49-42.288 0-37.8 17.897-42.773 34.698-42.773 14.543 0 20.809 2.56 24.795 3.794 1.253.384 2.412-.863 2.412-1.975l4.803-20.342c0-.52-.176-1.146-.769-1.571C93.064 5.527 83.187 0 58.233 0 29.488 0 0 12.23 0 71.023c0 58.795 33.76 67.556 62.21 67.556 23.555 0 37.844-10.066 37.844-10.066.59-.325.653-1.148.653-1.526V61.326c0-1.11-.9-2.014-2.01-2.014m221.8-51.953c0-1.12-.888-2.024-1.999-2.024h-24.246a2.016 2.016 0 0 0-2.008 2.024l.006 46.856h-37.792V7.36c0-1.12-.892-2.024-2.001-2.024H228.21a2.014 2.014 0 0 0-2.003 2.024v126.872c0 1.12.9 2.03 2.003 2.03h24.245c1.109 0 2-.91 2-2.03V79.964h37.793l-.066 54.267c0 1.12.9 2.03 2.008 2.03h24.304c1.11 0 1.998-.91 2-2.03zM144.37 24.322c0-8.73-7-15.786-15.635-15.786-8.627 0-15.632 7.055-15.632 15.786 0 8.72 7.005 15.795 15.632 15.795 8.635 0 15.635-7.075 15.635-15.795m-1.924 83.212V48.97c0-1.112-.897-2.021-2.006-2.021h-24.169c-1.109 0-2.1 1.144-2.1 2.256v83.905c0 2.466 1.536 3.199 3.525 3.199h21.775c2.39 0 2.975-1.173 2.975-3.239zM413.162 46.95h-24.06c-1.104 0-2.002.909-2.002 2.028v62.21s-6.112 4.472-14.788 4.472-10.977-3.937-10.977-12.431v-54.25c0-1.12-.897-2.03-2.001-2.03h-24.419c-1.102 0-2.005.91-2.005 2.03v58.358c0 25.23 14.063 31.403 33.408 31.403 15.87 0 28.665-8.767 28.665-8.767s.61 4.62.885 5.168c.276.547.994 1.098 1.77 1.098l15.535-.068c1.102 0 2.005-.911 2.005-2.025l-.008-85.168c0-1.119-.9-2.028-2.008-2.028m55.435 68.758c-8.345-.254-14.006-4.041-14.006-4.041V71.488s5.585-3.423 12.436-4.035c8.664-.776 17.013 1.841 17.013 22.51 0 21.795-3.768 26.096-15.443 25.744m9.49-71.483c-13.665 0-22.96 6.097-22.96 6.097V7.359a2.01 2.01 0 0 0-2-2.024h-24.315a2.013 2.013 0 0 0-2.004 2.024v126.872c0 1.12.898 2.03 2.007 2.03h16.87c.76 0 1.335-.39 1.76-1.077.419-.682 1.024-5.85 1.024-5.85s9.942 9.422 28.763 9.422c22.096 0 34.768-11.208 34.768-50.315s-20.238-44.217-33.913-44.217M212.229 46.73h-18.187l-.028-24.027c0-.909-.468-1.364-1.52-1.364H167.71c-.964 0-1.481.424-1.481 1.35v24.83s-12.42 2.998-13.26 3.24a2.01 2.01 0 0 0-1.452 1.934v15.603c0 1.122.896 2.027 2.005 2.027h12.707v37.536c0 27.88 19.556 30.619 32.753 30.619 6.03 0 13.243-1.937 14.434-2.376.72-.265 1.138-1.01 1.138-1.82l.02-17.164c0-1.119-.945-2.025-2.01-2.025-1.06 0-3.77.431-6.562.431-8.933 0-11.96-4.154-11.96-9.53l-.001-35.67h18.188a2.014 2.014 0 0 0 2.006-2.028V48.753c0-1.12-.897-2.022-2.006-2.022"})}),kJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 192",...e,children:y.jsx("path",{fill:"#00ACD7",d:"m292.533 13.295 1.124.75c13.212 8.725 22.685 20.691 28.917 35.15 1.496 2.243.499 3.49-2.493 4.237l-5.063 1.296c-11.447 2.949-20.53 5.429-31.827 8.378l-6.443 1.678c-2.32.574-2.96.333-5.428-2.477l-.348-.399c-3.519-3.988-6.155-6.652-10.817-9.03l-.899-.443c-15.705-7.727-30.911-5.484-45.12 3.74-16.952 10.968-25.677 27.172-25.428 47.364.25 19.942 13.96 36.395 33.654 39.137 16.951 2.244 31.16-3.739 42.378-16.452 2.244-2.743 4.238-5.734 6.73-9.224H223.36c-5.235 0-6.481-3.24-4.736-7.478l.864-2.035c3.204-7.454 8.173-18.168 11.4-24.294l.704-1.319c.862-1.494 2.612-3.513 5.977-3.513h80.224c3.603-11.415 9.449-22.201 17.246-32.407 18.198-23.931 40.135-36.396 69.8-41.63 25.427-4.488 49.359-1.995 71.046 12.713 19.694 13.461 31.909 31.66 35.15 55.59 4.237 33.654-5.485 61.075-28.668 84.508-16.453 16.702-36.645 27.172-59.829 31.908-6.73 1.247-13.461 1.496-19.942 2.244-22.685-.499-43.376-6.98-60.826-21.937-12.273-10.61-20.727-23.648-24.928-38.828a105 105 0 0 1-10.47 16.89c-17.949 23.683-41.381 38.39-71.046 42.38-24.43 3.24-47.115-1.497-67.058-16.454-18.447-13.96-28.917-32.407-31.66-55.34-3.24-27.173 4.737-51.603 21.19-73.041 17.7-23.184 41.132-37.891 69.8-43.126 22.999-4.16 45.037-1.595 64.936 11.464M411.12 49.017l-.798.178c-23.183 5.235-38.14 19.942-43.624 43.375-4.488 19.444 4.985 39.138 22.934 47.115 13.71 5.983 27.421 5.235 40.633-1.496 19.694-10.22 30.413-26.175 31.66-47.613-.25-3.24-.25-5.734-.749-8.227-4.436-24.401-26.664-38.324-50.056-33.332M116.416 94.564c.997 0 1.496.748 1.496 1.745l-.499 5.983c0 .997-.997 1.745-1.745 1.745l-54.344-.249c-.997 0-1.246-.748-.748-1.496l3.49-6.232c.499-.748 1.496-1.496 2.493-1.496zM121.9 71.63c.997 0 1.496.748 1.247 1.496l-1.995 5.983c-.249.997-1.246 1.495-2.243 1.495l-117.912.25c-.997 0-1.246-.499-.748-1.247l5.235-6.73c.499-.748 1.745-1.247 2.742-1.247zm12.963-22.934c.997 0 1.246.748.748 1.496l-4.238 6.481c-.499.748-1.745 1.496-2.493 1.496l-90.24-.25c-.998 0-1.247-.498-.749-1.246l5.235-6.73c.499-.748 1.745-1.247 2.742-1.247z"})}),_Je=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 279",...e,children:[y.jsx("defs",{children:y.jsxs("linearGradient",{id:"Grafana_svg__a",x1:"49.995%",x2:"49.995%",y1:"122.45%",y2:"31.139%",children:[y.jsx("stop",{offset:"0%",stopColor:"#FFF100"}),y.jsx("stop",{offset:"100%",stopColor:"#F05A28"})]})}),y.jsx("path",{fill:"url(#Grafana_svg__a)",d:"M255.59 122.775c-.46-4.675-1.226-10.04-2.759-16.017a98 98 0 0 0-7.204-19.16 106.7 106.7 0 0 0-13.412-20.54c-2.222-2.681-4.675-5.287-7.28-7.816 3.908-15.558-4.752-29.046-4.752-29.046-14.945-.92-24.448 4.675-27.973 7.204-.613-.23-1.15-.537-1.763-.767-2.529-.996-5.135-1.992-7.894-2.835a130 130 0 0 0-8.277-2.3c-2.835-.69-5.67-1.226-8.583-1.686-.537-.076-.996-.153-1.533-.23C157.646 8.738 138.946 0 138.946 0c-20.922 13.258-24.831 31.805-24.831 31.805s-.077.383-.23 1.073c-1.15.307-2.299.69-3.449.996-1.609.46-3.218 1.073-4.751 1.686a123 123 0 0 0-4.752 1.916 117 117 0 0 0-9.35 4.599c-2.989 1.686-5.9 3.525-8.737 5.441l-.766-.307c-28.97-11.036-54.643 2.223-54.643 2.223-2.376 30.809 11.572 50.198 14.331 53.724-.69 1.916-1.303 3.832-1.916 5.748-2.146 6.974-3.755 14.101-4.751 21.535-.154 1.073-.307 2.146-.384 3.219C7.894 146.916 0 173.97 0 173.97c22.302 25.674 48.359 27.283 48.359 27.283l.077-.076c3.295 5.9 7.127 11.495 11.419 16.783a112 112 0 0 0 5.671 6.362c-8.124 23.298 1.15 42.61 1.15 42.61 24.83.92 41.155-10.882 44.603-13.564a85 85 0 0 0 7.511 2.222 109.7 109.7 0 0 0 23.298 3.449c1.916.076 3.909.153 5.825.076h2.759l1.226-.076v.076c11.726 16.708 32.265 19.084 32.265 19.084 14.638-15.405 15.48-30.733 15.48-34.028v-1.38c3.066-2.145 5.979-4.445 8.738-6.974 5.824-5.288 10.959-11.342 15.25-17.857l1.15-1.839c16.554.92 28.28-10.27 28.28-10.27-2.759-17.243-12.569-25.673-14.638-27.283 0 0-.077-.076-.23-.153s-.153-.153-.153-.153c-.077-.077-.23-.154-.383-.23.076-1.073.153-2.07.23-3.142.153-1.84.153-3.756.153-5.595v-2.913l-.077-1.149-.076-1.533c0-.536-.077-.996-.154-1.456-.076-.46-.076-.996-.153-1.456l-.153-1.456-.23-1.456c-.307-1.916-.613-3.756-1.073-5.672-1.763-7.433-4.675-14.484-8.43-20.845a70.4 70.4 0 0 0-14.025-16.707c-5.365-4.752-11.42-8.584-17.704-11.42-6.36-2.835-12.952-4.675-19.543-5.518-3.295-.46-6.59-.613-9.886-.536h-2.453l-1.226.077c-.46 0-.92.076-1.303.076a52 52 0 0 0-4.981.69c-6.591 1.226-12.799 3.602-18.24 6.897s-10.193 7.358-14.025 11.956a54.7 54.7 0 0 0-8.89 15.021 52.9 52.9 0 0 0-3.525 16.094c-.077 1.303-.077 2.683-.077 3.986v.996l.077 1.073c.076.613.076 1.303.153 1.916.23 2.682.766 5.288 1.456 7.74 1.456 4.982 3.755 9.503 6.59 13.335s6.285 6.975 9.887 9.504c3.602 2.452 7.51 4.215 11.343 5.364 3.832 1.15 7.664 1.61 11.266 1.61h1.993c.23 0 .46 0 .689-.077.383 0 .766-.077 1.15-.077.076 0 .23 0 .306-.076l.383-.077c.23 0 .46-.076.69-.076.46-.077.843-.154 1.303-.23s.843-.154 1.226-.307c.843-.153 1.61-.46 2.376-.69 1.533-.536 3.066-1.15 4.368-1.839 1.38-.69 2.606-1.533 3.832-2.3.307-.23.69-.459.997-.766 1.226-.996 1.456-2.835.46-4.061-.844-1.073-2.376-1.38-3.603-.69l-.92.46a25 25 0 0 1-3.295 1.38c-1.15.382-2.375.689-3.602.919-.613.076-1.226.153-1.916.23-.306 0-.613.076-.996.076h-1.84c-.383 0-.766 0-1.149-.076h-.46c-.153 0-.383 0-.536-.077-.383-.077-.69-.077-1.073-.153-2.836-.383-5.671-1.226-8.354-2.453a29.3 29.3 0 0 1-7.74-5.058c-2.376-2.146-4.445-4.675-6.055-7.587s-2.759-6.131-3.295-9.503c-.23-1.686-.383-3.449-.307-5.135 0-.46.077-.92.077-1.38v-.613c0-.23.077-.46.077-.69.076-.919.23-1.839.383-2.758 1.303-7.358 4.981-14.562 10.653-20.003 1.456-1.38 2.988-2.606 4.598-3.755a31.7 31.7 0 0 1 5.211-2.99 36 36 0 0 1 5.672-2.068c1.915-.537 3.908-.844 5.977-1.073.997-.077 1.993-.154 3.066-.154h2.376l.843.077c2.222.153 4.368.46 6.514.996 4.292.92 8.507 2.53 12.415 4.675 7.818 4.369 14.485 11.113 18.547 19.237 2.07 4.061 3.525 8.43 4.215 12.951.153 1.15.307 2.3.383 3.45l.077.842.077.843v3.296c0 .536-.077 1.456-.077 1.992-.077 1.227-.23 2.53-.383 3.756s-.383 2.452-.613 3.678a50 50 0 0 1-.843 3.602 64 64 0 0 1-2.3 7.128 62.4 62.4 0 0 1-7.204 13.105c-5.9 8.124-13.948 14.715-23.144 18.93-4.599 2.069-9.427 3.602-14.408 4.368-2.453.46-4.982.69-7.511.766h-3.832a36 36 0 0 1-4.062-.23c-5.365-.383-10.653-1.379-15.864-2.835-5.135-1.456-10.116-3.525-14.868-5.978-9.427-5.058-17.933-11.956-24.524-20.31a79 79 0 0 1-8.584-13.334 79 79 0 0 1-5.671-14.638c-1.38-5.058-2.223-10.193-2.606-15.405l-.077-.996v-6.821c.077-2.529.307-5.211.614-7.817.306-2.606.766-5.288 1.302-7.894.537-2.605 1.15-5.211 1.916-7.817a103 103 0 0 1 5.442-14.791c4.368-9.35 10.04-17.704 16.86-24.371 1.686-1.686 3.449-3.22 5.288-4.752a78 78 0 0 1 5.748-4.138c1.916-1.303 3.985-2.453 6.055-3.526a40 40 0 0 1 3.142-1.533l3.219-1.379c2.146-.92 4.368-1.686 6.667-2.376.537-.153 1.15-.306 1.686-.536.537-.154 1.15-.307 1.686-.46 1.15-.307 2.3-.613 3.45-.843.536-.153 1.149-.23 1.762-.383.613-.154 1.15-.23 1.763-.384.613-.076 1.15-.23 1.762-.306l.843-.153.92-.154c.613-.076 1.15-.153 1.763-.23.69-.076 1.302-.153 1.992-.23.537-.076 1.456-.153 1.993-.23.383-.076.843-.076 1.226-.153l.843-.076.383-.077h.46c.69-.077 1.303-.077 1.993-.153l.996-.077h.767c.536 0 1.149-.076 1.685-.076a99 99 0 0 1 6.745 0c4.445.153 8.813.69 13.028 1.456 8.507 1.61 16.478 4.291 23.758 7.893 7.28 3.526 13.719 7.894 19.39 12.646.383.306.69.613 1.073.92.306.306.69.613.996.92.69.612 1.303 1.225 1.993 1.838.69.614 1.303 1.227 1.916 1.84a44 44 0 0 1 1.839 1.916c2.376 2.529 4.598 5.058 6.59 7.664a99 99 0 0 1 9.734 15.25l.46.92.46.92c.306.613.613 1.226.843 1.84.306.613.536 1.149.843 1.762.23.613.536 1.15.766 1.763.92 2.299 1.84 4.521 2.53 6.59 1.149 3.373 1.992 6.362 2.682 8.967a2.043 2.043 0 0 0 2.299 1.61c1.15-.077 1.992-.996 1.992-2.146.077-2.759 0-6.054-.383-9.81"})]}),SJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 346",...e,children:[y.jsx("path",{fill:"#5382A1",d:"M82.554 267.473s-13.198 7.675 9.393 10.272c27.369 3.122 41.356 2.675 71.517-3.034 0 0 7.93 4.972 19.003 9.279-67.611 28.977-153.019-1.679-99.913-16.517M74.292 229.659s-14.803 10.958 7.805 13.296c29.236 3.016 52.324 3.263 92.276-4.43 0 0 5.526 5.602 14.215 8.666-81.747 23.904-172.798 1.885-114.296-17.532"}),y.jsx("path",{fill:"#E76F00",d:"M143.942 165.515c16.66 19.18-4.377 36.44-4.377 36.44s42.301-21.837 22.874-49.183c-18.144-25.5-32.059-38.172 43.268-81.858 0 0-118.238 29.53-61.765 94.6"}),y.jsx("path",{fill:"#5382A1",d:"M233.364 295.442s9.767 8.047-10.757 14.273c-39.026 11.823-162.432 15.393-196.714.471-12.323-5.36 10.787-12.8 18.056-14.362 7.581-1.644 11.914-1.337 11.914-1.337-13.705-9.655-88.583 18.957-38.034 27.15 137.853 22.356 251.292-10.066 215.535-26.195M88.9 190.48s-62.771 14.91-22.228 20.323c17.118 2.292 51.243 1.774 83.03-.89 25.978-2.19 52.063-6.85 52.063-6.85s-9.16 3.923-15.787 8.448c-63.744 16.765-186.886 8.966-151.435-8.183 29.981-14.492 54.358-12.848 54.358-12.848M201.506 253.422c64.8-33.672 34.839-66.03 13.927-61.67-5.126 1.066-7.411 1.99-7.411 1.99s1.903-2.98 5.537-4.27c41.37-14.545 73.187 42.897-13.355 65.647 0 .001 1.003-.895 1.302-1.697"}),y.jsx("path",{fill:"#E76F00",d:"M162.439.371s35.887 35.9-34.037 91.101c-56.071 44.282-12.786 69.53-.023 98.377-32.73-29.53-56.75-55.526-40.635-79.72C111.395 74.612 176.918 57.393 162.439.37"}),y.jsx("path",{fill:"#5382A1",d:"M95.268 344.665c62.199 3.982 157.712-2.209 159.974-31.64 0 0-4.348 11.158-51.404 20.018-53.088 9.99-118.564 8.824-157.399 2.421.001 0 7.95 6.58 48.83 9.201"})]}),EJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 249",...e,children:[y.jsx("path",{fill:"#326DE6",d:"M82.085 244.934c-5.946 0-11.561-2.642-15.36-7.432L8.92 165.657c-3.799-4.79-5.285-10.9-3.799-16.847l20.645-89.682c1.321-5.946 5.285-10.736 10.736-13.378l83.571-39.97c2.643-1.32 5.616-1.981 8.589-1.981s5.945.66 8.588 1.982l83.572 39.804c5.45 2.642 9.414 7.432 10.735 13.378l20.645 89.682c1.322 5.946 0 12.057-3.798 16.847l-57.807 71.845c-3.799 4.624-9.414 7.432-15.36 7.432z"}),y.jsx("path",{fill:"#FFF",d:"M128.495 7.928c2.313 0 4.625.495 6.772 1.486l83.572 39.804c4.294 2.147 7.597 6.111 8.588 10.736l20.645 89.682c1.156 4.79 0 9.745-3.138 13.543l-57.806 71.846c-2.973 3.798-7.598 5.945-12.387 5.945H82.085c-4.79 0-9.414-2.147-12.387-5.945l-57.806-71.846c-2.973-3.798-4.13-8.753-3.138-13.543l20.645-89.682c1.156-4.79 4.294-8.754 8.588-10.736L121.56 9.25c2.147-.826 4.624-1.321 6.936-1.321m0-7.763c-3.468 0-6.936.826-10.24 2.312l-83.571 39.97c-6.607 3.138-11.231 8.918-12.883 16.02L1.156 148.15c-1.651 7.102 0 14.369 4.625 20.15l57.806 71.845c4.46 5.615 11.231 8.753 18.333 8.753h92.655c7.102 0 13.874-3.138 18.333-8.753l57.807-71.846c4.624-5.615 6.276-13.047 4.624-20.15l-20.645-89.682c-1.651-7.102-6.276-12.882-12.882-16.02L138.57 2.476C135.432.991 131.964.165 128.495.165"}),y.jsx("path",{fill:"#FFF",d:"M212.232 142.534q-.248 0 0 0h-.165c-.165 0-.33 0-.33-.165-.33 0-.66-.165-.991-.165-1.156-.165-2.147-.33-3.138-.33-.496 0-.991 0-1.652-.166h-.165c-3.468-.33-6.276-.66-8.919-1.486-1.156-.496-1.486-1.156-1.817-1.817 0-.165-.165-.165-.165-.33l-2.147-.66a65.3 65.3 0 0 0-1.156-23.289 68 68 0 0 0-9.249-21.636l1.652-1.486v-.33c0-.826.165-1.652.825-2.478 1.982-1.817 4.46-3.303 7.433-5.12.495-.33.99-.495 1.486-.826.991-.495 1.817-.99 2.808-1.651.165-.165.495-.33.826-.66.165-.166.33-.166.33-.331 2.312-1.982 2.808-5.285 1.156-7.433-.826-1.156-2.312-1.816-3.799-1.816-1.32 0-2.477.495-3.633 1.321l-.33.33c-.33.165-.496.496-.826.661-.826.826-1.487 1.486-2.147 2.312-.33.33-.66.826-1.156 1.156-2.313 2.478-4.46 4.46-6.607 5.946q-.742.495-1.486.496c-.33 0-.661 0-.991-.166h-.33l-1.983 1.322c-2.147-2.312-4.459-4.294-6.771-6.276a65.96 65.96 0 0 0-34.519-13.709l-.165-2.147-.33-.33c-.496-.496-1.156-.991-1.322-2.147-.165-2.643.166-5.616.496-8.919v-.165c0-.496.165-1.156.33-1.652.165-.99.33-1.982.496-3.138v-1.486c0-2.973-2.313-5.45-5.12-5.45-1.322 0-2.643.66-3.634 1.651-.99.991-1.486 2.312-1.486 3.799v1.321c0 1.156.165 2.147.495 3.138.165.496.165.991.33 1.652v.165c.33 3.303.826 6.276.496 8.919-.165 1.156-.826 1.651-1.321 2.147l-.33.33-.166 2.147c-2.973.33-5.946.66-8.919 1.321-12.717 2.808-23.948 9.25-32.701 18.498l-1.652-1.156h-.33c-.33 0-.661.165-.991.165q-.743 0-1.487-.495c-2.147-1.486-4.294-3.634-6.606-6.111-.33-.33-.66-.826-1.156-1.156-.661-.826-1.322-1.487-2.148-2.312-.165-.166-.495-.33-.825-.661-.165-.165-.33-.165-.33-.33a5.77 5.77 0 0 0-3.634-1.322c-1.487 0-2.973.661-3.799 1.817-1.652 2.147-1.156 5.45 1.156 7.432.165 0 .165.166.33.166.33.165.496.495.826.66.991.66 1.817 1.156 2.808 1.652.496.165.991.495 1.487.826 2.972 1.816 5.45 3.303 7.432 5.12.826.825.826 1.651.826 2.477v.33l1.651 1.487c-.33.495-.66.826-.826 1.321-8.258 13.048-11.396 28.408-9.249 43.603l-2.147.66c0 .166-.165.166-.165.33-.33.661-.826 1.322-1.817 1.817-2.477.826-5.45 1.157-8.918 1.487h-.166c-.495 0-1.156 0-1.651.165-.991 0-1.982.165-3.138.33-.33 0-.66.166-.991.166-.165 0-.33 0-.496.165-2.973.66-4.79 3.468-4.294 6.11.496 2.313 2.643 3.8 5.285 3.8.496 0 .826 0 1.322-.166.165 0 .33 0 .33-.165.33 0 .66-.165.99-.165 1.157-.33 1.983-.66 2.974-1.156.495-.165.99-.496 1.486-.66h.165c3.138-1.157 5.946-2.148 8.589-2.478h.33c.991 0 1.652.495 2.147.826.165 0 .165.165.33.165l2.313-.33c3.964 12.221 11.561 23.122 21.636 31.05 2.312 1.816 4.624 3.303 7.102 4.79l-.991 2.146c0 .166.165.166.165.33.33.661.66 1.487.33 2.643-.99 2.478-2.477 4.955-4.294 7.763v.165c-.33.496-.66.826-.99 1.321-.661.826-1.157 1.652-1.818 2.643-.165.165-.33.495-.495.826 0 .165-.165.33-.165.33-1.321 2.808-.33 5.946 2.147 7.102q.99.496 1.982.496c1.982 0 3.964-1.322 4.955-3.139 0-.165.165-.33.165-.33.165-.33.33-.66.495-.826.496-1.156.661-1.982.991-2.973l.496-1.486c1.156-3.303 1.982-5.946 3.468-8.258.66-.991 1.487-1.156 2.147-1.487.165 0 .165 0 .33-.165l1.157-2.147c7.267 2.808 15.195 4.294 23.122 4.294 4.79 0 9.745-.495 14.37-1.651a73 73 0 0 0 8.588-2.478l.99 1.817c.166 0 .166 0 .331.165.826.165 1.486.496 2.147 1.487 1.321 2.312 2.312 5.12 3.468 8.258v.165l.496 1.486c.33.991.495 1.982.99 2.973.166.33.331.496.496.826 0 .165.166.33.166.33.99 1.982 2.972 3.139 4.954 3.139q.992 0 1.982-.496c1.156-.66 2.147-1.652 2.478-2.973.33-1.321.33-2.808-.33-4.129 0-.165-.166-.165-.166-.33-.165-.33-.33-.66-.495-.826-.496-.991-1.156-1.817-1.817-2.643-.33-.495-.66-.825-.99-1.32v-.166c-1.818-2.808-3.47-5.285-4.295-7.763-.33-1.156 0-1.816.165-2.642 0-.165.165-.165.165-.33l-.826-1.982c8.754-5.12 16.186-12.388 21.802-21.306 2.973-4.625 5.285-9.745 6.936-14.865l1.982.33c.166 0 .166-.165.33-.165.661-.33 1.157-.825 2.148-.825h.33c2.643.33 5.45 1.32 8.589 2.477h.165c.495.165.99.495 1.486.66.991.496 1.817.826 2.973 1.157.33 0 .66.165.991.165.165 0 .33 0 .495.165.496.165.826.165 1.322.165 2.477 0 4.624-1.651 5.285-3.798 0-1.982-1.817-4.625-4.79-5.45m-76.47-8.093-7.267 3.469-7.267-3.469-1.816-7.762 4.954-6.276h8.093l4.955 6.276zm43.108-17.176a52.1 52.1 0 0 1 1.156 16.68l-25.27-7.266c-2.312-.66-3.633-2.973-3.138-5.285.165-.661.496-1.322.991-1.817l19.985-18.003c2.807 4.625 4.954 9.91 6.276 15.69m-14.204-25.6-21.636 15.36c-1.817 1.156-4.295.825-5.781-.991-.495-.496-.66-1.157-.826-1.817l-1.486-26.922a50.13 50.13 0 0 1 29.729 14.37M116.769 78.12c1.817-.33 3.468-.66 5.285-.99l-1.486 26.425c-.165 2.312-1.982 4.294-4.46 4.294-.66 0-1.486-.165-1.982-.495L92.16 91.665c6.772-6.772 15.195-11.397 24.609-13.544m-32.537 23.453 19.654 17.507c1.817 1.487 1.982 4.294.496 6.111-.496.66-1.156 1.156-1.982 1.322l-25.6 7.432c-.991-11.231 1.486-22.627 7.432-32.372m-4.46 44.759 26.262-4.46c2.147-.165 4.129 1.322 4.624 3.469.165.99.165 1.817-.165 2.643l-10.075 24.278c-9.249-5.946-16.681-15.03-20.645-25.93m60.285 32.867c-3.799.826-7.598 1.321-11.562 1.321-5.78 0-11.396-.99-16.68-2.642l13.047-23.618c1.321-1.487 3.468-2.147 5.285-1.156a7 7 0 0 1 1.982 1.816l12.717 22.958c-1.486.495-3.138.826-4.79 1.321m32.206-22.957c-4.129 6.606-9.58 11.891-15.855 16.02l-10.405-24.94c-.496-1.981.33-4.128 2.312-5.12.66-.33 1.486-.495 2.312-.495l26.426 4.46c-.991 3.633-2.643 6.937-4.79 10.075"})]}),CJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 291",...e,children:[y.jsx("path",{fill:"#009639",d:"M2.054 218.187c1.32 2.347 3.227 4.108 5.575 5.428l112.962 65.137c4.695 2.787 10.416 2.787 14.964 0l112.963-65.137c4.695-2.64 7.482-7.629 7.482-13.057V80.284c0-5.428-2.787-10.416-7.482-13.056L135.555 2.09c-4.694-2.788-10.416-2.788-14.964 0L7.63 67.228C2.787 69.868 0 74.856 0 80.284v130.42c0 2.642.587 5.136 2.054 7.483"}),y.jsx("path",{fill:"#FFF",d:"M91.837 195.154a14.463 14.463 0 0 1-14.524 14.524 14.463 14.463 0 0 1-14.523-14.524V95.542c0-7.776 6.895-14.084 16.43-14.084 6.896 0 14.965 2.787 19.806 8.802l4.4 5.282 60.737 72.618V95.835a14.463 14.463 0 0 1 14.524-14.524 14.463 14.463 0 0 1 14.523 14.524v99.613c0 7.775-6.895 14.083-16.43 14.083-6.896 0-14.965-2.787-19.806-8.802l-65.137-77.754z"})]}),$Je=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 264",...e,children:[y.jsx("path",{d:"M255.008 158.086c-1.535-4.649-5.556-7.887-10.756-8.664-2.452-.366-5.26-.21-8.583.475-5.792 1.195-10.089 1.65-13.225 1.738 11.837-19.985 21.462-42.775 27.003-64.228 8.96-34.689 4.172-50.492-1.423-57.64C233.217 10.847 211.614.683 185.552.372c-13.903-.17-26.108 2.575-32.475 4.549-5.928-1.046-12.302-1.63-18.99-1.738-12.537-.2-23.614 2.533-33.079 8.15-5.24-1.772-13.65-4.27-23.362-5.864-22.842-3.75-41.252-.828-54.718 8.685C6.622 25.672-.937 45.684.461 73.634c.444 8.874 5.408 35.874 13.224 61.48 4.492 14.718 9.282 26.94 14.237 36.33 7.027 13.315 14.546 21.156 22.987 23.972 4.731 1.576 13.327 2.68 22.368-4.85 1.146 1.388 2.675 2.767 4.704 4.048 2.577 1.625 5.728 2.953 8.875 3.74 11.341 2.835 21.964 2.126 31.027-1.848.056 1.612.099 3.152.135 4.482.06 2.157.12 4.272.199 6.25.537 13.374 1.447 23.773 4.143 31.049.148.4.347 1.01.557 1.657 1.345 4.118 3.594 11.012 9.316 16.411 5.925 5.593 13.092 7.308 19.656 7.308 3.292 0 6.433-.432 9.188-1.022 9.82-2.105 20.973-5.311 29.041-16.799 7.628-10.86 11.336-27.217 12.007-52.99q.13-1.094.244-2.088l.16-1.362 1.797.158.463.031c10.002.456 22.232-1.665 29.743-5.154 5.935-2.754 24.954-12.795 20.476-26.351"}),y.jsx("path",{fill:"#336791",d:"M237.906 160.722c-29.74 6.135-31.785-3.934-31.785-3.934 31.4-46.593 44.527-105.736 33.2-120.211-30.904-39.485-84.399-20.811-85.292-20.327l-.287.052c-5.876-1.22-12.451-1.946-19.842-2.067-13.456-.22-23.664 3.528-31.41 9.402 0 0-95.43-39.314-90.991 49.444.944 18.882 27.064 142.873 58.218 105.422 11.387-13.695 22.39-25.274 22.39-25.274 5.464 3.63 12.006 5.482 18.864 4.817l.533-.452c-.166 1.7-.09 3.363.213 5.332-8.026 8.967-5.667 10.541-21.711 13.844-16.235 3.346-6.698 9.302-.471 10.86 7.549 1.887 25.013 4.561 36.813-11.958l-.47 1.885c3.144 2.519 5.352 16.383 4.982 28.952-.37 12.568-.617 21.197 1.86 27.937 2.479 6.74 4.948 21.905 26.04 17.386 17.623-3.777 26.756-13.564 28.027-29.89.901-11.606 2.942-9.89 3.07-20.267l1.637-4.912c1.887-15.733.3-20.809 11.157-18.448l2.64.232c7.99.363 18.45-1.286 24.589-4.139 13.218-6.134 21.058-16.377 8.024-13.686z"}),y.jsx("path",{fill:"#FFF",d:"M108.076 81.525c-2.68-.373-5.107-.028-6.335.902-.69.523-.904 1.129-.962 1.546-.154 1.105.62 2.327 1.096 2.957 1.346 1.784 3.312 3.01 5.258 3.28q.423.059.842.058c3.245 0 6.196-2.527 6.456-4.392.325-2.336-3.066-3.893-6.355-4.35M196.86 81.599c-.256-1.831-3.514-2.353-6.606-1.923-3.088.43-6.082 1.824-5.832 3.659.2 1.427 2.777 3.863 5.827 3.863q.387 0 .78-.054c2.036-.282 3.53-1.575 4.24-2.32 1.08-1.136 1.706-2.402 1.591-3.225"}),y.jsx("path",{fill:"#FFF",d:"M247.802 160.025c-1.134-3.429-4.784-4.532-10.848-3.28-18.005 3.716-24.453 1.142-26.57-.417 13.995-21.32 25.508-47.092 31.719-71.137 2.942-11.39 4.567-21.968 4.7-30.59.147-9.463-1.465-16.417-4.789-20.665-13.402-17.125-33.072-26.311-56.882-26.563-16.369-.184-30.199 4.005-32.88 5.183-5.646-1.404-11.801-2.266-18.502-2.376-12.288-.199-22.91 2.743-31.704 8.74-3.82-1.422-13.692-4.811-25.765-6.756-20.872-3.36-37.458-.814-49.294 7.571-14.123 10.006-20.643 27.892-19.38 53.16.425 8.501 5.269 34.653 12.913 59.698 10.062 32.964 21 51.625 32.508 55.464 1.347.449 2.9.763 4.613.763 4.198 0 9.345-1.892 14.7-8.33a530 530 0 0 1 20.261-22.926c4.524 2.428 9.494 3.784 14.577 3.92q.016.2.035.398a118 118 0 0 0-2.57 3.175c-3.522 4.471-4.255 5.402-15.592 7.736-3.225.666-11.79 2.431-11.916 8.435-.136 6.56 10.125 9.315 11.294 9.607 4.074 1.02 7.999 1.523 11.742 1.523 9.103 0 17.114-2.992 23.516-8.781-.197 23.386.778 46.43 3.586 53.451 2.3 5.748 7.918 19.795 25.664 19.794 2.604 0 5.47-.303 8.623-.979 18.521-3.97 26.564-12.156 29.675-30.203 1.665-9.645 4.522-32.676 5.866-45.03 2.836.885 6.487 1.29 10.434 1.289 8.232 0 17.731-1.749 23.688-4.514 6.692-3.108 18.768-10.734 16.578-17.36m-44.106-83.48c-.061 3.647-.563 6.958-1.095 10.414-.573 3.717-1.165 7.56-1.314 12.225-.147 4.54.42 9.26.968 13.825 1.108 9.22 2.245 18.712-2.156 28.078a37 37 0 0 1-1.95-4.009c-.547-1.326-1.735-3.456-3.38-6.404-6.399-11.476-21.384-38.35-13.713-49.316 2.285-3.264 8.084-6.62 22.64-4.813m-17.644-61.787c21.334.471 38.21 8.452 50.158 23.72 9.164 11.711-.927 64.998-30.14 110.969a171 171 0 0 0-.886-1.117l-.37-.462c7.549-12.467 6.073-24.802 4.759-35.738-.54-4.488-1.05-8.727-.92-12.709.134-4.22.692-7.84 1.232-11.34.663-4.313 1.338-8.776 1.152-14.037.139-.552.195-1.204.122-1.978-.475-5.045-6.235-20.144-17.975-33.81-6.422-7.475-15.787-15.84-28.574-21.482 5.5-1.14 13.021-2.203 21.442-2.016M66.674 175.778c-5.9 7.094-9.974 5.734-11.314 5.288-8.73-2.912-18.86-21.364-27.791-50.624-7.728-25.318-12.244-50.777-12.602-57.916-1.128-22.578 4.345-38.313 16.268-46.769 19.404-13.76 51.306-5.524 64.125-1.347-.184.182-.376.352-.558.537-21.036 21.244-20.537 57.54-20.485 59.759-.002.856.07 2.068.168 3.735.362 6.105 1.036 17.467-.764 30.334-1.672 11.957 2.014 23.66 10.111 32.109a36 36 0 0 0 2.617 2.468c-3.604 3.86-11.437 12.396-19.775 22.426m22.479-29.993c-6.526-6.81-9.49-16.282-8.133-25.99 1.9-13.592 1.199-25.43.822-31.79-.053-.89-.1-1.67-.127-2.285 3.073-2.725 17.314-10.355 27.47-8.028 4.634 1.061 7.458 4.217 8.632 9.645 6.076 28.103.804 39.816-3.432 49.229-.873 1.939-1.698 3.772-2.402 5.668l-.546 1.466c-1.382 3.706-2.668 7.152-3.465 10.424-6.938-.02-13.687-2.984-18.819-8.34m1.065 37.9c-2.026-.506-3.848-1.385-4.917-2.114.893-.42 2.482-.992 5.238-1.56 13.337-2.745 15.397-4.683 19.895-10.394 1.031-1.31 2.2-2.794 3.819-4.602l.002-.002c2.411-2.7 3.514-2.242 5.514-1.412 1.621.67 3.2 2.702 3.84 4.938.303 1.056.643 3.06-.47 4.62-9.396 13.156-23.088 12.987-32.921 10.526m69.799 64.952c-16.316 3.496-22.093-4.829-25.9-14.346-2.457-6.144-3.665-33.85-2.808-64.447.011-.407-.047-.8-.159-1.17a15.4 15.4 0 0 0-.456-2.162c-1.274-4.452-4.379-8.176-8.104-9.72-1.48-.613-4.196-1.738-7.46-.903.696-2.868 1.903-6.107 3.212-9.614l.549-1.475c.618-1.663 1.394-3.386 2.214-5.21 4.433-9.848 10.504-23.337 3.915-53.81-2.468-11.414-10.71-16.988-23.204-15.693-7.49.775-14.343 3.797-17.761 5.53-.735.372-1.407.732-2.035 1.082.954-11.5 4.558-32.992 18.04-46.59 8.489-8.56 19.794-12.788 33.568-12.56 27.14.444 44.544 14.372 54.366 25.979 8.464 10.001 13.047 20.076 14.876 25.51-13.755-1.399-23.11 1.316-27.852 8.096-10.317 14.748 5.644 43.372 13.315 57.129 1.407 2.521 2.621 4.7 3.003 5.626 2.498 6.054 5.732 10.096 8.093 13.046.724.904 1.426 1.781 1.96 2.547-4.166 1.201-11.649 3.976-10.967 17.847-.55 6.96-4.461 39.546-6.448 51.059-2.623 15.21-8.22 20.875-23.957 24.25m68.104-77.936c-4.26 1.977-11.389 3.46-18.161 3.779-7.48.35-11.288-.838-12.184-1.569-.42-8.644 2.797-9.547 6.202-10.503.535-.15 1.057-.297 1.561-.473q.469.383 1.032.756c6.012 3.968 16.735 4.396 31.874 1.271l.166-.033c-2.042 1.909-5.536 4.471-10.49 6.772"})]}),RJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 257",...e,children:y.jsx("path",{fill:"#DA4E31",d:"M128.001.667C57.311.667 0 57.971 0 128.664c0 70.69 57.311 127.998 128.001 127.998S256 199.354 256 128.664C256 57.97 198.689.667 128.001.667m0 239.56c-20.112 0-36.419-13.435-36.419-30.004h72.838c0 16.566-16.306 30.004-36.419 30.004m60.153-39.94H67.842V178.47h120.314v21.816zm-.432-33.045H68.185c-.398-.458-.804-.91-1.188-1.375-12.315-14.954-15.216-22.76-18.032-30.716-.048-.262 14.933 3.06 25.556 5.45 0 0 5.466 1.265 13.458 2.722-7.673-8.994-12.23-20.428-12.23-32.116 0-25.658 19.68-48.079 12.58-66.201 6.91.562 14.3 14.583 14.8 36.505 7.346-10.152 10.42-28.69 10.42-40.056 0-11.769 7.755-25.44 15.512-25.907-6.915 11.396 1.79 21.165 9.53 45.4 2.902 9.103 2.532 24.423 4.772 34.138.744-20.178 4.213-49.62 17.014-59.784-5.647 12.8.836 28.818 5.27 36.518 7.154 12.424 11.49 21.836 11.49 39.638 0 11.936-4.407 23.173-11.84 31.958 8.452-1.586 14.289-3.016 14.289-3.016l27.45-5.355c.002-.002-3.987 16.401-19.314 32.197"})}),zJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 228",...e,children:y.jsx("path",{fill:"#00D8FF",d:"M210.483 73.824a172 172 0 0 0-8.24-2.597c.465-1.9.893-3.777 1.273-5.621 6.238-30.281 2.16-54.676-11.769-62.708-13.355-7.7-35.196.329-57.254 19.526a171 171 0 0 0-6.375 5.848 156 156 0 0 0-4.241-3.917C100.759 3.829 77.587-4.822 63.673 3.233 50.33 10.957 46.379 33.89 51.995 62.588a171 171 0 0 0 1.892 8.48c-3.28.932-6.445 1.924-9.474 2.98C17.309 83.498 0 98.307 0 113.668c0 15.865 18.582 31.778 46.812 41.427a146 146 0 0 0 6.921 2.165 168 168 0 0 0-2.01 9.138c-5.354 28.2-1.173 50.591 12.134 58.266 13.744 7.926 36.812-.22 59.273-19.855a146 146 0 0 0 5.342-4.923 168 168 0 0 0 6.92 6.314c21.758 18.722 43.246 26.282 56.54 18.586 13.731-7.949 18.194-32.003 12.4-61.268a145 145 0 0 0-1.535-6.842c1.62-.48 3.21-.974 4.76-1.488 29.348-9.723 48.443-25.443 48.443-41.52 0-15.417-17.868-30.326-45.517-39.844m-6.365 70.984c-1.4.463-2.836.91-4.3 1.345-3.24-10.257-7.612-21.163-12.963-32.432 5.106-11 9.31-21.767 12.459-31.957 2.619.758 5.16 1.557 7.61 2.4 23.69 8.156 38.14 20.213 38.14 29.504 0 9.896-15.606 22.743-40.946 31.14m-10.514 20.834c2.562 12.94 2.927 24.64 1.23 33.787-1.524 8.219-4.59 13.698-8.382 15.893-8.067 4.67-25.32-1.4-43.927-17.412a157 157 0 0 1-6.437-5.87c7.214-7.889 14.423-17.06 21.459-27.246 12.376-1.098 24.068-2.894 34.671-5.345q.785 3.162 1.386 6.193M87.276 214.515c-7.882 2.783-14.16 2.863-17.955.675-8.075-4.657-11.432-22.636-6.853-46.752a157 157 0 0 1 1.869-8.499c10.486 2.32 22.093 3.988 34.498 4.994 7.084 9.967 14.501 19.128 21.976 27.15a135 135 0 0 1-4.877 4.492c-9.933 8.682-19.886 14.842-28.658 17.94M50.35 144.747c-12.483-4.267-22.792-9.812-29.858-15.863-6.35-5.437-9.555-10.836-9.555-15.216 0-9.322 13.897-21.212 37.076-29.293 2.813-.98 5.757-1.905 8.812-2.773 3.204 10.42 7.406 21.315 12.477 32.332-5.137 11.18-9.399 22.249-12.634 32.792a135 135 0 0 1-6.318-1.979m12.378-84.26c-4.811-24.587-1.616-43.134 6.425-47.789 8.564-4.958 27.502 2.111 47.463 19.835a144 144 0 0 1 3.841 3.545c-7.438 7.987-14.787 17.08-21.808 26.988-12.04 1.116-23.565 2.908-34.161 5.309a160 160 0 0 1-1.76-7.887m110.427 27.268a348 348 0 0 0-7.785-12.803c8.168 1.033 15.994 2.404 23.343 4.08-2.206 7.072-4.956 14.465-8.193 22.045a381 381 0 0 0-7.365-13.322m-45.032-43.861c5.044 5.465 10.096 11.566 15.065 18.186a322 322 0 0 0-30.257-.006c4.974-6.559 10.069-12.652 15.192-18.18M82.802 87.83a323 323 0 0 0-7.227 13.238c-3.184-7.553-5.909-14.98-8.134-22.152 7.304-1.634 15.093-2.97 23.209-3.984a322 322 0 0 0-7.848 12.897m8.081 65.352c-8.385-.936-16.291-2.203-23.593-3.793 2.26-7.3 5.045-14.885 8.298-22.6a321 321 0 0 0 7.257 13.246c2.594 4.48 5.28 8.868 8.038 13.147m37.542 31.03c-5.184-5.592-10.354-11.779-15.403-18.433 4.902.192 9.899.29 14.978.29 5.218 0 10.376-.117 15.453-.343-4.985 6.774-10.018 12.97-15.028 18.486m52.198-57.817c3.422 7.8 6.306 15.345 8.596 22.52-7.422 1.694-15.436 3.058-23.88 4.071a382 382 0 0 0 7.859-13.026 347 347 0 0 0 7.425-13.565m-16.898 8.101a359 359 0 0 1-12.281 19.815 329 329 0 0 1-23.444.823c-7.967 0-15.716-.248-23.178-.732a310 310 0 0 1-12.513-19.846h.001a307 307 0 0 1-10.923-20.627 310 310 0 0 1 10.89-20.637l-.001.001a307 307 0 0 1 12.413-19.761c7.613-.576 15.42-.876 23.31-.876H128c7.926 0 15.743.303 23.354.883a329 329 0 0 1 12.335 19.695 359 359 0 0 1 11.036 20.54 330 330 0 0 1-11 20.722m22.56-122.124c8.572 4.944 11.906 24.881 6.52 51.026q-.518 2.504-1.15 5.09c-10.622-2.452-22.155-4.275-34.23-5.408-7.034-10.017-14.323-19.124-21.64-27.008a161 161 0 0 1 5.888-5.4c18.9-16.447 36.564-22.941 44.612-18.3M128 90.808c12.625 0 22.86 10.235 22.86 22.86s-10.235 22.86-22.86 22.86-22.86-10.235-22.86-22.86 10.235-22.86 22.86-22.86"})}),TJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 220",...e,children:[y.jsx("path",{fill:"#912626",d:"M245.97 168.943c-13.662 7.121-84.434 36.22-99.501 44.075s-23.437 7.78-35.34 2.09c-11.902-5.69-87.216-36.112-100.783-42.597C3.566 169.271 0 166.535 0 163.951v-25.876s98.05-21.345 113.879-27.024c15.828-5.679 21.32-5.884 34.79-.95 13.472 4.936 94.018 19.468 107.331 24.344l-.006 25.51c.002 2.558-3.07 5.364-10.024 8.988"}),y.jsx("path",{fill:"#C6302B",d:"M245.965 143.22c-13.661 7.118-84.431 36.218-99.498 44.072-15.066 7.857-23.436 7.78-35.338 2.09-11.903-5.686-87.214-36.113-100.78-42.594-13.566-6.485-13.85-10.948-.524-16.166 13.326-5.22 88.224-34.605 104.055-40.284 15.828-5.677 21.319-5.884 34.789-.948 13.471 4.934 83.819 32.935 97.13 37.81 13.316 4.881 13.827 8.9.166 16.02"}),y.jsx("path",{fill:"#912626",d:"M245.97 127.074c-13.662 7.122-84.434 36.22-99.501 44.078-15.067 7.853-23.437 7.777-35.34 2.087-11.903-5.687-87.216-36.112-100.783-42.597C3.566 127.402 0 124.67 0 122.085V96.206s98.05-21.344 113.879-27.023c15.828-5.679 21.32-5.885 34.79-.95C162.142 73.168 242.688 87.697 256 92.574l-.006 25.513c.002 2.557-3.07 5.363-10.024 8.987"}),y.jsx("path",{fill:"#C6302B",d:"M245.965 101.351c-13.661 7.12-84.431 36.218-99.498 44.075-15.066 7.854-23.436 7.777-35.338 2.087-11.903-5.686-87.214-36.112-100.78-42.594-13.566-6.483-13.85-10.947-.524-16.167C23.151 83.535 98.05 54.148 113.88 48.47c15.828-5.678 21.319-5.884 34.789-.949 13.471 4.934 83.819 32.933 97.13 37.81 13.316 4.88 13.827 8.9.166 16.02"}),y.jsx("path",{fill:"#912626",d:"M245.97 83.653c-13.662 7.12-84.434 36.22-99.501 44.078-15.067 7.854-23.437 7.777-35.34 2.087-11.903-5.687-87.216-36.113-100.783-42.595C3.566 83.98 0 81.247 0 78.665v-25.88s98.05-21.343 113.879-27.021c15.828-5.68 21.32-5.884 34.79-.95C162.142 29.749 242.688 44.278 256 49.155l-.006 25.512c.002 2.555-3.07 5.361-10.024 8.986"}),y.jsx("path",{fill:"#C6302B",d:"M245.965 57.93c-13.661 7.12-84.431 36.22-99.498 44.074-15.066 7.854-23.436 7.777-35.338 2.09C99.227 98.404 23.915 67.98 10.35 61.497S-3.5 50.55 9.825 45.331C23.151 40.113 98.05 10.73 113.88 5.05c15.828-5.679 21.319-5.883 34.789-.948s83.819 32.934 97.13 37.811c13.316 4.876 13.827 8.897.166 16.017"}),y.jsx("path",{fill:"#FFF",d:"m159.283 32.757-22.01 2.285-4.927 11.856-7.958-13.23-25.415-2.284 18.964-6.839-5.69-10.498 17.755 6.944 16.738-5.48-4.524 10.855zM131.032 90.275 89.955 73.238l58.86-9.035zM74.082 39.347c17.375 0 31.46 5.46 31.46 12.194 0 6.736-14.085 12.195-31.46 12.195s-31.46-5.46-31.46-12.195c0-6.734 14.085-12.194 31.46-12.194"}),y.jsx("path",{fill:"#621B1C",d:"m185.295 35.998 34.836 13.766-34.806 13.753z"}),y.jsx("path",{fill:"#9A2928",d:"m146.755 51.243 38.54-15.245.03 27.519-3.779 1.478z"})]}),jJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 258",...e,children:y.jsxs("g",{fill:"#FFA64D",children:[y.jsx("path",{d:"M13.222 183.045C30.007 165.978 244.278 4.782 247.936 8.44c2.813 2.813-156.507 219.616-173.387 236.589s-44.26 16.785-61.14-.282c-16.972-17.066-16.972-44.73-.187-61.702",opacity:.5}),y.jsx("path",{d:"M22.693 175.45c20.63-12.098 230.119-95.18 232.65-90.68 1.97 3.47-168.79 154.538-189.514 166.541-20.63 12.003-46.98 4.783-58.89-16.222-11.909-20.818-4.876-47.543 15.754-59.64",opacity:.3}),y.jsx("path",{d:"M82.051 235.276C94.054 214.46 176.387 3.47 171.98.938 168.51-1.032 18.661 171.042 6.658 191.859c-11.91 20.818-4.689 47.356 16.129 59.265C43.51 263.127 70.048 256 82.05 235.276",opacity:.3}),y.jsx("path",{d:"M32.727 171.042c23.068-6.283 216.521-30.195 217.928-25.225 1.031 3.845-172.73 103.431-195.798 109.714s-46.699-7.595-52.794-30.945 7.69-47.261 30.664-53.544",opacity:.2}),y.jsx("path",{d:"M32.727 171.042c23.068-6.283 179.387 29.07 180.7 33.946 1.032 3.844-135.595 44.167-158.664 50.45-23.068 6.282-46.699-7.596-52.794-30.946-6.001-23.255 7.783-47.167 30.758-53.45",opacity:.1}),y.jsx("path",{d:"M86.459 225.055c6.282-23.256-28.882-180.7-33.852-182.013C48.762 42.01 8.815 179.575 2.626 202.83c-6.19 23.255 7.595 47.074 30.757 53.075 23.068 6.19 46.887-7.595 53.076-30.851",opacity:.1}),y.jsx("path",{d:"M86.459 225.055C92.74 201.799 116.372 6.939 111.496 5.626 107.651 4.595 8.908 179.576 2.626 202.925-3.564 226.18 10.22 249.999 33.383 256c23.068 6.189 46.887-7.69 53.076-30.945",opacity:.2})]})}),AJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 256",...e,children:[y.jsx("path",{fill:"#85EA2D",d:"M127.999 249.895c-67.215 0-121.9-54.68-121.9-121.896S60.785 6.102 128 6.102c67.214 0 121.899 54.685 121.899 121.9 0 67.214-54.685 121.893-121.9 121.893"}),y.jsx("path",{fill:"#173647",d:"M127.999 12.202c63.954 0 115.797 51.842 115.797 115.797 0 63.952-51.843 115.797-115.797 115.797-63.952 0-115.797-51.845-115.797-115.797S64.047 12.202 127.999 12.202m0-12.202C57.419 0 0 57.42 0 127.999s57.42 127.998 127.999 127.998S256 198.577 256 128C256 57.419 198.578 0 127.999 0"}),y.jsx("path",{fill:"#173647",d:"M80.598 86.619c-.394 4.38.146 8.909-.146 13.338-.345 4.431-.887 8.811-1.773 13.192-1.23 6.25-5.12 10.976-10.482 14.914 10.436 6.793 11.616 17.324 12.304 28.006.345 5.76.197 11.567.788 17.276.443 4.429 2.165 5.562 6.745 5.708 1.87.048 3.786 0 5.956 0v13.683c-13.535 2.313-24.708-1.525-27.467-12.992-.887-4.184-1.478-8.467-1.673-12.798-.297-4.578.195-9.155-.148-13.732-.985-12.553-2.61-16.785-14.618-17.376v-15.602a24 24 0 0 1 2.608-.443c6.596-.345 9.4-2.364 10.828-8.86.69-3.641 1.084-7.333 1.23-11.074.494-7.136.297-14.42 1.525-21.507C67.997 68.163 74.3 63.24 84.785 62.65c2.952-.149 5.955 0 9.35 0v13.98c-1.427.1-2.658.294-3.937.294-8.515-.297-8.96 2.607-9.6 9.695m16.39 32.386h-.196c-4.923-.245-9.155 3.593-9.403 8.515-.246 4.972 3.592 9.206 8.515 9.45h.59c4.875.296 9.056-3.447 9.352-8.319v-.491c.1-4.971-3.886-9.055-8.857-9.155m30.862 0c-4.774-.148-8.763 3.593-8.909 8.318 0 .297 0 .543.051.837 0 5.365 3.641 8.812 9.155 8.812 5.414 0 8.812-3.544 8.812-9.106-.051-5.366-3.646-8.91-9.109-8.86m31.602 0c-5.02-.1-9.206 3.89-9.352 8.91a9.03 9.03 0 0 0 9.055 9.054h.1c4.528.788 9.106-3.592 9.402-8.858.243-4.874-4.186-9.106-9.205-9.106m43.363.737c-5.711-.245-8.567-2.164-9.992-7.581a55 55 0 0 1-1.624-10.582c-.395-6.596-.346-13.241-.789-19.837-1.033-15.651-12.352-21.114-28.794-18.41V76.92c2.607 0 4.626 0 6.645.049 3.495.048 6.153 1.379 6.496 5.268.345 3.543.345 7.136.69 10.73.692 7.139 1.083 14.372 2.314 21.41 1.085 5.809 5.07 10.14 10.04 13.684-8.71 5.857-11.27 14.223-11.714 23.626-.245 6.448-.394 12.944-.736 19.443-.297 5.905-2.362 7.824-8.318 7.972-1.674.05-3.298.198-5.169.297v13.93c3.495 0 6.694.196 9.892 0 9.942-.592 15.947-5.415 17.918-15.063a126 126 0 0 0 1.476-16.045c.343-4.923.297-9.894.788-14.766.737-7.63 4.232-10.78 11.862-11.27.739-.1 1.427-.246 2.118-.492v-15.604c-1.282-.149-2.17-.295-3.103-.346"})]}),DJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 123",...e,children:[y.jsx("path",{d:"M207.785 45.398c15.276 0 18.696 8.908 18.696 19.188v10.239H199.86v2.457c.102 5.693 2.15 7.945 9.399 7.945a50 50 0 0 0 14.58-2.252l1.863 9.01a51.2 51.2 0 0 1-17.528 3.03c-14.97 0-20.17-6.942-20.17-18.43V63.993c0-10.075 4.504-18.594 19.78-18.594m100.38-.02c14.97 0 19.392 5.283 19.392 17.222l-.04 31.432h-9.789l-.88-3.235a26.06 26.06 0 0 1-14.191 4.218c-8.703 0-12.43-5.98-12.43-14.19 0-9.686 4.218-13.413 13.904-13.413h11.447v-4.997c0-5.283-1.474-7.146-9.113-7.146-4.443.049-8.866.544-13.208 1.474l-1.474-9.112a62.4 62.4 0 0 1 16.382-2.253m79.35 0c16.341 0 20.744 9.01 20.744 18.798v12.041c.02 9.788-4.403 18.798-20.744 18.798-16.382 0-20.743-9.01-20.743-18.798v-12.04c0-9.789 4.402-18.799 20.743-18.799M198.017 28.832v10.874h-18.225v54.326h-12.286l-.041-54.326H149.26V28.832zm157.205-3.911c3.46-.012 6.905.45 10.239 1.372l-1.25 9.194a35 35 0 0 0-6.86-.778c-4.688 0-5.385 2.048-5.385 5.673v5.979h12.143l-.675 9.501h-11.447v38.17h-11.939v-38.17h-7.638v-9.501h7.638v-6.655c0-9.89 4.608-14.785 15.174-14.785M482.04 50.477a46.8 46.8 0 0 1 19.187-5.099c7.925 0 10.772 5.57 10.772 14.089v34.565h-11.939V60.757c0-2.54-1.085-3.81-3.809-3.81a31.6 31.6 0 0 0-12.43 4.096v32.99H471.8V60.756c0-2.54-1.085-3.81-3.808-3.81-4.376.52-8.601 1.913-12.43 4.096v32.99h-11.939V46.36h9.113l1.167 4.095a47.7 47.7 0 0 1 19.126-5.078 9.05 9.05 0 0 1 9.01 5.099m-224.863-5.099 1.229 10.976a94 94 0 0 0-12.676 6.942v30.716h-11.938V46.361h10.075l.778 5.283a53.5 53.5 0 0 1 12.532-6.266m29.201 0 1.188 10.976a94 94 0 0 0-12.635 6.942v30.716h-11.938V46.361h10.075l.778 5.283a53.5 53.5 0 0 1 12.532-6.266m151.43 0 1.188 10.976a94 94 0 0 0-12.634 6.942v30.716h-11.938V46.361h10.074l.779 5.283a53.4 53.4 0 0 1 12.532-6.266m-122.23 30.634h-8.804c-3.912 0-4.997 1.086-4.997 4.69s1.085 4.791 4.792 4.791a18.8 18.8 0 0 0 9.01-2.457zm71.938-20.457c-6.368 0-8.805 2.847-8.805 8.191v12.82c0 5.385 2.457 8.19 8.805 8.19s8.805-2.846 8.805-8.19V63.786c0-5.385-2.436-8.232-8.805-8.232m-179.628-.389c-5.877 0-7.925 3.133-7.925 7.638v2.417h15.174v-2.417c0-4.505-1.372-7.638-7.249-7.638"}),y.jsx("path",{fill:"#4040B2",d:"M74.538 79.821 108.12 60.45V21.645L74.538 41.057z"}),y.jsx("path",{fill:"#5C4EE5",d:"m37.269 21.645 33.583 19.412v38.764L37.269 60.43M0 38.784l33.583 19.392V19.392L0 0m37.269 103.473 33.583 19.392V84.08L37.269 64.688"})]});const MJe={"tech:docker":yJe,"tech:elasticsearch":vJe,"tech:electron":bJe,"tech:git":xJe,"tech:github":wJe,"tech:go":kJe,"tech:grafana":_Je,"tech:java":SJe,"tech:kubernetes":EJe,"tech:nginx":CJe,"tech:postgresql":$Je,"tech:prometheus":RJe,"tech:react":zJe,"tech:redis":TJe,"tech:spark":jJe,"tech:swagger":AJe,"tech:terraform":DJe};function NJe(e){const r=MJe[e.node.icon??""];return r?y.jsx(r,e):null}function PJe(e,r,n){let o=i=>e(i,...r);return n===void 0?o:Object.assign(o,{lazy:n,lazyArgs:r})}function Jre(e,r,n){let o=e.length-r.length;if(o===0)return e(...r);if(o===1)return PJe(e,r,n);throw Error("Wrong number of arguments")}function BJe(...e){return Jre(IJe,e)}function IJe(e,r){let n={};for(let[o,i]of Object.entries(e))n[o]=r(i,o,e);return n}function ene(...e){return Jre(z0,e)}function z0(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||typeof r!="object"||e===null||r===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(r))return!1;if(Array.isArray(e))return OJe(e,r);if(e instanceof Map)return LJe(e,r);if(e instanceof Set)return FJe(e,r);if(e instanceof Date)return e.getTime()===r.getTime();if(e instanceof RegExp)return e.toString()===r.toString();if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let[n,o]of Object.entries(e))if(!(n in r)||!z0(o,r[n]))return!1;return!0}function OJe(e,r){if(e.length!==r.length)return!1;for(let[n,o]of e.entries())if(!z0(o,r[n]))return!1;return!0}function LJe(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e.entries())if(!r.has(n)||!z0(o,r.get(n)))return!1;return!0}function FJe(e,r){if(e.size!==r.size)return!1;let n=[...r];for(let o of e){let i=!1;for(let[a,l]of n.entries())if(z0(o,l)){i=!0,n.splice(a,1);break}if(!i)return!1}return!0}let gl=[],Fd=0;const m4=4;let g4=0;const tne=e=>{let r=[],n={get(){return n.lc||n.listen(()=>{})(),n.value},lc:0,listen(o){return n.lc=r.push(o),()=>{for(let a=Fd+m4;a(e.events=e.events||{},e.events[n+v4]||(e.events[n+v4]=o(i=>{e.events[n].reduceRight((a,l)=>(l(a),a),{shared:{},...i})})),e.events[n]=e.events[n]||[],e.events[n].push(r),()=>{let i=e.events[n],a=i.indexOf(r);i.splice(a,1),i.length||(delete e.events[n],e.events[n+v4](),delete e.events[n+v4])}),HJe=1e3,UJe=(e,r)=>qJe(e,n=>{let o=r(n);o&&e.events[y4].push(o)},VJe,n=>{let o=e.listen;e.listen=(...a)=>(!e.lc&&!e.active&&(e.active=!0,n()),o(...a));let i=e.off;return e.events[y4]=[],e.off=()=>{i(),setTimeout(()=>{if(e.active&&!e.lc){e.active=!1;for(let a of e.events[y4])a();e.events[y4]=[]}},HJe)},()=>{e.listen=o,e.off=i}}),WJe=(e,r,n)=>{Array.isArray(e)||(e=[e]);let o,i,a=()=>{if(i===g4)return;i=g4;let d=e.map(u=>u.get());if(!o||d.some((u,p)=>u!==o[p])){o=d;let u=r(...d);u&&u.then&&u.t?u.then(p=>{o===d&&l.set(p)}):(l.set(u),i=g4)}},l=tne(void 0),s=l.get;l.get=()=>(a(),s());let c=a;return UJe(l,()=>{let d=e.map(u=>u.listen(c));return a(),()=>{for(let u of d)u()}}),l};const rne=(e,r)=>WJe(e,r);function GJe(e,r,n){let o=new Set(r).add(void 0);return e.listen((i,a,l)=>{o.has(l)&&n(i,a,l)})}let Cz=(e,r)=>n=>{e.current!==n&&(e.current=n,r())};function nne(e,{keys:r,deps:n=[e,r]}={}){let o=S.useRef();o.current=e.get();let i=S.useCallback(l=>(Cz(o,l)(e.value),r?.length>0?GJe(e,r,Cz(o,l)):e.listen(Cz(o,l))),n),a=()=>o.current;return S.useSyncExternalStore(i,a,a)}const YJe=e=>{const r=rne(e,s=>Fu.create(s));function n(s){const c=e.get();if(ene(c,s))return;const d={...s,views:BJe(s.views,u=>{const p=c.views[u.id];return ene(p,u)?p:u})};e.set(d)}const o=rne(e,s=>Object.values(s.views));function i(){return nne(r)}function a(){return nne(o)}function l(s){const[c,d]=S.useState(e.value?.views[s]??null);return S.useEffect(()=>e.subscribe(u=>{d(u.views[s]??null)}),[s]),c}return{updateModel:n,$likec4model:r,useLikeC4Model:i,useLikeC4Views:a,useLikeC4View:l}},XJe=tne({_stage:"layouted",projectId:"architecture",project:{id:"architecture",title:"architecture"},specification:{tags:{internal:{color:"tomato"}},elements:{actor:{style:{shape:"person",color:"green"}},person:{style:{shape:"person",color:"green"}},component:{style:{}},container:{style:{opacity:20}},internalComponent:{style:{color:"muted",opacity:15}},schema:{style:{}},step:{style:{}},system:{style:{}},workflow:{style:{}},tool:{style:{}},process:{style:{}},repository:{style:{shape:"storage"}}},relationships:{},deployments:{cloud:{style:{}},environment:{style:{}},computeressource:{style:{}},paas:{style:{}},kubernetes:{style:{}},cluster:{style:{}},namespace:{style:{}}},customColors:{magenta:{elements:{fill:"#b100ff",stroke:"#9e00e4",hiContrast:"#ffffff",loContrast:"#fff2ff"},relationships:{line:"#c137fe",label:"#d064ff",labelBg:"#7a00b3"}}}},elements:{edfbuilder_workflow:{style:{},title:"EDFbuilder",kind:"workflow",id:"edfbuilder_workflow"},argocdworkflow:{style:{},title:"EDP ArgoCD Setup Workflow",kind:"workflow",id:"argocdworkflow"},edpworkflow:{style:{},title:"EDP Infrastructure Setup Workflow",kind:"workflow",id:"edpworkflow"},applicationspecification:{style:{},description:{txt:"The application specification describes the application and its components. It is used to generate the application and its components."},title:"application-specification",kind:"component",id:"applicationspecification"},forgejoRunner:{style:{},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},title:"Forgejo Runner",kind:"component",id:"forgejoRunner"},forgejoRunnerWorker:{style:{},description:{txt:"A worker is a service that runs a job invoked by a runner. A worker typically is a container."},title:"Forgejo Runner Worker",kind:"component",id:"forgejoRunnerWorker"},promtail:{style:{},description:{txt:"Log shipper agent for Loki"},title:"Promtail",kind:"component",id:"promtail"},edfbuilder:{style:{shape:"rectangle",icon:"tech:go"},technology:"Golang",description:{txt:"EDP Foundry Builder"},title:"edfbuilder",kind:"component",id:"edfbuilder"},idpbuilder:{style:{shape:"rectangle",icon:"tech:go"},technology:"Golang",description:{txt:"Bootstrap tool for initial platform provisioning"},title:"idpbuilder",kind:"component",id:"idpbuilder"},edgeConnect:{style:{},description:{txt:"Provides an API and control plane to run applications on the edge"},title:"EdgeConnect Cloud",kind:"system",id:"edgeConnect"},edgeCli:{style:{},description:{txt:"Command-line client for interactive usage"},title:"EdgeConnect CLI",kind:"component",id:"edgeCli"},edgeSdk:{style:{},description:{txt:"SDK for programmatic integration"},title:"EdgeConnect SDK",kind:"component",id:"edgeSdk"},edgeTerraformProvider:{style:{},description:{txt:"Terraform provider enabling declarative provisioning"},title:"Terraform Edge provider",kind:"component",id:"edgeTerraformProvider"},elasticsearch:{style:{opacity:20,icon:"tech:elasticsearch"},technology:"Elasticsearch",description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of +`.trim()}const Qre=S.forwardRef(({children:e,theme:r=Bre,injectFontCss:n=!0,styleNonce:o,colorScheme:i,keepAspectRatio:a=!1,...l},s)=>{const c=WQe(i),d=DG(),u=fJe(d,a),p=S.useRef(null),f=UQe(n,o),m=S.useCallback(()=>p.current??void 0,[p]),v=at(()=>{if(ra(o)){if(typeof o=="string")return o;if(typeof o=="function")return o()}return""});let w=ra(o)?v():void 0;return y.jsxs(y.Fragment,{children:[y.jsx("style",{type:"text/css",nonce:w,dangerouslySetInnerHTML:{__html:u}}),y.jsx(hJe,{ssr:!1,...l,styleSheets:f,"data-likec4-instance":d,children:y.jsx("div",{ref:$r(p,s),"data-mantine-color-scheme":c,className:"likec4-shadow-root",children:y.jsx(z9,{...i&&{forceColorScheme:i},defaultColorScheme:c,getRootElement:m,...!!w&&{getStyleNonce:v},cssVariablesSelector:".likec4-shadow-root",theme:r,children:y.jsx(wz,{children:e})})})})]})});Qre.displayName="ShadowRoot";const gJe=fe({cursor:"pointer","--mantine-cursor-pointer":"pointer","& :where(.likec4-diagram, .likec4-compound-node, .likec4-element-node)":{cursor:"pointer"}});function mJe({viewId:e,className:r,pannable:n=!1,zoomable:o=!1,keepAspectRatio:i=!0,colorScheme:a,injectFontCss:l=!0,controls:s=!1,background:c="transparent",browser:d=!0,showNavigationButtons:u=!1,enableNotations:p,enableFocusMode:f=!1,enableDynamicViewWalkthrough:m=!1,enableElementDetails:v=!1,enableRelationshipDetails:w=!1,enableRelationshipBrowser:x=w,reduceGraphics:k="auto",mantineTheme:C,styleNonce:_,style:$,reactFlowProps:R,renderNodes:T,children:A,...z}){const j=S.useRef(null),I=mMe(),[N,L]=S.useState("manual"),[H,P]=S.useState(null),V=at(Q=>{Q&&Q!==H&&L("manual"),P(Q)}),B=at(()=>{V(e)});if(!I)return y.jsx(kz,{children:"LikeC4Model not found. Make sure you provided LikeC4ModelProvider."});const F=I.findView(e)?.$layouted;if(!F)return y.jsx(XQe,{viewId:e});if(F._stage!=="layouted")return y.jsxs(kz,{children:['LikeC4 View "$',e,'" is not layouted. Make sure you have LikeC4ModelProvider with layouted model.']});const q=H?I.findView(H):null,G=N==="manual"?q?.$layouted:q?.$view,U=!!p&&(F.notation?.nodes?.length??0)>0,Y=(G?.notation?.nodes?.length??0)>0,K=d!==!1,O=Nq(d)?{}:d,W=kee(F,z.dynamicViewVariant),Z=j.current?{root:j.current}:void 0;return y.jsx(Qre,{ref:j,injectFontCss:l,theme:C,colorScheme:a,styleNonce:_,keepAspectRatio:i?W:!1,className:Ge("likec4-view",r),style:$,children:y.jsxs(wz,{children:[y.jsx(Lre,{view:F,pannable:n,zoomable:o,background:c,fitView:!0,fitViewPadding:y2.default,enableNotations:U,enableDynamicViewWalkthrough:m,showNavigationButtons:u,enableCompareWithLatest:!1,enableFocusMode:f,enableRelationshipDetails:w,enableElementDetails:v,enableRelationshipBrowser:x,enableElementTags:!1,controls:s,reduceGraphics:k,className:Ge("likec4-static-view",K&&gJe),enableSearch:!1,...K&&{onCanvasClick:B,onNodeClick:B},reactFlowProps:R,renderNodes:T,children:A,...z}),y.jsx(Cn,{...Z,children:G&&y.jsxs(p0,{openDelay:0,onClose:()=>V(null),children:[y.jsx(Lre,{view:G,pannable:!0,zoomable:!0,background:"dots",onNavigateTo:V,showNavigationButtons:!0,enableDynamicViewWalkthrough:!0,enableFocusMode:!0,enableRelationshipBrowser:!0,enableElementDetails:!0,enableRelationshipDetails:!0,enableSearch:!0,enableElementTags:!0,enableCompareWithLatest:!0,controls:!0,fitView:!0,...z,fitViewPadding:y2.withControls,...O,enableNotations:Y&&(O.enableNotations??!0),renderNodes:T,onLayoutTypeChange:L}),y.jsx(hr,{pos:"absolute",top:"4",right:"4",zIndex:"999",children:y.jsx(lr,{variant:"default",color:"gray",onClick:Q=>{Q.stopPropagation(),V(null)},children:y.jsx(fp,{})})})]})})]})})}var yJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 131",...e,children:y.jsx("path",{fill:"#2396ED",d:"m140.598 25.715 3.892 2.818c6.77 5.46 10.662 11.625 11.508 18.67 7.277-1.409 16.584-.352 20.646 2.466l3.723 2.29-.677 1.41c-1.185 2.641-1.523 3.346-1.692 3.698-6.6 13.21-19.631 13.386-25.723 13.21-15.4 38.573-48.23 59.885-92.57 59.885-20.476 0-36.045-6.517-46.538-19.375C-.709 93.88-.709 71.862.475 64.817l.339-1.41h122.353c6.43 0 11.339-1.76 13.708-3.17-2.539-3.875-3.385-8.278-3.554-10.744-.508-7.045 1.185-14.443 4.57-19.727zm106.014 8.179q2.048 0 3.468 1.373t1.42 3.467v43.563q0 10.89-7.634 18.43-7.726 7.633-18.43 7.633-10.798 0-18.43-7.633-7.633-7.633-7.633-18.43t7.633-18.43q7.632-7.634 18.43-7.633 9.262 0 16.336 5.724V38.734q0-2.094 1.373-3.467t3.467-1.373m36.49 22.34q10.705 0 18.43 7.632 3.818 3.818 5.702 8.424 1.885 4.608 1.932 10.007 0 10.89-7.633 18.43-7.725 7.633-18.43 7.633-10.798 0-18.43-7.633-7.634-7.633-7.634-18.43t7.633-18.43q7.633-7.634 18.43-7.633m57.574 0q9.82 0 16.988 6.33 1.675 1.488 1.675 3.676 0 2.095-1.373 3.49-1.373 1.397-3.467 1.397a4.93 4.93 0 0 1-3.165-1.117q-2.373-2.002-4.98-3.025t-5.678-1.024q-3.397 0-6.376 1.28a16.7 16.7 0 0 0-5.213 3.49 16.2 16.2 0 0 0-3.514 5.19q-1.28 2.977-1.28 6.376 0 3.397 1.28 6.376a16.2 16.2 0 0 0 3.514 5.19 16.7 16.7 0 0 0 5.213 3.49q2.979 1.28 6.376 1.28 3.072 0 5.678-1 2.607-1.002 4.933-3.003 1.304-.977 3.072-1.024 2.094 0 3.467 1.373t1.373 3.468q0 2.048-1.535 3.583-7.214 6.33-16.988 6.33-10.798 0-18.43-7.633-7.633-7.633-7.633-18.43t7.633-18.43q7.632-7.634 18.43-7.633m29.044-22.34q2.001 0 3.42 1.42 1.42 1.418 1.42 3.467v36.302l27.832-18.105q1.163-.744 2.606-.744 1.024 0 1.908.372.885.372 1.536 1.047t1.047 1.56.396 1.86q0 2.607-1.862 3.864l-19.5 12.66 20.012 22.525q1.35 1.489 1.35 3.398 0 .977-.396 1.861a5.4 5.4 0 0 1-1.047 1.56q-.651.675-1.536 1.046a4.9 4.9 0 0 1-1.908.373q-1.955 0-3.258-1.257l-21.502-24.155-5.678 3.724v16.801q0 2.001-1.42 3.444t-3.42 1.443q-2.048 0-3.468-1.443t-1.42-3.444V38.781q0-2.048 1.42-3.468t3.468-1.42m71.489 22.34q10.704 0 18.43 7.632 3.816 3.77 5.725 8.401 1.908 4.63 1.908 10.03 0 2.094-1.42 3.467t-3.467 1.373h-36.86a15.9 15.9 0 0 0 2.327 4.677 16.3 16.3 0 0 0 3.606 3.63 16.7 16.7 0 0 0 4.562 2.351q2.49.838 5.189.838 3.072 0 5.631-.931 2.56-.93 4.748-2.793a5.1 5.1 0 0 1 3.21-1.21q2.095 0 3.468 1.373t1.373 3.468q0 2.047-1.396 3.49-7.214 6.33-17.034 6.33-10.798 0-18.43-7.633-7.633-7.633-7.633-18.43t7.633-18.43q7.632-7.634 18.43-7.633m57.48 0q2.048 0 4.398.279 2.35.28 4.329 1 1.978.721 3.28 1.978 1.305 1.257 1.304 3.258 0 1.025-.396 1.909a5.4 5.4 0 0 1-1.047 1.559q-.651.675-1.536 1.047a4.9 4.9 0 0 1-1.908.372q-.885 0-2.048-.512-2.932-1.163-6.376-1.163-3.397 0-6.376 1.28-2.978 1.28-5.19 3.49-2.21 2.211-3.49 5.19-1.28 2.977-1.28 6.376v21.223q0 2.001-1.42 3.42t-3.42 1.42q-2.048 0-3.467-1.42t-1.42-3.42V61.074q0-2.002 1.42-3.42 1.42-1.42 3.467-1.42 2.001 0 3.42 1.42 1.42 1.418 1.42 3.42v.93a26.7 26.7 0 0 1 7.586-4.281q4.095-1.49 8.75-1.49M225.436 65.96q-3.444 0-6.423 1.303t-5.166 3.514-3.467 5.19-1.28 6.329 1.28 6.33 3.467 5.189 5.166 3.514q2.979 1.302 6.423 1.303 3.397 0 6.376-1.303a16.6 16.6 0 0 0 5.19-3.538 16.8 16.8 0 0 0 3.49-5.189q1.28-2.955 1.28-6.306t-1.28-6.307a16.8 16.8 0 0 0-3.49-5.189 16.6 16.6 0 0 0-5.19-3.537q-2.978-1.303-6.376-1.303m57.667 0q-3.444 0-6.423 1.303t-5.166 3.514-3.468 5.19-1.28 6.329 1.28 6.33q1.281 2.978 3.468 5.189t5.166 3.514 6.423 1.303q3.397 0 6.376-1.303a16.6 16.6 0 0 0 5.19-3.538 16.8 16.8 0 0 0 3.49-5.189q1.28-2.955 1.28-6.306t-1.28-6.307a16.8 16.8 0 0 0-3.49-5.189 16.6 16.6 0 0 0-5.19-3.537q-2.979-1.303-6.376-1.303m158.106 0q-2.653 0-5.166.837a17 17 0 0 0-4.608 2.35 16.1 16.1 0 0 0-3.63 3.631 15.1 15.1 0 0 0-2.28 4.677h31.368a15.6 15.6 0 0 0-2.35-4.677 16.8 16.8 0 0 0-3.63-3.63 16.7 16.7 0 0 0-4.561-2.35 16 16 0 0 0-5.143-.838M32.629 42.27v17.614H14.014V42.272zm22 0v17.614H36.014V42.272zm22 0v17.614H58.013V42.272zm22 0v17.614H80.013V42.272zm22 0v17.614h-18.616V42.272zm-22-21.135v17.613H80.013V21.136zm-22 0v17.613H58.013V21.136zm-22 0v17.613H36.014V21.136zM98.629 0v17.613H80.013V0z"})}),vJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 288",...e,children:[y.jsx("path",{fill:"#343741",d:"M0 143.82c0 12.44 1.744 24.441 4.71 35.956h175.067c19.856 0 35.955-16.1 35.955-35.956 0-19.865-16.1-35.955-35.955-35.955H4.71C1.744 119.371 0 131.38 0 143.82"}),y.jsx("path",{fill:"#FEC514",d:"M242.013 68.863c5.025-4.629 9.7-9.6 13.987-14.93C229.636 21.079 189.213 0 143.82 0 87 0 38.101 33.052 14.775 80.9h196.559c11.38 0 22.319-4.324 30.678-12.037"}),y.jsx("path",{fill:"#00BFB3",d:"M211.334 206.742H14.774c23.336 47.839 72.226 80.9 129.045 80.9 45.393 0 85.816-21.088 112.18-53.933a136.6 136.6 0 0 0-13.987-14.94c-8.36-7.721-19.299-12.027-30.678-12.027"})]}),bJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 278",...e,children:y.jsx("path",{fill:"#47848F",d:"M90.317 59.645c-36.264-6.605-64.936.308-76.364 20.101-8.527 14.77-6.09 34.353 5.912 55.285a3.719 3.719 0 1 0 6.452-3.699c-10.811-18.856-12.915-35.757-5.923-47.867 9.493-16.442 35.068-22.608 68.59-16.503a3.719 3.719 0 1 0 1.333-7.317m53.63-33.684c-2.959 5.723-8.932 9.635-15.819 9.635-9.83 0-17.798-7.969-17.798-17.798C110.33 7.968 118.3 0 128.128 0c9.83 0 17.798 7.968 17.798 17.798q0 .386-.016.767c29.461 15.237 49.933 67.197 49.933 127.226 0 24.69-3.452 48.382-9.879 68.92a3.719 3.719 0 1 1-7.097-2.221c6.196-19.802 9.539-42.747 9.539-66.699 0-56.524-18.789-105.163-44.458-119.83M16.469 193.319a18 18 0 0 1 1.33-.05c9.83 0 17.798 7.97 17.798 17.799s-7.969 17.797-17.798 17.797C7.968 228.865 0 220.897 0 211.068c0-6.692 3.693-12.52 9.151-15.56-2.68-33.265 32.283-77.855 85.12-108.36 21.946-12.671 44.798-21.665 66.267-26.265a3.719 3.719 0 0 1 1.558 7.273c-20.69 4.433-42.817 13.141-64.107 25.433-49.759 28.728-82.66 70.134-81.52 99.73m206.26 26.546a17.7 17.7 0 0 1-2.324-8.797c0-9.83 7.969-17.798 17.798-17.798 9.83 0 17.798 7.968 17.798 17.798s-7.968 17.797-17.798 17.797a17.7 17.7 0 0 1-10.38-3.338c-28.392 16.703-82.625 8.184-133.66-21.282-21.726-12.543-40.776-27.657-55.439-43.77a3.719 3.719 0 0 1 5.5-5.006c14.134 15.532 32.581 30.167 53.657 42.335 48.165 27.808 98.886 36.084 124.847 22.061m-1.166-63.914a3.719 3.719 0 0 1-5.676-4.805c21.946-25.926 29.34-51.086 19.867-67.492-6.876-11.91-22.159-18.52-43.362-18.796a3.719 3.719 0 1 1 .097-7.437c23.575.307 41.315 7.98 49.706 22.514 11.404 19.752 3.113 47.965-20.632 76.016M72.564 221.49a3.719 3.719 0 0 1 7.001-2.507c11.476 32.045 29.591 51.082 48.563 51.082 13.645 0 26.91-9.774 37.71-27.74a3.719 3.719 0 0 1 6.375 3.832c-12.018 19.99-27.428 31.345-44.085 31.345-22.839 0-43.15-21.344-55.564-56.011m175.999-10.423c0-5.722-4.639-10.361-10.36-10.361-5.723 0-10.362 4.639-10.362 10.36 0 5.723 4.64 10.361 10.361 10.361s10.36-4.638 10.36-10.36m-230.765 10.36c5.722 0 10.36-4.638 10.36-10.36s-4.638-10.361-10.36-10.361-10.36 4.639-10.36 10.36c0 5.723 4.638 10.361 10.36 10.361m110.33-193.27c5.722 0 10.36-4.638 10.36-10.36s-4.638-10.36-10.36-10.36-10.36 4.638-10.36 10.36 4.638 10.36 10.36 10.36m2.718 130.22c-6.951 1.502-13.8-2.916-15.305-9.868-1.499-6.952 2.916-13.8 9.868-15.305 6.951-1.502 13.8 2.915 15.305 9.867 1.502 6.952-2.916 13.8-9.868 15.305"})}),xJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 108",...e,children:[y.jsx("path",{fill:"#2F2707",d:"M152.984 37.214c-5.597 0-9.765 2.748-9.765 9.362 0 4.983 2.747 8.443 9.463 8.443 5.693 0 9.56-3.355 9.56-8.65 0-6-3.46-9.155-9.258-9.155m-11.19 46.701c-1.325 1.625-2.645 3.353-2.645 5.39 0 4.067 5.186 5.291 12.31 5.291 5.9 0 13.938-.414 13.938-5.9 0-3.261-3.867-3.462-8.753-3.768zm30.113-46.394c1.828 2.34 3.764 5.597 3.764 10.276 0 11.292-8.851 17.904-21.667 17.904-3.259 0-6.209-.406-8.038-.914l-3.359 5.39 9.969.61c17.602 1.122 27.975 1.632 27.975 15.157 0 11.702-10.272 18.311-27.975 18.311-18.413 0-25.433-4.68-25.433-12.716 0-4.578 2.035-7.015 5.596-10.378-3.358-1.419-4.476-3.961-4.476-6.71 0-2.24 1.118-4.273 2.952-6.208 1.83-1.93 3.864-3.865 6.306-6.103-4.984-2.442-8.75-7.732-8.75-15.262 0-11.697 7.733-19.731 23.295-19.731 4.376 0 7.022.402 9.362 1.017h19.84v8.644zM199.166 19.034c-5.8 0-9.157-3.36-9.157-9.161 0-5.793 3.356-8.95 9.157-8.95 5.9 0 9.258 3.157 9.258 8.95 0 5.801-3.357 9.161-9.258 9.161M186.04 80.171v-8.033l5.19-.71c1.425-.205 1.627-.509 1.627-2.038V39.48c0-1.116-.304-1.832-1.325-2.134l-5.492-1.935 1.118-8.238h21.061V69.39c0 1.63.098 1.833 1.629 2.039l5.188.71v8.032zM255.267 76.227c-4.376 2.135-10.785 4.068-16.586 4.068-12.106 0-16.682-4.878-16.682-16.38V37.264c0-.61 0-1.017-.817-1.017h-7.12V27.19c8.955-1.02 12.513-5.496 13.632-16.585h9.666v14.45c0 .71 0 1.017.815 1.017h14.343v10.173H237.36v24.313c0 6.002 1.426 8.34 6.917 8.34 2.852 0 5.799-.71 8.24-1.626z"}),y.jsx("path",{fill:"#DE4C36",d:"M104.529 49.53 58.013 3.017a6.86 6.86 0 0 0-9.703 0l-9.659 9.66 12.253 12.252a8.15 8.15 0 0 1 8.383 1.953 8.16 8.16 0 0 1 1.936 8.434L73.03 47.125c2.857-.984 6.154-.347 8.435 1.938a8.16 8.16 0 0 1 0 11.545 8.164 8.164 0 0 1-13.324-8.88L57.129 40.716l-.001 28.98a8.3 8.3 0 0 1 2.159 1.544 8.164 8.164 0 0 1 0 11.547c-3.19 3.19-8.36 3.19-11.545 0a8.164 8.164 0 0 1 2.672-13.328v-29.25a8.1 8.1 0 0 1-2.672-1.782c-2.416-2.413-2.997-5.958-1.759-8.925l-12.078-12.08L2.011 49.314a6.863 6.863 0 0 0 0 9.706l46.516 46.514a6.86 6.86 0 0 0 9.703 0l46.299-46.297a6.866 6.866 0 0 0 0-9.707"})]}),wJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 139",...e,children:y.jsx("path",{fill:"#11110F",d:"M98.696 59.312h-43.06c-1.111 0-2.013.903-2.013 2.014v21.053c0 1.111.902 2.015 2.012 2.015h16.799v26.157s-3.772 1.286-14.2 1.286c-12.303 0-29.49-4.496-29.49-42.288 0-37.8 17.897-42.773 34.698-42.773 14.543 0 20.809 2.56 24.795 3.794 1.253.384 2.412-.863 2.412-1.975l4.803-20.342c0-.52-.176-1.146-.769-1.571C93.064 5.527 83.187 0 58.233 0 29.488 0 0 12.23 0 71.023c0 58.795 33.76 67.556 62.21 67.556 23.555 0 37.844-10.066 37.844-10.066.59-.325.653-1.148.653-1.526V61.326c0-1.11-.9-2.014-2.01-2.014m221.8-51.953c0-1.12-.888-2.024-1.999-2.024h-24.246a2.016 2.016 0 0 0-2.008 2.024l.006 46.856h-37.792V7.36c0-1.12-.892-2.024-2.001-2.024H228.21a2.014 2.014 0 0 0-2.003 2.024v126.872c0 1.12.9 2.03 2.003 2.03h24.245c1.109 0 2-.91 2-2.03V79.964h37.793l-.066 54.267c0 1.12.9 2.03 2.008 2.03h24.304c1.11 0 1.998-.91 2-2.03zM144.37 24.322c0-8.73-7-15.786-15.635-15.786-8.627 0-15.632 7.055-15.632 15.786 0 8.72 7.005 15.795 15.632 15.795 8.635 0 15.635-7.075 15.635-15.795m-1.924 83.212V48.97c0-1.112-.897-2.021-2.006-2.021h-24.169c-1.109 0-2.1 1.144-2.1 2.256v83.905c0 2.466 1.536 3.199 3.525 3.199h21.775c2.39 0 2.975-1.173 2.975-3.239zM413.162 46.95h-24.06c-1.104 0-2.002.909-2.002 2.028v62.21s-6.112 4.472-14.788 4.472-10.977-3.937-10.977-12.431v-54.25c0-1.12-.897-2.03-2.001-2.03h-24.419c-1.102 0-2.005.91-2.005 2.03v58.358c0 25.23 14.063 31.403 33.408 31.403 15.87 0 28.665-8.767 28.665-8.767s.61 4.62.885 5.168c.276.547.994 1.098 1.77 1.098l15.535-.068c1.102 0 2.005-.911 2.005-2.025l-.008-85.168c0-1.119-.9-2.028-2.008-2.028m55.435 68.758c-8.345-.254-14.006-4.041-14.006-4.041V71.488s5.585-3.423 12.436-4.035c8.664-.776 17.013 1.841 17.013 22.51 0 21.795-3.768 26.096-15.443 25.744m9.49-71.483c-13.665 0-22.96 6.097-22.96 6.097V7.359a2.01 2.01 0 0 0-2-2.024h-24.315a2.013 2.013 0 0 0-2.004 2.024v126.872c0 1.12.898 2.03 2.007 2.03h16.87c.76 0 1.335-.39 1.76-1.077.419-.682 1.024-5.85 1.024-5.85s9.942 9.422 28.763 9.422c22.096 0 34.768-11.208 34.768-50.315s-20.238-44.217-33.913-44.217M212.229 46.73h-18.187l-.028-24.027c0-.909-.468-1.364-1.52-1.364H167.71c-.964 0-1.481.424-1.481 1.35v24.83s-12.42 2.998-13.26 3.24a2.01 2.01 0 0 0-1.452 1.934v15.603c0 1.122.896 2.027 2.005 2.027h12.707v37.536c0 27.88 19.556 30.619 32.753 30.619 6.03 0 13.243-1.937 14.434-2.376.72-.265 1.138-1.01 1.138-1.82l.02-17.164c0-1.119-.945-2.025-2.01-2.025-1.06 0-3.77.431-6.562.431-8.933 0-11.96-4.154-11.96-9.53l-.001-35.67h18.188a2.014 2.014 0 0 0 2.006-2.028V48.753c0-1.12-.897-2.022-2.006-2.022"})}),kJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 192",...e,children:y.jsx("path",{fill:"#00ACD7",d:"m292.533 13.295 1.124.75c13.212 8.725 22.685 20.691 28.917 35.15 1.496 2.243.499 3.49-2.493 4.237l-5.063 1.296c-11.447 2.949-20.53 5.429-31.827 8.378l-6.443 1.678c-2.32.574-2.96.333-5.428-2.477l-.348-.399c-3.519-3.988-6.155-6.652-10.817-9.03l-.899-.443c-15.705-7.727-30.911-5.484-45.12 3.74-16.952 10.968-25.677 27.172-25.428 47.364.25 19.942 13.96 36.395 33.654 39.137 16.951 2.244 31.16-3.739 42.378-16.452 2.244-2.743 4.238-5.734 6.73-9.224H223.36c-5.235 0-6.481-3.24-4.736-7.478l.864-2.035c3.204-7.454 8.173-18.168 11.4-24.294l.704-1.319c.862-1.494 2.612-3.513 5.977-3.513h80.224c3.603-11.415 9.449-22.201 17.246-32.407 18.198-23.931 40.135-36.396 69.8-41.63 25.427-4.488 49.359-1.995 71.046 12.713 19.694 13.461 31.909 31.66 35.15 55.59 4.237 33.654-5.485 61.075-28.668 84.508-16.453 16.702-36.645 27.172-59.829 31.908-6.73 1.247-13.461 1.496-19.942 2.244-22.685-.499-43.376-6.98-60.826-21.937-12.273-10.61-20.727-23.648-24.928-38.828a105 105 0 0 1-10.47 16.89c-17.949 23.683-41.381 38.39-71.046 42.38-24.43 3.24-47.115-1.497-67.058-16.454-18.447-13.96-28.917-32.407-31.66-55.34-3.24-27.173 4.737-51.603 21.19-73.041 17.7-23.184 41.132-37.891 69.8-43.126 22.999-4.16 45.037-1.595 64.936 11.464M411.12 49.017l-.798.178c-23.183 5.235-38.14 19.942-43.624 43.375-4.488 19.444 4.985 39.138 22.934 47.115 13.71 5.983 27.421 5.235 40.633-1.496 19.694-10.22 30.413-26.175 31.66-47.613-.25-3.24-.25-5.734-.749-8.227-4.436-24.401-26.664-38.324-50.056-33.332M116.416 94.564c.997 0 1.496.748 1.496 1.745l-.499 5.983c0 .997-.997 1.745-1.745 1.745l-54.344-.249c-.997 0-1.246-.748-.748-1.496l3.49-6.232c.499-.748 1.496-1.496 2.493-1.496zM121.9 71.63c.997 0 1.496.748 1.247 1.496l-1.995 5.983c-.249.997-1.246 1.495-2.243 1.495l-117.912.25c-.997 0-1.246-.499-.748-1.247l5.235-6.73c.499-.748 1.745-1.247 2.742-1.247zm12.963-22.934c.997 0 1.246.748.748 1.496l-4.238 6.481c-.499.748-1.745 1.496-2.493 1.496l-90.24-.25c-.998 0-1.247-.498-.749-1.246l5.235-6.73c.499-.748 1.745-1.247 2.742-1.247z"})}),_Je=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 279",...e,children:[y.jsx("defs",{children:y.jsxs("linearGradient",{id:"Grafana_svg__a",x1:"49.995%",x2:"49.995%",y1:"122.45%",y2:"31.139%",children:[y.jsx("stop",{offset:"0%",stopColor:"#FFF100"}),y.jsx("stop",{offset:"100%",stopColor:"#F05A28"})]})}),y.jsx("path",{fill:"url(#Grafana_svg__a)",d:"M255.59 122.775c-.46-4.675-1.226-10.04-2.759-16.017a98 98 0 0 0-7.204-19.16 106.7 106.7 0 0 0-13.412-20.54c-2.222-2.681-4.675-5.287-7.28-7.816 3.908-15.558-4.752-29.046-4.752-29.046-14.945-.92-24.448 4.675-27.973 7.204-.613-.23-1.15-.537-1.763-.767-2.529-.996-5.135-1.992-7.894-2.835a130 130 0 0 0-8.277-2.3c-2.835-.69-5.67-1.226-8.583-1.686-.537-.076-.996-.153-1.533-.23C157.646 8.738 138.946 0 138.946 0c-20.922 13.258-24.831 31.805-24.831 31.805s-.077.383-.23 1.073c-1.15.307-2.299.69-3.449.996-1.609.46-3.218 1.073-4.751 1.686a123 123 0 0 0-4.752 1.916 117 117 0 0 0-9.35 4.599c-2.989 1.686-5.9 3.525-8.737 5.441l-.766-.307c-28.97-11.036-54.643 2.223-54.643 2.223-2.376 30.809 11.572 50.198 14.331 53.724-.69 1.916-1.303 3.832-1.916 5.748-2.146 6.974-3.755 14.101-4.751 21.535-.154 1.073-.307 2.146-.384 3.219C7.894 146.916 0 173.97 0 173.97c22.302 25.674 48.359 27.283 48.359 27.283l.077-.076c3.295 5.9 7.127 11.495 11.419 16.783a112 112 0 0 0 5.671 6.362c-8.124 23.298 1.15 42.61 1.15 42.61 24.83.92 41.155-10.882 44.603-13.564a85 85 0 0 0 7.511 2.222 109.7 109.7 0 0 0 23.298 3.449c1.916.076 3.909.153 5.825.076h2.759l1.226-.076v.076c11.726 16.708 32.265 19.084 32.265 19.084 14.638-15.405 15.48-30.733 15.48-34.028v-1.38c3.066-2.145 5.979-4.445 8.738-6.974 5.824-5.288 10.959-11.342 15.25-17.857l1.15-1.839c16.554.92 28.28-10.27 28.28-10.27-2.759-17.243-12.569-25.673-14.638-27.283 0 0-.077-.076-.23-.153s-.153-.153-.153-.153c-.077-.077-.23-.154-.383-.23.076-1.073.153-2.07.23-3.142.153-1.84.153-3.756.153-5.595v-2.913l-.077-1.149-.076-1.533c0-.536-.077-.996-.154-1.456-.076-.46-.076-.996-.153-1.456l-.153-1.456-.23-1.456c-.307-1.916-.613-3.756-1.073-5.672-1.763-7.433-4.675-14.484-8.43-20.845a70.4 70.4 0 0 0-14.025-16.707c-5.365-4.752-11.42-8.584-17.704-11.42-6.36-2.835-12.952-4.675-19.543-5.518-3.295-.46-6.59-.613-9.886-.536h-2.453l-1.226.077c-.46 0-.92.076-1.303.076a52 52 0 0 0-4.981.69c-6.591 1.226-12.799 3.602-18.24 6.897s-10.193 7.358-14.025 11.956a54.7 54.7 0 0 0-8.89 15.021 52.9 52.9 0 0 0-3.525 16.094c-.077 1.303-.077 2.683-.077 3.986v.996l.077 1.073c.076.613.076 1.303.153 1.916.23 2.682.766 5.288 1.456 7.74 1.456 4.982 3.755 9.503 6.59 13.335s6.285 6.975 9.887 9.504c3.602 2.452 7.51 4.215 11.343 5.364 3.832 1.15 7.664 1.61 11.266 1.61h1.993c.23 0 .46 0 .689-.077.383 0 .766-.077 1.15-.077.076 0 .23 0 .306-.076l.383-.077c.23 0 .46-.076.69-.076.46-.077.843-.154 1.303-.23s.843-.154 1.226-.307c.843-.153 1.61-.46 2.376-.69 1.533-.536 3.066-1.15 4.368-1.839 1.38-.69 2.606-1.533 3.832-2.3.307-.23.69-.459.997-.766 1.226-.996 1.456-2.835.46-4.061-.844-1.073-2.376-1.38-3.603-.69l-.92.46a25 25 0 0 1-3.295 1.38c-1.15.382-2.375.689-3.602.919-.613.076-1.226.153-1.916.23-.306 0-.613.076-.996.076h-1.84c-.383 0-.766 0-1.149-.076h-.46c-.153 0-.383 0-.536-.077-.383-.077-.69-.077-1.073-.153-2.836-.383-5.671-1.226-8.354-2.453a29.3 29.3 0 0 1-7.74-5.058c-2.376-2.146-4.445-4.675-6.055-7.587s-2.759-6.131-3.295-9.503c-.23-1.686-.383-3.449-.307-5.135 0-.46.077-.92.077-1.38v-.613c0-.23.077-.46.077-.69.076-.919.23-1.839.383-2.758 1.303-7.358 4.981-14.562 10.653-20.003 1.456-1.38 2.988-2.606 4.598-3.755a31.7 31.7 0 0 1 5.211-2.99 36 36 0 0 1 5.672-2.068c1.915-.537 3.908-.844 5.977-1.073.997-.077 1.993-.154 3.066-.154h2.376l.843.077c2.222.153 4.368.46 6.514.996 4.292.92 8.507 2.53 12.415 4.675 7.818 4.369 14.485 11.113 18.547 19.237 2.07 4.061 3.525 8.43 4.215 12.951.153 1.15.307 2.3.383 3.45l.077.842.077.843v3.296c0 .536-.077 1.456-.077 1.992-.077 1.227-.23 2.53-.383 3.756s-.383 2.452-.613 3.678a50 50 0 0 1-.843 3.602 64 64 0 0 1-2.3 7.128 62.4 62.4 0 0 1-7.204 13.105c-5.9 8.124-13.948 14.715-23.144 18.93-4.599 2.069-9.427 3.602-14.408 4.368-2.453.46-4.982.69-7.511.766h-3.832a36 36 0 0 1-4.062-.23c-5.365-.383-10.653-1.379-15.864-2.835-5.135-1.456-10.116-3.525-14.868-5.978-9.427-5.058-17.933-11.956-24.524-20.31a79 79 0 0 1-8.584-13.334 79 79 0 0 1-5.671-14.638c-1.38-5.058-2.223-10.193-2.606-15.405l-.077-.996v-6.821c.077-2.529.307-5.211.614-7.817.306-2.606.766-5.288 1.302-7.894.537-2.605 1.15-5.211 1.916-7.817a103 103 0 0 1 5.442-14.791c4.368-9.35 10.04-17.704 16.86-24.371 1.686-1.686 3.449-3.22 5.288-4.752a78 78 0 0 1 5.748-4.138c1.916-1.303 3.985-2.453 6.055-3.526a40 40 0 0 1 3.142-1.533l3.219-1.379c2.146-.92 4.368-1.686 6.667-2.376.537-.153 1.15-.306 1.686-.536.537-.154 1.15-.307 1.686-.46 1.15-.307 2.3-.613 3.45-.843.536-.153 1.149-.23 1.762-.383.613-.154 1.15-.23 1.763-.384.613-.076 1.15-.23 1.762-.306l.843-.153.92-.154c.613-.076 1.15-.153 1.763-.23.69-.076 1.302-.153 1.992-.23.537-.076 1.456-.153 1.993-.23.383-.076.843-.076 1.226-.153l.843-.076.383-.077h.46c.69-.077 1.303-.077 1.993-.153l.996-.077h.767c.536 0 1.149-.076 1.685-.076a99 99 0 0 1 6.745 0c4.445.153 8.813.69 13.028 1.456 8.507 1.61 16.478 4.291 23.758 7.893 7.28 3.526 13.719 7.894 19.39 12.646.383.306.69.613 1.073.92.306.306.69.613.996.92.69.612 1.303 1.225 1.993 1.838.69.614 1.303 1.227 1.916 1.84a44 44 0 0 1 1.839 1.916c2.376 2.529 4.598 5.058 6.59 7.664a99 99 0 0 1 9.734 15.25l.46.92.46.92c.306.613.613 1.226.843 1.84.306.613.536 1.149.843 1.762.23.613.536 1.15.766 1.763.92 2.299 1.84 4.521 2.53 6.59 1.149 3.373 1.992 6.362 2.682 8.967a2.043 2.043 0 0 0 2.299 1.61c1.15-.077 1.992-.996 1.992-2.146.077-2.759 0-6.054-.383-9.81"})]}),SJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 346",...e,children:[y.jsx("path",{fill:"#5382A1",d:"M82.554 267.473s-13.198 7.675 9.393 10.272c27.369 3.122 41.356 2.675 71.517-3.034 0 0 7.93 4.972 19.003 9.279-67.611 28.977-153.019-1.679-99.913-16.517M74.292 229.659s-14.803 10.958 7.805 13.296c29.236 3.016 52.324 3.263 92.276-4.43 0 0 5.526 5.602 14.215 8.666-81.747 23.904-172.798 1.885-114.296-17.532"}),y.jsx("path",{fill:"#E76F00",d:"M143.942 165.515c16.66 19.18-4.377 36.44-4.377 36.44s42.301-21.837 22.874-49.183c-18.144-25.5-32.059-38.172 43.268-81.858 0 0-118.238 29.53-61.765 94.6"}),y.jsx("path",{fill:"#5382A1",d:"M233.364 295.442s9.767 8.047-10.757 14.273c-39.026 11.823-162.432 15.393-196.714.471-12.323-5.36 10.787-12.8 18.056-14.362 7.581-1.644 11.914-1.337 11.914-1.337-13.705-9.655-88.583 18.957-38.034 27.15 137.853 22.356 251.292-10.066 215.535-26.195M88.9 190.48s-62.771 14.91-22.228 20.323c17.118 2.292 51.243 1.774 83.03-.89 25.978-2.19 52.063-6.85 52.063-6.85s-9.16 3.923-15.787 8.448c-63.744 16.765-186.886 8.966-151.435-8.183 29.981-14.492 54.358-12.848 54.358-12.848M201.506 253.422c64.8-33.672 34.839-66.03 13.927-61.67-5.126 1.066-7.411 1.99-7.411 1.99s1.903-2.98 5.537-4.27c41.37-14.545 73.187 42.897-13.355 65.647 0 .001 1.003-.895 1.302-1.697"}),y.jsx("path",{fill:"#E76F00",d:"M162.439.371s35.887 35.9-34.037 91.101c-56.071 44.282-12.786 69.53-.023 98.377-32.73-29.53-56.75-55.526-40.635-79.72C111.395 74.612 176.918 57.393 162.439.37"}),y.jsx("path",{fill:"#5382A1",d:"M95.268 344.665c62.199 3.982 157.712-2.209 159.974-31.64 0 0-4.348 11.158-51.404 20.018-53.088 9.99-118.564 8.824-157.399 2.421.001 0 7.95 6.58 48.83 9.201"})]}),EJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 249",...e,children:[y.jsx("path",{fill:"#326DE6",d:"M82.085 244.934c-5.946 0-11.561-2.642-15.36-7.432L8.92 165.657c-3.799-4.79-5.285-10.9-3.799-16.847l20.645-89.682c1.321-5.946 5.285-10.736 10.736-13.378l83.571-39.97c2.643-1.32 5.616-1.981 8.589-1.981s5.945.66 8.588 1.982l83.572 39.804c5.45 2.642 9.414 7.432 10.735 13.378l20.645 89.682c1.322 5.946 0 12.057-3.798 16.847l-57.807 71.845c-3.799 4.624-9.414 7.432-15.36 7.432z"}),y.jsx("path",{fill:"#FFF",d:"M128.495 7.928c2.313 0 4.625.495 6.772 1.486l83.572 39.804c4.294 2.147 7.597 6.111 8.588 10.736l20.645 89.682c1.156 4.79 0 9.745-3.138 13.543l-57.806 71.846c-2.973 3.798-7.598 5.945-12.387 5.945H82.085c-4.79 0-9.414-2.147-12.387-5.945l-57.806-71.846c-2.973-3.798-4.13-8.753-3.138-13.543l20.645-89.682c1.156-4.79 4.294-8.754 8.588-10.736L121.56 9.25c2.147-.826 4.624-1.321 6.936-1.321m0-7.763c-3.468 0-6.936.826-10.24 2.312l-83.571 39.97c-6.607 3.138-11.231 8.918-12.883 16.02L1.156 148.15c-1.651 7.102 0 14.369 4.625 20.15l57.806 71.845c4.46 5.615 11.231 8.753 18.333 8.753h92.655c7.102 0 13.874-3.138 18.333-8.753l57.807-71.846c4.624-5.615 6.276-13.047 4.624-20.15l-20.645-89.682c-1.651-7.102-6.276-12.882-12.882-16.02L138.57 2.476C135.432.991 131.964.165 128.495.165"}),y.jsx("path",{fill:"#FFF",d:"M212.232 142.534q-.248 0 0 0h-.165c-.165 0-.33 0-.33-.165-.33 0-.66-.165-.991-.165-1.156-.165-2.147-.33-3.138-.33-.496 0-.991 0-1.652-.166h-.165c-3.468-.33-6.276-.66-8.919-1.486-1.156-.496-1.486-1.156-1.817-1.817 0-.165-.165-.165-.165-.33l-2.147-.66a65.3 65.3 0 0 0-1.156-23.289 68 68 0 0 0-9.249-21.636l1.652-1.486v-.33c0-.826.165-1.652.825-2.478 1.982-1.817 4.46-3.303 7.433-5.12.495-.33.99-.495 1.486-.826.991-.495 1.817-.99 2.808-1.651.165-.165.495-.33.826-.66.165-.166.33-.166.33-.331 2.312-1.982 2.808-5.285 1.156-7.433-.826-1.156-2.312-1.816-3.799-1.816-1.32 0-2.477.495-3.633 1.321l-.33.33c-.33.165-.496.496-.826.661-.826.826-1.487 1.486-2.147 2.312-.33.33-.66.826-1.156 1.156-2.313 2.478-4.46 4.46-6.607 5.946q-.742.495-1.486.496c-.33 0-.661 0-.991-.166h-.33l-1.983 1.322c-2.147-2.312-4.459-4.294-6.771-6.276a65.96 65.96 0 0 0-34.519-13.709l-.165-2.147-.33-.33c-.496-.496-1.156-.991-1.322-2.147-.165-2.643.166-5.616.496-8.919v-.165c0-.496.165-1.156.33-1.652.165-.99.33-1.982.496-3.138v-1.486c0-2.973-2.313-5.45-5.12-5.45-1.322 0-2.643.66-3.634 1.651-.99.991-1.486 2.312-1.486 3.799v1.321c0 1.156.165 2.147.495 3.138.165.496.165.991.33 1.652v.165c.33 3.303.826 6.276.496 8.919-.165 1.156-.826 1.651-1.321 2.147l-.33.33-.166 2.147c-2.973.33-5.946.66-8.919 1.321-12.717 2.808-23.948 9.25-32.701 18.498l-1.652-1.156h-.33c-.33 0-.661.165-.991.165q-.743 0-1.487-.495c-2.147-1.486-4.294-3.634-6.606-6.111-.33-.33-.66-.826-1.156-1.156-.661-.826-1.322-1.487-2.148-2.312-.165-.166-.495-.33-.825-.661-.165-.165-.33-.165-.33-.33a5.77 5.77 0 0 0-3.634-1.322c-1.487 0-2.973.661-3.799 1.817-1.652 2.147-1.156 5.45 1.156 7.432.165 0 .165.166.33.166.33.165.496.495.826.66.991.66 1.817 1.156 2.808 1.652.496.165.991.495 1.487.826 2.972 1.816 5.45 3.303 7.432 5.12.826.825.826 1.651.826 2.477v.33l1.651 1.487c-.33.495-.66.826-.826 1.321-8.258 13.048-11.396 28.408-9.249 43.603l-2.147.66c0 .166-.165.166-.165.33-.33.661-.826 1.322-1.817 1.817-2.477.826-5.45 1.157-8.918 1.487h-.166c-.495 0-1.156 0-1.651.165-.991 0-1.982.165-3.138.33-.33 0-.66.166-.991.166-.165 0-.33 0-.496.165-2.973.66-4.79 3.468-4.294 6.11.496 2.313 2.643 3.8 5.285 3.8.496 0 .826 0 1.322-.166.165 0 .33 0 .33-.165.33 0 .66-.165.99-.165 1.157-.33 1.983-.66 2.974-1.156.495-.165.99-.496 1.486-.66h.165c3.138-1.157 5.946-2.148 8.589-2.478h.33c.991 0 1.652.495 2.147.826.165 0 .165.165.33.165l2.313-.33c3.964 12.221 11.561 23.122 21.636 31.05 2.312 1.816 4.624 3.303 7.102 4.79l-.991 2.146c0 .166.165.166.165.33.33.661.66 1.487.33 2.643-.99 2.478-2.477 4.955-4.294 7.763v.165c-.33.496-.66.826-.99 1.321-.661.826-1.157 1.652-1.818 2.643-.165.165-.33.495-.495.826 0 .165-.165.33-.165.33-1.321 2.808-.33 5.946 2.147 7.102q.99.496 1.982.496c1.982 0 3.964-1.322 4.955-3.139 0-.165.165-.33.165-.33.165-.33.33-.66.495-.826.496-1.156.661-1.982.991-2.973l.496-1.486c1.156-3.303 1.982-5.946 3.468-8.258.66-.991 1.487-1.156 2.147-1.487.165 0 .165 0 .33-.165l1.157-2.147c7.267 2.808 15.195 4.294 23.122 4.294 4.79 0 9.745-.495 14.37-1.651a73 73 0 0 0 8.588-2.478l.99 1.817c.166 0 .166 0 .331.165.826.165 1.486.496 2.147 1.487 1.321 2.312 2.312 5.12 3.468 8.258v.165l.496 1.486c.33.991.495 1.982.99 2.973.166.33.331.496.496.826 0 .165.166.33.166.33.99 1.982 2.972 3.139 4.954 3.139q.992 0 1.982-.496c1.156-.66 2.147-1.652 2.478-2.973.33-1.321.33-2.808-.33-4.129 0-.165-.166-.165-.166-.33-.165-.33-.33-.66-.495-.826-.496-.991-1.156-1.817-1.817-2.643-.33-.495-.66-.825-.99-1.32v-.166c-1.818-2.808-3.47-5.285-4.295-7.763-.33-1.156 0-1.816.165-2.642 0-.165.165-.165.165-.33l-.826-1.982c8.754-5.12 16.186-12.388 21.802-21.306 2.973-4.625 5.285-9.745 6.936-14.865l1.982.33c.166 0 .166-.165.33-.165.661-.33 1.157-.825 2.148-.825h.33c2.643.33 5.45 1.32 8.589 2.477h.165c.495.165.99.495 1.486.66.991.496 1.817.826 2.973 1.157.33 0 .66.165.991.165.165 0 .33 0 .495.165.496.165.826.165 1.322.165 2.477 0 4.624-1.651 5.285-3.798 0-1.982-1.817-4.625-4.79-5.45m-76.47-8.093-7.267 3.469-7.267-3.469-1.816-7.762 4.954-6.276h8.093l4.955 6.276zm43.108-17.176a52.1 52.1 0 0 1 1.156 16.68l-25.27-7.266c-2.312-.66-3.633-2.973-3.138-5.285.165-.661.496-1.322.991-1.817l19.985-18.003c2.807 4.625 4.954 9.91 6.276 15.69m-14.204-25.6-21.636 15.36c-1.817 1.156-4.295.825-5.781-.991-.495-.496-.66-1.157-.826-1.817l-1.486-26.922a50.13 50.13 0 0 1 29.729 14.37M116.769 78.12c1.817-.33 3.468-.66 5.285-.99l-1.486 26.425c-.165 2.312-1.982 4.294-4.46 4.294-.66 0-1.486-.165-1.982-.495L92.16 91.665c6.772-6.772 15.195-11.397 24.609-13.544m-32.537 23.453 19.654 17.507c1.817 1.487 1.982 4.294.496 6.111-.496.66-1.156 1.156-1.982 1.322l-25.6 7.432c-.991-11.231 1.486-22.627 7.432-32.372m-4.46 44.759 26.262-4.46c2.147-.165 4.129 1.322 4.624 3.469.165.99.165 1.817-.165 2.643l-10.075 24.278c-9.249-5.946-16.681-15.03-20.645-25.93m60.285 32.867c-3.799.826-7.598 1.321-11.562 1.321-5.78 0-11.396-.99-16.68-2.642l13.047-23.618c1.321-1.487 3.468-2.147 5.285-1.156a7 7 0 0 1 1.982 1.816l12.717 22.958c-1.486.495-3.138.826-4.79 1.321m32.206-22.957c-4.129 6.606-9.58 11.891-15.855 16.02l-10.405-24.94c-.496-1.981.33-4.128 2.312-5.12.66-.33 1.486-.495 2.312-.495l26.426 4.46c-.991 3.633-2.643 6.937-4.79 10.075"})]}),CJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 291",...e,children:[y.jsx("path",{fill:"#009639",d:"M2.054 218.187c1.32 2.347 3.227 4.108 5.575 5.428l112.962 65.137c4.695 2.787 10.416 2.787 14.964 0l112.963-65.137c4.695-2.64 7.482-7.629 7.482-13.057V80.284c0-5.428-2.787-10.416-7.482-13.056L135.555 2.09c-4.694-2.788-10.416-2.788-14.964 0L7.63 67.228C2.787 69.868 0 74.856 0 80.284v130.42c0 2.642.587 5.136 2.054 7.483"}),y.jsx("path",{fill:"#FFF",d:"M91.837 195.154a14.463 14.463 0 0 1-14.524 14.524 14.463 14.463 0 0 1-14.523-14.524V95.542c0-7.776 6.895-14.084 16.43-14.084 6.896 0 14.965 2.787 19.806 8.802l4.4 5.282 60.737 72.618V95.835a14.463 14.463 0 0 1 14.524-14.524 14.463 14.463 0 0 1 14.523 14.524v99.613c0 7.775-6.895 14.083-16.43 14.083-6.896 0-14.965-2.787-19.806-8.802l-65.137-77.754z"})]}),$Je=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 264",...e,children:[y.jsx("path",{d:"M255.008 158.086c-1.535-4.649-5.556-7.887-10.756-8.664-2.452-.366-5.26-.21-8.583.475-5.792 1.195-10.089 1.65-13.225 1.738 11.837-19.985 21.462-42.775 27.003-64.228 8.96-34.689 4.172-50.492-1.423-57.64C233.217 10.847 211.614.683 185.552.372c-13.903-.17-26.108 2.575-32.475 4.549-5.928-1.046-12.302-1.63-18.99-1.738-12.537-.2-23.614 2.533-33.079 8.15-5.24-1.772-13.65-4.27-23.362-5.864-22.842-3.75-41.252-.828-54.718 8.685C6.622 25.672-.937 45.684.461 73.634c.444 8.874 5.408 35.874 13.224 61.48 4.492 14.718 9.282 26.94 14.237 36.33 7.027 13.315 14.546 21.156 22.987 23.972 4.731 1.576 13.327 2.68 22.368-4.85 1.146 1.388 2.675 2.767 4.704 4.048 2.577 1.625 5.728 2.953 8.875 3.74 11.341 2.835 21.964 2.126 31.027-1.848.056 1.612.099 3.152.135 4.482.06 2.157.12 4.272.199 6.25.537 13.374 1.447 23.773 4.143 31.049.148.4.347 1.01.557 1.657 1.345 4.118 3.594 11.012 9.316 16.411 5.925 5.593 13.092 7.308 19.656 7.308 3.292 0 6.433-.432 9.188-1.022 9.82-2.105 20.973-5.311 29.041-16.799 7.628-10.86 11.336-27.217 12.007-52.99q.13-1.094.244-2.088l.16-1.362 1.797.158.463.031c10.002.456 22.232-1.665 29.743-5.154 5.935-2.754 24.954-12.795 20.476-26.351"}),y.jsx("path",{fill:"#336791",d:"M237.906 160.722c-29.74 6.135-31.785-3.934-31.785-3.934 31.4-46.593 44.527-105.736 33.2-120.211-30.904-39.485-84.399-20.811-85.292-20.327l-.287.052c-5.876-1.22-12.451-1.946-19.842-2.067-13.456-.22-23.664 3.528-31.41 9.402 0 0-95.43-39.314-90.991 49.444.944 18.882 27.064 142.873 58.218 105.422 11.387-13.695 22.39-25.274 22.39-25.274 5.464 3.63 12.006 5.482 18.864 4.817l.533-.452c-.166 1.7-.09 3.363.213 5.332-8.026 8.967-5.667 10.541-21.711 13.844-16.235 3.346-6.698 9.302-.471 10.86 7.549 1.887 25.013 4.561 36.813-11.958l-.47 1.885c3.144 2.519 5.352 16.383 4.982 28.952-.37 12.568-.617 21.197 1.86 27.937 2.479 6.74 4.948 21.905 26.04 17.386 17.623-3.777 26.756-13.564 28.027-29.89.901-11.606 2.942-9.89 3.07-20.267l1.637-4.912c1.887-15.733.3-20.809 11.157-18.448l2.64.232c7.99.363 18.45-1.286 24.589-4.139 13.218-6.134 21.058-16.377 8.024-13.686z"}),y.jsx("path",{fill:"#FFF",d:"M108.076 81.525c-2.68-.373-5.107-.028-6.335.902-.69.523-.904 1.129-.962 1.546-.154 1.105.62 2.327 1.096 2.957 1.346 1.784 3.312 3.01 5.258 3.28q.423.059.842.058c3.245 0 6.196-2.527 6.456-4.392.325-2.336-3.066-3.893-6.355-4.35M196.86 81.599c-.256-1.831-3.514-2.353-6.606-1.923-3.088.43-6.082 1.824-5.832 3.659.2 1.427 2.777 3.863 5.827 3.863q.387 0 .78-.054c2.036-.282 3.53-1.575 4.24-2.32 1.08-1.136 1.706-2.402 1.591-3.225"}),y.jsx("path",{fill:"#FFF",d:"M247.802 160.025c-1.134-3.429-4.784-4.532-10.848-3.28-18.005 3.716-24.453 1.142-26.57-.417 13.995-21.32 25.508-47.092 31.719-71.137 2.942-11.39 4.567-21.968 4.7-30.59.147-9.463-1.465-16.417-4.789-20.665-13.402-17.125-33.072-26.311-56.882-26.563-16.369-.184-30.199 4.005-32.88 5.183-5.646-1.404-11.801-2.266-18.502-2.376-12.288-.199-22.91 2.743-31.704 8.74-3.82-1.422-13.692-4.811-25.765-6.756-20.872-3.36-37.458-.814-49.294 7.571-14.123 10.006-20.643 27.892-19.38 53.16.425 8.501 5.269 34.653 12.913 59.698 10.062 32.964 21 51.625 32.508 55.464 1.347.449 2.9.763 4.613.763 4.198 0 9.345-1.892 14.7-8.33a530 530 0 0 1 20.261-22.926c4.524 2.428 9.494 3.784 14.577 3.92q.016.2.035.398a118 118 0 0 0-2.57 3.175c-3.522 4.471-4.255 5.402-15.592 7.736-3.225.666-11.79 2.431-11.916 8.435-.136 6.56 10.125 9.315 11.294 9.607 4.074 1.02 7.999 1.523 11.742 1.523 9.103 0 17.114-2.992 23.516-8.781-.197 23.386.778 46.43 3.586 53.451 2.3 5.748 7.918 19.795 25.664 19.794 2.604 0 5.47-.303 8.623-.979 18.521-3.97 26.564-12.156 29.675-30.203 1.665-9.645 4.522-32.676 5.866-45.03 2.836.885 6.487 1.29 10.434 1.289 8.232 0 17.731-1.749 23.688-4.514 6.692-3.108 18.768-10.734 16.578-17.36m-44.106-83.48c-.061 3.647-.563 6.958-1.095 10.414-.573 3.717-1.165 7.56-1.314 12.225-.147 4.54.42 9.26.968 13.825 1.108 9.22 2.245 18.712-2.156 28.078a37 37 0 0 1-1.95-4.009c-.547-1.326-1.735-3.456-3.38-6.404-6.399-11.476-21.384-38.35-13.713-49.316 2.285-3.264 8.084-6.62 22.64-4.813m-17.644-61.787c21.334.471 38.21 8.452 50.158 23.72 9.164 11.711-.927 64.998-30.14 110.969a171 171 0 0 0-.886-1.117l-.37-.462c7.549-12.467 6.073-24.802 4.759-35.738-.54-4.488-1.05-8.727-.92-12.709.134-4.22.692-7.84 1.232-11.34.663-4.313 1.338-8.776 1.152-14.037.139-.552.195-1.204.122-1.978-.475-5.045-6.235-20.144-17.975-33.81-6.422-7.475-15.787-15.84-28.574-21.482 5.5-1.14 13.021-2.203 21.442-2.016M66.674 175.778c-5.9 7.094-9.974 5.734-11.314 5.288-8.73-2.912-18.86-21.364-27.791-50.624-7.728-25.318-12.244-50.777-12.602-57.916-1.128-22.578 4.345-38.313 16.268-46.769 19.404-13.76 51.306-5.524 64.125-1.347-.184.182-.376.352-.558.537-21.036 21.244-20.537 57.54-20.485 59.759-.002.856.07 2.068.168 3.735.362 6.105 1.036 17.467-.764 30.334-1.672 11.957 2.014 23.66 10.111 32.109a36 36 0 0 0 2.617 2.468c-3.604 3.86-11.437 12.396-19.775 22.426m22.479-29.993c-6.526-6.81-9.49-16.282-8.133-25.99 1.9-13.592 1.199-25.43.822-31.79-.053-.89-.1-1.67-.127-2.285 3.073-2.725 17.314-10.355 27.47-8.028 4.634 1.061 7.458 4.217 8.632 9.645 6.076 28.103.804 39.816-3.432 49.229-.873 1.939-1.698 3.772-2.402 5.668l-.546 1.466c-1.382 3.706-2.668 7.152-3.465 10.424-6.938-.02-13.687-2.984-18.819-8.34m1.065 37.9c-2.026-.506-3.848-1.385-4.917-2.114.893-.42 2.482-.992 5.238-1.56 13.337-2.745 15.397-4.683 19.895-10.394 1.031-1.31 2.2-2.794 3.819-4.602l.002-.002c2.411-2.7 3.514-2.242 5.514-1.412 1.621.67 3.2 2.702 3.84 4.938.303 1.056.643 3.06-.47 4.62-9.396 13.156-23.088 12.987-32.921 10.526m69.799 64.952c-16.316 3.496-22.093-4.829-25.9-14.346-2.457-6.144-3.665-33.85-2.808-64.447.011-.407-.047-.8-.159-1.17a15.4 15.4 0 0 0-.456-2.162c-1.274-4.452-4.379-8.176-8.104-9.72-1.48-.613-4.196-1.738-7.46-.903.696-2.868 1.903-6.107 3.212-9.614l.549-1.475c.618-1.663 1.394-3.386 2.214-5.21 4.433-9.848 10.504-23.337 3.915-53.81-2.468-11.414-10.71-16.988-23.204-15.693-7.49.775-14.343 3.797-17.761 5.53-.735.372-1.407.732-2.035 1.082.954-11.5 4.558-32.992 18.04-46.59 8.489-8.56 19.794-12.788 33.568-12.56 27.14.444 44.544 14.372 54.366 25.979 8.464 10.001 13.047 20.076 14.876 25.51-13.755-1.399-23.11 1.316-27.852 8.096-10.317 14.748 5.644 43.372 13.315 57.129 1.407 2.521 2.621 4.7 3.003 5.626 2.498 6.054 5.732 10.096 8.093 13.046.724.904 1.426 1.781 1.96 2.547-4.166 1.201-11.649 3.976-10.967 17.847-.55 6.96-4.461 39.546-6.448 51.059-2.623 15.21-8.22 20.875-23.957 24.25m68.104-77.936c-4.26 1.977-11.389 3.46-18.161 3.779-7.48.35-11.288-.838-12.184-1.569-.42-8.644 2.797-9.547 6.202-10.503.535-.15 1.057-.297 1.561-.473q.469.383 1.032.756c6.012 3.968 16.735 4.396 31.874 1.271l.166-.033c-2.042 1.909-5.536 4.471-10.49 6.772"})]}),RJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 257",...e,children:y.jsx("path",{fill:"#DA4E31",d:"M128.001.667C57.311.667 0 57.971 0 128.664c0 70.69 57.311 127.998 128.001 127.998S256 199.354 256 128.664C256 57.97 198.689.667 128.001.667m0 239.56c-20.112 0-36.419-13.435-36.419-30.004h72.838c0 16.566-16.306 30.004-36.419 30.004m60.153-39.94H67.842V178.47h120.314v21.816zm-.432-33.045H68.185c-.398-.458-.804-.91-1.188-1.375-12.315-14.954-15.216-22.76-18.032-30.716-.048-.262 14.933 3.06 25.556 5.45 0 0 5.466 1.265 13.458 2.722-7.673-8.994-12.23-20.428-12.23-32.116 0-25.658 19.68-48.079 12.58-66.201 6.91.562 14.3 14.583 14.8 36.505 7.346-10.152 10.42-28.69 10.42-40.056 0-11.769 7.755-25.44 15.512-25.907-6.915 11.396 1.79 21.165 9.53 45.4 2.902 9.103 2.532 24.423 4.772 34.138.744-20.178 4.213-49.62 17.014-59.784-5.647 12.8.836 28.818 5.27 36.518 7.154 12.424 11.49 21.836 11.49 39.638 0 11.936-4.407 23.173-11.84 31.958 8.452-1.586 14.289-3.016 14.289-3.016l27.45-5.355c.002-.002-3.987 16.401-19.314 32.197"})}),zJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 228",...e,children:y.jsx("path",{fill:"#00D8FF",d:"M210.483 73.824a172 172 0 0 0-8.24-2.597c.465-1.9.893-3.777 1.273-5.621 6.238-30.281 2.16-54.676-11.769-62.708-13.355-7.7-35.196.329-57.254 19.526a171 171 0 0 0-6.375 5.848 156 156 0 0 0-4.241-3.917C100.759 3.829 77.587-4.822 63.673 3.233 50.33 10.957 46.379 33.89 51.995 62.588a171 171 0 0 0 1.892 8.48c-3.28.932-6.445 1.924-9.474 2.98C17.309 83.498 0 98.307 0 113.668c0 15.865 18.582 31.778 46.812 41.427a146 146 0 0 0 6.921 2.165 168 168 0 0 0-2.01 9.138c-5.354 28.2-1.173 50.591 12.134 58.266 13.744 7.926 36.812-.22 59.273-19.855a146 146 0 0 0 5.342-4.923 168 168 0 0 0 6.92 6.314c21.758 18.722 43.246 26.282 56.54 18.586 13.731-7.949 18.194-32.003 12.4-61.268a145 145 0 0 0-1.535-6.842c1.62-.48 3.21-.974 4.76-1.488 29.348-9.723 48.443-25.443 48.443-41.52 0-15.417-17.868-30.326-45.517-39.844m-6.365 70.984c-1.4.463-2.836.91-4.3 1.345-3.24-10.257-7.612-21.163-12.963-32.432 5.106-11 9.31-21.767 12.459-31.957 2.619.758 5.16 1.557 7.61 2.4 23.69 8.156 38.14 20.213 38.14 29.504 0 9.896-15.606 22.743-40.946 31.14m-10.514 20.834c2.562 12.94 2.927 24.64 1.23 33.787-1.524 8.219-4.59 13.698-8.382 15.893-8.067 4.67-25.32-1.4-43.927-17.412a157 157 0 0 1-6.437-5.87c7.214-7.889 14.423-17.06 21.459-27.246 12.376-1.098 24.068-2.894 34.671-5.345q.785 3.162 1.386 6.193M87.276 214.515c-7.882 2.783-14.16 2.863-17.955.675-8.075-4.657-11.432-22.636-6.853-46.752a157 157 0 0 1 1.869-8.499c10.486 2.32 22.093 3.988 34.498 4.994 7.084 9.967 14.501 19.128 21.976 27.15a135 135 0 0 1-4.877 4.492c-9.933 8.682-19.886 14.842-28.658 17.94M50.35 144.747c-12.483-4.267-22.792-9.812-29.858-15.863-6.35-5.437-9.555-10.836-9.555-15.216 0-9.322 13.897-21.212 37.076-29.293 2.813-.98 5.757-1.905 8.812-2.773 3.204 10.42 7.406 21.315 12.477 32.332-5.137 11.18-9.399 22.249-12.634 32.792a135 135 0 0 1-6.318-1.979m12.378-84.26c-4.811-24.587-1.616-43.134 6.425-47.789 8.564-4.958 27.502 2.111 47.463 19.835a144 144 0 0 1 3.841 3.545c-7.438 7.987-14.787 17.08-21.808 26.988-12.04 1.116-23.565 2.908-34.161 5.309a160 160 0 0 1-1.76-7.887m110.427 27.268a348 348 0 0 0-7.785-12.803c8.168 1.033 15.994 2.404 23.343 4.08-2.206 7.072-4.956 14.465-8.193 22.045a381 381 0 0 0-7.365-13.322m-45.032-43.861c5.044 5.465 10.096 11.566 15.065 18.186a322 322 0 0 0-30.257-.006c4.974-6.559 10.069-12.652 15.192-18.18M82.802 87.83a323 323 0 0 0-7.227 13.238c-3.184-7.553-5.909-14.98-8.134-22.152 7.304-1.634 15.093-2.97 23.209-3.984a322 322 0 0 0-7.848 12.897m8.081 65.352c-8.385-.936-16.291-2.203-23.593-3.793 2.26-7.3 5.045-14.885 8.298-22.6a321 321 0 0 0 7.257 13.246c2.594 4.48 5.28 8.868 8.038 13.147m37.542 31.03c-5.184-5.592-10.354-11.779-15.403-18.433 4.902.192 9.899.29 14.978.29 5.218 0 10.376-.117 15.453-.343-4.985 6.774-10.018 12.97-15.028 18.486m52.198-57.817c3.422 7.8 6.306 15.345 8.596 22.52-7.422 1.694-15.436 3.058-23.88 4.071a382 382 0 0 0 7.859-13.026 347 347 0 0 0 7.425-13.565m-16.898 8.101a359 359 0 0 1-12.281 19.815 329 329 0 0 1-23.444.823c-7.967 0-15.716-.248-23.178-.732a310 310 0 0 1-12.513-19.846h.001a307 307 0 0 1-10.923-20.627 310 310 0 0 1 10.89-20.637l-.001.001a307 307 0 0 1 12.413-19.761c7.613-.576 15.42-.876 23.31-.876H128c7.926 0 15.743.303 23.354.883a329 329 0 0 1 12.335 19.695 359 359 0 0 1 11.036 20.54 330 330 0 0 1-11 20.722m22.56-122.124c8.572 4.944 11.906 24.881 6.52 51.026q-.518 2.504-1.15 5.09c-10.622-2.452-22.155-4.275-34.23-5.408-7.034-10.017-14.323-19.124-21.64-27.008a161 161 0 0 1 5.888-5.4c18.9-16.447 36.564-22.941 44.612-18.3M128 90.808c12.625 0 22.86 10.235 22.86 22.86s-10.235 22.86-22.86 22.86-22.86-10.235-22.86-22.86 10.235-22.86 22.86-22.86"})}),TJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 220",...e,children:[y.jsx("path",{fill:"#912626",d:"M245.97 168.943c-13.662 7.121-84.434 36.22-99.501 44.075s-23.437 7.78-35.34 2.09c-11.902-5.69-87.216-36.112-100.783-42.597C3.566 169.271 0 166.535 0 163.951v-25.876s98.05-21.345 113.879-27.024c15.828-5.679 21.32-5.884 34.79-.95 13.472 4.936 94.018 19.468 107.331 24.344l-.006 25.51c.002 2.558-3.07 5.364-10.024 8.988"}),y.jsx("path",{fill:"#C6302B",d:"M245.965 143.22c-13.661 7.118-84.431 36.218-99.498 44.072-15.066 7.857-23.436 7.78-35.338 2.09-11.903-5.686-87.214-36.113-100.78-42.594-13.566-6.485-13.85-10.948-.524-16.166 13.326-5.22 88.224-34.605 104.055-40.284 15.828-5.677 21.319-5.884 34.789-.948 13.471 4.934 83.819 32.935 97.13 37.81 13.316 4.881 13.827 8.9.166 16.02"}),y.jsx("path",{fill:"#912626",d:"M245.97 127.074c-13.662 7.122-84.434 36.22-99.501 44.078-15.067 7.853-23.437 7.777-35.34 2.087-11.903-5.687-87.216-36.112-100.783-42.597C3.566 127.402 0 124.67 0 122.085V96.206s98.05-21.344 113.879-27.023c15.828-5.679 21.32-5.885 34.79-.95C162.142 73.168 242.688 87.697 256 92.574l-.006 25.513c.002 2.557-3.07 5.363-10.024 8.987"}),y.jsx("path",{fill:"#C6302B",d:"M245.965 101.351c-13.661 7.12-84.431 36.218-99.498 44.075-15.066 7.854-23.436 7.777-35.338 2.087-11.903-5.686-87.214-36.112-100.78-42.594-13.566-6.483-13.85-10.947-.524-16.167C23.151 83.535 98.05 54.148 113.88 48.47c15.828-5.678 21.319-5.884 34.789-.949 13.471 4.934 83.819 32.933 97.13 37.81 13.316 4.88 13.827 8.9.166 16.02"}),y.jsx("path",{fill:"#912626",d:"M245.97 83.653c-13.662 7.12-84.434 36.22-99.501 44.078-15.067 7.854-23.437 7.777-35.34 2.087-11.903-5.687-87.216-36.113-100.783-42.595C3.566 83.98 0 81.247 0 78.665v-25.88s98.05-21.343 113.879-27.021c15.828-5.68 21.32-5.884 34.79-.95C162.142 29.749 242.688 44.278 256 49.155l-.006 25.512c.002 2.555-3.07 5.361-10.024 8.986"}),y.jsx("path",{fill:"#C6302B",d:"M245.965 57.93c-13.661 7.12-84.431 36.22-99.498 44.074-15.066 7.854-23.436 7.777-35.338 2.09C99.227 98.404 23.915 67.98 10.35 61.497S-3.5 50.55 9.825 45.331C23.151 40.113 98.05 10.73 113.88 5.05c15.828-5.679 21.319-5.883 34.789-.948s83.819 32.934 97.13 37.811c13.316 4.876 13.827 8.897.166 16.017"}),y.jsx("path",{fill:"#FFF",d:"m159.283 32.757-22.01 2.285-4.927 11.856-7.958-13.23-25.415-2.284 18.964-6.839-5.69-10.498 17.755 6.944 16.738-5.48-4.524 10.855zM131.032 90.275 89.955 73.238l58.86-9.035zM74.082 39.347c17.375 0 31.46 5.46 31.46 12.194 0 6.736-14.085 12.195-31.46 12.195s-31.46-5.46-31.46-12.195c0-6.734 14.085-12.194 31.46-12.194"}),y.jsx("path",{fill:"#621B1C",d:"m185.295 35.998 34.836 13.766-34.806 13.753z"}),y.jsx("path",{fill:"#9A2928",d:"m146.755 51.243 38.54-15.245.03 27.519-3.779 1.478z"})]}),jJe=e=>y.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 258",...e,children:y.jsxs("g",{fill:"#FFA64D",children:[y.jsx("path",{d:"M13.222 183.045C30.007 165.978 244.278 4.782 247.936 8.44c2.813 2.813-156.507 219.616-173.387 236.589s-44.26 16.785-61.14-.282c-16.972-17.066-16.972-44.73-.187-61.702",opacity:.5}),y.jsx("path",{d:"M22.693 175.45c20.63-12.098 230.119-95.18 232.65-90.68 1.97 3.47-168.79 154.538-189.514 166.541-20.63 12.003-46.98 4.783-58.89-16.222-11.909-20.818-4.876-47.543 15.754-59.64",opacity:.3}),y.jsx("path",{d:"M82.051 235.276C94.054 214.46 176.387 3.47 171.98.938 168.51-1.032 18.661 171.042 6.658 191.859c-11.91 20.818-4.689 47.356 16.129 59.265C43.51 263.127 70.048 256 82.05 235.276",opacity:.3}),y.jsx("path",{d:"M32.727 171.042c23.068-6.283 216.521-30.195 217.928-25.225 1.031 3.845-172.73 103.431-195.798 109.714s-46.699-7.595-52.794-30.945 7.69-47.261 30.664-53.544",opacity:.2}),y.jsx("path",{d:"M32.727 171.042c23.068-6.283 179.387 29.07 180.7 33.946 1.032 3.844-135.595 44.167-158.664 50.45-23.068 6.282-46.699-7.596-52.794-30.946-6.001-23.255 7.783-47.167 30.758-53.45",opacity:.1}),y.jsx("path",{d:"M86.459 225.055c6.282-23.256-28.882-180.7-33.852-182.013C48.762 42.01 8.815 179.575 2.626 202.83c-6.19 23.255 7.595 47.074 30.757 53.075 23.068 6.19 46.887-7.595 53.076-30.851",opacity:.1}),y.jsx("path",{d:"M86.459 225.055C92.74 201.799 116.372 6.939 111.496 5.626 107.651 4.595 8.908 179.576 2.626 202.925-3.564 226.18 10.22 249.999 33.383 256c23.068 6.189 46.887-7.69 53.076-30.945",opacity:.2})]})}),AJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 256",...e,children:[y.jsx("path",{fill:"#85EA2D",d:"M127.999 249.895c-67.215 0-121.9-54.68-121.9-121.896S60.785 6.102 128 6.102c67.214 0 121.899 54.685 121.899 121.9 0 67.214-54.685 121.893-121.9 121.893"}),y.jsx("path",{fill:"#173647",d:"M127.999 12.202c63.954 0 115.797 51.842 115.797 115.797 0 63.952-51.843 115.797-115.797 115.797-63.952 0-115.797-51.845-115.797-115.797S64.047 12.202 127.999 12.202m0-12.202C57.419 0 0 57.42 0 127.999s57.42 127.998 127.999 127.998S256 198.577 256 128C256 57.419 198.578 0 127.999 0"}),y.jsx("path",{fill:"#173647",d:"M80.598 86.619c-.394 4.38.146 8.909-.146 13.338-.345 4.431-.887 8.811-1.773 13.192-1.23 6.25-5.12 10.976-10.482 14.914 10.436 6.793 11.616 17.324 12.304 28.006.345 5.76.197 11.567.788 17.276.443 4.429 2.165 5.562 6.745 5.708 1.87.048 3.786 0 5.956 0v13.683c-13.535 2.313-24.708-1.525-27.467-12.992-.887-4.184-1.478-8.467-1.673-12.798-.297-4.578.195-9.155-.148-13.732-.985-12.553-2.61-16.785-14.618-17.376v-15.602a24 24 0 0 1 2.608-.443c6.596-.345 9.4-2.364 10.828-8.86.69-3.641 1.084-7.333 1.23-11.074.494-7.136.297-14.42 1.525-21.507C67.997 68.163 74.3 63.24 84.785 62.65c2.952-.149 5.955 0 9.35 0v13.98c-1.427.1-2.658.294-3.937.294-8.515-.297-8.96 2.607-9.6 9.695m16.39 32.386h-.196c-4.923-.245-9.155 3.593-9.403 8.515-.246 4.972 3.592 9.206 8.515 9.45h.59c4.875.296 9.056-3.447 9.352-8.319v-.491c.1-4.971-3.886-9.055-8.857-9.155m30.862 0c-4.774-.148-8.763 3.593-8.909 8.318 0 .297 0 .543.051.837 0 5.365 3.641 8.812 9.155 8.812 5.414 0 8.812-3.544 8.812-9.106-.051-5.366-3.646-8.91-9.109-8.86m31.602 0c-5.02-.1-9.206 3.89-9.352 8.91a9.03 9.03 0 0 0 9.055 9.054h.1c4.528.788 9.106-3.592 9.402-8.858.243-4.874-4.186-9.106-9.205-9.106m43.363.737c-5.711-.245-8.567-2.164-9.992-7.581a55 55 0 0 1-1.624-10.582c-.395-6.596-.346-13.241-.789-19.837-1.033-15.651-12.352-21.114-28.794-18.41V76.92c2.607 0 4.626 0 6.645.049 3.495.048 6.153 1.379 6.496 5.268.345 3.543.345 7.136.69 10.73.692 7.139 1.083 14.372 2.314 21.41 1.085 5.809 5.07 10.14 10.04 13.684-8.71 5.857-11.27 14.223-11.714 23.626-.245 6.448-.394 12.944-.736 19.443-.297 5.905-2.362 7.824-8.318 7.972-1.674.05-3.298.198-5.169.297v13.93c3.495 0 6.694.196 9.892 0 9.942-.592 15.947-5.415 17.918-15.063a126 126 0 0 0 1.476-16.045c.343-4.923.297-9.894.788-14.766.737-7.63 4.232-10.78 11.862-11.27.739-.1 1.427-.246 2.118-.492v-15.604c-1.282-.149-2.17-.295-3.103-.346"})]}),DJe=e=>y.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 123",...e,children:[y.jsx("path",{d:"M207.785 45.398c15.276 0 18.696 8.908 18.696 19.188v10.239H199.86v2.457c.102 5.693 2.15 7.945 9.399 7.945a50 50 0 0 0 14.58-2.252l1.863 9.01a51.2 51.2 0 0 1-17.528 3.03c-14.97 0-20.17-6.942-20.17-18.43V63.993c0-10.075 4.504-18.594 19.78-18.594m100.38-.02c14.97 0 19.392 5.283 19.392 17.222l-.04 31.432h-9.789l-.88-3.235a26.06 26.06 0 0 1-14.191 4.218c-8.703 0-12.43-5.98-12.43-14.19 0-9.686 4.218-13.413 13.904-13.413h11.447v-4.997c0-5.283-1.474-7.146-9.113-7.146-4.443.049-8.866.544-13.208 1.474l-1.474-9.112a62.4 62.4 0 0 1 16.382-2.253m79.35 0c16.341 0 20.744 9.01 20.744 18.798v12.041c.02 9.788-4.403 18.798-20.744 18.798-16.382 0-20.743-9.01-20.743-18.798v-12.04c0-9.789 4.402-18.799 20.743-18.799M198.017 28.832v10.874h-18.225v54.326h-12.286l-.041-54.326H149.26V28.832zm157.205-3.911c3.46-.012 6.905.45 10.239 1.372l-1.25 9.194a35 35 0 0 0-6.86-.778c-4.688 0-5.385 2.048-5.385 5.673v5.979h12.143l-.675 9.501h-11.447v38.17h-11.939v-38.17h-7.638v-9.501h7.638v-6.655c0-9.89 4.608-14.785 15.174-14.785M482.04 50.477a46.8 46.8 0 0 1 19.187-5.099c7.925 0 10.772 5.57 10.772 14.089v34.565h-11.939V60.757c0-2.54-1.085-3.81-3.809-3.81a31.6 31.6 0 0 0-12.43 4.096v32.99H471.8V60.756c0-2.54-1.085-3.81-3.808-3.81-4.376.52-8.601 1.913-12.43 4.096v32.99h-11.939V46.36h9.113l1.167 4.095a47.7 47.7 0 0 1 19.126-5.078 9.05 9.05 0 0 1 9.01 5.099m-224.863-5.099 1.229 10.976a94 94 0 0 0-12.676 6.942v30.716h-11.938V46.361h10.075l.778 5.283a53.5 53.5 0 0 1 12.532-6.266m29.201 0 1.188 10.976a94 94 0 0 0-12.635 6.942v30.716h-11.938V46.361h10.075l.778 5.283a53.5 53.5 0 0 1 12.532-6.266m151.43 0 1.188 10.976a94 94 0 0 0-12.634 6.942v30.716h-11.938V46.361h10.074l.779 5.283a53.4 53.4 0 0 1 12.532-6.266m-122.23 30.634h-8.804c-3.912 0-4.997 1.086-4.997 4.69s1.085 4.791 4.792 4.791a18.8 18.8 0 0 0 9.01-2.457zm71.938-20.457c-6.368 0-8.805 2.847-8.805 8.191v12.82c0 5.385 2.457 8.19 8.805 8.19s8.805-2.846 8.805-8.19V63.786c0-5.385-2.436-8.232-8.805-8.232m-179.628-.389c-5.877 0-7.925 3.133-7.925 7.638v2.417h15.174v-2.417c0-4.505-1.372-7.638-7.249-7.638"}),y.jsx("path",{fill:"#4040B2",d:"M74.538 79.821 108.12 60.45V21.645L74.538 41.057z"}),y.jsx("path",{fill:"#5C4EE5",d:"m37.269 21.645 33.583 19.412v38.764L37.269 60.43M0 38.784l33.583 19.392V19.392L0 0m37.269 103.473 33.583 19.392V84.08L37.269 64.688"})]});const PJe={"tech:docker":yJe,"tech:elasticsearch":vJe,"tech:electron":bJe,"tech:git":xJe,"tech:github":wJe,"tech:go":kJe,"tech:grafana":_Je,"tech:java":SJe,"tech:kubernetes":EJe,"tech:nginx":CJe,"tech:postgresql":$Je,"tech:prometheus":RJe,"tech:react":zJe,"tech:redis":TJe,"tech:spark":jJe,"tech:swagger":AJe,"tech:terraform":DJe};function MJe(e){const r=PJe[e.node.icon??""];return r?y.jsx(r,e):null}function NJe(e,r,n){let o=i=>e(i,...r);return n===void 0?o:Object.assign(o,{lazy:n,lazyArgs:r})}function Jre(e,r,n){let o=e.length-r.length;if(o===0)return e(...r);if(o===1)return NJe(e,r,n);throw Error("Wrong number of arguments")}function BJe(...e){return Jre(IJe,e)}function IJe(e,r){let n={};for(let[o,i]of Object.entries(e))n[o]=r(i,o,e);return n}function ene(...e){return Jre(z0,e)}function z0(e,r){if(e===r||Object.is(e,r))return!0;if(typeof e!="object"||typeof r!="object"||e===null||r===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(r))return!1;if(Array.isArray(e))return OJe(e,r);if(e instanceof Map)return LJe(e,r);if(e instanceof Set)return FJe(e,r);if(e instanceof Date)return e.getTime()===r.getTime();if(e instanceof RegExp)return e.toString()===r.toString();if(Object.keys(e).length!==Object.keys(r).length)return!1;for(let[n,o]of Object.entries(e))if(!(n in r)||!z0(o,r[n]))return!1;return!0}function OJe(e,r){if(e.length!==r.length)return!1;for(let[n,o]of e.entries())if(!z0(o,r[n]))return!1;return!0}function LJe(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e.entries())if(!r.has(n)||!z0(o,r.get(n)))return!1;return!0}function FJe(e,r){if(e.size!==r.size)return!1;let n=[...r];for(let o of e){let i=!1;for(let[a,l]of n.entries())if(z0(o,l)){i=!0,n.splice(a,1);break}if(!i)return!1}return!0}let ml=[],Fd=0;const g4=4;let m4=0;const tne=e=>{let r=[],n={get(){return n.lc||n.listen(()=>{})(),n.value},lc:0,listen(o){return n.lc=r.push(o),()=>{for(let a=Fd+g4;a(e.events=e.events||{},e.events[n+v4]||(e.events[n+v4]=o(i=>{e.events[n].reduceRight((a,l)=>(l(a),a),{shared:{},...i})})),e.events[n]=e.events[n]||[],e.events[n].push(r),()=>{let i=e.events[n],a=i.indexOf(r);i.splice(a,1),i.length||(delete e.events[n],e.events[n+v4](),delete e.events[n+v4])}),HJe=1e3,UJe=(e,r)=>qJe(e,n=>{let o=r(n);o&&e.events[y4].push(o)},VJe,n=>{let o=e.listen;e.listen=(...a)=>(!e.lc&&!e.active&&(e.active=!0,n()),o(...a));let i=e.off;return e.events[y4]=[],e.off=()=>{i(),setTimeout(()=>{if(e.active&&!e.lc){e.active=!1;for(let a of e.events[y4])a();e.events[y4]=[]}},HJe)},()=>{e.listen=o,e.off=i}}),WJe=(e,r,n)=>{Array.isArray(e)||(e=[e]);let o,i,a=()=>{if(i===m4)return;i=m4;let d=e.map(u=>u.get());if(!o||d.some((u,p)=>u!==o[p])){o=d;let u=r(...d);u&&u.then&&u.t?u.then(p=>{o===d&&l.set(p)}):(l.set(u),i=m4)}},l=tne(void 0),s=l.get;l.get=()=>(a(),s());let c=a;return UJe(l,()=>{let d=e.map(u=>u.listen(c));return a(),()=>{for(let u of d)u()}}),l};const rne=(e,r)=>WJe(e,r);function GJe(e,r,n){let o=new Set(r).add(void 0);return e.listen((i,a,l)=>{o.has(l)&&n(i,a,l)})}let Cz=(e,r)=>n=>{e.current!==n&&(e.current=n,r())};function nne(e,{keys:r,deps:n=[e,r]}={}){let o=S.useRef();o.current=e.get();let i=S.useCallback(l=>(Cz(o,l)(e.value),r?.length>0?GJe(e,r,Cz(o,l)):e.listen(Cz(o,l))),n),a=()=>o.current;return S.useSyncExternalStore(i,a,a)}const YJe=e=>{const r=rne(e,s=>Fu.create(s));function n(s){const c=e.get();if(ene(c,s))return;const d={...s,views:BJe(s.views,u=>{const p=c.views[u.id];return ene(p,u)?p:u})};e.set(d)}const o=rne(e,s=>Object.values(s.views));function i(){return nne(r)}function a(){return nne(o)}function l(s){const[c,d]=S.useState(e.value?.views[s]??null);return S.useEffect(()=>e.subscribe(u=>{d(u.views[s]??null)}),[s]),c}return{updateModel:n,$likec4model:r,useLikeC4Model:i,useLikeC4Views:a,useLikeC4View:l}},XJe=tne({_stage:"layouted",projectId:"architecture",project:{id:"architecture",title:"architecture"},specification:{tags:{internal:{color:"tomato"}},elements:{actor:{style:{shape:"person",color:"green"}},person:{style:{shape:"person",color:"green"}},component:{style:{}},container:{style:{opacity:20}},internalComponent:{style:{color:"muted",opacity:15}},schema:{style:{}},step:{style:{}},system:{style:{}},workflow:{style:{}},tool:{style:{}},process:{style:{}},repository:{style:{shape:"storage"}}},relationships:{},deployments:{cloud:{style:{}},environment:{style:{}},computeressource:{style:{}},paas:{style:{}},kubernetes:{style:{}},cluster:{style:{}},namespace:{style:{}}},customColors:{magenta:{elements:{fill:"#b100ff",stroke:"#9e00e4",hiContrast:"#ffffff",loContrast:"#fff2ff"},relationships:{line:"#c137fe",label:"#d064ff",labelBg:"#7a00b3"}}}},elements:{edfbuilder_workflow:{style:{},title:"EDFbuilder",kind:"workflow",id:"edfbuilder_workflow"},argocdworkflow:{style:{},title:"EDP ArgoCD Setup Workflow",kind:"workflow",id:"argocdworkflow"},edpworkflow:{style:{},title:"EDP Infrastructure Setup Workflow",kind:"workflow",id:"edpworkflow"},applicationspecification:{style:{},description:{txt:"The application specification describes the application and its components. It is used to generate the application and its components."},title:"application-specification",kind:"component",id:"applicationspecification"},forgejoRunner:{style:{},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},title:"Forgejo Runner",kind:"component",id:"forgejoRunner"},forgejoRunnerWorker:{style:{},description:{txt:"A worker is a service that runs a job invoked by a runner. A worker typically is a container."},title:"Forgejo Runner Worker",kind:"component",id:"forgejoRunnerWorker"},promtail:{style:{},description:{txt:"Log shipper agent for Loki"},title:"Promtail",kind:"component",id:"promtail"},edfbuilder:{style:{shape:"rectangle",icon:"tech:go"},technology:"Golang",description:{txt:"EDP Foundry Builder"},title:"edfbuilder",kind:"component",id:"edfbuilder"},idpbuilder:{style:{shape:"rectangle",icon:"tech:go"},technology:"Golang",description:{txt:"Bootstrap tool for initial platform provisioning"},title:"idpbuilder",kind:"component",id:"idpbuilder"},terraform:{style:{shape:"rectangle"},technology:"Terraform",description:{txt:"Infrastructure provisioning (IaC)"},title:"Terraform",kind:"component",id:"terraform"},edgeConnect:{style:{},description:{txt:"Provides an API and control plane to run applications on the edge"},title:"EdgeConnect Cloud",kind:"system",id:"edgeConnect"},edgeCli:{style:{},description:{txt:"Command-line client for interactive usage"},title:"EdgeConnect CLI",kind:"component",id:"edgeCli"},edgeSdk:{style:{},description:{txt:"SDK for programmatic integration"},title:"EdgeConnect SDK",kind:"component",id:"edgeSdk"},edgeTerraformProvider:{style:{},description:{txt:"Terraform provider enabling declarative provisioning"},title:"Terraform Edge provider",kind:"component",id:"edgeTerraformProvider"},elasticsearch:{style:{opacity:20,icon:"tech:elasticsearch"},technology:"Elasticsearch",description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of addressing a growing number of use cases. It centrally stores your data so you can discover the expected and uncover the unexpected.`},title:"Elasticsearch",kind:"container",id:"elasticsearch"},objectstorage:{style:{opacity:20},technology:"S3 Object Storage",description:{txt:"s3 Object Storage"},title:"s3 Object Storage",kind:"container",id:"objectstorage"},postgres:{style:{opacity:20,icon:"tech:postgresql"},technology:"PostgreSQL",description:{txt:`PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, -and correctness.`},title:"PostgreSQL",kind:"container",id:"postgres"},redis:{style:{opacity:20,icon:"tech:redis"},technology:"Redis",description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},title:"Redis",kind:"container",id:"redis"},developer:{style:{shape:"person",color:"green"},description:{txt:"The regular user of the platform"},title:"Developer",kind:"actor",id:"developer"},platformdeveloper:{style:{shape:"person",color:"gray"},description:{txt:"The EDP engineer"},title:"Platform Developer",kind:"actor",id:"platformdeveloper"},otherProductLifecycleRoles:{style:{shape:"person",color:"green"},description:{txt:"Coworking roles in the outer loop"},title:"Reviewer, Tester, Auditors, Operators",kind:"actor",id:"otherProductLifecycleRoles"},customers:{style:{shape:"person",color:"amber"},description:{txt:"Consumers of your Application"},title:"End Customers",kind:"actor",id:"customers"},cloud:{style:{},technology:"IaaS/PaaS",description:{txt:"Cloud environments"},title:"Cloud",kind:"system",id:"cloud"},enterprise:{style:{},description:{txt:"The customers' enterprise systems"},title:"Customers' Enterprise Systems",kind:"system",id:"enterprise"},documentation:{style:{icon:"tech:electron"},technology:"Static Site Generator",description:{txt:"Documentation system for EDP LikeC4 platform."},title:"Documentation",kind:"system",id:"documentation"},edf:{style:{icon:"tech:kubernetes"},technology:"Kubernetes",description:{txt:"EDP Foundry is a platform for building and deploying EDPs tenantwise."},title:"EDF",kind:"system",id:"edf"},edp:{style:{icon:"tech:kubernetes"},technology:"Kubernetes",description:{txt:"EDP Edge Development Platform"},title:"EDP",kind:"system",id:"edp"},localbox:{style:{},technology:"Linux/Windows/Mac",description:{txt:"A local development system"},title:"localbox",kind:"system",id:"localbox"},"edfbuilder_workflow.runEDP":{style:{opacity:25},title:"Run edpbuilder script",kind:"step",id:"edfbuilder_workflow.runEDP"},"edfbuilder_workflow.applyEDFBuilder":{style:{opacity:15},title:"Applies EDFbuilder resource (and triggers creation)",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder"},"applicationspecification.application_gitrepo":{style:{icon:"tech:git"},technology:"Git",description:{txt:"Git Application Repository"},title:"Git App Repo",kind:"component",id:"applicationspecification.application_gitrepo"},"applicationspecification.applicationspec_gitrepo":{style:{icon:"tech:git"},technology:"Git",description:{txt:"Git Application Specification Repository"},title:"Git AppSpec Repo",kind:"component",id:"applicationspecification.applicationspec_gitrepo"},"edp.api":{style:{opacity:20,icon:"tech:swagger"},description:{txt:"API for the EDP platform"},title:"API",kind:"container",id:"edp.api"},"edp.argoCD":{style:{opacity:20},description:{txt:"GitOps Service"},title:"ArgoCD",kind:"container",id:"edp.argoCD"},"edp.ui":{style:{opacity:20},description:{txt:"Developer Portal"},title:"Backstage",kind:"container",id:"edp.ui"},"edp.crossplane":{style:{opacity:20},tags:["internal"],description:{txt:"Declarative management of ressources"},title:"Crossplane",kind:"container",id:"edp.crossplane"},"edgeConnect.api":{style:{opacity:20},description:{txt:"Single entry point for provisioning and lifecycle management"},title:"Edge Cloud API",kind:"container",id:"edgeConnect.api"},"edgeConnect.resources":{style:{opacity:20},description:{txt:"Managed resources such as App, AppInstance, etc."},title:"Edge Resources",kind:"container",id:"edgeConnect.resources"},"edgeConnect.controllers":{style:{opacity:20},description:{txt:"Reconciles desired state and drives deployments"},title:"Controllers / Scheduler",kind:"container",id:"edgeConnect.controllers"},"edgeConnect.runtime":{style:{opacity:20},description:{txt:"Runtime where applications actually run"},title:"Edge Clusters",kind:"container",id:"edgeConnect.runtime"},"edp.externalSecrets":{style:{opacity:20},tags:["internal"],description:{txt:"Provider to access externally stored Kubernetes secrets"},title:"external-secrets",kind:"container",id:"edp.externalSecrets"},"edp.forgejo":{style:{opacity:20,icon:"tech:go"},technology:"Golang",description:{txt:`Fully managed DevOps Platform +and correctness.`},title:"PostgreSQL",kind:"container",id:"postgres"},redis:{style:{opacity:20,icon:"tech:redis"},technology:"Redis",description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},title:"Redis",kind:"container",id:"redis"},developer:{style:{shape:"person",color:"green"},description:{txt:"The regular user of the platform"},title:"Developer",kind:"actor",id:"developer"},platformdeveloper:{style:{shape:"person",color:"gray"},description:{txt:"The EDP engineer"},title:"Platform Developer",kind:"actor",id:"platformdeveloper"},otherProductLifecycleRoles:{style:{shape:"person",color:"green"},description:{txt:"Coworking roles in the outer loop"},title:"Reviewer, Tester, Auditors, Operators",kind:"actor",id:"otherProductLifecycleRoles"},customers:{style:{shape:"person",color:"amber"},description:{txt:"Consumers of your Application"},title:"End Customers",kind:"actor",id:"customers"},runtimeCluster:{style:{},technology:"Kubernetes",description:{txt:"Target cluster where applications are deployed"},title:"Kubernetes Cluster",kind:"system",id:"runtimeCluster"},cloud:{style:{},technology:"IaaS/PaaS",description:{txt:"Cloud environments"},title:"Cloud",kind:"system",id:"cloud"},enterprise:{style:{},description:{txt:"The customers' enterprise systems"},title:"Customers' Enterprise Systems",kind:"system",id:"enterprise"},documentation:{style:{icon:"tech:electron"},technology:"Static Site Generator",description:{txt:"Documentation system for EDP LikeC4 platform."},title:"Documentation",kind:"system",id:"documentation"},edf:{style:{icon:"tech:kubernetes"},technology:"Kubernetes",description:{txt:"EDP Foundry is a platform for building and deploying EDPs tenantwise."},title:"EDF",kind:"system",id:"edf"},edp:{style:{icon:"tech:kubernetes"},technology:"Kubernetes",description:{txt:"EDP Edge Development Platform"},title:"EDP",kind:"system",id:"edp"},localbox:{style:{},technology:"Linux/Windows/Mac",description:{txt:"A local development system"},title:"localbox",kind:"system",id:"localbox"},"edfbuilder_workflow.runEDP":{style:{opacity:25},title:"Run edpbuilder script",kind:"step",id:"edfbuilder_workflow.runEDP"},"edfbuilder_workflow.applyEDFBuilder":{style:{opacity:15},title:"Applies EDFbuilder resource (and triggers creation)",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder"},"applicationspecification.application_gitrepo":{style:{icon:"tech:git"},technology:"Git",description:{txt:"Git Application Repository"},title:"Git App Repo",kind:"component",id:"applicationspecification.application_gitrepo"},"applicationspecification.applicationspec_gitrepo":{style:{icon:"tech:git"},technology:"Git",description:{txt:"Git Application Specification Repository"},title:"Git AppSpec Repo",kind:"component",id:"applicationspecification.applicationspec_gitrepo"},"edp.api":{style:{opacity:20,icon:"tech:swagger"},description:{txt:"API for the EDP platform"},title:"API",kind:"container",id:"edp.api"},"edp.argoCD":{style:{opacity:20},description:{txt:"GitOps Service"},title:"ArgoCD",kind:"container",id:"edp.argoCD"},"edp.ui":{style:{opacity:20},description:{txt:"Developer Portal"},title:"Backstage",kind:"container",id:"edp.ui"},"edp.crossplane":{style:{opacity:20},tags:["internal"],description:{txt:"Declarative management of ressources"},title:"Crossplane",kind:"container",id:"edp.crossplane"},"edgeConnect.api":{style:{opacity:20},description:{txt:"Single entry point for provisioning and lifecycle management"},title:"Edge Cloud API",kind:"container",id:"edgeConnect.api"},"edgeConnect.resources":{style:{opacity:20},description:{txt:"Managed resources such as App, AppInstance, etc."},title:"Edge Resources",kind:"container",id:"edgeConnect.resources"},"edgeConnect.controllers":{style:{opacity:20},description:{txt:"Reconciles desired state and drives deployments"},title:"Controllers / Scheduler",kind:"container",id:"edgeConnect.controllers"},"edgeConnect.runtime":{style:{opacity:20},description:{txt:"Runtime where applications actually run"},title:"Edge Clusters",kind:"container",id:"edgeConnect.runtime"},"edp.externalSecrets":{style:{opacity:20},tags:["internal"],description:{txt:"Provider to access externally stored Kubernetes secrets"},title:"external-secrets",kind:"container",id:"edp.externalSecrets"},"edp.forgejo":{style:{opacity:20,icon:"tech:go"},technology:"Golang",description:{txt:`Fully managed DevOps Platform offering capabilities like code version controling collaboration and ticketing -and security scanning`},title:"Forgejo",kind:"container",id:"edp.forgejo"},"edp.forgejoActions":{style:{icon:"tech:go"},technology:"Golang",description:{txt:"Continuous Integration like Github Actions"},title:"Forgejo Actions",kind:"component",id:"edp.forgejoActions"},"edp.imageregistry":{style:{icon:"tech:go"},technology:"Golang",description:{txt:"Container Image Registry"},title:"Forgejo OCI Image Registry",kind:"component",id:"edp.imageregistry"},"edp.forgejogit":{style:{icon:"tech:git"},title:"ForgejoGit",kind:"component",id:"edp.forgejogit"},"edp.garm":{style:{opacity:20,icon:"tech:docker"},title:"Garm Image",kind:"container",id:"edp.garm"},"edp.grafana":{style:{opacity:20,icon:"tech:grafana"},description:{txt:"Data visualization and monitoring"},title:"Grafana",kind:"container",id:"edp.grafana"},"edp.ingressNginx":{style:{opacity:20},tags:["internal"],description:{txt:"Ingress Controller for incoming http(s) traffic"},title:"Ingress",kind:"container",id:"edp.ingressNginx"},"edp.keycloak":{style:{opacity:20},description:{txt:"Single Sign On for all EDP products"},title:"Keycloak",kind:"container",id:"edp.keycloak"},"edp.kyverno":{style:{opacity:20},tags:["internal"],description:{txt:"Policy-as-Code"},title:"Kyverno",kind:"container",id:"edp.kyverno"},"edp.loki":{style:{opacity:20},description:{txt:"Log aggregation system"},title:"Loki",kind:"container",id:"edp.loki"},"edp.mailhog":{style:{opacity:20},description:{txt:"Web and API based SMTP testing"},title:"Mailhog",kind:"container",id:"edp.mailhog"},"edp.minio":{style:{opacity:20},description:{txt:"S3 compatible blob storage"},title:"Minio",kind:"container",id:"edp.minio"},"edp.monitoring":{style:{opacity:20},description:{txt:"Observability system to monitor deployed components"},title:"Monitoring",kind:"container",id:"edp.monitoring"},"edp.openbao":{style:{opacity:20},description:{txt:"Secure secret storage"},title:"OpenBao",kind:"container",id:"edp.openbao"},"edp.prometheus":{style:{opacity:20,icon:"tech:prometheus"},description:{txt:"Monitoring and alerting toolkit"},title:"Prometheus",kind:"container",id:"edp.prometheus"},"edp.spark":{style:{opacity:20},tags:["internal"],description:{txt:"Allows running Spark applications on K8s"},title:"Spark",kind:"container",id:"edp.spark"},"edp.velero":{style:{opacity:20},tags:["internal"],description:{txt:"Backup Kubernetes resources"},title:"Velero",kind:"container",id:"edp.velero"},"cloud.application":{style:{color:"primary"},technology:"DSL",description:{txt:"An application description"},title:"application",kind:"schema",id:"cloud.application"},"edp.application":{style:{color:"primary"},technology:"DSL",description:{txt:"An application description"},title:"application",kind:"schema",id:"edp.application"},"edp.testApp":{style:{opacity:20},description:{txt:"Testapp to validate deployments"},title:"Fibonacci",kind:"container",id:"edp.testApp"},"localbox.application":{style:{color:"primary"},technology:"DSL",description:{txt:"An application description"},title:"application",kind:"schema",id:"localbox.application"},"localbox.git":{style:{icon:"tech:git"},technology:"Git",description:{txt:"local git"},title:"git",kind:"component",id:"localbox.git"},"edfbuilder_workflow.runEDP.createCrossplaneNS":{style:{},title:"Create Crossplane namespace",kind:"step",id:"edfbuilder_workflow.runEDP.createCrossplaneNS"},"edfbuilder_workflow.runEDP.installCrossplaneHelm":{style:{},title:"Install Crossplane Helm Chart",kind:"step",id:"edfbuilder_workflow.runEDP.installCrossplaneHelm"},"edfbuilder_workflow.runEDP.installCrossplaneFunctionsAndProviders":{style:{},title:"Install Crossplane Functions and Providers",kind:"step",id:"edfbuilder_workflow.runEDP.installCrossplaneFunctionsAndProviders"},"edfbuilder_workflow.runEDP.waitForCrossplaneFunctionsAndProviders":{style:{},title:"Wait for Crossplane Functions and Providers to become available",kind:"step",id:"edfbuilder_workflow.runEDP.waitForCrossplaneFunctionsAndProviders"},"edfbuilder_workflow.runEDP.setupCrossplaneServiceAccount":{style:{},title:"Apply cluster-admin role to crossplane shell provider service account",kind:"step",id:"edfbuilder_workflow.runEDP.setupCrossplaneServiceAccount"},"edfbuilder_workflow.runEDP.createArgoCdNS":{style:{},title:"Create ArgoCD namespace",kind:"step",id:"edfbuilder_workflow.runEDP.createArgoCdNS"},"edfbuilder_workflow.runEDP.createGiteaNS":{style:{},title:"Create Gitea namespace",kind:"step",id:"edfbuilder_workflow.runEDP.createGiteaNS"},"edfbuilder_workflow.runEDP.createArgoCdTlsCert":{style:{},title:"Create TLS Cert for Argo",kind:"step",id:"edfbuilder_workflow.runEDP.createArgoCdTlsCert"},"edfbuilder_workflow.runEDP.createGiteaTlsCert":{style:{},title:"Create TLS Cert for Forgejo",kind:"step",id:"edfbuilder_workflow.runEDP.createGiteaTlsCert"},"edfbuilder_workflow.runEDP.createEDFBuilderDefinition":{style:{},title:"Create EDFbuilder crossplane definition (defines API)",kind:"step",id:"edfbuilder_workflow.runEDP.createEDFBuilderDefinition"},"edfbuilder_workflow.runEDP.createEDFBuilderComposition":{style:{},title:"Create EDFbuilder crossplane composition (defines what happens when EDFbuilder is applied)",kind:"step",id:"edfbuilder_workflow.runEDP.createEDFBuilderComposition"},"edfbuilder_workflow.applyEDFBuilder.setEnvVars":{style:{},title:"Set required environment variables",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.setEnvVars"},"edfbuilder_workflow.applyEDFBuilder.readWriteKubeConf":{style:{},title:"Make kube.conf write/readbale",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.readWriteKubeConf"},"edfbuilder_workflow.applyEDFBuilder.setWorkDir":{style:{},title:"Set workdir to /tmp/rundir",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.setWorkDir"},"edfbuilder_workflow.applyEDFBuilder.cloneStacksRepo":{style:{},title:"Clone steps repo and checkout desired branch",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cloneStacksRepo"},"edfbuilder_workflow.applyEDFBuilder.hydrateStacksWithValues":{style:{},title:"Hydrate Stacks with values",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.hydrateStacksWithValues"},"edfbuilder_workflow.applyEDFBuilder.createNamespaces":{style:{},title:"Create all required namespaces",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createNamespaces"},"edfbuilder_workflow.applyEDFBuilder.createGiteaAdminPass":{style:{},title:"Create Admin Password for Forgejo",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createGiteaAdminPass"},"edfbuilder_workflow.applyEDFBuilder.createGrafanaPass":{style:{},title:"Create Grafana Admin Password",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createGrafanaPass"},"edfbuilder_workflow.applyEDFBuilder.applyServiceMonitorCRD":{style:{},title:"Apply ServiceMonitor CRDs for Prometheus",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.applyServiceMonitorCRD"},"edfbuilder_workflow.applyEDFBuilder.cloneIngressNginxChart":{style:{},title:"Git clone ingress-nginx helm chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cloneIngressNginxChart"},"edfbuilder_workflow.applyEDFBuilder.isntallIngressNginx":{style:{},title:"Install ingress-nginx from cloned chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.isntallIngressNginx"},"edfbuilder_workflow.applyEDFBuilder.waitForIngress":{style:{},title:"Wait till ingress-nginx is ready",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.waitForIngress"},"edfbuilder_workflow.applyEDFBuilder.cloneArgoCDHelm":{style:{},title:"Git clone ArgoCD Helm Chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cloneArgoCDHelm"},"edfbuilder_workflow.applyEDFBuilder.installArgoCD":{style:{},title:"Install ArgoCD Helm Chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installArgoCD"},"edfbuilder_workflow.applyEDFBuilder.installArgoCDIngress":{style:{},title:"Install ingress for ArgoCD",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installArgoCDIngress"},"edfbuilder_workflow.applyEDFBuilder.cloneForgejoHelmChart":{style:{},title:"Git clone Forgejo Helm Chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cloneForgejoHelmChart"},"edfbuilder_workflow.applyEDFBuilder.installForgejo":{style:{},title:"Install Forgejo Helm Chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installForgejo"},"edfbuilder_workflow.applyEDFBuilder.installForgejoIngress":{style:{},title:"Install ingress for Forgejo",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installForgejoIngress"},"edfbuilder_workflow.applyEDFBuilder.waitForArgoCD":{style:{},title:"Wait till ArgoCD is available",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.waitForArgoCD"},"edfbuilder_workflow.applyEDFBuilder.waitForForgejo":{style:{},title:"Wait till Forgejo is available",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.waitForForgejo"},"edfbuilder_workflow.applyEDFBuilder.createForgejoUser":{style:{},title:"Create technical user for Forgejo",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createForgejoUser"},"edfbuilder_workflow.applyEDFBuilder.createForgejoRepo":{style:{},title:"Create repository for EDP state in Forgejo",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createForgejoRepo"},"edfbuilder_workflow.applyEDFBuilder.installForgejoRunner":{style:{},title:"Install Forgejo Runner deployment",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installForgejoRunner"},"edfbuilder_workflow.applyEDFBuilder.registerForgejoRunner":{style:{},title:"Create registration token secret for runner",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.registerForgejoRunner"},"edfbuilder_workflow.applyEDFBuilder.configGitIdentity":{style:{},title:"Configure Git identity",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.configGitIdentity"},"edfbuilder_workflow.applyEDFBuilder.configCrossplaneArgoCDProvider":{style:{},title:"Configure Crossplane ArgoCD provider",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneArgoCDProvider"},"edfbuilder_workflow.applyEDFBuilder.configCrossplaneKindProvider":{style:{},title:"Configure Crossplane Kind provider",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneKindProvider"},"edfbuilder_workflow.applyEDFBuilder.uploadStacksToForgjo":{style:{},title:"Git push hydrated stacks to Forgejo isntance",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.uploadStacksToForgjo"},"edfbuilder_workflow.applyEDFBuilder.configArgoDockerRegistry":{style:{},title:"Configure Docker Registry for Argo Workflows",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.configArgoDockerRegistry"},"edfbuilder_workflow.applyEDFBuilder.createPackagesForgejoUser":{style:{},title:"Create packages user and token in Forgejo (unused?)",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createPackagesForgejoUser"},"edfbuilder_workflow.applyEDFBuilder.installArgoCDStacks":{style:{},title:"Apply all selected ArgoCD stacks",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installArgoCDStacks"},"edfbuilder_workflow.applyEDFBuilder.cleanup":{style:{},title:"Cleanup work folder and unset all env vars",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cleanup"},"edp.argoCD.argocdServer":{style:{},title:"ArgoCD Server",kind:"component",id:"edp.argoCD.argocdServer"},"edp.argoCD.argocdAppController":{style:{},title:"ApplicationController",kind:"component",id:"edp.argoCD.argocdAppController"},"edp.argoCD.argocdAppSetController":{style:{},title:"ApplicationSeetController",kind:"component",id:"edp.argoCD.argocdAppSetController"},"edp.argoCD.argocdRedis":{style:{icon:"tech:redis"},technology:"Redis",title:"Redis",kind:"component",id:"edp.argoCD.argocdRedis"},"edp.argoCD.argocdRepoServer":{style:{},title:"Repo Server",kind:"component",id:"edp.argoCD.argocdRepoServer"},"edp.ui.backstage":{style:{icon:"tech:react",shape:"browser"},title:"Backstage",kind:"component",id:"edp.ui.backstage"},"edp.ui.database":{style:{shape:"storage",icon:"tech:postgresql"},technology:"Postgresql",title:"Database",kind:"component",id:"edp.ui.database"},"edp.crossplane.crossplane":{style:{},title:"Crossplane",kind:"component",id:"edp.crossplane.crossplane"},"edp.crossplane.crossplaneFunction":{style:{},title:"Function Patch and Transform",kind:"component",id:"edp.crossplane.crossplaneFunction"},"edp.crossplane.crossplaneRbacManager":{style:{},title:"RBAC Manager",kind:"component",id:"edp.crossplane.crossplaneRbacManager"},"edp.crossplane.providerArgoCD":{style:{},title:"ArgoCD Provider",kind:"component",id:"edp.crossplane.providerArgoCD"},"edp.crossplane.providerKind":{style:{},title:"Kind Provider",kind:"component",id:"edp.crossplane.providerKind"},"edp.crossplane.providerShell":{style:{},title:"Shell Provider",kind:"component",id:"edp.crossplane.providerShell"},"edp.externalSecrets.externalSecrets":{style:{},title:"external-secrets controller",kind:"component",id:"edp.externalSecrets.externalSecrets"},"edp.externalSecrets.certController":{style:{},title:"cert-controller",kind:"component",id:"edp.externalSecrets.certController"},"edp.externalSecrets.webhook":{style:{},title:"webhook",kind:"component",id:"edp.externalSecrets.webhook"},"edp.forgejo.forgejocollaboration":{style:{icon:"tech:github"},title:"Collaboration",kind:"component",id:"edp.forgejo.forgejocollaboration"},"edp.forgejo.forgejoproject":{style:{icon:"tech:github"},title:"Project Mgmt",kind:"component",id:"edp.forgejo.forgejoproject"},"edp.garm.garm":{style:{icon:"tech:go"},description:{txt:"Provisions runners for Forgejo"},title:"Garm",kind:"component",id:"edp.garm.garm"},"edp.garm.providerEdgeConnect":{style:{icon:"tech:go"},description:{txt:"Acts as abstraction layer for EdgeConnect"},title:"Garm Provider for EdgeConnect",kind:"component",id:"edp.garm.providerEdgeConnect"},"edp.garm.providerKubernetes":{style:{icon:"tech:go"},description:{txt:"Acts as abstraction layer for Kubernetes"},title:"Garm Provider for Kubernetes",kind:"component",id:"edp.garm.providerKubernetes"},"edp.ingressNginx.ingressNginx":{style:{icon:"tech:nginx"},technology:"Nginx",title:"ingress-nginx",kind:"component",id:"edp.ingressNginx.ingressNginx"},"edp.keycloak.keycloak":{style:{icon:"tech:java"},technology:"Java",title:"Keycloak",kind:"component",id:"edp.keycloak.keycloak"},"edp.keycloak.keycloakDB":{style:{shape:"storage",icon:"tech:postgresql"},technology:"Postgresql",title:"Database",kind:"component",id:"edp.keycloak.keycloakDB"},"edp.mailhog.mailhog":{style:{icon:"tech:go"},technology:"Golang",title:"Mailhog",kind:"component",id:"edp.mailhog.mailhog"},"edp.minio.minio":{style:{shape:"storage"},technology:"Minio",title:"S3 Blob Storage",kind:"component",id:"edp.minio.minio"},"edp.monitoring.alloy":{style:{icon:"tech:grafana",multiple:!0},description:{txt:"Open Telemetry Collector"},title:"Alloy",kind:"component",id:"edp.monitoring.alloy"},"edp.monitoring.loki":{style:{opacity:20,icon:"tech:grafana"},description:{txt:"Log aggregation system"},title:"Loki",kind:"container",id:"edp.monitoring.loki"},"edp.openbao.openbao":{style:{shape:"storage"},technology:"Openbao",title:"Openbao",kind:"component",id:"edp.openbao.openbao"},"edp.openbao.agentInjector":{style:{},title:"Agent Injector",kind:"component",id:"edp.openbao.agentInjector"},"edp.spark.sparkoperator":{style:{icon:"tech:spark"},technology:"Spark",title:"Spark Operator",kind:"component",id:"edp.spark.sparkoperator"},"edp.velero.velero":{style:{},title:"Velero",kind:"component",id:"edp.velero.velero"},"edp.testApp.fibonacci":{style:{icon:"tech:go"},technology:"Golang",title:"Fibonacci",kind:"component",id:"edp.testApp.fibonacci"},"edp.monitoring.loki.queryFrontend":{style:{},title:"Query Frontend",kind:"component",id:"edp.monitoring.loki.queryFrontend"},"edp.monitoring.loki.distributor":{style:{},title:"Distributor",kind:"component",id:"edp.monitoring.loki.distributor"},"edp.monitoring.loki.gateway":{style:{},title:"Gateway",kind:"component",id:"edp.monitoring.loki.gateway"},"edp.monitoring.loki.ingestor":{style:{},title:"Ingestor",kind:"component",id:"edp.monitoring.loki.ingestor"},"edp.monitoring.loki.querier":{style:{},title:"Querier",kind:"component",id:"edp.monitoring.loki.querier"}},relations:{zgprrj:{title:"",source:{model:"edfbuilder_workflow.runEDP.createCrossplaneNS"},target:{model:"edfbuilder_workflow.runEDP.installCrossplaneHelm"},id:"zgprrj"},hkqe1q:{title:"",source:{model:"edfbuilder_workflow.runEDP.installCrossplaneHelm"},target:{model:"edfbuilder_workflow.runEDP.installCrossplaneFunctionsAndProviders"},id:"hkqe1q"},"7hhs3w":{title:"",source:{model:"edfbuilder_workflow.runEDP.installCrossplaneFunctionsAndProviders"},target:{model:"edfbuilder_workflow.runEDP.waitForCrossplaneFunctionsAndProviders"},id:"7hhs3w"},xjeqlb:{title:"",source:{model:"edfbuilder_workflow.runEDP.waitForCrossplaneFunctionsAndProviders"},target:{model:"edfbuilder_workflow.runEDP.setupCrossplaneServiceAccount"},id:"xjeqlb"},"1nhvr49":{title:"",source:{model:"edfbuilder_workflow.runEDP.setupCrossplaneServiceAccount"},target:{model:"edfbuilder_workflow.runEDP.createArgoCdNS"},id:"1nhvr49"},i203to:{title:"",source:{model:"edfbuilder_workflow.runEDP.createArgoCdNS"},target:{model:"edfbuilder_workflow.runEDP.createGiteaNS"},id:"i203to"},"1b9cczp":{title:"",source:{model:"edfbuilder_workflow.runEDP.createGiteaNS"},target:{model:"edfbuilder_workflow.runEDP.createArgoCdTlsCert"},id:"1b9cczp"},i514he:{title:"",source:{model:"edfbuilder_workflow.runEDP.createArgoCdTlsCert"},target:{model:"edfbuilder_workflow.runEDP.createGiteaTlsCert"},id:"i514he"},"13ashxq":{title:"",source:{model:"edfbuilder_workflow.runEDP.createGiteaTlsCert"},target:{model:"edfbuilder_workflow.runEDP.createEDFBuilderDefinition"},id:"13ashxq"},"14kigg4":{title:"",source:{model:"edfbuilder_workflow.runEDP.createEDFBuilderDefinition"},target:{model:"edfbuilder_workflow.runEDP.createEDFBuilderComposition"},id:"14kigg4"},"1y9fees":{title:"",source:{model:"edfbuilder_workflow.runEDP.createEDFBuilderComposition"},target:{model:"edfbuilder_workflow.applyEDFBuilder"},id:"1y9fees"},"1pfgmn3":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.setEnvVars"},target:{model:"edfbuilder_workflow.applyEDFBuilder.readWriteKubeConf"},id:"1pfgmn3"},"11gwuq3":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.readWriteKubeConf"},target:{model:"edfbuilder_workflow.applyEDFBuilder.setWorkDir"},id:"11gwuq3"},"1ddvozk":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.setWorkDir"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cloneStacksRepo"},id:"1ddvozk"},c4bphp:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.cloneStacksRepo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.hydrateStacksWithValues"},id:"c4bphp"},"22u12c":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.hydrateStacksWithValues"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createNamespaces"},id:"22u12c"},"1veymj5":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createNamespaces"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createGiteaAdminPass"},id:"1veymj5"},"1bx48yr":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createGiteaAdminPass"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createGrafanaPass"},id:"1bx48yr"},pbq0ly:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createGrafanaPass"},target:{model:"edfbuilder_workflow.applyEDFBuilder.applyServiceMonitorCRD"},id:"pbq0ly"},"1tj029j":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.applyServiceMonitorCRD"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cloneIngressNginxChart"},id:"1tj029j"},ukdpc6:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.cloneIngressNginxChart"},target:{model:"edfbuilder_workflow.applyEDFBuilder.isntallIngressNginx"},id:"ukdpc6"},tm63b8:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.isntallIngressNginx"},target:{model:"edfbuilder_workflow.applyEDFBuilder.waitForIngress"},id:"tm63b8"},mnqt5q:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.waitForIngress"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cloneArgoCDHelm"},id:"mnqt5q"},c3zfur:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.cloneArgoCDHelm"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCD"},id:"c3zfur"},"157ptzn":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCD"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCDIngress"},id:"157ptzn"},"8kcuka":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCDIngress"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cloneForgejoHelmChart"},id:"8kcuka"},"5sub2k":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.cloneForgejoHelmChart"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejo"},id:"5sub2k"},z8qrfi:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejoIngress"},id:"z8qrfi"},"1dqe9ri":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejoIngress"},target:{model:"edfbuilder_workflow.applyEDFBuilder.waitForArgoCD"},id:"1dqe9ri"},"12iu5vk":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.waitForArgoCD"},target:{model:"edfbuilder_workflow.applyEDFBuilder.waitForForgejo"},id:"12iu5vk"},"1xhuuis":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.waitForForgejo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createForgejoUser"},id:"1xhuuis"},vhezff:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createForgejoUser"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createForgejoRepo"},id:"vhezff"},"1dow3tq":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createForgejoRepo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejoRunner"},id:"1dow3tq"},"1k46mx8":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejoRunner"},target:{model:"edfbuilder_workflow.applyEDFBuilder.registerForgejoRunner"},id:"1k46mx8"},f5bybq:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.registerForgejoRunner"},target:{model:"edfbuilder_workflow.applyEDFBuilder.configGitIdentity"},id:"f5bybq"},"8g1uqn":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.configGitIdentity"},target:{model:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneArgoCDProvider"},id:"8g1uqn"},"9c504z":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneArgoCDProvider"},target:{model:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneKindProvider"},id:"9c504z"},"19gp6kf":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneKindProvider"},target:{model:"edfbuilder_workflow.applyEDFBuilder.uploadStacksToForgjo"},id:"19gp6kf"},h55zvp:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.uploadStacksToForgjo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.configArgoDockerRegistry"},id:"h55zvp"},"1b7dj03":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.configArgoDockerRegistry"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createPackagesForgejoUser"},id:"1b7dj03"},"1bk65oi":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createPackagesForgejoUser"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCDStacks"},id:"1bk65oi"},rsncrl:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCDStacks"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cleanup"},id:"rsncrl"},"18dtot7":{title:"register",source:{model:"forgejoRunner"},target:{model:"edp.forgejoActions"},id:"18dtot7"},"1oxlsu0":{title:"boots one",source:{model:"edfbuilder"},target:{model:"edf"},id:"1oxlsu0"},s1l7g7:{title:"runs",source:{model:"platformdeveloper"},target:{model:"edfbuilder"},id:"s1l7g7"},"8fwa3r":{title:"installs",source:{model:"idpbuilder"},target:{model:"edp.argoCD"},id:"8fwa3r"},"1ai9t9i":{title:"installs",source:{model:"idpbuilder"},target:{model:"edp.forgejo"},id:"1ai9t9i"},"1lc9jrs":{title:"installs",source:{model:"idpbuilder"},target:{model:"edp.ingressNginx"},id:"1lc9jrs"},kv3vny:{title:"runs",source:{model:"platformdeveloper"},target:{model:"idpbuilder"},id:"kv3vny"},yfhhi5:{title:"read/write",source:{model:"edp.argoCD.argocdServer"},target:{model:"edp.argoCD.argocdRedis"},id:"yfhhi5"},iullhy:{title:"read/write",source:{model:"edp.argoCD.argocdRepoServer"},target:{model:"edp.argoCD.argocdRedis"},id:"iullhy"},"10vkxaf":{title:"read/write",source:{model:"edp.argoCD.argocdAppController"},target:{model:"edp.argoCD.argocdRedis"},id:"10vkxaf"},i8z0mi:{title:"read/write",source:{model:"edp.argoCD.argocdAppSetController"},target:{model:"edp.argoCD.argocdRedis"},id:"i8z0mi"},"6mupa0":{title:"Syncs git repo",source:{model:"edp.argoCD.argocdRepoServer"},target:{model:"edp.forgejogit"},id:"6mupa0"},c23sak:{title:"reads/writes",source:{model:"edp.ui.backstage"},target:{model:"edp.ui.database"},id:"c23sak"},h84u7y:{title:"calls",source:{model:"edgeCli"},target:{model:"edgeConnect.api"},id:"h84u7y"},"1elpzvp":{title:"calls",source:{model:"edgeSdk"},target:{model:"edgeConnect.api"},id:"1elpzvp"},"6h5xnh":{title:"provisions via",source:{model:"edgeTerraformProvider"},target:{model:"edgeConnect.api"},id:"6h5xnh"},wx4vwc:{title:"creates/updates",source:{model:"edgeConnect.api"},target:{model:"edgeConnect.resources"},id:"wx4vwc"},qufboq:{title:"reconciles",source:{model:"edgeConnect.controllers"},target:{model:"edgeConnect.resources"},id:"qufboq"},"1a9x5zg":{title:"deploys",source:{model:"edgeConnect.controllers"},target:{model:"edgeConnect.runtime"},id:"1a9x5zg"},"1pbc22f":{title:"runs workflows",source:{model:"edp.forgejoActions"},target:{model:"forgejoRunner"},id:"1pbc22f"},"1olxwwi":{title:"calls binary",source:{model:"edp.garm.garm"},target:{model:"edp.garm.providerEdgeConnect"},id:"1olxwwi"},iu7wve:{title:"calls binary",source:{model:"edp.garm.garm"},target:{model:"edp.garm.providerKubernetes"},id:"iu7wve"},"13uvtiq":{title:"get metrics and alerts",source:{model:"edp.grafana"},target:{model:"edp.prometheus"},id:"13uvtiq"},"1n1utzc":{title:"get logs",source:{model:"edp.grafana"},target:{model:"edp.loki"},id:"1n1utzc"},"123efwn":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.forgejo"},id:"123efwn"},h3rut2:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.keycloak.keycloak"},id:"h3rut2"},"1p30hav":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.openbao.openbao"},id:"1p30hav"},"1yssos5":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.argoCD.argocdServer"},id:"1yssos5"},v8c8aq:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.ui.backstage"},id:"v8c8aq"},fe65w2:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.minio.minio"},id:"fe65w2"},"1jvab2g":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.monitoring.alloy"},id:"1jvab2g"},fs60l7:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.monitoring.loki.queryFrontend"},id:"fs60l7"},"1i5f8um":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.testApp.fibonacci"},id:"1i5f8um"},ofdedh:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.mailhog.mailhog"},id:"ofdedh"},"18zxrhs":{title:"reads/writes",source:{model:"edp.keycloak.keycloak"},target:{model:"edp.keycloak.keycloakDB"},id:"18zxrhs"},"11ollyi":{title:"pushes logs",source:{model:"edp.monitoring.alloy"},target:{model:"edp.monitoring.loki.distributor"},id:"11ollyi"},"1mazt1x":{title:"store backups",source:{model:"edp.velero.velero"},target:{model:"edp.minio.minio"},id:"1mazt1x"},"5hkplj":{title:"inner loop",source:{model:"developer"},target:{model:"localbox"},id:"5hkplj"},"1pp73vj":{title:"outer loop",source:{model:"developer"},target:{model:"edp"},id:"1pp73vj"},"3rnruw":{title:"uses",source:{model:"developer"},target:{model:"edgeCli"},id:"3rnruw"},"1ks7amr":{title:"uses",source:{model:"developer"},target:{model:"edgeSdk"},id:"1ks7amr"},"1l0aei7":{title:"uses",source:{model:"developer"},target:{model:"edgeTerraformProvider"},id:"1l0aei7"},nb1ag9:{title:"manages project",source:{model:"developer"},target:{model:"edp.ui"},id:"nb1ag9"},"14tsadm":{title:"manages code",source:{model:"developer"},target:{model:"edp.forgejo"},id:"14tsadm"},"129xciy":{title:"authenticates",source:{model:"developer"},target:{model:"edp.keycloak"},id:"129xciy"},"1l7h8as":{title:"manages deployments",source:{model:"developer"},target:{model:"edp.argoCD"},id:"1l7h8as"},dol85h:{title:"monitors",source:{model:"developer"},target:{model:"edp.grafana"},id:"dol85h"},"65iq0s":{title:"create and maintain apps",source:{model:"developer"},target:{model:"edp.ui.backstage"},id:"65iq0s"},u2ppde:{title:"pushes and pull images",source:{model:"developer"},target:{model:"edp.imageregistry"},id:"u2ppde"},"1dgd663":{title:"uses API",source:{model:"developer"},target:{model:"edp.api"},id:"1dgd663"},"1k2mvqc":{title:"uses git",source:{model:"developer"},target:{model:"edp.forgejogit"},id:"1k2mvqc"},"4pplfw":{title:"operates",source:{model:"platformdeveloper"},target:{model:"edgeConnect"},id:"4pplfw"},lb4xas:{title:"review / operate",source:{model:"otherProductLifecycleRoles"},target:{model:"edp"},id:"lb4xas"},"1g2ebwc":{title:"uses your app",source:{model:"customers"},target:{model:"cloud"},id:"1g2ebwc"},nc44l9:{title:"app specific dependencies",source:{model:"enterprise"},target:{model:"cloud"},id:"nc44l9"},xw0pne:{title:"provides documentation for",source:{model:"documentation"},target:{model:"edp"},id:"xw0pne"},"3sz3k3":{title:"creates and maintains documentation",source:{model:"platformdeveloper"},target:{model:"documentation"},id:"3sz3k3"},wsm3kf:{title:"builds many",source:{model:"edf"},target:{model:"edp"},id:"wsm3kf"},v8v12:{title:"develops EDP and EDF",source:{model:"platformdeveloper"},target:{model:"edf"},id:"v8v12"},"615gvx":{title:"integrates",source:{model:"edp"},target:{model:"enterprise"},id:"615gvx"},gerdx4:{title:"deploy & observe",source:{model:"edp"},target:{model:"cloud"},id:"gerdx4"},"1t93kj2":{title:"automates",source:{model:"edp"},target:{model:"edgeTerraformProvider"},id:"1t93kj2"},"96ogr7":{title:"",source:{model:"edp"},target:{model:"localbox"},id:"96ogr7"},"1mp9fps":{title:"sync",source:{model:"localbox"},target:{model:"edp"},id:"1mp9fps"},"1abvxlh":{title:"company integration",source:{model:"localbox"},target:{model:"enterprise"},id:"1abvxlh"}},globals:{predicates:{},dynamicPredicates:{},styles:{text_large:[{targets:[{wildcard:!0}],style:{size:"xl"}}]}},views:{provider:{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/edge/provider.c4",description:null,title:"Terraform Edge provider",id:"provider",autoLayout:{direction:"TB"},hash:"9f510e70e35a21871bc85c1a535584598e768d47",bounds:{x:0,y:0,width:1059,height:1265},nodes:[{id:"edgeProvider",parent:null,level:0,children:[],inEdges:[],outEdges:["u9omtf","r4j4sg","1xqlhup"],deploymentRef:"edgeProvider",title:"Terraform Edge provider",kind:"paas",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Unlocks the terraform ecosystem"},tags:[],style:{opacity:15,size:"md"},x:242,y:0,width:343,height:180,labelBBox:{x:46,y:63,width:282,height:48}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1xqlhup"],outEdges:["14pfq5a","lw6otg"],deploymentRef:"edgeSdk",title:"Edge Cloud SDK",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",icon:"tech:go",description:{txt:"Wrapper around API"},tags:[],style:{opacity:15,size:"md"},x:86,y:347,width:320,height:180,labelBBox:{x:68,y:53,width:214,height:67}},{id:"edgeProviderHost",parent:null,level:0,children:["edgeProviderHost.terralist","edgeProviderHost.edp"],inEdges:["14pfq5a","u9omtf","r4j4sg"],outEdges:[],deploymentRef:"edgeProviderHost",title:"OTC",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:478,y:276,width:466,height:648,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edgeCloud",parent:null,level:0,children:["edgeCloud.edgeApi","edgeCloud.edgeResources"],inEdges:["lw6otg"],outEdges:[],deploymentRef:"edgeCloud",title:"Edge cloud",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:8,y:623,width:420,height:634,labelBBox:{x:6,y:0,width:77,height:15}},{id:"edgeProviderHost.terralist",parent:"edgeProviderHost",level:1,children:[],inEdges:["r4j4sg"],outEdges:["c8rye7"],deploymentRef:"edgeProviderHost.terralist",title:"Terralist",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Terraform provider private hosting"},tags:[],style:{opacity:15,size:"md"},x:536,y:347,width:350,height:180,labelBBox:{x:46,y:53,width:288,height:67}},{id:"edgeCloud.edgeApi",parent:"edgeCloud",level:1,children:[],inEdges:["lw6otg"],outEdges:["1toht4t"],deploymentRef:"edgeCloud.edgeApi",title:"Edge Cloud API",kind:"paas",technology:"Edge Cloud (managed)",links:[{url:"https://swagger.edge.platform.mg3.mdb.osc.live",title:"Documentation"}],color:"primary",shape:"rectangle",icon:"tech:swagger",tags:[],style:{opacity:15,size:"md"},x:58,y:694,width:320,height:180,labelBBox:{x:73,y:64,width:204,height:46}},{id:"edgeProviderHost.edp",parent:"edgeProviderHost",level:1,children:[],inEdges:["c8rye7","14pfq5a","u9omtf"],outEdges:[],deploymentRef:"edgeProviderHost.edp",title:"Forgejo for all EDP-tenants",kind:"cluster",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",icon:"tech:git",tags:[],style:{opacity:15,size:"md"},description:{txt:"edp.buildth.ing"},technology:"Golang",navigateTo:"forgejo",x:528,y:694,width:365,height:180,labelBBox:{x:46,y:53,width:304,height:67}},{id:"edgeCloud.edgeResources",parent:"edgeCloud",level:1,children:[],inEdges:["1toht4t"],outEdges:[],deploymentRef:"edgeCloud.edgeResources",title:"Edge Cloud Resources",kind:"paas",technology:"Edge Cloud (managed)",color:"primary",shape:"rectangle",description:{txt:"App, AppInstance, etc."},tags:[],style:{opacity:15,size:"md"},x:58,y:1027,width:320,height:180,labelBBox:{x:55,y:53,width:210,height:67}}],edges:[{id:"1toht4t",source:"edgeCloud.edgeApi",target:"edgeCloud.edgeResources",label:"creates/destroys",points:[[218,874],[218,918],[218,971],[218,1016]],labelBBox:{x:219,y:939,width:107,height:18},parent:"edgeCloud",relations:["rr0lcz"],color:"gray",line:"dashed",head:"normal"},{id:"c8rye7",source:"edgeProviderHost.terralist",target:"edgeProviderHost.edp",label:"authenticates via",points:[[711,527],[711,575],[711,634],[711,684]],labelBBox:{x:712,y:592,width:109,height:18},parent:"edgeProviderHost",relations:["1q6ftvm"],color:"gray",line:"dashed",head:"normal"},{id:"14pfq5a",source:"edgeSdk",target:"edgeProviderHost.edp",label:"hosted on",points:[[366,527],[432,576],[515,638],[583,688]],labelBBox:{x:480,y:592,width:66,height:18},parent:null,relations:["1sm6ifh"],color:"gray",line:"dashed",head:"normal"},{id:"lw6otg",source:"edgeSdk",target:"edgeCloud.edgeApi",label:"calls",points:[[239,527],[235,575],[230,634],[226,684]],labelBBox:{x:234,y:592,width:32,height:18},parent:null,relations:["vfhcba"],color:"gray",line:"dashed",head:"normal"},{id:"u9omtf",source:"edgeProvider",target:"edgeProviderHost.edp",label:"hosted on",points:[[585,100],[709,116],[869,160],[951,276],[1016,367],[992,423],[951,527],[927,588],[880,644],[834,687]],labelBBox:{x:992,y:425,width:66,height:18},parent:null,relations:["12ssq9"],color:"gray",line:"dashed",head:"normal"},{id:"r4j4sg",source:"edgeProvider",target:"edgeProviderHost.terralist",label:"published to",points:[[490,180],[532,229],[585,289],[628,339]],labelBBox:{x:564,y:245,width:80,height:18},parent:null,relations:["1mpjz5d"],color:"gray",line:"dashed",head:"normal"},{id:"1xqlhup",source:"edgeProvider",target:"edgeSdk",label:"built using",points:[[371,180],[347,228],[318,288],[294,338]],labelBBox:{x:336,y:245,width:67,height:18},parent:null,relations:["1wlvsb5"],color:"gray",line:"dashed",head:"normal"}]},index:{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/kind/kind.c4",description:null,title:"Local Kind Deployment",id:"index",autoLayout:{direction:"TB"},hash:"09f216bdb503c31a28c16dff8a1c12da0a0c4cf1",bounds:{x:0,y:0,width:19320,height:1791},nodes:[{id:"otc-faas",parent:null,level:0,children:[],inEdges:[],outEdges:[],deploymentRef:"otc-faas",title:"OTC prototype FaaS",kind:"cloud",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:"OTC environments for Prototype FaaS."},tags:[],style:{opacity:15,size:"md"},x:0,y:150,width:320,height:180,labelBBox:{x:28,y:54,width:264,height:67}},{id:"edge",parent:null,level:0,children:[],inEdges:[],outEdges:[],deploymentRef:"edge",title:"Edge Cloud",kind:"cloud",technology:"Edge",color:"primary",shape:"rectangle",description:{txt:"Edge environments for distributed workloads."},tags:[],style:{opacity:15,size:"md"},x:450,y:150,width:340,height:180,labelBBox:{x:18,y:54,width:304,height:67}},{id:"edgeProvider",parent:null,level:0,children:[],inEdges:[],outEdges:["1xqlhup","u9omtf","r4j4sg"],deploymentRef:"edgeProvider",title:"Terraform Edge provider",kind:"paas",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Unlocks the terraform ecosystem"},tags:[],style:{opacity:15,size:"md"},x:920,y:150,width:343,height:180,labelBBox:{x:46,y:63,width:282,height:48}},{id:"edgeConnectEnv",parent:null,level:0,children:[],inEdges:["i6v3n"],outEdges:["1ogkmfn"],deploymentRef:"edgeConnectEnv",title:"Edge Connect",kind:"environment",technology:"Edge Connect Platform",color:"primary",shape:"rectangle",modelRef:"forgejoRunner",icon:"tech:docker",description:{txt:"Edge infrastructure for ephemeral runner deployment"},tags:[],style:{opacity:15,size:"md"},x:5425,y:150,width:347,height:180,labelBBox:{x:46,y:45,width:286,height:85}},{id:"otc-edpFoundry",parent:null,level:0,children:["otc-edpFoundry.forgejoRunnerInfrastructure","otc-edpFoundry.cce","otc-edpFoundry.workflowSetupEDPInfrastructure","otc-edpFoundry.workflowSetupArgoCDInfrastructure"],inEdges:["c2grk6","1ean8sr","l1c2z3"],outEdges:["r3wxut","1sng0q0","e3benz","9r557q","rivecr","1lrp92n"],deploymentRef:"otc-edpFoundry",title:"OTC EDP Foundry Central Service clusters",kind:"cloud",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:`OTC environments for the central EDP Foundry services. This is kubernetes clusters and other infrastructure like nodes and vms, and optionally platform services. All is set up by IaC terraform and edpbuilder. +and security scanning`},title:"Forgejo",kind:"container",id:"edp.forgejo"},"edp.forgejoActions":{style:{icon:"tech:go"},technology:"Golang",description:{txt:"Continuous Integration like Github Actions"},title:"Forgejo Actions",kind:"component",id:"edp.forgejoActions"},"edp.imageregistry":{style:{icon:"tech:go"},technology:"Golang",description:{txt:"Container Image Registry"},title:"Forgejo OCI Image Registry",kind:"component",id:"edp.imageregistry"},"edp.forgejogit":{style:{icon:"tech:git"},title:"ForgejoGit",kind:"component",id:"edp.forgejogit"},"edp.garm":{style:{opacity:20,icon:"tech:docker"},title:"Garm Image",kind:"container",id:"edp.garm"},"edp.grafana":{style:{opacity:20,icon:"tech:grafana"},description:{txt:"Data visualization and monitoring"},title:"Grafana",kind:"container",id:"edp.grafana"},"edp.ingressNginx":{style:{opacity:20},tags:["internal"],description:{txt:"Ingress Controller for incoming http(s) traffic"},title:"Ingress",kind:"container",id:"edp.ingressNginx"},"edp.keycloak":{style:{opacity:20},description:{txt:"Single Sign On for all EDP products"},title:"Keycloak",kind:"container",id:"edp.keycloak"},"edp.kyverno":{style:{opacity:20},tags:["internal"],description:{txt:"Policy-as-Code"},title:"Kyverno",kind:"container",id:"edp.kyverno"},"edp.loki":{style:{opacity:20},description:{txt:"Log aggregation system"},title:"Loki",kind:"container",id:"edp.loki"},"edp.mailhog":{style:{opacity:20},description:{txt:"Web and API based SMTP testing"},title:"Mailhog",kind:"container",id:"edp.mailhog"},"edp.minio":{style:{opacity:20},description:{txt:"S3 compatible blob storage"},title:"Minio",kind:"container",id:"edp.minio"},"edp.monitoring":{style:{opacity:20},description:{txt:"Observability system to monitor deployed components"},title:"Monitoring",kind:"container",id:"edp.monitoring"},"edp.openbao":{style:{opacity:20},description:{txt:"Secure secret storage"},title:"OpenBao",kind:"container",id:"edp.openbao"},"edp.prometheus":{style:{opacity:20,icon:"tech:prometheus"},description:{txt:"Monitoring and alerting toolkit"},title:"Prometheus",kind:"container",id:"edp.prometheus"},"edp.spark":{style:{opacity:20},tags:["internal"],description:{txt:"Allows running Spark applications on K8s"},title:"Spark",kind:"container",id:"edp.spark"},"edp.velero":{style:{opacity:20},tags:["internal"],description:{txt:"Backup Kubernetes resources"},title:"Velero",kind:"container",id:"edp.velero"},"runtimeCluster.runningApplication":{style:{opacity:20},description:{txt:"Deployed workload"},title:"Running Application",kind:"container",id:"runtimeCluster.runningApplication"},"cloud.application":{style:{color:"primary"},technology:"DSL",description:{txt:"An application description"},title:"application",kind:"schema",id:"cloud.application"},"edp.application":{style:{color:"primary"},technology:"DSL",description:{txt:"An application description"},title:"application",kind:"schema",id:"edp.application"},"edp.testApp":{style:{opacity:20},description:{txt:"Testapp to validate deployments"},title:"Fibonacci",kind:"container",id:"edp.testApp"},"localbox.application":{style:{color:"primary"},technology:"DSL",description:{txt:"An application description"},title:"application",kind:"schema",id:"localbox.application"},"localbox.git":{style:{icon:"tech:git"},technology:"Git",description:{txt:"local git"},title:"git",kind:"component",id:"localbox.git"},"edfbuilder_workflow.runEDP.createCrossplaneNS":{style:{},title:"Create Crossplane namespace",kind:"step",id:"edfbuilder_workflow.runEDP.createCrossplaneNS"},"edfbuilder_workflow.runEDP.installCrossplaneHelm":{style:{},title:"Install Crossplane Helm Chart",kind:"step",id:"edfbuilder_workflow.runEDP.installCrossplaneHelm"},"edfbuilder_workflow.runEDP.installCrossplaneFunctionsAndProviders":{style:{},title:"Install Crossplane Functions and Providers",kind:"step",id:"edfbuilder_workflow.runEDP.installCrossplaneFunctionsAndProviders"},"edfbuilder_workflow.runEDP.waitForCrossplaneFunctionsAndProviders":{style:{},title:"Wait for Crossplane Functions and Providers to become available",kind:"step",id:"edfbuilder_workflow.runEDP.waitForCrossplaneFunctionsAndProviders"},"edfbuilder_workflow.runEDP.setupCrossplaneServiceAccount":{style:{},title:"Apply cluster-admin role to crossplane shell provider service account",kind:"step",id:"edfbuilder_workflow.runEDP.setupCrossplaneServiceAccount"},"edfbuilder_workflow.runEDP.createArgoCdNS":{style:{},title:"Create ArgoCD namespace",kind:"step",id:"edfbuilder_workflow.runEDP.createArgoCdNS"},"edfbuilder_workflow.runEDP.createGiteaNS":{style:{},title:"Create Gitea namespace",kind:"step",id:"edfbuilder_workflow.runEDP.createGiteaNS"},"edfbuilder_workflow.runEDP.createArgoCdTlsCert":{style:{},title:"Create TLS Cert for Argo",kind:"step",id:"edfbuilder_workflow.runEDP.createArgoCdTlsCert"},"edfbuilder_workflow.runEDP.createGiteaTlsCert":{style:{},title:"Create TLS Cert for Forgejo",kind:"step",id:"edfbuilder_workflow.runEDP.createGiteaTlsCert"},"edfbuilder_workflow.runEDP.createEDFBuilderDefinition":{style:{},title:"Create EDFbuilder crossplane definition (defines API)",kind:"step",id:"edfbuilder_workflow.runEDP.createEDFBuilderDefinition"},"edfbuilder_workflow.runEDP.createEDFBuilderComposition":{style:{},title:"Create EDFbuilder crossplane composition (defines what happens when EDFbuilder is applied)",kind:"step",id:"edfbuilder_workflow.runEDP.createEDFBuilderComposition"},"edfbuilder_workflow.applyEDFBuilder.setEnvVars":{style:{},title:"Set required environment variables",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.setEnvVars"},"edfbuilder_workflow.applyEDFBuilder.readWriteKubeConf":{style:{},title:"Make kube.conf write/readbale",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.readWriteKubeConf"},"edfbuilder_workflow.applyEDFBuilder.setWorkDir":{style:{},title:"Set workdir to /tmp/rundir",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.setWorkDir"},"edfbuilder_workflow.applyEDFBuilder.cloneStacksRepo":{style:{},title:"Clone steps repo and checkout desired branch",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cloneStacksRepo"},"edfbuilder_workflow.applyEDFBuilder.hydrateStacksWithValues":{style:{},title:"Hydrate Stacks with values",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.hydrateStacksWithValues"},"edfbuilder_workflow.applyEDFBuilder.createNamespaces":{style:{},title:"Create all required namespaces",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createNamespaces"},"edfbuilder_workflow.applyEDFBuilder.createGiteaAdminPass":{style:{},title:"Create Admin Password for Forgejo",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createGiteaAdminPass"},"edfbuilder_workflow.applyEDFBuilder.createGrafanaPass":{style:{},title:"Create Grafana Admin Password",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createGrafanaPass"},"edfbuilder_workflow.applyEDFBuilder.applyServiceMonitorCRD":{style:{},title:"Apply ServiceMonitor CRDs for Prometheus",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.applyServiceMonitorCRD"},"edfbuilder_workflow.applyEDFBuilder.cloneIngressNginxChart":{style:{},title:"Git clone ingress-nginx helm chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cloneIngressNginxChart"},"edfbuilder_workflow.applyEDFBuilder.isntallIngressNginx":{style:{},title:"Install ingress-nginx from cloned chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.isntallIngressNginx"},"edfbuilder_workflow.applyEDFBuilder.waitForIngress":{style:{},title:"Wait till ingress-nginx is ready",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.waitForIngress"},"edfbuilder_workflow.applyEDFBuilder.cloneArgoCDHelm":{style:{},title:"Git clone ArgoCD Helm Chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cloneArgoCDHelm"},"edfbuilder_workflow.applyEDFBuilder.installArgoCD":{style:{},title:"Install ArgoCD Helm Chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installArgoCD"},"edfbuilder_workflow.applyEDFBuilder.installArgoCDIngress":{style:{},title:"Install ingress for ArgoCD",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installArgoCDIngress"},"edfbuilder_workflow.applyEDFBuilder.cloneForgejoHelmChart":{style:{},title:"Git clone Forgejo Helm Chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cloneForgejoHelmChart"},"edfbuilder_workflow.applyEDFBuilder.installForgejo":{style:{},title:"Install Forgejo Helm Chart",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installForgejo"},"edfbuilder_workflow.applyEDFBuilder.installForgejoIngress":{style:{},title:"Install ingress for Forgejo",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installForgejoIngress"},"edfbuilder_workflow.applyEDFBuilder.waitForArgoCD":{style:{},title:"Wait till ArgoCD is available",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.waitForArgoCD"},"edfbuilder_workflow.applyEDFBuilder.waitForForgejo":{style:{},title:"Wait till Forgejo is available",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.waitForForgejo"},"edfbuilder_workflow.applyEDFBuilder.createForgejoUser":{style:{},title:"Create technical user for Forgejo",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createForgejoUser"},"edfbuilder_workflow.applyEDFBuilder.createForgejoRepo":{style:{},title:"Create repository for EDP state in Forgejo",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createForgejoRepo"},"edfbuilder_workflow.applyEDFBuilder.installForgejoRunner":{style:{},title:"Install Forgejo Runner deployment",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installForgejoRunner"},"edfbuilder_workflow.applyEDFBuilder.registerForgejoRunner":{style:{},title:"Create registration token secret for runner",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.registerForgejoRunner"},"edfbuilder_workflow.applyEDFBuilder.configGitIdentity":{style:{},title:"Configure Git identity",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.configGitIdentity"},"edfbuilder_workflow.applyEDFBuilder.configCrossplaneArgoCDProvider":{style:{},title:"Configure Crossplane ArgoCD provider",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneArgoCDProvider"},"edfbuilder_workflow.applyEDFBuilder.configCrossplaneKindProvider":{style:{},title:"Configure Crossplane Kind provider",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneKindProvider"},"edfbuilder_workflow.applyEDFBuilder.uploadStacksToForgjo":{style:{},title:"Git push hydrated stacks to Forgejo isntance",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.uploadStacksToForgjo"},"edfbuilder_workflow.applyEDFBuilder.configArgoDockerRegistry":{style:{},title:"Configure Docker Registry for Argo Workflows",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.configArgoDockerRegistry"},"edfbuilder_workflow.applyEDFBuilder.createPackagesForgejoUser":{style:{},title:"Create packages user and token in Forgejo (unused?)",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.createPackagesForgejoUser"},"edfbuilder_workflow.applyEDFBuilder.installArgoCDStacks":{style:{},title:"Apply all selected ArgoCD stacks",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.installArgoCDStacks"},"edfbuilder_workflow.applyEDFBuilder.cleanup":{style:{},title:"Cleanup work folder and unset all env vars",kind:"step",id:"edfbuilder_workflow.applyEDFBuilder.cleanup"},"edp.argoCD.argocdServer":{style:{},title:"ArgoCD Server",kind:"component",id:"edp.argoCD.argocdServer"},"edp.argoCD.argocdAppController":{style:{},title:"ApplicationController",kind:"component",id:"edp.argoCD.argocdAppController"},"edp.argoCD.argocdAppSetController":{style:{},title:"ApplicationSeetController",kind:"component",id:"edp.argoCD.argocdAppSetController"},"edp.argoCD.argocdRedis":{style:{icon:"tech:redis"},technology:"Redis",title:"Redis",kind:"component",id:"edp.argoCD.argocdRedis"},"edp.argoCD.argocdRepoServer":{style:{},title:"Repo Server",kind:"component",id:"edp.argoCD.argocdRepoServer"},"edp.ui.backstage":{style:{icon:"tech:react",shape:"browser"},title:"Backstage",kind:"component",id:"edp.ui.backstage"},"edp.ui.database":{style:{shape:"storage",icon:"tech:postgresql"},technology:"Postgresql",title:"Database",kind:"component",id:"edp.ui.database"},"edp.crossplane.crossplane":{style:{},title:"Crossplane",kind:"component",id:"edp.crossplane.crossplane"},"edp.crossplane.crossplaneFunction":{style:{},title:"Function Patch and Transform",kind:"component",id:"edp.crossplane.crossplaneFunction"},"edp.crossplane.crossplaneRbacManager":{style:{},title:"RBAC Manager",kind:"component",id:"edp.crossplane.crossplaneRbacManager"},"edp.crossplane.providerArgoCD":{style:{},title:"ArgoCD Provider",kind:"component",id:"edp.crossplane.providerArgoCD"},"edp.crossplane.providerKind":{style:{},title:"Kind Provider",kind:"component",id:"edp.crossplane.providerKind"},"edp.crossplane.providerShell":{style:{},title:"Shell Provider",kind:"component",id:"edp.crossplane.providerShell"},"edp.externalSecrets.externalSecrets":{style:{},title:"external-secrets controller",kind:"component",id:"edp.externalSecrets.externalSecrets"},"edp.externalSecrets.certController":{style:{},title:"cert-controller",kind:"component",id:"edp.externalSecrets.certController"},"edp.externalSecrets.webhook":{style:{},title:"webhook",kind:"component",id:"edp.externalSecrets.webhook"},"edp.forgejo.forgejocollaboration":{style:{icon:"tech:github"},title:"Collaboration",kind:"component",id:"edp.forgejo.forgejocollaboration"},"edp.forgejo.forgejoproject":{style:{icon:"tech:github"},title:"Project Mgmt",kind:"component",id:"edp.forgejo.forgejoproject"},"edp.garm.garm":{style:{icon:"tech:go"},description:{txt:"Provisions runners for Forgejo"},title:"Garm",kind:"component",id:"edp.garm.garm"},"edp.garm.providerEdgeConnect":{style:{icon:"tech:go"},description:{txt:"Acts as abstraction layer for EdgeConnect"},title:"Garm Provider for EdgeConnect",kind:"component",id:"edp.garm.providerEdgeConnect"},"edp.garm.providerKubernetes":{style:{icon:"tech:go"},description:{txt:"Acts as abstraction layer for Kubernetes"},title:"Garm Provider for Kubernetes",kind:"component",id:"edp.garm.providerKubernetes"},"edp.ingressNginx.ingressNginx":{style:{icon:"tech:nginx"},technology:"Nginx",title:"ingress-nginx",kind:"component",id:"edp.ingressNginx.ingressNginx"},"edp.keycloak.keycloak":{style:{icon:"tech:java"},technology:"Java",title:"Keycloak",kind:"component",id:"edp.keycloak.keycloak"},"edp.keycloak.keycloakDB":{style:{shape:"storage",icon:"tech:postgresql"},technology:"Postgresql",title:"Database",kind:"component",id:"edp.keycloak.keycloakDB"},"edp.mailhog.mailhog":{style:{icon:"tech:go"},technology:"Golang",title:"Mailhog",kind:"component",id:"edp.mailhog.mailhog"},"edp.minio.minio":{style:{shape:"storage"},technology:"Minio",title:"S3 Blob Storage",kind:"component",id:"edp.minio.minio"},"edp.monitoring.alloy":{style:{icon:"tech:grafana",multiple:!0},description:{txt:"Open Telemetry Collector"},title:"Alloy",kind:"component",id:"edp.monitoring.alloy"},"edp.monitoring.loki":{style:{opacity:20,icon:"tech:grafana"},description:{txt:"Log aggregation system"},title:"Loki",kind:"container",id:"edp.monitoring.loki"},"edp.openbao.openbao":{style:{shape:"storage"},technology:"Openbao",title:"Openbao",kind:"component",id:"edp.openbao.openbao"},"edp.openbao.agentInjector":{style:{},title:"Agent Injector",kind:"component",id:"edp.openbao.agentInjector"},"edp.spark.sparkoperator":{style:{icon:"tech:spark"},technology:"Spark",title:"Spark Operator",kind:"component",id:"edp.spark.sparkoperator"},"edp.velero.velero":{style:{},title:"Velero",kind:"component",id:"edp.velero.velero"},"runtimeCluster.runningApplication.pods":{style:{},title:"Pods",kind:"component",id:"runtimeCluster.runningApplication.pods"},"runtimeCluster.runningApplication.services":{style:{},title:"Services",kind:"component",id:"runtimeCluster.runningApplication.services"},"runtimeCluster.runningApplication.ingress":{style:{},title:"Ingress",kind:"component",id:"runtimeCluster.runningApplication.ingress"},"edp.testApp.fibonacci":{style:{icon:"tech:go"},technology:"Golang",title:"Fibonacci",kind:"component",id:"edp.testApp.fibonacci"},"edp.monitoring.loki.queryFrontend":{style:{},title:"Query Frontend",kind:"component",id:"edp.monitoring.loki.queryFrontend"},"edp.monitoring.loki.distributor":{style:{},title:"Distributor",kind:"component",id:"edp.monitoring.loki.distributor"},"edp.monitoring.loki.gateway":{style:{},title:"Gateway",kind:"component",id:"edp.monitoring.loki.gateway"},"edp.monitoring.loki.ingestor":{style:{},title:"Ingestor",kind:"component",id:"edp.monitoring.loki.ingestor"},"edp.monitoring.loki.querier":{style:{},title:"Querier",kind:"component",id:"edp.monitoring.loki.querier"}},relations:{zgprrj:{title:"",source:{model:"edfbuilder_workflow.runEDP.createCrossplaneNS"},target:{model:"edfbuilder_workflow.runEDP.installCrossplaneHelm"},id:"zgprrj"},hkqe1q:{title:"",source:{model:"edfbuilder_workflow.runEDP.installCrossplaneHelm"},target:{model:"edfbuilder_workflow.runEDP.installCrossplaneFunctionsAndProviders"},id:"hkqe1q"},"7hhs3w":{title:"",source:{model:"edfbuilder_workflow.runEDP.installCrossplaneFunctionsAndProviders"},target:{model:"edfbuilder_workflow.runEDP.waitForCrossplaneFunctionsAndProviders"},id:"7hhs3w"},xjeqlb:{title:"",source:{model:"edfbuilder_workflow.runEDP.waitForCrossplaneFunctionsAndProviders"},target:{model:"edfbuilder_workflow.runEDP.setupCrossplaneServiceAccount"},id:"xjeqlb"},"1nhvr49":{title:"",source:{model:"edfbuilder_workflow.runEDP.setupCrossplaneServiceAccount"},target:{model:"edfbuilder_workflow.runEDP.createArgoCdNS"},id:"1nhvr49"},i203to:{title:"",source:{model:"edfbuilder_workflow.runEDP.createArgoCdNS"},target:{model:"edfbuilder_workflow.runEDP.createGiteaNS"},id:"i203to"},"1b9cczp":{title:"",source:{model:"edfbuilder_workflow.runEDP.createGiteaNS"},target:{model:"edfbuilder_workflow.runEDP.createArgoCdTlsCert"},id:"1b9cczp"},i514he:{title:"",source:{model:"edfbuilder_workflow.runEDP.createArgoCdTlsCert"},target:{model:"edfbuilder_workflow.runEDP.createGiteaTlsCert"},id:"i514he"},"13ashxq":{title:"",source:{model:"edfbuilder_workflow.runEDP.createGiteaTlsCert"},target:{model:"edfbuilder_workflow.runEDP.createEDFBuilderDefinition"},id:"13ashxq"},"14kigg4":{title:"",source:{model:"edfbuilder_workflow.runEDP.createEDFBuilderDefinition"},target:{model:"edfbuilder_workflow.runEDP.createEDFBuilderComposition"},id:"14kigg4"},"1y9fees":{title:"",source:{model:"edfbuilder_workflow.runEDP.createEDFBuilderComposition"},target:{model:"edfbuilder_workflow.applyEDFBuilder"},id:"1y9fees"},"1pfgmn3":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.setEnvVars"},target:{model:"edfbuilder_workflow.applyEDFBuilder.readWriteKubeConf"},id:"1pfgmn3"},"11gwuq3":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.readWriteKubeConf"},target:{model:"edfbuilder_workflow.applyEDFBuilder.setWorkDir"},id:"11gwuq3"},"1ddvozk":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.setWorkDir"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cloneStacksRepo"},id:"1ddvozk"},c4bphp:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.cloneStacksRepo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.hydrateStacksWithValues"},id:"c4bphp"},"22u12c":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.hydrateStacksWithValues"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createNamespaces"},id:"22u12c"},"1veymj5":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createNamespaces"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createGiteaAdminPass"},id:"1veymj5"},"1bx48yr":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createGiteaAdminPass"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createGrafanaPass"},id:"1bx48yr"},pbq0ly:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createGrafanaPass"},target:{model:"edfbuilder_workflow.applyEDFBuilder.applyServiceMonitorCRD"},id:"pbq0ly"},"1tj029j":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.applyServiceMonitorCRD"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cloneIngressNginxChart"},id:"1tj029j"},ukdpc6:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.cloneIngressNginxChart"},target:{model:"edfbuilder_workflow.applyEDFBuilder.isntallIngressNginx"},id:"ukdpc6"},tm63b8:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.isntallIngressNginx"},target:{model:"edfbuilder_workflow.applyEDFBuilder.waitForIngress"},id:"tm63b8"},mnqt5q:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.waitForIngress"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cloneArgoCDHelm"},id:"mnqt5q"},c3zfur:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.cloneArgoCDHelm"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCD"},id:"c3zfur"},"157ptzn":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCD"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCDIngress"},id:"157ptzn"},"8kcuka":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCDIngress"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cloneForgejoHelmChart"},id:"8kcuka"},"5sub2k":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.cloneForgejoHelmChart"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejo"},id:"5sub2k"},z8qrfi:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejoIngress"},id:"z8qrfi"},"1dqe9ri":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejoIngress"},target:{model:"edfbuilder_workflow.applyEDFBuilder.waitForArgoCD"},id:"1dqe9ri"},"12iu5vk":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.waitForArgoCD"},target:{model:"edfbuilder_workflow.applyEDFBuilder.waitForForgejo"},id:"12iu5vk"},"1xhuuis":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.waitForForgejo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createForgejoUser"},id:"1xhuuis"},vhezff:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createForgejoUser"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createForgejoRepo"},id:"vhezff"},"1dow3tq":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createForgejoRepo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejoRunner"},id:"1dow3tq"},"1k46mx8":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installForgejoRunner"},target:{model:"edfbuilder_workflow.applyEDFBuilder.registerForgejoRunner"},id:"1k46mx8"},f5bybq:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.registerForgejoRunner"},target:{model:"edfbuilder_workflow.applyEDFBuilder.configGitIdentity"},id:"f5bybq"},"8g1uqn":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.configGitIdentity"},target:{model:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneArgoCDProvider"},id:"8g1uqn"},"9c504z":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneArgoCDProvider"},target:{model:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneKindProvider"},id:"9c504z"},"19gp6kf":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.configCrossplaneKindProvider"},target:{model:"edfbuilder_workflow.applyEDFBuilder.uploadStacksToForgjo"},id:"19gp6kf"},h55zvp:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.uploadStacksToForgjo"},target:{model:"edfbuilder_workflow.applyEDFBuilder.configArgoDockerRegistry"},id:"h55zvp"},"1b7dj03":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.configArgoDockerRegistry"},target:{model:"edfbuilder_workflow.applyEDFBuilder.createPackagesForgejoUser"},id:"1b7dj03"},"1bk65oi":{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.createPackagesForgejoUser"},target:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCDStacks"},id:"1bk65oi"},rsncrl:{title:"",source:{model:"edfbuilder_workflow.applyEDFBuilder.installArgoCDStacks"},target:{model:"edfbuilder_workflow.applyEDFBuilder.cleanup"},id:"rsncrl"},"18dtot7":{title:"register",source:{model:"forgejoRunner"},target:{model:"edp.forgejoActions"},id:"18dtot7"},"1oxlsu0":{title:"boots one",source:{model:"edfbuilder"},target:{model:"edf"},id:"1oxlsu0"},s1l7g7:{title:"runs",source:{model:"platformdeveloper"},target:{model:"edfbuilder"},id:"s1l7g7"},"8fwa3r":{title:"installs",source:{model:"idpbuilder"},target:{model:"edp.argoCD"},id:"8fwa3r"},"1ai9t9i":{title:"installs",source:{model:"idpbuilder"},target:{model:"edp.forgejo"},id:"1ai9t9i"},"1lc9jrs":{title:"installs",source:{model:"idpbuilder"},target:{model:"edp.ingressNginx"},id:"1lc9jrs"},kv3vny:{title:"runs",source:{model:"platformdeveloper"},target:{model:"idpbuilder"},id:"kv3vny"},yfhhi5:{title:"read/write",source:{model:"edp.argoCD.argocdServer"},target:{model:"edp.argoCD.argocdRedis"},id:"yfhhi5"},iullhy:{title:"read/write",source:{model:"edp.argoCD.argocdRepoServer"},target:{model:"edp.argoCD.argocdRedis"},id:"iullhy"},"10vkxaf":{title:"read/write",source:{model:"edp.argoCD.argocdAppController"},target:{model:"edp.argoCD.argocdRedis"},id:"10vkxaf"},i8z0mi:{title:"read/write",source:{model:"edp.argoCD.argocdAppSetController"},target:{model:"edp.argoCD.argocdRedis"},id:"i8z0mi"},"6mupa0":{title:"Syncs git repo",source:{model:"edp.argoCD.argocdRepoServer"},target:{model:"edp.forgejogit"},id:"6mupa0"},c23sak:{title:"reads/writes",source:{model:"edp.ui.backstage"},target:{model:"edp.ui.database"},id:"c23sak"},h84u7y:{title:"calls",source:{model:"edgeCli"},target:{model:"edgeConnect.api"},id:"h84u7y"},"1elpzvp":{title:"calls",source:{model:"edgeSdk"},target:{model:"edgeConnect.api"},id:"1elpzvp"},"6h5xnh":{title:"provisions via",source:{model:"edgeTerraformProvider"},target:{model:"edgeConnect.api"},id:"6h5xnh"},wx4vwc:{title:"creates/updates",source:{model:"edgeConnect.api"},target:{model:"edgeConnect.resources"},id:"wx4vwc"},qufboq:{title:"reconciles",source:{model:"edgeConnect.controllers"},target:{model:"edgeConnect.resources"},id:"qufboq"},"1a9x5zg":{title:"deploys",source:{model:"edgeConnect.controllers"},target:{model:"edgeConnect.runtime"},id:"1a9x5zg"},"1pbc22f":{title:"runs workflows",source:{model:"edp.forgejoActions"},target:{model:"forgejoRunner"},id:"1pbc22f"},"1olxwwi":{title:"calls binary",source:{model:"edp.garm.garm"},target:{model:"edp.garm.providerEdgeConnect"},id:"1olxwwi"},iu7wve:{title:"calls binary",source:{model:"edp.garm.garm"},target:{model:"edp.garm.providerKubernetes"},id:"iu7wve"},"13uvtiq":{title:"get metrics and alerts",source:{model:"edp.grafana"},target:{model:"edp.prometheus"},id:"13uvtiq"},"1n1utzc":{title:"get logs",source:{model:"edp.grafana"},target:{model:"edp.loki"},id:"1n1utzc"},"123efwn":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.forgejo"},id:"123efwn"},h3rut2:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.keycloak.keycloak"},id:"h3rut2"},"1p30hav":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.openbao.openbao"},id:"1p30hav"},"1yssos5":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.argoCD.argocdServer"},id:"1yssos5"},v8c8aq:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.ui.backstage"},id:"v8c8aq"},fe65w2:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.minio.minio"},id:"fe65w2"},"1jvab2g":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.monitoring.alloy"},id:"1jvab2g"},fs60l7:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.monitoring.loki.queryFrontend"},id:"fs60l7"},"1i5f8um":{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.testApp.fibonacci"},id:"1i5f8um"},ofdedh:{title:"https",source:{model:"edp.ingressNginx.ingressNginx"},target:{model:"edp.mailhog.mailhog"},id:"ofdedh"},"18zxrhs":{title:"reads/writes",source:{model:"edp.keycloak.keycloak"},target:{model:"edp.keycloak.keycloakDB"},id:"18zxrhs"},"11ollyi":{title:"pushes logs",source:{model:"edp.monitoring.alloy"},target:{model:"edp.monitoring.loki.distributor"},id:"11ollyi"},"1mazt1x":{title:"store backups",source:{model:"edp.velero.velero"},target:{model:"edp.minio.minio"},id:"1mazt1x"},"5hkplj":{title:"inner loop",source:{model:"developer"},target:{model:"localbox"},id:"5hkplj"},"1pp73vj":{title:"outer loop",source:{model:"developer"},target:{model:"edp"},id:"1pp73vj"},"3rnruw":{title:"uses",source:{model:"developer"},target:{model:"edgeCli"},id:"3rnruw"},"1ks7amr":{title:"uses",source:{model:"developer"},target:{model:"edgeSdk"},id:"1ks7amr"},"1l0aei7":{title:"uses",source:{model:"developer"},target:{model:"edgeTerraformProvider"},id:"1l0aei7"},nb1ag9:{title:"manages project",source:{model:"developer"},target:{model:"edp.ui"},id:"nb1ag9"},"14tsadm":{title:"manages code",source:{model:"developer"},target:{model:"edp.forgejo"},id:"14tsadm"},"129xciy":{title:"authenticates",source:{model:"developer"},target:{model:"edp.keycloak"},id:"129xciy"},"1l7h8as":{title:"manages deployments",source:{model:"developer"},target:{model:"edp.argoCD"},id:"1l7h8as"},dol85h:{title:"monitors",source:{model:"developer"},target:{model:"edp.grafana"},id:"dol85h"},"65iq0s":{title:"create and maintain apps",source:{model:"developer"},target:{model:"edp.ui.backstage"},id:"65iq0s"},u2ppde:{title:"pushes and pull images",source:{model:"developer"},target:{model:"edp.imageregistry"},id:"u2ppde"},"1dgd663":{title:"uses API",source:{model:"developer"},target:{model:"edp.api"},id:"1dgd663"},"1k2mvqc":{title:"uses git",source:{model:"developer"},target:{model:"edp.forgejogit"},id:"1k2mvqc"},"4pplfw":{title:"operates",source:{model:"platformdeveloper"},target:{model:"edgeConnect"},id:"4pplfw"},lb4xas:{title:"review / operate",source:{model:"otherProductLifecycleRoles"},target:{model:"edp"},id:"lb4xas"},"1g2ebwc":{title:"uses your app",source:{model:"customers"},target:{model:"cloud"},id:"1g2ebwc"},vxxbwa:{title:"git push",source:{model:"developer"},target:{model:"edp.forgejogit"},id:"vxxbwa"},"1yai3r5":{title:"triggers",source:{model:"edp.forgejogit"},target:{model:"edp.forgejoActions"},id:"1yai3r5"},"21d2gk":{title:"push image",source:{model:"edp.forgejoActions"},target:{model:"edp.imageregistry"},id:"21d2gk"},yorv62:{title:"watches manifests",source:{model:"edp.forgejogit"},target:{model:"edp.argoCD"},id:"yorv62"},"1f6l7ms":{title:"deploys",source:{model:"edp.argoCD"},target:{model:"runtimeCluster"},id:"1f6l7ms"},nc44l9:{title:"app specific dependencies",source:{model:"enterprise"},target:{model:"cloud"},id:"nc44l9"},xw0pne:{title:"provides documentation for",source:{model:"documentation"},target:{model:"edp"},id:"xw0pne"},"3sz3k3":{title:"creates and maintains documentation",source:{model:"platformdeveloper"},target:{model:"documentation"},id:"3sz3k3"},wsm3kf:{title:"builds many",source:{model:"edf"},target:{model:"edp"},id:"wsm3kf"},v8v12:{title:"develops EDP and EDF",source:{model:"platformdeveloper"},target:{model:"edf"},id:"v8v12"},"615gvx":{title:"integrates",source:{model:"edp"},target:{model:"enterprise"},id:"615gvx"},gerdx4:{title:"deploy & observe",source:{model:"edp"},target:{model:"cloud"},id:"gerdx4"},"1t93kj2":{title:"automates",source:{model:"edp"},target:{model:"edgeTerraformProvider"},id:"1t93kj2"},"96ogr7":{title:"",source:{model:"edp"},target:{model:"localbox"},id:"96ogr7"},"1mp9fps":{title:"sync",source:{model:"localbox"},target:{model:"edp"},id:"1mp9fps"},"1abvxlh":{title:"company integration",source:{model:"localbox"},target:{model:"enterprise"},id:"1abvxlh"}},globals:{predicates:{},dynamicPredicates:{},styles:{text_large:[{targets:[{wildcard:!0}],style:{size:"xl"}}]}},views:{provider:{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/edge/provider.c4",description:null,title:"Terraform Edge provider",id:"provider",autoLayout:{direction:"TB"},hash:"9f510e70e35a21871bc85c1a535584598e768d47",bounds:{x:0,y:0,width:1059,height:1265},nodes:[{id:"edgeProvider",parent:null,level:0,children:[],inEdges:[],outEdges:["u9omtf","r4j4sg","1xqlhup"],deploymentRef:"edgeProvider",title:"Terraform Edge provider",kind:"paas",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Unlocks the terraform ecosystem"},tags:[],style:{opacity:15,size:"md"},x:242,y:0,width:343,height:180,labelBBox:{x:46,y:63,width:282,height:48}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1xqlhup"],outEdges:["14pfq5a","lw6otg"],deploymentRef:"edgeSdk",title:"Edge Cloud SDK",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",icon:"tech:go",description:{txt:"Wrapper around API"},tags:[],style:{opacity:15,size:"md"},x:86,y:347,width:320,height:180,labelBBox:{x:68,y:53,width:214,height:67}},{id:"edgeProviderHost",parent:null,level:0,children:["edgeProviderHost.terralist","edgeProviderHost.edp"],inEdges:["14pfq5a","u9omtf","r4j4sg"],outEdges:[],deploymentRef:"edgeProviderHost",title:"OTC",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:478,y:276,width:466,height:648,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edgeCloud",parent:null,level:0,children:["edgeCloud.edgeApi","edgeCloud.edgeResources"],inEdges:["lw6otg"],outEdges:[],deploymentRef:"edgeCloud",title:"Edge cloud",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:8,y:623,width:420,height:634,labelBBox:{x:6,y:0,width:77,height:15}},{id:"edgeProviderHost.terralist",parent:"edgeProviderHost",level:1,children:[],inEdges:["r4j4sg"],outEdges:["c8rye7"],deploymentRef:"edgeProviderHost.terralist",title:"Terralist",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Terraform provider private hosting"},tags:[],style:{opacity:15,size:"md"},x:536,y:347,width:350,height:180,labelBBox:{x:46,y:53,width:288,height:67}},{id:"edgeCloud.edgeApi",parent:"edgeCloud",level:1,children:[],inEdges:["lw6otg"],outEdges:["1toht4t"],deploymentRef:"edgeCloud.edgeApi",title:"Edge Cloud API",kind:"paas",technology:"Edge Cloud (managed)",links:[{url:"https://swagger.edge.platform.mg3.mdb.osc.live",title:"Documentation"}],color:"primary",shape:"rectangle",icon:"tech:swagger",tags:[],style:{opacity:15,size:"md"},x:58,y:694,width:320,height:180,labelBBox:{x:73,y:64,width:204,height:46}},{id:"edgeProviderHost.edp",parent:"edgeProviderHost",level:1,children:[],inEdges:["c8rye7","14pfq5a","u9omtf"],outEdges:[],deploymentRef:"edgeProviderHost.edp",title:"Forgejo for all EDP-tenants",kind:"cluster",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",icon:"tech:git",tags:[],style:{opacity:15,size:"md"},description:{txt:"edp.buildth.ing"},technology:"Golang",navigateTo:"forgejo",x:528,y:694,width:365,height:180,labelBBox:{x:46,y:53,width:304,height:67}},{id:"edgeCloud.edgeResources",parent:"edgeCloud",level:1,children:[],inEdges:["1toht4t"],outEdges:[],deploymentRef:"edgeCloud.edgeResources",title:"Edge Cloud Resources",kind:"paas",technology:"Edge Cloud (managed)",color:"primary",shape:"rectangle",description:{txt:"App, AppInstance, etc."},tags:[],style:{opacity:15,size:"md"},x:58,y:1027,width:320,height:180,labelBBox:{x:55,y:53,width:210,height:67}}],edges:[{id:"1toht4t",source:"edgeCloud.edgeApi",target:"edgeCloud.edgeResources",label:"creates/destroys",points:[[218,874],[218,918],[218,971],[218,1016]],labelBBox:{x:219,y:939,width:107,height:18},parent:"edgeCloud",relations:["rr0lcz"],color:"gray",line:"dashed",head:"normal"},{id:"c8rye7",source:"edgeProviderHost.terralist",target:"edgeProviderHost.edp",label:"authenticates via",points:[[711,527],[711,575],[711,634],[711,684]],labelBBox:{x:712,y:592,width:109,height:18},parent:"edgeProviderHost",relations:["1q6ftvm"],color:"gray",line:"dashed",head:"normal"},{id:"14pfq5a",source:"edgeSdk",target:"edgeProviderHost.edp",label:"hosted on",points:[[366,527],[432,576],[515,638],[583,688]],labelBBox:{x:480,y:592,width:66,height:18},parent:null,relations:["1sm6ifh"],color:"gray",line:"dashed",head:"normal"},{id:"lw6otg",source:"edgeSdk",target:"edgeCloud.edgeApi",label:"calls",points:[[239,527],[235,575],[230,634],[226,684]],labelBBox:{x:234,y:592,width:32,height:18},parent:null,relations:["vfhcba"],color:"gray",line:"dashed",head:"normal"},{id:"u9omtf",source:"edgeProvider",target:"edgeProviderHost.edp",label:"hosted on",points:[[585,100],[709,116],[869,160],[951,276],[1016,367],[992,423],[951,527],[927,588],[880,644],[834,687]],labelBBox:{x:992,y:425,width:66,height:18},parent:null,relations:["12ssq9"],color:"gray",line:"dashed",head:"normal"},{id:"r4j4sg",source:"edgeProvider",target:"edgeProviderHost.terralist",label:"published to",points:[[490,180],[532,229],[585,289],[628,339]],labelBBox:{x:564,y:245,width:80,height:18},parent:null,relations:["1mpjz5d"],color:"gray",line:"dashed",head:"normal"},{id:"1xqlhup",source:"edgeProvider",target:"edgeSdk",label:"built using",points:[[371,180],[347,228],[318,288],[294,338]],labelBBox:{x:336,y:245,width:67,height:18},parent:null,relations:["1wlvsb5"],color:"gray",line:"dashed",head:"normal"}]},index:{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/kind/kind.c4",description:null,title:"Local Kind Deployment",id:"index",autoLayout:{direction:"TB"},hash:"09f216bdb503c31a28c16dff8a1c12da0a0c4cf1",bounds:{x:0,y:0,width:19320,height:1791},nodes:[{id:"otc-faas",parent:null,level:0,children:[],inEdges:[],outEdges:[],deploymentRef:"otc-faas",title:"OTC prototype FaaS",kind:"cloud",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:"OTC environments for Prototype FaaS."},tags:[],style:{opacity:15,size:"md"},x:0,y:150,width:320,height:180,labelBBox:{x:28,y:54,width:264,height:67}},{id:"edge",parent:null,level:0,children:[],inEdges:[],outEdges:[],deploymentRef:"edge",title:"Edge Cloud",kind:"cloud",technology:"Edge",color:"primary",shape:"rectangle",description:{txt:"Edge environments for distributed workloads."},tags:[],style:{opacity:15,size:"md"},x:450,y:150,width:340,height:180,labelBBox:{x:18,y:54,width:304,height:67}},{id:"edgeProvider",parent:null,level:0,children:[],inEdges:[],outEdges:["1xqlhup","u9omtf","r4j4sg"],deploymentRef:"edgeProvider",title:"Terraform Edge provider",kind:"paas",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Unlocks the terraform ecosystem"},tags:[],style:{opacity:15,size:"md"},x:920,y:150,width:343,height:180,labelBBox:{x:46,y:63,width:282,height:48}},{id:"edgeConnectEnv",parent:null,level:0,children:[],inEdges:["i6v3n"],outEdges:["1ogkmfn"],deploymentRef:"edgeConnectEnv",title:"Edge Connect",kind:"environment",technology:"Edge Connect Platform",color:"primary",shape:"rectangle",modelRef:"forgejoRunner",icon:"tech:docker",description:{txt:"Edge infrastructure for ephemeral runner deployment"},tags:[],style:{opacity:15,size:"md"},x:5425,y:150,width:347,height:180,labelBBox:{x:46,y:45,width:286,height:85}},{id:"otc-edpFoundry",parent:null,level:0,children:["otc-edpFoundry.forgejoRunnerInfrastructure","otc-edpFoundry.cce","otc-edpFoundry.workflowSetupEDPInfrastructure","otc-edpFoundry.workflowSetupArgoCDInfrastructure"],inEdges:["c2grk6","1ean8sr","l1c2z3"],outEdges:["r3wxut","1sng0q0","e3benz","9r557q","rivecr","1lrp92n"],deploymentRef:"otc-edpFoundry",title:"OTC EDP Foundry Central Service clusters",kind:"cloud",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:`OTC environments for the central EDP Foundry services. This is kubernetes clusters and other infrastructure like nodes and vms, and optionally platform services. All is set up by IaC terraform and edpbuilder. A tenant is a folder in Foundry-Config-Forgejo. On merge triggers reconciliation to EDP. Optionally we will have a WebUI/API/CLI`},tags:[],style:{opacity:15,size:"md"},depth:1,x:3577,y:79,width:870,height:995,labelBBox:{x:6,y:0,width:280,height:15}},{id:"otcTenantProd",parent:null,level:0,children:["otcTenantProd.otcTenantEdpBuildthing","otcTenantProd.otcTenantObservability","otcTenantProd.otcTenantCustomerA"],inEdges:[],outEdges:["1ypat9q","1oiku86"],deploymentRef:"otcTenantProd",title:"Prod - builth.ing",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:17522,y:79,width:870,height:648,labelBBox:{x:6,y:0,width:108,height:15}},{id:"local",parent:null,level:0,children:["local.ingressNginx","local.velero","local.crossplane","local.externalSecrets","local.monitoring","local.backstage","local.argocd","local.keycloak","local.openbao","local.fibonacci","local.mailhog","local.minio","local.gitea","local.spark.sparkoperator"],inEdges:["1m1lj8s"],outEdges:["se5brg"],deploymentRef:"local",title:"Local kind-cluster",kind:"environment",technology:"Kind",color:"primary",shape:"rectangle",icon:"tech:kubernetes",description:{txt:"Local kind-cluster environment for EDP, typically run by edpbuilder"},tags:[],style:{opacity:15,size:"md"},depth:2,x:6508,y:8,width:10964,height:1449,labelBBox:{x:6,y:0,width:127,height:15}},{id:"local.ingressNginx",parent:"local",level:1,children:["local.ingressNginx.ingressNginx"],inEdges:[],outEdges:["15juth8","p2br4p","o229dq","2vnvvg","4ix58c","1hr2s5j","1nksp5g","m2japo","4drflo","ihlgsc"],deploymentRef:"local.ingressNginx",title:"ingress-nginx",kind:"namespace",color:"primary",shape:"rectangle",modelRef:"edp.ingressNginx.ingressNginx",tags:[],style:{opacity:15,size:"md"},depth:1,x:10434,y:444,width:384,height:265,labelBBox:{x:6,y:0,width:92,height:15}},{id:"local.velero",parent:"local",level:1,children:["local.velero.velero"],inEdges:[],outEdges:["3znaik"],deploymentRef:"local.velero",title:"velero",kind:"namespace",color:"primary",shape:"rectangle",modelRef:"edp.velero.velero",tags:[],style:{opacity:15,size:"md"},depth:1,x:12058,y:444,width:384,height:265,labelBBox:{x:6,y:0,width:49,height:15}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1xqlhup"],outEdges:["14pfq5a","lw6otg"],deploymentRef:"edgeSdk",title:"Edge Cloud SDK",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",icon:"tech:go",description:{txt:"Wrapper around API"},tags:[],style:{opacity:15,size:"md"},x:731,y:497,width:320,height:180,labelBBox:{x:68,y:54,width:214,height:67}},{id:"otc-edpFoundry.forgejoRunnerInfrastructure",parent:"otc-edpFoundry",level:1,children:[],inEdges:["l1c2z3"],outEdges:["109g3jm","1lrp92n"],deploymentRef:"otc-edpFoundry.forgejoRunnerInfrastructure",title:"EDP ForgejoRunner infrastructure",kind:"computeressource",color:"primary",shape:"rectangle",modelRef:"forgejoRunner",description:{txt:"Infrastructure for Forgejo runners like pods, vms, lxds, etc"},tags:[],style:{opacity:15,size:"md"},technology:null,x:4055,y:150,width:342,height:180,labelBBox:{x:18,y:54,width:306,height:66}},{id:"otcTenantProd.otcTenantEdpBuildthing",parent:"otcTenantProd",level:1,children:[],inEdges:[],outEdges:["rj56uy","u7ohgi","1ypat9q","1oiku86"],deploymentRef:"otcTenantProd.otcTenantEdpBuildthing",title:"edp.builth.ing",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Primary Instance"},tags:[],style:{opacity:15,size:"md"},x:18022,y:150,width:320,height:180,labelBBox:{x:85,y:63,width:181,height:48}},{id:"local.crossplane",parent:"local",level:1,children:["local.crossplane.crossplane","local.crossplane.crossplaneFunction","local.crossplane.crossplaneRbacManager","local.crossplane.providerArgoCD","local.crossplane.providerKind","local.crossplane.providerShell"],inEdges:[],outEdges:[],deploymentRef:"local.crossplane",title:"crossplane-system",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:12982,y:79,width:2670,height:301,labelBBox:{x:6,y:0,width:129,height:15}},{id:"local.crossplane.crossplane",parent:"local.crossplane",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Crossplane",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.crossplane.crossplane",modelRef:"edp.crossplane.crossplane",x:13032,y:150,width:320,height:180,labelBBox:{x:107,y:74,width:105,height:24}},{id:"local.crossplane.crossplaneFunction",parent:"local.crossplane",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Function Patch and Transform",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.crossplane.crossplaneFunction",modelRef:"edp.crossplane.crossplaneFunction",x:13482,y:150,width:320,height:180,labelBBox:{x:24,y:74,width:273,height:24}},{id:"local.crossplane.crossplaneRbacManager",parent:"local.crossplane",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"RBAC Manager",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.crossplane.crossplaneRbacManager",modelRef:"edp.crossplane.crossplaneRbacManager",x:13932,y:150,width:320,height:180,labelBBox:{x:88,y:74,width:144,height:24}},{id:"local.crossplane.providerArgoCD",parent:"local.crossplane",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"ArgoCD Provider",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.crossplane.providerArgoCD",modelRef:"edp.crossplane.providerArgoCD",x:14382,y:150,width:320,height:180,labelBBox:{x:82,y:74,width:155,height:24}},{id:"local.crossplane.providerKind",parent:"local.crossplane",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Kind Provider",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.crossplane.providerKind",modelRef:"edp.crossplane.providerKind",x:14832,y:150,width:320,height:180,labelBBox:{x:98,y:74,width:124,height:24}},{id:"local.crossplane.providerShell",parent:"local.crossplane",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Shell Provider",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.crossplane.providerShell",modelRef:"edp.crossplane.providerShell",x:15282,y:150,width:320,height:180,labelBBox:{x:96,y:74,width:129,height:24}},{id:"local.externalSecrets",parent:"local",level:1,children:["local.externalSecrets.certController","local.externalSecrets.externalSecrets","local.externalSecrets.webhook"],inEdges:[],outEdges:[],deploymentRef:"local.externalSecrets",title:"external-secrets",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:15702,y:79,width:1320,height:301,labelBBox:{x:6,y:0,width:119,height:15}},{id:"local.externalSecrets.certController",parent:"local.externalSecrets",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"cert-controller",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.externalSecrets.certController",modelRef:"edp.externalSecrets.certController",x:15752,y:150,width:320,height:180,labelBBox:{x:97,y:74,width:126,height:24}},{id:"local.externalSecrets.externalSecrets",parent:"local.externalSecrets",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"external-secrets controller",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.externalSecrets.externalSecrets",modelRef:"edp.externalSecrets.externalSecrets",x:16202,y:150,width:320,height:180,labelBBox:{x:43,y:74,width:234,height:24}},{id:"local.externalSecrets.webhook",parent:"local.externalSecrets",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"webhook",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.externalSecrets.webhook",modelRef:"edp.externalSecrets.webhook",x:16652,y:150,width:320,height:180,labelBBox:{x:118,y:74,width:84,height:24}},{id:"local.monitoring",parent:"local",level:1,children:["local.monitoring.gateway","local.monitoring.ingestor","local.monitoring.querier","local.monitoring.alloy","local.monitoring.queryFrontend","local.monitoring.distributor"],inEdges:["1hr2s5j","1nksp5g"],outEdges:[],deploymentRef:"local.monitoring",title:"monitoring",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:7028,y:79,width:1320,height:1328,labelBBox:{x:6,y:0,width:75,height:15}},{id:"local.monitoring.gateway",parent:"local.monitoring",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Gateway",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.monitoring.gateway",modelRef:"edp.monitoring.loki.gateway",x:7078,y:150,width:320,height:180,labelBBox:{x:119,y:74,width:83,height:24}},{id:"local.monitoring.ingestor",parent:"local.monitoring",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Ingestor",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.monitoring.ingestor",modelRef:"edp.monitoring.loki.ingestor",x:7528,y:150,width:320,height:180,labelBBox:{x:122,y:74,width:76,height:24}},{id:"local.monitoring.querier",parent:"local.monitoring",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Querier",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.monitoring.querier",modelRef:"edp.monitoring.loki.querier",x:7978,y:150,width:320,height:180,labelBBox:{x:125,y:74,width:71,height:24}},{id:"local.ingressNginx.ingressNginx",parent:"local.ingressNginx",level:2,children:[],inEdges:[],outEdges:["15juth8","p2br4p","o229dq","2vnvvg","4ix58c","1hr2s5j","1nksp5g","m2japo","4drflo","ihlgsc"],kind:"instance",title:"ingress-nginx",technology:"Nginx",tags:[],icon:"tech:nginx",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.ingressNginx.ingressNginx",modelRef:"edp.ingressNginx.ingressNginx",x:10466,y:497,width:320,height:180,labelBBox:{x:85,y:65,width:181,height:45}},{id:"local.velero.velero",parent:"local.velero",level:2,children:[],inEdges:[],outEdges:["3znaik"],kind:"instance",title:"Velero",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.velero.velero",modelRef:"edp.velero.velero",x:12090,y:497,width:320,height:180,labelBBox:{x:129,y:74,width:62,height:24}},{id:"edgeProviderHost",parent:null,level:0,children:["edgeProviderHost.terralist","edgeProviderHost.edp"],inEdges:["u9omtf","r4j4sg","14pfq5a"],outEdges:[],deploymentRef:"edgeProviderHost",title:"OTC",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:1123,y:426,width:466,height:648,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edgeCloud",parent:null,level:0,children:["edgeCloud.edgeApi","edgeCloud.edgeResources"],inEdges:["lw6otg"],outEdges:[],deploymentRef:"edgeCloud",title:"Edge cloud",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:653,y:773,width:420,height:634,labelBBox:{x:6,y:0,width:77,height:15}},{id:"otc-edpFoundry.cce",parent:"otc-edpFoundry",level:1,children:[],inEdges:["109g3jm"],outEdges:["llfvob","fil3na"],deploymentRef:"otc-edpFoundry.cce",title:"OTC CCE",kind:"kubernetes",technology:"Kubernetes",color:"primary",shape:"rectangle",icon:"tech:kubernetes",description:{txt:"OTC Container Cluster Engine"},tags:[],style:{opacity:15,size:"md"},x:4062,y:497,width:327,height:180,labelBBox:{x:46,y:54,width:266,height:67}},{id:"otcTenantProd.otcTenantObservability",parent:"otcTenantProd",level:1,children:[],inEdges:["rj56uy"],outEdges:[],deploymentRef:"otcTenantProd.otcTenantObservability",title:"observability.builth.ing",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Observability Instance"},tags:[],style:{opacity:15,size:"md"},x:17572,y:497,width:320,height:180,labelBBox:{x:46,y:63,width:258,height:48}},{id:"otcTenantProd.otcTenantCustomerA",parent:"otcTenantProd",level:1,children:[],inEdges:["u7ohgi"],outEdges:[],deploymentRef:"otcTenantProd.otcTenantCustomerA",title:"customer-a.builth.ing",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Customer Instance"},tags:[],style:{opacity:15,size:"md"},x:18022,y:497,width:320,height:180,labelBBox:{x:51,y:63,width:248,height:48}},{id:"otcTenantNonProd",parent:null,level:0,children:["otcTenantNonProd.otcTenantDev1","otcTenantNonProd.otcTenantTestX"],inEdges:["1ypat9q","1oiku86"],outEdges:[],deploymentRef:"otcTenantNonProd",title:"Non-Prod - t09.de",kind:"environment",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:18442,y:426,width:870,height:301,labelBBox:{x:6,y:0,width:111,height:15}},{id:"local.backstage",parent:"local",level:1,children:["local.backstage.backstage","local.backstage.database"],inEdges:["15juth8"],outEdges:[],deploymentRef:"local.backstage",title:"backstage",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:8398,y:773,width:420,height:634,labelBBox:{x:6,y:0,width:74,height:15}},{id:"local.argocd",parent:"local",level:1,children:["local.argocd.argocdAppController","local.argocd.argocdAppSetController","local.argocd.argocdRepoServer","local.argocd.argocdServer","local.argocd.argocdRedis"],inEdges:["p2br4p"],outEdges:[],deploymentRef:"local.argocd",title:"argocd",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:8868,y:773,width:1770,height:634,labelBBox:{x:6,y:0,width:53,height:15}},{id:"local.keycloak",parent:"local",level:1,children:["local.keycloak.keycloak","local.keycloak.keycloakDB"],inEdges:["2vnvvg"],outEdges:[],deploymentRef:"local.keycloak",title:"keycloak",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:10688,y:773,width:420,height:634,labelBBox:{x:6,y:0,width:66,height:15}},{id:"local.openbao",parent:"local",level:1,children:["local.openbao.openbao","local.openbao.agentInjector"],inEdges:["m2japo"],outEdges:[],deploymentRef:"local.openbao",title:"openbao",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:6558,y:79,width:420,height:995,labelBBox:{x:6,y:0,width:60,height:15}},{id:"local.fibonacci",parent:"local",level:1,children:["local.fibonacci.fibonacci"],inEdges:["4drflo"],outEdges:[],deploymentRef:"local.fibonacci",title:"fibonacci-app",kind:"namespace",color:"primary",shape:"rectangle",modelRef:"edp.testApp.fibonacci",tags:[],style:{opacity:15,size:"md"},depth:1,x:11158,y:791,width:384,height:265,labelBBox:{x:6,y:0,width:91,height:15}},{id:"local.mailhog",parent:"local",level:1,children:["local.mailhog.mailhog"],inEdges:["ihlgsc"],outEdges:[],deploymentRef:"local.mailhog",title:"mailhog",kind:"namespace",color:"primary",shape:"rectangle",modelRef:"edp.mailhog.mailhog",tags:[],style:{opacity:15,size:"md"},depth:1,x:11608,y:791,width:384,height:265,labelBBox:{x:6,y:0,width:56,height:15}},{id:"local.minio",parent:"local",level:1,children:["local.minio.minio"],inEdges:["3znaik","4ix58c"],outEdges:[],deploymentRef:"local.minio",title:"minio-backup",kind:"namespace",color:"primary",shape:"rectangle",modelRef:"edp.minio.minio",tags:[],style:{opacity:15,size:"md"},depth:1,x:12058,y:791,width:384,height:265,labelBBox:{x:6,y:0,width:86,height:15}},{id:"edgeProviderHost.terralist",parent:"edgeProviderHost",level:1,children:[],inEdges:["r4j4sg"],outEdges:["c8rye7"],deploymentRef:"edgeProviderHost.terralist",title:"Terralist",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",icon:"tech:terraform",description:{txt:"Terraform provider private hosting"},tags:[],style:{opacity:15,size:"md"},x:1181,y:497,width:350,height:180,labelBBox:{x:46,y:54,width:288,height:67}},{id:"edgeCloud.edgeApi",parent:"edgeCloud",level:1,children:[],inEdges:["lw6otg"],outEdges:["1toht4t"],deploymentRef:"edgeCloud.edgeApi",title:"Edge Cloud API",kind:"paas",technology:"Edge Cloud (managed)",links:[{url:"https://swagger.edge.platform.mg3.mdb.osc.live",title:"Documentation"}],color:"primary",shape:"rectangle",icon:"tech:swagger",tags:[],style:{opacity:15,size:"md"},x:703,y:844,width:320,height:180,labelBBox:{x:73,y:65,width:204,height:45}},{id:"otc-edpFoundry.workflowSetupEDPInfrastructure",parent:"otc-edpFoundry",level:1,children:[],inEdges:["llfvob","c2grk6"],outEdges:["r3wxut","e3benz","9r557q"],deploymentRef:"otc-edpFoundry.workflowSetupEDPInfrastructure",title:"EDP infrastructure Workflow",kind:"computeressource",color:"primary",shape:"rectangle",description:{txt:"EDP infrastructure Workflow"},tags:[],style:{opacity:15,size:"md"},x:3627,y:844,width:320,height:180,labelBBox:{x:32,y:63,width:255,height:48}},{id:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",parent:"otc-edpFoundry",level:1,children:[],inEdges:["fil3na","1ean8sr"],outEdges:["1sng0q0","rivecr"],deploymentRef:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",title:"EDP ArgoCD Workflow",kind:"computeressource",color:"primary",shape:"rectangle",description:{txt:"EDP Setup ArgoCD Workflow"},tags:[],style:{opacity:15,size:"md"},x:4077,y:844,width:320,height:180,labelBBox:{x:55,y:63,width:210,height:48}},{id:"otcTenantNonProd.otcTenantDev1",parent:"otcTenantNonProd",level:1,children:[],inEdges:["1ypat9q"],outEdges:[],deploymentRef:"otcTenantNonProd.otcTenantDev1",title:"dev1.t09.de",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Development Instance"},tags:[],style:{opacity:15,size:"md"},x:18492,y:497,width:320,height:180,labelBBox:{x:69,y:63,width:212,height:48}},{id:"otcTenantNonProd.otcTenantTestX",parent:"otcTenantNonProd",level:1,children:[],inEdges:["1oiku86"],outEdges:[],deploymentRef:"otcTenantNonProd.otcTenantTestX",title:"test-x.t09.de",kind:"cluster",color:"primary",shape:"rectangle",icon:"tech:git",description:{txt:"Testing Instance"},tags:[],style:{opacity:15,size:"md"},x:18942,y:497,width:320,height:180,labelBBox:{x:89,y:63,width:172,height:48}},{id:"local.backstage.backstage",parent:"local.backstage",level:2,children:[],inEdges:["15juth8"],outEdges:["19kg5y"],kind:"instance",title:"Backstage",tags:[],icon:"tech:react",color:"primary",shape:"browser",style:{opacity:15,size:"md"},deploymentRef:"local.backstage.backstage",modelRef:"edp.ui.backstage",x:8448,y:844,width:320,height:180,labelBBox:{x:97,y:74,width:156,height:24}},{id:"local.argocd.argocdAppController",parent:"local.argocd",level:2,children:[],inEdges:[],outEdges:["1gfgfhk"],kind:"instance",title:"ApplicationController",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.argocd.argocdAppController",modelRef:"edp.argoCD.argocdAppController",x:8918,y:844,width:320,height:180,labelBBox:{x:66,y:74,width:189,height:24}},{id:"local.argocd.argocdAppSetController",parent:"local.argocd",level:2,children:[],inEdges:[],outEdges:["qfu5xm"],kind:"instance",title:"ApplicationSeetController",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.argocd.argocdAppSetController",modelRef:"edp.argoCD.argocdAppSetController",x:9368,y:844,width:320,height:180,labelBBox:{x:45,y:74,width:230,height:24}},{id:"local.argocd.argocdRepoServer",parent:"local.argocd",level:2,children:[],inEdges:[],outEdges:["g7xnzs"],kind:"instance",title:"Repo Server",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.argocd.argocdRepoServer",modelRef:"edp.argoCD.argocdRepoServer",x:9818,y:844,width:320,height:180,labelBBox:{x:102,y:74,width:116,height:24}},{id:"local.argocd.argocdServer",parent:"local.argocd",level:2,children:[],inEdges:["p2br4p"],outEdges:["fon3rk"],kind:"instance",title:"ArgoCD Server",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.argocd.argocdServer",modelRef:"edp.argoCD.argocdServer",x:10268,y:844,width:320,height:180,labelBBox:{x:90,y:74,width:140,height:24}},{id:"local.keycloak.keycloak",parent:"local.keycloak",level:2,children:[],inEdges:["2vnvvg"],outEdges:["4zwy1m"],kind:"instance",title:"Keycloak",technology:"Java",tags:[],icon:"tech:java",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.keycloak.keycloak",modelRef:"edp.keycloak.keycloak",x:10738,y:844,width:320,height:180,labelBBox:{x:104,y:65,width:143,height:45}},{id:"local.monitoring.alloy",parent:"local.monitoring",level:2,children:[],inEdges:["1hr2s5j"],outEdges:["sb2j38"],kind:"instance",title:"Alloy",description:{txt:"Open Telemetry Collector"},tags:[],icon:"tech:grafana",color:"primary",shape:"rectangle",style:{opacity:15,size:"md",multiple:!0},deploymentRef:"local.monitoring.alloy",modelRef:"edp.monitoring.alloy",x:7528,y:844,width:320,height:180,labelBBox:{x:59,y:63,width:233,height:48}},{id:"local.monitoring.queryFrontend",parent:"local.monitoring",level:2,children:[],inEdges:["1nksp5g"],outEdges:[],kind:"instance",title:"Query Frontend",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.monitoring.queryFrontend",modelRef:"edp.monitoring.loki.queryFrontend",x:7978,y:844,width:320,height:180,labelBBox:{x:88,y:74,width:144,height:24}},{id:"local.openbao.openbao",parent:"local.openbao",level:2,children:[],inEdges:["m2japo"],outEdges:[],kind:"instance",title:"Openbao",technology:"Openbao",tags:[],color:"primary",shape:"storage",style:{opacity:15,size:"md"},deploymentRef:"local.openbao.openbao",modelRef:"edp.openbao.openbao",x:6608,y:844,width:320,height:180,labelBBox:{x:117,y:65,width:86,height:45}},{id:"local.openbao.agentInjector",parent:"local.openbao",level:2,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Agent Injector",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.openbao.agentInjector",modelRef:"edp.openbao.agentInjector",x:6608,y:150,width:320,height:180,labelBBox:{x:96,y:74,width:127,height:24}},{id:"local.fibonacci.fibonacci",parent:"local.fibonacci",level:2,children:[],inEdges:["4drflo"],outEdges:[],kind:"instance",title:"Fibonacci",technology:"Golang",tags:[],icon:"tech:go",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.fibonacci.fibonacci",modelRef:"edp.testApp.fibonacci",x:11190,y:844,width:320,height:180,labelBBox:{x:101,y:65,width:148,height:45}},{id:"local.mailhog.mailhog",parent:"local.mailhog",level:2,children:[],inEdges:["ihlgsc"],outEdges:[],kind:"instance",title:"Mailhog",technology:"Golang",tags:[],icon:"tech:go",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.mailhog.mailhog",modelRef:"edp.mailhog.mailhog",x:11640,y:844,width:320,height:180,labelBBox:{x:109,y:65,width:132,height:45}},{id:"local.minio.minio",parent:"local.minio",level:2,children:[],inEdges:["3znaik","4ix58c"],outEdges:[],kind:"instance",title:"S3 Blob Storage",technology:"Minio",tags:[],color:"primary",shape:"storage",style:{opacity:15,size:"md"},deploymentRef:"local.minio.minio",modelRef:"edp.minio.minio",x:12090,y:844,width:320,height:180,labelBBox:{x:85,y:65,width:150,height:45}},{id:"edgeProviderHost.edp",parent:"edgeProviderHost",level:1,children:[],inEdges:["u9omtf","14pfq5a","c8rye7"],outEdges:[],deploymentRef:"edgeProviderHost.edp",title:"Forgejo for all EDP-tenants",kind:"cluster",color:"primary",shape:"rectangle",modelRef:"edp.forgejo",icon:"tech:git",tags:[],style:{opacity:15,size:"md"},description:{txt:"edp.buildth.ing"},technology:"Golang",navigateTo:"forgejo",x:1173,y:844,width:365,height:180,labelBBox:{x:46,y:54,width:304,height:67}},{id:"edgeCloud.edgeResources",parent:"edgeCloud",level:1,children:[],inEdges:["1toht4t"],outEdges:[],deploymentRef:"edgeCloud.edgeResources",title:"Edge Cloud Resources",kind:"paas",technology:"Edge Cloud (managed)",color:"primary",shape:"rectangle",description:{txt:"App, AppInstance, etc."},tags:[],style:{opacity:15,size:"md"},x:703,y:1177,width:320,height:180,labelBBox:{x:55,y:53,width:210,height:68}},{id:"otc-edp-per-tenant",parent:null,level:0,children:["otc-edp-per-tenant.forgejoRunnerInfrastructure","otc-edp-per-tenant.cce","otc-edp-per-tenant.cloudServices"],inEdges:["r3wxut","1sng0q0","p2umm7","e3benz","126mt75"],outEdges:["b27cdb","1mbuxdd"],deploymentRef:"otc-edp-per-tenant",title:"OTC EDP per tenant cluster",kind:"cloud",technology:"OTC",color:"primary",shape:"rectangle",description:{txt:`OTC environment for EDP. EDP is the environment a customer gets from us. @@ -267,11 +267,19 @@ and security scanning`},tags:[],technology:"Golang",kind:"container",isCustomize offering capabilities like code version controling collaboration and ticketing -and security scanning`},tags:[],technology:"Golang",kind:"container",isCustomized:!0,navigateTo:"forgejo",x:585,y:69,width:340,height:180,labelBBox:{x:45,y:17,width:279,height:139}}],edges:[{id:"step-01",source:"localbox.git",target:"edp.forgejogit",label:"git push",points:[[360,449],[430,449],[513,449],[585,449]],labelBBox:{x:429,y:417,width:75,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@0"},{id:"step-02",source:"edp.forgejogit",target:"forgejoRunner",label:"on push",points:[[896,539],[1008,612],[1151,708],[1172,734],[1219,795],[1184,836],[1232,896],[1233,898],[1235,900],[1236,901]],labelBBox:{x:1051,y:582,width:76,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@1"},{id:"step-03",source:"forgejoRunner",target:"edp.imageregistry",label:"pushes new image",points:[[1232,1012],[1159,1012],[1073,1003],[1001,972],[934,942],[874,886],[830,837]],labelBBox:{x:1018,y:940,width:143,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@2"},{id:"step-04",source:"forgejoRunner",target:"edp.forgejogit",label:"pushes new appspec",points:[[900,546],[915,561],[930,577],[941,594],[995,673],[940,726],[1001,800],[1034,839],[1139,892],[1232,933]],labelBBox:{x:1010,y:768,width:158,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@3"},{id:"step-05",source:"edp.forgejogit",target:"edp.argoCD",label:"triggers deployment",points:[[914,483],[1008,503],[1126,528],[1222,549]],labelBBox:{x:1015,y:473,width:148,height:19},parent:"edp",relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@4"},{id:"step-06",source:"edp.argoCD",target:"cloud",label:"deploys application",points:[[1487,675],[1596,779],[1775,949],[1887,1056]],labelBBox:{x:1621,y:769,width:145,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@5"},{id:"step-07",source:"cloud",target:"edp.imageregistry",label:"pulls image",points:[[818,837],[897,950],[1047,1129],[1232,1183],[1432,1241],[1674,1216],[1830,1188]],labelBBox:{x:1346,y:1151,width:97,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@6"}]},edpbuilderworkflow:{_type:"element",tags:null,links:null,viewOf:"edfbuilder",_stage:"layouted",sourcePath:"views/edp/edfbuilder.c4",description:{txt:"Describes the process how to create an EDP instance"},title:"edfbuilder",id:"edpbuilderworkflow",autoLayout:{direction:"LR",nodeSep:110,rankSep:120},hash:"40921acf4f52bd8d6d2ac3a0d1810b3b7bc13b2a",bounds:{x:0,y:0,width:320,height:180},nodes:[{id:"edfbuilder",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"edfbuilder",modelRef:"edfbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"EDP Foundry Builder"},tags:[],technology:"Golang",kind:"component",x:0,y:0,width:320,height:180,labelBBox:{x:74,y:53,width:203,height:67}}],edges:[]},edp:{_type:"element",tags:null,links:null,viewOf:"edp",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Context view",id:"edp",autoLayout:{direction:"TB"},hash:"ba53376b6cc4e0b6917ee1f37ed0e82910320e20",bounds:{x:0,y:0,width:5676,height:943},nodes:[{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["stl3mw"],outEdges:["1cy1y20"],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:5356,y:392,width:320,height:180,labelBBox:{x:23,y:36,width:274,height:102}},{id:"idpbuilder",parent:null,level:0,children:[],inEdges:[],outEdges:["1dvclx1","hjkafp"],title:"idpbuilder",modelRef:"idpbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"md"},description:{txt:"Bootstrap tool for initial platform provisioning"},tags:[],technology:"Golang",kind:"component",x:430,y:69,width:335,height:180,labelBBox:{x:47,y:44,width:273,height:86}},{id:"developer",parent:null,level:0,children:[],inEdges:[],outEdges:["1y3lcyj","1ttqc1r","170qzun","1bt83vj","1nv0w41","1agven9","3nxrq7","bfgapq"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:25,size:"md"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:0,y:69,width:320,height:180,labelBBox:{x:53,y:63,width:214,height:48}},{id:"edp",parent:null,level:0,children:["edp.forgejoActions","edp.argoCD","edp.forgejo","edp.api","edp.ui","edp.imageregistry","edp.grafana","edp.keycloak","edp.forgejogit","edp.loki","edp.prometheus","edp.mailhog","edp.minio","edp.monitoring","edp.openbao","edp.testApp","edp.garm","edp.application"],inEdges:["1cy1y20","1dvclx1","hjkafp","1y3lcyj","1ttqc1r","170qzun","1bt83vj","1nv0w41","1agven9","3nxrq7","bfgapq"],outEdges:["stl3mw"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:25,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",depth:1,navigateTo:"idp",x:806,y:8,width:4480,height:927,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edp.forgejoActions",parent:"edp",level:1,children:[],inEdges:["1cy1y20"],outEdges:["stl3mw"],title:"Forgejo Actions",modelRef:"edp.forgejoActions",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"md"},description:{txt:"Continuous Integration like Github Actions"},tags:[],technology:"Golang",kind:"component",x:4896,y:69,width:350,height:180,labelBBox:{x:46,y:44,width:288,height:86}},{id:"edp.argoCD",parent:"edp",level:1,children:[],inEdges:["1dvclx1","1ttqc1r"],outEdges:["f6xyb4"],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"GitOps Service"},tags:[],kind:"container",navigateTo:"argoCD",x:2640,y:392,width:320,height:180,labelBBox:{x:108,y:63,width:105,height:48}},{id:"edp.forgejo",parent:"edp",level:1,children:[],inEdges:["hjkafp","1bt83vj"],outEdges:[],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"md"},description:{txt:`Fully managed DevOps Platform +and security scanning`},tags:[],technology:"Golang",kind:"container",isCustomized:!0,navigateTo:"forgejo",x:585,y:69,width:340,height:180,labelBBox:{x:45,y:17,width:279,height:139}}],edges:[{id:"step-01",source:"localbox.git",target:"edp.forgejogit",label:"git push",points:[[360,449],[430,449],[513,449],[585,449]],labelBBox:{x:429,y:417,width:75,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@0"},{id:"step-02",source:"edp.forgejogit",target:"forgejoRunner",label:"on push",points:[[896,539],[1008,612],[1151,708],[1172,734],[1219,795],[1184,836],[1232,896],[1233,898],[1235,900],[1236,901]],labelBBox:{x:1051,y:582,width:76,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@1"},{id:"step-03",source:"forgejoRunner",target:"edp.imageregistry",label:"pushes new image",points:[[1232,1012],[1159,1012],[1073,1003],[1001,972],[934,942],[874,886],[830,837]],labelBBox:{x:1018,y:940,width:143,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@2"},{id:"step-04",source:"forgejoRunner",target:"edp.forgejogit",label:"pushes new appspec",points:[[900,546],[915,561],[930,577],[941,594],[995,673],[940,726],[1001,800],[1034,839],[1139,892],[1232,933]],labelBBox:{x:1010,y:768,width:158,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@3"},{id:"step-05",source:"edp.forgejogit",target:"edp.argoCD",label:"triggers deployment",points:[[914,483],[1008,503],[1126,528],[1222,549]],labelBBox:{x:1015,y:473,width:148,height:19},parent:"edp",relations:["yorv62"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@4"},{id:"step-06",source:"edp.argoCD",target:"cloud",label:"deploys application",points:[[1487,675],[1596,779],[1775,949],[1887,1056]],labelBBox:{x:1621,y:769,width:145,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@5"},{id:"step-07",source:"cloud",target:"edp.imageregistry",label:"pulls image",points:[[818,837],[897,950],[1047,1129],[1232,1183],[1432,1241],[1674,1216],[1830,1188]],labelBBox:{x:1346,y:1151,width:97,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@6"}]},orchestration_workflow:{_type:"dynamic",tags:null,links:null,_stage:"layouted",sourcePath:"views/dynamic/orchestration/orchestration-workflow.c4",description:null,title:"Orchestration Workflow",id:"orchestration_workflow",variant:"diagram",autoLayout:{direction:"TB"},hash:"df518980b33cdcc56c4e56c7c6fe04f37b4e95bb",sequenceLayout:{actors:[{id:"developer",x:0,y:0,width:320,height:180,ports:[{id:"step-01_source",cx:160,cy:306,height:40,type:"source",position:"right"}]},{id:"edp.forgejo",x:380,y:0,width:340,height:180,ports:[{id:"step-01_target",cx:170,cy:306,height:24,type:"target",position:"left"},{id:"step-02_source",cx:170,cy:328,height:40,type:"source",position:"right"},{id:"step-03_source",cx:170,cy:421,height:40,type:"source",position:"right"}]},{id:"edp.forgejoActions",x:780,y:0,width:350,height:180,ports:[{id:"step-02_target",cx:175,cy:328,height:24,type:"target",position:"left"}]},{id:"edp.forgejogit",x:1190,y:0,width:320,height:180,ports:[{id:"step-03_target",cx:160,cy:421,height:24,type:"target",position:"left"},{id:"step-04_source",cx:160,cy:443,height:40,type:"source",position:"right"}]},{id:"edp.argoCD",x:1570,y:0,width:320,height:180,ports:[{id:"step-04_target",cx:160,cy:443,height:24,type:"target",position:"left"},{id:"step-05_source",cx:160,cy:465,height:40,type:"source",position:"right"}]},{id:"runtimeCluster",x:1950,y:0,width:320,height:180,ports:[{id:"step-05_target",cx:160,cy:465,height:24,type:"target",position:"left"},{id:"step-06_target",cx:160,cy:558,height:24,type:"target",position:"right"}]},{id:"terraform",x:2330,y:0,width:320,height:180,ports:[{id:"step-06_source",cx:160,cy:558,height:40,type:"source",position:"left"}]}],compounds:[],steps:[{id:"step-01",sourceHandle:"step-01_source",targetHandle:"step-01_target",labelBBox:{width:156,height:27}},{id:"step-02",sourceHandle:"step-02_source",targetHandle:"step-02_target",labelBBox:{width:96,height:27}},{id:"step-03",sourceHandle:"step-03_source",targetHandle:"step-03_target",labelBBox:{width:122,height:27}},{id:"step-04",sourceHandle:"step-04_source",targetHandle:"step-04_target",labelBBox:{width:114,height:27}},{id:"step-05",sourceHandle:"step-05_source",targetHandle:"step-05_target",labelBBox:{width:90,height:27}},{id:"step-06",sourceHandle:"step-06_source",targetHandle:"step-06_target",labelBBox:{width:105,height:27}}],parallelAreas:[],bounds:{x:0,y:0,width:2650,height:635}},bounds:{x:0,y:0,width:780,height:1874},nodes:[{id:"developer",parent:null,level:0,children:[],inEdges:[],outEdges:["step-01"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"md"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:178,y:0,width:320,height:180,labelBBox:{x:53,y:63,width:214,height:48}},{id:"edp.forgejo",parent:null,level:0,children:[],inEdges:["step-01"],outEdges:["step-02","step-03"],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:20,size:"md"},description:{txt:`Fully managed DevOps Platform offering capabilities like code version controling collaboration and ticketing -and security scanning`},tags:[],technology:"Golang",kind:"container",navigateTo:"forgejo",x:1706,y:392,width:340,height:180,labelBBox:{x:46,y:17,width:278,height:139}},{id:"edp.api",parent:"edp",level:1,children:[],inEdges:["1y3lcyj"],outEdges:[],title:"API",modelRef:"edp.api",shape:"rectangle",color:"primary",icon:"tech:swagger",style:{opacity:25,size:"md"},description:{txt:"API for the EDP platform"},tags:[],kind:"container",x:846,y:392,width:320,height:180,labelBBox:{x:62,y:63,width:226,height:48}},{id:"edp.ui",parent:"edp",level:1,children:[],inEdges:["170qzun"],outEdges:[],title:"Backstage",modelRef:"edp.ui",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Developer Portal"},tags:[],kind:"container",x:1276,y:392,width:320,height:180,labelBBox:{x:102,y:63,width:116,height:48}},{id:"edp.imageregistry",parent:"edp",level:1,children:[],inEdges:["1nv0w41"],outEdges:[],title:"Forgejo OCI Image Registry",modelRef:"edp.imageregistry",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"md"},description:{txt:"Container Image Registry"},tags:[],technology:"Golang",kind:"component",x:2156,y:392,width:373,height:180,labelBBox:{x:47,y:53,width:311,height:67}},{id:"edp.grafana",parent:"edp",level:1,children:[],inEdges:["3nxrq7"],outEdges:["1tfxhhz","1adt45o"],title:"Grafana",modelRef:"edp.grafana",shape:"rectangle",color:"primary",icon:"tech:grafana",style:{opacity:25,size:"md"},description:{txt:"Data visualization and monitoring"},tags:[],kind:"container",x:3070,y:392,width:345,height:180,labelBBox:{x:47,y:63,width:283,height:48}},{id:"edp.keycloak",parent:"edp",level:1,children:[],inEdges:["bfgapq"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:3526,y:392,width:320,height:180,labelBBox:{x:39,y:63,width:242,height:48}},{id:"edp.forgejogit",parent:"edp",level:1,children:[],inEdges:["1agven9","f6xyb4"],outEdges:[],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"md"},tags:[],kind:"component",x:2640,y:715,width:320,height:180,labelBBox:{x:97,y:74,width:156,height:24}},{id:"edp.loki",parent:"edp",level:1,children:[],inEdges:["1tfxhhz"],outEdges:[],title:"Loki",modelRef:"edp.loki",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Log aggregation system"},tags:[],kind:"container",x:3504,y:715,width:320,height:180,labelBBox:{x:78,y:63,width:164,height:47}},{id:"edp.prometheus",parent:"edp",level:1,children:[],inEdges:["1adt45o"],outEdges:[],title:"Prometheus",modelRef:"edp.prometheus",shape:"rectangle",color:"primary",icon:"tech:prometheus",style:{opacity:25,size:"md"},description:{txt:"Monitoring and alerting toolkit"},tags:[],kind:"container",x:3074,y:715,width:320,height:180,labelBBox:{x:46,y:63,width:258,height:47}},{id:"edp.mailhog",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Web and API based SMTP testing"},tags:[],kind:"container",navigateTo:"mailhog",x:3476,y:69,width:320,height:180,labelBBox:{x:44,y:63,width:232,height:48}},{id:"edp.minio",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Minio",modelRef:"edp.minio",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"S3 compatible blob storage"},tags:[],kind:"container",navigateTo:"minio",x:3906,y:69,width:320,height:180,labelBBox:{x:67,y:63,width:186,height:48}},{id:"edp.monitoring",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:4446,y:69,width:320,height:180,labelBBox:{x:21,y:54,width:278,height:66}},{id:"edp.openbao",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"OpenBao",modelRef:"edp.openbao",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Secure secret storage"},tags:[],kind:"container",x:3956,y:392,width:320,height:180,labelBBox:{x:85,y:63,width:151,height:48}},{id:"edp.testApp",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Testapp to validate deployments"},tags:[],kind:"container",navigateTo:"testapp",x:4386,y:392,width:320,height:180,labelBBox:{x:50,y:63,width:220,height:48}},{id:"edp.garm",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Garm Image",modelRef:"edp.garm",shape:"rectangle",color:"primary",icon:"tech:docker",style:{opacity:25,size:"md"},tags:[],kind:"container",x:4926,y:392,width:320,height:180,labelBBox:{x:89,y:74,width:173,height:24}},{id:"edp.application",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"edp.application",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:3956,y:715,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}}],edges:[{id:"1cy1y20",source:"forgejoRunner",target:"edp.forgejoActions",label:"register",points:[[5356,397],[5322,377],[5287,355],[5256,332],[5225,309],[5194,282],[5166,256]],labelBBox:{x:5257,y:309,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"1dvclx1",source:"idpbuilder",target:"edp.argoCD",label:"installs",points:[[766,245],[770,247],[775,248],[779,249],[1011,310],[1617,289],[1856,309],[2181,337],[2269,310],[2585,392],[2600,396],[2615,401],[2630,406]],labelBBox:{x:2237,y:309,width:47,height:18},parent:null,relations:["8fwa3r"],color:"gray",line:"dashed",head:"normal"},{id:"hjkafp",source:"idpbuilder",target:"edp.forgejo",label:"installs",points:[[766,245],[770,247],[775,248],[779,249],[988,305],[1562,205],[1752,309],[1783,326],[1808,355],[1828,384]],labelBBox:{x:1781,y:309,width:47,height:18},parent:null,relations:["1ai9t9i"],color:"gray",line:"dashed",head:"normal"},{id:"1y3lcyj",source:"developer",target:"edp.api",label:"uses API",points:[[223,249],[249,280],[282,311],[318,332],[479,424],[690,459],[836,473]],labelBBox:{x:319,y:309,width:60,height:18},parent:null,relations:["1dgd663"],color:"gray",line:"dashed",head:"normal"},{id:"1ttqc1r",source:"developer",target:"edp.argoCD",label:"manages deployments",points:[[320,233],[338,239],[357,245],[375,249],[694,326],[787,256],[1111,309],[1153,316],[1161,326],[1203,332],[1812,420],[1985,259],[2585,392],[2600,395],[2615,400],[2630,405]],labelBBox:{x:1204,y:309,width:145,height:18},parent:null,relations:["1l7h8as"],color:"gray",line:"dashed",head:"normal"},{id:"170qzun",source:"developer",target:"edp.ui",label:"manages project",points:[[304,249],[361,281],[430,313],[497,332],[807,420],[907,316],[1221,392],[1236,396],[1251,400],[1266,405]],labelBBox:{x:498,y:309,width:108,height:18},parent:null,relations:["nb1ag9","65iq0s"],color:"gray",line:"dashed",head:"normal"},{id:"1bt83vj",source:"developer",target:"edp.forgejo",label:"manages code",points:[[320,230],[338,237],[357,243],[375,249],[485,285],[516,282],[629,309],[670,319],[680,326],[722,332],[1131,395],[1247,301],[1651,392],[1666,395],[1681,399],[1696,404]],labelBBox:{x:723,y:309,width:96,height:18},parent:null,relations:["14tsadm"],color:"gray",line:"dashed",head:"normal"},{id:"1nv0w41",source:"developer",target:"edp.imageregistry",label:"pushes and pull images",points:[[320,232],[338,238],[357,244],[375,249],[578,303],[637,271],[843,309],[884,317],[893,326],[935,332],[1448,408],[1593,288],[2101,392],[2116,395],[2131,399],[2147,403]],labelBBox:{x:936,y:309,width:151,height:18},parent:null,relations:["u2ppde"],color:"gray",line:"dashed",head:"normal"},{id:"1agven9",source:"developer",target:"edp.forgejogit",label:"uses git",points:[[199,249],[215,278],[235,309],[260,332],[433,495],[509,504],[737,572],[1091,677],[2203,763],[2630,792]],labelBBox:{x:738,y:470,width:52,height:18},parent:null,relations:["1k2mvqc"],color:"gray",line:"dashed",head:"normal"},{id:"3nxrq7",source:"developer",target:"edp.grafana",label:"monitors",points:[[320,233],[338,239],[357,245],[375,249],[808,349],[934,242],[1373,309],[1415,316],[1423,326],[1465,332],[2148,428],[2340,251],[3015,392],[3030,395],[3045,399],[3061,404]],labelBBox:{x:1466,y:309,width:58,height:18},parent:null,relations:["dol85h"],color:"gray",line:"dashed",head:"normal"},{id:"bfgapq",source:"developer",target:"edp.keycloak",label:"authenticates",points:[[320,233],[338,240],[357,245],[375,249],[884,364],[1032,230],[1548,309],[1588,315],[1596,326],[1636,332],[2040,390],[3072,306],[3471,392],[3486,395],[3501,399],[3516,404]],labelBBox:{x:1637,y:309,width:87,height:18},parent:null,relations:["129xciy"],color:"gray",line:"dashed",head:"normal"},{id:"f6xyb4",source:"edp.argoCD",target:"edp.forgejogit",label:"Syncs git repo",points:[[2800,572],[2800,613],[2800,662],[2800,705]],labelBBox:{x:2801,y:632,width:93,height:18},parent:"edp",relations:["6mupa0"],color:"gray",line:"dashed",head:"normal"},{id:"1tfxhhz",source:"edp.grafana",target:"edp.loki",label:"get logs",points:[[3360,572],[3416,614],[3482,665],[3539,709]],labelBBox:{x:3467,y:632,width:53,height:18},parent:"edp",relations:["1n1utzc"],color:"gray",line:"dashed",head:"normal"},{id:"1adt45o",source:"edp.grafana",target:"edp.prometheus",label:"get metrics and alerts",points:[[3241,572],[3239,613],[3238,662],[3237,705]],labelBBox:{x:3240,y:632,width:138,height:18},parent:"edp",relations:["13uvtiq"],color:"gray",line:"dashed",head:"normal"},{id:"stl3mw",source:"edp.forgejoActions",target:"forgejoRunner",label:"runs workflows",points:[[5240,249],[5272,268],[5303,288],[5332,309],[5363,332],[5394,359],[5422,385]],labelBBox:{x:5360,y:309,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"}]},keycloak:{_type:"element",tags:null,links:null,viewOf:"edp.keycloak",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Keycloak",id:"keycloak",autoLayout:{direction:"TB"},hash:"528a426001df41ee3034ded0cc7ae02a1bd96842",bounds:{x:0,y:0,width:927,height:560},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["119ru5h"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:48,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.keycloak",parent:null,level:0,children:["edp.keycloak.keycloak","edp.keycloak.keycloakDB"],inEdges:["119ru5h"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",depth:1,x:8,y:271,width:911,height:281,labelBBox:{x:6,y:0,width:66,height:15}},{id:"edp.keycloak.keycloak",parent:"edp.keycloak",level:1,children:[],inEdges:["119ru5h"],outEdges:["kn0x70"],title:"Keycloak",modelRef:"edp.keycloak.keycloak",shape:"rectangle",color:"primary",icon:"tech:java",style:{opacity:15,size:"md"},tags:[],technology:"Java",kind:"component",x:48,y:332,width:320,height:180,labelBBox:{x:103,y:64,width:144,height:46}},{id:"edp.keycloak.keycloakDB",parent:"edp.keycloak",level:1,children:[],inEdges:["kn0x70"],outEdges:[],title:"Database",modelRef:"edp.keycloak.keycloakDB",shape:"storage",color:"primary",icon:"tech:postgresql",style:{opacity:15,size:"md"},tags:[],technology:"Postgresql",kind:"component",x:559,y:332,width:320,height:180,labelBBox:{x:101,y:64,width:148,height:46}}],edges:[{id:"119ru5h",source:"edp.ingressNginx",target:"edp.keycloak.keycloak",label:"https",points:[[208,180],[208,224],[208,277],[208,322]],labelBBox:{x:209,y:240,width:34,height:18},parent:null,relations:["h3rut2"],color:"gray",line:"dashed",head:"normal"},{id:"kn0x70",source:"edp.keycloak.keycloak",target:"edp.keycloak.keycloakDB",label:"reads/writes",points:[[368,422],[425,422],[490,422],[548,422]],labelBBox:{x:424,y:396,width:79,height:18},parent:"edp.keycloak",relations:["18zxrhs"],color:"gray",line:"dashed",head:"normal"}]},forgejo:{_type:"element",tags:null,links:null,viewOf:"edp.forgejo",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Forgejo",id:"forgejo",autoLayout:{direction:"TB"},hash:"e58fa1188b5809568e6fb20b5adc1584fef396d8",bounds:{x:0,y:0,width:846,height:528},nodes:[{id:"edp.forgejo",parent:null,level:0,children:["edp.forgejo.forgejocollaboration","edp.forgejo.forgejoproject"],inEdges:["1dgzzfb"],outEdges:[],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:20,size:"md"},description:{txt:`Fully managed DevOps Platform +and security scanning`},tags:[],technology:"Golang",kind:"container",navigateTo:"forgejo",x:168,y:339,width:340,height:180,labelBBox:{x:46,y:17,width:278,height:139}},{id:"edp.forgejoActions",parent:null,level:0,children:[],inEdges:["step-02"],outEdges:[],title:"Forgejo Actions",modelRef:"edp.forgejoActions",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Continuous Integration like Github Actions"},tags:[],technology:"Golang",kind:"component",x:0,y:678,width:350,height:180,labelBBox:{x:46,y:44,width:288,height:85}},{id:"edp.forgejogit",parent:null,level:0,children:[],inEdges:["step-03"],outEdges:["step-04"],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:15,size:"md"},tags:[],kind:"component",x:460,y:678,width:320,height:180,labelBBox:{x:97,y:74,width:156,height:24}},{id:"edp.argoCD",parent:null,level:0,children:[],inEdges:["step-04"],outEdges:["step-05"],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"GitOps Service"},tags:[],kind:"container",navigateTo:"argoCD",x:460,y:1016,width:320,height:180,labelBBox:{x:108,y:63,width:105,height:48}},{id:"runtimeCluster",parent:null,level:0,children:[],inEdges:["step-05","step-06"],outEdges:[],title:"Kubernetes Cluster",modelRef:"runtimeCluster",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Target cluster where applications are deployed"},tags:[],technology:"Kubernetes",kind:"system",x:460,y:1355,width:320,height:180,labelBBox:{x:35,y:44,width:250,height:86}},{id:"terraform",parent:null,level:0,children:[],inEdges:[],outEdges:["step-06"],title:"Terraform",modelRef:"terraform",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Infrastructure provisioning (IaC)"},tags:[],technology:"Terraform",kind:"component",x:460,y:1694,width:320,height:180,labelBBox:{x:53,y:53,width:214,height:67}}],edges:[{id:"step-01",source:"developer",target:"edp.forgejo",label:"defines & commits",points:[[338,180],[338,226],[338,281],[338,328]],labelBBox:{x:347,y:247,width:140,height:19},parent:null,relations:["14tsadm"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@0"},{id:"step-02",source:"edp.forgejo",target:"edp.forgejoActions",label:"pipelines",points:[[295,519],[273,565],[245,621],[223,668]],labelBBox:{x:271,y:585,width:80,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@1"},{id:"step-03",source:"edp.forgejo",target:"edp.forgejogit",label:"git repository",points:[[413,519],[451,565],[499,622],[539,670]],labelBBox:{x:497,y:585,width:106,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@2"},{id:"step-04",source:"edp.forgejogit",target:"edp.argoCD",label:"sync trigger",points:[[620,858],[620,903],[620,959],[620,1006]],labelBBox:{x:629,y:924,width:98,height:19},parent:null,relations:["yorv62"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@3"},{id:"step-05",source:"edp.argoCD",target:"runtimeCluster",label:"deploys",points:[[620,1196],[620,1242],[620,1298],[620,1345]],labelBBox:{x:629,y:1263,width:74,height:19},parent:null,relations:["1f6l7ms"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@4"},{id:"step-06",source:"terraform",target:"runtimeCluster",label:"provisions",points:[[620,1546],[620,1593],[620,1649],[620,1694]],labelBBox:{x:629,y:1602,width:89,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@5"}]},application_deployment_flow:{_type:"dynamic",tags:null,links:null,_stage:"layouted",sourcePath:"views/edp/application-deployment-flow.c4",description:null,title:"Application Deployment Flow",id:"application_deployment_flow",variant:"diagram",autoLayout:{direction:"TB"},hash:"9401c5e464791c7578a947fb92e26f302d46d9f5",sequenceLayout:{actors:[{id:"developer",x:0,y:0,width:320,height:180,ports:[{id:"step-01_source",cx:160,cy:306,height:40,type:"source",position:"right"}]},{id:"edp.forgejogit",x:380,y:0,width:320,height:180,ports:[{id:"step-01_target",cx:160,cy:306,height:24,type:"target",position:"left"},{id:"step-02_source",cx:160,cy:328,height:40,type:"source",position:"right"},{id:"step-04_source",cx:160,cy:443,height:40,type:"source",position:"right"}]},{id:"edp.forgejoActions",x:760,y:0,width:350,height:180,ports:[{id:"step-02_target",cx:175,cy:328,height:24,type:"target",position:"left"},{id:"step-03_source",cx:175,cy:350,height:40,type:"source",position:"right"}]},{id:"edp.imageregistry",x:1170,y:0,width:373,height:180,ports:[{id:"step-03_target",cx:187,cy:350,height:24,type:"target",position:"left"}]},{id:"edp.argoCD",x:1603,y:0,width:320,height:180,ports:[{id:"step-04_target",cx:160,cy:443,height:24,type:"target",position:"left"},{id:"step-05_source",cx:160,cy:465,height:40,type:"source",position:"right"}]},{id:"runtimeCluster",x:1983,y:0,width:320,height:180,ports:[{id:"step-05_target",cx:160,cy:465,height:24,type:"target",position:"left"}]}],compounds:[],steps:[{id:"step-01",sourceHandle:"step-01_source",targetHandle:"step-01_target",labelBBox:{width:91,height:27}},{id:"step-02",sourceHandle:"step-02_source",targetHandle:"step-02_target",labelBBox:{width:89,height:27}},{id:"step-03",sourceHandle:"step-03_source",targetHandle:"step-03_target",labelBBox:{width:114,height:27}},{id:"step-04",sourceHandle:"step-04_source",targetHandle:"step-04_target",labelBBox:{width:157,height:27}},{id:"step-05",sourceHandle:"step-05_source",targetHandle:"step-05_target",labelBBox:{width:90,height:27}}],parallelAreas:[],bounds:{x:0,y:0,width:2303,height:542}},bounds:{x:0,y:0,width:1022,height:1196},nodes:[{id:"developer",parent:null,level:0,children:[],inEdges:[],outEdges:["step-01"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"md"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:252,y:0,width:320,height:180,labelBBox:{x:53,y:63,width:214,height:48}},{id:"edp.forgejogit",parent:null,level:0,children:[],inEdges:["step-01"],outEdges:["step-02","step-04"],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:15,size:"md"},tags:[],kind:"component",x:252,y:339,width:320,height:180,labelBBox:{x:97,y:74,width:155,height:24}},{id:"edp.forgejoActions",parent:null,level:0,children:[],inEdges:["step-02"],outEdges:["step-03"],title:"Forgejo Actions",modelRef:"edp.forgejoActions",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Continuous Integration like Github Actions"},tags:[],technology:"Golang",kind:"component",x:15,y:678,width:350,height:180,labelBBox:{x:46,y:44,width:288,height:85}},{id:"edp.imageregistry",parent:null,level:0,children:[],inEdges:["step-03"],outEdges:[],title:"Forgejo OCI Image Registry",modelRef:"edp.imageregistry",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Container Image Registry"},tags:[],technology:"Golang",kind:"component",x:0,y:1016,width:373,height:180,labelBBox:{x:46,y:54,width:311,height:67}},{id:"edp.argoCD",parent:null,level:0,children:[],inEdges:["step-04"],outEdges:["step-05"],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"GitOps Service"},tags:[],kind:"container",navigateTo:"argoCD",x:481,y:678,width:320,height:180,labelBBox:{x:107,y:63,width:105,height:47}},{id:"runtimeCluster",parent:null,level:0,children:[],inEdges:["step-05"],outEdges:[],title:"Kubernetes Cluster",modelRef:"runtimeCluster",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Target cluster where applications are deployed"},tags:[],technology:"Kubernetes",kind:"system",x:484,y:1016,width:320,height:180,labelBBox:{x:35,y:45,width:250,height:85}},{id:"edp.forgejo",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:20,size:"md"},description:{txt:`Fully managed DevOps Platform +offering capabilities like +code version controling +collaboration and ticketing +and security scanning`},tags:[],technology:"Golang",kind:"container",navigateTo:"forgejo",x:682,y:0,width:340,height:180,labelBBox:{x:45,y:17,width:279,height:139}}],edges:[{id:"step-01",source:"developer",target:"edp.forgejogit",label:"git push",points:[[412,180],[412,226],[412,281],[412,328]],labelBBox:{x:421,y:247,width:75,height:19},parent:null,relations:["1k2mvqc","vxxbwa"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@0"},{id:"step-02",source:"edp.forgejogit",target:"edp.forgejoActions",label:"triggers",points:[[353,519],[322,565],[285,622],[254,669]],labelBBox:{x:316,y:585,width:73,height:19},parent:null,relations:["1yai3r5"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@1"},{id:"step-03",source:"edp.forgejoActions",target:"edp.imageregistry",label:"push image",points:[[189,858],[188,903],[188,959],[187,1006]],labelBBox:{x:197,y:924,width:98,height:19},parent:null,relations:["21d2gk"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@2"},{id:"step-04",source:"edp.forgejogit",target:"edp.argoCD",label:"watches manifests",points:[[472,519],[504,565],[542,622],[574,669]],labelBBox:{x:542,y:585,width:141,height:19},parent:null,relations:["yorv62"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@3"},{id:"step-05",source:"edp.argoCD",target:"runtimeCluster",label:"deploys",points:[[641,858],[642,903],[642,959],[643,1006]],labelBBox:{x:651,y:924,width:74,height:19},parent:null,relations:["1f6l7ms"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@4"}]},edpbuilderworkflow:{_type:"element",tags:null,links:null,viewOf:"edfbuilder",_stage:"layouted",sourcePath:"views/edp/edfbuilder.c4",description:{txt:"Describes the process how to create an EDP instance"},title:"edfbuilder",id:"edpbuilderworkflow",autoLayout:{direction:"LR",nodeSep:110,rankSep:120},hash:"40921acf4f52bd8d6d2ac3a0d1810b3b7bc13b2a",bounds:{x:0,y:0,width:320,height:180},nodes:[{id:"edfbuilder",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"edfbuilder",modelRef:"edfbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"EDP Foundry Builder"},tags:[],technology:"Golang",kind:"component",x:0,y:0,width:320,height:180,labelBBox:{x:74,y:53,width:203,height:67}}],edges:[]},edp:{_type:"element",tags:null,links:null,viewOf:"edp",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Context view",id:"edp",autoLayout:{direction:"TB"},hash:"61cc384ce5746ebd89897cb187c94a7d651e3960",bounds:{x:0,y:0,width:5177,height:1588},nodes:[{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["stl3mw"],outEdges:["1cy1y20"],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:15,y:1360,width:320,height:180,labelBBox:{x:23,y:36,width:274,height:102}},{id:"idpbuilder",parent:null,level:0,children:[],inEdges:[],outEdges:["1dvclx1","hjkafp"],title:"idpbuilder",modelRef:"idpbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"md"},description:{txt:"Bootstrap tool for initial platform provisioning"},tags:[],technology:"Golang",kind:"component",x:4411,y:69,width:335,height:180,labelBBox:{x:47,y:44,width:273,height:86}},{id:"developer",parent:null,level:0,children:[],inEdges:[],outEdges:["1y3lcyj","1ttqc1r","170qzun","1bt83vj","1nv0w41","1agven9","3nxrq7","bfgapq"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:25,size:"md"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:4857,y:69,width:320,height:180,labelBBox:{x:53,y:63,width:214,height:48}},{id:"edp",parent:null,level:0,children:["edp.argoCD","edp.forgejo","edp.api","edp.ui","edp.grafana","edp.keycloak","edp.forgejogit","edp.mailhog","edp.minio","edp.monitoring","edp.openbao","edp.testApp","edp.garm","edp.application","edp.loki","edp.prometheus","edp.forgejoActions","edp.imageregistry"],inEdges:["1cy1y20","1dvclx1","hjkafp","1y3lcyj","1ttqc1r","170qzun","1bt83vj","1nv0w41","1agven9","3nxrq7","bfgapq"],outEdges:["1e6lbxb","stl3mw"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:25,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",depth:1,navigateTo:"idp",x:375,y:8,width:3996,height:1572,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edp.argoCD",parent:"edp",level:1,children:[],inEdges:["1dvclx1","1ttqc1r","1qfsohc"],outEdges:["f6xyb4","1e6lbxb"],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"GitOps Service"},tags:[],kind:"container",navigateTo:"argoCD",x:1815,y:392,width:320,height:180,labelBBox:{x:108,y:63,width:105,height:48}},{id:"edp.forgejo",parent:"edp",level:1,children:[],inEdges:["hjkafp","1bt83vj"],outEdges:[],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"md"},description:{txt:`Fully managed DevOps Platform +offering capabilities like +code version controling +collaboration and ticketing +and security scanning`},tags:[],technology:"Golang",kind:"container",navigateTo:"forgejo",x:2245,y:392,width:340,height:180,labelBBox:{x:46,y:17,width:278,height:139}},{id:"edp.api",parent:"edp",level:1,children:[],inEdges:["1y3lcyj"],outEdges:[],title:"API",modelRef:"edp.api",shape:"rectangle",color:"primary",icon:"tech:swagger",style:{opacity:25,size:"md"},description:{txt:"API for the EDP platform"},tags:[],kind:"container",x:3581,y:392,width:320,height:180,labelBBox:{x:62,y:63,width:226,height:48}},{id:"edp.ui",parent:"edp",level:1,children:[],inEdges:["170qzun"],outEdges:[],title:"Backstage",modelRef:"edp.ui",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Developer Portal"},tags:[],kind:"container",x:4011,y:392,width:320,height:180,labelBBox:{x:102,y:63,width:116,height:48}},{id:"edp.grafana",parent:"edp",level:1,children:[],inEdges:["3nxrq7"],outEdges:["1tfxhhz","1adt45o"],title:"Grafana",modelRef:"edp.grafana",shape:"rectangle",color:"primary",icon:"tech:grafana",style:{opacity:25,size:"md"},description:{txt:"Data visualization and monitoring"},tags:[],kind:"container",x:2695,y:392,width:345,height:180,labelBBox:{x:47,y:63,width:283,height:48}},{id:"edp.keycloak",parent:"edp",level:1,children:[],inEdges:["bfgapq"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:3151,y:392,width:320,height:180,labelBBox:{x:39,y:63,width:242,height:48}},{id:"edp.forgejogit",parent:"edp",level:1,children:[],inEdges:["1agven9","f6xyb4"],outEdges:["1qfsohc","on1qgt"],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"md"},tags:[],kind:"component",x:1815,y:715,width:320,height:180,labelBBox:{x:97,y:74,width:156,height:24}},{id:"edp.mailhog",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Web and API based SMTP testing"},tags:[],kind:"container",navigateTo:"mailhog",x:415,y:69,width:320,height:180,labelBBox:{x:44,y:63,width:232,height:48}},{id:"edp.minio",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Minio",modelRef:"edp.minio",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"S3 compatible blob storage"},tags:[],kind:"container",navigateTo:"minio",x:845,y:69,width:320,height:180,labelBBox:{x:67,y:63,width:186,height:48}},{id:"edp.monitoring",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:1385,y:69,width:320,height:180,labelBBox:{x:21,y:54,width:278,height:66}},{id:"edp.openbao",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"OpenBao",modelRef:"edp.openbao",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Secure secret storage"},tags:[],kind:"container",x:415,y:392,width:320,height:180,labelBBox:{x:85,y:63,width:151,height:48}},{id:"edp.testApp",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Testapp to validate deployments"},tags:[],kind:"container",navigateTo:"testapp",x:845,y:392,width:320,height:180,labelBBox:{x:50,y:63,width:220,height:48}},{id:"edp.garm",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Garm Image",modelRef:"edp.garm",shape:"rectangle",color:"primary",icon:"tech:docker",style:{opacity:25,size:"md"},tags:[],kind:"container",x:1385,y:392,width:320,height:180,labelBBox:{x:89,y:74,width:173,height:24}},{id:"edp.application",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"edp.application",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:430,y:715,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}},{id:"runtimeCluster",parent:null,level:0,children:[],inEdges:["1e6lbxb"],outEdges:[],title:"Kubernetes Cluster",modelRef:"runtimeCluster",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Target cluster where applications are deployed"},tags:[],technology:"Kubernetes",kind:"system",x:0,y:715,width:320,height:180,labelBBox:{x:35,y:44,width:250,height:85}},{id:"edp.loki",parent:"edp",level:1,children:[],inEdges:["1tfxhhz"],outEdges:[],title:"Loki",modelRef:"edp.loki",shape:"rectangle",color:"primary",style:{opacity:25,size:"md"},description:{txt:"Log aggregation system"},tags:[],kind:"container",x:2525,y:715,width:320,height:180,labelBBox:{x:78,y:63,width:164,height:47}},{id:"edp.prometheus",parent:"edp",level:1,children:[],inEdges:["1adt45o"],outEdges:[],title:"Prometheus",modelRef:"edp.prometheus",shape:"rectangle",color:"primary",icon:"tech:prometheus",style:{opacity:25,size:"md"},description:{txt:"Monitoring and alerting toolkit"},tags:[],kind:"container",x:2955,y:715,width:320,height:180,labelBBox:{x:46,y:63,width:258,height:47}},{id:"edp.forgejoActions",parent:"edp",level:1,children:[],inEdges:["1cy1y20","on1qgt"],outEdges:["17h4y09","stl3mw"],title:"Forgejo Actions",modelRef:"edp.forgejoActions",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"md"},description:{txt:"Continuous Integration like Github Actions"},tags:[],technology:"Golang",kind:"component",x:1800,y:1038,width:350,height:180,labelBBox:{x:46,y:44,width:288,height:85}},{id:"edp.imageregistry",parent:"edp",level:1,children:[],inEdges:["1nv0w41","17h4y09"],outEdges:[],title:"Forgejo OCI Image Registry",modelRef:"edp.imageregistry",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"md"},description:{txt:"Container Image Registry"},tags:[],technology:"Golang",kind:"component",x:1788,y:1360,width:373,height:180,labelBBox:{x:47,y:54,width:311,height:67}}],edges:[{id:"1cy1y20",source:"forgejoRunner",target:"edp.forgejoActions",label:"register",points:[[335,1365],[339,1363],[344,1362],[348,1360],[547,1298],[607,1329],[813,1300],[1159,1253],[1561,1192],[1790,1157]],labelBBox:{x:972,y:1277,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"1dvclx1",source:"idpbuilder",target:"edp.argoCD",label:"installs",points:[[4412,245],[4407,247],[4403,248],[4398,249],[3981,353],[2889,240],[2465,309],[2355,327],[2237,368],[2145,405]],labelBBox:{x:2466,y:309,width:47,height:18},parent:null,relations:["8fwa3r"],color:"gray",line:"dashed",head:"normal"},{id:"hjkafp",source:"idpbuilder",target:"edp.forgejo",label:"installs",points:[[4412,245],[4407,247],[4403,248],[4398,249],[4202,298],[2765,227],[2580,309],[2543,326],[2510,355],[2484,384]],labelBBox:{x:2581,y:309,width:47,height:18},parent:null,relations:["1ai9t9i"],color:"gray",line:"dashed",head:"normal"},{id:"1y3lcyj",source:"developer",target:"edp.api",label:"uses API",points:[[4857,232],[4839,238],[4820,244],[4802,249],[4606,302],[4550,275],[4350,309],[4174,339],[4127,339],[3956,392],[3941,397],[3926,402],[3910,407]],labelBBox:{x:4351,y:309,width:60,height:18},parent:null,relations:["1dgd663"],color:"gray",line:"dashed",head:"normal"},{id:"1ttqc1r",source:"developer",target:"edp.argoCD",label:"manages deployments",points:[[4857,234],[4839,240],[4820,245],[4802,249],[4368,342],[3248,270],[2806,309],[2737,315],[2721,322],[2652,332],[2447,360],[2390,339],[2190,392],[2175,396],[2160,401],[2145,406]],labelBBox:{x:2807,y:309,width:145,height:18},parent:null,relations:["1l7h8as"],color:"gray",line:"dashed",head:"normal"},{id:"170qzun",source:"developer",target:"edp.ui",label:"manages project",points:[[4857,230],[4839,237],[4820,244],[4802,249],[4669,289],[4626,263],[4495,309],[4437,330],[4377,359],[4325,387]],labelBBox:{x:4496,y:309,width:108,height:18},parent:null,relations:["nb1ag9","65iq0s"],color:"gray",line:"dashed",head:"normal"},{id:"1bt83vj",source:"developer",target:"edp.forgejo",label:"manages code",points:[[4857,233],[4839,240],[4820,245],[4802,249],[4482,320],[3654,283],[3327,309],[3021,334],[2938,316],[2640,392],[2625,396],[2610,400],[2595,405]],labelBBox:{x:3328,y:309,width:96,height:18},parent:null,relations:["14tsadm"],color:"gray",line:"dashed",head:"normal"},{id:"1nv0w41",source:"developer",target:"edp.imageregistry",label:"pushes and pull images",points:[[4987,249],[4969,313],[4948,401],[4948,481],[4948,481],[4948,481],[4948,1129],[4948,1409],[2835,1445],[2172,1449]],labelBBox:{x:4949,y:793,width:151,height:18},parent:null,relations:["u2ppde"],color:"gray",line:"dashed",head:"normal"},{id:"1agven9",source:"developer",target:"edp.forgejogit",label:"[...]",points:[[4917,249],[4799,348],[4593,502],[4386,572],[3577,846],[3317,607],[2470,715],[2361,729],[2240,750],[2145,769]],labelBBox:{x:4728,y:469,width:25,height:18},parent:null,relations:["1k2mvqc","vxxbwa"],color:"gray",line:"dashed",head:"normal"},{id:"3nxrq7",source:"developer",target:"edp.grafana",label:"monitors",points:[[4857,233],[4839,239],[4820,245],[4802,249],[4354,352],[4227,268],[3769,309],[3469,336],[3388,318],[3096,392],[3081,396],[3065,400],[3050,405]],labelBBox:{x:3770,y:309,width:58,height:18},parent:null,relations:["dol85h"],color:"gray",line:"dashed",head:"normal"},{id:"bfgapq",source:"developer",target:"edp.keycloak",label:"authenticates",points:[[4857,233],[4839,239],[4820,245],[4802,249],[4496,324],[4409,273],[4096,309],[3842,338],[3773,324],[3526,392],[3511,396],[3496,401],[3480,406]],labelBBox:{x:4097,y:309,width:87,height:18},parent:null,relations:["129xciy"],color:"gray",line:"dashed",head:"normal"},{id:"f6xyb4",source:"edp.argoCD",target:"edp.forgejogit",label:"Syncs git repo",points:[[1883,572],[1869,590],[1856,611],[1848,632],[1839,658],[1846,683],[1860,706]],labelBBox:{x:1849,y:632,width:93,height:18},parent:"edp",relations:["6mupa0"],color:"gray",line:"dashed",head:"normal"},{id:"1qfsohc",source:"edp.forgejogit",target:"edp.argoCD",label:"watches manifests",points:[[1975,715],[1975,674],[1975,625],[1975,582]],labelBBox:{x:1976,y:632,width:119,height:18},parent:"edp",relations:["yorv62"],color:"gray",line:"dashed",head:"normal"},{id:"17h4y09",source:"edp.forgejoActions",target:"edp.imageregistry",label:"push image",points:[[1975,1218],[1975,1259],[1975,1308],[1975,1350]],labelBBox:{x:1976,y:1277,width:76,height:18},parent:"edp",relations:["21d2gk"],color:"gray",line:"dashed",head:"normal"},{id:"on1qgt",source:"edp.forgejogit",target:"edp.forgejoActions",label:"triggers",points:[[1975,895],[1975,936],[1975,985],[1975,1027]],labelBBox:{x:1976,y:954,width:51,height:18},parent:"edp",relations:["1yai3r5"],color:"gray",line:"dashed",head:"normal"},{id:"1tfxhhz",source:"edp.grafana",target:"edp.loki",label:"get logs",points:[[2817,572],[2794,614],[2765,663],[2741,706]],labelBBox:{x:2783,y:632,width:53,height:18},parent:"edp",relations:["1n1utzc"],color:"gray",line:"dashed",head:"normal"},{id:"1adt45o",source:"edp.grafana",target:"edp.prometheus",label:"get metrics and alerts",points:[[2937,572],[2969,614],[3007,664],[3040,707]],labelBBox:{x:3e3,y:632,width:138,height:18},parent:"edp",relations:["13uvtiq"],color:"gray",line:"dashed",head:"normal"},{id:"1e6lbxb",source:"edp.argoCD",target:"runtimeCluster",label:"deploys",points:[[1815,555],[1797,562],[1778,567],[1760,572],[1148,726],[956,546],[348,715],[342,717],[336,718],[330,720]],labelBBox:{x:1409,y:632,width:52,height:18},parent:null,relations:["1f6l7ms"],color:"gray",line:"dashed",head:"normal"},{id:"stl3mw",source:"edp.forgejoActions",target:"forgejoRunner",label:"runs workflows",points:[[1800,1142],[1552,1162],[1082,1207],[687,1278],[535,1305],[494,1306],[348,1360],[347,1361],[346,1361],[344,1362]],labelBBox:{x:688,y:1277,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"}]},keycloak:{_type:"element",tags:null,links:null,viewOf:"edp.keycloak",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Keycloak",id:"keycloak",autoLayout:{direction:"TB"},hash:"528a426001df41ee3034ded0cc7ae02a1bd96842",bounds:{x:0,y:0,width:927,height:560},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["119ru5h"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:48,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.keycloak",parent:null,level:0,children:["edp.keycloak.keycloak","edp.keycloak.keycloakDB"],inEdges:["119ru5h"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",depth:1,x:8,y:271,width:911,height:281,labelBBox:{x:6,y:0,width:66,height:15}},{id:"edp.keycloak.keycloak",parent:"edp.keycloak",level:1,children:[],inEdges:["119ru5h"],outEdges:["kn0x70"],title:"Keycloak",modelRef:"edp.keycloak.keycloak",shape:"rectangle",color:"primary",icon:"tech:java",style:{opacity:15,size:"md"},tags:[],technology:"Java",kind:"component",x:48,y:332,width:320,height:180,labelBBox:{x:103,y:64,width:144,height:46}},{id:"edp.keycloak.keycloakDB",parent:"edp.keycloak",level:1,children:[],inEdges:["kn0x70"],outEdges:[],title:"Database",modelRef:"edp.keycloak.keycloakDB",shape:"storage",color:"primary",icon:"tech:postgresql",style:{opacity:15,size:"md"},tags:[],technology:"Postgresql",kind:"component",x:559,y:332,width:320,height:180,labelBBox:{x:101,y:64,width:148,height:46}}],edges:[{id:"119ru5h",source:"edp.ingressNginx",target:"edp.keycloak.keycloak",label:"https",points:[[208,180],[208,224],[208,277],[208,322]],labelBBox:{x:209,y:240,width:34,height:18},parent:null,relations:["h3rut2"],color:"gray",line:"dashed",head:"normal"},{id:"kn0x70",source:"edp.keycloak.keycloak",target:"edp.keycloak.keycloakDB",label:"reads/writes",points:[[368,422],[425,422],[490,422],[548,422]],labelBBox:{x:424,y:396,width:79,height:18},parent:"edp.keycloak",relations:["18zxrhs"],color:"gray",line:"dashed",head:"normal"}]},forgejo:{_type:"element",tags:null,links:null,viewOf:"edp.forgejo",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Forgejo",id:"forgejo",autoLayout:{direction:"TB"},hash:"e58fa1188b5809568e6fb20b5adc1584fef396d8",bounds:{x:0,y:0,width:846,height:528},nodes:[{id:"edp.forgejo",parent:null,level:0,children:["edp.forgejo.forgejocollaboration","edp.forgejo.forgejoproject"],inEdges:["1dgzzfb"],outEdges:[],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:20,size:"md"},description:{txt:`Fully managed DevOps Platform offering capabilities like code version controling collaboration and ticketing @@ -279,39 +287,39 @@ and security scanning`},tags:[],technology:"Golang",kind:"container",depth:1,x:8 offering capabilities like code version controling collaboration and ticketing -and security scanning`},tags:[],technology:"Golang",kind:"container",navigateTo:"forgejo",x:860,y:384,width:340,height:180,labelBBox:{x:46,y:17,width:278,height:139}},{id:"edp.keycloak",parent:null,level:0,children:[],inEdges:["dh7ut5"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:1310,y:384,width:320,height:180,labelBBox:{x:39,y:63,width:242,height:48}},{id:"edp.mailhog",parent:null,level:0,children:[],inEdges:["1bv0wod"],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Web and API based SMTP testing"},tags:[],kind:"container",navigateTo:"mailhog",x:1740,y:384,width:320,height:180,labelBBox:{x:44,y:63,width:232,height:48}},{id:"edp.minio",parent:null,level:0,children:[],inEdges:["68hu20"],outEdges:[],title:"Minio",modelRef:"edp.minio",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"S3 compatible blob storage"},tags:[],kind:"container",navigateTo:"minio",x:2170,y:384,width:320,height:180,labelBBox:{x:67,y:63,width:186,height:48}},{id:"edp.monitoring",parent:null,level:0,children:[],inEdges:["nx2xew"],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:2600,y:384,width:320,height:180,labelBBox:{x:21,y:54,width:278,height:66}},{id:"edp.openbao",parent:null,level:0,children:[],inEdges:["momp7g"],outEdges:[],title:"OpenBao",modelRef:"edp.openbao",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Secure secret storage"},tags:[],kind:"container",x:3030,y:384,width:320,height:180,labelBBox:{x:85,y:63,width:151,height:48}},{id:"edp.testApp",parent:null,level:0,children:[],inEdges:["8cmkj7"],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Testapp to validate deployments"},tags:[],kind:"container",navigateTo:"testapp",x:3460,y:384,width:320,height:180,labelBBox:{x:50,y:63,width:220,height:48}}],edges:[{id:"1poylyw",source:"edp.ingressNginx.ingressNginx",target:"edp.argoCD",label:"https",points:[[1740,164],[1459,187],[862,248],[375,384],[360,388],[345,393],[329,398]],labelBBox:{x:704,y:301,width:34,height:18},parent:null,relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"llqgvs",source:"edp.ingressNginx.ingressNginx",target:"edp.ui",label:"https",points:[[1740,177],[1525,211],[1131,283],[805,384],[790,389],[775,394],[759,400]],labelBBox:{x:1102,y:301,width:34,height:18},parent:null,relations:["v8c8aq"],color:"gray",line:"dashed",head:"normal"},{id:"75xltk",source:"edp.ingressNginx.ingressNginx",target:"edp.forgejo",label:"https",points:[[1740,208],[1609,254],[1420,322],[1255,384],[1240,390],[1225,395],[1210,401]],labelBBox:{x:1468,y:301,width:34,height:18},parent:null,relations:["123efwn"],color:"gray",line:"dashed",head:"normal"},{id:"dh7ut5",source:"edp.ingressNginx.ingressNginx",target:"edp.keycloak",label:"https",points:[[1781,241],[1724,284],[1655,335],[1597,378]],labelBBox:{x:1699,y:301,width:34,height:18},parent:null,relations:["h3rut2"],color:"gray",line:"dashed",head:"normal"},{id:"1bv0wod",source:"edp.ingressNginx.ingressNginx",target:"edp.mailhog",label:"https",points:[[1900,241],[1900,282],[1900,331],[1900,374]],labelBBox:{x:1901,y:301,width:34,height:18},parent:null,relations:["ofdedh"],color:"gray",line:"dashed",head:"normal"},{id:"68hu20",source:"edp.ingressNginx.ingressNginx",target:"edp.minio",label:"https",points:[[2019,241],[2076,284],[2145,335],[2203,378]],labelBBox:{x:2129,y:301,width:34,height:18},parent:null,relations:["fe65w2"],color:"gray",line:"dashed",head:"normal"},{id:"nx2xew",source:"edp.ingressNginx.ingressNginx",target:"edp.monitoring",label:"https",points:[[2060,207],[2191,253],[2381,321],[2545,384],[2560,390],[2575,396],[2591,402]],labelBBox:{x:2370,y:301,width:34,height:18},parent:null,relations:["1jvab2g","fs60l7"],color:"gray",line:"dashed",head:"normal"},{id:"momp7g",source:"edp.ingressNginx.ingressNginx",target:"edp.openbao",label:"https",points:[[2060,177],[2272,213],[2657,285],[2975,384],[2990,389],[3005,394],[3021,400]],labelBBox:{x:2744,y:301,width:34,height:18},parent:null,relations:["1p30hav"],color:"gray",line:"dashed",head:"normal"},{id:"8cmkj7",source:"edp.ingressNginx.ingressNginx",target:"edp.testApp",label:"https",points:[[2060,164],[2338,188],[2926,250],[3405,384],[3420,388],[3435,393],[3451,399]],labelBBox:{x:3165,y:301,width:34,height:18},parent:null,relations:["1i5f8um"],color:"gray",line:"dashed",head:"normal"}]},testapp:{_type:"element",tags:null,links:null,viewOf:"edp.testApp",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Fibonacci",id:"testapp",autoLayout:{direction:"TB"},hash:"d8f40f5cfab10e6e91c79feeef6be3240922c723",bounds:{x:0,y:0,width:400,height:544},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["1tefjx2"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:40,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.testApp",parent:null,level:0,children:["edp.testApp.fibonacci"],inEdges:["1tefjx2"],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Testapp to validate deployments"},tags:[],kind:"container",depth:1,x:8,y:271,width:384,height:265,labelBBox:{x:6,y:0,width:65,height:15}},{id:"edp.testApp.fibonacci",parent:"edp.testApp",level:1,children:[],inEdges:["1tefjx2"],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp.fibonacci",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},tags:[],technology:"Golang",kind:"component",x:40,y:324,width:320,height:180,labelBBox:{x:101,y:64,width:148,height:46}}],edges:[{id:"1tefjx2",source:"edp.ingressNginx",target:"edp.testApp.fibonacci",label:"https",points:[[200,180],[200,221],[200,271],[200,314]],labelBBox:{x:201,y:240,width:34,height:18},parent:null,relations:["1i5f8um"],color:"gray",line:"dashed",head:"normal"}]},mailhog:{_type:"element",tags:null,links:null,viewOf:"edp.mailhog",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Mailhog",id:"mailhog",autoLayout:{direction:"TB"},hash:"b9e703c2ceb2b2a400194d90ac7caa94525ac068",bounds:{x:0,y:0,width:400,height:544},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["axipfp"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:40,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.mailhog",parent:null,level:0,children:["edp.mailhog.mailhog"],inEdges:["axipfp"],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Web and API based SMTP testing"},tags:[],kind:"container",depth:1,x:8,y:271,width:384,height:265,labelBBox:{x:6,y:0,width:56,height:15}},{id:"edp.mailhog.mailhog",parent:"edp.mailhog",level:1,children:[],inEdges:["axipfp"],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog.mailhog",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},tags:[],technology:"Golang",kind:"component",x:40,y:324,width:320,height:180,labelBBox:{x:109,y:64,width:132,height:46}}],edges:[{id:"axipfp",source:"edp.ingressNginx",target:"edp.mailhog.mailhog",label:"https",points:[[200,180],[200,221],[200,271],[200,314]],labelBBox:{x:201,y:240,width:34,height:18},parent:null,relations:["ofdedh"],color:"gray",line:"dashed",head:"normal"}]},spark:{_type:"element",tags:null,links:null,viewOf:"edp.spark",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Spark",id:"spark",autoLayout:{direction:"TB"},hash:"1ec41779bad408405a96c4063aa06b24ec2aace8",bounds:{x:0,y:0,width:400,height:281},nodes:[{id:"edp.spark",parent:null,level:0,children:["edp.spark.sparkoperator"],inEdges:[],outEdges:[],title:"Spark",modelRef:"edp.spark",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Allows running Spark applications on K8s"},tags:["internal"],kind:"container",depth:1,x:8,y:8,width:384,height:265,labelBBox:{x:6,y:0,width:43,height:15}},{id:"edp.spark.sparkoperator",parent:"edp.spark",level:1,children:[],inEdges:[],outEdges:[],title:"Spark Operator",modelRef:"edp.spark.sparkoperator",shape:"rectangle",color:"primary",icon:"tech:spark",style:{opacity:15,size:"md"},tags:[],technology:"Spark",kind:"component",x:40,y:61,width:320,height:180,labelBBox:{x:76,y:64,width:198,height:46}}],edges:[]},argoCD:{_type:"element",tags:null,links:null,viewOf:"edp.argoCD",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"ArgoCD",id:"argoCD",autoLayout:{direction:"TB"},hash:"53d798ca0a34dbe3ebf9b43318a151943ecaec33",bounds:{x:0,y:0,width:2058,height:883},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["ce0h9c"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:48,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.argoCD",parent:null,level:0,children:["edp.argoCD.argocdServer","edp.argoCD.argocdAppController","edp.argoCD.argocdAppSetController","edp.argoCD.argocdRepoServer","edp.argoCD.argocdRedis"],inEdges:["ce0h9c"],outEdges:["1e5s57z"],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"GitOps Service"},tags:[],kind:"container",depth:1,x:8,y:271,width:1690,height:604,labelBBox:{x:6,y:0,width:53,height:15}},{id:"edp.argoCD.argocdServer",parent:"edp.argoCD",level:1,children:[],inEdges:["ce0h9c"],outEdges:["124uc06"],title:"ArgoCD Server",modelRef:"edp.argoCD.argocdServer",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:48,y:332,width:320,height:180,labelBBox:{x:90,y:74,width:140,height:24}},{id:"edp.argoCD.argocdAppController",parent:"edp.argoCD",level:1,children:[],inEdges:[],outEdges:["doh0se"],title:"ApplicationController",modelRef:"edp.argoCD.argocdAppController",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:478,y:332,width:320,height:180,labelBBox:{x:66,y:74,width:189,height:24}},{id:"edp.argoCD.argocdAppSetController",parent:"edp.argoCD",level:1,children:[],inEdges:[],outEdges:["ekc7mk"],title:"ApplicationSeetController",modelRef:"edp.argoCD.argocdAppSetController",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:908,y:332,width:320,height:180,labelBBox:{x:45,y:74,width:230,height:24}},{id:"edp.argoCD.argocdRepoServer",parent:"edp.argoCD",level:1,children:[],inEdges:[],outEdges:["173l3xq","1e5s57z"],title:"Repo Server",modelRef:"edp.argoCD.argocdRepoServer",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:1338,y:332,width:320,height:180,labelBBox:{x:102,y:74,width:116,height:24}},{id:"edp.argoCD.argocdRedis",parent:"edp.argoCD",level:1,children:[],inEdges:["124uc06","doh0se","ekc7mk","173l3xq"],outEdges:[],title:"Redis",modelRef:"edp.argoCD.argocdRedis",shape:"rectangle",color:"primary",icon:"tech:redis",style:{opacity:15,size:"md"},tags:[],technology:"Redis",kind:"component",x:693,y:655,width:320,height:180,labelBBox:{x:118,y:64,width:114,height:46}},{id:"edp.forgejogit",parent:null,level:0,children:[],inEdges:["1e5s57z"],outEdges:[],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:15,size:"md"},tags:[],kind:"component",x:1738,y:655,width:320,height:180,labelBBox:{x:97,y:74,width:156,height:24}}],edges:[{id:"ce0h9c",source:"edp.ingressNginx",target:"edp.argoCD.argocdServer",label:"https",points:[[208,180],[208,224],[208,277],[208,322]],labelBBox:{x:209,y:240,width:34,height:18},parent:null,relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"124uc06",source:"edp.argoCD.argocdServer",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[368,503],[464,550],[586,611],[684,660]],labelBBox:{x:551,y:572,width:65,height:18},parent:"edp.argoCD",relations:["yfhhi5"],color:"gray",line:"dashed",head:"normal"},{id:"doh0se",source:"edp.argoCD.argocdAppController",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[688,512],[704,539],[722,568],[740,595],[751,612],[764,630],[776,647]],labelBBox:{x:741,y:572,width:65,height:18},parent:"edp.argoCD",relations:["10vkxaf"],color:"gray",line:"dashed",head:"normal"},{id:"ekc7mk",source:"edp.argoCD.argocdAppSetController",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[1008,512],[980,554],[947,603],[918,646]],labelBBox:{x:968,y:572,width:65,height:18},parent:"edp.argoCD",relations:["i8z0mi"],color:"gray",line:"dashed",head:"normal"},{id:"173l3xq",source:"edp.argoCD.argocdRepoServer",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[1338,503],[1242,550],[1120,611],[1022,660]],labelBBox:{x:1196,y:572,width:65,height:18},parent:"edp.argoCD",relations:["iullhy"],color:"gray",line:"dashed",head:"normal"},{id:"1e5s57z",source:"edp.argoCD.argocdRepoServer",target:"edp.forgejogit",label:"Syncs git repo",points:[[1609,512],[1662,554],[1725,605],[1779,649]],labelBBox:{x:1711,y:572,width:93,height:18},parent:null,relations:["6mupa0"],color:"gray",line:"dashed",head:"normal"}]},idp:{_type:"element",tags:null,links:null,viewOf:"edp",_stage:"layouted",sourcePath:"views/edp/edp-as-idp.c4",description:null,title:"EDP as IDP",id:"idp",autoLayout:{direction:"TB"},hash:"d1e4c998ee263bce5b2572834b6a9a7b6d6391f5",bounds:{x:0,y:0,width:6408,height:1862},nodes:[{id:"developer",parent:null,level:0,children:[],inEdges:[],outEdges:["1w9cpb2","1y3lcyj","1agven9","1nv0w41","3nxrq7","bfgapq"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:25,size:"xl"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:5888,y:192,width:520,height:290,labelBBox:{x:111,y:108,width:298,height:64}},{id:"@gr1",parent:null,kind:"@group",title:"EDP",color:"primary",shape:"rectangle",children:["@gr2","@gr5","@gr6","@gr7"],inEdges:["1w9cpb2","1y3lcyj","1agven9","1nv0w41","3nxrq7","bfgapq"],outEdges:[],level:0,depth:3,tags:[],style:{border:"dashed",opacity:15},x:8,y:8,width:5840,height:1846,labelBBox:{x:6,y:0,width:27,height:15}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Developer Control Plane",color:"primary",shape:"rectangle",children:["@gr3","@gr4"],inEdges:["1w9cpb2","1y3lcyj","1agven9"],outEdges:[],level:0,depth:2,tags:[],style:{border:"dashed",opacity:15},x:48,y:69,width:2580,height:935,labelBBox:{x:6,y:0,width:170,height:15}},{id:"@gr3",parent:"@gr2",kind:"@group",title:"Frontend",color:"primary",shape:"rectangle",children:["edp.ui.backstage","edp.api"],inEdges:["1w9cpb2","1y3lcyj"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:1358,y:572,width:1230,height:392,labelBBox:{x:6,y:0,width:65,height:15}},{id:"@gr4",parent:"@gr2",kind:"@group",title:"Version Control",color:"primary",shape:"rectangle",children:["applicationspecification.application_gitrepo","applicationspecification.applicationspec_gitrepo","edp.forgejogit"],inEdges:["1agven9"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:88,y:130,width:1230,height:834,labelBBox:{x:6,y:0,width:111,height:15}},{id:"@gr5",parent:"@gr1",kind:"@group",title:"Integration & Delivery Plane",color:"primary",shape:"rectangle",children:["forgejoRunner","edp.imageregistry","edp.argoCD"],inEdges:["1nv0w41"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:3308,y:572,width:600,height:1242,labelBBox:{x:6,y:0,width:189,height:15}},{id:"@gr6",parent:"@gr1",kind:"@group",title:"Monitoring Plane",color:"primary",shape:"rectangle",children:["edp.monitoring","edp.grafana"],inEdges:["3nxrq7"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:2668,y:130,width:600,height:834,labelBBox:{x:6,y:0,width:116,height:15}},{id:"@gr7",parent:"@gr1",kind:"@group",title:"Security Plane",color:"primary",shape:"rectangle",children:["edp.keycloak","edp.kyverno","edp.externalSecrets","edp.openbao"],inEdges:["bfgapq"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:3948,y:572,width:1860,height:831,labelBBox:{x:6,y:0,width:100,height:15}},{id:"edp.ui.backstage",parent:"@gr3",level:1,children:[],inEdges:["1w9cpb2"],outEdges:[],title:"Backstage",modelRef:"edp.ui.backstage",shape:"browser",color:"primary",icon:"tech:react",style:{opacity:25,size:"xl"},tags:[],kind:"component",x:1398,y:634,width:520,height:290,labelBBox:{x:179,y:123,width:192,height:32}},{id:"edp.api",parent:"@gr3",level:1,children:[],inEdges:["1y3lcyj"],outEdges:[],title:"API",modelRef:"edp.api",shape:"rectangle",color:"primary",icon:"tech:swagger",style:{opacity:25,size:"xl"},description:{txt:"API for the EDP platform"},tags:[],kind:"container",x:2028,y:634,width:520,height:290,labelBBox:{x:129,y:108,width:292,height:64}},{id:"applicationspecification.application_gitrepo",parent:"@gr4",level:1,children:[],inEdges:[],outEdges:[],title:"Git App Repo",modelRef:"applicationspecification.application_gitrepo",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"xl"},description:{txt:"Git Application Repository"},tags:[],technology:"Git",kind:"component",x:128,y:192,width:520,height:290,labelBBox:{x:123,y:96,width:304,height:89}},{id:"applicationspecification.applicationspec_gitrepo",parent:"@gr4",level:1,children:[],inEdges:[],outEdges:[],title:"Git AppSpec Repo",modelRef:"applicationspecification.applicationspec_gitrepo",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"xl"},description:{txt:"Git Application Specification Repository"},tags:[],technology:"Git",kind:"component",x:128,y:634,width:520,height:290,labelBBox:{x:114,y:83,width:322,height:114}},{id:"edp.forgejogit",parent:"@gr4",level:1,children:[],inEdges:["1agven9"],outEdges:[],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"xl"},tags:[],kind:"component",x:758,y:634,width:520,height:290,labelBBox:{x:179,y:123,width:192,height:32}},{id:"forgejoRunner",parent:"@gr5",level:1,children:[],inEdges:[],outEdges:[],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:3348,y:1073,width:520,height:290,labelBBox:{x:69,y:71,width:382,height:139}},{id:"edp.imageregistry",parent:"@gr5",level:1,children:[],inEdges:["1nv0w41"],outEdges:[],title:"Forgejo OCI Image Registry",modelRef:"edp.imageregistry",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"xl"},description:{txt:"Container Image Registry"},tags:[],technology:"Golang",kind:"component",x:3348,y:634,width:520,height:290,labelBBox:{x:70,y:96,width:410,height:89}},{id:"edp.argoCD",parent:"@gr5",level:1,children:[],inEdges:[],outEdges:[],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"GitOps Service"},tags:[],kind:"container",navigateTo:"argoCD",x:3348,y:1484,width:520,height:290,labelBBox:{x:187,y:108,width:145,height:64}},{id:"edp.monitoring",parent:"@gr6",level:1,children:[],inEdges:[],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:2708,y:192,width:520,height:290,labelBBox:{x:66,y:96,width:388,height:88}},{id:"edp.grafana",parent:"@gr6",level:1,children:[],inEdges:["3nxrq7"],outEdges:[],title:"Grafana",modelRef:"edp.grafana",shape:"rectangle",color:"primary",icon:"tech:grafana",style:{opacity:25,size:"xl"},description:{txt:"Data visualization and monitoring"},tags:[],kind:"container",x:2708,y:634,width:520,height:290,labelBBox:{x:89,y:108,width:372,height:64}},{id:"edp.keycloak",parent:"@gr7",level:1,children:[],inEdges:["bfgapq"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:5248,y:634,width:520,height:290,labelBBox:{x:92,y:108,width:337,height:64}},{id:"edp.kyverno",parent:"@gr7",level:1,children:[],inEdges:[],outEdges:[],title:"Kyverno",modelRef:"edp.kyverno",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Policy-as-Code"},tags:["internal"],kind:"container",x:3988,y:634,width:520,height:290,labelBBox:{x:187,y:108,width:146,height:64}},{id:"edp.externalSecrets",parent:"@gr7",level:1,children:[],inEdges:[],outEdges:[],title:"external-secrets",modelRef:"edp.externalSecrets",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Provider to access externally stored Kubernetes secrets"},tags:["internal"],kind:"container",navigateTo:"externalSecrets",x:4618,y:634,width:520,height:290,labelBBox:{x:92,y:96,width:337,height:88}},{id:"edp.openbao",parent:"@gr7",level:1,children:[],inEdges:[],outEdges:[],title:"OpenBao",modelRef:"edp.openbao",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Secure secret storage"},tags:[],kind:"container",x:3988,y:1073,width:520,height:290,labelBBox:{x:155,y:108,width:209,height:64}}],edges:[{id:"1w9cpb2",source:"developer",target:"edp.ui.backstage",label:"create and maintain apps",points:[[5888,380],[5537,435],[4891,529],[4336,564],[4303,567],[2004,563],[1973,572],[1931,585],[1888,605],[1850,629]],labelBBox:{x:4585,y:541,width:161,height:18},parent:null,relations:["65iq0s"],color:"gray",line:"dashed",head:"normal"},{id:"1y3lcyj",source:"developer",target:"edp.api",label:"uses API",points:[[5888,397],[5631,453],[5226,532],[4870,564],[4839,567],[2671,564],[2641,572],[2594,585],[2548,606],[2504,629]],labelBBox:{x:5046,y:541,width:60,height:18},parent:null,relations:["1dgd663"],color:"gray",line:"dashed",head:"normal"},{id:"1agven9",source:"developer",target:"edp.forgejogit",label:"uses git",points:[[5888,369],[5436,421],[4473,526],[3656,564],[3624,566],[1362,563],[1331,572],[1289,585],[1247,605],[1209,628]],labelBBox:{x:3997,y:541,width:52,height:18},parent:null,relations:["1k2mvqc"],color:"gray",line:"dashed",head:"normal"},{id:"1nv0w41",source:"developer",target:"edp.imageregistry",label:"pushes and pull images",points:[[5888,438],[5750,487],[5575,540],[5414,564],[5373,571],[3961,560],[3921,572],[3879,585],[3837,605],[3799,628]],labelBBox:{x:5518,y:541,width:151,height:18},parent:null,relations:["u2ppde"],color:"gray",line:"dashed",head:"normal"},{id:"3nxrq7",source:"developer",target:"edp.grafana",label:"monitors",points:[[5888,415],[5694,469],[5420,536],[5175,564],[5123,571],[3331,557],[3281,572],[3239,585],[3197,605],[3159,628]],labelBBox:{x:5310,y:541,width:58,height:18},parent:null,relations:["dol85h"],color:"gray",line:"dashed",head:"normal"},{id:"bfgapq",source:"developer",target:"edp.keycloak",label:"authenticates",points:[[5939,481],[5871,528],[5795,581],[5726,628]],labelBBox:{x:5848,y:541,width:87,height:18},parent:null,relations:["129xciy"],color:"gray",line:"dashed",head:"normal"}]},edporchestrator:{_type:"element",tags:null,links:null,viewOf:"edp",_stage:"layouted",sourcePath:"views/edp/edp-as-orchestrator.c4",description:null,title:"EDP as Orchestrator",id:"edporchestrator",autoLayout:{direction:"TB"},hash:"3b527fd6f99efa02fc730d4569c0a0ccc75b4ef3",bounds:{x:0,y:0,width:846,height:1457},nodes:[{id:"@gr1",parent:null,kind:"@group",title:"EDP",color:"primary",shape:"rectangle",children:["@gr2","@gr3","@gr4","@gr5","@gr6"],inEdges:[],outEdges:[],level:0,depth:2,tags:[],style:{border:"dashed",opacity:15},x:8,y:8,width:830,height:1441,labelBBox:{x:6,y:0,width:27,height:15}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Developer Control Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:48,y:69,width:320,height:180,labelBBox:{x:49,y:74,width:222,height:24}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Integration & Delivery Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:478,y:69,width:320,height:180,labelBBox:{x:34,y:74,width:252,height:24}},{id:"@gr4",parent:"@gr1",kind:"@group",title:"Monitoring Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:48,y:369,width:320,height:180,labelBBox:{x:83,y:74,width:154,height:24}},{id:"@gr5",parent:"@gr1",kind:"@group",title:"Security Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:478,y:369,width:320,height:180,labelBBox:{x:94,y:74,width:133,height:24}},{id:"@gr6",parent:"@gr1",kind:"@group",title:"Backend",color:"primary",shape:"rectangle",children:["edp.argoCD","edp.crossplane"],inEdges:[],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:198,y:608,width:600,height:801,labelBBox:{x:6,y:0,width:59,height:15}},{id:"edp.argoCD",parent:"@gr6",level:1,children:[],inEdges:[],outEdges:[],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Declarative management of platform tools"},tags:[],kind:"container",isCustomized:!0,navigateTo:"argoCD",x:238,y:669,width:520,height:290,labelBBox:{x:64,y:109,width:393,height:63}},{id:"edp.crossplane",parent:"@gr6",level:1,children:[],inEdges:[],outEdges:[],title:"Crossplane",modelRef:"edp.crossplane",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Declarative management of ressources"},tags:["internal"],kind:"container",navigateTo:"crossplane",x:238,y:1079,width:520,height:290,labelBBox:{x:75,y:109,width:369,height:63}}],edges:[]},platform_orchestration_flow:{_type:"element",tags:null,links:null,viewOf:"edp",_stage:"layouted",sourcePath:"views/edp/platform-orchestration-flow.c4",description:null,title:"Platform Orchestration Flow",id:"platform_orchestration_flow",autoLayout:{direction:"TB"},hash:"14eb082fcf4b1c9a9d95bd8ba1840f10c233d072",bounds:{x:0,y:0,width:1296,height:861},nodes:[{id:"idpbuilder",parent:null,level:0,children:[],inEdges:[],outEdges:["1dvclx1","hjkafp"],title:"idpbuilder",modelRef:"idpbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Bootstrap tool for initial platform provisioning"},tags:[],technology:"Golang",kind:"component",x:260,y:0,width:335,height:180,labelBBox:{x:47,y:44,width:273,height:85}},{id:"edp",parent:null,level:0,children:["edp.argoCD","edp.forgejo","edp.keycloak","edp.monitoring"],inEdges:["1dvclx1","hjkafp"],outEdges:[],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",depth:1,navigateTo:"edp",x:8,y:271,width:1280,height:582,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edp.argoCD",parent:"edp",level:1,children:[],inEdges:["1dvclx1"],outEdges:[],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"GitOps Service"},tags:[],kind:"container",navigateTo:"argoCD",x:48,y:332,width:320,height:180,labelBBox:{x:108,y:63,width:105,height:48}},{id:"edp.forgejo",parent:"edp",level:1,children:[],inEdges:["hjkafp"],outEdges:[],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:20,size:"md"},description:{txt:`Fully managed DevOps Platform +and security scanning`},tags:[],technology:"Golang",kind:"container",navigateTo:"forgejo",x:860,y:384,width:340,height:180,labelBBox:{x:46,y:17,width:278,height:139}},{id:"edp.keycloak",parent:null,level:0,children:[],inEdges:["dh7ut5"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:1310,y:384,width:320,height:180,labelBBox:{x:39,y:63,width:242,height:48}},{id:"edp.mailhog",parent:null,level:0,children:[],inEdges:["1bv0wod"],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Web and API based SMTP testing"},tags:[],kind:"container",navigateTo:"mailhog",x:1740,y:384,width:320,height:180,labelBBox:{x:44,y:63,width:232,height:48}},{id:"edp.minio",parent:null,level:0,children:[],inEdges:["68hu20"],outEdges:[],title:"Minio",modelRef:"edp.minio",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"S3 compatible blob storage"},tags:[],kind:"container",navigateTo:"minio",x:2170,y:384,width:320,height:180,labelBBox:{x:67,y:63,width:186,height:48}},{id:"edp.monitoring",parent:null,level:0,children:[],inEdges:["nx2xew"],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:2600,y:384,width:320,height:180,labelBBox:{x:21,y:54,width:278,height:66}},{id:"edp.openbao",parent:null,level:0,children:[],inEdges:["momp7g"],outEdges:[],title:"OpenBao",modelRef:"edp.openbao",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Secure secret storage"},tags:[],kind:"container",x:3030,y:384,width:320,height:180,labelBBox:{x:85,y:63,width:151,height:48}},{id:"edp.testApp",parent:null,level:0,children:[],inEdges:["8cmkj7"],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Testapp to validate deployments"},tags:[],kind:"container",navigateTo:"testapp",x:3460,y:384,width:320,height:180,labelBBox:{x:50,y:63,width:220,height:48}}],edges:[{id:"1poylyw",source:"edp.ingressNginx.ingressNginx",target:"edp.argoCD",label:"https",points:[[1740,164],[1459,187],[862,248],[375,384],[360,388],[345,393],[329,398]],labelBBox:{x:704,y:301,width:34,height:18},parent:null,relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"llqgvs",source:"edp.ingressNginx.ingressNginx",target:"edp.ui",label:"https",points:[[1740,177],[1525,211],[1131,283],[805,384],[790,389],[775,394],[759,400]],labelBBox:{x:1102,y:301,width:34,height:18},parent:null,relations:["v8c8aq"],color:"gray",line:"dashed",head:"normal"},{id:"75xltk",source:"edp.ingressNginx.ingressNginx",target:"edp.forgejo",label:"https",points:[[1740,208],[1609,254],[1420,322],[1255,384],[1240,390],[1225,395],[1210,401]],labelBBox:{x:1468,y:301,width:34,height:18},parent:null,relations:["123efwn"],color:"gray",line:"dashed",head:"normal"},{id:"dh7ut5",source:"edp.ingressNginx.ingressNginx",target:"edp.keycloak",label:"https",points:[[1781,241],[1724,284],[1655,335],[1597,378]],labelBBox:{x:1699,y:301,width:34,height:18},parent:null,relations:["h3rut2"],color:"gray",line:"dashed",head:"normal"},{id:"1bv0wod",source:"edp.ingressNginx.ingressNginx",target:"edp.mailhog",label:"https",points:[[1900,241],[1900,282],[1900,331],[1900,374]],labelBBox:{x:1901,y:301,width:34,height:18},parent:null,relations:["ofdedh"],color:"gray",line:"dashed",head:"normal"},{id:"68hu20",source:"edp.ingressNginx.ingressNginx",target:"edp.minio",label:"https",points:[[2019,241],[2076,284],[2145,335],[2203,378]],labelBBox:{x:2129,y:301,width:34,height:18},parent:null,relations:["fe65w2"],color:"gray",line:"dashed",head:"normal"},{id:"nx2xew",source:"edp.ingressNginx.ingressNginx",target:"edp.monitoring",label:"https",points:[[2060,207],[2191,253],[2381,321],[2545,384],[2560,390],[2575,396],[2591,402]],labelBBox:{x:2370,y:301,width:34,height:18},parent:null,relations:["1jvab2g","fs60l7"],color:"gray",line:"dashed",head:"normal"},{id:"momp7g",source:"edp.ingressNginx.ingressNginx",target:"edp.openbao",label:"https",points:[[2060,177],[2272,213],[2657,285],[2975,384],[2990,389],[3005,394],[3021,400]],labelBBox:{x:2744,y:301,width:34,height:18},parent:null,relations:["1p30hav"],color:"gray",line:"dashed",head:"normal"},{id:"8cmkj7",source:"edp.ingressNginx.ingressNginx",target:"edp.testApp",label:"https",points:[[2060,164],[2338,188],[2926,250],[3405,384],[3420,388],[3435,393],[3451,399]],labelBBox:{x:3165,y:301,width:34,height:18},parent:null,relations:["1i5f8um"],color:"gray",line:"dashed",head:"normal"}]},testapp:{_type:"element",tags:null,links:null,viewOf:"edp.testApp",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Fibonacci",id:"testapp",autoLayout:{direction:"TB"},hash:"d8f40f5cfab10e6e91c79feeef6be3240922c723",bounds:{x:0,y:0,width:400,height:544},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["1tefjx2"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:40,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.testApp",parent:null,level:0,children:["edp.testApp.fibonacci"],inEdges:["1tefjx2"],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Testapp to validate deployments"},tags:[],kind:"container",depth:1,x:8,y:271,width:384,height:265,labelBBox:{x:6,y:0,width:65,height:15}},{id:"edp.testApp.fibonacci",parent:"edp.testApp",level:1,children:[],inEdges:["1tefjx2"],outEdges:[],title:"Fibonacci",modelRef:"edp.testApp.fibonacci",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},tags:[],technology:"Golang",kind:"component",x:40,y:324,width:320,height:180,labelBBox:{x:101,y:64,width:148,height:46}}],edges:[{id:"1tefjx2",source:"edp.ingressNginx",target:"edp.testApp.fibonacci",label:"https",points:[[200,180],[200,221],[200,271],[200,314]],labelBBox:{x:201,y:240,width:34,height:18},parent:null,relations:["1i5f8um"],color:"gray",line:"dashed",head:"normal"}]},mailhog:{_type:"element",tags:null,links:null,viewOf:"edp.mailhog",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Mailhog",id:"mailhog",autoLayout:{direction:"TB"},hash:"b9e703c2ceb2b2a400194d90ac7caa94525ac068",bounds:{x:0,y:0,width:400,height:544},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["axipfp"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:40,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.mailhog",parent:null,level:0,children:["edp.mailhog.mailhog"],inEdges:["axipfp"],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Web and API based SMTP testing"},tags:[],kind:"container",depth:1,x:8,y:271,width:384,height:265,labelBBox:{x:6,y:0,width:56,height:15}},{id:"edp.mailhog.mailhog",parent:"edp.mailhog",level:1,children:[],inEdges:["axipfp"],outEdges:[],title:"Mailhog",modelRef:"edp.mailhog.mailhog",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},tags:[],technology:"Golang",kind:"component",x:40,y:324,width:320,height:180,labelBBox:{x:109,y:64,width:132,height:46}}],edges:[{id:"axipfp",source:"edp.ingressNginx",target:"edp.mailhog.mailhog",label:"https",points:[[200,180],[200,221],[200,271],[200,314]],labelBBox:{x:201,y:240,width:34,height:18},parent:null,relations:["ofdedh"],color:"gray",line:"dashed",head:"normal"}]},spark:{_type:"element",tags:null,links:null,viewOf:"edp.spark",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"Spark",id:"spark",autoLayout:{direction:"TB"},hash:"1ec41779bad408405a96c4063aa06b24ec2aace8",bounds:{x:0,y:0,width:400,height:281},nodes:[{id:"edp.spark",parent:null,level:0,children:["edp.spark.sparkoperator"],inEdges:[],outEdges:[],title:"Spark",modelRef:"edp.spark",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Allows running Spark applications on K8s"},tags:["internal"],kind:"container",depth:1,x:8,y:8,width:384,height:265,labelBBox:{x:6,y:0,width:43,height:15}},{id:"edp.spark.sparkoperator",parent:"edp.spark",level:1,children:[],inEdges:[],outEdges:[],title:"Spark Operator",modelRef:"edp.spark.sparkoperator",shape:"rectangle",color:"primary",icon:"tech:spark",style:{opacity:15,size:"md"},tags:[],technology:"Spark",kind:"component",x:40,y:61,width:320,height:180,labelBBox:{x:76,y:64,width:198,height:46}}],edges:[]},argoCD:{_type:"element",tags:null,links:null,viewOf:"edp.argoCD",_stage:"layouted",sourcePath:"views/edp/edp.c4",description:null,title:"ArgoCD",id:"argoCD",autoLayout:{direction:"TB"},hash:"53d798ca0a34dbe3ebf9b43318a151943ecaec33",bounds:{x:0,y:0,width:2058,height:883},nodes:[{id:"edp.ingressNginx",parent:null,level:0,children:[],inEdges:[],outEdges:["ce0h9c"],title:"Ingress",modelRef:"edp.ingressNginx",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],kind:"container",navigateTo:"ingressNginx",x:48,y:0,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edp.argoCD",parent:null,level:0,children:["edp.argoCD.argocdServer","edp.argoCD.argocdAppController","edp.argoCD.argocdAppSetController","edp.argoCD.argocdRepoServer","edp.argoCD.argocdRedis"],inEdges:["ce0h9c"],outEdges:["1e5s57z"],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"GitOps Service"},tags:[],kind:"container",depth:1,x:8,y:271,width:1690,height:604,labelBBox:{x:6,y:0,width:53,height:15}},{id:"edp.argoCD.argocdServer",parent:"edp.argoCD",level:1,children:[],inEdges:["ce0h9c"],outEdges:["124uc06"],title:"ArgoCD Server",modelRef:"edp.argoCD.argocdServer",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:48,y:332,width:320,height:180,labelBBox:{x:90,y:74,width:140,height:24}},{id:"edp.argoCD.argocdAppController",parent:"edp.argoCD",level:1,children:[],inEdges:[],outEdges:["doh0se"],title:"ApplicationController",modelRef:"edp.argoCD.argocdAppController",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:478,y:332,width:320,height:180,labelBBox:{x:66,y:74,width:189,height:24}},{id:"edp.argoCD.argocdAppSetController",parent:"edp.argoCD",level:1,children:[],inEdges:[],outEdges:["ekc7mk"],title:"ApplicationSeetController",modelRef:"edp.argoCD.argocdAppSetController",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:908,y:332,width:320,height:180,labelBBox:{x:45,y:74,width:230,height:24}},{id:"edp.argoCD.argocdRepoServer",parent:"edp.argoCD",level:1,children:[],inEdges:[],outEdges:["173l3xq","1e5s57z"],title:"Repo Server",modelRef:"edp.argoCD.argocdRepoServer",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},tags:[],kind:"component",x:1338,y:332,width:320,height:180,labelBBox:{x:102,y:74,width:116,height:24}},{id:"edp.argoCD.argocdRedis",parent:"edp.argoCD",level:1,children:[],inEdges:["124uc06","doh0se","ekc7mk","173l3xq"],outEdges:[],title:"Redis",modelRef:"edp.argoCD.argocdRedis",shape:"rectangle",color:"primary",icon:"tech:redis",style:{opacity:15,size:"md"},tags:[],technology:"Redis",kind:"component",x:693,y:655,width:320,height:180,labelBBox:{x:118,y:64,width:114,height:46}},{id:"edp.forgejogit",parent:null,level:0,children:[],inEdges:["1e5s57z"],outEdges:[],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:15,size:"md"},tags:[],kind:"component",x:1738,y:655,width:320,height:180,labelBBox:{x:97,y:74,width:156,height:24}}],edges:[{id:"ce0h9c",source:"edp.ingressNginx",target:"edp.argoCD.argocdServer",label:"https",points:[[208,180],[208,224],[208,277],[208,322]],labelBBox:{x:209,y:240,width:34,height:18},parent:null,relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"124uc06",source:"edp.argoCD.argocdServer",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[368,503],[464,550],[586,611],[684,660]],labelBBox:{x:551,y:572,width:65,height:18},parent:"edp.argoCD",relations:["yfhhi5"],color:"gray",line:"dashed",head:"normal"},{id:"doh0se",source:"edp.argoCD.argocdAppController",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[688,512],[704,539],[722,568],[740,595],[751,612],[764,630],[776,647]],labelBBox:{x:741,y:572,width:65,height:18},parent:"edp.argoCD",relations:["10vkxaf"],color:"gray",line:"dashed",head:"normal"},{id:"ekc7mk",source:"edp.argoCD.argocdAppSetController",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[1008,512],[980,554],[947,603],[918,646]],labelBBox:{x:968,y:572,width:65,height:18},parent:"edp.argoCD",relations:["i8z0mi"],color:"gray",line:"dashed",head:"normal"},{id:"173l3xq",source:"edp.argoCD.argocdRepoServer",target:"edp.argoCD.argocdRedis",label:"read/write",points:[[1338,503],[1242,550],[1120,611],[1022,660]],labelBBox:{x:1196,y:572,width:65,height:18},parent:"edp.argoCD",relations:["iullhy"],color:"gray",line:"dashed",head:"normal"},{id:"1e5s57z",source:"edp.argoCD.argocdRepoServer",target:"edp.forgejogit",label:"Syncs git repo",points:[[1609,512],[1662,554],[1725,605],[1779,649]],labelBBox:{x:1711,y:572,width:93,height:18},parent:null,relations:["6mupa0"],color:"gray",line:"dashed",head:"normal"}]},idp:{_type:"element",tags:null,links:null,viewOf:"edp",_stage:"layouted",sourcePath:"views/edp/edp-as-idp.c4",description:null,title:"EDP as IDP",id:"idp",autoLayout:{direction:"TB"},hash:"7440ad8a1e185be7bca7133b9432ab2276b005cf",bounds:{x:0,y:0,width:6408,height:1862},nodes:[{id:"developer",parent:null,level:0,children:[],inEdges:[],outEdges:["1w9cpb2","1y3lcyj","1agven9","1nv0w41","3nxrq7","bfgapq"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:25,size:"xl"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:5888,y:192,width:520,height:290,labelBBox:{x:111,y:108,width:298,height:64}},{id:"@gr1",parent:null,kind:"@group",title:"EDP",color:"primary",shape:"rectangle",children:["@gr2","@gr5","@gr6","@gr7"],inEdges:["1w9cpb2","1y3lcyj","1agven9","1nv0w41","3nxrq7","bfgapq"],outEdges:[],level:0,depth:3,tags:[],style:{border:"dashed",opacity:15},x:8,y:8,width:5840,height:1846,labelBBox:{x:6,y:0,width:27,height:15}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Developer Control Plane",color:"primary",shape:"rectangle",children:["@gr3","@gr4"],inEdges:["1w9cpb2","1y3lcyj","1agven9"],outEdges:[],level:0,depth:2,tags:[],style:{border:"dashed",opacity:15},x:48,y:69,width:2580,height:935,labelBBox:{x:6,y:0,width:170,height:15}},{id:"@gr3",parent:"@gr2",kind:"@group",title:"Frontend",color:"primary",shape:"rectangle",children:["edp.ui.backstage","edp.api"],inEdges:["1w9cpb2","1y3lcyj"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:1358,y:572,width:1230,height:392,labelBBox:{x:6,y:0,width:65,height:15}},{id:"@gr4",parent:"@gr2",kind:"@group",title:"Version Control",color:"primary",shape:"rectangle",children:["applicationspecification.application_gitrepo","applicationspecification.applicationspec_gitrepo","edp.forgejogit"],inEdges:["1agven9"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:88,y:130,width:1230,height:834,labelBBox:{x:6,y:0,width:111,height:15}},{id:"@gr5",parent:"@gr1",kind:"@group",title:"Integration & Delivery Plane",color:"primary",shape:"rectangle",children:["forgejoRunner","edp.imageregistry","edp.argoCD"],inEdges:["1nv0w41"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:3308,y:572,width:600,height:1242,labelBBox:{x:6,y:0,width:189,height:15}},{id:"@gr6",parent:"@gr1",kind:"@group",title:"Monitoring Plane",color:"primary",shape:"rectangle",children:["edp.monitoring","edp.grafana"],inEdges:["3nxrq7"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:2668,y:130,width:600,height:834,labelBBox:{x:6,y:0,width:116,height:15}},{id:"@gr7",parent:"@gr1",kind:"@group",title:"Security Plane",color:"primary",shape:"rectangle",children:["edp.keycloak","edp.kyverno","edp.externalSecrets","edp.openbao"],inEdges:["bfgapq"],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:3948,y:572,width:1860,height:831,labelBBox:{x:6,y:0,width:100,height:15}},{id:"edp.ui.backstage",parent:"@gr3",level:1,children:[],inEdges:["1w9cpb2"],outEdges:[],title:"Backstage",modelRef:"edp.ui.backstage",shape:"browser",color:"primary",icon:"tech:react",style:{opacity:25,size:"xl"},tags:[],kind:"component",x:1398,y:634,width:520,height:290,labelBBox:{x:179,y:123,width:192,height:32}},{id:"edp.api",parent:"@gr3",level:1,children:[],inEdges:["1y3lcyj"],outEdges:[],title:"API",modelRef:"edp.api",shape:"rectangle",color:"primary",icon:"tech:swagger",style:{opacity:25,size:"xl"},description:{txt:"API for the EDP platform"},tags:[],kind:"container",x:2028,y:634,width:520,height:290,labelBBox:{x:129,y:108,width:292,height:64}},{id:"applicationspecification.application_gitrepo",parent:"@gr4",level:1,children:[],inEdges:[],outEdges:[],title:"Git App Repo",modelRef:"applicationspecification.application_gitrepo",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"xl"},description:{txt:"Git Application Repository"},tags:[],technology:"Git",kind:"component",x:128,y:192,width:520,height:290,labelBBox:{x:123,y:96,width:304,height:89}},{id:"applicationspecification.applicationspec_gitrepo",parent:"@gr4",level:1,children:[],inEdges:[],outEdges:[],title:"Git AppSpec Repo",modelRef:"applicationspecification.applicationspec_gitrepo",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"xl"},description:{txt:"Git Application Specification Repository"},tags:[],technology:"Git",kind:"component",x:128,y:634,width:520,height:290,labelBBox:{x:114,y:83,width:322,height:114}},{id:"edp.forgejogit",parent:"@gr4",level:1,children:[],inEdges:["1agven9"],outEdges:[],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:25,size:"xl"},tags:[],kind:"component",x:758,y:634,width:520,height:290,labelBBox:{x:179,y:123,width:192,height:32}},{id:"forgejoRunner",parent:"@gr5",level:1,children:[],inEdges:[],outEdges:[],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:3348,y:1073,width:520,height:290,labelBBox:{x:69,y:71,width:382,height:139}},{id:"edp.imageregistry",parent:"@gr5",level:1,children:[],inEdges:["1nv0w41"],outEdges:[],title:"Forgejo OCI Image Registry",modelRef:"edp.imageregistry",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:25,size:"xl"},description:{txt:"Container Image Registry"},tags:[],technology:"Golang",kind:"component",x:3348,y:634,width:520,height:290,labelBBox:{x:70,y:96,width:410,height:89}},{id:"edp.argoCD",parent:"@gr5",level:1,children:[],inEdges:[],outEdges:[],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"GitOps Service"},tags:[],kind:"container",navigateTo:"argoCD",x:3348,y:1484,width:520,height:290,labelBBox:{x:187,y:108,width:145,height:64}},{id:"edp.monitoring",parent:"@gr6",level:1,children:[],inEdges:[],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:2708,y:192,width:520,height:290,labelBBox:{x:66,y:96,width:388,height:88}},{id:"edp.grafana",parent:"@gr6",level:1,children:[],inEdges:["3nxrq7"],outEdges:[],title:"Grafana",modelRef:"edp.grafana",shape:"rectangle",color:"primary",icon:"tech:grafana",style:{opacity:25,size:"xl"},description:{txt:"Data visualization and monitoring"},tags:[],kind:"container",x:2708,y:634,width:520,height:290,labelBBox:{x:89,y:108,width:372,height:64}},{id:"edp.keycloak",parent:"@gr7",level:1,children:[],inEdges:["bfgapq"],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:5248,y:634,width:520,height:290,labelBBox:{x:92,y:108,width:337,height:64}},{id:"edp.kyverno",parent:"@gr7",level:1,children:[],inEdges:[],outEdges:[],title:"Kyverno",modelRef:"edp.kyverno",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Policy-as-Code"},tags:["internal"],kind:"container",x:3988,y:634,width:520,height:290,labelBBox:{x:187,y:108,width:146,height:64}},{id:"edp.externalSecrets",parent:"@gr7",level:1,children:[],inEdges:[],outEdges:[],title:"external-secrets",modelRef:"edp.externalSecrets",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Provider to access externally stored Kubernetes secrets"},tags:["internal"],kind:"container",navigateTo:"externalSecrets",x:4618,y:634,width:520,height:290,labelBBox:{x:92,y:96,width:337,height:88}},{id:"edp.openbao",parent:"@gr7",level:1,children:[],inEdges:[],outEdges:[],title:"OpenBao",modelRef:"edp.openbao",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Secure secret storage"},tags:[],kind:"container",x:3988,y:1073,width:520,height:290,labelBBox:{x:155,y:108,width:209,height:64}}],edges:[{id:"1w9cpb2",source:"developer",target:"edp.ui.backstage",label:"create and maintain apps",points:[[5888,380],[5535,435],[4884,529],[4324,564],[4291,566],[2004,563],[1973,572],[1931,585],[1888,605],[1850,629]],labelBBox:{x:4574,y:541,width:161,height:18},parent:null,relations:["65iq0s"],color:"gray",line:"dashed",head:"normal"},{id:"1y3lcyj",source:"developer",target:"edp.api",label:"uses API",points:[[5888,397],[5630,453],[5222,532],[4864,564],[4833,567],[2671,564],[2641,572],[2594,585],[2548,606],[2504,629]],labelBBox:{x:5041,y:541,width:60,height:18},parent:null,relations:["1dgd663"],color:"gray",line:"dashed",head:"normal"},{id:"1agven9",source:"developer",target:"edp.forgejogit",label:"[...]",points:[[5888,369],[5436,421],[4473,526],[3657,564],[3625,566],[1362,563],[1331,572],[1289,585],[1247,605],[1209,628]],labelBBox:{x:3998,y:540,width:25,height:18},parent:null,relations:["1k2mvqc","vxxbwa"],color:"gray",line:"dashed",head:"normal"},{id:"1nv0w41",source:"developer",target:"edp.imageregistry",label:"pushes and pull images",points:[[5888,438],[5750,487],[5575,540],[5413,564],[5372,571],[3961,560],[3921,572],[3879,585],[3837,605],[3799,628]],labelBBox:{x:5517,y:541,width:151,height:18},parent:null,relations:["u2ppde"],color:"gray",line:"dashed",head:"normal"},{id:"3nxrq7",source:"developer",target:"edp.grafana",label:"monitors",points:[[5888,415],[5693,469],[5418,536],[5172,564],[5120,571],[3331,557],[3281,572],[3239,585],[3197,605],[3159,628]],labelBBox:{x:5308,y:541,width:58,height:18},parent:null,relations:["dol85h"],color:"gray",line:"dashed",head:"normal"},{id:"bfgapq",source:"developer",target:"edp.keycloak",label:"authenticates",points:[[5939,481],[5871,528],[5795,581],[5726,628]],labelBBox:{x:5848,y:541,width:87,height:18},parent:null,relations:["129xciy"],color:"gray",line:"dashed",head:"normal"}]},edporchestrator:{_type:"element",tags:null,links:null,viewOf:"edp",_stage:"layouted",sourcePath:"views/edp/edp-as-orchestrator.c4",description:null,title:"EDP as Orchestrator",id:"edporchestrator",autoLayout:{direction:"TB"},hash:"3b527fd6f99efa02fc730d4569c0a0ccc75b4ef3",bounds:{x:0,y:0,width:846,height:1457},nodes:[{id:"@gr1",parent:null,kind:"@group",title:"EDP",color:"primary",shape:"rectangle",children:["@gr2","@gr3","@gr4","@gr5","@gr6"],inEdges:[],outEdges:[],level:0,depth:2,tags:[],style:{border:"dashed",opacity:15},x:8,y:8,width:830,height:1441,labelBBox:{x:6,y:0,width:27,height:15}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Developer Control Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:48,y:69,width:320,height:180,labelBBox:{x:49,y:74,width:222,height:24}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Integration & Delivery Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:478,y:69,width:320,height:180,labelBBox:{x:34,y:74,width:252,height:24}},{id:"@gr4",parent:"@gr1",kind:"@group",title:"Monitoring Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:48,y:369,width:320,height:180,labelBBox:{x:83,y:74,width:154,height:24}},{id:"@gr5",parent:"@gr1",kind:"@group",title:"Security Plane",color:"primary",shape:"rectangle",children:[],inEdges:[],outEdges:[],level:0,depth:0,tags:[],style:{border:"dashed",opacity:15},x:478,y:369,width:320,height:180,labelBBox:{x:94,y:74,width:133,height:24}},{id:"@gr6",parent:"@gr1",kind:"@group",title:"Backend",color:"primary",shape:"rectangle",children:["edp.argoCD","edp.crossplane"],inEdges:[],outEdges:[],level:0,depth:1,tags:[],style:{border:"dashed",opacity:15},x:198,y:608,width:600,height:801,labelBBox:{x:6,y:0,width:59,height:15}},{id:"edp.argoCD",parent:"@gr6",level:1,children:[],inEdges:[],outEdges:[],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Declarative management of platform tools"},tags:[],kind:"container",isCustomized:!0,navigateTo:"argoCD",x:238,y:669,width:520,height:290,labelBBox:{x:64,y:109,width:393,height:63}},{id:"edp.crossplane",parent:"@gr6",level:1,children:[],inEdges:[],outEdges:[],title:"Crossplane",modelRef:"edp.crossplane",shape:"rectangle",color:"primary",style:{opacity:25,size:"xl"},description:{txt:"Declarative management of ressources"},tags:["internal"],kind:"container",navigateTo:"crossplane",x:238,y:1079,width:520,height:290,labelBBox:{x:75,y:109,width:369,height:63}}],edges:[]},platform_orchestration_flow:{_type:"element",tags:null,links:null,viewOf:"edp",_stage:"layouted",sourcePath:"views/edp/platform-orchestration-flow.c4",description:null,title:"Platform Orchestration Flow",id:"platform_orchestration_flow",autoLayout:{direction:"TB"},hash:"14eb082fcf4b1c9a9d95bd8ba1840f10c233d072",bounds:{x:0,y:0,width:1296,height:861},nodes:[{id:"idpbuilder",parent:null,level:0,children:[],inEdges:[],outEdges:["1dvclx1","hjkafp"],title:"idpbuilder",modelRef:"idpbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Bootstrap tool for initial platform provisioning"},tags:[],technology:"Golang",kind:"component",x:260,y:0,width:335,height:180,labelBBox:{x:47,y:44,width:273,height:85}},{id:"edp",parent:null,level:0,children:["edp.argoCD","edp.forgejo","edp.keycloak","edp.monitoring"],inEdges:["1dvclx1","hjkafp"],outEdges:[],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",depth:1,navigateTo:"edp",x:8,y:271,width:1280,height:582,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edp.argoCD",parent:"edp",level:1,children:[],inEdges:["1dvclx1"],outEdges:[],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"GitOps Service"},tags:[],kind:"container",navigateTo:"argoCD",x:48,y:332,width:320,height:180,labelBBox:{x:108,y:63,width:105,height:48}},{id:"edp.forgejo",parent:"edp",level:1,children:[],inEdges:["hjkafp"],outEdges:[],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:20,size:"md"},description:{txt:`Fully managed DevOps Platform offering capabilities like code version controling collaboration and ticketing -and security scanning`},tags:[],technology:"Golang",kind:"container",navigateTo:"forgejo",x:478,y:332,width:340,height:180,labelBBox:{x:46,y:17,width:278,height:139}},{id:"edp.keycloak",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:928,y:332,width:320,height:180,labelBBox:{x:39,y:63,width:242,height:48}},{id:"edp.monitoring",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:928,y:633,width:320,height:180,labelBBox:{x:21,y:54,width:278,height:66}}],edges:[{id:"1dvclx1",source:"idpbuilder",target:"edp.argoCD",label:"installs",points:[[369,180],[339,224],[303,278],[273,324]],labelBBox:{x:326,y:240,width:47,height:18},parent:null,relations:["8fwa3r"],color:"gray",line:"dashed",head:"normal"},{id:"hjkafp",source:"idpbuilder",target:"edp.forgejo",label:"installs",points:[[487,180],[517,224],[553,278],[583,324]],labelBBox:{x:539,y:240,width:47,height:18},parent:null,relations:["1ai9t9i"],color:"gray",line:"dashed",head:"normal"}]},"application-transition":{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/application-transition.c4",description:null,title:"application-transistion",id:"application-transition",autoLayout:{direction:"LR",nodeSep:140,rankSep:180},hash:"273e521fc8ecb88776ebeada66d26bce21c3c2e5",bounds:{x:0,y:0,width:1297,height:857},nodes:[{id:"@gr1",parent:null,kind:"@group",title:"developer-scope",color:"green",shape:"rectangle",children:["@gr2","@gr3","developer","otherProductLifecycleRoles"],inEdges:[],outEdges:["17brhnu"],level:0,depth:3,tags:[],style:{border:"none",opacity:20},x:8,y:8,width:853,height:841,labelBBox:{x:6,y:0,width:114,height:15}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Devops inner-loop",color:"gray",shape:"rectangle",children:["localbox"],inEdges:["zjg544","6szgsj"],outEdges:["1uo6k6b"],level:0,depth:2,tags:[],style:{border:"none",opacity:30},x:373,y:459,width:448,height:350,labelBBox:{x:6,y:0,width:122,height:15}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Devops outer-loop",color:"gray",shape:"rectangle",children:["edp"],inEdges:["1okgiq5","1wupl5x","1uo6k6b"],outEdges:["17brhnu","6szgsj"],level:0,depth:2,tags:[],style:{border:"none",opacity:30},x:373,y:69,width:448,height:350,labelBBox:{x:6,y:0,width:126,height:15}},{id:"cloud",parent:null,level:0,children:["cloud.application"],inEdges:["17brhnu"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",depth:1,isCustomized:!0,x:905,y:122,width:384,height:265,labelBBox:{x:6,y:0,width:132,height:15}},{id:"cloud.application",parent:"cloud",level:1,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"cloud.application",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:937,y:175,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}},{id:"developer",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["zjg544","1okgiq5"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:63,y:530,width:180,height:100,labelBBox:{x:51,y:37,width:77,height:20}},{id:"otherProductLifecycleRoles",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1wupl5x"],title:"Reviewer, Tester, Auditors, Operators",modelRef:"otherProductLifecycleRoles",shape:"person",color:"green",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"Coworking roles in the outer loop"},tags:[],kind:"actor",x:48,y:215,width:209,height:100,labelBBox:{x:6,y:37,width:197,height:20}},{id:"localbox",parent:"@gr2",level:1,children:["localbox.application"],inEdges:["zjg544","6szgsj"],outEdges:["1uo6k6b"],title:"localbox",modelRef:"localbox",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A local development system"},tags:[],technology:"Linux/Windows/Mac",kind:"system",depth:1,x:405,y:512,width:384,height:265,labelBBox:{x:6,y:0,width:66,height:15}},{id:"localbox.application",parent:"localbox",level:2,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"localbox.application",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:437,y:565,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}},{id:"edp",parent:"@gr3",level:1,children:["edp.application"],inEdges:["1okgiq5","1wupl5x","1uo6k6b"],outEdges:["17brhnu","6szgsj"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"magenta",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",depth:1,navigateTo:"edp",x:405,y:122,width:384,height:265,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edp.application",parent:"edp",level:2,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"edp.application",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:437,y:175,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}}],edges:[{id:"zjg544",source:"developer",target:"localbox",label:"inner loop",points:[[242,595],[286,602],[341,612],[395,621]],labelBBox:{x:257,y:608,width:65,height:18},parent:"@gr1",relations:["5hkplj"],color:"gray",line:"dashed",head:"normal"},{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[224,530],[276,493],[349,441],[416,393]],labelBBox:{x:257,y:458,width:66,height:18},parent:"@gr1",relations:["1pp73vj","nb1ag9","14tsadm","129xciy","1l7h8as","dol85h","65iq0s","u2ppde","1dgd663","1k2mvqc"],color:"gray",line:"dashed",head:"normal"},{id:"1wupl5x",source:"otherProductLifecycleRoles",target:"edp",label:"review / operate",points:[[257,265],[298,265],[347,265],[395,265]],labelBBox:{x:332,y:265,width:104,height:18},parent:"@gr1",relations:["lb4xas"],color:"gray",line:"dashed",head:"normal"},{id:"1uo6k6b",source:"localbox",target:"edp",label:"sync",points:[[597,512],[597,474],[597,436],[597,397]],labelBBox:{x:563,y:449,width:33,height:18},parent:"@gr1",relations:["1mp9fps"],color:"gray",line:"dashed",head:"normal"},{id:"17brhnu",source:"edp",target:"cloud",label:"deploy & observe",points:[[789,265],[824,265],[860,265],[895,265]],labelBBox:{x:848,y:253,width:112,height:18},parent:null,relations:["gerdx4"],color:"gray",line:"dashed",head:"normal"},{id:"6szgsj",source:"edp",target:"localbox",label:null,points:[[597,387],[597,425],[597,463],[597,502]],labelBBox:null,parent:"@gr1",relations:["96ogr7"],color:"gray",line:"dashed",head:"normal"}]},"edgeconnect-context":{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/edgeconnect-context.c4",description:null,title:"EdgeConnect Context",id:"edgeconnect-context",autoLayout:{direction:"LR",nodeSep:140,rankSep:180},hash:"0da428d75abcb0d77c2e60e7bb97a2c635e491fb",bounds:{x:0,y:0,width:2626,height:1201},nodes:[{id:"developer",parent:null,level:0,children:[],inEdges:[],outEdges:["1okgiq5","1yfrmvt","1yfr9mr","162qbqw"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:0,y:293,width:180,height:100,labelBBox:{x:52,y:37,width:77,height:20}},{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["vyep7i"],title:"Platform / Cloud Operator",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"The EDP engineer"},tags:[],kind:"actor",isCustomized:!0,x:1087,y:1101,width:198,height:100,labelBBox:{x:6,y:37,width:186,height:20}},{id:"edp",parent:null,level:0,children:[],inEdges:["1okgiq5"],outEdges:["1ivh6bj"],title:"EDP / CI Automation",modelRef:"edp",shape:"rectangle",color:"magenta",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",isCustomized:!0,navigateTo:"edp",x:429,y:623,width:346,height:180,labelBBox:{x:45,y:53,width:285,height:67}},{id:"edgeCli",parent:null,level:0,children:[],inEdges:["1yfrmvt"],outEdges:["1vb6n5w"],title:"EdgeConnect CLI",modelRef:"edgeCli",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Command-line client for interactive usage"},tags:[],kind:"component",x:442,y:0,width:320,height:180,labelBBox:{x:20,y:63,width:280,height:48}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1yfr9mr"],outEdges:["1tutg7y"],title:"EdgeConnect SDK",modelRef:"edgeSdk",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"SDK for programmatic integration"},tags:[],kind:"component",x:442,y:943,width:320,height:180,labelBBox:{x:46,y:63,width:227,height:48}},{id:"edgeTerraformProvider",parent:null,level:0,children:[],inEdges:["162qbqw","1ivh6bj"],outEdges:["1vakg11"],title:"Terraform Edge provider",modelRef:"edgeTerraformProvider",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Terraform provider enabling declarative provisioning"},tags:[],kind:"component",x:1026,y:478,width:320,height:180,labelBBox:{x:28,y:54,width:266,height:66}},{id:"edgeConnect",parent:null,level:0,children:["edgeConnect.api","edgeConnect.controllers","edgeConnect.resources","edgeConnect.runtime"],inEdges:["vyep7i","1vb6n5w","1tutg7y","1vakg11"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"edgeConnect",shape:"rectangle",color:"magenta",style:{opacity:15,size:"md"},description:{txt:"Provides an API and control plane to run applications on the edge"},tags:[],kind:"system",depth:1,x:1577,y:233,width:1041,height:651,labelBBox:{x:6,y:0,width:132,height:15}},{id:"edgeConnect.api",parent:"edgeConnect",level:1,children:[],inEdges:["1vb6n5w","1tutg7y","1vakg11"],outEdges:["17py4dn"],title:"Edge Cloud API",modelRef:"edgeConnect.api",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single entry point for provisioning and lifecycle management"},tags:[],kind:"container",x:1617,y:614,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edgeConnect.controllers",parent:"edgeConnect",level:1,children:[],inEdges:[],outEdges:["1fx2ku4","16qtg61"],title:"Controllers / Scheduler",modelRef:"edgeConnect.controllers",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Reconciles desired state and drives deployments"},tags:[],kind:"container",x:1617,y:294,width:320,height:180,labelBBox:{x:40,y:54,width:241,height:66}},{id:"edgeConnect.resources",parent:"edgeConnect",level:1,children:[],inEdges:["17py4dn","1fx2ku4"],outEdges:[],title:"Edge Resources",modelRef:"edgeConnect.resources",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Managed resources such as App, AppInstance, etc."},tags:[],kind:"container",x:2223,y:614,width:355,height:180,labelBBox:{x:18,y:54,width:319,height:66}},{id:"edgeConnect.runtime",parent:"edgeConnect",level:1,children:[],inEdges:["16qtg61"],outEdges:[],title:"Edge Clusters",modelRef:"edgeConnect.runtime",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Runtime where applications actually run"},tags:[],kind:"container",x:2241,y:294,width:320,height:180,labelBBox:{x:25,y:63,width:269,height:48}}],edges:[{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[160,393],[239,450],[370,545],[469,617]],labelBBox:{x:271,y:450,width:66,height:18},parent:null,relations:["1pp73vj","nb1ag9","14tsadm","129xciy","1l7h8as","dol85h","65iq0s","u2ppde","1dgd663","1k2mvqc"],color:"gray",line:"dashed",head:"normal"},{id:"1yfrmvt",source:"developer",target:"edgeCli",label:"uses",points:[[180,298],[208,284],[241,268],[270,253],[323,227],[381,198],[433,172]],labelBBox:{x:287,y:198,width:34,height:18},parent:null,relations:["3rnruw"],color:"gray",line:"dashed",head:"normal"},{id:"1yfr9mr",source:"developer",target:"edgeSdk",label:"uses",points:[[117,393],[169,490],[293,711],[428,873],[446,895],[467,916],[488,936]],labelBBox:{x:287,y:641,width:34,height:18},parent:null,relations:["1ks7amr"],color:"gray",line:"dashed",head:"normal"},{id:"162qbqw",source:"developer",target:"edgeTerraformProvider",label:"uses",points:[[180,361],[362,399],[781,485],[1017,533]],labelBBox:{x:585,y:392,width:34,height:18},parent:null,relations:["1l0aei7"],color:"gray",line:"dashed",head:"normal"},{id:"1ivh6bj",source:"edp",target:"edgeTerraformProvider",label:"automates",points:[[775,670],[851,651],[941,629],[1016,610]],labelBBox:{x:866,y:609,width:69,height:18},parent:null,relations:["1t93kj2"],color:"gray",line:"dashed",head:"normal"},{id:"1vb6n5w",source:"edgeCli",target:"edgeConnect.api",label:"calls",points:[[761,147],[915,205],[1152,301],[1346,408],[1454,467],[1568,546],[1651,608]],labelBBox:{x:1170,y:235,width:32,height:18},parent:null,relations:["h84u7y"],color:"gray",line:"dashed",head:"normal"},{id:"1tutg7y",source:"edgeSdk",target:"edgeConnect.api",label:"calls",points:[[762,988],[983,926],[1381,815],[1607,751]],labelBBox:{x:1170,y:802,width:32,height:18},parent:null,relations:["1elpzvp"],color:"gray",line:"dashed",head:"normal"},{id:"1vakg11",source:"edgeTerraformProvider",target:"edgeConnect.api",label:"provisions via",points:[[1346,605],[1427,623],[1525,646],[1607,665]],labelBBox:{x:1437,y:605,width:89,height:18},parent:null,relations:["6h5xnh"],color:"gray",line:"dashed",head:"normal"},{id:"17py4dn",source:"edgeConnect.api",target:"edgeConnect.resources",label:"creates/updates",points:[[1937,713],[1967,715],[1998,716],[2027,717],[2088,718],[2153,717],[2213,715]],labelBBox:{x:2028,y:694,width:104,height:18},parent:"edgeConnect",relations:["wx4vwc"],color:"gray",line:"dashed",head:"normal"},{id:"1fx2ku4",source:"edgeConnect.controllers",target:"edgeConnect.resources",label:"reconciles",points:[[1937,466],[2022,510],[2127,564],[2216,609]],labelBBox:{x:2047,y:492,width:67,height:18},parent:"edgeConnect",relations:["qufboq"],color:"gray",line:"dashed",head:"normal"},{id:"16qtg61",source:"edgeConnect.controllers",target:"edgeConnect.runtime",label:"deploys",points:[[1937,384],[2027,384],[2139,384],[2230,384]],labelBBox:{x:2054,y:361,width:52,height:18},parent:"edgeConnect",relations:["1a9x5zg"],color:"gray",line:"dashed",head:"normal"},{id:"vyep7i",source:"platformdeveloper",target:"edgeConnect",label:"operates",points:[[1270,1101],[1341,1058],[1443,992],[1527,927],[1542,915],[1557,903],[1573,891]],labelBBox:{x:1370,y:998,width:58,height:18},parent:null,relations:["4pplfw"],color:"gray",line:"dashed",head:"normal"}]},landscape:{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/platform-context/developer-landscape.c4",description:null,title:"Developer Landscape View",id:"landscape",autoLayout:{direction:"LR",nodeSep:100,rankSep:100},hash:"016ebe718df8662e4a7a83850675b97996c4897a",bounds:{x:0,y:0,width:3342,height:2929},nodes:[{id:"applicationspecification",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"application-specification",modelRef:"applicationspecification",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"The application specification describes the application and its components. It is used to generate the application and its components."},tags:[],kind:"component",x:0,y:280,width:338,height:180,labelBBox:{x:18,y:45,width:303,height:84}},{id:"forgejoRunnerWorker",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Forgejo Runner Worker",modelRef:"forgejoRunnerWorker",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A worker is a service that runs a job invoked by a runner. A worker typically is a container."},tags:[],kind:"component",x:702,y:280,width:333,height:180,labelBBox:{x:19,y:45,width:297,height:84}},{id:"promtail",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Promtail",modelRef:"promtail",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Log shipper agent for Loki"},tags:[],kind:"component",x:1257,y:280,width:320,height:180,labelBBox:{x:71,y:63,width:177,height:48}},{id:"elasticsearch",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Elasticsearch",modelRef:"elasticsearch",shape:"rectangle",color:"primary",icon:"tech:elasticsearch",style:{opacity:20,size:"md"},description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of +and security scanning`},tags:[],technology:"Golang",kind:"container",navigateTo:"forgejo",x:478,y:332,width:340,height:180,labelBBox:{x:46,y:17,width:278,height:139}},{id:"edp.keycloak",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Keycloak",modelRef:"edp.keycloak",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single Sign On for all EDP products"},tags:[],kind:"container",navigateTo:"keycloak",x:928,y:332,width:320,height:180,labelBBox:{x:39,y:63,width:242,height:48}},{id:"edp.monitoring",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Monitoring",modelRef:"edp.monitoring",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Observability system to monitor deployed components"},tags:[],kind:"container",navigateTo:"monitoring",x:928,y:633,width:320,height:180,labelBBox:{x:21,y:54,width:278,height:66}}],edges:[{id:"1dvclx1",source:"idpbuilder",target:"edp.argoCD",label:"installs",points:[[369,180],[339,224],[303,278],[273,324]],labelBBox:{x:326,y:240,width:47,height:18},parent:null,relations:["8fwa3r"],color:"gray",line:"dashed",head:"normal"},{id:"hjkafp",source:"idpbuilder",target:"edp.forgejo",label:"installs",points:[[487,180],[517,224],[553,278],[583,324]],labelBBox:{x:539,y:240,width:47,height:18},parent:null,relations:["1ai9t9i"],color:"gray",line:"dashed",head:"normal"}]},"application-transition":{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/application-transition.c4",description:null,title:"application-transistion",id:"application-transition",autoLayout:{direction:"LR",nodeSep:140,rankSep:180},hash:"273e521fc8ecb88776ebeada66d26bce21c3c2e5",bounds:{x:0,y:0,width:1297,height:857},nodes:[{id:"@gr1",parent:null,kind:"@group",title:"developer-scope",color:"green",shape:"rectangle",children:["@gr2","@gr3","developer","otherProductLifecycleRoles"],inEdges:[],outEdges:["17brhnu"],level:0,depth:3,tags:[],style:{border:"none",opacity:20},x:8,y:8,width:853,height:841,labelBBox:{x:6,y:0,width:114,height:15}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Devops inner-loop",color:"gray",shape:"rectangle",children:["localbox"],inEdges:["zjg544","6szgsj"],outEdges:["1uo6k6b"],level:0,depth:2,tags:[],style:{border:"none",opacity:30},x:373,y:459,width:448,height:350,labelBBox:{x:6,y:0,width:122,height:15}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Devops outer-loop",color:"gray",shape:"rectangle",children:["edp"],inEdges:["1okgiq5","1wupl5x","1uo6k6b"],outEdges:["17brhnu","6szgsj"],level:0,depth:2,tags:[],style:{border:"none",opacity:30},x:373,y:69,width:448,height:350,labelBBox:{x:6,y:0,width:126,height:15}},{id:"cloud",parent:null,level:0,children:["cloud.application"],inEdges:["17brhnu"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",depth:1,isCustomized:!0,x:905,y:122,width:384,height:265,labelBBox:{x:6,y:0,width:132,height:15}},{id:"cloud.application",parent:"cloud",level:1,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"cloud.application",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:937,y:175,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}},{id:"developer",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["zjg544","1okgiq5"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:63,y:530,width:180,height:100,labelBBox:{x:51,y:37,width:77,height:20}},{id:"otherProductLifecycleRoles",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1wupl5x"],title:"Reviewer, Tester, Auditors, Operators",modelRef:"otherProductLifecycleRoles",shape:"person",color:"green",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"Coworking roles in the outer loop"},tags:[],kind:"actor",x:48,y:215,width:209,height:100,labelBBox:{x:6,y:37,width:197,height:20}},{id:"localbox",parent:"@gr2",level:1,children:["localbox.application"],inEdges:["zjg544","6szgsj"],outEdges:["1uo6k6b"],title:"localbox",modelRef:"localbox",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A local development system"},tags:[],technology:"Linux/Windows/Mac",kind:"system",depth:1,x:405,y:512,width:384,height:265,labelBBox:{x:6,y:0,width:66,height:15}},{id:"localbox.application",parent:"localbox",level:2,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"localbox.application",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:437,y:565,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}},{id:"edp",parent:"@gr3",level:1,children:["edp.application"],inEdges:["1okgiq5","1wupl5x","1uo6k6b"],outEdges:["17brhnu","6szgsj"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"magenta",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",depth:1,navigateTo:"edp",x:405,y:122,width:384,height:265,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edp.application",parent:"edp",level:2,children:[],inEdges:[],outEdges:[],title:"application",modelRef:"edp.application",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"An application description"},tags:[],technology:"DSL",kind:"schema",x:437,y:175,width:320,height:180,labelBBox:{x:73,y:53,width:175,height:67}}],edges:[{id:"zjg544",source:"developer",target:"localbox",label:"inner loop",points:[[242,595],[286,602],[341,612],[395,621]],labelBBox:{x:257,y:608,width:65,height:18},parent:"@gr1",relations:["5hkplj"],color:"gray",line:"dashed",head:"normal"},{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[224,530],[276,493],[349,441],[416,393]],labelBBox:{x:257,y:458,width:66,height:18},parent:"@gr1",relations:["1pp73vj","nb1ag9","14tsadm","129xciy","1l7h8as","dol85h","65iq0s","u2ppde","1dgd663","1k2mvqc","vxxbwa"],color:"gray",line:"dashed",head:"normal"},{id:"1wupl5x",source:"otherProductLifecycleRoles",target:"edp",label:"review / operate",points:[[257,265],[298,265],[347,265],[395,265]],labelBBox:{x:332,y:265,width:104,height:18},parent:"@gr1",relations:["lb4xas"],color:"gray",line:"dashed",head:"normal"},{id:"1uo6k6b",source:"localbox",target:"edp",label:"sync",points:[[597,512],[597,474],[597,436],[597,397]],labelBBox:{x:563,y:449,width:33,height:18},parent:"@gr1",relations:["1mp9fps"],color:"gray",line:"dashed",head:"normal"},{id:"17brhnu",source:"edp",target:"cloud",label:"deploy & observe",points:[[789,265],[824,265],[860,265],[895,265]],labelBBox:{x:848,y:253,width:112,height:18},parent:null,relations:["gerdx4"],color:"gray",line:"dashed",head:"normal"},{id:"6szgsj",source:"edp",target:"localbox",label:null,points:[[597,387],[597,425],[597,463],[597,502]],labelBBox:null,parent:"@gr1",relations:["96ogr7"],color:"gray",line:"dashed",head:"normal"}]},"edgeconnect-context":{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/edgeconnect-context.c4",description:null,title:"EdgeConnect Context",id:"edgeconnect-context",autoLayout:{direction:"LR",nodeSep:140,rankSep:180},hash:"0da428d75abcb0d77c2e60e7bb97a2c635e491fb",bounds:{x:0,y:0,width:2626,height:1201},nodes:[{id:"developer",parent:null,level:0,children:[],inEdges:[],outEdges:["1okgiq5","1yfrmvt","1yfr9mr","162qbqw"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:0,y:293,width:180,height:100,labelBBox:{x:52,y:37,width:77,height:20}},{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["vyep7i"],title:"Platform / Cloud Operator",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"xs",textSize:"sm"},description:{txt:"The EDP engineer"},tags:[],kind:"actor",isCustomized:!0,x:1087,y:1101,width:198,height:100,labelBBox:{x:6,y:37,width:186,height:20}},{id:"edp",parent:null,level:0,children:[],inEdges:["1okgiq5"],outEdges:["1ivh6bj"],title:"EDP / CI Automation",modelRef:"edp",shape:"rectangle",color:"magenta",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",isCustomized:!0,navigateTo:"edp",x:429,y:623,width:346,height:180,labelBBox:{x:45,y:53,width:285,height:67}},{id:"edgeCli",parent:null,level:0,children:[],inEdges:["1yfrmvt"],outEdges:["1vb6n5w"],title:"EdgeConnect CLI",modelRef:"edgeCli",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Command-line client for interactive usage"},tags:[],kind:"component",x:442,y:0,width:320,height:180,labelBBox:{x:20,y:63,width:280,height:48}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1yfr9mr"],outEdges:["1tutg7y"],title:"EdgeConnect SDK",modelRef:"edgeSdk",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"SDK for programmatic integration"},tags:[],kind:"component",x:442,y:943,width:320,height:180,labelBBox:{x:46,y:63,width:227,height:48}},{id:"edgeTerraformProvider",parent:null,level:0,children:[],inEdges:["162qbqw","1ivh6bj"],outEdges:["1vakg11"],title:"Terraform Edge provider",modelRef:"edgeTerraformProvider",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Terraform provider enabling declarative provisioning"},tags:[],kind:"component",x:1026,y:478,width:320,height:180,labelBBox:{x:28,y:54,width:266,height:66}},{id:"edgeConnect",parent:null,level:0,children:["edgeConnect.api","edgeConnect.controllers","edgeConnect.resources","edgeConnect.runtime"],inEdges:["vyep7i","1vb6n5w","1tutg7y","1vakg11"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"edgeConnect",shape:"rectangle",color:"magenta",style:{opacity:15,size:"md"},description:{txt:"Provides an API and control plane to run applications on the edge"},tags:[],kind:"system",depth:1,x:1577,y:233,width:1041,height:651,labelBBox:{x:6,y:0,width:132,height:15}},{id:"edgeConnect.api",parent:"edgeConnect",level:1,children:[],inEdges:["1vb6n5w","1tutg7y","1vakg11"],outEdges:["17py4dn"],title:"Edge Cloud API",modelRef:"edgeConnect.api",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Single entry point for provisioning and lifecycle management"},tags:[],kind:"container",x:1617,y:614,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:66}},{id:"edgeConnect.controllers",parent:"edgeConnect",level:1,children:[],inEdges:[],outEdges:["1fx2ku4","16qtg61"],title:"Controllers / Scheduler",modelRef:"edgeConnect.controllers",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Reconciles desired state and drives deployments"},tags:[],kind:"container",x:1617,y:294,width:320,height:180,labelBBox:{x:40,y:54,width:241,height:66}},{id:"edgeConnect.resources",parent:"edgeConnect",level:1,children:[],inEdges:["17py4dn","1fx2ku4"],outEdges:[],title:"Edge Resources",modelRef:"edgeConnect.resources",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Managed resources such as App, AppInstance, etc."},tags:[],kind:"container",x:2223,y:614,width:355,height:180,labelBBox:{x:18,y:54,width:319,height:66}},{id:"edgeConnect.runtime",parent:"edgeConnect",level:1,children:[],inEdges:["16qtg61"],outEdges:[],title:"Edge Clusters",modelRef:"edgeConnect.runtime",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"Runtime where applications actually run"},tags:[],kind:"container",x:2241,y:294,width:320,height:180,labelBBox:{x:25,y:63,width:269,height:48}}],edges:[{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[160,393],[239,450],[370,545],[469,617]],labelBBox:{x:271,y:450,width:66,height:18},parent:null,relations:["1pp73vj","nb1ag9","14tsadm","129xciy","1l7h8as","dol85h","65iq0s","u2ppde","1dgd663","1k2mvqc","vxxbwa"],color:"gray",line:"dashed",head:"normal"},{id:"1yfrmvt",source:"developer",target:"edgeCli",label:"uses",points:[[180,298],[208,284],[241,268],[270,253],[323,227],[381,198],[433,172]],labelBBox:{x:287,y:198,width:34,height:18},parent:null,relations:["3rnruw"],color:"gray",line:"dashed",head:"normal"},{id:"1yfr9mr",source:"developer",target:"edgeSdk",label:"uses",points:[[117,393],[169,490],[293,711],[428,873],[446,895],[467,916],[488,936]],labelBBox:{x:287,y:641,width:34,height:18},parent:null,relations:["1ks7amr"],color:"gray",line:"dashed",head:"normal"},{id:"162qbqw",source:"developer",target:"edgeTerraformProvider",label:"uses",points:[[180,361],[362,399],[781,485],[1017,533]],labelBBox:{x:585,y:392,width:34,height:18},parent:null,relations:["1l0aei7"],color:"gray",line:"dashed",head:"normal"},{id:"1ivh6bj",source:"edp",target:"edgeTerraformProvider",label:"automates",points:[[775,670],[851,651],[941,629],[1016,610]],labelBBox:{x:866,y:609,width:69,height:18},parent:null,relations:["1t93kj2"],color:"gray",line:"dashed",head:"normal"},{id:"1vb6n5w",source:"edgeCli",target:"edgeConnect.api",label:"calls",points:[[761,147],[915,205],[1152,301],[1346,408],[1454,467],[1568,546],[1651,608]],labelBBox:{x:1170,y:235,width:32,height:18},parent:null,relations:["h84u7y"],color:"gray",line:"dashed",head:"normal"},{id:"1tutg7y",source:"edgeSdk",target:"edgeConnect.api",label:"calls",points:[[762,988],[983,926],[1381,815],[1607,751]],labelBBox:{x:1170,y:802,width:32,height:18},parent:null,relations:["1elpzvp"],color:"gray",line:"dashed",head:"normal"},{id:"1vakg11",source:"edgeTerraformProvider",target:"edgeConnect.api",label:"provisions via",points:[[1346,605],[1427,623],[1525,646],[1607,665]],labelBBox:{x:1437,y:605,width:89,height:18},parent:null,relations:["6h5xnh"],color:"gray",line:"dashed",head:"normal"},{id:"17py4dn",source:"edgeConnect.api",target:"edgeConnect.resources",label:"creates/updates",points:[[1937,713],[1967,715],[1998,716],[2027,717],[2088,718],[2153,717],[2213,715]],labelBBox:{x:2028,y:694,width:104,height:18},parent:"edgeConnect",relations:["wx4vwc"],color:"gray",line:"dashed",head:"normal"},{id:"1fx2ku4",source:"edgeConnect.controllers",target:"edgeConnect.resources",label:"reconciles",points:[[1937,466],[2022,510],[2127,564],[2216,609]],labelBBox:{x:2047,y:492,width:67,height:18},parent:"edgeConnect",relations:["qufboq"],color:"gray",line:"dashed",head:"normal"},{id:"16qtg61",source:"edgeConnect.controllers",target:"edgeConnect.runtime",label:"deploys",points:[[1937,384],[2027,384],[2139,384],[2230,384]],labelBBox:{x:2054,y:361,width:52,height:18},parent:"edgeConnect",relations:["1a9x5zg"],color:"gray",line:"dashed",head:"normal"},{id:"vyep7i",source:"platformdeveloper",target:"edgeConnect",label:"operates",points:[[1270,1101],[1341,1058],[1443,992],[1527,927],[1542,915],[1557,903],[1573,891]],labelBBox:{x:1370,y:998,width:58,height:18},parent:null,relations:["4pplfw"],color:"gray",line:"dashed",head:"normal"}]},landscape:{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/platform-context/developer-landscape.c4",description:null,title:"Developer Landscape View",id:"landscape",autoLayout:{direction:"LR",nodeSep:100,rankSep:100},hash:"b38716b0a8652d3a87edbd32cc5d99cc254dbcdc",bounds:{x:0,y:0,width:3368,height:2923},nodes:[{id:"applicationspecification",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"application-specification",modelRef:"applicationspecification",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"The application specification describes the application and its components. It is used to generate the application and its components."},tags:[],kind:"component",x:16,y:280,width:338,height:180,labelBBox:{x:18,y:45,width:303,height:84}},{id:"forgejoRunnerWorker",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Forgejo Runner Worker",modelRef:"forgejoRunnerWorker",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A worker is a service that runs a job invoked by a runner. A worker typically is a container."},tags:[],kind:"component",x:734,y:280,width:333,height:180,labelBBox:{x:18,y:45,width:297,height:84}},{id:"promtail",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Promtail",modelRef:"promtail",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Log shipper agent for Loki"},tags:[],kind:"component",x:1288,y:280,width:320,height:180,labelBBox:{x:72,y:63,width:177,height:48}},{id:"terraform",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Terraform",modelRef:"terraform",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Infrastructure provisioning (IaC)"},tags:[],technology:"Terraform",kind:"component",x:1862,y:280,width:320,height:180,labelBBox:{x:52,y:53,width:214,height:67}},{id:"elasticsearch",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Elasticsearch",modelRef:"elasticsearch",shape:"rectangle",color:"primary",icon:"tech:elasticsearch",style:{opacity:20,size:"md"},description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of addressing a growing number of use cases. It centrally stores your data so you can -discover the expected and uncover the unexpected.`},tags:[],technology:"Elasticsearch",kind:"container",x:1811,y:280,width:370,height:180,labelBBox:{x:46,y:17,width:308,height:139}},{id:"objectstorage",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"s3 Object Storage",modelRef:"objectstorage",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"s3 Object Storage"},tags:[],technology:"S3 Object Storage",kind:"container",x:9,y:0,width:320,height:180,labelBBox:{x:78,y:53,width:164,height:67}},{id:"postgres",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"PostgreSQL",modelRef:"postgres",shape:"rectangle",color:"primary",icon:"tech:postgresql",style:{opacity:20,size:"md"},description:{txt:`PostgreSQL is a powerful, open source object-relational database system. +discover the expected and uncover the unexpected.`},tags:[],technology:"Elasticsearch",kind:"container",x:0,y:0,width:370,height:180,labelBBox:{x:46,y:17,width:308,height:139}},{id:"objectstorage",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"s3 Object Storage",modelRef:"objectstorage",shape:"rectangle",color:"primary",style:{opacity:20,size:"md"},description:{txt:"s3 Object Storage"},tags:[],technology:"S3 Object Storage",kind:"container",x:741,y:0,width:320,height:180,labelBBox:{x:78,y:53,width:164,height:67}},{id:"postgres",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"PostgreSQL",modelRef:"postgres",shape:"rectangle",color:"primary",icon:"tech:postgresql",style:{opacity:20,size:"md"},description:{txt:`PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, -and correctness.`},tags:[],technology:"PostgreSQL",kind:"container",x:692,y:0,width:354,height:180,labelBBox:{x:46,y:17,width:293,height:139}},{id:"redis",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Redis",modelRef:"redis",shape:"rectangle",color:"primary",icon:"tech:redis",style:{opacity:20,size:"md"},description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},tags:[],technology:"Redis",kind:"container",x:1237,y:0,width:359,height:180,labelBBox:{x:46,y:26,width:298,height:121}},{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["mox1r9","1tdgkqn","vyep7i","1kjl8ep","x7to90"],title:"Platform Developer",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"md"},description:{txt:"The EDP engineer"},tags:[],kind:"actor",x:9,y:2361,width:320,height:180,labelBBox:{x:73,y:63,width:175,height:48}},{id:"customers",parent:null,level:0,children:[],inEdges:[],outEdges:["8fboq4"],title:"End Customers",modelRef:"customers",shape:"person",color:"amber",style:{opacity:15,size:"md"},description:{txt:"Consumers of your Application"},tags:[],kind:"actor",x:2431,y:2375,width:320,height:180,labelBBox:{x:56,y:63,width:208,height:48}},{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["5mpoyf"],outEdges:["1lyfj4n"],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:2431,y:1872,width:320,height:180,labelBBox:{x:23,y:36,width:274,height:102}},{id:"edfbuilder",parent:null,level:0,children:[],inEdges:["mox1r9"],outEdges:["lnq8uj"],title:"edfbuilder",modelRef:"edfbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"EDP Foundry Builder"},tags:[],technology:"Golang",kind:"component",navigateTo:"edpbuilderworkflow",x:709,y:2641,width:320,height:180,labelBBox:{x:74,y:53,width:203,height:67}},{id:"idpbuilder",parent:null,level:0,children:[],inEdges:["1tdgkqn"],outEdges:["1v8vv2f"],title:"idpbuilder",modelRef:"idpbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Bootstrap tool for initial platform provisioning"},tags:[],technology:"Golang",kind:"component",x:701,y:2081,width:335,height:180,labelBBox:{x:47,y:44,width:273,height:85}},{id:"documentation",parent:null,level:0,children:[],inEdges:["1kjl8ep"],outEdges:["14bjpe1"],title:"Documentation",modelRef:"documentation",shape:"rectangle",color:"primary",icon:"tech:electron",style:{opacity:15,size:"md"},description:{txt:"Documentation system for EDP LikeC4 platform."},tags:[],technology:"Static Site Generator",kind:"system",navigateTo:"components-template-documentation",x:677,y:2361,width:384,height:180,labelBBox:{x:46,y:44,width:323,height:85}},{id:"edf",parent:null,level:0,children:[],inEdges:["lnq8uj","x7to90"],outEdges:["109bf6k"],title:"EDF",modelRef:"edf",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Foundry is a platform for building and deploying EDPs tenantwise."},tags:[],technology:"Kubernetes",kind:"system",x:1256,y:2651,width:321,height:180,labelBBox:{x:46,y:35,width:260,height:103}},{id:"@gr1",parent:null,kind:"@group",title:"developer-scope",color:"green",shape:"rectangle",children:["developer","otherProductLifecycleRoles","@gr2","@gr3"],inEdges:["1lyfj4n","1v8vv2f","14bjpe1","109bf6k"],outEdges:["1yfrmvt","1yfr9mr","162qbqw","1tbee2v","5mpoyf","1ivh6bj","17brhnu","35ru8e"],level:0,depth:2,tags:[],style:{border:"none",opacity:20},x:1189,y:1431,width:1052,height:746,labelBBox:{x:6,y:0,width:114,height:15}},{id:"developer",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1yfrmvt","1yfr9mr","162qbqw","zjg544","1okgiq5"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"md"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:1257,y:1545,width:320,height:180,labelBBox:{x:53,y:63,width:214,height:48}},{id:"otherProductLifecycleRoles",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1wupl5x"],title:"Reviewer, Tester, Auditors, Operators",modelRef:"otherProductLifecycleRoles",shape:"person",color:"green",style:{opacity:15,size:"md"},description:{txt:"Coworking roles in the outer loop"},tags:[],kind:"actor",x:1229,y:1925,width:375,height:180,labelBBox:{x:18,y:63,width:340,height:48}},{id:"edgeCli",parent:null,level:0,children:[],inEdges:["1yfrmvt"],outEdges:["fyb6c2"],title:"EdgeConnect CLI",modelRef:"edgeCli",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Command-line client for interactive usage"},tags:[],kind:"component",x:1836,y:762,width:320,height:180,labelBBox:{x:20,y:63,width:280,height:48}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1yfr9mr"],outEdges:["1jfbsco"],title:"EdgeConnect SDK",modelRef:"edgeSdk",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"SDK for programmatic integration"},tags:[],kind:"component",x:1836,y:1042,width:320,height:180,labelBBox:{x:46,y:63,width:227,height:48}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Devops inner-loop",color:"gray",shape:"rectangle",children:["localbox"],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:1804,y:1492,width:384,height:265,labelBBox:{x:5,y:0,width:122,height:15}},{id:"localbox",parent:"@gr2",level:1,children:[],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],title:"localbox",modelRef:"localbox",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A local development system"},tags:[],technology:"Linux/Windows/Mac",kind:"system",x:1836,y:1545,width:320,height:180,labelBBox:{x:64,y:53,width:191,height:67}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Devops outer-loop",color:"gray",shape:"rectangle",children:["edp"],inEdges:["1lyfj4n","1v8vv2f","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","1ivh6bj","17brhnu","35ru8e","6szgsj"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:1790,y:1872,width:411,height:265,labelBBox:{x:6,y:0,width:126,height:15}},{id:"edp",parent:"@gr3",level:1,children:[],inEdges:["1lyfj4n","1v8vv2f","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","1ivh6bj","17brhnu","35ru8e","6szgsj"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",navigateTo:"edp",x:1823,y:1925,width:346,height:180,labelBBox:{x:45,y:53,width:285,height:67}},{id:"edgeTerraformProvider",parent:null,level:0,children:[],inEdges:["162qbqw","1ivh6bj"],outEdges:["e75f7"],title:"Terraform Edge provider",modelRef:"edgeTerraformProvider",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Terraform provider enabling declarative provisioning"},tags:[],kind:"component",x:2431,y:1275,width:320,height:180,labelBBox:{x:27,y:54,width:266,height:66}},{id:"enterprise",parent:null,level:0,children:[],inEdges:["1tbee2v","35ru8e"],outEdges:["iwd51q"],title:"Customers' Enterprise Systems",modelRef:"enterprise",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"The customers' enterprise systems"},tags:[],kind:"system",x:2431,y:1592,width:320,height:180,labelBBox:{x:18,y:63,width:283,height:48}},{id:"edgeConnect",parent:null,level:0,children:[],inEdges:["fyb6c2","1jfbsco","e75f7","vyep7i"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"edgeConnect",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Provides an API and control plane to run applications on the edge"},tags:[],kind:"system",x:3022,y:874,width:320,height:180,labelBBox:{x:23,y:54,width:273,height:66}},{id:"cloud",parent:null,level:0,children:[],inEdges:["8fboq4","iwd51q","17brhnu"],outEdges:[],title:"Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",x:3022,y:2085,width:320,height:180,labelBBox:{x:91,y:53,width:137,height:67}}],edges:[{id:"lnq8uj",source:"edfbuilder",target:"edf",label:"boots one",points:[[1029,2734],[1097,2735],[1177,2737],[1246,2738]],labelBBox:{x:1113,y:2712,width:66,height:18},parent:null,relations:["1oxlsu0"],color:"gray",line:"dashed",head:"normal"},{id:"mox1r9",source:"platformdeveloper",target:"edfbuilder",label:"runs",points:[[329,2515],[440,2559],[587,2618],[700,2663]],labelBBox:{x:492,y:2518,width:31,height:18},parent:null,relations:["s1l7g7"],color:"gray",line:"dashed",head:"normal"},{id:"1tdgkqn",source:"platformdeveloper",target:"idpbuilder",label:"runs",points:[[329,2387],[437,2344],[581,2286],[692,2242]],labelBBox:{x:492,y:2246,width:31,height:18},parent:null,relations:["kv3vny"],color:"gray",line:"dashed",head:"normal"},{id:"fyb6c2",source:"edgeCli",target:"edgeConnect",label:"calls",points:[[2155,867],[2378,888],[2783,926],[3012,948]],labelBBox:{x:2575,y:870,width:32,height:18},parent:null,relations:["h84u7y"],color:"gray",line:"dashed",head:"normal"},{id:"1jfbsco",source:"edgeSdk",target:"edgeConnect",label:"calls",points:[[2155,1109],[2378,1078],[2783,1020],[3012,988]],labelBBox:{x:2575,y:1003,width:32,height:18},parent:null,relations:["1elpzvp"],color:"gray",line:"dashed",head:"normal"},{id:"e75f7",source:"edgeTerraformProvider",target:"edgeConnect",label:"provisions via",points:[[2751,1299],[2821,1266],[2904,1223],[2972,1174],[3017,1141],[3061,1099],[3097,1061]],labelBBox:{x:2842,y:1151,width:89,height:18},parent:null,relations:["6h5xnh"],color:"gray",line:"dashed",head:"normal"},{id:"vyep7i",source:"platformdeveloper",target:"edgeConnect",label:"operates",points:[[184,2361],[243,1992],[490,611],[868,611],[868,611],[868,611],[2592,611],[2792,611],[2983,762],[3090,867]],labelBBox:{x:1678,y:588,width:58,height:18},parent:null,relations:["4pplfw"],color:"gray",line:"dashed",head:"normal"},{id:"1kjl8ep",source:"platformdeveloper",target:"documentation",label:"creates and maintains documentation",points:[[329,2451],[429,2451],[560,2451],[667,2451]],labelBBox:{x:390,y:2428,width:237,height:18},parent:null,relations:["3sz3k3"],color:"gray",line:"dashed",head:"normal"},{id:"x7to90",source:"platformdeveloper",target:"edf",label:"develops EDP and EDF",points:[[237,2541],[324,2649],[488,2826],[677,2894],[838,2951],[894,2928],[1062,2894],[1124,2881],[1190,2856],[1247,2830]],labelBBox:{x:794,y:2871,width:152,height:18},parent:null,relations:["v8v12"],color:"gray",line:"dashed",head:"normal"},{id:"8fboq4",source:"customers",target:"cloud",label:"uses your app",points:[[2751,2387],[2832,2347],[2930,2298],[3013,2258]],labelBBox:{x:2841,y:2262,width:92,height:18},parent:null,relations:["1g2ebwc"],color:"gray",line:"dashed",head:"normal"},{id:"iwd51q",source:"enterprise",target:"cloud",label:"app specific dependencies",points:[[2699,1772],[2803,1859],[2960,1990],[3066,2079]],labelBBox:{x:2802,y:1847,width:169,height:18},parent:null,relations:["nc44l9"],color:"gray",line:"dashed",head:"normal"},{id:"1yfrmvt",source:"developer",target:"edgeCli",label:"uses",points:[[1450,1545],[1502,1409],[1617,1151],[1790,992],[1807,977],[1825,962],[1844,948]],labelBBox:{x:1691,y:1011,width:34,height:18},parent:null,relations:["3rnruw"],color:"gray",line:"dashed",head:"normal"},{id:"1yfr9mr",source:"developer",target:"edgeSdk",label:"uses",points:[[1457,1545],[1496,1463],[1564,1344],[1655,1269],[1704,1228],[1768,1198],[1826,1177]],labelBBox:{x:1691,y:1183,width:34,height:18},parent:null,relations:["1ks7amr"],color:"gray",line:"dashed",head:"normal"},{id:"162qbqw",source:"developer",target:"edgeTerraformProvider",label:"uses",points:[[1577,1551],[1641,1520],[1718,1487],[1790,1467],[2003,1407],[2257,1382],[2421,1372]],labelBBox:{x:1979,y:1365,width:34,height:18},parent:null,relations:["1l0aei7"],color:"gray",line:"dashed",head:"normal"},{id:"zjg544",source:"developer",target:"localbox",label:"inner loop",points:[[1577,1635],[1654,1635],[1747,1635],[1825,1635]],labelBBox:{x:1675,y:1612,width:65,height:18},parent:"@gr1",relations:["5hkplj"],color:"gray",line:"dashed",head:"normal"},{id:"1tbee2v",source:"localbox",target:"enterprise",label:"company integration",points:[[2155,1648],[2237,1654],[2337,1662],[2421,1669]],labelBBox:{x:2250,y:1632,width:130,height:18},parent:null,relations:["1abvxlh"],color:"gray",line:"dashed",head:"normal"},{id:"1lyfj4n",source:"forgejoRunner",target:"edp",label:"register",points:[[2431,1976],[2353,1983],[2259,1992],[2179,1999]],labelBBox:{x:2290,y:1958,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"1v8vv2f",source:"idpbuilder",target:"edp",label:"installs",points:[[1037,2205],[1186,2231],[1411,2256],[1605,2225],[1677,2213],[1695,2205],[1760,2173],[1796,2155],[1833,2133],[1866,2111]],labelBBox:{x:1394,y:2202,width:47,height:18},parent:null,relations:["8fwa3r","1ai9t9i","1lc9jrs"],color:"gray",line:"dashed",head:"normal"},{id:"14bjpe1",source:"documentation",target:"edp",label:"provides documentation for",points:[[1061,2438],[1250,2418],[1542,2368],[1760,2240],[1817,2207],[1871,2157],[1913,2113]],labelBBox:{x:1331,y:2294,width:173,height:18},parent:null,relations:["xw0pne"],color:"gray",line:"dashed",head:"normal"},{id:"109bf6k",source:"edf",target:"edp",label:"builds many",points:[[1578,2679],[1641,2648],[1711,2605],[1760,2550],[1875,2423],[1941,2231],[1972,2115]],labelBBox:{x:1668,y:2527,width:79,height:18},parent:null,relations:["wsm3kf"],color:"gray",line:"dashed",head:"normal"},{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[1554,1725],[1643,1783],[1759,1860],[1850,1919]],labelBBox:{x:1675,y:1779,width:66,height:18},parent:"@gr1",relations:["1pp73vj","nb1ag9","14tsadm","129xciy","1l7h8as","dol85h","65iq0s","u2ppde","1dgd663","1k2mvqc"],color:"gray",line:"dashed",head:"normal"},{id:"1wupl5x",source:"otherProductLifecycleRoles",target:"edp",label:"review / operate",points:[[1605,2015],[1671,2015],[1746,2015],[1812,2015]],labelBBox:{x:1656,y:1992,width:104,height:18},parent:"@gr1",relations:["lb4xas"],color:"gray",line:"dashed",head:"normal"},{id:"1uo6k6b",source:"localbox",target:"edp",label:"sync",points:[[1996,1725],[1996,1782],[1996,1856],[1996,1915]],labelBBox:{x:1965,y:1813,width:33,height:18},parent:"@gr1",relations:["1mp9fps"],color:"gray",line:"dashed",head:"normal"},{id:"5mpoyf",source:"edp",target:"forgejoRunner",label:"runs workflows",points:[[2169,2037],[2235,2042],[2312,2043],[2381,2032],[2394,2030],[2407,2027],[2421,2024]],labelBBox:{x:2267,y:2009,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"1ivh6bj",source:"edp",target:"edgeTerraformProvider",label:"automates",points:[[2126,1925],[2170,1887],[2216,1838],[2241,1782],[2257,1747],[2230,1641],[2249,1607],[2287,1536],[2356,1482],[2422,1442]],labelBBox:{x:2280,y:1446,width:69,height:18},parent:null,relations:["1t93kj2"],color:"gray",line:"dashed",head:"normal"},{id:"17brhnu",source:"edp",target:"cloud",label:"deploy & observe",points:[[2169,2066],[2248,2088],[2343,2111],[2431,2125],[2629,2156],[2859,2168],[3012,2172]],labelBBox:{x:2535,y:2102,width:112,height:18},parent:null,relations:["gerdx4"],color:"gray",line:"dashed",head:"normal"},{id:"35ru8e",source:"edp",target:"enterprise",label:"integrates",points:[[2157,1925],[2239,1879],[2339,1823],[2422,1776]],labelBBox:{x:2282,y:1778,width:65,height:18},parent:null,relations:["615gvx"],color:"gray",line:"dashed",head:"normal"},{id:"6szgsj",source:"edp",target:"localbox",label:null,points:[[1996,1925],[1996,1862],[1996,1798],[1996,1735]],labelBBox:null,parent:"@gr1",relations:["96ogr7"],color:"gray",line:"dashed",head:"normal"}]},"developer-landscape-with-foundry":{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/platform-context/developer-landscape-with-foundry.c4",description:null,title:"Developer Landscape View (with Foundry)",id:"developer-landscape-with-foundry",autoLayout:{direction:"LR",nodeSep:100,rankSep:100},hash:"9cfee7c31f151d6985565746f441fff327a6fc6d",bounds:{x:0,y:0,width:4387,height:3750},nodes:[{id:"applicationspecification",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"application-specification",modelRef:"applicationspecification",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"The application specification describes the application and its components. It is used to generate the application and its components."},tags:[],kind:"component",x:0,y:390,width:520,height:290,labelBBox:{x:49,y:84,width:422,height:113}},{id:"forgejoRunnerWorker",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Forgejo Runner Worker",modelRef:"forgejoRunnerWorker",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"A worker is a service that runs a job invoked by a runner. A worker typically is a container."},tags:[],kind:"component",x:859,y:390,width:520,height:290,labelBBox:{x:52,y:84,width:415,height:113}},{id:"promtail",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Promtail",modelRef:"promtail",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Log shipper agent for Loki"},tags:[],kind:"component",x:1557,y:390,width:520,height:290,labelBBox:{x:137,y:109,width:247,height:63}},{id:"elasticsearch",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Elasticsearch",modelRef:"elasticsearch",shape:"rectangle",color:"primary",icon:"tech:elasticsearch",style:{opacity:20,size:"xl"},description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of +and correctness.`},tags:[],technology:"PostgreSQL",kind:"container",x:1271,y:0,width:354,height:180,labelBBox:{x:46,y:17,width:293,height:139}},{id:"redis",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Redis",modelRef:"redis",shape:"rectangle",color:"primary",icon:"tech:redis",style:{opacity:20,size:"md"},description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},tags:[],technology:"Redis",kind:"container",x:1842,y:0,width:359,height:180,labelBBox:{x:46,y:26,width:297,height:121}},{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["mox1r9","1tdgkqn","vyep7i","1kjl8ep","x7to90"],title:"Platform Developer",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"md"},description:{txt:"The EDP engineer"},tags:[],kind:"actor",x:25,y:1053,width:320,height:180,labelBBox:{x:72,y:63,width:175,height:48}},{id:"customers",parent:null,level:0,children:[],inEdges:[],outEdges:["8fboq4"],title:"End Customers",modelRef:"customers",shape:"person",color:"amber",style:{opacity:15,size:"md"},description:{txt:"Consumers of your Application"},tags:[],kind:"actor",x:2457,y:1866,width:320,height:180,labelBBox:{x:56,y:63,width:208,height:48}},{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["5mpoyf"],outEdges:["1lyfj4n"],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:2457,y:1306,width:320,height:180,labelBBox:{x:23,y:36,width:274,height:102}},{id:"edfbuilder",parent:null,level:0,children:[],inEdges:["mox1r9"],outEdges:["lnq8uj"],title:"edfbuilder",modelRef:"edfbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"EDP Foundry Builder"},tags:[],technology:"Golang",kind:"component",navigateTo:"edpbuilderworkflow",x:741,y:1343,width:320,height:180,labelBBox:{x:74,y:53,width:202,height:67}},{id:"idpbuilder",parent:null,level:0,children:[],inEdges:["1tdgkqn"],outEdges:["1v8vv2f"],title:"idpbuilder",modelRef:"idpbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Bootstrap tool for initial platform provisioning"},tags:[],technology:"Golang",kind:"component",x:733,y:560,width:335,height:180,labelBBox:{x:47,y:44,width:272,height:85}},{id:"documentation",parent:null,level:0,children:[],inEdges:["1kjl8ep"],outEdges:["14bjpe1"],title:"Documentation",modelRef:"documentation",shape:"rectangle",color:"primary",icon:"tech:electron",style:{opacity:15,size:"md"},description:{txt:"Documentation system for EDP LikeC4 platform."},tags:[],technology:"Static Site Generator",kind:"system",navigateTo:"components-template-documentation",x:709,y:840,width:384,height:180,labelBBox:{x:46,y:44,width:322,height:85}},{id:"edf",parent:null,level:0,children:[],inEdges:["lnq8uj","x7to90"],outEdges:["109bf6k"],title:"EDF",modelRef:"edf",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Foundry is a platform for building and deploying EDPs tenantwise."},tags:[],technology:"Kubernetes",kind:"system",x:1287,y:1073,width:321,height:180,labelBBox:{x:47,y:35,width:259,height:103}},{id:"@gr1",parent:null,kind:"@group",title:"developer-scope",color:"green",shape:"rectangle",children:["developer","otherProductLifecycleRoles","@gr2","@gr3"],inEdges:["1lyfj4n","1v8vv2f","14bjpe1","109bf6k"],outEdges:["1yfrmvt","1yfr9mr","162qbqw","1tbee2v","5mpoyf","1ivh6bj","gl7qul","17brhnu","35ru8e"],level:0,depth:2,tags:[],style:{border:"none",opacity:20},x:1221,y:1293,width:1046,height:746,labelBBox:{x:6,y:0,width:114,height:15}},{id:"developer",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1yfrmvt","1yfr9mr","162qbqw","zjg544","1okgiq5"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"md"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:1288,y:1787,width:320,height:180,labelBBox:{x:53,y:63,width:214,height:48}},{id:"otherProductLifecycleRoles",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1wupl5x"],title:"Reviewer, Tester, Auditors, Operators",modelRef:"otherProductLifecycleRoles",shape:"person",color:"green",style:{opacity:15,size:"md"},description:{txt:"Coworking roles in the outer loop"},tags:[],kind:"actor",x:1260,y:1407,width:375,height:180,labelBBox:{x:19,y:63,width:340,height:48}},{id:"edgeCli",parent:null,level:0,children:[],inEdges:["1yfrmvt"],outEdges:["fyb6c2"],title:"EdgeConnect CLI",modelRef:"edgeCli",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Command-line client for interactive usage"},tags:[],kind:"component",x:1862,y:2079,width:320,height:180,labelBBox:{x:20,y:63,width:280,height:48}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1yfr9mr"],outEdges:["1jfbsco"],title:"EdgeConnect SDK",modelRef:"edgeSdk",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"SDK for programmatic integration"},tags:[],kind:"component",x:1862,y:2582,width:320,height:180,labelBBox:{x:46,y:63,width:227,height:48}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Devops inner-loop",color:"gray",shape:"rectangle",children:["localbox"],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:1830,y:1734,width:384,height:265,labelBBox:{x:6,y:0,width:122,height:15}},{id:"localbox",parent:"@gr2",level:1,children:[],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],title:"localbox",modelRef:"localbox",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"A local development system"},tags:[],technology:"Linux/Windows/Mac",kind:"system",x:1862,y:1787,width:320,height:180,labelBBox:{x:64,y:53,width:191,height:67}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Devops outer-loop",color:"gray",shape:"rectangle",children:["edp"],inEdges:["1lyfj4n","1v8vv2f","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","1ivh6bj","gl7qul","17brhnu","35ru8e","6szgsj"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:1816,y:1354,width:411,height:265,labelBBox:{x:6,y:0,width:126,height:15}},{id:"edp",parent:"@gr3",level:1,children:[],inEdges:["1lyfj4n","1v8vv2f","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","1ivh6bj","gl7qul","17brhnu","35ru8e","6szgsj"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",navigateTo:"edp",x:1849,y:1407,width:346,height:180,labelBBox:{x:45,y:53,width:285,height:67}},{id:"edgeTerraformProvider",parent:null,level:0,children:[],inEdges:["162qbqw","1ivh6bj"],outEdges:["e75f7"],title:"Terraform Edge provider",modelRef:"edgeTerraformProvider",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Terraform provider enabling declarative provisioning"},tags:[],kind:"component",x:2457,y:2369,width:320,height:180,labelBBox:{x:27,y:54,width:266,height:66}},{id:"runtimeCluster",parent:null,level:0,children:[],inEdges:["gl7qul"],outEdges:[],title:"Kubernetes Cluster",modelRef:"runtimeCluster",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Target cluster where applications are deployed"},tags:[],technology:"Kubernetes",kind:"system",x:2457,y:1586,width:320,height:180,labelBBox:{x:35,y:44,width:250,height:85}},{id:"enterprise",parent:null,level:0,children:[],inEdges:["1tbee2v","35ru8e"],outEdges:["iwd51q"],title:"Customers' Enterprise Systems",modelRef:"enterprise",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"The customers' enterprise systems"},tags:[],kind:"system",x:2457,y:803,width:320,height:180,labelBBox:{x:18,y:63,width:283,height:48}},{id:"edgeConnect",parent:null,level:0,children:[],inEdges:["fyb6c2","1jfbsco","e75f7","vyep7i"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"edgeConnect",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Provides an API and control plane to run applications on the edge"},tags:[],kind:"system",x:3048,y:2503,width:320,height:180,labelBBox:{x:23,y:54,width:273,height:66}},{id:"cloud",parent:null,level:0,children:[],inEdges:["8fboq4","iwd51q","17brhnu"],outEdges:[],title:"Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",x:3048,y:1016,width:320,height:180,labelBBox:{x:91,y:53,width:137,height:67}}],edges:[{id:"lnq8uj",source:"edfbuilder",target:"edf",label:"boots one",points:[[1061,1349],[1112,1323],[1168,1294],[1221,1268],[1239,1259],[1259,1249],[1278,1240]],labelBBox:{x:1144,y:1253,width:66,height:18},parent:null,relations:["1oxlsu0"],color:"gray",line:"dashed",head:"normal"},{id:"mox1r9",source:"platformdeveloper",target:"edfbuilder",label:"runs",points:[[345,1211],[370,1221],[396,1232],[420,1242],[523,1284],[639,1330],[731,1367]],labelBBox:{x:524,y:1219,width:31,height:18},parent:null,relations:["s1l7g7"],color:"gray",line:"dashed",head:"normal"},{id:"1tdgkqn",source:"platformdeveloper",target:"idpbuilder",label:"runs",points:[[289,1053],[329,1020],[376,982],[420,950],[522,877],[642,802],[736,745]],labelBBox:{x:524,y:773,width:31,height:18},parent:null,relations:["kv3vny"],color:"gray",line:"dashed",head:"normal"},{id:"fyb6c2",source:"edgeCli",target:"edgeConnect",label:"calls",points:[[2181,2183],[2337,2201],[2580,2240],[2777,2319],[2888,2364],[3002,2437],[3084,2497]],labelBBox:{x:2601,y:2205,width:32,height:18},parent:null,relations:["h84u7y"],color:"gray",line:"dashed",head:"normal"},{id:"1jfbsco",source:"edgeSdk",target:"edgeConnect",label:"calls",points:[[2181,2661],[2334,2651],[2571,2636],[2777,2622],[2863,2616],[2959,2610],[3038,2604]],labelBBox:{x:2601,y:2599,width:32,height:18},parent:null,relations:["1elpzvp"],color:"gray",line:"dashed",head:"normal"},{id:"e75f7",source:"edgeTerraformProvider",target:"edgeConnect",label:"provisions via",points:[[2777,2495],[2858,2514],[2956,2536],[3038,2555]],labelBBox:{x:2868,y:2487,width:89,height:18},parent:null,relations:["6h5xnh"],color:"gray",line:"dashed",head:"normal"},{id:"vyep7i",source:"platformdeveloper",target:"edgeConnect",label:"operates",points:[[202,1233],[267,1594],[532,2923],[900,2923],[900,2923],[900,2923],[2618,2923],[2811,2923],[2999,2787],[3109,2690]],labelBBox:{x:1710,y:2900,width:58,height:18},parent:null,relations:["4pplfw"],color:"gray",line:"dashed",head:"normal"},{id:"1kjl8ep",source:"platformdeveloper",target:"documentation",label:"creates and maintains documentation",points:[[345,1091],[370,1083],[396,1074],[420,1067],[511,1039],[613,1010],[699,986]],labelBBox:{x:421,y:975,width:237,height:18},parent:null,relations:["3sz3k3"],color:"gray",line:"dashed",head:"normal"},{id:"x7to90",source:"platformdeveloper",target:"edf",label:"develops EDP and EDF",points:[[345,1146],[583,1149],[1032,1156],[1277,1160]],labelBBox:{x:825,y:1128,width:152,height:18},parent:null,relations:["v8v12"],color:"gray",line:"dashed",head:"normal"},{id:"8fboq4",source:"customers",target:"cloud",label:"uses your app",points:[[2729,1866],[2746,1850],[2763,1833],[2777,1816],[2943,1618],[3088,1348],[3159,1205]],labelBBox:{x:2867,y:1477,width:92,height:18},parent:null,relations:["1g2ebwc"],color:"gray",line:"dashed",head:"normal"},{id:"iwd51q",source:"enterprise",target:"cloud",label:"app specific dependencies",points:[[2777,950],[2845,975],[2925,1004],[2998,1030],[3011,1035],[3025,1040],[3039,1045]],labelBBox:{x:2828,y:947,width:169,height:18},parent:null,relations:["nc44l9"],color:"gray",line:"dashed",head:"normal"},{id:"1yfrmvt",source:"developer",target:"edgeCli",label:"uses",points:[[1608,1958],[1684,1997],[1775,2044],[1852,2083]],labelBBox:{x:1722,y:1982,width:34,height:18},parent:null,relations:["3rnruw"],color:"gray",line:"dashed",head:"normal"},{id:"1yfr9mr",source:"developer",target:"edgeSdk",label:"uses",points:[[1465,1967],[1491,2094],[1555,2328],[1686,2481],[1731,2533],[1794,2574],[1853,2604]],labelBBox:{x:1722,y:2458,width:34,height:18},parent:null,relations:["1ks7amr"],color:"gray",line:"dashed",head:"normal"},{id:"162qbqw",source:"developer",target:"edgeTerraformProvider",label:"uses",points:[[1495,1967],[1554,2073],[1667,2245],[1816,2332],[2012,2445],[2277,2466],[2447,2466]],labelBBox:{x:2005,y:2309,width:34,height:18},parent:null,relations:["1l0aei7"],color:"gray",line:"dashed",head:"normal"},{id:"zjg544",source:"developer",target:"localbox",label:"inner loop",points:[[1608,1877],[1684,1877],[1774,1877],[1851,1877]],labelBBox:{x:1706,y:1854,width:65,height:18},parent:"@gr1",relations:["5hkplj"],color:"gray",line:"dashed",head:"normal"},{id:"1tbee2v",source:"localbox",target:"enterprise",label:"company integration",points:[[2152,1787],[2197,1749],[2242,1700],[2267,1644],[2279,1618],[2267,1412],[2275,1384],[2319,1224],[2358,1191],[2457,1058],[2474,1035],[2494,1012],[2514,990]],labelBBox:{x:2276,y:1105,width:130,height:18},parent:null,relations:["1abvxlh"],color:"gray",line:"dashed",head:"normal"},{id:"1lyfj4n",source:"forgejoRunner",target:"edp",label:"register",points:[[2457,1423],[2379,1436],[2285,1452],[2205,1466]],labelBBox:{x:2316,y:1409,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"1v8vv2f",source:"idpbuilder",target:"edp",label:"installs",points:[[1068,676],[1224,706],[1457,765],[1636,871],[1835,989],[1945,1253],[1992,1397]],labelBBox:{x:1425,y:689,width:47,height:18},parent:null,relations:["8fwa3r","1ai9t9i","1lc9jrs"],color:"gray",line:"dashed",head:"normal"},{id:"14bjpe1",source:"documentation",target:"edp",label:"provides documentation for",points:[[1093,916],[1248,914],[1469,930],[1636,1023],[1792,1110],[1909,1287],[1971,1399]],labelBBox:{x:1362,y:896,width:173,height:18},parent:null,relations:["xw0pne"],color:"gray",line:"dashed",head:"normal"},{id:"109bf6k",source:"edf",target:"edp",label:"builds many",points:[[1609,1252],[1618,1258],[1627,1263],[1636,1268],[1711,1311],[1794,1360],[1863,1402]],labelBBox:{x:1700,y:1275,width:79,height:18},parent:null,relations:["wsm3kf"],color:"gray",line:"dashed",head:"normal"},{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[1584,1787],[1672,1729],[1787,1652],[1877,1593]],labelBBox:{x:1706,y:1630,width:66,height:18},parent:"@gr1",relations:["1pp73vj","nb1ag9","14tsadm","129xciy","1l7h8as","dol85h","65iq0s","u2ppde","1dgd663","1k2mvqc","vxxbwa"],color:"gray",line:"dashed",head:"normal"},{id:"1wupl5x",source:"otherProductLifecycleRoles",target:"edp",label:"review / operate",points:[[1636,1497],[1701,1497],[1774,1497],[1838,1497]],labelBBox:{x:1687,y:1474,width:104,height:18},parent:"@gr1",relations:["lb4xas"],color:"gray",line:"dashed",head:"normal"},{id:"1uo6k6b",source:"localbox",target:"edp",label:"sync",points:[[2022,1787],[2022,1730],[2022,1656],[2022,1597]],labelBBox:{x:1991,y:1675,width:33,height:18},parent:"@gr1",relations:["1mp9fps"],color:"gray",line:"dashed",head:"normal"},{id:"5mpoyf",source:"edp",target:"forgejoRunner",label:"runs workflows",points:[[2195,1517],[2262,1520],[2339,1518],[2407,1502],[2420,1499],[2434,1494],[2447,1489]],labelBBox:{x:2293,y:1479,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"1ivh6bj",source:"edp",target:"edgeTerraformProvider",label:"automates",points:[[2152,1587],[2193,1621],[2236,1663],[2267,1709],[2418,1937],[2316,2060],[2457,2294],[2471,2318],[2489,2341],[2508,2362]],labelBBox:{x:2306,y:1699,width:69,height:18},parent:null,relations:["1t93kj2"],color:"gray",line:"dashed",head:"normal"},{id:"gl7qul",source:"edp",target:"runtimeCluster",label:"deploys",points:[[2195,1549],[2274,1573],[2368,1601],[2447,1625]],labelBBox:{x:2315,y:1550,width:52,height:18},parent:null,relations:["1f6l7ms"],color:"gray",line:"dashed",head:"normal"},{id:"17brhnu",source:"edp",target:"cloud",label:"deploy & observe",points:[[2062,1407],[2103,1327],[2175,1215],[2275,1161],[2515,1032],[2842,1049],[3038,1075]],labelBBox:{x:2561,y:1034,width:112,height:18},parent:null,relations:["gerdx4"],color:"gray",line:"dashed",head:"normal"},{id:"35ru8e",source:"edp",target:"enterprise",label:"integrates",points:[[2050,1407],[2086,1304],[2159,1134],[2275,1030],[2324,987],[2388,956],[2447,935]],labelBBox:{x:2308,y:929,width:65,height:18},parent:null,relations:["615gvx"],color:"gray",line:"dashed",head:"normal"},{id:"6szgsj",source:"edp",target:"localbox",label:null,points:[[2022,1587],[2022,1650],[2022,1714],[2022,1777]],labelBBox:null,parent:"@gr1",relations:["96ogr7"],color:"gray",line:"dashed",head:"normal"}]},"developer-landscape-with-foundry":{_type:"element",tags:null,links:null,_stage:"layouted",sourcePath:"views/high-level-concept/platform-context/developer-landscape-with-foundry.c4",description:null,title:"Developer Landscape View (with Foundry)",id:"developer-landscape-with-foundry",autoLayout:{direction:"LR",nodeSep:100,rankSep:100},hash:"3ba54ee560da6b05535f9deb06b6e39effb810ef",bounds:{x:0,y:0,width:4387,height:3828},nodes:[{id:"applicationspecification",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"application-specification",modelRef:"applicationspecification",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"The application specification describes the application and its components. It is used to generate the application and its components."},tags:[],kind:"component",x:0,y:390,width:520,height:290,labelBBox:{x:49,y:84,width:422,height:113}},{id:"forgejoRunnerWorker",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Forgejo Runner Worker",modelRef:"forgejoRunnerWorker",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"A worker is a service that runs a job invoked by a runner. A worker typically is a container."},tags:[],kind:"component",x:859,y:390,width:520,height:290,labelBBox:{x:52,y:84,width:415,height:113}},{id:"promtail",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Promtail",modelRef:"promtail",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Log shipper agent for Loki"},tags:[],kind:"component",x:1557,y:390,width:520,height:290,labelBBox:{x:137,y:109,width:247,height:63}},{id:"terraform",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Terraform",modelRef:"terraform",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Infrastructure provisioning (IaC)"},tags:[],technology:"Terraform",kind:"component",x:2294,y:390,width:520,height:290,labelBBox:{x:111,y:96,width:298,height:89}},{id:"elasticsearch",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Elasticsearch",modelRef:"elasticsearch",shape:"rectangle",color:"primary",icon:"tech:elasticsearch",style:{opacity:20,size:"xl"},description:{txt:`Elasticsearch is a distributed, RESTful search and analytics engine capable of addressing a growing number of use cases. It centrally stores your data so you can -discover the expected and uncover the unexpected.`},tags:[],technology:"Elasticsearch",kind:"container",x:2294,y:390,width:520,height:290,labelBBox:{x:72,y:46,width:406,height:189}},{id:"objectstorage",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"s3 Object Storage",modelRef:"objectstorage",shape:"rectangle",color:"primary",style:{opacity:20,size:"xl"},description:{txt:"s3 Object Storage"},tags:[],technology:"S3 Object Storage",kind:"container",x:0,y:0,width:520,height:290,labelBBox:{x:146,y:96,width:228,height:89}},{id:"postgres",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"PostgreSQL",modelRef:"postgres",shape:"rectangle",color:"primary",icon:"tech:postgresql",style:{opacity:20,size:"xl"},description:{txt:`PostgreSQL is a powerful, open source object-relational database system. +discover the expected and uncover the unexpected.`},tags:[],technology:"Elasticsearch",kind:"container",x:0,y:0,width:520,height:290,labelBBox:{x:72,y:46,width:406,height:189}},{id:"objectstorage",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"s3 Object Storage",modelRef:"objectstorage",shape:"rectangle",color:"primary",style:{opacity:20,size:"xl"},description:{txt:"s3 Object Storage"},tags:[],technology:"S3 Object Storage",kind:"container",x:859,y:0,width:520,height:290,labelBBox:{x:146,y:96,width:228,height:89}},{id:"postgres",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"PostgreSQL",modelRef:"postgres",shape:"rectangle",color:"primary",icon:"tech:postgresql",style:{opacity:20,size:"xl"},description:{txt:`PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, -and correctness.`},tags:[],technology:"PostgreSQL",kind:"container",x:859,y:0,width:520,height:290,labelBBox:{x:83,y:46,width:384,height:189}},{id:"redis",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Redis",modelRef:"redis",shape:"rectangle",color:"primary",icon:"tech:redis",style:{opacity:20,size:"xl"},description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},tags:[],technology:"Redis",kind:"container",x:1557,y:0,width:520,height:290,labelBBox:{x:80,y:58,width:391,height:165}},{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["mox1r9","1tdgkqn","vyep7i","1kjl8ep","x7to90"],title:"Platform Developer",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"xl"},description:{txt:"The EDP engineer"},tags:[],kind:"actor",x:0,y:2943,width:520,height:290,labelBBox:{x:138,y:109,width:244,height:63}},{id:"customers",parent:null,level:0,children:[],inEdges:[],outEdges:["8fboq4"],title:"End Customers",modelRef:"customers",shape:"person",color:"amber",style:{opacity:15,size:"xl"},description:{txt:"Consumers of your Application"},tags:[],kind:"actor",x:3076,y:3022,width:520,height:290,labelBBox:{x:115,y:109,width:290,height:63}},{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["5mpoyf"],outEdges:["1lyfj4n"],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:3076,y:2409,width:520,height:290,labelBBox:{x:69,y:71,width:382,height:139}},{id:"edfbuilder",parent:null,level:0,children:[],inEdges:["mox1r9"],outEdges:["lnq8uj"],title:"edfbuilder",modelRef:"edfbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"xl"},description:{txt:"EDP Foundry Builder"},tags:[],technology:"Golang",kind:"component",navigateTo:"edpbuilderworkflow",x:859,y:3333,width:520,height:290,labelBBox:{x:145,y:96,width:259,height:89}},{id:"idpbuilder",parent:null,level:0,children:[],inEdges:["1tdgkqn"],outEdges:["1v8vv2f"],title:"idpbuilder",modelRef:"idpbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"xl"},description:{txt:"Bootstrap tool for initial platform provisioning"},tags:[],technology:"Golang",kind:"component",x:859,y:2553,width:520,height:290,labelBBox:{x:96,y:83,width:357,height:115}},{id:"documentation",parent:null,level:0,children:[],inEdges:["1kjl8ep"],outEdges:["14bjpe1"],title:"Documentation",modelRef:"documentation",shape:"rectangle",color:"primary",icon:"tech:electron",style:{opacity:15,size:"xl"},description:{txt:"Documentation system for EDP LikeC4 platform."},tags:[],technology:"Static Site Generator",kind:"system",navigateTo:"components-template-documentation",x:859,y:2943,width:520,height:290,labelBBox:{x:62,y:83,width:426,height:115}},{id:"edf",parent:null,level:0,children:[],inEdges:["lnq8uj","x7to90"],outEdges:["109bf6k"],title:"EDF",modelRef:"edf",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"xl"},description:{txt:"EDP Foundry is a platform for building and deploying EDPs tenantwise."},tags:[],technology:"Kubernetes",kind:"system",x:1557,y:3333,width:520,height:290,labelBBox:{x:106,y:71,width:339,height:139}},{id:"@gr1",parent:null,kind:"@group",title:"developer-scope",color:"green",shape:"rectangle",children:["developer","otherProductLifecycleRoles","@gr2","@gr3"],inEdges:["1lyfj4n","1v8vv2f","14bjpe1","109bf6k"],outEdges:["1yfrmvt","1yfr9mr","162qbqw","1tbee2v","5mpoyf","1ivh6bj","17brhnu","35ru8e"],level:0,depth:2,tags:[],style:{border:"none",opacity:20},x:1506,y:1871,width:1380,height:966,labelBBox:{x:6,y:0,width:114,height:15}},{id:"developer",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1yfrmvt","1yfr9mr","162qbqw","zjg544","1okgiq5"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"xl"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:1557,y:1985,width:520,height:290,labelBBox:{x:111,y:109,width:298,height:63}},{id:"otherProductLifecycleRoles",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1wupl5x"],title:"Reviewer, Tester, Auditors, Operators",modelRef:"otherProductLifecycleRoles",shape:"person",color:"green",style:{opacity:15,size:"xl"},description:{txt:"Coworking roles in the outer loop"},tags:[],kind:"actor",x:1546,y:2475,width:542,height:290,labelBBox:{x:34,y:109,width:474,height:63}},{id:"edgeCli",parent:null,level:0,children:[],inEdges:["1yfrmvt"],outEdges:["fyb6c2"],title:"EdgeConnect CLI",modelRef:"edgeCli",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Command-line client for interactive usage"},tags:[],kind:"component",x:2294,y:982,width:520,height:290,labelBBox:{x:65,y:109,width:390,height:63}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1yfr9mr"],outEdges:["1jfbsco"],title:"EdgeConnect SDK",modelRef:"edgeSdk",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"SDK for programmatic integration"},tags:[],kind:"component",x:2294,y:1372,width:520,height:290,labelBBox:{x:102,y:109,width:316,height:63}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Devops inner-loop",color:"gray",shape:"rectangle",children:["localbox"],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:2262,y:1932,width:584,height:375,labelBBox:{x:6,y:0,width:122,height:15}},{id:"localbox",parent:"@gr2",level:1,children:[],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],title:"localbox",modelRef:"localbox",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"A local development system"},tags:[],technology:"Linux/Windows/Mac",kind:"system",x:2294,y:1985,width:520,height:290,labelBBox:{x:127,y:96,width:265,height:89}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Devops outer-loop",color:"gray",shape:"rectangle",children:["edp"],inEdges:["1lyfj4n","1v8vv2f","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","1ivh6bj","17brhnu","35ru8e","6szgsj"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:2262,y:2422,width:584,height:375,labelBBox:{x:6,y:0,width:126,height:15}},{id:"edp",parent:"@gr3",level:1,children:[],inEdges:["1lyfj4n","1v8vv2f","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","1ivh6bj","17brhnu","35ru8e","6szgsj"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"xl"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",navigateTo:"edp",x:2294,y:2475,width:520,height:290,labelBBox:{x:88,y:96,width:374,height:89}},{id:"edgeTerraformProvider",parent:null,level:0,children:[],inEdges:["162qbqw","1ivh6bj"],outEdges:["e75f7"],title:"Terraform Edge provider",modelRef:"edgeTerraformProvider",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Terraform provider enabling declarative provisioning"},tags:[],kind:"component",x:3076,y:1629,width:520,height:290,labelBBox:{x:75,y:96,width:371,height:89}},{id:"enterprise",parent:null,level:0,children:[],inEdges:["1tbee2v","35ru8e"],outEdges:["iwd51q"],title:"Customers' Enterprise Systems",modelRef:"enterprise",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"The customers' enterprise systems"},tags:[],kind:"system",x:3076,y:2019,width:520,height:290,labelBBox:{x:62,y:109,width:395,height:63}},{id:"edgeConnect",parent:null,level:0,children:[],inEdges:["fyb6c2","1jfbsco","e75f7","vyep7i"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"edgeConnect",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Provides an API and control plane to run applications on the edge"},tags:[],kind:"system",x:3867,y:1150,width:520,height:290,labelBBox:{x:70,y:96,width:381,height:89}},{id:"cloud",parent:null,level:0,children:[],inEdges:["8fboq4","iwd51q","17brhnu"],outEdges:[],title:"Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",x:3867,y:2677,width:520,height:290,labelBBox:{x:165,y:96,width:191,height:89}}],edges:[{id:"lnq8uj",source:"edfbuilder",target:"edf",label:"boots one",points:[[1379,3478],[1434,3478],[1492,3478],[1547,3478]],labelBBox:{x:1430,y:3455,width:66,height:18},parent:null,relations:["1oxlsu0"],color:"gray",line:"dashed",head:"normal"},{id:"mox1r9",source:"platformdeveloper",target:"edfbuilder",label:"runs",points:[[520,3206],[624,3253],[744,3308],[849,3356]],labelBBox:{x:674,y:3213,width:31,height:18},parent:null,relations:["s1l7g7"],color:"gray",line:"dashed",head:"normal"},{id:"1tdgkqn",source:"platformdeveloper",target:"idpbuilder",label:"runs",points:[[520,2970],[624,2923],[744,2868],[849,2820]],labelBBox:{x:674,y:2823,width:31,height:18},parent:null,relations:["kv3vny"],color:"gray",line:"dashed",head:"normal"},{id:"fyb6c2",source:"edgeCli",target:"edgeConnect",label:"calls",points:[[2814,1155],[3102,1185],[3565,1235],[3857,1266]],labelBBox:{x:3320,y:1160,width:32,height:18},parent:null,relations:["h84u7y"],color:"gray",line:"dashed",head:"normal"},{id:"1jfbsco",source:"edgeSdk",target:"edgeConnect",label:"calls",points:[[2814,1480],[3102,1440],[3565,1374],[3857,1333]],labelBBox:{x:3320,y:1347,width:32,height:18},parent:null,relations:["1elpzvp"],color:"gray",line:"dashed",head:"normal"},{id:"e75f7",source:"edgeTerraformProvider",target:"edgeConnect",label:"provisions via",points:[[3596,1643],[3669,1604],[3747,1560],[3817,1516],[3852,1494],[3888,1470],[3923,1446]],labelBBox:{x:3687,y:1493,width:89,height:18},parent:null,relations:["6h5xnh"],color:"gray",line:"dashed",head:"normal"},{id:"vyep7i",source:"platformdeveloper",target:"edgeConnect",label:"operates",points:[[284,2943],[365,2445],[664,831],[1118,831],[1118,831],[1118,831],[3337,831],[3588,831],[3830,1008],[3978,1143]],labelBBox:{x:2162,y:808,width:58,height:18},parent:null,relations:["4pplfw"],color:"gray",line:"dashed",head:"normal"},{id:"1kjl8ep",source:"platformdeveloper",target:"documentation",label:"creates and maintains documentation",points:[[520,3088],[624,3088],[744,3088],[849,3088]],labelBBox:{x:571,y:3065,width:237,height:18},parent:null,relations:["3sz3k3"],color:"gray",line:"dashed",head:"normal"},{id:"x7to90",source:"platformdeveloper",target:"edf",label:"develops EDP and EDF",points:[[352,3233],[454,3381],[636,3602],[859,3696],[1072,3785],[1154,3749],[1379,3696],[1442,3681],[1506,3656],[1565,3628]],labelBBox:{x:1043,y:3673,width:152,height:18},parent:null,relations:["v8v12"],color:"gray",line:"dashed",head:"normal"},{id:"8fboq4",source:"customers",target:"cloud",label:"uses your app",points:[[3596,3054],[3680,3017],[3773,2976],[3858,2939]],labelBBox:{x:3686,y:2940,width:92,height:18},parent:null,relations:["1g2ebwc"],color:"gray",line:"dashed",head:"normal"},{id:"iwd51q",source:"enterprise",target:"cloud",label:"app specific dependencies",points:[[3533,2309],[3554,2326],[3576,2343],[3596,2359],[3720,2460],[3856,2578],[3959,2670]],labelBBox:{x:3647,y:2384,width:169,height:18},parent:null,relations:["nc44l9"],color:"gray",line:"dashed",head:"normal"},{id:"1yfrmvt",source:"developer",target:"edgeCli",label:"uses",points:[[1873,1985],[1943,1813],[2078,1523],[2262,1322],[2276,1307],[2291,1292],[2307,1279]],labelBBox:{x:2174,y:1336,width:34,height:18},parent:null,relations:["3rnruw"],color:"gray",line:"dashed",head:"normal"},{id:"1yfr9mr",source:"developer",target:"edgeSdk",label:"uses",points:[[1903,1985],[1960,1897],[2043,1786],[2138,1709],[2182,1674],[2233,1643],[2285,1618]],labelBBox:{x:2174,y:1617,width:34,height:18},parent:null,relations:["1ks7amr"],color:"gray",line:"dashed",head:"normal"},{id:"162qbqw",source:"developer",target:"edgeTerraformProvider",label:"uses",points:[[2070,1985],[2131,1955],[2197,1927],[2262,1907],[2528,1826],[2846,1794],[3066,1782]],labelBBox:{x:2537,y:1772,width:34,height:18},parent:null,relations:["1l0aei7"],color:"gray",line:"dashed",head:"normal"},{id:"zjg544",source:"developer",target:"localbox",label:"inner loop",points:[[2077,2130],[2144,2130],[2216,2130],[2284,2130]],labelBBox:{x:2158,y:2107,width:65,height:18},parent:"@gr1",relations:["5hkplj"],color:"gray",line:"dashed",head:"normal"},{id:"1tbee2v",source:"localbox",target:"enterprise",label:"company integration",points:[[2814,2141],[2895,2145],[2984,2149],[3066,2152]],labelBBox:{x:2895,y:2122,width:130,height:18},parent:null,relations:["1abvxlh"],color:"gray",line:"dashed",head:"normal"},{id:"1lyfj4n",source:"forgejoRunner",target:"edp",label:"register",points:[[3076,2576],[2995,2583],[2906,2590],[2824,2597]],labelBBox:{x:2935,y:2558,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"1v8vv2f",source:"idpbuilder",target:"edp",label:"installs",points:[[1379,2842],[1420,2860],[1464,2875],[1506,2885],[1758,2943],[1833,2926],[2088,2885],[2185,2869],[2281,2821],[2361,2770]],labelBBox:{x:1794,y:2862,width:47,height:18},parent:null,relations:["8fwa3r","1ai9t9i","1lc9jrs"],color:"gray",line:"dashed",head:"normal"},{id:"14bjpe1",source:"documentation",target:"edp",label:"provides documentation for",points:[[1379,3101],[1621,3102],[1985,3069],[2244,2898],[2299,2862],[2354,2816],[2403,2772]],labelBBox:{x:1731,y:2958,width:173,height:18},parent:null,relations:["xw0pne"],color:"gray",line:"dashed",head:"normal"},{id:"109bf6k",source:"edf",target:"edp",label:"builds many",points:[[2077,3345],[2137,3307],[2196,3261],[2244,3210],[2361,3083],[2447,2902],[2498,2774]],labelBBox:{x:2152,y:3187,width:79,height:18},parent:null,relations:["wsm3kf"],color:"gray",line:"dashed",head:"normal"},{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[2035,2275],[2127,2336],[2234,2407],[2327,2469]],labelBBox:{x:2158,y:2322,width:66,height:18},parent:"@gr1",relations:["1pp73vj","nb1ag9","14tsadm","129xciy","1l7h8as","dol85h","65iq0s","u2ppde","1dgd663","1k2mvqc"],color:"gray",line:"dashed",head:"normal"},{id:"1wupl5x",source:"otherProductLifecycleRoles",target:"edp",label:"review / operate",points:[[2088,2620],[2152,2620],[2220,2620],[2284,2620]],labelBBox:{x:2139,y:2597,width:104,height:18},parent:"@gr1",relations:["lb4xas"],color:"gray",line:"dashed",head:"normal"},{id:"1uo6k6b",source:"localbox",target:"edp",label:"sync",points:[[2554,2275],[2554,2335],[2554,2404],[2554,2465]],labelBBox:{x:2523,y:2363,width:33,height:18},parent:"@gr1",relations:["1mp9fps"],color:"gray",line:"dashed",head:"normal"},{id:"5mpoyf",source:"edp",target:"forgejoRunner",label:"runs workflows",points:[[2814,2646],[2883,2649],[2958,2648],[3026,2639],[3039,2637],[3053,2635],[3066,2632]],labelBBox:{x:2912,y:2616,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"1ivh6bj",source:"edp",target:"edgeTerraformProvider",label:"automates",points:[[2774,2475],[2819,2435],[2860,2386],[2886,2332],[2897,2308],[2882,2120],[2894,2097],[2934,2022],[2999,1960],[3068,1911]],labelBBox:{x:2925,y:1928,width:69,height:18},parent:null,relations:["1t93kj2"],color:"gray",line:"dashed",head:"normal"},{id:"17brhnu",source:"edp",target:"cloud",label:"deploy & observe",points:[[2814,2708],[2897,2733],[2989,2757],[3076,2772],[3339,2816],[3644,2826],[3857,2827]],labelBBox:{x:3280,y:2749,width:112,height:18},parent:null,relations:["gerdx4"],color:"gray",line:"dashed",head:"normal"},{id:"35ru8e",source:"edp",target:"enterprise",label:"integrates",points:[[2803,2475],[2891,2424],[2990,2366],[3078,2314]],labelBBox:{x:2927,y:2328,width:65,height:18},parent:null,relations:["615gvx"],color:"gray",line:"dashed",head:"normal"},{id:"6szgsj",source:"edp",target:"localbox",label:null,points:[[2554,2475],[2554,2412],[2554,2348],[2554,2285]],labelBBox:null,parent:"@gr1",relations:["96ogr7"],color:"gray",line:"dashed",head:"normal"}]}},deployments:{elements:{local:{style:{icon:"tech:kubernetes"},kind:"environment",description:{txt:"Local kind-cluster environment for EDP, typically run by edpbuilder"},technology:"Kind",title:"Local kind-cluster",id:"local"},"otc-edp-per-tenant":{style:{},kind:"cloud",description:{txt:`OTC environment for EDP. EDP is the environment a customer gets from us. +and correctness.`},tags:[],technology:"PostgreSQL",kind:"container",x:1557,y:0,width:520,height:290,labelBBox:{x:83,y:46,width:384,height:189}},{id:"redis",parent:null,level:0,children:[],inEdges:[],outEdges:[],title:"Redis",modelRef:"redis",shape:"rectangle",color:"primary",icon:"tech:redis",style:{opacity:20,size:"xl"},description:{txt:"Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker."},tags:[],technology:"Redis",kind:"container",x:2294,y:0,width:520,height:290,labelBBox:{x:79,y:58,width:392,height:165}},{id:"platformdeveloper",parent:null,level:0,children:[],inEdges:[],outEdges:["mox1r9","1tdgkqn","vyep7i","1kjl8ep","x7to90"],title:"Platform Developer",modelRef:"platformdeveloper",shape:"person",color:"gray",style:{opacity:15,size:"xl"},description:{txt:"The EDP engineer"},tags:[],kind:"actor",x:0,y:1438,width:520,height:290,labelBBox:{x:138,y:109,width:244,height:63}},{id:"customers",parent:null,level:0,children:[],inEdges:[],outEdges:["8fboq4"],title:"End Customers",modelRef:"customers",shape:"person",color:"amber",style:{opacity:15,size:"xl"},description:{txt:"Consumers of your Application"},tags:[],kind:"actor",x:3076,y:2534,width:520,height:290,labelBBox:{x:115,y:109,width:290,height:63}},{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["5mpoyf"],outEdges:["1lyfj4n"],title:"Forgejo Runner",modelRef:"forgejoRunner",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"A runner is a service that runs jobs triggered by Forgejo. A runner can have different technical implementations like a container or a VM."},tags:[],kind:"component",x:3076,y:1754,width:520,height:290,labelBBox:{x:69,y:71,width:382,height:139}},{id:"edfbuilder",parent:null,level:0,children:[],inEdges:["mox1r9"],outEdges:["lnq8uj"],title:"edfbuilder",modelRef:"edfbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"xl"},description:{txt:"EDP Foundry Builder"},tags:[],technology:"Golang",kind:"component",navigateTo:"edpbuilderworkflow",x:859,y:1783,width:520,height:290,labelBBox:{x:145,y:96,width:259,height:89}},{id:"idpbuilder",parent:null,level:0,children:[],inEdges:["1tdgkqn"],outEdges:["1v8vv2f"],title:"idpbuilder",modelRef:"idpbuilder",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"xl"},description:{txt:"Bootstrap tool for initial platform provisioning"},tags:[],technology:"Golang",kind:"component",x:859,y:780,width:520,height:290,labelBBox:{x:96,y:83,width:357,height:115}},{id:"documentation",parent:null,level:0,children:[],inEdges:["1kjl8ep"],outEdges:["14bjpe1"],title:"Documentation",modelRef:"documentation",shape:"rectangle",color:"primary",icon:"tech:electron",style:{opacity:15,size:"xl"},description:{txt:"Documentation system for EDP LikeC4 platform."},tags:[],technology:"Static Site Generator",kind:"system",navigateTo:"components-template-documentation",x:859,y:1170,width:520,height:290,labelBBox:{x:62,y:83,width:426,height:115}},{id:"edf",parent:null,level:0,children:[],inEdges:["lnq8uj","x7to90"],outEdges:["109bf6k"],title:"EDF",modelRef:"edf",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"xl"},description:{txt:"EDP Foundry is a platform for building and deploying EDPs tenantwise."},tags:[],technology:"Kubernetes",kind:"system",x:1557,y:1438,width:520,height:290,labelBBox:{x:106,y:71,width:339,height:139}},{id:"@gr1",parent:null,kind:"@group",title:"developer-scope",color:"green",shape:"rectangle",children:["developer","otherProductLifecycleRoles","@gr2","@gr3"],inEdges:["1lyfj4n","1v8vv2f","14bjpe1","109bf6k"],outEdges:["1yfrmvt","1yfr9mr","162qbqw","1tbee2v","5mpoyf","1ivh6bj","gl7qul","17brhnu","35ru8e"],level:0,depth:2,tags:[],style:{border:"none",opacity:20},x:1506,y:1768,width:1380,height:966,labelBBox:{x:6,y:0,width:114,height:15}},{id:"developer",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1yfrmvt","1yfr9mr","162qbqw","zjg544","1okgiq5"],title:"Developer",modelRef:"developer",shape:"person",color:"green",style:{opacity:15,size:"xl"},description:{txt:"The regular user of the platform"},tags:[],kind:"actor",x:1557,y:2372,width:520,height:290,labelBBox:{x:111,y:109,width:298,height:63}},{id:"otherProductLifecycleRoles",parent:"@gr1",level:1,children:[],inEdges:[],outEdges:["1wupl5x"],title:"Reviewer, Tester, Auditors, Operators",modelRef:"otherProductLifecycleRoles",shape:"person",color:"green",style:{opacity:15,size:"xl"},description:{txt:"Coworking roles in the outer loop"},tags:[],kind:"actor",x:1546,y:1882,width:542,height:290,labelBBox:{x:34,y:109,width:474,height:63}},{id:"edgeCli",parent:null,level:0,children:[],inEdges:["1yfrmvt"],outEdges:["fyb6c2"],title:"EdgeConnect CLI",modelRef:"edgeCli",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Command-line client for interactive usage"},tags:[],kind:"component",x:2294,y:2774,width:520,height:290,labelBBox:{x:65,y:109,width:390,height:63}},{id:"edgeSdk",parent:null,level:0,children:[],inEdges:["1yfr9mr"],outEdges:["1jfbsco"],title:"EdgeConnect SDK",modelRef:"edgeSdk",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"SDK for programmatic integration"},tags:[],kind:"component",x:2294,y:3387,width:520,height:290,labelBBox:{x:102,y:109,width:316,height:63}},{id:"@gr2",parent:"@gr1",kind:"@group",title:"Devops inner-loop",color:"gray",shape:"rectangle",children:["localbox"],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:2262,y:2319,width:584,height:375,labelBBox:{x:6,y:0,width:122,height:15}},{id:"localbox",parent:"@gr2",level:1,children:[],inEdges:["zjg544","6szgsj"],outEdges:["1tbee2v","1uo6k6b"],title:"localbox",modelRef:"localbox",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"A local development system"},tags:[],technology:"Linux/Windows/Mac",kind:"system",x:2294,y:2372,width:520,height:290,labelBBox:{x:127,y:96,width:265,height:89}},{id:"@gr3",parent:"@gr1",kind:"@group",title:"Devops outer-loop",color:"gray",shape:"rectangle",children:["edp"],inEdges:["1lyfj4n","1v8vv2f","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","1ivh6bj","gl7qul","17brhnu","35ru8e","6szgsj"],level:0,depth:1,tags:[],style:{border:"none",opacity:30},x:2262,y:1829,width:584,height:375,labelBBox:{x:6,y:0,width:126,height:15}},{id:"edp",parent:"@gr3",level:1,children:[],inEdges:["1lyfj4n","1v8vv2f","14bjpe1","109bf6k","1okgiq5","1wupl5x","1uo6k6b"],outEdges:["5mpoyf","1ivh6bj","gl7qul","17brhnu","35ru8e","6szgsj"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"primary",icon:"tech:kubernetes",style:{opacity:15,size:"xl"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",navigateTo:"edp",x:2294,y:1882,width:520,height:290,labelBBox:{x:88,y:96,width:374,height:89}},{id:"edgeTerraformProvider",parent:null,level:0,children:[],inEdges:["162qbqw","1ivh6bj"],outEdges:["e75f7"],title:"Terraform Edge provider",modelRef:"edgeTerraformProvider",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Terraform provider enabling declarative provisioning"},tags:[],kind:"component",x:3076,y:3147,width:520,height:290,labelBBox:{x:75,y:96,width:371,height:89}},{id:"runtimeCluster",parent:null,level:0,children:[],inEdges:["gl7qul"],outEdges:[],title:"Kubernetes Cluster",modelRef:"runtimeCluster",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Target cluster where applications are deployed"},tags:[],technology:"Kubernetes",kind:"system",x:3076,y:2144,width:520,height:290,labelBBox:{x:86,y:83,width:348,height:115}},{id:"enterprise",parent:null,level:0,children:[],inEdges:["1tbee2v","35ru8e"],outEdges:["iwd51q"],title:"Customers' Enterprise Systems",modelRef:"enterprise",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"The customers' enterprise systems"},tags:[],kind:"system",x:3076,y:1141,width:520,height:290,labelBBox:{x:62,y:109,width:395,height:63}},{id:"edgeConnect",parent:null,level:0,children:[],inEdges:["fyb6c2","1jfbsco","e75f7","vyep7i"],outEdges:[],title:"EdgeConnect Cloud",modelRef:"edgeConnect",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Provides an API and control plane to run applications on the edge"},tags:[],kind:"system",x:3867,y:3337,width:520,height:290,labelBBox:{x:70,y:96,width:381,height:89}},{id:"cloud",parent:null,level:0,children:[],inEdges:["8fboq4","iwd51q","17brhnu"],outEdges:[],title:"Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"xl"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",x:3867,y:1409,width:520,height:290,labelBBox:{x:165,y:96,width:191,height:89}}],edges:[{id:"lnq8uj",source:"edfbuilder",target:"edf",label:"boots one",points:[[1379,1800],[1434,1772],[1493,1743],[1548,1716]],labelBBox:{x:1430,y:1722,width:66,height:18},parent:null,relations:["1oxlsu0"],color:"gray",line:"dashed",head:"normal"},{id:"mox1r9",source:"platformdeveloper",target:"edfbuilder",label:"runs",points:[[520,1687],[624,1729],[744,1778],[849,1820]],labelBBox:{x:674,y:1691,width:31,height:18},parent:null,relations:["s1l7g7"],color:"gray",line:"dashed",head:"normal"},{id:"1tdgkqn",source:"platformdeveloper",target:"idpbuilder",label:"runs",points:[[447,1438],[564,1347],[720,1226],[859,1120],[877,1106],[897,1091],[916,1076]],labelBBox:{x:674,y:1147,width:31,height:18},parent:null,relations:["kv3vny"],color:"gray",line:"dashed",head:"normal"},{id:"fyb6c2",source:"edgeCli",target:"edgeConnect",label:"calls",points:[[2814,2930],[3030,2948],[3343,2990],[3596,3097],[3730,3153],[3861,3249],[3960,3331]],labelBBox:{x:3320,y:2939,width:32,height:18},parent:null,relations:["h84u7y"],color:"gray",line:"dashed",head:"normal"},{id:"1jfbsco",source:"edgeSdk",target:"edgeConnect",label:"calls",points:[[2814,3529],[3025,3526],[3330,3520],[3596,3510],[3681,3507],[3773,3502],[3857,3498]],labelBBox:{x:3320,y:3487,width:32,height:18},parent:null,relations:["1elpzvp"],color:"gray",line:"dashed",head:"normal"},{id:"e75f7",source:"edgeTerraformProvider",target:"edgeConnect",label:"provisions via",points:[[3596,3354],[3680,3375],[3773,3397],[3857,3417]],labelBBox:{x:3687,y:3347,width:89,height:18},parent:null,relations:["6h5xnh"],color:"gray",line:"dashed",head:"normal"},{id:"vyep7i",source:"platformdeveloper",target:"edgeConnect",label:"operates",points:[[284,1728],[366,2224],[666,3828],[1118,3828],[1118,3828],[1118,3828],[3337,3828],[3545,3828],[3761,3726],[3913,3632]],labelBBox:{x:2162,y:3805,width:58,height:18},parent:null,relations:["4pplfw"],color:"gray",line:"dashed",head:"normal"},{id:"1kjl8ep",source:"platformdeveloper",target:"documentation",label:"creates and maintains documentation",points:[[520,1502],[624,1469],[744,1432],[849,1399]],labelBBox:{x:571,y:1394,width:237,height:18},parent:null,relations:["3sz3k3"],color:"gray",line:"dashed",head:"normal"},{id:"x7to90",source:"platformdeveloper",target:"edf",label:"develops EDP and EDF",points:[[520,1583],[804,1583],[1259,1583],[1547,1583]],labelBBox:{x:1043,y:1560,width:152,height:18},parent:null,relations:["v8v12"],color:"gray",line:"dashed",head:"normal"},{id:"8fboq4",source:"customers",target:"cloud",label:"uses your app",points:[[3546,2534],[3564,2518],[3581,2501],[3596,2484],[3808,2243],[3976,1904],[4062,1708]],labelBBox:{x:3686,y:2177,width:92,height:18},parent:null,relations:["1g2ebwc"],color:"gray",line:"dashed",head:"normal"},{id:"iwd51q",source:"enterprise",target:"cloud",label:"app specific dependencies",points:[[3596,1374],[3680,1402],[3773,1434],[3857,1463]],labelBBox:{x:3647,y:1373,width:169,height:18},parent:null,relations:["nc44l9"],color:"gray",line:"dashed",head:"normal"},{id:"1yfrmvt",source:"developer",target:"edgeCli",label:"uses",points:[[2077,2659],[2145,2696],[2217,2735],[2285,2772]],labelBBox:{x:2174,y:2671,width:34,height:18},parent:null,relations:["3rnruw"],color:"gray",line:"dashed",head:"normal"},{id:"1yfr9mr",source:"developer",target:"edgeSdk",label:"uses",points:[[1849,2662],[1891,2828],[1979,3102],[2138,3286],[2179,3333],[2232,3374],[2285,3408]],labelBBox:{x:2174,y:3263,width:34,height:18},parent:null,relations:["1ks7amr"],color:"gray",line:"dashed",head:"normal"},{id:"162qbqw",source:"developer",target:"edgeTerraformProvider",label:"uses",points:[[1880,2662],[1950,2807],[2079,3026],[2262,3137],[2505,3285],[2836,3312],[3066,3310]],labelBBox:{x:2537,y:3114,width:34,height:18},parent:null,relations:["1l0aei7"],color:"gray",line:"dashed",head:"normal"},{id:"zjg544",source:"developer",target:"localbox",label:"inner loop",points:[[2077,2517],[2144,2517],[2216,2517],[2284,2517]],labelBBox:{x:2158,y:2494,width:65,height:18},parent:"@gr1",relations:["5hkplj"],color:"gray",line:"dashed",head:"normal"},{id:"1tbee2v",source:"localbox",target:"enterprise",label:"company integration",points:[[2775,2372],[2819,2331],[2860,2283],[2886,2229],[2901,2196],[2886,1939],[2894,1904],[2938,1714],[2959,1661],[3076,1506],[3094,1482],[3115,1459],[3137,1438]],labelBBox:{x:2895,y:1558,width:130,height:18},parent:null,relations:["1abvxlh"],color:"gray",line:"dashed",head:"normal"},{id:"1lyfj4n",source:"forgejoRunner",target:"edp",label:"register",points:[[3076,1941],[2995,1955],[2906,1969],[2824,1983]],labelBBox:{x:2935,y:1928,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"1v8vv2f",source:"idpbuilder",target:"edp",label:"installs",points:[[1379,967],[1583,1009],[1869,1087],[2088,1223],[2324,1370],[2453,1683],[2512,1872]],labelBBox:{x:1794,y:974,width:47,height:18},parent:null,relations:["8fwa3r","1ai9t9i","1lc9jrs"],color:"gray",line:"dashed",head:"normal"},{id:"14bjpe1",source:"documentation",target:"edp",label:"provides documentation for",points:[[1379,1278],[1584,1261],[1872,1267],[2088,1388],[2281,1496],[2415,1721],[2488,1873]],labelBBox:{x:1731,y:1248,width:173,height:18},parent:null,relations:["xw0pne"],color:"gray",line:"dashed",head:"normal"},{id:"109bf6k",source:"edf",target:"edp",label:"builds many",points:[[2063,1728],[2072,1733],[2080,1738],[2088,1743],[2160,1786],[2238,1833],[2309,1877]],labelBBox:{x:2152,y:1750,width:79,height:18},parent:null,relations:["wsm3kf"],color:"gray",line:"dashed",head:"normal"},{id:"1okgiq5",source:"developer",target:"edp",label:"outer loop",points:[[2035,2372],[2127,2311],[2234,2240],[2327,2178]],labelBBox:{x:2158,y:2219,width:66,height:18},parent:"@gr1",relations:["1pp73vj","nb1ag9","14tsadm","129xciy","1l7h8as","dol85h","65iq0s","u2ppde","1dgd663","1k2mvqc","vxxbwa"],color:"gray",line:"dashed",head:"normal"},{id:"1wupl5x",source:"otherProductLifecycleRoles",target:"edp",label:"review / operate",points:[[2088,2027],[2152,2027],[2220,2027],[2284,2027]],labelBBox:{x:2139,y:2004,width:104,height:18},parent:"@gr1",relations:["lb4xas"],color:"gray",line:"dashed",head:"normal"},{id:"1uo6k6b",source:"localbox",target:"edp",label:"sync",points:[[2554,2372],[2554,2313],[2554,2243],[2554,2182]],labelBBox:{x:2523,y:2260,width:33,height:18},parent:"@gr1",relations:["1mp9fps"],color:"gray",line:"dashed",head:"normal"},{id:"5mpoyf",source:"edp",target:"forgejoRunner",label:"runs workflows",points:[[2814,2039],[2883,2038],[2958,2032],[3026,2019],[3039,2016],[3053,2013],[3066,2010]],labelBBox:{x:2912,y:1996,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"1ivh6bj",source:"edp",target:"edgeTerraformProvider",label:"automates",points:[[2777,2172],[2818,2208],[2857,2249],[2886,2294],[3077,2594],[2889,2769],[3076,3072],[3091,3096],[3109,3119],[3129,3140]],labelBBox:{x:2925,y:2289,width:69,height:18},parent:null,relations:["1t93kj2"],color:"gray",line:"dashed",head:"normal"},{id:"gl7qul",source:"edp",target:"runtimeCluster",label:"deploys",points:[[2814,2114],[2895,2141],[2985,2171],[3066,2199]],labelBBox:{x:2934,y:2119,width:52,height:18},parent:null,relations:["1f6l7ms"],color:"gray",line:"dashed",head:"normal"},{id:"17brhnu",source:"edp",target:"cloud",label:"deploy & observe",points:[[2630,1882],[2688,1786],[2778,1668],[2894,1609],[3056,1527],[3546,1530],[3857,1541]],labelBBox:{x:3280,y:1512,width:112,height:18},parent:null,relations:["gerdx4"],color:"gray",line:"dashed",head:"normal"},{id:"35ru8e",source:"edp",target:"enterprise",label:"integrates",points:[[2614,1882],[2671,1760],[2766,1589],[2894,1478],[2944,1435],[3006,1399],[3067,1372]],labelBBox:{x:2927,y:1369,width:65,height:18},parent:null,relations:["615gvx"],color:"gray",line:"dashed",head:"normal"},{id:"6szgsj",source:"edp",target:"localbox",label:null,points:[[2554,2172],[2554,2235],[2554,2299],[2554,2362]],labelBBox:null,parent:"@gr1",relations:["96ogr7"],color:"gray",line:"dashed",head:"normal"}]}},deployments:{elements:{local:{style:{icon:"tech:kubernetes"},kind:"environment",description:{txt:"Local kind-cluster environment for EDP, typically run by edpbuilder"},technology:"Kind",title:"Local kind-cluster",id:"local"},"otc-edp-per-tenant":{style:{},kind:"cloud",description:{txt:`OTC environment for EDP. EDP is the environment a customer gets from us. This is kubernetes clusters and other infrastructure like nodes and vms, and platform services. All is set up by IaC-pipelines in the Foundry.`},technology:"OTC",title:"OTC EDP per tenant cluster",id:"otc-edp-per-tenant"},"otc-faas":{style:{},kind:"cloud",description:{txt:"OTC environments for Prototype FaaS."},technology:"OTC",title:"OTC prototype FaaS",id:"otc-faas"},edge:{style:{},kind:"cloud",description:{txt:"Edge environments for distributed workloads."},technology:"Edge",title:"Edge Cloud",id:"edge"},"otc-edpFoundry":{style:{},kind:"cloud",description:{txt:`OTC environments for the central EDP Foundry services. This is kubernetes clusters and other infrastructure like nodes and vms, and optionally platform services. All is set up by IaC terraform and edpbuilder. A tenant is a folder in Foundry-Config-Forgejo. On merge triggers reconciliation to EDP. -Optionally we will have a WebUI/API/CLI`},technology:"OTC",title:"OTC EDP Foundry Central Service clusters",id:"otc-edpFoundry"},edgeProvider:{style:{icon:"tech:terraform"},kind:"paas",description:{txt:"Unlocks the terraform ecosystem"},title:"Terraform Edge provider",id:"edgeProvider"},edgeProviderHost:{style:{},kind:"environment",title:"OTC",id:"edgeProviderHost"},edgeSdk:{style:{icon:"tech:go"},kind:"paas",description:{txt:"Wrapper around API"},technology:"Cloud Services",title:"Edge Cloud SDK",id:"edgeSdk"},edgeCloud:{style:{},kind:"environment",title:"Edge cloud",id:"edgeCloud"},otcTenantProd:{style:{},kind:"environment",title:"Prod - builth.ing",id:"otcTenantProd"},otcTenantNonProd:{style:{},kind:"environment",title:"Non-Prod - t09.de",id:"otcTenantNonProd"},otcKubernetes:{style:{icon:"tech:kubernetes"},kind:"environment",description:{txt:"OTC Container Cluster Engine hosting EDP platform"},technology:"Kubernetes",title:"OTC Kubernetes",id:"otcKubernetes"},edgeConnectEnv:{style:{icon:"tech:docker"},kind:"environment",description:{txt:"Edge infrastructure for ephemeral runner deployment"},technology:"Edge Connect Platform",title:"Edge Connect",id:"edgeConnectEnv"},"local.backstage":{style:{},kind:"namespace",title:"backstage",id:"local.backstage"},"local.argocd":{style:{},kind:"namespace",title:"argocd",id:"local.argocd"},"local.gitea":{style:{},kind:"namespace",title:"gitea",id:"local.gitea"},"local.keycloak":{style:{},kind:"namespace",title:"keycloak",id:"local.keycloak"},"local.crossplane":{style:{},kind:"namespace",title:"crossplane-system",id:"local.crossplane"},"local.externalSecrets":{style:{},kind:"namespace",title:"external-secrets",id:"local.externalSecrets"},"local.velero":{style:{},kind:"namespace",title:"velero",id:"local.velero"},"local.minio":{style:{},kind:"namespace",title:"minio-backup",id:"local.minio"},"local.monitoring":{style:{},kind:"namespace",title:"monitoring",id:"local.monitoring"},"local.ingressNginx":{style:{},kind:"namespace",title:"ingress-nginx",id:"local.ingressNginx"},"local.openbao":{style:{},kind:"namespace",title:"openbao",id:"local.openbao"},"local.fibonacci":{style:{},kind:"namespace",title:"fibonacci-app",id:"local.fibonacci"},"local.mailhog":{style:{},kind:"namespace",title:"mailhog",id:"local.mailhog"},"local.spark":{style:{},kind:"namespace",title:"spark",id:"local.spark"},"otc-edp-per-tenant.cce":{style:{icon:"tech:kubernetes"},kind:"kubernetes",description:{txt:"OTC Container Cluster Engine"},technology:"Kubernetes",title:"OTC CCE",id:"otc-edp-per-tenant.cce"},"otc-edp-per-tenant.cloudServices":{style:{},kind:"paas",description:{txt:"EDP Cloud Services"},technology:"Cloud Services",title:"EDP Cloud Services",id:"otc-edp-per-tenant.cloudServices"},"otc-edp-per-tenant.forgejoRunnerInfrastructure":{style:{},kind:"computeressource",description:{txt:"Infrastructure for Forgejo runners like pods, vms, lxds, etc"},title:"EDP ForgejoRunner infrastructure",id:"otc-edp-per-tenant.forgejoRunnerInfrastructure"},"otc-faas.dev":{style:{},kind:"environment",description:{txt:"*.t09.de"},technology:"OTC",title:"tenant Dev",id:"otc-faas.dev"},"otc-faas.prod":{style:{},kind:"environment",description:{txt:"*.buildth.ing"},technology:"OTC",title:"Tenant Prod",id:"otc-faas.prod"},"edge.edge-dev":{style:{},kind:"environment",description:{txt:"Edge development environment"},technology:"Edge",title:"Edge Dev",id:"edge.edge-dev"},"edge.edge-prod":{style:{},kind:"environment",description:{txt:"Edge production environment"},technology:"Edge",title:"Edge Prod",id:"edge.edge-prod"},"otc-edpFoundry.cce":{style:{icon:"tech:kubernetes"},kind:"kubernetes",description:{txt:"OTC Container Cluster Engine"},technology:"Kubernetes",title:"OTC CCE",id:"otc-edpFoundry.cce"},"otc-edpFoundry.workflowSetupEDPInfrastructure":{style:{},kind:"computeressource",description:{txt:"EDP infrastructure Workflow"},title:"EDP infrastructure Workflow",id:"otc-edpFoundry.workflowSetupEDPInfrastructure"},"otc-edpFoundry.workflowSetupArgoCDInfrastructure":{style:{},kind:"computeressource",description:{txt:"EDP Setup ArgoCD Workflow"},title:"EDP ArgoCD Workflow",id:"otc-edpFoundry.workflowSetupArgoCDInfrastructure"},"otc-edpFoundry.forgejoRunnerInfrastructure":{style:{},kind:"computeressource",description:{txt:"Infrastructure for Forgejo runners like pods, vms, lxds, etc"},title:"EDP ForgejoRunner infrastructure",id:"otc-edpFoundry.forgejoRunnerInfrastructure"},"edgeProviderHost.edp":{style:{icon:"tech:git"},kind:"cluster",title:"Forgejo for all EDP-tenants",id:"edgeProviderHost.edp"},"edgeProviderHost.terralist":{style:{icon:"tech:terraform"},kind:"paas",description:{txt:"Terraform provider private hosting"},technology:"Cloud Services",title:"Terralist",id:"edgeProviderHost.terralist"},"edgeCloud.edgeApi":{style:{icon:"tech:swagger"},kind:"paas",technology:"Edge Cloud (managed)",links:[{url:"https://swagger.edge.platform.mg3.mdb.osc.live",title:"Documentation"}],title:"Edge Cloud API",id:"edgeCloud.edgeApi"},"edgeCloud.edgeResources":{style:{},kind:"paas",description:{txt:"App, AppInstance, etc."},technology:"Edge Cloud (managed)",title:"Edge Cloud Resources",id:"edgeCloud.edgeResources"},"otcTenantProd.otcTenantEdpBuildthing":{style:{icon:"tech:git"},kind:"cluster",description:{txt:"Primary Instance"},title:"edp.builth.ing",id:"otcTenantProd.otcTenantEdpBuildthing"},"otcTenantProd.otcTenantObservability":{style:{icon:"tech:git"},kind:"cluster",description:{txt:"Observability Instance"},title:"observability.builth.ing",id:"otcTenantProd.otcTenantObservability"},"otcTenantProd.otcTenantCustomerA":{style:{icon:"tech:git"},kind:"cluster",description:{txt:"Customer Instance"},title:"customer-a.builth.ing",id:"otcTenantProd.otcTenantCustomerA"},"otcTenantNonProd.otcTenantDev1":{style:{icon:"tech:git"},kind:"cluster",description:{txt:"Development Instance"},title:"dev1.t09.de",id:"otcTenantNonProd.otcTenantDev1"},"otcTenantNonProd.otcTenantTestX":{style:{icon:"tech:git"},kind:"cluster",description:{txt:"Testing Instance"},title:"test-x.t09.de",id:"otcTenantNonProd.otcTenantTestX"},"otcKubernetes.edpCluster":{style:{},kind:"cluster",description:{txt:"EDP platform cluster"},title:"EDP Cluster",id:"otcKubernetes.edpCluster"},"edgeConnectEnv.runnerInfrastructure":{style:{},kind:"computeressource",description:{txt:"Dynamically provisioned runner instances"},title:"Runner Infrastructure",id:"edgeConnectEnv.runnerInfrastructure"},"local.backstage.backstage":{id:"local.backstage.backstage",element:"edp.ui.backstage",style:{}},"local.backstage.database":{id:"local.backstage.database",element:"edp.ui.database",style:{}},"local.argocd.argocdAppController":{id:"local.argocd.argocdAppController",element:"edp.argoCD.argocdAppController",style:{}},"local.argocd.argocdAppSetController":{id:"local.argocd.argocdAppSetController",element:"edp.argoCD.argocdAppSetController",style:{}},"local.argocd.argocdRedis":{id:"local.argocd.argocdRedis",element:"edp.argoCD.argocdRedis",style:{}},"local.argocd.argocdRepoServer":{id:"local.argocd.argocdRepoServer",element:"edp.argoCD.argocdRepoServer",style:{}},"local.argocd.argocdServer":{id:"local.argocd.argocdServer",element:"edp.argoCD.argocdServer",style:{}},"local.gitea.forgejo":{id:"local.gitea.forgejo",element:"edp.forgejo",style:{}},"local.gitea.forgejoRunner":{id:"local.gitea.forgejoRunner",element:"forgejoRunner",style:{}},"local.keycloak.keycloak":{id:"local.keycloak.keycloak",element:"edp.keycloak.keycloak",style:{}},"local.keycloak.keycloakDB":{id:"local.keycloak.keycloakDB",element:"edp.keycloak.keycloakDB",style:{}},"local.crossplane.crossplane":{id:"local.crossplane.crossplane",element:"edp.crossplane.crossplane",style:{}},"local.crossplane.crossplaneFunction":{id:"local.crossplane.crossplaneFunction",element:"edp.crossplane.crossplaneFunction",style:{}},"local.crossplane.crossplaneRbacManager":{id:"local.crossplane.crossplaneRbacManager",element:"edp.crossplane.crossplaneRbacManager",style:{}},"local.crossplane.providerArgoCD":{id:"local.crossplane.providerArgoCD",element:"edp.crossplane.providerArgoCD",style:{}},"local.crossplane.providerKind":{id:"local.crossplane.providerKind",element:"edp.crossplane.providerKind",style:{}},"local.crossplane.providerShell":{id:"local.crossplane.providerShell",element:"edp.crossplane.providerShell",style:{}},"local.externalSecrets.certController":{id:"local.externalSecrets.certController",element:"edp.externalSecrets.certController",style:{}},"local.externalSecrets.externalSecrets":{id:"local.externalSecrets.externalSecrets",element:"edp.externalSecrets.externalSecrets",style:{}},"local.externalSecrets.webhook":{id:"local.externalSecrets.webhook",element:"edp.externalSecrets.webhook",style:{}},"local.velero.velero":{id:"local.velero.velero",element:"edp.velero.velero",style:{}},"local.minio.minio":{id:"local.minio.minio",element:"edp.minio.minio",style:{}},"local.monitoring.alloy":{id:"local.monitoring.alloy",element:"edp.monitoring.alloy",style:{}},"local.monitoring.distributor":{id:"local.monitoring.distributor",element:"edp.monitoring.loki.distributor",style:{}},"local.monitoring.gateway":{id:"local.monitoring.gateway",element:"edp.monitoring.loki.gateway",style:{}},"local.monitoring.ingestor":{id:"local.monitoring.ingestor",element:"edp.monitoring.loki.ingestor",style:{}},"local.monitoring.querier":{id:"local.monitoring.querier",element:"edp.monitoring.loki.querier",style:{}},"local.monitoring.queryFrontend":{id:"local.monitoring.queryFrontend",element:"edp.monitoring.loki.queryFrontend",style:{}},"local.ingressNginx.ingressNginx":{id:"local.ingressNginx.ingressNginx",element:"edp.ingressNginx.ingressNginx",style:{}},"local.openbao.openbao":{id:"local.openbao.openbao",element:"edp.openbao.openbao",style:{}},"local.openbao.agentInjector":{id:"local.openbao.agentInjector",element:"edp.openbao.agentInjector",style:{}},"local.fibonacci.fibonacci":{id:"local.fibonacci.fibonacci",element:"edp.testApp.fibonacci",style:{}},"local.mailhog.mailhog":{id:"local.mailhog.mailhog",element:"edp.mailhog.mailhog",style:{}},"local.spark.sparkoperator":{id:"local.spark.sparkoperator",element:"edp.spark.sparkoperator",style:{}},"otc-edp-per-tenant.cce.edp":{style:{},kind:"cluster",title:"EDP",id:"otc-edp-per-tenant.cce.edp"},"otc-edp-per-tenant.cloudServices.postgres":{id:"otc-edp-per-tenant.cloudServices.postgres",element:"postgres",style:{}},"otc-edp-per-tenant.cloudServices.redis":{id:"otc-edp-per-tenant.cloudServices.redis",element:"redis",style:{}},"otc-edp-per-tenant.cloudServices.objectstorage":{id:"otc-edp-per-tenant.cloudServices.objectstorage",element:"objectstorage",style:{}},"otc-edp-per-tenant.cloudServices.elasticsearch":{id:"otc-edp-per-tenant.cloudServices.elasticsearch",element:"elasticsearch",style:{}},"otc-edp-per-tenant.forgejoRunnerInfrastructure.forgejoRunner":{id:"otc-edp-per-tenant.forgejoRunnerInfrastructure.forgejoRunner",element:"forgejoRunner",style:{}},"otc-faas.dev.cce":{style:{icon:"tech:kubernetes"},kind:"kubernetes",description:{txt:"*.t09.de"},technology:"Kubernetes",title:"Central Forgejo",id:"otc-faas.dev.cce"},"otc-faas.dev.cloudServices":{style:{},kind:"paas",description:{txt:"EDP Cloud Services (Postgres, Redis, etc.)"},technology:"Cloud Services",title:"EDP Cloud Services",id:"otc-faas.dev.cloudServices"},"otc-faas.dev.observability":{style:{icon:"tech:kubernetes"},kind:"kubernetes",description:{txt:"*.t09.de"},technology:"Kubernetes",title:"Observability",id:"otc-faas.dev.observability"},"otc-faas.prod.cce":{style:{icon:"tech:kubernetes"},kind:"kubernetes",description:{txt:"*.buildth.ing"},technology:"Kubernetes",title:"Central Forgejo",id:"otc-faas.prod.cce"},"otc-faas.prod.cloudServices":{style:{},kind:"paas",description:{txt:"EDP Cloud Services (Postgres, Redis, etc.)"},technology:"Cloud Services",title:"EDP Cloud Services",id:"otc-faas.prod.cloudServices"},"otc-faas.prod.observability":{style:{icon:"tech:kubernetes"},kind:"kubernetes",description:{txt:"*.buildth.ing"},technology:"Kubernetes",title:"Observability",id:"otc-faas.prod.observability"},"otc-edpFoundry.cce.internalServices":{style:{},kind:"cluster",title:"EDP Foundry Internal Services",id:"otc-edpFoundry.cce.internalServices"},"otc-edpFoundry.cce.centralObservability":{style:{},kind:"cluster",title:"EDP Foundry Central Observability",id:"otc-edpFoundry.cce.centralObservability"},"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunner":{id:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunner",element:"forgejoRunner",style:{}},"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunnerWorker":{id:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunnerWorker",element:"forgejoRunnerWorker",style:{}},"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow":{id:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow",element:"edpworkflow",style:{}},"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunner":{id:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunner",element:"forgejoRunner",style:{}},"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunnerWorker":{id:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunnerWorker",element:"forgejoRunnerWorker",style:{}},"otc-edpFoundry.workflowSetupArgoCDInfrastructure.edpworkflow":{id:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.edpworkflow",element:"edpworkflow",style:{}},"otc-edpFoundry.forgejoRunnerInfrastructure.forgejoRunner":{id:"otc-edpFoundry.forgejoRunnerInfrastructure.forgejoRunner",element:"forgejoRunner",style:{}},"edgeProviderHost.edp.forgejo":{id:"edgeProviderHost.edp.forgejo",element:"edp.forgejo",title:"Forgejo for all EDP-tenants",description:{txt:"edp.buildth.ing"},style:{}},"otcKubernetes.edpCluster.forgejo":{id:"otcKubernetes.edpCluster.forgejo",element:"edp.forgejo",description:{txt:"Forgejo - Git platform with Actions"},style:{}},"otcKubernetes.edpCluster.forgejoActions":{id:"otcKubernetes.edpCluster.forgejoActions",element:"edp.forgejoActions",description:{txt:"CI/CD orchestration for Forgejo"},style:{}},"otcKubernetes.edpCluster.garmContainer":{id:"otcKubernetes.edpCluster.garmContainer",element:"edp.garm",description:{txt:"GARM container with runner orchestration"},style:{}},"otcKubernetes.edpCluster.edpCluster":{style:{},kind:"environment",technology:"Kubernetes",title:"GARM pod",id:"otcKubernetes.edpCluster.edpCluster"},"edgeConnectEnv.runnerInfrastructure.forgejoRunner":{id:"edgeConnectEnv.runnerInfrastructure.forgejoRunner",element:"forgejoRunner",description:{txt:"Ephemeral Forgejo Actions runner"},style:{}},"otc-edp-per-tenant.cce.edp.argoCD":{id:"otc-edp-per-tenant.cce.edp.argoCD",element:"edp.argoCD",style:{}},"otc-edp-per-tenant.cce.edp.forgejoRunner":{id:"otc-edp-per-tenant.cce.edp.forgejoRunner",element:"forgejoRunner",style:{}},"otc-edp-per-tenant.cce.edp.forgejo":{id:"otc-edp-per-tenant.cce.edp.forgejo",element:"edp.forgejo",style:{}},"otc-edp-per-tenant.cce.edp.externalSecrets":{id:"otc-edp-per-tenant.cce.edp.externalSecrets",element:"edp.externalSecrets",style:{}},"otc-edp-per-tenant.cce.edp.ingressNginx":{id:"otc-edp-per-tenant.cce.edp.ingressNginx",element:"edp.ingressNginx",style:{}},"otc-edp-per-tenant.cce.edp.garm":{id:"otc-edp-per-tenant.cce.edp.garm",element:"edp.garm",style:{}},"otc-faas.dev.cce.edp":{style:{},kind:"cluster",description:{txt:"t09.de"},title:"Forgejo Dev for platform team",id:"otc-faas.dev.cce.edp"},"otc-faas.prod.cce.edp":{style:{},kind:"cluster",title:"Forgejo for all EDP-tenants",id:"otc-faas.prod.cce.edp"},"otc-edpFoundry.cce.internalServices.argoCD":{id:"otc-edpFoundry.cce.internalServices.argoCD",element:"edp.argoCD",style:{}},"otc-edpFoundry.cce.internalServices.forgejo":{id:"otc-edpFoundry.cce.internalServices.forgejo",element:"edp.forgejo",style:{}},"otc-edpFoundry.cce.internalServices.externalSecrets":{id:"otc-edpFoundry.cce.internalServices.externalSecrets",element:"edp.externalSecrets",style:{}},"otc-edpFoundry.cce.internalServices.openbao":{id:"otc-edpFoundry.cce.internalServices.openbao",element:"edp.openbao",style:{}},"otc-edpFoundry.cce.internalServices.ingressNginx":{id:"otc-edpFoundry.cce.internalServices.ingressNginx",element:"edp.ingressNginx",style:{}},"otc-edpFoundry.cce.centralObservability.grafana":{id:"otc-edpFoundry.cce.centralObservability.grafana",element:"edp.grafana",style:{}},"otc-edpFoundry.cce.centralObservability.prometheus":{id:"otc-edpFoundry.cce.centralObservability.prometheus",element:"edp.prometheus",style:{}},"otc-edpFoundry.cce.centralObservability.loki":{id:"otc-edpFoundry.cce.centralObservability.loki",element:"edp.loki",style:{}},"otcKubernetes.edpCluster.edpCluster.garmService":{id:"otcKubernetes.edpCluster.edpCluster.garmService",element:"edp.garm.garm",description:{txt:"GARM - Runner lifecycle manager"},style:{}},"otcKubernetes.edpCluster.edpCluster.providerEdgeConnect":{id:"otcKubernetes.edpCluster.edpCluster.providerEdgeConnect",element:"edp.garm.providerEdgeConnect",description:{txt:"GARM Provider for Edge Connect"},style:{}},"otc-faas.dev.cce.edp.forgejo":{id:"otc-faas.dev.cce.edp.forgejo",element:"edp.forgejo",style:{}},"otc-faas.prod.cce.edp.forgejo":{id:"otc-faas.prod.cce.edp.forgejo",element:"edp.forgejo",title:"Forgejo for all EDP-tenants",description:{txt:"buildth.ing"},style:{}}},relations:{g9oj4f:{title:"registers",source:{deployment:"otc-edp-per-tenant.forgejoRunnerInfrastructure.forgejoRunner"},target:{deployment:"otc-edp-per-tenant.cce.edp.forgejo"},id:"g9oj4f"},"1fzhjm9":{source:{deployment:"otc-edp-per-tenant.cce.edp.forgejo"},target:{deployment:"otc-edp-per-tenant.cloudServices.elasticsearch"},id:"1fzhjm9"},"15njmlz":{source:{deployment:"otc-edp-per-tenant.cce.edp.forgejo"},target:{deployment:"otc-edp-per-tenant.cloudServices.objectstorage"},id:"15njmlz"},hks76r:{source:{deployment:"otc-edp-per-tenant.cce.edp.forgejo"},target:{deployment:"otc-edp-per-tenant.cloudServices.postgres"},id:"hks76r"},"1w18ve8":{source:{deployment:"otc-edp-per-tenant.cce.edp.forgejo"},target:{deployment:"otc-edp-per-tenant.cloudServices.redis"},id:"1w18ve8"},dz2rdn:{source:{deployment:"otc-faas.dev.cce.edp.forgejo"},target:{deployment:"otc-faas.dev.cloudServices"},id:"dz2rdn"},"2shw6y":{source:{deployment:"otc-faas.prod.cce.edp.forgejo"},target:{deployment:"otc-faas.prod.cloudServices"},id:"2shw6y"},"7kqly3":{title:"runs",source:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunner"},target:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunnerWorker"},id:"7kqly3"},"12hf1w4":{title:"executes",source:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunnerWorker"},target:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow"},id:"12hf1w4"},uk77s5:{title:"deploys edp to otc.cce",source:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow"},target:{deployment:"otc-edp-per-tenant.cce.edp"},id:"uk77s5"},"1pfc6bl":{title:"deploys edp to otc.paas",source:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.edpworkflow"},target:{deployment:"otc-edp-per-tenant.cloudServices"},id:"1pfc6bl"},hqie0:{title:"runs",source:{deployment:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunner"},target:{deployment:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunnerWorker"},id:"hqie0"},"1j16hqv":{title:"executes",source:{deployment:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunnerWorker"},target:{deployment:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.edpworkflow"},id:"1j16hqv"},jde35l:{source:{deployment:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.edpworkflow"},target:{deployment:"otc-edp-per-tenant.cce.edp.argoCD"},id:"jde35l"},"1umzqdy":{title:"registers",source:{deployment:"otc-edpFoundry.forgejoRunnerInfrastructure.forgejoRunner"},target:{deployment:"otc-edpFoundry.cce.internalServices.forgejo"},id:"1umzqdy"},dola40:{title:"invokes",source:{deployment:"otc-edpFoundry.cce.internalServices.forgejo"},target:{deployment:"otc-edpFoundry.workflowSetupEDPInfrastructure.forgejoRunner"},id:"dola40"},"1f5y9gc":{title:"invokes",source:{deployment:"otc-edpFoundry.cce.internalServices.forgejo"},target:{deployment:"otc-edpFoundry.workflowSetupArgoCDInfrastructure.forgejoRunner"},id:"1f5y9gc"},"1wlvsb5":{title:"built using",source:{deployment:"edgeProvider"},target:{deployment:"edgeSdk"},id:"1wlvsb5"},"1mpjz5d":{title:"published to",source:{deployment:"edgeProvider"},target:{deployment:"edgeProviderHost.terralist"},id:"1mpjz5d"},"12ssq9":{title:"hosted on",source:{deployment:"edgeProvider"},target:{deployment:"edgeProviderHost.edp"},id:"12ssq9"},vfhcba:{title:"calls",source:{deployment:"edgeSdk"},target:{deployment:"edgeCloud.edgeApi"},id:"vfhcba"},"1sm6ifh":{title:"hosted on",source:{deployment:"edgeSdk"},target:{deployment:"edgeProviderHost.edp"},id:"1sm6ifh"},"1q6ftvm":{title:"authenticates via",source:{deployment:"edgeProviderHost.terralist"},target:{deployment:"edgeProviderHost.edp"},id:"1q6ftvm"},rr0lcz:{title:"creates/destroys",source:{deployment:"edgeCloud.edgeApi"},target:{deployment:"edgeCloud.edgeResources"},id:"rr0lcz"},"1fxu52d":{title:"deploys",source:{deployment:"otcTenantProd.otcTenantEdpBuildthing"},target:{deployment:"otcTenantProd.otcTenantObservability"},id:"1fxu52d"},"6gfo3g":{title:"deploys",source:{deployment:"otcTenantProd.otcTenantEdpBuildthing"},target:{deployment:"otcTenantProd.otcTenantCustomerA"},id:"6gfo3g"},s1ie0n:{title:"deploys",source:{deployment:"otcTenantProd.otcTenantEdpBuildthing"},target:{deployment:"otcTenantNonProd.otcTenantDev1"},id:"s1ie0n"},"77azfi":{title:"deploys",source:{deployment:"otcTenantProd.otcTenantEdpBuildthing"},target:{deployment:"otcTenantNonProd.otcTenantTestX"},id:"77azfi"},"1k6h7jf":{title:"registers with and picks up jobs",source:{deployment:"edgeConnectEnv.runnerInfrastructure.forgejoRunner"},target:{deployment:"otcKubernetes.edpCluster.forgejo"},id:"1k6h7jf"},"15ss7lz":{title:"retrieves bootstrap information",source:{deployment:"edgeConnectEnv.runnerInfrastructure.forgejoRunner"},target:{deployment:"otcKubernetes.edpCluster.edpCluster.garmService"},id:"15ss7lz"}}},imports:{}}),{useLikeC4Model:KJe}=YJe(XJe);function ZJe({children:e}){const r=KJe();return y.jsx(YQe,{likec4model:r,children:e})}function QJe(e){return y.jsx(ZJe,{children:y.jsx(gJe,{renderIcon:NJe,...e})})}var $z={exports:{}},T0={},Rz={exports:{}},zz={};var one;function JJe(){return one||(one=1,(function(e){function r(B,F){var q=B.length;B.push(F);e:for(;0>>1,U=B[G];if(0>>1;Gi(O,q))Wi(Z,O)?(B[G]=Z,B[W]=q,G=W):(B[G]=O,B[K]=q,G=K);else if(Wi(Z,q))B[G]=Z,B[W]=q,G=W;else break e}}return F}function i(B,F){var q=B.sortIndex-F.sortIndex;return q!==0?q:B.id-F.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var a=performance;e.unstable_now=function(){return a.now()}}else{var l=Date,s=l.now();e.unstable_now=function(){return l.now()-s}}var c=[],d=[],u=1,p=null,f=3,g=!1,v=!1,w=!1,x=!1,k=typeof setTimeout=="function"?setTimeout:null,C=typeof clearTimeout=="function"?clearTimeout:null,_=typeof setImmediate<"u"?setImmediate:null;function $(B){for(var F=n(d);F!==null;){if(F.callback===null)o(d);else if(F.startTime<=B)o(d),F.sortIndex=F.expirationTime,r(c,F);else break;F=n(d)}}function R(B){if(w=!1,$(B),!v)if(n(c)!==null)v=!0,T||(T=!0,L());else{var F=n(d);F!==null&&V(R,F.startTime-B)}}var T=!1,A=-1,z=5,j=-1;function I(){return x?!0:!(e.unstable_now()-jB&&I());){var G=p.callback;if(typeof G=="function"){p.callback=null,f=p.priorityLevel;var U=G(p.expirationTime<=B);if(B=e.unstable_now(),typeof U=="function"){p.callback=U,$(B),F=!0;break t}p===n(c)&&o(c),$(B)}else o(c);p=n(c)}if(p!==null)F=!0;else{var Y=n(d);Y!==null&&V(R,Y.startTime-B),F=!1}}break e}finally{p=null,f=q,g=!1}F=void 0}}finally{F?L():T=!1}}}var L;if(typeof _=="function")L=function(){_(P)};else if(typeof MessageChannel<"u"){var H=new MessageChannel,M=H.port2;H.port1.onmessage=P,L=function(){M.postMessage(null)}}else L=function(){k(P,0)};function V(B,F){A=k(function(){B(e.unstable_now())},F)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(B){B.callback=null},e.unstable_forceFrameRate=function(B){0>B||125G?(B.sortIndex=q,r(d,B),n(c)===null&&B===n(d)&&(w?(C(A),A=-1):w=!0,V(R,q-G))):(B.sortIndex=U,r(c,B),v||g||(v=!0,T||(T=!0,L()))),B},e.unstable_shouldYield=I,e.unstable_wrapCallback=function(B){var F=f;return function(){var q=f;f=F;try{return B.apply(this,arguments)}finally{f=q}}}})(zz)),zz}var ine;function eet(){return ine||(ine=1,Rz.exports=JJe()),Rz.exports}var ane;function tet(){if(ane)return T0;ane=1;var e=eet(),r=Z6(),n=GN();function o(h){var m="https://react.dev/errors/"+h;if(1U||(h.current=G[U],G[U]=null,U--)}function O(h,m){U++,G[U]=h.current,h.current=m}var W=Y(null),Z=Y(null),Q=Y(null),ie=Y(null);function te(h,m){switch(O(Q,m),O(Z,h),O(W,null),m.nodeType){case 9:case 11:h=(h=m.documentElement)&&(h=h.namespaceURI)?cge(h):0;break;default:if(h=m.tagName,m=m.namespaceURI)m=cge(m),h=dge(m,h);else switch(h){case"svg":h=1;break;case"math":h=2;break;default:h=0}}K(W),O(W,h)}function re(){K(W),K(Z),K(Q)}function ue(h){h.memoizedState!==null&&O(ie,h);var m=W.current,b=dge(m,h.type);m!==b&&(O(Z,h),O(W,b))}function _e(h){Z.current===h&&(K(W),K(Z)),ie.current===h&&(K(ie),pb._currentValue=q)}var ce,pe;function xe(h){if(ce===void 0)try{throw Error()}catch(b){var m=b.stack.trim().match(/\n( *(at )?)/);ce=m&&m[1]||"",pe=-1>>1,U=B[G];if(0>>1;Gi(O,q))Wi(Z,O)?(B[G]=Z,B[W]=q,G=W):(B[G]=O,B[K]=q,G=K);else if(Wi(Z,q))B[G]=Z,B[W]=q,G=W;else break e}}return F}function i(B,F){var q=B.sortIndex-F.sortIndex;return q!==0?q:B.id-F.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var a=performance;e.unstable_now=function(){return a.now()}}else{var l=Date,s=l.now();e.unstable_now=function(){return l.now()-s}}var c=[],d=[],u=1,p=null,f=3,m=!1,v=!1,w=!1,x=!1,k=typeof setTimeout=="function"?setTimeout:null,C=typeof clearTimeout=="function"?clearTimeout:null,_=typeof setImmediate<"u"?setImmediate:null;function $(B){for(var F=n(d);F!==null;){if(F.callback===null)o(d);else if(F.startTime<=B)o(d),F.sortIndex=F.expirationTime,r(c,F);else break;F=n(d)}}function R(B){if(w=!1,$(B),!v)if(n(c)!==null)v=!0,T||(T=!0,L());else{var F=n(d);F!==null&&V(R,F.startTime-B)}}var T=!1,A=-1,z=5,j=-1;function I(){return x?!0:!(e.unstable_now()-jB&&I());){var G=p.callback;if(typeof G=="function"){p.callback=null,f=p.priorityLevel;var U=G(p.expirationTime<=B);if(B=e.unstable_now(),typeof U=="function"){p.callback=U,$(B),F=!0;break t}p===n(c)&&o(c),$(B)}else o(c);p=n(c)}if(p!==null)F=!0;else{var Y=n(d);Y!==null&&V(R,Y.startTime-B),F=!1}}break e}finally{p=null,f=q,m=!1}F=void 0}}finally{F?L():T=!1}}}var L;if(typeof _=="function")L=function(){_(N)};else if(typeof MessageChannel<"u"){var H=new MessageChannel,P=H.port2;H.port1.onmessage=N,L=function(){P.postMessage(null)}}else L=function(){k(N,0)};function V(B,F){A=k(function(){B(e.unstable_now())},F)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(B){B.callback=null},e.unstable_forceFrameRate=function(B){0>B||125G?(B.sortIndex=q,r(d,B),n(c)===null&&B===n(d)&&(w?(C(A),A=-1):w=!0,V(R,q-G))):(B.sortIndex=U,r(c,B),v||m||(v=!0,T||(T=!0,L()))),B},e.unstable_shouldYield=I,e.unstable_wrapCallback=function(B){var F=f;return function(){var q=f;f=F;try{return B.apply(this,arguments)}finally{f=q}}}})(zz)),zz}var ine;function eet(){return ine||(ine=1,Rz.exports=JJe()),Rz.exports}var ane;function tet(){if(ane)return T0;ane=1;var e=eet(),r=Z6(),n=GM();function o(h){var g="https://react.dev/errors/"+h;if(1U||(h.current=G[U],G[U]=null,U--)}function O(h,g){U++,G[U]=h.current,h.current=g}var W=Y(null),Z=Y(null),Q=Y(null),ie=Y(null);function te(h,g){switch(O(Q,g),O(Z,h),O(W,null),g.nodeType){case 9:case 11:h=(h=g.documentElement)&&(h=h.namespaceURI)?cme(h):0;break;default:if(h=g.tagName,g=g.namespaceURI)g=cme(g),h=dme(g,h);else switch(h){case"svg":h=1;break;case"math":h=2;break;default:h=0}}K(W),O(W,h)}function re(){K(W),K(Z),K(Q)}function ue(h){h.memoizedState!==null&&O(ie,h);var g=W.current,b=dme(g,h.type);g!==b&&(O(Z,h),O(W,b))}function _e(h){Z.current===h&&(K(W),K(Z)),ie.current===h&&(K(ie),pb._currentValue=q)}var ce,pe;function xe(h){if(ce===void 0)try{throw Error()}catch(b){var g=b.stack.trim().match(/\n( *(at )?)/);ce=g&&g[1]||"",pe=-1)":-1D||se[E]!==ge[D]){var Ee=` -`+se[E].replace(" at new "," at ");return h.displayName&&Ee.includes("")&&(Ee=Ee.replace("",h.displayName)),Ee}while(1<=E&&0<=D);break}}}finally{je=!1,Error.prepareStackTrace=b}return(b=h?h.displayName||h.name:"")?xe(b):""}function Je(h,m){switch(h.tag){case 26:case 27:case 5:return xe(h.type);case 16:return xe("Lazy");case 13:return h.child!==m&&m!==null?xe("Suspense Fallback"):xe("Suspense");case 19:return xe("SuspenseList");case 0:case 15:return Be(h.type,!1);case 11:return Be(h.type.render,!1);case 1:return Be(h.type,!0);case 31:return xe("Activity");default:return""}}function st(h){try{var m="",b=null;do m+=Je(h,b),b=h,h=h.return;while(h);return m}catch(E){return` +`+ce+h+pe}var je=!1;function Be(h,g){if(!h||je)return"";je=!0;var b=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var E={DetermineComponentFrameRoot:function(){try{if(g){var Re=function(){throw Error()};if(Object.defineProperty(Re.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(Re,[])}catch(we){var ye=we}Reflect.construct(h,[],Re)}else{try{Re.call()}catch(we){ye=we}h.call(Re.prototype)}}else{try{throw Error()}catch(we){ye=we}(Re=h())&&typeof Re.catch=="function"&&Re.catch(function(){})}}catch(we){if(we&&ye&&typeof we.stack=="string")return[we.stack,ye.stack]}return[null,null]}};E.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var D=Object.getOwnPropertyDescriptor(E.DetermineComponentFrameRoot,"name");D&&D.configurable&&Object.defineProperty(E.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var M=E.DetermineComponentFrameRoot(),X=M[0],ne=M[1];if(X&&ne){var se=X.split(` +`),me=ne.split(` +`);for(D=E=0;ED||se[E]!==me[D]){var Ee=` +`+se[E].replace(" at new "," at ");return h.displayName&&Ee.includes("")&&(Ee=Ee.replace("",h.displayName)),Ee}while(1<=E&&0<=D);break}}}finally{je=!1,Error.prepareStackTrace=b}return(b=h?h.displayName||h.name:"")?xe(b):""}function Je(h,g){switch(h.tag){case 26:case 27:case 5:return xe(h.type);case 16:return xe("Lazy");case 13:return h.child!==g&&g!==null?xe("Suspense Fallback"):xe("Suspense");case 19:return xe("SuspenseList");case 0:case 15:return Be(h.type,!1);case 11:return Be(h.type.render,!1);case 1:return Be(h.type,!0);case 31:return xe("Activity");default:return""}}function st(h){try{var g="",b=null;do g+=Je(h,b),b=h,h=h.return;while(h);return g}catch(E){return` Error generating stack: `+E.message+` -`+E.stack}}var Le=Object.prototype.hasOwnProperty,St=e.unstable_scheduleCallback,Ve=e.unstable_cancelCallback,qe=e.unstable_shouldYield,Xe=e.unstable_requestPaint,It=e.unstable_now,Et=e.unstable_getCurrentPriorityLevel,be=e.unstable_ImmediatePriority,ke=e.unstable_UserBlockingPriority,Ye=e.unstable_NormalPriority,yt=e.unstable_LowPriority,xt=e.unstable_IdlePriority,Tr=e.log,er=e.unstable_setDisableYieldValue,qt=null,Ht=null;function Kr(h){if(typeof Tr=="function"&&er(h),Ht&&typeof Ht.setStrictMode=="function")try{Ht.setStrictMode(qt,h)}catch{}}var Gt=Math.clz32?Math.clz32:fn,ln=Math.log,Wn=Math.LN2;function fn(h){return h>>>=0,h===0?32:31-(ln(h)/Wn|0)|0}var oo=256,Yo=262144,jo=4194304;function ui(h){var m=h&42;if(m!==0)return m;switch(h&-h){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return h&261888;case 262144:case 524288:case 1048576:case 2097152:return h&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return h&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return h}}function Dl(h,m,b){var E=h.pendingLanes;if(E===0)return 0;var D=0,N=h.suspendedLanes,X=h.pingedLanes;h=h.warmLanes;var ne=E&134217727;return ne!==0?(E=ne&~N,E!==0?D=ui(E):(X&=ne,X!==0?D=ui(X):b||(b=ne&~h,b!==0&&(D=ui(b))))):(ne=E&~N,ne!==0?D=ui(ne):X!==0?D=ui(X):b||(b=E&~h,b!==0&&(D=ui(b)))),D===0?0:m!==0&&m!==D&&(m&N)===0&&(N=D&-D,b=m&-m,N>=b||N===32&&(b&4194048)!==0)?m:D}function Ao(h,m){return(h.pendingLanes&~(h.suspendedLanes&~h.pingedLanes)&m)===0}function xs(h,m){switch(h){case 1:case 2:case 4:case 8:case 64:return m+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return m+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function ws(){var h=jo;return jo<<=1,(jo&62914560)===0&&(jo=4194304),h}function zc(h){for(var m=[],b=0;31>b;b++)m.push(h);return m}function Ml(h,m){h.pendingLanes|=m,m!==268435456&&(h.suspendedLanes=0,h.pingedLanes=0,h.warmLanes=0)}function lh(h,m,b,E,D,N){var X=h.pendingLanes;h.pendingLanes=b,h.suspendedLanes=0,h.pingedLanes=0,h.warmLanes=0,h.expiredLanes&=b,h.entangledLanes&=b,h.errorRecoveryDisabledLanes&=b,h.shellSuspendCounter=0;var ne=h.entanglements,se=h.expirationTimes,ge=h.hiddenUpdates;for(b=X&~b;0"u")return null;try{return h.activeElement||h.body}catch{return h.body}}var lu=/[\n"\\]/g;function J(h){return h.replace(lu,function(m){return"\\"+m.charCodeAt(0).toString(16)+" "})}function ee(h,m,b,E,D,N,X,ne){h.name="",X!=null&&typeof X!="function"&&typeof X!="symbol"&&typeof X!="boolean"?h.type=X:h.removeAttribute("type"),m!=null?X==="number"?(m===0&&h.value===""||h.value!=m)&&(h.value=""+Gr(m)):h.value!==""+Gr(m)&&(h.value=""+Gr(m)):X!=="submit"&&X!=="reset"||h.removeAttribute("value"),m!=null?ae(h,X,Gr(m)):b!=null?ae(h,X,Gr(b)):E!=null&&h.removeAttribute("value"),D==null&&N!=null&&(h.defaultChecked=!!N),D!=null&&(h.checked=D&&typeof D!="function"&&typeof D!="symbol"),ne!=null&&typeof ne!="function"&&typeof ne!="symbol"&&typeof ne!="boolean"?h.name=""+Gr(ne):h.removeAttribute("name")}function oe(h,m,b,E,D,N,X,ne){if(N!=null&&typeof N!="function"&&typeof N!="symbol"&&typeof N!="boolean"&&(h.type=N),m!=null||b!=null){if(!(N!=="submit"&&N!=="reset"||m!=null)){Aa(h);return}b=b!=null?""+Gr(b):"",m=m!=null?""+Gr(m):b,ne||m===h.value||(h.value=m),h.defaultValue=m}E=E??D,E=typeof E!="function"&&typeof E!="symbol"&&!!E,h.checked=ne?h.checked:!!E,h.defaultChecked=!!E,X!=null&&typeof X!="function"&&typeof X!="symbol"&&typeof X!="boolean"&&(h.name=X),Aa(h)}function ae(h,m,b){m==="number"&&Da(h.ownerDocument)===h||h.defaultValue===""+b||(h.defaultValue=""+b)}function le(h,m,b,E){if(h=h.options,m){m={};for(var D=0;D"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),OD=!1;if(Mc)try{var Tv={};Object.defineProperty(Tv,"passive",{get:function(){OD=!0}}),window.addEventListener("test",Tv,Tv),window.removeEventListener("test",Tv,Tv)}catch{OD=!1}var cu=null,LD=null,L5=null;function dhe(){if(L5)return L5;var h,m=LD,b=m.length,E,D="value"in cu?cu.value:cu.textContent,N=D.length;for(h=0;h=Dv),ghe=" ",yhe=!1;function vhe(h,m){switch(h){case"keyup":return Kbt.indexOf(m.keyCode)!==-1;case"keydown":return m.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function bhe(h){return h=h.detail,typeof h=="object"&&"data"in h?h.data:null}var xg=!1;function Qbt(h,m){switch(h){case"compositionend":return bhe(m);case"keypress":return m.which!==32?null:(yhe=!0,ghe);case"textInput":return h=m.data,h===ghe&&yhe?null:h;default:return null}}function Jbt(h,m){if(xg)return h==="compositionend"||!UD&&vhe(h,m)?(h=dhe(),L5=LD=cu=null,xg=!1,h):null;switch(h){case"paste":return null;case"keypress":if(!(m.ctrlKey||m.altKey||m.metaKey)||m.ctrlKey&&m.altKey){if(m.char&&1=m)return{node:b,offset:m-h};h=E}e:{for(;b;){if(b.nextSibling){b=b.nextSibling;break e}b=b.parentNode}b=void 0}b=$he(b)}}function zhe(h,m){return h&&m?h===m?!0:h&&h.nodeType===3?!1:m&&m.nodeType===3?zhe(h,m.parentNode):"contains"in h?h.contains(m):h.compareDocumentPosition?!!(h.compareDocumentPosition(m)&16):!1:!1}function The(h){h=h!=null&&h.ownerDocument!=null&&h.ownerDocument.defaultView!=null?h.ownerDocument.defaultView:window;for(var m=Da(h.document);m instanceof h.HTMLIFrameElement;){try{var b=typeof m.contentWindow.location.href=="string"}catch{b=!1}if(b)h=m.contentWindow;else break;m=Da(h.document)}return m}function YD(h){var m=h&&h.nodeName&&h.nodeName.toLowerCase();return m&&(m==="input"&&(h.type==="text"||h.type==="search"||h.type==="tel"||h.type==="url"||h.type==="password")||m==="textarea"||h.contentEditable==="true")}var lxt=Mc&&"documentMode"in document&&11>=document.documentMode,wg=null,XD=null,Bv=null,KD=!1;function jhe(h,m,b){var E=b.window===b?b.document:b.nodeType===9?b:b.ownerDocument;KD||wg==null||wg!==Da(E)||(E=wg,"selectionStart"in E&&YD(E)?E={start:E.selectionStart,end:E.selectionEnd}:(E=(E.ownerDocument&&E.ownerDocument.defaultView||window).getSelection(),E={anchorNode:E.anchorNode,anchorOffset:E.anchorOffset,focusNode:E.focusNode,focusOffset:E.focusOffset}),Bv&&Pv(Bv,E)||(Bv=E,E=D6(XD,"onSelect"),0>=X,D-=X,Rs=1<<32-Gt(m)+D|b<Pt?(Xt=nt,nt=null):Xt=nt.sibling;var ir=ye(he,nt,me[Pt],Ce);if(ir===null){nt===null&&(nt=Xt);break}h&&nt&&ir.alternate===null&&m(he,nt),de=N(ir,de,Pt),or===null?ct=ir:or.sibling=ir,or=ir,nt=Xt}if(Pt===me.length)return b(he,nt),Kt&&Pc(he,Pt),ct;if(nt===null){for(;PtPt?(Xt=nt,nt=null):Xt=nt.sibling;var ju=ye(he,nt,ir.value,Ce);if(ju===null){nt===null&&(nt=Xt);break}h&&nt&&ju.alternate===null&&m(he,nt),de=N(ju,de,Pt),or===null?ct=ju:or.sibling=ju,or=ju,nt=Xt}if(ir.done)return b(he,nt),Kt&&Pc(he,Pt),ct;if(nt===null){for(;!ir.done;Pt++,ir=me.next())ir=Re(he,ir.value,Ce),ir!==null&&(de=N(ir,de,Pt),or===null?ct=ir:or.sibling=ir,or=ir);return Kt&&Pc(he,Pt),ct}for(nt=E(nt);!ir.done;Pt++,ir=me.next())ir=we(nt,he,Pt,ir.value,Ce),ir!==null&&(h&&ir.alternate!==null&&nt.delete(ir.key===null?Pt:ir.key),de=N(ir,de,Pt),or===null?ct=ir:or.sibling=ir,or=ir);return h&&nt.forEach(function($wt){return m(he,$wt)}),Kt&&Pc(he,Pt),ct}function _r(he,de,me,Ce){if(typeof me=="object"&&me!==null&&me.type===w&&me.key===null&&(me=me.props.children),typeof me=="object"&&me!==null){switch(me.$$typeof){case g:e:{for(var ct=me.key;de!==null;){if(de.key===ct){if(ct=me.type,ct===w){if(de.tag===7){b(he,de.sibling),Ce=D(de,me.props.children),Ce.return=he,he=Ce;break e}}else if(de.elementType===ct||typeof ct=="object"&&ct!==null&&ct.$$typeof===z&&wh(ct)===de.type){b(he,de.sibling),Ce=D(de,me.props),qv(Ce,me),Ce.return=he,he=Ce;break e}b(he,de);break}else m(he,de);de=de.sibling}me.type===w?(Ce=gh(me.props.children,he.mode,Ce,me.key),Ce.return=he,he=Ce):(Ce=K5(me.type,me.key,me.props,null,he.mode,Ce),qv(Ce,me),Ce.return=he,he=Ce)}return X(he);case v:e:{for(ct=me.key;de!==null;){if(de.key===ct)if(de.tag===4&&de.stateNode.containerInfo===me.containerInfo&&de.stateNode.implementation===me.implementation){b(he,de.sibling),Ce=D(de,me.children||[]),Ce.return=he,he=Ce;break e}else{b(he,de);break}else m(he,de);de=de.sibling}Ce=nM(me,he.mode,Ce),Ce.return=he,he=Ce}return X(he);case z:return me=wh(me),_r(he,de,me,Ce)}if(V(me))return et(he,de,me,Ce);if(L(me)){if(ct=L(me),typeof ct!="function")throw Error(o(150));return me=ct.call(me),bt(he,de,me,Ce)}if(typeof me.then=="function")return _r(he,de,n6(me),Ce);if(me.$$typeof===_)return _r(he,de,J5(he,me),Ce);o6(he,me)}return typeof me=="string"&&me!==""||typeof me=="number"||typeof me=="bigint"?(me=""+me,de!==null&&de.tag===6?(b(he,de.sibling),Ce=D(de,me),Ce.return=he,he=Ce):(b(he,de),Ce=rM(me,he.mode,Ce),Ce.return=he,he=Ce),X(he)):b(he,de)}return function(he,de,me,Ce){try{Vv=0;var ct=_r(he,de,me,Ce);return Ag=null,ct}catch(nt){if(nt===jg||nt===t6)throw nt;var or=Hi(29,nt,null,he.mode);return or.lanes=Ce,or.return=he,or}}}var _h=efe(!0),tfe=efe(!1),fu=!1;function mM(h){h.updateQueue={baseState:h.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function gM(h,m){h=h.updateQueue,m.updateQueue===h&&(m.updateQueue={baseState:h.baseState,firstBaseUpdate:h.firstBaseUpdate,lastBaseUpdate:h.lastBaseUpdate,shared:h.shared,callbacks:null})}function mu(h){return{lane:h,tag:0,payload:null,callback:null,next:null}}function gu(h,m,b){var E=h.updateQueue;if(E===null)return null;if(E=E.shared,(cr&2)!==0){var D=E.pending;return D===null?m.next=m:(m.next=D.next,D.next=m),E.pending=m,m=X5(h),Ihe(h,null,b),m}return Y5(h,E,m,b),X5(h)}function Hv(h,m,b){if(m=m.updateQueue,m!==null&&(m=m.shared,(b&4194048)!==0)){var E=m.lanes;E&=h.pendingLanes,b|=E,m.lanes=b,tu(h,b)}}function yM(h,m){var b=h.updateQueue,E=h.alternate;if(E!==null&&(E=E.updateQueue,b===E)){var D=null,N=null;if(b=b.firstBaseUpdate,b!==null){do{var X={lane:b.lane,tag:b.tag,payload:b.payload,callback:null,next:null};N===null?D=N=X:N=N.next=X,b=b.next}while(b!==null);N===null?D=N=m:N=N.next=m}else D=N=m;b={baseState:E.baseState,firstBaseUpdate:D,lastBaseUpdate:N,shared:E.shared,callbacks:E.callbacks},h.updateQueue=b;return}h=b.lastBaseUpdate,h===null?b.firstBaseUpdate=m:h.next=m,b.lastBaseUpdate=m}var vM=!1;function Uv(){if(vM){var h=Tg;if(h!==null)throw h}}function Wv(h,m,b,E){vM=!1;var D=h.updateQueue;fu=!1;var N=D.firstBaseUpdate,X=D.lastBaseUpdate,ne=D.shared.pending;if(ne!==null){D.shared.pending=null;var se=ne,ge=se.next;se.next=null,X===null?N=ge:X.next=ge,X=se;var Ee=h.alternate;Ee!==null&&(Ee=Ee.updateQueue,ne=Ee.lastBaseUpdate,ne!==X&&(ne===null?Ee.firstBaseUpdate=ge:ne.next=ge,Ee.lastBaseUpdate=se))}if(N!==null){var Re=D.baseState;X=0,Ee=ge=se=null,ne=N;do{var ye=ne.lane&-536870913,we=ye!==ne.lane;if(we?(Yt&ye)===ye:(E&ye)===ye){ye!==0&&ye===zg&&(vM=!0),Ee!==null&&(Ee=Ee.next={lane:0,tag:ne.tag,payload:ne.payload,callback:null,next:null});e:{var et=h,bt=ne;ye=m;var _r=b;switch(bt.tag){case 1:if(et=bt.payload,typeof et=="function"){Re=et.call(_r,Re,ye);break e}Re=et;break e;case 3:et.flags=et.flags&-65537|128;case 0:if(et=bt.payload,ye=typeof et=="function"?et.call(_r,Re,ye):et,ye==null)break e;Re=p({},Re,ye);break e;case 2:fu=!0}}ye=ne.callback,ye!==null&&(h.flags|=64,we&&(h.flags|=8192),we=D.callbacks,we===null?D.callbacks=[ye]:we.push(ye))}else we={lane:ye,tag:ne.tag,payload:ne.payload,callback:ne.callback,next:null},Ee===null?(ge=Ee=we,se=Re):Ee=Ee.next=we,X|=ye;if(ne=ne.next,ne===null){if(ne=D.shared.pending,ne===null)break;we=ne,ne=we.next,we.next=null,D.lastBaseUpdate=we,D.shared.pending=null}}while(!0);Ee===null&&(se=Re),D.baseState=se,D.firstBaseUpdate=ge,D.lastBaseUpdate=Ee,N===null&&(D.shared.lanes=0),wu|=X,h.lanes=X,h.memoizedState=Re}}function rfe(h,m){if(typeof h!="function")throw Error(o(191,h));h.call(m)}function nfe(h,m){var b=h.callbacks;if(b!==null)for(h.callbacks=null,h=0;hN?N:8;var X=B.T,ne={};B.T=ne,BM(h,!1,m,b);try{var se=D(),ge=B.S;if(ge!==null&&ge(ne,se),se!==null&&typeof se=="object"&&typeof se.then=="function"){var Ee=gxt(se,E);Xv(h,m,Ee,Xi(h))}else Xv(h,m,E,Xi(h))}catch(Re){Xv(h,m,{then:function(){},status:"rejected",reason:Re},Xi())}finally{F.p=N,X!==null&&ne.types!==null&&(X.types=ne.types),B.T=X}}function kxt(){}function NM(h,m,b,E){if(h.tag!==5)throw Error(o(476));var D=Nfe(h).queue;Mfe(h,D,m,q,b===null?kxt:function(){return Pfe(h),b(E)})}function Nfe(h){var m=h.memoizedState;if(m!==null)return m;m={memoizedState:q,baseState:q,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Lc,lastRenderedState:q},next:null};var b={};return m.next={memoizedState:b,baseState:b,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Lc,lastRenderedState:b},next:null},h.memoizedState=m,h=h.alternate,h!==null&&(h.memoizedState=m),m}function Pfe(h){var m=Nfe(h);m.next===null&&(m=h.alternate.memoizedState),Xv(h,m.next.queue,{},Xi())}function PM(){return mo(pb)}function Bfe(){return gn().memoizedState}function Ife(){return gn().memoizedState}function _xt(h){for(var m=h.return;m!==null;){switch(m.tag){case 24:case 3:var b=Xi();h=mu(b);var E=gu(m,h,b);E!==null&&(vi(E,m,b),Hv(E,m,b)),m={cache:uM()},h.payload=m;return}m=m.return}}function Sxt(h,m,b){var E=Xi();b={lane:E,revertLane:0,gesture:null,action:b,hasEagerState:!1,eagerState:null,next:null},f6(h)?Lfe(m,b):(b=eM(h,m,b,E),b!==null&&(vi(b,h,E),Ffe(b,m,E)))}function Ofe(h,m,b){var E=Xi();Xv(h,m,b,E)}function Xv(h,m,b,E){var D={lane:E,revertLane:0,gesture:null,action:b,hasEagerState:!1,eagerState:null,next:null};if(f6(h))Lfe(m,D);else{var N=h.alternate;if(h.lanes===0&&(N===null||N.lanes===0)&&(N=m.lastRenderedReducer,N!==null))try{var X=m.lastRenderedState,ne=N(X,b);if(D.hasEagerState=!0,D.eagerState=ne,qi(ne,X))return Y5(h,m,D,0),Er===null&&G5(),!1}catch{}if(b=eM(h,m,D,E),b!==null)return vi(b,h,E),Ffe(b,m,E),!0}return!1}function BM(h,m,b,E){if(E={lane:2,revertLane:mN(),gesture:null,action:E,hasEagerState:!1,eagerState:null,next:null},f6(h)){if(m)throw Error(o(479))}else m=eM(h,b,E,2),m!==null&&vi(m,h,2)}function f6(h){var m=h.alternate;return h===Mt||m!==null&&m===Mt}function Lfe(h,m){Mg=l6=!0;var b=h.pending;b===null?m.next=m:(m.next=b.next,b.next=m),h.pending=m}function Ffe(h,m,b){if((b&4194048)!==0){var E=m.lanes;E&=h.pendingLanes,b|=E,m.lanes=b,tu(h,b)}}var Kv={readContext:mo,use:d6,useCallback:sn,useContext:sn,useEffect:sn,useImperativeHandle:sn,useLayoutEffect:sn,useInsertionEffect:sn,useMemo:sn,useReducer:sn,useRef:sn,useState:sn,useDebugValue:sn,useDeferredValue:sn,useTransition:sn,useSyncExternalStore:sn,useId:sn,useHostTransitionStatus:sn,useFormState:sn,useActionState:sn,useOptimistic:sn,useMemoCache:sn,useCacheRefresh:sn};Kv.useEffectEvent=sn;var Vfe={readContext:mo,use:d6,useCallback:function(h,m){return Zo().memoizedState=[h,m===void 0?null:m],h},useContext:mo,useEffect:Efe,useImperativeHandle:function(h,m,b){b=b!=null?b.concat([h]):null,p6(4194308,4,zfe.bind(null,m,h),b)},useLayoutEffect:function(h,m){return p6(4194308,4,h,m)},useInsertionEffect:function(h,m){p6(4,2,h,m)},useMemo:function(h,m){var b=Zo();m=m===void 0?null:m;var E=h();if(Sh){Kr(!0);try{h()}finally{Kr(!1)}}return b.memoizedState=[E,m],E},useReducer:function(h,m,b){var E=Zo();if(b!==void 0){var D=b(m);if(Sh){Kr(!0);try{b(m)}finally{Kr(!1)}}}else D=m;return E.memoizedState=E.baseState=D,h={pending:null,lanes:0,dispatch:null,lastRenderedReducer:h,lastRenderedState:D},E.queue=h,h=h.dispatch=Sxt.bind(null,Mt,h),[E.memoizedState,h]},useRef:function(h){var m=Zo();return h={current:h},m.memoizedState=h},useState:function(h){h=TM(h);var m=h.queue,b=Ofe.bind(null,Mt,m);return m.dispatch=b,[h.memoizedState,b]},useDebugValue:DM,useDeferredValue:function(h,m){var b=Zo();return MM(b,h,m)},useTransition:function(){var h=TM(!1);return h=Mfe.bind(null,Mt,h.queue,!0,!1),Zo().memoizedState=h,[!1,h]},useSyncExternalStore:function(h,m,b){var E=Mt,D=Zo();if(Kt){if(b===void 0)throw Error(o(407));b=b()}else{if(b=m(),Er===null)throw Error(o(349));(Yt&127)!==0||cfe(E,m,b)}D.memoizedState=b;var N={value:b,getSnapshot:m};return D.queue=N,Efe(ufe.bind(null,E,N,h),[h]),E.flags|=2048,Pg(9,{destroy:void 0},dfe.bind(null,E,N,b,m),null),b},useId:function(){var h=Zo(),m=Er.identifierPrefix;if(Kt){var b=zs,E=Rs;b=(E&~(1<<32-Gt(E)-1)).toString(32)+b,m="_"+m+"R_"+b,b=s6++,0<\/script>",N=N.removeChild(N.firstChild);break;case"select":N=typeof E.is=="string"?X.createElement("select",{is:E.is}):X.createElement("select"),E.multiple?N.multiple=!0:E.size&&(N.size=E.size);break;default:N=typeof E.is=="string"?X.createElement(D,{is:E.is}):X.createElement(D)}}N[Nr]=m,N[Mn]=E;e:for(X=m.child;X!==null;){if(X.tag===5||X.tag===6)N.appendChild(X.stateNode);else if(X.tag!==4&&X.tag!==27&&X.child!==null){X.child.return=X,X=X.child;continue}if(X===m)break e;for(;X.sibling===null;){if(X.return===null||X.return===m)break e;X=X.return}X.sibling.return=X.return,X=X.sibling}m.stateNode=N;e:switch(yo(N,D,E),D){case"button":case"input":case"select":case"textarea":E=!!E.autoFocus;break e;case"img":E=!0;break e;default:E=!1}E&&Vc(m)}}return Br(m),ZM(m,m.type,h===null?null:h.memoizedProps,m.pendingProps,b),null;case 6:if(h&&m.stateNode!=null)h.memoizedProps!==E&&Vc(m);else{if(typeof E!="string"&&m.stateNode===null)throw Error(o(166));if(h=Q.current,$g(m)){if(h=m.stateNode,b=m.memoizedProps,E=null,D=fo,D!==null)switch(D.tag){case 27:case 5:E=D.memoizedProps}h[Nr]=m,h=!!(h.nodeValue===b||E!==null&&E.suppressHydrationWarning===!0||lge(h.nodeValue,b)),h||pu(m,!0)}else h=M6(h).createTextNode(E),h[Nr]=m,m.stateNode=h}return Br(m),null;case 31:if(b=m.memoizedState,h===null||h.memoizedState!==null){if(E=$g(m),b!==null){if(h===null){if(!E)throw Error(o(318));if(h=m.memoizedState,h=h!==null?h.dehydrated:null,!h)throw Error(o(557));h[Nr]=m}else yh(),(m.flags&128)===0&&(m.memoizedState=null),m.flags|=4;Br(m),h=!1}else b=lM(),h!==null&&h.memoizedState!==null&&(h.memoizedState.hydrationErrors=b),h=!0;if(!h)return m.flags&256?(Wi(m),m):(Wi(m),null);if((m.flags&128)!==0)throw Error(o(558))}return Br(m),null;case 13:if(E=m.memoizedState,h===null||h.memoizedState!==null&&h.memoizedState.dehydrated!==null){if(D=$g(m),E!==null&&E.dehydrated!==null){if(h===null){if(!D)throw Error(o(318));if(D=m.memoizedState,D=D!==null?D.dehydrated:null,!D)throw Error(o(317));D[Nr]=m}else yh(),(m.flags&128)===0&&(m.memoizedState=null),m.flags|=4;Br(m),D=!1}else D=lM(),h!==null&&h.memoizedState!==null&&(h.memoizedState.hydrationErrors=D),D=!0;if(!D)return m.flags&256?(Wi(m),m):(Wi(m),null)}return Wi(m),(m.flags&128)!==0?(m.lanes=b,m):(b=E!==null,h=h!==null&&h.memoizedState!==null,b&&(E=m.child,D=null,E.alternate!==null&&E.alternate.memoizedState!==null&&E.alternate.memoizedState.cachePool!==null&&(D=E.alternate.memoizedState.cachePool.pool),N=null,E.memoizedState!==null&&E.memoizedState.cachePool!==null&&(N=E.memoizedState.cachePool.pool),N!==D&&(E.flags|=2048)),b!==h&&b&&(m.child.flags|=8192),b6(m,m.updateQueue),Br(m),null);case 4:return re(),h===null&&bN(m.stateNode.containerInfo),Br(m),null;case 10:return Ic(m.type),Br(m),null;case 19:if(K(mn),E=m.memoizedState,E===null)return Br(m),null;if(D=(m.flags&128)!==0,N=E.rendering,N===null)if(D)Qv(E,!1);else{if(cn!==0||h!==null&&(h.flags&128)!==0)for(h=m.child;h!==null;){if(N=a6(h),N!==null){for(m.flags|=128,Qv(E,!1),h=N.updateQueue,m.updateQueue=h,b6(m,h),m.subtreeFlags=0,h=b,b=m.child;b!==null;)Ohe(b,h),b=b.sibling;return O(mn,mn.current&1|2),Kt&&Pc(m,E.treeForkCount),m.child}h=h.sibling}E.tail!==null&&It()>S6&&(m.flags|=128,D=!0,Qv(E,!1),m.lanes=4194304)}else{if(!D)if(h=a6(N),h!==null){if(m.flags|=128,D=!0,h=h.updateQueue,m.updateQueue=h,b6(m,h),Qv(E,!0),E.tail===null&&E.tailMode==="hidden"&&!N.alternate&&!Kt)return Br(m),null}else 2*It()-E.renderingStartTime>S6&&b!==536870912&&(m.flags|=128,D=!0,Qv(E,!1),m.lanes=4194304);E.isBackwards?(N.sibling=m.child,m.child=N):(h=E.last,h!==null?h.sibling=N:m.child=N,E.last=N)}return E.tail!==null?(h=E.tail,E.rendering=h,E.tail=h.sibling,E.renderingStartTime=It(),h.sibling=null,b=mn.current,O(mn,D?b&1|2:b&1),Kt&&Pc(m,E.treeForkCount),h):(Br(m),null);case 22:case 23:return Wi(m),xM(),E=m.memoizedState!==null,h!==null?h.memoizedState!==null!==E&&(m.flags|=8192):E&&(m.flags|=8192),E?(b&536870912)!==0&&(m.flags&128)===0&&(Br(m),m.subtreeFlags&6&&(m.flags|=8192)):Br(m),b=m.updateQueue,b!==null&&b6(m,b.retryQueue),b=null,h!==null&&h.memoizedState!==null&&h.memoizedState.cachePool!==null&&(b=h.memoizedState.cachePool.pool),E=null,m.memoizedState!==null&&m.memoizedState.cachePool!==null&&(E=m.memoizedState.cachePool.pool),E!==b&&(m.flags|=2048),h!==null&&K(xh),null;case 24:return b=null,h!==null&&(b=h.memoizedState.cache),m.memoizedState.cache!==b&&(m.flags|=2048),Ic(Nn),Br(m),null;case 25:return null;case 30:return null}throw Error(o(156,m.tag))}function zxt(h,m){switch(iM(m),m.tag){case 1:return h=m.flags,h&65536?(m.flags=h&-65537|128,m):null;case 3:return Ic(Nn),re(),h=m.flags,(h&65536)!==0&&(h&128)===0?(m.flags=h&-65537|128,m):null;case 26:case 27:case 5:return _e(m),null;case 31:if(m.memoizedState!==null){if(Wi(m),m.alternate===null)throw Error(o(340));yh()}return h=m.flags,h&65536?(m.flags=h&-65537|128,m):null;case 13:if(Wi(m),h=m.memoizedState,h!==null&&h.dehydrated!==null){if(m.alternate===null)throw Error(o(340));yh()}return h=m.flags,h&65536?(m.flags=h&-65537|128,m):null;case 19:return K(mn),null;case 4:return re(),null;case 10:return Ic(m.type),null;case 22:case 23:return Wi(m),xM(),h!==null&&K(xh),h=m.flags,h&65536?(m.flags=h&-65537|128,m):null;case 24:return Ic(Nn),null;case 25:return null;default:return null}}function pme(h,m){switch(iM(m),m.tag){case 3:Ic(Nn),re();break;case 26:case 27:case 5:_e(m);break;case 4:re();break;case 31:m.memoizedState!==null&&Wi(m);break;case 13:Wi(m);break;case 19:K(mn);break;case 10:Ic(m.type);break;case 22:case 23:Wi(m),xM(),h!==null&&K(xh);break;case 24:Ic(Nn)}}function Jv(h,m){try{var b=m.updateQueue,E=b!==null?b.lastEffect:null;if(E!==null){var D=E.next;b=D;do{if((b.tag&h)===h){E=void 0;var N=b.create,X=b.inst;E=N(),X.destroy=E}b=b.next}while(b!==D)}}catch(ne){gr(m,m.return,ne)}}function bu(h,m,b){try{var E=m.updateQueue,D=E!==null?E.lastEffect:null;if(D!==null){var N=D.next;E=N;do{if((E.tag&h)===h){var X=E.inst,ne=X.destroy;if(ne!==void 0){X.destroy=void 0,D=m;var se=b,ge=ne;try{ge()}catch(Ee){gr(D,se,Ee)}}}E=E.next}while(E!==N)}}catch(Ee){gr(m,m.return,Ee)}}function hme(h){var m=h.updateQueue;if(m!==null){var b=h.stateNode;try{nfe(m,b)}catch(E){gr(h,h.return,E)}}}function fme(h,m,b){b.props=Eh(h.type,h.memoizedProps),b.state=h.memoizedState;try{b.componentWillUnmount()}catch(E){gr(h,m,E)}}function eb(h,m){try{var b=h.ref;if(b!==null){switch(h.tag){case 26:case 27:case 5:var E=h.stateNode;break;case 30:E=h.stateNode;break;default:E=h.stateNode}typeof b=="function"?h.refCleanup=b(E):b.current=E}}catch(D){gr(h,m,D)}}function Ts(h,m){var b=h.ref,E=h.refCleanup;if(b!==null)if(typeof E=="function")try{E()}catch(D){gr(h,m,D)}finally{h.refCleanup=null,h=h.alternate,h!=null&&(h.refCleanup=null)}else if(typeof b=="function")try{b(null)}catch(D){gr(h,m,D)}else b.current=null}function mme(h){var m=h.type,b=h.memoizedProps,E=h.stateNode;try{e:switch(m){case"button":case"input":case"select":case"textarea":b.autoFocus&&E.focus();break e;case"img":b.src?E.src=b.src:b.srcSet&&(E.srcset=b.srcSet)}}catch(D){gr(h,h.return,D)}}function QM(h,m,b){try{var E=h.stateNode;Zxt(E,h.type,b,m),E[Mn]=m}catch(D){gr(h,h.return,D)}}function gme(h){return h.tag===5||h.tag===3||h.tag===26||h.tag===27&&Cu(h.type)||h.tag===4}function JM(h){e:for(;;){for(;h.sibling===null;){if(h.return===null||gme(h.return))return null;h=h.return}for(h.sibling.return=h.return,h=h.sibling;h.tag!==5&&h.tag!==6&&h.tag!==18;){if(h.tag===27&&Cu(h.type)||h.flags&2||h.child===null||h.tag===4)continue e;h.child.return=h,h=h.child}if(!(h.flags&2))return h.stateNode}}function eN(h,m,b){var E=h.tag;if(E===5||E===6)h=h.stateNode,m?(b.nodeType===9?b.body:b.nodeName==="HTML"?b.ownerDocument.body:b).insertBefore(h,m):(m=b.nodeType===9?b.body:b.nodeName==="HTML"?b.ownerDocument.body:b,m.appendChild(h),b=b._reactRootContainer,b!=null||m.onclick!==null||(m.onclick=Lt));else if(E!==4&&(E===27&&Cu(h.type)&&(b=h.stateNode,m=null),h=h.child,h!==null))for(eN(h,m,b),h=h.sibling;h!==null;)eN(h,m,b),h=h.sibling}function x6(h,m,b){var E=h.tag;if(E===5||E===6)h=h.stateNode,m?b.insertBefore(h,m):b.appendChild(h);else if(E!==4&&(E===27&&Cu(h.type)&&(b=h.stateNode),h=h.child,h!==null))for(x6(h,m,b),h=h.sibling;h!==null;)x6(h,m,b),h=h.sibling}function yme(h){var m=h.stateNode,b=h.memoizedProps;try{for(var E=h.type,D=m.attributes;D.length;)m.removeAttributeNode(D[0]);yo(m,E,b),m[Nr]=h,m[Mn]=b}catch(N){gr(h,h.return,N)}}var qc=!1,In=!1,tN=!1,vme=typeof WeakSet=="function"?WeakSet:Set,io=null;function Txt(h,m){if(h=h.containerInfo,kN=F6,h=The(h),YD(h)){if("selectionStart"in h)var b={start:h.selectionStart,end:h.selectionEnd};else e:{b=(b=h.ownerDocument)&&b.defaultView||window;var E=b.getSelection&&b.getSelection();if(E&&E.rangeCount!==0){b=E.anchorNode;var D=E.anchorOffset,N=E.focusNode;E=E.focusOffset;try{b.nodeType,N.nodeType}catch{b=null;break e}var X=0,ne=-1,se=-1,ge=0,Ee=0,Re=h,ye=null;t:for(;;){for(var we;Re!==b||D!==0&&Re.nodeType!==3||(ne=X+D),Re!==N||E!==0&&Re.nodeType!==3||(se=X+E),Re.nodeType===3&&(X+=Re.nodeValue.length),(we=Re.firstChild)!==null;)ye=Re,Re=we;for(;;){if(Re===h)break t;if(ye===b&&++ge===D&&(ne=X),ye===N&&++Ee===E&&(se=X),(we=Re.nextSibling)!==null)break;Re=ye,ye=Re.parentNode}Re=we}b=ne===-1||se===-1?null:{start:ne,end:se}}else b=null}b=b||{start:0,end:0}}else b=null;for(_N={focusedElem:h,selectionRange:b},F6=!1,io=m;io!==null;)if(m=io,h=m.child,(m.subtreeFlags&1028)!==0&&h!==null)h.return=m,io=h;else for(;io!==null;){switch(m=io,N=m.alternate,h=m.flags,m.tag){case 0:if((h&4)!==0&&(h=m.updateQueue,h=h!==null?h.events:null,h!==null))for(b=0;b title"))),yo(N,E,b),N[Nr]=h,Wr(N),E=N;break e;case"link":var X=Sge("link","href",D).get(E+(b.href||""));if(X){for(var ne=0;ne_r&&(X=_r,_r=bt,bt=X);var he=Rhe(ne,bt),de=Rhe(ne,_r);if(he&&de&&(we.rangeCount!==1||we.anchorNode!==he.node||we.anchorOffset!==he.offset||we.focusNode!==de.node||we.focusOffset!==de.offset)){var me=Re.createRange();me.setStart(he.node,he.offset),we.removeAllRanges(),bt>_r?(we.addRange(me),we.extend(de.node,de.offset)):(me.setEnd(de.node,de.offset),we.addRange(me))}}}}for(Re=[],we=ne;we=we.parentNode;)we.nodeType===1&&Re.push({element:we,left:we.scrollLeft,top:we.scrollTop});for(typeof ne.focus=="function"&&ne.focus(),ne=0;neb?32:b,B.T=null,b=sN,sN=null;var N=_u,X=Yc;if(Gn=0,Fg=_u=null,Yc=0,(cr&6)!==0)throw Error(o(331));var ne=cr;if(cr|=4,zme(N.current),Cme(N,N.current,X,b),cr=ne,ab(0,!1),Ht&&typeof Ht.onPostCommitFiberRoot=="function")try{Ht.onPostCommitFiberRoot(qt,N)}catch{}return!0}finally{F.p=D,B.T=E,Gme(h,m)}}function Xme(h,m,b){m=Na(b,m),m=FM(h.stateNode,m,2),h=gu(h,m,2),h!==null&&(Ml(h,2),js(h))}function gr(h,m,b){if(h.tag===3)Xme(h,h,b);else for(;m!==null;){if(m.tag===3){Xme(m,h,b);break}else if(m.tag===1){var E=m.stateNode;if(typeof m.type.getDerivedStateFromError=="function"||typeof E.componentDidCatch=="function"&&(ku===null||!ku.has(E))){h=Na(b,h),b=Kfe(2),E=gu(m,b,2),E!==null&&(Zfe(b,E,m,h),Ml(E,2),js(E));break}}m=m.return}}function pN(h,m,b){var E=h.pingCache;if(E===null){E=h.pingCache=new Dxt;var D=new Set;E.set(m,D)}else D=E.get(m),D===void 0&&(D=new Set,E.set(m,D));D.has(b)||(oN=!0,D.add(b),h=Ixt.bind(null,h,m,b),m.then(h,h))}function Ixt(h,m,b){var E=h.pingCache;E!==null&&E.delete(m),h.pingedLanes|=h.suspendedLanes&b,h.warmLanes&=~b,Er===h&&(Yt&b)===b&&(cn===4||cn===3&&(Yt&62914560)===Yt&&300>It()-_6?(cr&2)===0&&Vg(h,0):iN|=b,Lg===Yt&&(Lg=0)),js(h)}function Kme(h,m){m===0&&(m=ws()),h=mh(h,m),h!==null&&(Ml(h,m),js(h))}function Oxt(h){var m=h.memoizedState,b=0;m!==null&&(b=m.retryLane),Kme(h,b)}function Lxt(h,m){var b=0;switch(h.tag){case 31:case 13:var E=h.stateNode,D=h.memoizedState;D!==null&&(b=D.retryLane);break;case 19:E=h.stateNode;break;case 22:E=h.stateNode._retryCache;break;default:throw Error(o(314))}E!==null&&E.delete(m),Kme(h,b)}function Fxt(h,m){return St(h,m)}var T6=null,Hg=null,hN=!1,j6=!1,fN=!1,Eu=0;function js(h){h!==Hg&&h.next===null&&(Hg===null?T6=Hg=h:Hg=Hg.next=h),j6=!0,hN||(hN=!0,qxt())}function ab(h,m){if(!fN&&j6){fN=!0;do for(var b=!1,E=T6;E!==null;){if(h!==0){var D=E.pendingLanes;if(D===0)var N=0;else{var X=E.suspendedLanes,ne=E.pingedLanes;N=(1<<31-Gt(42|h)+1)-1,N&=D&~(X&~ne),N=N&201326741?N&201326741|1:N?N|2:0}N!==0&&(b=!0,ege(E,N))}else N=Yt,N=Dl(E,E===Er?N:0,E.cancelPendingCommit!==null||E.timeoutHandle!==-1),(N&3)===0||Ao(E,N)||(b=!0,ege(E,N));E=E.next}while(b);fN=!1}}function Vxt(){Zme()}function Zme(){j6=hN=!1;var h=0;Eu!==0&&Jxt()&&(h=Eu);for(var m=It(),b=null,E=T6;E!==null;){var D=E.next,N=Qme(E,m);N===0?(E.next=null,b===null?T6=D:b.next=D,D===null&&(Hg=b)):(b=E,(h!==0||(N&3)!==0)&&(j6=!0)),E=D}Gn!==0&&Gn!==5||ab(h),Eu!==0&&(Eu=0)}function Qme(h,m){for(var b=h.suspendedLanes,E=h.pingedLanes,D=h.expirationTimes,N=h.pendingLanes&-62914561;0ne)break;var Ee=se.transferSize,Re=se.initiatorType;Ee&&sge(Re)&&(se=se.responseEnd,X+=Ee*(se"u"?null:document;function xge(h,m,b){var E=Ug;if(E&&typeof m=="string"&&m){var D=J(m);D='link[rel="'+h+'"][href="'+D+'"]',typeof b=="string"&&(D+='[crossorigin="'+b+'"]'),bge.has(D)||(bge.add(D),h={rel:h,crossOrigin:b,href:m},E.querySelector(D)===null&&(m=E.createElement("link"),yo(m,"link",h),Wr(m),E.head.appendChild(m)))}}function swt(h){Xc.D(h),xge("dns-prefetch",h,null)}function cwt(h,m){Xc.C(h,m),xge("preconnect",h,m)}function dwt(h,m,b){Xc.L(h,m,b);var E=Ug;if(E&&h&&m){var D='link[rel="preload"][as="'+J(m)+'"]';m==="image"&&b&&b.imageSrcSet?(D+='[imagesrcset="'+J(b.imageSrcSet)+'"]',typeof b.imageSizes=="string"&&(D+='[imagesizes="'+J(b.imageSizes)+'"]')):D+='[href="'+J(h)+'"]';var N=D;switch(m){case"style":N=Wg(h);break;case"script":N=Gg(h)}Fa.has(N)||(h=p({rel:"preload",href:m==="image"&&b&&b.imageSrcSet?void 0:h,as:m},b),Fa.set(N,h),E.querySelector(D)!==null||m==="style"&&E.querySelector(db(N))||m==="script"&&E.querySelector(ub(N))||(m=E.createElement("link"),yo(m,"link",h),Wr(m),E.head.appendChild(m)))}}function uwt(h,m){Xc.m(h,m);var b=Ug;if(b&&h){var E=m&&typeof m.as=="string"?m.as:"script",D='link[rel="modulepreload"][as="'+J(E)+'"][href="'+J(h)+'"]',N=D;switch(E){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":N=Gg(h)}if(!Fa.has(N)&&(h=p({rel:"modulepreload",href:h},m),Fa.set(N,h),b.querySelector(D)===null)){switch(E){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(b.querySelector(ub(N)))return}E=b.createElement("link"),yo(E,"link",h),Wr(E),b.head.appendChild(E)}}}function pwt(h,m,b){Xc.S(h,m,b);var E=Ug;if(E&&h){var D=ho(E).hoistableStyles,N=Wg(h);m=m||"default";var X=D.get(N);if(!X){var ne={loading:0,preload:null};if(X=E.querySelector(db(N)))ne.loading=5;else{h=p({rel:"stylesheet",href:h,"data-precedence":m},b),(b=Fa.get(N))&&TN(h,b);var se=X=E.createElement("link");Wr(se),yo(se,"link",h),se._p=new Promise(function(ge,Ee){se.onload=ge,se.onerror=Ee}),se.addEventListener("load",function(){ne.loading|=1}),se.addEventListener("error",function(){ne.loading|=2}),ne.loading|=4,P6(X,m,E)}X={type:"stylesheet",instance:X,count:1,state:ne},D.set(N,X)}}}function hwt(h,m){Xc.X(h,m);var b=Ug;if(b&&h){var E=ho(b).hoistableScripts,D=Gg(h),N=E.get(D);N||(N=b.querySelector(ub(D)),N||(h=p({src:h,async:!0},m),(m=Fa.get(D))&&jN(h,m),N=b.createElement("script"),Wr(N),yo(N,"link",h),b.head.appendChild(N)),N={type:"script",instance:N,count:1,state:null},E.set(D,N))}}function fwt(h,m){Xc.M(h,m);var b=Ug;if(b&&h){var E=ho(b).hoistableScripts,D=Gg(h),N=E.get(D);N||(N=b.querySelector(ub(D)),N||(h=p({src:h,async:!0,type:"module"},m),(m=Fa.get(D))&&jN(h,m),N=b.createElement("script"),Wr(N),yo(N,"link",h),b.head.appendChild(N)),N={type:"script",instance:N,count:1,state:null},E.set(D,N))}}function wge(h,m,b,E){var D=(D=Q.current)?N6(D):null;if(!D)throw Error(o(446));switch(h){case"meta":case"title":return null;case"style":return typeof b.precedence=="string"&&typeof b.href=="string"?(m=Wg(b.href),b=ho(D).hoistableStyles,E=b.get(m),E||(E={type:"style",instance:null,count:0,state:null},b.set(m,E)),E):{type:"void",instance:null,count:0,state:null};case"link":if(b.rel==="stylesheet"&&typeof b.href=="string"&&typeof b.precedence=="string"){h=Wg(b.href);var N=ho(D).hoistableStyles,X=N.get(h);if(X||(D=D.ownerDocument||D,X={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},N.set(h,X),(N=D.querySelector(db(h)))&&!N._p&&(X.instance=N,X.state.loading=5),Fa.has(h)||(b={rel:"preload",as:"style",href:b.href,crossOrigin:b.crossOrigin,integrity:b.integrity,media:b.media,hrefLang:b.hrefLang,referrerPolicy:b.referrerPolicy},Fa.set(h,b),N||mwt(D,h,b,X.state))),m&&E===null)throw Error(o(528,""));return X}if(m&&E!==null)throw Error(o(529,""));return null;case"script":return m=b.async,b=b.src,typeof b=="string"&&m&&typeof m!="function"&&typeof m!="symbol"?(m=Gg(b),b=ho(D).hoistableScripts,E=b.get(m),E||(E={type:"script",instance:null,count:0,state:null},b.set(m,E)),E):{type:"void",instance:null,count:0,state:null};default:throw Error(o(444,h))}}function Wg(h){return'href="'+J(h)+'"'}function db(h){return'link[rel="stylesheet"]['+h+"]"}function kge(h){return p({},h,{"data-precedence":h.precedence,precedence:null})}function mwt(h,m,b,E){h.querySelector('link[rel="preload"][as="style"]['+m+"]")?E.loading=1:(m=h.createElement("link"),E.preload=m,m.addEventListener("load",function(){return E.loading|=1}),m.addEventListener("error",function(){return E.loading|=2}),yo(m,"link",b),Wr(m),h.head.appendChild(m))}function Gg(h){return'[src="'+J(h)+'"]'}function ub(h){return"script[async]"+h}function _ge(h,m,b){if(m.count++,m.instance===null)switch(m.type){case"style":var E=h.querySelector('style[data-href~="'+J(b.href)+'"]');if(E)return m.instance=E,Wr(E),E;var D=p({},b,{"data-href":b.href,"data-precedence":b.precedence,href:null,precedence:null});return E=(h.ownerDocument||h).createElement("style"),Wr(E),yo(E,"style",D),P6(E,b.precedence,h),m.instance=E;case"stylesheet":D=Wg(b.href);var N=h.querySelector(db(D));if(N)return m.state.loading|=4,m.instance=N,Wr(N),N;E=kge(b),(D=Fa.get(D))&&TN(E,D),N=(h.ownerDocument||h).createElement("link"),Wr(N);var X=N;return X._p=new Promise(function(ne,se){X.onload=ne,X.onerror=se}),yo(N,"link",E),m.state.loading|=4,P6(N,b.precedence,h),m.instance=N;case"script":return N=Gg(b.src),(D=h.querySelector(ub(N)))?(m.instance=D,Wr(D),D):(E=b,(D=Fa.get(N))&&(E=p({},b),jN(E,D)),h=h.ownerDocument||h,D=h.createElement("script"),Wr(D),yo(D,"link",E),h.head.appendChild(D),m.instance=D);case"void":return null;default:throw Error(o(443,m.type))}else m.type==="stylesheet"&&(m.state.loading&4)===0&&(E=m.instance,m.state.loading|=4,P6(E,b.precedence,h));return m.instance}function P6(h,m,b){for(var E=b.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),D=E.length?E[E.length-1]:null,N=D,X=0;X title"):null)}function gwt(h,m,b){if(b===1||m.itemProp!=null)return!1;switch(h){case"meta":case"title":return!0;case"style":if(typeof m.precedence!="string"||typeof m.href!="string"||m.href==="")break;return!0;case"link":if(typeof m.rel!="string"||typeof m.href!="string"||m.href===""||m.onLoad||m.onError)break;switch(m.rel){case"stylesheet":return h=m.disabled,typeof m.precedence=="string"&&h==null;default:return!0}case"script":if(m.async&&typeof m.async!="function"&&typeof m.async!="symbol"&&!m.onLoad&&!m.onError&&m.src&&typeof m.src=="string")return!0}return!1}function Cge(h){return!(h.type==="stylesheet"&&(h.state.loading&3)===0)}function ywt(h,m,b,E){if(b.type==="stylesheet"&&(typeof E.media!="string"||matchMedia(E.media).matches!==!1)&&(b.state.loading&4)===0){if(b.instance===null){var D=Wg(E.href),N=m.querySelector(db(D));if(N){m=N._p,m!==null&&typeof m=="object"&&typeof m.then=="function"&&(h.count++,h=I6.bind(h),m.then(h,h)),b.state.loading|=4,b.instance=N,Wr(N);return}N=m.ownerDocument||m,E=kge(E),(D=Fa.get(D))&&TN(E,D),N=N.createElement("link"),Wr(N);var X=N;X._p=new Promise(function(ne,se){X.onload=ne,X.onerror=se}),yo(N,"link",E),b.instance=N}h.stylesheets===null&&(h.stylesheets=new Map),h.stylesheets.set(b,m),(m=b.state.preload)&&(b.state.loading&3)===0&&(h.count++,b=I6.bind(h),m.addEventListener("load",b),m.addEventListener("error",b))}}var AN=0;function vwt(h,m){return h.stylesheets&&h.count===0&&L6(h,h.stylesheets),0AN?50:800)+m);return h.unsuspend=b,function(){h.unsuspend=null,clearTimeout(E),clearTimeout(D)}}:null}function I6(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)L6(this,this.stylesheets);else if(this.unsuspend){var h=this.unsuspend;this.unsuspend=null,h()}}}var O6=null;function L6(h,m){h.stylesheets=null,h.unsuspend!==null&&(h.count++,O6=new Map,m.forEach(bwt,h),O6=null,I6.call(h))}function bwt(h,m){if(!(m.state.loading&4)){var b=O6.get(h);if(b)var E=b.get(null);else{b=new Map,O6.set(h,b);for(var D=h.querySelectorAll("link[data-precedence],style[data-precedence]"),N=0;N"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(r){console.error(r)}}return e(),$z.exports=tet(),$z.exports}var net=ret();const oet={View:"likec4-view"};let Tz="/";Tz.endsWith("/")||(Tz=Tz+"/");var ls=function(){return ls=Object.assign||function(e){for(var r,n=1,o=arguments.length;n"u")return ket;var r=_et(e),n=document.documentElement.clientWidth,o=window.innerWidth;return{left:r[0],top:r[1],right:r[2],gap:Math.max(0,o-n+r[2]-r[0])}},Cet=pne(),Mm="data-scroll-locked",$et=function(e,r,n,o){var i=e.left,a=e.top,l=e.right,s=e.gap;return n===void 0&&(n="margin"),` +`+E.stack}}var Le=Object.prototype.hasOwnProperty,St=e.unstable_scheduleCallback,Ve=e.unstable_cancelCallback,qe=e.unstable_shouldYield,Xe=e.unstable_requestPaint,It=e.unstable_now,Et=e.unstable_getCurrentPriorityLevel,be=e.unstable_ImmediatePriority,ke=e.unstable_UserBlockingPriority,Ye=e.unstable_NormalPriority,yt=e.unstable_LowPriority,xt=e.unstable_IdlePriority,Tr=e.log,er=e.unstable_setDisableYieldValue,qt=null,Ht=null;function Kr(h){if(typeof Tr=="function"&&er(h),Ht&&typeof Ht.setStrictMode=="function")try{Ht.setStrictMode(qt,h)}catch{}}var Gt=Math.clz32?Math.clz32:fn,ln=Math.log,Wn=Math.LN2;function fn(h){return h>>>=0,h===0?32:31-(ln(h)/Wn|0)|0}var oo=256,Yo=262144,jo=4194304;function ui(h){var g=h&42;if(g!==0)return g;switch(h&-h){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return h&261888;case 262144:case 524288:case 1048576:case 2097152:return h&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return h&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return h}}function Dl(h,g,b){var E=h.pendingLanes;if(E===0)return 0;var D=0,M=h.suspendedLanes,X=h.pingedLanes;h=h.warmLanes;var ne=E&134217727;return ne!==0?(E=ne&~M,E!==0?D=ui(E):(X&=ne,X!==0?D=ui(X):b||(b=ne&~h,b!==0&&(D=ui(b))))):(ne=E&~M,ne!==0?D=ui(ne):X!==0?D=ui(X):b||(b=E&~h,b!==0&&(D=ui(b)))),D===0?0:g!==0&&g!==D&&(g&M)===0&&(M=D&-D,b=g&-g,M>=b||M===32&&(b&4194048)!==0)?g:D}function Ao(h,g){return(h.pendingLanes&~(h.suspendedLanes&~h.pingedLanes)&g)===0}function xs(h,g){switch(h){case 1:case 2:case 4:case 8:case 64:return g+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return g+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function ws(){var h=jo;return jo<<=1,(jo&62914560)===0&&(jo=4194304),h}function zc(h){for(var g=[],b=0;31>b;b++)g.push(h);return g}function Pl(h,g){h.pendingLanes|=g,g!==268435456&&(h.suspendedLanes=0,h.pingedLanes=0,h.warmLanes=0)}function lh(h,g,b,E,D,M){var X=h.pendingLanes;h.pendingLanes=b,h.suspendedLanes=0,h.pingedLanes=0,h.warmLanes=0,h.expiredLanes&=b,h.entangledLanes&=b,h.errorRecoveryDisabledLanes&=b,h.shellSuspendCounter=0;var ne=h.entanglements,se=h.expirationTimes,me=h.hiddenUpdates;for(b=X&~b;0"u")return null;try{return h.activeElement||h.body}catch{return h.body}}var lu=/[\n"\\]/g;function J(h){return h.replace(lu,function(g){return"\\"+g.charCodeAt(0).toString(16)+" "})}function ee(h,g,b,E,D,M,X,ne){h.name="",X!=null&&typeof X!="function"&&typeof X!="symbol"&&typeof X!="boolean"?h.type=X:h.removeAttribute("type"),g!=null?X==="number"?(g===0&&h.value===""||h.value!=g)&&(h.value=""+Gr(g)):h.value!==""+Gr(g)&&(h.value=""+Gr(g)):X!=="submit"&&X!=="reset"||h.removeAttribute("value"),g!=null?ae(h,X,Gr(g)):b!=null?ae(h,X,Gr(b)):E!=null&&h.removeAttribute("value"),D==null&&M!=null&&(h.defaultChecked=!!M),D!=null&&(h.checked=D&&typeof D!="function"&&typeof D!="symbol"),ne!=null&&typeof ne!="function"&&typeof ne!="symbol"&&typeof ne!="boolean"?h.name=""+Gr(ne):h.removeAttribute("name")}function oe(h,g,b,E,D,M,X,ne){if(M!=null&&typeof M!="function"&&typeof M!="symbol"&&typeof M!="boolean"&&(h.type=M),g!=null||b!=null){if(!(M!=="submit"&&M!=="reset"||g!=null)){Aa(h);return}b=b!=null?""+Gr(b):"",g=g!=null?""+Gr(g):b,ne||g===h.value||(h.value=g),h.defaultValue=g}E=E??D,E=typeof E!="function"&&typeof E!="symbol"&&!!E,h.checked=ne?h.checked:!!E,h.defaultChecked=!!E,X!=null&&typeof X!="function"&&typeof X!="symbol"&&typeof X!="boolean"&&(h.name=X),Aa(h)}function ae(h,g,b){g==="number"&&Da(h.ownerDocument)===h||h.defaultValue===""+b||(h.defaultValue=""+b)}function le(h,g,b,E){if(h=h.options,g){g={};for(var D=0;D"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),OD=!1;if(Pc)try{var Tv={};Object.defineProperty(Tv,"passive",{get:function(){OD=!0}}),window.addEventListener("test",Tv,Tv),window.removeEventListener("test",Tv,Tv)}catch{OD=!1}var cu=null,LD=null,Lk=null;function dhe(){if(Lk)return Lk;var h,g=LD,b=g.length,E,D="value"in cu?cu.value:cu.textContent,M=D.length;for(h=0;h=Dv),mhe=" ",yhe=!1;function vhe(h,g){switch(h){case"keyup":return Kbt.indexOf(g.keyCode)!==-1;case"keydown":return g.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function bhe(h){return h=h.detail,typeof h=="object"&&"data"in h?h.data:null}var xm=!1;function Qbt(h,g){switch(h){case"compositionend":return bhe(g);case"keypress":return g.which!==32?null:(yhe=!0,mhe);case"textInput":return h=g.data,h===mhe&&yhe?null:h;default:return null}}function Jbt(h,g){if(xm)return h==="compositionend"||!UD&&vhe(h,g)?(h=dhe(),Lk=LD=cu=null,xm=!1,h):null;switch(h){case"paste":return null;case"keypress":if(!(g.ctrlKey||g.altKey||g.metaKey)||g.ctrlKey&&g.altKey){if(g.char&&1=g)return{node:b,offset:g-h};h=E}e:{for(;b;){if(b.nextSibling){b=b.nextSibling;break e}b=b.parentNode}b=void 0}b=$he(b)}}function zhe(h,g){return h&&g?h===g?!0:h&&h.nodeType===3?!1:g&&g.nodeType===3?zhe(h,g.parentNode):"contains"in h?h.contains(g):h.compareDocumentPosition?!!(h.compareDocumentPosition(g)&16):!1:!1}function The(h){h=h!=null&&h.ownerDocument!=null&&h.ownerDocument.defaultView!=null?h.ownerDocument.defaultView:window;for(var g=Da(h.document);g instanceof h.HTMLIFrameElement;){try{var b=typeof g.contentWindow.location.href=="string"}catch{b=!1}if(b)h=g.contentWindow;else break;g=Da(h.document)}return g}function YD(h){var g=h&&h.nodeName&&h.nodeName.toLowerCase();return g&&(g==="input"&&(h.type==="text"||h.type==="search"||h.type==="tel"||h.type==="url"||h.type==="password")||g==="textarea"||h.contentEditable==="true")}var lxt=Pc&&"documentMode"in document&&11>=document.documentMode,wm=null,XD=null,Bv=null,KD=!1;function jhe(h,g,b){var E=b.window===b?b.document:b.nodeType===9?b:b.ownerDocument;KD||wm==null||wm!==Da(E)||(E=wm,"selectionStart"in E&&YD(E)?E={start:E.selectionStart,end:E.selectionEnd}:(E=(E.ownerDocument&&E.ownerDocument.defaultView||window).getSelection(),E={anchorNode:E.anchorNode,anchorOffset:E.anchorOffset,focusNode:E.focusNode,focusOffset:E.focusOffset}),Bv&&Nv(Bv,E)||(Bv=E,E=D6(XD,"onSelect"),0>=X,D-=X,Rs=1<<32-Gt(g)+D|b<Nt?(Xt=nt,nt=null):Xt=nt.sibling;var ir=ye(he,nt,ge[Nt],Ce);if(ir===null){nt===null&&(nt=Xt);break}h&&nt&&ir.alternate===null&&g(he,nt),de=M(ir,de,Nt),or===null?ct=ir:or.sibling=ir,or=ir,nt=Xt}if(Nt===ge.length)return b(he,nt),Kt&&Nc(he,Nt),ct;if(nt===null){for(;NtNt?(Xt=nt,nt=null):Xt=nt.sibling;var ju=ye(he,nt,ir.value,Ce);if(ju===null){nt===null&&(nt=Xt);break}h&&nt&&ju.alternate===null&&g(he,nt),de=M(ju,de,Nt),or===null?ct=ju:or.sibling=ju,or=ju,nt=Xt}if(ir.done)return b(he,nt),Kt&&Nc(he,Nt),ct;if(nt===null){for(;!ir.done;Nt++,ir=ge.next())ir=Re(he,ir.value,Ce),ir!==null&&(de=M(ir,de,Nt),or===null?ct=ir:or.sibling=ir,or=ir);return Kt&&Nc(he,Nt),ct}for(nt=E(nt);!ir.done;Nt++,ir=ge.next())ir=we(nt,he,Nt,ir.value,Ce),ir!==null&&(h&&ir.alternate!==null&&nt.delete(ir.key===null?Nt:ir.key),de=M(ir,de,Nt),or===null?ct=ir:or.sibling=ir,or=ir);return h&&nt.forEach(function($wt){return g(he,$wt)}),Kt&&Nc(he,Nt),ct}function _r(he,de,ge,Ce){if(typeof ge=="object"&&ge!==null&&ge.type===w&&ge.key===null&&(ge=ge.props.children),typeof ge=="object"&&ge!==null){switch(ge.$$typeof){case m:e:{for(var ct=ge.key;de!==null;){if(de.key===ct){if(ct=ge.type,ct===w){if(de.tag===7){b(he,de.sibling),Ce=D(de,ge.props.children),Ce.return=he,he=Ce;break e}}else if(de.elementType===ct||typeof ct=="object"&&ct!==null&&ct.$$typeof===z&&wh(ct)===de.type){b(he,de.sibling),Ce=D(de,ge.props),qv(Ce,ge),Ce.return=he,he=Ce;break e}b(he,de);break}else g(he,de);de=de.sibling}ge.type===w?(Ce=mh(ge.props.children,he.mode,Ce,ge.key),Ce.return=he,he=Ce):(Ce=Kk(ge.type,ge.key,ge.props,null,he.mode,Ce),qv(Ce,ge),Ce.return=he,he=Ce)}return X(he);case v:e:{for(ct=ge.key;de!==null;){if(de.key===ct)if(de.tag===4&&de.stateNode.containerInfo===ge.containerInfo&&de.stateNode.implementation===ge.implementation){b(he,de.sibling),Ce=D(de,ge.children||[]),Ce.return=he,he=Ce;break e}else{b(he,de);break}else g(he,de);de=de.sibling}Ce=nP(ge,he.mode,Ce),Ce.return=he,he=Ce}return X(he);case z:return ge=wh(ge),_r(he,de,ge,Ce)}if(V(ge))return et(he,de,ge,Ce);if(L(ge)){if(ct=L(ge),typeof ct!="function")throw Error(o(150));return ge=ct.call(ge),bt(he,de,ge,Ce)}if(typeof ge.then=="function")return _r(he,de,n6(ge),Ce);if(ge.$$typeof===_)return _r(he,de,Jk(he,ge),Ce);o6(he,ge)}return typeof ge=="string"&&ge!==""||typeof ge=="number"||typeof ge=="bigint"?(ge=""+ge,de!==null&&de.tag===6?(b(he,de.sibling),Ce=D(de,ge),Ce.return=he,he=Ce):(b(he,de),Ce=rP(ge,he.mode,Ce),Ce.return=he,he=Ce),X(he)):b(he,de)}return function(he,de,ge,Ce){try{Vv=0;var ct=_r(he,de,ge,Ce);return Am=null,ct}catch(nt){if(nt===jm||nt===t6)throw nt;var or=Hi(29,nt,null,he.mode);return or.lanes=Ce,or.return=he,or}}}var _h=efe(!0),tfe=efe(!1),fu=!1;function gP(h){h.updateQueue={baseState:h.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function mP(h,g){h=h.updateQueue,g.updateQueue===h&&(g.updateQueue={baseState:h.baseState,firstBaseUpdate:h.firstBaseUpdate,lastBaseUpdate:h.lastBaseUpdate,shared:h.shared,callbacks:null})}function gu(h){return{lane:h,tag:0,payload:null,callback:null,next:null}}function mu(h,g,b){var E=h.updateQueue;if(E===null)return null;if(E=E.shared,(cr&2)!==0){var D=E.pending;return D===null?g.next=g:(g.next=D.next,D.next=g),E.pending=g,g=Xk(h),Ihe(h,null,b),g}return Yk(h,E,g,b),Xk(h)}function Hv(h,g,b){if(g=g.updateQueue,g!==null&&(g=g.shared,(b&4194048)!==0)){var E=g.lanes;E&=h.pendingLanes,b|=E,g.lanes=b,tu(h,b)}}function yP(h,g){var b=h.updateQueue,E=h.alternate;if(E!==null&&(E=E.updateQueue,b===E)){var D=null,M=null;if(b=b.firstBaseUpdate,b!==null){do{var X={lane:b.lane,tag:b.tag,payload:b.payload,callback:null,next:null};M===null?D=M=X:M=M.next=X,b=b.next}while(b!==null);M===null?D=M=g:M=M.next=g}else D=M=g;b={baseState:E.baseState,firstBaseUpdate:D,lastBaseUpdate:M,shared:E.shared,callbacks:E.callbacks},h.updateQueue=b;return}h=b.lastBaseUpdate,h===null?b.firstBaseUpdate=g:h.next=g,b.lastBaseUpdate=g}var vP=!1;function Uv(){if(vP){var h=Tm;if(h!==null)throw h}}function Wv(h,g,b,E){vP=!1;var D=h.updateQueue;fu=!1;var M=D.firstBaseUpdate,X=D.lastBaseUpdate,ne=D.shared.pending;if(ne!==null){D.shared.pending=null;var se=ne,me=se.next;se.next=null,X===null?M=me:X.next=me,X=se;var Ee=h.alternate;Ee!==null&&(Ee=Ee.updateQueue,ne=Ee.lastBaseUpdate,ne!==X&&(ne===null?Ee.firstBaseUpdate=me:ne.next=me,Ee.lastBaseUpdate=se))}if(M!==null){var Re=D.baseState;X=0,Ee=me=se=null,ne=M;do{var ye=ne.lane&-536870913,we=ye!==ne.lane;if(we?(Yt&ye)===ye:(E&ye)===ye){ye!==0&&ye===zm&&(vP=!0),Ee!==null&&(Ee=Ee.next={lane:0,tag:ne.tag,payload:ne.payload,callback:null,next:null});e:{var et=h,bt=ne;ye=g;var _r=b;switch(bt.tag){case 1:if(et=bt.payload,typeof et=="function"){Re=et.call(_r,Re,ye);break e}Re=et;break e;case 3:et.flags=et.flags&-65537|128;case 0:if(et=bt.payload,ye=typeof et=="function"?et.call(_r,Re,ye):et,ye==null)break e;Re=p({},Re,ye);break e;case 2:fu=!0}}ye=ne.callback,ye!==null&&(h.flags|=64,we&&(h.flags|=8192),we=D.callbacks,we===null?D.callbacks=[ye]:we.push(ye))}else we={lane:ye,tag:ne.tag,payload:ne.payload,callback:ne.callback,next:null},Ee===null?(me=Ee=we,se=Re):Ee=Ee.next=we,X|=ye;if(ne=ne.next,ne===null){if(ne=D.shared.pending,ne===null)break;we=ne,ne=we.next,we.next=null,D.lastBaseUpdate=we,D.shared.pending=null}}while(!0);Ee===null&&(se=Re),D.baseState=se,D.firstBaseUpdate=me,D.lastBaseUpdate=Ee,M===null&&(D.shared.lanes=0),wu|=X,h.lanes=X,h.memoizedState=Re}}function rfe(h,g){if(typeof h!="function")throw Error(o(191,h));h.call(g)}function nfe(h,g){var b=h.callbacks;if(b!==null)for(h.callbacks=null,h=0;hM?M:8;var X=B.T,ne={};B.T=ne,BP(h,!1,g,b);try{var se=D(),me=B.S;if(me!==null&&me(ne,se),se!==null&&typeof se=="object"&&typeof se.then=="function"){var Ee=mxt(se,E);Xv(h,g,Ee,Xi(h))}else Xv(h,g,E,Xi(h))}catch(Re){Xv(h,g,{then:function(){},status:"rejected",reason:Re},Xi())}finally{F.p=M,X!==null&&ne.types!==null&&(X.types=ne.types),B.T=X}}function kxt(){}function MP(h,g,b,E){if(h.tag!==5)throw Error(o(476));var D=Mfe(h).queue;Pfe(h,D,g,q,b===null?kxt:function(){return Nfe(h),b(E)})}function Mfe(h){var g=h.memoizedState;if(g!==null)return g;g={memoizedState:q,baseState:q,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Lc,lastRenderedState:q},next:null};var b={};return g.next={memoizedState:b,baseState:b,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Lc,lastRenderedState:b},next:null},h.memoizedState=g,h=h.alternate,h!==null&&(h.memoizedState=g),g}function Nfe(h){var g=Mfe(h);g.next===null&&(g=h.alternate.memoizedState),Xv(h,g.next.queue,{},Xi())}function NP(){return go(pb)}function Bfe(){return mn().memoizedState}function Ife(){return mn().memoizedState}function _xt(h){for(var g=h.return;g!==null;){switch(g.tag){case 24:case 3:var b=Xi();h=gu(b);var E=mu(g,h,b);E!==null&&(vi(E,g,b),Hv(E,g,b)),g={cache:uP()},h.payload=g;return}g=g.return}}function Sxt(h,g,b){var E=Xi();b={lane:E,revertLane:0,gesture:null,action:b,hasEagerState:!1,eagerState:null,next:null},f6(h)?Lfe(g,b):(b=eP(h,g,b,E),b!==null&&(vi(b,h,E),Ffe(b,g,E)))}function Ofe(h,g,b){var E=Xi();Xv(h,g,b,E)}function Xv(h,g,b,E){var D={lane:E,revertLane:0,gesture:null,action:b,hasEagerState:!1,eagerState:null,next:null};if(f6(h))Lfe(g,D);else{var M=h.alternate;if(h.lanes===0&&(M===null||M.lanes===0)&&(M=g.lastRenderedReducer,M!==null))try{var X=g.lastRenderedState,ne=M(X,b);if(D.hasEagerState=!0,D.eagerState=ne,qi(ne,X))return Yk(h,g,D,0),Er===null&&Gk(),!1}catch{}if(b=eP(h,g,D,E),b!==null)return vi(b,h,E),Ffe(b,g,E),!0}return!1}function BP(h,g,b,E){if(E={lane:2,revertLane:gM(),gesture:null,action:E,hasEagerState:!1,eagerState:null,next:null},f6(h)){if(g)throw Error(o(479))}else g=eP(h,b,E,2),g!==null&&vi(g,h,2)}function f6(h){var g=h.alternate;return h===Pt||g!==null&&g===Pt}function Lfe(h,g){Pm=l6=!0;var b=h.pending;b===null?g.next=g:(g.next=b.next,b.next=g),h.pending=g}function Ffe(h,g,b){if((b&4194048)!==0){var E=g.lanes;E&=h.pendingLanes,b|=E,g.lanes=b,tu(h,b)}}var Kv={readContext:go,use:d6,useCallback:sn,useContext:sn,useEffect:sn,useImperativeHandle:sn,useLayoutEffect:sn,useInsertionEffect:sn,useMemo:sn,useReducer:sn,useRef:sn,useState:sn,useDebugValue:sn,useDeferredValue:sn,useTransition:sn,useSyncExternalStore:sn,useId:sn,useHostTransitionStatus:sn,useFormState:sn,useActionState:sn,useOptimistic:sn,useMemoCache:sn,useCacheRefresh:sn};Kv.useEffectEvent=sn;var Vfe={readContext:go,use:d6,useCallback:function(h,g){return Zo().memoizedState=[h,g===void 0?null:g],h},useContext:go,useEffect:Efe,useImperativeHandle:function(h,g,b){b=b!=null?b.concat([h]):null,p6(4194308,4,zfe.bind(null,g,h),b)},useLayoutEffect:function(h,g){return p6(4194308,4,h,g)},useInsertionEffect:function(h,g){p6(4,2,h,g)},useMemo:function(h,g){var b=Zo();g=g===void 0?null:g;var E=h();if(Sh){Kr(!0);try{h()}finally{Kr(!1)}}return b.memoizedState=[E,g],E},useReducer:function(h,g,b){var E=Zo();if(b!==void 0){var D=b(g);if(Sh){Kr(!0);try{b(g)}finally{Kr(!1)}}}else D=g;return E.memoizedState=E.baseState=D,h={pending:null,lanes:0,dispatch:null,lastRenderedReducer:h,lastRenderedState:D},E.queue=h,h=h.dispatch=Sxt.bind(null,Pt,h),[E.memoizedState,h]},useRef:function(h){var g=Zo();return h={current:h},g.memoizedState=h},useState:function(h){h=TP(h);var g=h.queue,b=Ofe.bind(null,Pt,g);return g.dispatch=b,[h.memoizedState,b]},useDebugValue:DP,useDeferredValue:function(h,g){var b=Zo();return PP(b,h,g)},useTransition:function(){var h=TP(!1);return h=Pfe.bind(null,Pt,h.queue,!0,!1),Zo().memoizedState=h,[!1,h]},useSyncExternalStore:function(h,g,b){var E=Pt,D=Zo();if(Kt){if(b===void 0)throw Error(o(407));b=b()}else{if(b=g(),Er===null)throw Error(o(349));(Yt&127)!==0||cfe(E,g,b)}D.memoizedState=b;var M={value:b,getSnapshot:g};return D.queue=M,Efe(ufe.bind(null,E,M,h),[h]),E.flags|=2048,Nm(9,{destroy:void 0},dfe.bind(null,E,M,b,g),null),b},useId:function(){var h=Zo(),g=Er.identifierPrefix;if(Kt){var b=zs,E=Rs;b=(E&~(1<<32-Gt(E)-1)).toString(32)+b,g="_"+g+"R_"+b,b=s6++,0<\/script>",M=M.removeChild(M.firstChild);break;case"select":M=typeof E.is=="string"?X.createElement("select",{is:E.is}):X.createElement("select"),E.multiple?M.multiple=!0:E.size&&(M.size=E.size);break;default:M=typeof E.is=="string"?X.createElement(D,{is:E.is}):X.createElement(D)}}M[Mr]=g,M[Pn]=E;e:for(X=g.child;X!==null;){if(X.tag===5||X.tag===6)M.appendChild(X.stateNode);else if(X.tag!==4&&X.tag!==27&&X.child!==null){X.child.return=X,X=X.child;continue}if(X===g)break e;for(;X.sibling===null;){if(X.return===null||X.return===g)break e;X=X.return}X.sibling.return=X.return,X=X.sibling}g.stateNode=M;e:switch(yo(M,D,E),D){case"button":case"input":case"select":case"textarea":E=!!E.autoFocus;break e;case"img":E=!0;break e;default:E=!1}E&&Vc(g)}}return Br(g),ZP(g,g.type,h===null?null:h.memoizedProps,g.pendingProps,b),null;case 6:if(h&&g.stateNode!=null)h.memoizedProps!==E&&Vc(g);else{if(typeof E!="string"&&g.stateNode===null)throw Error(o(166));if(h=Q.current,$m(g)){if(h=g.stateNode,b=g.memoizedProps,E=null,D=fo,D!==null)switch(D.tag){case 27:case 5:E=D.memoizedProps}h[Mr]=g,h=!!(h.nodeValue===b||E!==null&&E.suppressHydrationWarning===!0||lme(h.nodeValue,b)),h||pu(g,!0)}else h=P6(h).createTextNode(E),h[Mr]=g,g.stateNode=h}return Br(g),null;case 31:if(b=g.memoizedState,h===null||h.memoizedState!==null){if(E=$m(g),b!==null){if(h===null){if(!E)throw Error(o(318));if(h=g.memoizedState,h=h!==null?h.dehydrated:null,!h)throw Error(o(557));h[Mr]=g}else yh(),(g.flags&128)===0&&(g.memoizedState=null),g.flags|=4;Br(g),h=!1}else b=lP(),h!==null&&h.memoizedState!==null&&(h.memoizedState.hydrationErrors=b),h=!0;if(!h)return g.flags&256?(Wi(g),g):(Wi(g),null);if((g.flags&128)!==0)throw Error(o(558))}return Br(g),null;case 13:if(E=g.memoizedState,h===null||h.memoizedState!==null&&h.memoizedState.dehydrated!==null){if(D=$m(g),E!==null&&E.dehydrated!==null){if(h===null){if(!D)throw Error(o(318));if(D=g.memoizedState,D=D!==null?D.dehydrated:null,!D)throw Error(o(317));D[Mr]=g}else yh(),(g.flags&128)===0&&(g.memoizedState=null),g.flags|=4;Br(g),D=!1}else D=lP(),h!==null&&h.memoizedState!==null&&(h.memoizedState.hydrationErrors=D),D=!0;if(!D)return g.flags&256?(Wi(g),g):(Wi(g),null)}return Wi(g),(g.flags&128)!==0?(g.lanes=b,g):(b=E!==null,h=h!==null&&h.memoizedState!==null,b&&(E=g.child,D=null,E.alternate!==null&&E.alternate.memoizedState!==null&&E.alternate.memoizedState.cachePool!==null&&(D=E.alternate.memoizedState.cachePool.pool),M=null,E.memoizedState!==null&&E.memoizedState.cachePool!==null&&(M=E.memoizedState.cachePool.pool),M!==D&&(E.flags|=2048)),b!==h&&b&&(g.child.flags|=8192),b6(g,g.updateQueue),Br(g),null);case 4:return re(),h===null&&bM(g.stateNode.containerInfo),Br(g),null;case 10:return Ic(g.type),Br(g),null;case 19:if(K(gn),E=g.memoizedState,E===null)return Br(g),null;if(D=(g.flags&128)!==0,M=E.rendering,M===null)if(D)Qv(E,!1);else{if(cn!==0||h!==null&&(h.flags&128)!==0)for(h=g.child;h!==null;){if(M=a6(h),M!==null){for(g.flags|=128,Qv(E,!1),h=M.updateQueue,g.updateQueue=h,b6(g,h),g.subtreeFlags=0,h=b,b=g.child;b!==null;)Ohe(b,h),b=b.sibling;return O(gn,gn.current&1|2),Kt&&Nc(g,E.treeForkCount),g.child}h=h.sibling}E.tail!==null&&It()>S6&&(g.flags|=128,D=!0,Qv(E,!1),g.lanes=4194304)}else{if(!D)if(h=a6(M),h!==null){if(g.flags|=128,D=!0,h=h.updateQueue,g.updateQueue=h,b6(g,h),Qv(E,!0),E.tail===null&&E.tailMode==="hidden"&&!M.alternate&&!Kt)return Br(g),null}else 2*It()-E.renderingStartTime>S6&&b!==536870912&&(g.flags|=128,D=!0,Qv(E,!1),g.lanes=4194304);E.isBackwards?(M.sibling=g.child,g.child=M):(h=E.last,h!==null?h.sibling=M:g.child=M,E.last=M)}return E.tail!==null?(h=E.tail,E.rendering=h,E.tail=h.sibling,E.renderingStartTime=It(),h.sibling=null,b=gn.current,O(gn,D?b&1|2:b&1),Kt&&Nc(g,E.treeForkCount),h):(Br(g),null);case 22:case 23:return Wi(g),xP(),E=g.memoizedState!==null,h!==null?h.memoizedState!==null!==E&&(g.flags|=8192):E&&(g.flags|=8192),E?(b&536870912)!==0&&(g.flags&128)===0&&(Br(g),g.subtreeFlags&6&&(g.flags|=8192)):Br(g),b=g.updateQueue,b!==null&&b6(g,b.retryQueue),b=null,h!==null&&h.memoizedState!==null&&h.memoizedState.cachePool!==null&&(b=h.memoizedState.cachePool.pool),E=null,g.memoizedState!==null&&g.memoizedState.cachePool!==null&&(E=g.memoizedState.cachePool.pool),E!==b&&(g.flags|=2048),h!==null&&K(xh),null;case 24:return b=null,h!==null&&(b=h.memoizedState.cache),g.memoizedState.cache!==b&&(g.flags|=2048),Ic(Mn),Br(g),null;case 25:return null;case 30:return null}throw Error(o(156,g.tag))}function zxt(h,g){switch(iP(g),g.tag){case 1:return h=g.flags,h&65536?(g.flags=h&-65537|128,g):null;case 3:return Ic(Mn),re(),h=g.flags,(h&65536)!==0&&(h&128)===0?(g.flags=h&-65537|128,g):null;case 26:case 27:case 5:return _e(g),null;case 31:if(g.memoizedState!==null){if(Wi(g),g.alternate===null)throw Error(o(340));yh()}return h=g.flags,h&65536?(g.flags=h&-65537|128,g):null;case 13:if(Wi(g),h=g.memoizedState,h!==null&&h.dehydrated!==null){if(g.alternate===null)throw Error(o(340));yh()}return h=g.flags,h&65536?(g.flags=h&-65537|128,g):null;case 19:return K(gn),null;case 4:return re(),null;case 10:return Ic(g.type),null;case 22:case 23:return Wi(g),xP(),h!==null&&K(xh),h=g.flags,h&65536?(g.flags=h&-65537|128,g):null;case 24:return Ic(Mn),null;case 25:return null;default:return null}}function pge(h,g){switch(iP(g),g.tag){case 3:Ic(Mn),re();break;case 26:case 27:case 5:_e(g);break;case 4:re();break;case 31:g.memoizedState!==null&&Wi(g);break;case 13:Wi(g);break;case 19:K(gn);break;case 10:Ic(g.type);break;case 22:case 23:Wi(g),xP(),h!==null&&K(xh);break;case 24:Ic(Mn)}}function Jv(h,g){try{var b=g.updateQueue,E=b!==null?b.lastEffect:null;if(E!==null){var D=E.next;b=D;do{if((b.tag&h)===h){E=void 0;var M=b.create,X=b.inst;E=M(),X.destroy=E}b=b.next}while(b!==D)}}catch(ne){mr(g,g.return,ne)}}function bu(h,g,b){try{var E=g.updateQueue,D=E!==null?E.lastEffect:null;if(D!==null){var M=D.next;E=M;do{if((E.tag&h)===h){var X=E.inst,ne=X.destroy;if(ne!==void 0){X.destroy=void 0,D=g;var se=b,me=ne;try{me()}catch(Ee){mr(D,se,Ee)}}}E=E.next}while(E!==M)}}catch(Ee){mr(g,g.return,Ee)}}function hge(h){var g=h.updateQueue;if(g!==null){var b=h.stateNode;try{nfe(g,b)}catch(E){mr(h,h.return,E)}}}function fge(h,g,b){b.props=Eh(h.type,h.memoizedProps),b.state=h.memoizedState;try{b.componentWillUnmount()}catch(E){mr(h,g,E)}}function eb(h,g){try{var b=h.ref;if(b!==null){switch(h.tag){case 26:case 27:case 5:var E=h.stateNode;break;case 30:E=h.stateNode;break;default:E=h.stateNode}typeof b=="function"?h.refCleanup=b(E):b.current=E}}catch(D){mr(h,g,D)}}function Ts(h,g){var b=h.ref,E=h.refCleanup;if(b!==null)if(typeof E=="function")try{E()}catch(D){mr(h,g,D)}finally{h.refCleanup=null,h=h.alternate,h!=null&&(h.refCleanup=null)}else if(typeof b=="function")try{b(null)}catch(D){mr(h,g,D)}else b.current=null}function gge(h){var g=h.type,b=h.memoizedProps,E=h.stateNode;try{e:switch(g){case"button":case"input":case"select":case"textarea":b.autoFocus&&E.focus();break e;case"img":b.src?E.src=b.src:b.srcSet&&(E.srcset=b.srcSet)}}catch(D){mr(h,h.return,D)}}function QP(h,g,b){try{var E=h.stateNode;Zxt(E,h.type,b,g),E[Pn]=g}catch(D){mr(h,h.return,D)}}function mge(h){return h.tag===5||h.tag===3||h.tag===26||h.tag===27&&Cu(h.type)||h.tag===4}function JP(h){e:for(;;){for(;h.sibling===null;){if(h.return===null||mge(h.return))return null;h=h.return}for(h.sibling.return=h.return,h=h.sibling;h.tag!==5&&h.tag!==6&&h.tag!==18;){if(h.tag===27&&Cu(h.type)||h.flags&2||h.child===null||h.tag===4)continue e;h.child.return=h,h=h.child}if(!(h.flags&2))return h.stateNode}}function eM(h,g,b){var E=h.tag;if(E===5||E===6)h=h.stateNode,g?(b.nodeType===9?b.body:b.nodeName==="HTML"?b.ownerDocument.body:b).insertBefore(h,g):(g=b.nodeType===9?b.body:b.nodeName==="HTML"?b.ownerDocument.body:b,g.appendChild(h),b=b._reactRootContainer,b!=null||g.onclick!==null||(g.onclick=Lt));else if(E!==4&&(E===27&&Cu(h.type)&&(b=h.stateNode,g=null),h=h.child,h!==null))for(eM(h,g,b),h=h.sibling;h!==null;)eM(h,g,b),h=h.sibling}function x6(h,g,b){var E=h.tag;if(E===5||E===6)h=h.stateNode,g?b.insertBefore(h,g):b.appendChild(h);else if(E!==4&&(E===27&&Cu(h.type)&&(b=h.stateNode),h=h.child,h!==null))for(x6(h,g,b),h=h.sibling;h!==null;)x6(h,g,b),h=h.sibling}function yge(h){var g=h.stateNode,b=h.memoizedProps;try{for(var E=h.type,D=g.attributes;D.length;)g.removeAttributeNode(D[0]);yo(g,E,b),g[Mr]=h,g[Pn]=b}catch(M){mr(h,h.return,M)}}var qc=!1,In=!1,tM=!1,vge=typeof WeakSet=="function"?WeakSet:Set,io=null;function Txt(h,g){if(h=h.containerInfo,kM=F6,h=The(h),YD(h)){if("selectionStart"in h)var b={start:h.selectionStart,end:h.selectionEnd};else e:{b=(b=h.ownerDocument)&&b.defaultView||window;var E=b.getSelection&&b.getSelection();if(E&&E.rangeCount!==0){b=E.anchorNode;var D=E.anchorOffset,M=E.focusNode;E=E.focusOffset;try{b.nodeType,M.nodeType}catch{b=null;break e}var X=0,ne=-1,se=-1,me=0,Ee=0,Re=h,ye=null;t:for(;;){for(var we;Re!==b||D!==0&&Re.nodeType!==3||(ne=X+D),Re!==M||E!==0&&Re.nodeType!==3||(se=X+E),Re.nodeType===3&&(X+=Re.nodeValue.length),(we=Re.firstChild)!==null;)ye=Re,Re=we;for(;;){if(Re===h)break t;if(ye===b&&++me===D&&(ne=X),ye===M&&++Ee===E&&(se=X),(we=Re.nextSibling)!==null)break;Re=ye,ye=Re.parentNode}Re=we}b=ne===-1||se===-1?null:{start:ne,end:se}}else b=null}b=b||{start:0,end:0}}else b=null;for(_M={focusedElem:h,selectionRange:b},F6=!1,io=g;io!==null;)if(g=io,h=g.child,(g.subtreeFlags&1028)!==0&&h!==null)h.return=g,io=h;else for(;io!==null;){switch(g=io,M=g.alternate,h=g.flags,g.tag){case 0:if((h&4)!==0&&(h=g.updateQueue,h=h!==null?h.events:null,h!==null))for(b=0;b title"))),yo(M,E,b),M[Mr]=h,Wr(M),E=M;break e;case"link":var X=Sme("link","href",D).get(E+(b.href||""));if(X){for(var ne=0;ne_r&&(X=_r,_r=bt,bt=X);var he=Rhe(ne,bt),de=Rhe(ne,_r);if(he&&de&&(we.rangeCount!==1||we.anchorNode!==he.node||we.anchorOffset!==he.offset||we.focusNode!==de.node||we.focusOffset!==de.offset)){var ge=Re.createRange();ge.setStart(he.node,he.offset),we.removeAllRanges(),bt>_r?(we.addRange(ge),we.extend(de.node,de.offset)):(ge.setEnd(de.node,de.offset),we.addRange(ge))}}}}for(Re=[],we=ne;we=we.parentNode;)we.nodeType===1&&Re.push({element:we,left:we.scrollLeft,top:we.scrollTop});for(typeof ne.focus=="function"&&ne.focus(),ne=0;neb?32:b,B.T=null,b=sM,sM=null;var M=_u,X=Yc;if(Gn=0,Fm=_u=null,Yc=0,(cr&6)!==0)throw Error(o(331));var ne=cr;if(cr|=4,zge(M.current),Cge(M,M.current,X,b),cr=ne,ab(0,!1),Ht&&typeof Ht.onPostCommitFiberRoot=="function")try{Ht.onPostCommitFiberRoot(qt,M)}catch{}return!0}finally{F.p=D,B.T=E,Gge(h,g)}}function Xge(h,g,b){g=Ma(b,g),g=FP(h.stateNode,g,2),h=mu(h,g,2),h!==null&&(Pl(h,2),js(h))}function mr(h,g,b){if(h.tag===3)Xge(h,h,b);else for(;g!==null;){if(g.tag===3){Xge(g,h,b);break}else if(g.tag===1){var E=g.stateNode;if(typeof g.type.getDerivedStateFromError=="function"||typeof E.componentDidCatch=="function"&&(ku===null||!ku.has(E))){h=Ma(b,h),b=Kfe(2),E=mu(g,b,2),E!==null&&(Zfe(b,E,g,h),Pl(E,2),js(E));break}}g=g.return}}function pM(h,g,b){var E=h.pingCache;if(E===null){E=h.pingCache=new Dxt;var D=new Set;E.set(g,D)}else D=E.get(g),D===void 0&&(D=new Set,E.set(g,D));D.has(b)||(oM=!0,D.add(b),h=Ixt.bind(null,h,g,b),g.then(h,h))}function Ixt(h,g,b){var E=h.pingCache;E!==null&&E.delete(g),h.pingedLanes|=h.suspendedLanes&b,h.warmLanes&=~b,Er===h&&(Yt&b)===b&&(cn===4||cn===3&&(Yt&62914560)===Yt&&300>It()-_6?(cr&2)===0&&Vm(h,0):iM|=b,Lm===Yt&&(Lm=0)),js(h)}function Kge(h,g){g===0&&(g=ws()),h=gh(h,g),h!==null&&(Pl(h,g),js(h))}function Oxt(h){var g=h.memoizedState,b=0;g!==null&&(b=g.retryLane),Kge(h,b)}function Lxt(h,g){var b=0;switch(h.tag){case 31:case 13:var E=h.stateNode,D=h.memoizedState;D!==null&&(b=D.retryLane);break;case 19:E=h.stateNode;break;case 22:E=h.stateNode._retryCache;break;default:throw Error(o(314))}E!==null&&E.delete(g),Kge(h,b)}function Fxt(h,g){return St(h,g)}var T6=null,Hm=null,hM=!1,j6=!1,fM=!1,Eu=0;function js(h){h!==Hm&&h.next===null&&(Hm===null?T6=Hm=h:Hm=Hm.next=h),j6=!0,hM||(hM=!0,qxt())}function ab(h,g){if(!fM&&j6){fM=!0;do for(var b=!1,E=T6;E!==null;){if(h!==0){var D=E.pendingLanes;if(D===0)var M=0;else{var X=E.suspendedLanes,ne=E.pingedLanes;M=(1<<31-Gt(42|h)+1)-1,M&=D&~(X&~ne),M=M&201326741?M&201326741|1:M?M|2:0}M!==0&&(b=!0,eme(E,M))}else M=Yt,M=Dl(E,E===Er?M:0,E.cancelPendingCommit!==null||E.timeoutHandle!==-1),(M&3)===0||Ao(E,M)||(b=!0,eme(E,M));E=E.next}while(b);fM=!1}}function Vxt(){Zge()}function Zge(){j6=hM=!1;var h=0;Eu!==0&&Jxt()&&(h=Eu);for(var g=It(),b=null,E=T6;E!==null;){var D=E.next,M=Qge(E,g);M===0?(E.next=null,b===null?T6=D:b.next=D,D===null&&(Hm=b)):(b=E,(h!==0||(M&3)!==0)&&(j6=!0)),E=D}Gn!==0&&Gn!==5||ab(h),Eu!==0&&(Eu=0)}function Qge(h,g){for(var b=h.suspendedLanes,E=h.pingedLanes,D=h.expirationTimes,M=h.pendingLanes&-62914561;0ne)break;var Ee=se.transferSize,Re=se.initiatorType;Ee&&sme(Re)&&(se=se.responseEnd,X+=Ee*(se"u"?null:document;function xme(h,g,b){var E=Um;if(E&&typeof g=="string"&&g){var D=J(g);D='link[rel="'+h+'"][href="'+D+'"]',typeof b=="string"&&(D+='[crossorigin="'+b+'"]'),bme.has(D)||(bme.add(D),h={rel:h,crossOrigin:b,href:g},E.querySelector(D)===null&&(g=E.createElement("link"),yo(g,"link",h),Wr(g),E.head.appendChild(g)))}}function swt(h){Xc.D(h),xme("dns-prefetch",h,null)}function cwt(h,g){Xc.C(h,g),xme("preconnect",h,g)}function dwt(h,g,b){Xc.L(h,g,b);var E=Um;if(E&&h&&g){var D='link[rel="preload"][as="'+J(g)+'"]';g==="image"&&b&&b.imageSrcSet?(D+='[imagesrcset="'+J(b.imageSrcSet)+'"]',typeof b.imageSizes=="string"&&(D+='[imagesizes="'+J(b.imageSizes)+'"]')):D+='[href="'+J(h)+'"]';var M=D;switch(g){case"style":M=Wm(h);break;case"script":M=Gm(h)}Fa.has(M)||(h=p({rel:"preload",href:g==="image"&&b&&b.imageSrcSet?void 0:h,as:g},b),Fa.set(M,h),E.querySelector(D)!==null||g==="style"&&E.querySelector(db(M))||g==="script"&&E.querySelector(ub(M))||(g=E.createElement("link"),yo(g,"link",h),Wr(g),E.head.appendChild(g)))}}function uwt(h,g){Xc.m(h,g);var b=Um;if(b&&h){var E=g&&typeof g.as=="string"?g.as:"script",D='link[rel="modulepreload"][as="'+J(E)+'"][href="'+J(h)+'"]',M=D;switch(E){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":M=Gm(h)}if(!Fa.has(M)&&(h=p({rel:"modulepreload",href:h},g),Fa.set(M,h),b.querySelector(D)===null)){switch(E){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(b.querySelector(ub(M)))return}E=b.createElement("link"),yo(E,"link",h),Wr(E),b.head.appendChild(E)}}}function pwt(h,g,b){Xc.S(h,g,b);var E=Um;if(E&&h){var D=ho(E).hoistableStyles,M=Wm(h);g=g||"default";var X=D.get(M);if(!X){var ne={loading:0,preload:null};if(X=E.querySelector(db(M)))ne.loading=5;else{h=p({rel:"stylesheet",href:h,"data-precedence":g},b),(b=Fa.get(M))&&TM(h,b);var se=X=E.createElement("link");Wr(se),yo(se,"link",h),se._p=new Promise(function(me,Ee){se.onload=me,se.onerror=Ee}),se.addEventListener("load",function(){ne.loading|=1}),se.addEventListener("error",function(){ne.loading|=2}),ne.loading|=4,N6(X,g,E)}X={type:"stylesheet",instance:X,count:1,state:ne},D.set(M,X)}}}function hwt(h,g){Xc.X(h,g);var b=Um;if(b&&h){var E=ho(b).hoistableScripts,D=Gm(h),M=E.get(D);M||(M=b.querySelector(ub(D)),M||(h=p({src:h,async:!0},g),(g=Fa.get(D))&&jM(h,g),M=b.createElement("script"),Wr(M),yo(M,"link",h),b.head.appendChild(M)),M={type:"script",instance:M,count:1,state:null},E.set(D,M))}}function fwt(h,g){Xc.M(h,g);var b=Um;if(b&&h){var E=ho(b).hoistableScripts,D=Gm(h),M=E.get(D);M||(M=b.querySelector(ub(D)),M||(h=p({src:h,async:!0,type:"module"},g),(g=Fa.get(D))&&jM(h,g),M=b.createElement("script"),Wr(M),yo(M,"link",h),b.head.appendChild(M)),M={type:"script",instance:M,count:1,state:null},E.set(D,M))}}function wme(h,g,b,E){var D=(D=Q.current)?M6(D):null;if(!D)throw Error(o(446));switch(h){case"meta":case"title":return null;case"style":return typeof b.precedence=="string"&&typeof b.href=="string"?(g=Wm(b.href),b=ho(D).hoistableStyles,E=b.get(g),E||(E={type:"style",instance:null,count:0,state:null},b.set(g,E)),E):{type:"void",instance:null,count:0,state:null};case"link":if(b.rel==="stylesheet"&&typeof b.href=="string"&&typeof b.precedence=="string"){h=Wm(b.href);var M=ho(D).hoistableStyles,X=M.get(h);if(X||(D=D.ownerDocument||D,X={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},M.set(h,X),(M=D.querySelector(db(h)))&&!M._p&&(X.instance=M,X.state.loading=5),Fa.has(h)||(b={rel:"preload",as:"style",href:b.href,crossOrigin:b.crossOrigin,integrity:b.integrity,media:b.media,hrefLang:b.hrefLang,referrerPolicy:b.referrerPolicy},Fa.set(h,b),M||gwt(D,h,b,X.state))),g&&E===null)throw Error(o(528,""));return X}if(g&&E!==null)throw Error(o(529,""));return null;case"script":return g=b.async,b=b.src,typeof b=="string"&&g&&typeof g!="function"&&typeof g!="symbol"?(g=Gm(b),b=ho(D).hoistableScripts,E=b.get(g),E||(E={type:"script",instance:null,count:0,state:null},b.set(g,E)),E):{type:"void",instance:null,count:0,state:null};default:throw Error(o(444,h))}}function Wm(h){return'href="'+J(h)+'"'}function db(h){return'link[rel="stylesheet"]['+h+"]"}function kme(h){return p({},h,{"data-precedence":h.precedence,precedence:null})}function gwt(h,g,b,E){h.querySelector('link[rel="preload"][as="style"]['+g+"]")?E.loading=1:(g=h.createElement("link"),E.preload=g,g.addEventListener("load",function(){return E.loading|=1}),g.addEventListener("error",function(){return E.loading|=2}),yo(g,"link",b),Wr(g),h.head.appendChild(g))}function Gm(h){return'[src="'+J(h)+'"]'}function ub(h){return"script[async]"+h}function _me(h,g,b){if(g.count++,g.instance===null)switch(g.type){case"style":var E=h.querySelector('style[data-href~="'+J(b.href)+'"]');if(E)return g.instance=E,Wr(E),E;var D=p({},b,{"data-href":b.href,"data-precedence":b.precedence,href:null,precedence:null});return E=(h.ownerDocument||h).createElement("style"),Wr(E),yo(E,"style",D),N6(E,b.precedence,h),g.instance=E;case"stylesheet":D=Wm(b.href);var M=h.querySelector(db(D));if(M)return g.state.loading|=4,g.instance=M,Wr(M),M;E=kme(b),(D=Fa.get(D))&&TM(E,D),M=(h.ownerDocument||h).createElement("link"),Wr(M);var X=M;return X._p=new Promise(function(ne,se){X.onload=ne,X.onerror=se}),yo(M,"link",E),g.state.loading|=4,N6(M,b.precedence,h),g.instance=M;case"script":return M=Gm(b.src),(D=h.querySelector(ub(M)))?(g.instance=D,Wr(D),D):(E=b,(D=Fa.get(M))&&(E=p({},b),jM(E,D)),h=h.ownerDocument||h,D=h.createElement("script"),Wr(D),yo(D,"link",E),h.head.appendChild(D),g.instance=D);case"void":return null;default:throw Error(o(443,g.type))}else g.type==="stylesheet"&&(g.state.loading&4)===0&&(E=g.instance,g.state.loading|=4,N6(E,b.precedence,h));return g.instance}function N6(h,g,b){for(var E=b.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),D=E.length?E[E.length-1]:null,M=D,X=0;X title"):null)}function mwt(h,g,b){if(b===1||g.itemProp!=null)return!1;switch(h){case"meta":case"title":return!0;case"style":if(typeof g.precedence!="string"||typeof g.href!="string"||g.href==="")break;return!0;case"link":if(typeof g.rel!="string"||typeof g.href!="string"||g.href===""||g.onLoad||g.onError)break;switch(g.rel){case"stylesheet":return h=g.disabled,typeof g.precedence=="string"&&h==null;default:return!0}case"script":if(g.async&&typeof g.async!="function"&&typeof g.async!="symbol"&&!g.onLoad&&!g.onError&&g.src&&typeof g.src=="string")return!0}return!1}function Cme(h){return!(h.type==="stylesheet"&&(h.state.loading&3)===0)}function ywt(h,g,b,E){if(b.type==="stylesheet"&&(typeof E.media!="string"||matchMedia(E.media).matches!==!1)&&(b.state.loading&4)===0){if(b.instance===null){var D=Wm(E.href),M=g.querySelector(db(D));if(M){g=M._p,g!==null&&typeof g=="object"&&typeof g.then=="function"&&(h.count++,h=I6.bind(h),g.then(h,h)),b.state.loading|=4,b.instance=M,Wr(M);return}M=g.ownerDocument||g,E=kme(E),(D=Fa.get(D))&&TM(E,D),M=M.createElement("link"),Wr(M);var X=M;X._p=new Promise(function(ne,se){X.onload=ne,X.onerror=se}),yo(M,"link",E),b.instance=M}h.stylesheets===null&&(h.stylesheets=new Map),h.stylesheets.set(b,g),(g=b.state.preload)&&(b.state.loading&3)===0&&(h.count++,b=I6.bind(h),g.addEventListener("load",b),g.addEventListener("error",b))}}var AM=0;function vwt(h,g){return h.stylesheets&&h.count===0&&L6(h,h.stylesheets),0AM?50:800)+g);return h.unsuspend=b,function(){h.unsuspend=null,clearTimeout(E),clearTimeout(D)}}:null}function I6(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)L6(this,this.stylesheets);else if(this.unsuspend){var h=this.unsuspend;this.unsuspend=null,h()}}}var O6=null;function L6(h,g){h.stylesheets=null,h.unsuspend!==null&&(h.count++,O6=new Map,g.forEach(bwt,h),O6=null,I6.call(h))}function bwt(h,g){if(!(g.state.loading&4)){var b=O6.get(h);if(b)var E=b.get(null);else{b=new Map,O6.set(h,b);for(var D=h.querySelectorAll("link[data-precedence],style[data-precedence]"),M=0;M"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(r){console.error(r)}}return e(),$z.exports=tet(),$z.exports}var net=ret();const oet={View:"likec4-view"};let Tz="/";Tz.endsWith("/")||(Tz=Tz+"/");var ls=function(){return ls=Object.assign||function(e){for(var r,n=1,o=arguments.length;n"u")return ket;var r=_et(e),n=document.documentElement.clientWidth,o=window.innerWidth;return{left:r[0],top:r[1],right:r[2],gap:Math.max(0,o-n+r[2]-r[0])}},Cet=pne(),Pg="data-scroll-locked",$et=function(e,r,n,o){var i=e.left,a=e.top,l=e.right,s=e.gap;return n===void 0&&(n="margin"),` .`.concat(aet,` { overflow: hidden `).concat(o,`; padding-right: `).concat(s,"px ").concat(o,`; } - body[`).concat(Mm,`] { + body[`).concat(Pg,`] { overflow: hidden `).concat(o,`; overscroll-behavior: contain; `).concat([r&&"position: relative ".concat(o,";"),n==="margin"&&` @@ -340,23 +348,23 @@ Error generating stack: `+E.message+` margin-right: 0 `).concat(o,`; } - body[`).concat(Mm,`] { + body[`).concat(Pg,`] { `).concat(set,": ").concat(s,`px; } -`)},hne=function(){var e=parseInt(document.body.getAttribute(Mm)||"0",10);return isFinite(e)?e:0},Ret=function(){S.useEffect(function(){return document.body.setAttribute(Mm,(hne()+1).toString()),function(){var e=hne()-1;e<=0?document.body.removeAttribute(Mm):document.body.setAttribute(Mm,e.toString())}},[])},zet=function(e){var r=e.noRelative,n=e.noImportant,o=e.gapMode,i=o===void 0?"margin":o;Ret();var a=S.useMemo(function(){return Eet(i)},[i]);return S.createElement(Cet,{styles:$et(a,!r,i,n?"":"!important")})},Mz=!1;if(typeof window<"u")try{var k4=Object.defineProperty({},"passive",{get:function(){return Mz=!0,!0}});window.addEventListener("test",k4,k4),window.removeEventListener("test",k4,k4)}catch{Mz=!1}var Nm=Mz?{passive:!1}:!1,Tet=function(e){return e.tagName==="TEXTAREA"},fne=function(e,r){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[r]!=="hidden"&&!(n.overflowY===n.overflowX&&!Tet(e)&&n[r]==="visible")},jet=function(e){return fne(e,"overflowY")},Aet=function(e){return fne(e,"overflowX")},mne=function(e,r){var n=r.ownerDocument,o=r;do{typeof ShadowRoot<"u"&&o instanceof ShadowRoot&&(o=o.host);var i=gne(e,o);if(i){var a=yne(e,o),l=a[1],s=a[2];if(l>s)return!0}o=o.parentNode}while(o&&o!==n.body);return!1},Det=function(e){var r=e.scrollTop,n=e.scrollHeight,o=e.clientHeight;return[r,n,o]},Met=function(e){var r=e.scrollLeft,n=e.scrollWidth,o=e.clientWidth;return[r,n,o]},gne=function(e,r){return e==="v"?jet(r):Aet(r)},yne=function(e,r){return e==="v"?Det(r):Met(r)},Net=function(e,r){return e==="h"&&r==="rtl"?-1:1},Pet=function(e,r,n,o,i){var a=Net(e,window.getComputedStyle(r).direction),l=a*o,s=n.target,c=r.contains(s),d=!1,u=l>0,p=0,f=0;do{if(!s)break;var g=yne(e,s),v=g[0],w=g[1],x=g[2],k=w-x-a*v;(v||k)&&gne(e,s)&&(p+=k,f+=v);var C=s.parentNode;s=C&&C.nodeType===Node.DOCUMENT_FRAGMENT_NODE?C.host:C}while(!c&&s!==document.body||c&&(r.contains(s)||r===s));return(u&&Math.abs(p)<1||!u&&Math.abs(f)<1)&&(d=!0),d},_4=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},vne=function(e){return[e.deltaX,e.deltaY]},bne=function(e){return e&&"current"in e?e.current:e},Bet=function(e,r){return e[0]===r[0]&&e[1]===r[1]},Iet=function(e){return` +`)},hne=function(){var e=parseInt(document.body.getAttribute(Pg)||"0",10);return isFinite(e)?e:0},Ret=function(){S.useEffect(function(){return document.body.setAttribute(Pg,(hne()+1).toString()),function(){var e=hne()-1;e<=0?document.body.removeAttribute(Pg):document.body.setAttribute(Pg,e.toString())}},[])},zet=function(e){var r=e.noRelative,n=e.noImportant,o=e.gapMode,i=o===void 0?"margin":o;Ret();var a=S.useMemo(function(){return Eet(i)},[i]);return S.createElement(Cet,{styles:$et(a,!r,i,n?"":"!important")})},Pz=!1;if(typeof window<"u")try{var k4=Object.defineProperty({},"passive",{get:function(){return Pz=!0,!0}});window.addEventListener("test",k4,k4),window.removeEventListener("test",k4,k4)}catch{Pz=!1}var Mg=Pz?{passive:!1}:!1,Tet=function(e){return e.tagName==="TEXTAREA"},fne=function(e,r){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[r]!=="hidden"&&!(n.overflowY===n.overflowX&&!Tet(e)&&n[r]==="visible")},jet=function(e){return fne(e,"overflowY")},Aet=function(e){return fne(e,"overflowX")},gne=function(e,r){var n=r.ownerDocument,o=r;do{typeof ShadowRoot<"u"&&o instanceof ShadowRoot&&(o=o.host);var i=mne(e,o);if(i){var a=yne(e,o),l=a[1],s=a[2];if(l>s)return!0}o=o.parentNode}while(o&&o!==n.body);return!1},Det=function(e){var r=e.scrollTop,n=e.scrollHeight,o=e.clientHeight;return[r,n,o]},Pet=function(e){var r=e.scrollLeft,n=e.scrollWidth,o=e.clientWidth;return[r,n,o]},mne=function(e,r){return e==="v"?jet(r):Aet(r)},yne=function(e,r){return e==="v"?Det(r):Pet(r)},Met=function(e,r){return e==="h"&&r==="rtl"?-1:1},Net=function(e,r,n,o,i){var a=Met(e,window.getComputedStyle(r).direction),l=a*o,s=n.target,c=r.contains(s),d=!1,u=l>0,p=0,f=0;do{if(!s)break;var m=yne(e,s),v=m[0],w=m[1],x=m[2],k=w-x-a*v;(v||k)&&mne(e,s)&&(p+=k,f+=v);var C=s.parentNode;s=C&&C.nodeType===Node.DOCUMENT_FRAGMENT_NODE?C.host:C}while(!c&&s!==document.body||c&&(r.contains(s)||r===s));return(u&&Math.abs(p)<1||!u&&Math.abs(f)<1)&&(d=!0),d},_4=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},vne=function(e){return[e.deltaX,e.deltaY]},bne=function(e){return e&&"current"in e?e.current:e},Bet=function(e,r){return e[0]===r[0]&&e[1]===r[1]},Iet=function(e){return` .block-interactivity-`.concat(e,` {pointer-events: none;} .allow-interactivity-`).concat(e,` {pointer-events: all;} -`)},Oet=0,Pm=[];function Let(e){var r=S.useRef([]),n=S.useRef([0,0]),o=S.useRef(),i=S.useState(Oet++)[0],a=S.useState(pne)[0],l=S.useRef(e);S.useEffect(function(){l.current=e},[e]),S.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(i));var w=iet([e.lockRef.current],(e.shards||[]).map(bne)).filter(Boolean);return w.forEach(function(x){return x.classList.add("allow-interactivity-".concat(i))}),function(){document.body.classList.remove("block-interactivity-".concat(i)),w.forEach(function(x){return x.classList.remove("allow-interactivity-".concat(i))})}}},[e.inert,e.lockRef.current,e.shards]);var s=S.useCallback(function(w,x){if("touches"in w&&w.touches.length===2||w.type==="wheel"&&w.ctrlKey)return!l.current.allowPinchZoom;var k=_4(w),C=n.current,_="deltaX"in w?w.deltaX:C[0]-k[0],$="deltaY"in w?w.deltaY:C[1]-k[1],R,T=w.target,A=Math.abs(_)>Math.abs($)?"h":"v";if("touches"in w&&A==="h"&&T.type==="range")return!1;var z=mne(A,T);if(!z)return!0;if(z?R=A:(R=A==="v"?"h":"v",z=mne(A,T)),!z)return!1;if(!o.current&&"changedTouches"in w&&(_||$)&&(o.current=R),!R)return!0;var j=o.current||R;return Pet(j,x,w,j==="h"?_:$)},[]),c=S.useCallback(function(w){var x=w;if(!(!Pm.length||Pm[Pm.length-1]!==a)){var k="deltaY"in x?vne(x):_4(x),C=r.current.filter(function(R){return R.name===x.type&&(R.target===x.target||x.target===R.shadowParent)&&Bet(R.delta,k)})[0];if(C&&C.should){x.cancelable&&x.preventDefault();return}if(!C){var _=(l.current.shards||[]).map(bne).filter(Boolean).filter(function(R){return R.contains(x.target)}),$=_.length>0?s(x,_[0]):!l.current.noIsolation;$&&x.cancelable&&x.preventDefault()}}},[]),d=S.useCallback(function(w,x,k,C){var _={name:w,delta:x,target:k,should:C,shadowParent:Fet(k)};r.current.push(_),setTimeout(function(){r.current=r.current.filter(function($){return $!==_})},1)},[]),u=S.useCallback(function(w){n.current=_4(w),o.current=void 0},[]),p=S.useCallback(function(w){d(w.type,vne(w),w.target,s(w,e.lockRef.current))},[]),f=S.useCallback(function(w){d(w.type,_4(w),w.target,s(w,e.lockRef.current))},[]);S.useEffect(function(){return Pm.push(a),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:f}),document.addEventListener("wheel",c,Nm),document.addEventListener("touchmove",c,Nm),document.addEventListener("touchstart",u,Nm),function(){Pm=Pm.filter(function(w){return w!==a}),document.removeEventListener("wheel",c,Nm),document.removeEventListener("touchmove",c,Nm),document.removeEventListener("touchstart",u,Nm)}},[]);var g=e.removeScrollBar,v=e.inert;return S.createElement(S.Fragment,null,v?S.createElement(a,{styles:Iet(i)}):null,g?S.createElement(zet,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Fet(e){for(var r=null;e!==null;)e instanceof ShadowRoot&&(r=e.host,e=e.host),e=e.parentNode;return r}const Vet=met(une,Let);var xne=S.forwardRef(function(e,r){return S.createElement(w4,ls({},e,{ref:r,sideCar:Vet}))});xne.classNames=w4.classNames;function Ro(e){return Object.keys(e)}function qet(e){return e.replace(/[A-Z]/g,r=>`-${r.toLowerCase()}`)}function Het(e){return typeof e!="string"||!e.includes("var(--mantine-scale)")?e:e.match(/^calc\((.*?)\)$/)?.[1].split("*")[0].trim()}function S4(e){const r=Het(e);return typeof r=="number"?r:typeof r=="string"?r.includes("calc")||r.includes("var")?r:r.includes("px")?Number(r.replace("px","")):r.includes("rem")?Number(r.replace("rem",""))*16:r.includes("em")?Number(r.replace("em",""))*16:Number(r):NaN}function wne(e){return e==="0rem"?"0rem":`calc(${e} * var(--mantine-scale))`}function kne(e,{shouldScale:r=!1}={}){function n(o){if(o===0||o==="0")return`0${e}`;if(typeof o=="number"){const i=`${o/16}${e}`;return r?wne(i):i}if(typeof o=="string"){if(o===""||o.startsWith("calc(")||o.startsWith("clamp(")||o.includes("rgba("))return o;if(o.includes(","))return o.split(",").map(a=>n(a)).join(",");if(o.includes(" "))return o.split(" ").map(a=>n(a)).join(" ");const i=o.replace("px","");if(!Number.isNaN(Number(i))){const a=`${Number(i)/16}${e}`;return r?wne(a):a}}return o}return n}const Pe=kne("rem",{shouldScale:!0});kne("em");function Vd(e){return Object.keys(e).reduce((r,n)=>(e[n]!==void 0&&(r[n]=e[n]),r),{})}function _ne(e){if(typeof e=="number")return!0;if(typeof e=="string"){if(e.startsWith("calc(")||e.startsWith("var(")||e.includes(" ")&&e.trim()!=="")return!0;const r=/^[+-]?[0-9]+(\.[0-9]+)?(px|em|rem|ex|ch|lh|rlh|vw|vh|vmin|vmax|vb|vi|svw|svh|lvw|lvh|dvw|dvh|cm|mm|in|pt|pc|q|cqw|cqh|cqi|cqb|cqmin|cqmax|%)?$/;return e.trim().split(/\s+/).every(n=>r.test(n))}return!1}function E4(e){return Array.isArray(e)||e===null?!1:typeof e=="object"?e.type!==S.Fragment:!1}function Di(e){const r=S.createContext(null);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>{const n=S.useContext(r);if(n===null)throw new Error(e);return n}]}function Bm(e=null){const r=S.createContext(e);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>S.useContext(r)]}function Sne(e,r){return n=>{if(typeof n!="string"||n.trim().length===0)throw new Error(r);return`${e}-${n}`}}function j0(e,r){let n=e;for(;(n=n.parentElement)&&!n.matches(r););return n}function Uet(e,r,n){for(let o=e-1;o>=0;o-=1)if(!r[o].disabled)return o;if(n){for(let o=r.length-1;o>-1;o-=1)if(!r[o].disabled)return o}return e}function Wet(e,r,n){for(let o=e+1;o{n?.(s);const c=Array.from(j0(s.currentTarget,e)?.querySelectorAll(r)||[]).filter(v=>Get(s.currentTarget,v,e)),d=c.findIndex(v=>s.currentTarget===v),u=Wet(d,c,o),p=Uet(d,c,o),f=a==="rtl"?p:u,g=a==="rtl"?u:p;switch(s.key){case"ArrowRight":{l==="horizontal"&&(s.stopPropagation(),s.preventDefault(),c[f].focus(),i&&c[f].click());break}case"ArrowLeft":{l==="horizontal"&&(s.stopPropagation(),s.preventDefault(),c[g].focus(),i&&c[g].click());break}case"ArrowUp":{l==="vertical"&&(s.stopPropagation(),s.preventDefault(),c[p].focus(),i&&c[p].click());break}case"ArrowDown":{l==="vertical"&&(s.stopPropagation(),s.preventDefault(),c[u].focus(),i&&c[u].click());break}case"Home":{s.stopPropagation(),s.preventDefault(),!c[0].disabled&&c[0].focus();break}case"End":{s.stopPropagation(),s.preventDefault();const v=c.length-1;!c[v].disabled&&c[v].focus();break}}}}const Yet={app:100,modal:200,popover:300,overlay:400,max:9999};function yl(e){return Yet[e]}const Xet=()=>{};function Ket(e,r={active:!0}){return typeof e!="function"||!r.active?r.onKeyDown||Xet:n=>{n.key==="Escape"&&(e(n),r.onTrigger?.())}}function Qt(e,r="size",n=!0){if(e!==void 0)return _ne(e)?n?Pe(e):e:`var(--${r}-${e})`}function ro(e){return Qt(e,"mantine-spacing")}function hn(e){return e===void 0?"var(--mantine-radius-default)":Qt(e,"mantine-radius")}function zo(e){return Qt(e,"mantine-font-size")}function Zet(e){return Qt(e,"mantine-line-height",!1)}function Pz(e){if(e)return Qt(e,"mantine-shadow",!1)}function Tn(e,r){return n=>{e?.(n),r?.(n)}}function Qet(e,r){return e in r?S4(r[e]):S4(e)}function Bz(e,r){const n=e.map(o=>({value:o,px:Qet(o,r)}));return n.sort((o,i)=>o.px-i.px),n}function vl(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function Im(e,r,n){return r===void 0&&n===void 0?e:r!==void 0&&n===void 0?Math.max(e,r):Math.min(r===void 0&&n!==void 0?e:Math.max(e,r),n)}function Iz(e="mantine-"){return`${e}${Math.random().toString(36).slice(2,11)}`}function Jet(e,r){if(e===r||Number.isNaN(e)&&Number.isNaN(r))return!0;if(!(e instanceof Object)||!(r instanceof Object))return!1;const n=Object.keys(e),{length:o}=n;if(o!==Object.keys(r).length)return!1;for(let i=0;i{r.current=e}),S.useMemo(()=>((...n)=>r.current?.(...n)),[])}function C4(e,r){const{delay:n,flushOnUnmount:o,leading:i}=typeof r=="number"?{delay:r,flushOnUnmount:!1,leading:!1}:r,a=Np(e),l=S.useRef(0),s=S.useMemo(()=>{const c=Object.assign((...d)=>{window.clearTimeout(l.current);const u=c._isFirstCall;c._isFirstCall=!1;function p(){window.clearTimeout(l.current),l.current=0,c._isFirstCall=!0}if(i&&u){a(...d);const v=()=>{p()},w=()=>{l.current!==0&&(p(),a(...d))},x=()=>{p()};c.flush=w,c.cancel=x,l.current=window.setTimeout(v,n);return}if(i&&!u){const v=()=>{l.current!==0&&(p(),a(...d))},w=()=>{p()};c.flush=v,c.cancel=w;const x=()=>{p()};l.current=window.setTimeout(x,n);return}const f=()=>{l.current!==0&&(p(),a(...d))},g=()=>{p()};c.flush=f,c.cancel=g,l.current=window.setTimeout(f,n)},{flush:()=>{},cancel:()=>{},_isFirstCall:!0});return c},[a,n,i]);return S.useEffect(()=>()=>{o?s.flush():s.cancel()},[s,o]),s}const ett=["mousedown","touchstart"];function Ene(e,r,n){const o=S.useRef(null),i=r||ett;return S.useEffect(()=>{const a=l=>{const{target:s}=l??{};if(Array.isArray(n)){const c=!document.body.contains(s)&&s?.tagName!=="HTML";n.every(d=>!!d&&!l.composedPath().includes(d))&&!c&&e(l)}else o.current&&!o.current.contains(s)&&e(l)};return i.forEach(l=>document.addEventListener(l,a)),()=>{i.forEach(l=>document.removeEventListener(l,a))}},[o,e,n]),o}function ttt(e,r){try{return e.addEventListener("change",r),()=>e.removeEventListener("change",r)}catch{return e.addListener(r),()=>e.removeListener(r)}}function rtt(e,r){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(e).matches:!1}function ntt(e,r,{getInitialValueInEffect:n}={getInitialValueInEffect:!0}){const[o,i]=S.useState(n?r:rtt(e));return S.useEffect(()=>{try{const a=window.matchMedia(e);return i(a.matches),ttt(a,l=>i(l.matches))}catch{return}},[e]),o||!1}const $4=typeof document<"u"?S.useLayoutEffect:S.useEffect;function Om(e,r){const n=S.useRef(!1);S.useEffect(()=>()=>{n.current=!1},[]),S.useEffect(()=>{if(n.current)return e();n.current=!0},r)}function Cne({opened:e,shouldReturnFocus:r=!0}){const n=S.useRef(null),o=()=>{n.current&&"focus"in n.current&&typeof n.current.focus=="function"&&n.current?.focus({preventScroll:!0})};return Om(()=>{let i=-1;const a=l=>{l.key==="Tab"&&window.clearTimeout(i)};return document.addEventListener("keydown",a),e?n.current=document.activeElement:r&&(i=window.setTimeout(o,10)),()=>{window.clearTimeout(i),document.removeEventListener("keydown",a)}},[e,r]),o}const ott=/input|select|textarea|button|object/,$ne="a, input, select, textarea, button, object, [tabindex]";function itt(e){return e.style.display==="none"}function att(e){if(e.getAttribute("aria-hidden")||e.getAttribute("hidden")||e.getAttribute("type")==="hidden")return!1;let r=e;for(;r&&!(r===document.body||r.nodeType===11);){if(itt(r))return!1;r=r.parentNode}return!0}function Rne(e){let r=e.getAttribute("tabindex");return r===null&&(r=void 0),parseInt(r,10)}function Oz(e){const r=e.nodeName.toLowerCase(),n=!Number.isNaN(Rne(e));return(ott.test(r)&&!e.disabled||e instanceof HTMLAnchorElement&&e.href||n)&&att(e)}function zne(e){const r=Rne(e);return(Number.isNaN(r)||r>=0)&&Oz(e)}function ltt(e){return Array.from(e.querySelectorAll($ne)).filter(zne)}function stt(e,r){const n=ltt(e);if(!n.length){r.preventDefault();return}const o=n[r.shiftKey?0:n.length-1],i=e.getRootNode();let a=o===i.activeElement||e===i.activeElement;const l=i.activeElement;if(l.tagName==="INPUT"&&l.getAttribute("type")==="radio"&&(a=n.filter(c=>c.getAttribute("type")==="radio"&&c.getAttribute("name")===l.getAttribute("name")).includes(o)),!a)return;r.preventDefault();const s=n[r.shiftKey?n.length-1:0];s&&s.focus()}function ctt(e=!0){const r=S.useRef(null),n=i=>{let a=i.querySelector("[data-autofocus]");if(!a){const l=Array.from(i.querySelectorAll($ne));a=l.find(zne)||l.find(Oz)||null,!a&&Oz(i)&&(a=i)}a&&a.focus({preventScroll:!0})},o=S.useCallback(i=>{e&&i!==null&&r.current!==i&&(i?(setTimeout(()=>{i.getRootNode()&&n(i)}),r.current=i):r.current=null)},[e]);return S.useEffect(()=>{if(!e)return;r.current&&setTimeout(()=>n(r.current));const i=a=>{a.key==="Tab"&&r.current&&stt(r.current,a)};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[e]),o}const dtt=Zr.useId||(()=>{});function utt(){const e=dtt();return e?`mantine-${e.replace(/:/g,"")}`:""}function bl(e){const r=utt(),[n,o]=S.useState(r);return $4(()=>{o(Iz())},[]),typeof e=="string"?e:typeof window>"u"?r:n}function ptt(e,r,n){S.useEffect(()=>(window.addEventListener(e,r,n),()=>window.removeEventListener(e,r,n)),[e,r])}function Lz(e,r){if(typeof e=="function")return e(r);typeof e=="object"&&e!==null&&"current"in e&&(e.current=r)}function Tne(...e){const r=new Map;return n=>{if(e.forEach(o=>{const i=Lz(o,n);i&&r.set(o,i)}),r.size>0)return()=>{e.forEach(o=>{const i=r.get(o);i&&typeof i=="function"?i():Lz(o,null)}),r.clear()}}}function on(...e){return S.useCallback(Tne(...e),e)}function htt(e,r,n="ltr"){const o=S.useRef(!1),i=S.useRef(!1),a=S.useRef(0),[l,s]=S.useState(!1),c=S.useRef(null);return S.useEffect(()=>{o.current=!0},[]),{ref:S.useCallback(d=>{if(c.current&&(c.current(),c.current=null),!d)return;const u=({x:_,y:$})=>{cancelAnimationFrame(a.current),a.current=requestAnimationFrame(()=>{if(o.current&&d){d.style.userSelect="none";const R=d.getBoundingClientRect();if(R.width&&R.height){const T=Im((_-R.left)/R.width,0,1);e({x:n==="ltr"?T:1-T,y:Im(($-R.top)/R.height,0,1)})}}})},p=()=>{document.addEventListener("mousemove",x),document.addEventListener("mouseup",v),document.addEventListener("touchmove",C,{passive:!1}),document.addEventListener("touchend",v)},f=()=>{document.removeEventListener("mousemove",x),document.removeEventListener("mouseup",v),document.removeEventListener("touchmove",C),document.removeEventListener("touchend",v)},g=()=>{!i.current&&o.current&&(i.current=!0,typeof r?.onScrubStart=="function"&&r.onScrubStart(),s(!0),p())},v=()=>{i.current&&o.current&&(i.current=!1,s(!1),f(),setTimeout(()=>{typeof r?.onScrubEnd=="function"&&r.onScrubEnd()},0))},w=_=>{g(),_.preventDefault(),x(_)},x=_=>u({x:_.clientX,y:_.clientY}),k=_=>{_.cancelable&&_.preventDefault(),g(),C(_)},C=_=>{_.cancelable&&_.preventDefault(),u({x:_.changedTouches[0].clientX,y:_.changedTouches[0].clientY})};d.addEventListener("mousedown",w),d.addEventListener("touchstart",k,{passive:!1}),c.current=()=>{d.removeEventListener("mousedown",w),d.removeEventListener("touchstart",k)}},[n,e]),active:l}}function qd({value:e,defaultValue:r,finalValue:n,onChange:o=()=>{}}){const[i,a]=S.useState(r!==void 0?r:n);return e!==void 0?[e,o,!0]:[i,(s,...c)=>{a(s),o?.(s,...c)},!1]}function Fz(e,r){return ntt("(prefers-reduced-motion: reduce)",e,r)}function ftt(e,r){if(!e||!r)return!1;if(e===r)return!0;if(e.length!==r.length)return!1;for(let n=0;n{o(s=>s||(r.onOpen?.(),!0))},[r.onOpen]),a=S.useCallback(()=>{o(s=>s&&(r.onClose?.(),!1))},[r.onClose]),l=S.useCallback(()=>{n?a():i()},[a,i,n]);return[n,{open:i,close:a,toggle:l}]}function vtt(e,r,n={autoInvoke:!1}){const o=S.useRef(null),i=S.useCallback((...l)=>{o.current||(o.current=window.setTimeout(()=>{e(l),o.current=null},r))},[r]),a=S.useCallback(()=>{o.current&&(window.clearTimeout(o.current),o.current=null)},[]);return S.useEffect(()=>(n.autoInvoke&&i(),a),[a,i]),{start:i,clear:a}}function btt(e){const r=S.useRef(void 0);return S.useEffect(()=>{r.current=e},[e]),r.current}function xtt(e,r,n){const o=S.useRef(null),i=S.useRef(null);return S.useEffect(()=>{const a=typeof n=="function"?n():n;return(a||i.current)&&(o.current=new MutationObserver(e),o.current.observe(a||i.current,r)),()=>{o.current?.disconnect()}},[e,r]),i}function wtt(){const[e,r]=S.useState(!1);return S.useEffect(()=>r(!0),[]),e}function ktt(){return typeof process<"u"&&process.env?"production":"development"}function jne(e){const r=new Map;return(...n)=>{const o=JSON.stringify(n);if(r.has(o))return r.get(o);const i=e(...n);return r.set(o,i),i}}function Ane(e,r){return r.length===0?e:r.reduce((n,o)=>Math.abs(o-e){Object.entries(n).forEach(([o,i])=>{r[o]?r[o]=no(r[o],i):r[o]=i})}),r}function T4({theme:e,classNames:r,props:n,stylesCtx:o}){const i=(Array.isArray(r)?r:[r]).map(a=>typeof a=="function"?a(e,n,o):a||_tt);return Stt(i)}function j4({theme:e,styles:r,props:n,stylesCtx:o}){return(Array.isArray(r)?r:[r]).reduce((i,a)=>typeof a=="function"?{...i,...a(e,n,o)}:{...i,...a},{})}const Ett=S.createContext(null);function Pp(){const e=S.useContext(Ett);if(!e)throw new Error("[@mantine/core] MantineProvider was not found in tree");return e}function Ctt(){return Pp().classNamesPrefix}function $tt(){return Pp().getStyleNonce}function Rtt(){return Pp().withStaticClasses}function ztt(){return Pp().headless}function Ttt(){return Pp().stylesTransform?.sx}function jtt(){return Pp().stylesTransform?.styles}function A4(){return Pp().env||"default"}function Att(e){return/^#?([0-9A-F]{3}){1,2}([0-9A-F]{2})?$/i.test(e)}function Dtt(e){let r=e.replace("#","");if(r.length===3){const l=r.split("");r=[l[0],l[0],l[1],l[1],l[2],l[2]].join("")}if(r.length===8){const l=parseInt(r.slice(6,8),16)/255;return{r:parseInt(r.slice(0,2),16),g:parseInt(r.slice(2,4),16),b:parseInt(r.slice(4,6),16),a:l}}const n=parseInt(r,16),o=n>>16&255,i=n>>8&255,a=n&255;return{r:o,g:i,b:a,a:1}}function Mtt(e){const[r,n,o,i]=e.replace(/[^0-9,./]/g,"").split(/[/,]/).map(Number);return{r,g:n,b:o,a:i===void 0?1:i}}function Ntt(e){const r=/^hsla?\(\s*(\d+)\s*,\s*(\d+%)\s*,\s*(\d+%)\s*(,\s*(0?\.\d+|\d+(\.\d+)?))?\s*\)$/i,n=e.match(r);if(!n)return{r:0,g:0,b:0,a:1};const o=parseInt(n[1],10),i=parseInt(n[2],10)/100,a=parseInt(n[3],10)/100,l=n[5]?parseFloat(n[5]):void 0,s=(1-Math.abs(2*a-1))*i,c=o/60,d=s*(1-Math.abs(c%2-1)),u=a-s/2;let p,f,g;return c>=0&&c<1?(p=s,f=d,g=0):c>=1&&c<2?(p=d,f=s,g=0):c>=2&&c<3?(p=0,f=s,g=d):c>=3&&c<4?(p=0,f=d,g=s):c>=4&&c<5?(p=d,f=0,g=s):(p=s,f=0,g=d),{r:Math.round((p+u)*255),g:Math.round((f+u)*255),b:Math.round((g+u)*255),a:l||1}}function Mne(e){return Att(e)?Dtt(e):e.startsWith("rgb")?Mtt(e):e.startsWith("hsl")?Ntt(e):{r:0,g:0,b:0,a:1}}function A0(e,r){return typeof e.primaryShade=="number"?e.primaryShade:r==="dark"?e.primaryShade.dark:e.primaryShade.light}function Vz(e){return e<=.03928?e/12.92:((e+.055)/1.055)**2.4}function Ptt(e){const r=e.match(/oklch\((.*?)%\s/);return r?parseFloat(r[1]):null}function Btt(e){if(e.startsWith("oklch("))return(Ptt(e)||0)/100;const{r,g:n,b:o}=Mne(e),i=r/255,a=n/255,l=o/255,s=Vz(i),c=Vz(a),d=Vz(l);return .2126*s+.7152*c+.0722*d}function D0(e,r=.179){return e.startsWith("var(")?!1:Btt(e)>r}function Bp({color:e,theme:r,colorScheme:n}){if(typeof e!="string")throw new Error(`[@mantine/core] Failed to parse color. Expected color to be a string, instead got ${typeof e}`);if(e==="bright")return{color:e,value:n==="dark"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:D0(n==="dark"?r.white:r.black,r.luminanceThreshold),variable:"--mantine-color-bright"};if(e==="dimmed")return{color:e,value:n==="dark"?r.colors.dark[2]:r.colors.gray[7],shade:void 0,isThemeColor:!1,isLight:D0(n==="dark"?r.colors.dark[2]:r.colors.gray[6],r.luminanceThreshold),variable:"--mantine-color-dimmed"};if(e==="white"||e==="black")return{color:e,value:e==="white"?r.white:r.black,shade:void 0,isThemeColor:!1,isLight:D0(e==="white"?r.white:r.black,r.luminanceThreshold),variable:`--mantine-color-${e}`};const[o,i]=e.split("."),a=i?Number(i):void 0,l=o in r.colors;if(l){const s=a!==void 0?r.colors[o][a]:r.colors[o][A0(r,n||"light")];return{color:o,value:s,shade:a,isThemeColor:l,isLight:D0(s,r.luminanceThreshold),variable:i?`--mantine-color-${o}-${a}`:`--mantine-color-${o}-filled`}}return{color:e,value:e,isThemeColor:l,isLight:D0(e,r.luminanceThreshold),shade:a,variable:void 0}}function Uo(e,r){const n=Bp({color:e||r.primaryColor,theme:r});return n.variable?`var(${n.variable})`:e}function Itt(e,r){const n={from:e?.from||r.defaultGradient.from,to:e?.to||r.defaultGradient.to,deg:e?.deg??r.defaultGradient.deg??0},o=Uo(n.from,r),i=Uo(n.to,r);return`linear-gradient(${n.deg}deg, ${o} 0%, ${i} 100%)`}function Nne(e,r){if(typeof e!="string"||r>1||r<0)return"rgba(0, 0, 0, 1)";if(e.startsWith("var(")){const a=(1-r)*100;return`color-mix(in srgb, ${e}, transparent ${a}%)`}if(e.startsWith("oklch"))return e.includes("/")?e.replace(/\/\s*[\d.]+\s*\)/,`/ ${r})`):e.replace(")",` / ${r})`);const{r:n,g:o,b:i}=Mne(e);return`rgba(${n}, ${o}, ${i}, ${r})`}const Lm=Nne,Ott={dark:["#C9C9C9","#b8b8b8","#828282","#696969","#424242","#3b3b3b","#2e2e2e","#242424","#1f1f1f","#141414"],gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]},Pne="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji",Ltt={scale:1,fontSmoothing:!0,white:"#fff",black:"#000",colors:Ott,primaryShade:{light:6,dark:8},primaryColor:"blue",autoContrast:!1,luminanceThreshold:.3,fontFamily:Pne,fontFamilyMonospace:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace",cursorType:"default",defaultRadius:"sm",headings:{fontFamily:Pne,fontWeight:"700",textWrap:"wrap",sizes:{h1:{fontSize:Pe(34),lineHeight:"1.3"},h2:{fontSize:Pe(26),lineHeight:"1.35"},h3:{fontSize:Pe(22),lineHeight:"1.4"},h4:{fontSize:Pe(18),lineHeight:"1.45"},h5:{fontSize:Pe(16),lineHeight:"1.5"},h6:{fontSize:Pe(14),lineHeight:"1.5"}}},fontSizes:{xs:Pe(12),sm:Pe(14),md:Pe(16),lg:Pe(18),xl:Pe(20)},lineHeights:{xs:"1.4",sm:"1.45",md:"1.55",lg:"1.6",xl:"1.65"},radius:{xs:Pe(2),sm:Pe(4),md:Pe(8),lg:Pe(16),xl:Pe(32)},spacing:{xs:Pe(10),sm:Pe(12),md:Pe(16),lg:Pe(20),xl:Pe(32)},breakpoints:{xs:"36em",sm:"48em",md:"62em",lg:"75em",xl:"88em"},shadows:{xs:`0 ${Pe(1)} ${Pe(3)} rgba(0, 0, 0, 0.05), 0 ${Pe(1)} ${Pe(2)} rgba(0, 0, 0, 0.1)`,sm:`0 ${Pe(1)} ${Pe(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Pe(10)} ${Pe(15)} ${Pe(-5)}, rgba(0, 0, 0, 0.04) 0 ${Pe(7)} ${Pe(7)} ${Pe(-5)}`,md:`0 ${Pe(1)} ${Pe(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Pe(20)} ${Pe(25)} ${Pe(-5)}, rgba(0, 0, 0, 0.04) 0 ${Pe(10)} ${Pe(10)} ${Pe(-5)}`,lg:`0 ${Pe(1)} ${Pe(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Pe(28)} ${Pe(23)} ${Pe(-7)}, rgba(0, 0, 0, 0.04) 0 ${Pe(12)} ${Pe(12)} ${Pe(-7)}`,xl:`0 ${Pe(1)} ${Pe(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Pe(36)} ${Pe(28)} ${Pe(-7)}, rgba(0, 0, 0, 0.04) 0 ${Pe(17)} ${Pe(17)} ${Pe(-7)}`}},Ftt=S.createContext(null);function uo(){const e=S.useContext(Ftt);if(!e)throw new Error("@mantine/core: MantineProvider was not found in component tree, make sure you have it in your app");return e}function qz({color:e,theme:r,autoContrast:n}){return(typeof n=="boolean"?n:r.autoContrast)&&Bp({color:e||r.primaryColor,theme:r}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function Bne(e,r){return qz({color:e.colors[e.primaryColor][A0(e,r)],theme:e,autoContrast:null})}function D4({theme:e,color:r,colorScheme:n,name:o=r,withColorValues:i=!0}){if(!e.colors[r])return{};if(n==="light"){const s=A0(e,"light"),c={[`--mantine-color-${o}-text`]:`var(--mantine-color-${o}-filled)`,[`--mantine-color-${o}-filled`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-filled-hover`]:`var(--mantine-color-${o}-${s===9?8:s+1})`,[`--mantine-color-${o}-light`]:Lm(e.colors[r][s],.1),[`--mantine-color-${o}-light-hover`]:Lm(e.colors[r][s],.12),[`--mantine-color-${o}-light-color`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-outline`]:`var(--mantine-color-${o}-${s})`,[`--mantine-color-${o}-outline-hover`]:Lm(e.colors[r][s],.05)};return i?{[`--mantine-color-${o}-0`]:e.colors[r][0],[`--mantine-color-${o}-1`]:e.colors[r][1],[`--mantine-color-${o}-2`]:e.colors[r][2],[`--mantine-color-${o}-3`]:e.colors[r][3],[`--mantine-color-${o}-4`]:e.colors[r][4],[`--mantine-color-${o}-5`]:e.colors[r][5],[`--mantine-color-${o}-6`]:e.colors[r][6],[`--mantine-color-${o}-7`]:e.colors[r][7],[`--mantine-color-${o}-8`]:e.colors[r][8],[`--mantine-color-${o}-9`]:e.colors[r][9],...c}:c}const a=A0(e,"dark"),l={[`--mantine-color-${o}-text`]:`var(--mantine-color-${o}-4)`,[`--mantine-color-${o}-filled`]:`var(--mantine-color-${o}-${a})`,[`--mantine-color-${o}-filled-hover`]:`var(--mantine-color-${o}-${a===9?8:a+1})`,[`--mantine-color-${o}-light`]:Lm(e.colors[r][Math.max(0,a-2)],.15),[`--mantine-color-${o}-light-hover`]:Lm(e.colors[r][Math.max(0,a-2)],.2),[`--mantine-color-${o}-light-color`]:`var(--mantine-color-${o}-${Math.max(a-5,0)})`,[`--mantine-color-${o}-outline`]:`var(--mantine-color-${o}-${Math.max(a-4,0)})`,[`--mantine-color-${o}-outline-hover`]:Lm(e.colors[r][Math.max(a-4,0)],.05)};return i?{[`--mantine-color-${o}-0`]:e.colors[r][0],[`--mantine-color-${o}-1`]:e.colors[r][1],[`--mantine-color-${o}-2`]:e.colors[r][2],[`--mantine-color-${o}-3`]:e.colors[r][3],[`--mantine-color-${o}-4`]:e.colors[r][4],[`--mantine-color-${o}-5`]:e.colors[r][5],[`--mantine-color-${o}-6`]:e.colors[r][6],[`--mantine-color-${o}-7`]:e.colors[r][7],[`--mantine-color-${o}-8`]:e.colors[r][8],[`--mantine-color-${o}-9`]:e.colors[r][9],...l}:l}function Vtt(e){return!!e&&typeof e=="object"&&"mantine-virtual-color"in e}function Fm(e,r,n){Ro(r).forEach(o=>Object.assign(e,{[`--mantine-${n}-${o}`]:r[o]}))}(e=>{const r=A0(e,"light"),n=e.defaultRadius in e.radius?e.radius[e.defaultRadius]:Pe(e.defaultRadius),o={variables:{"--mantine-z-index-app":"100","--mantine-z-index-modal":"200","--mantine-z-index-popover":"300","--mantine-z-index-overlay":"400","--mantine-z-index-max":"9999","--mantine-scale":e.scale.toString(),"--mantine-cursor-type":e.cursorType,"--mantine-webkit-font-smoothing":e.fontSmoothing?"antialiased":"unset","--mantine-moz-font-smoothing":e.fontSmoothing?"grayscale":"unset","--mantine-color-white":e.white,"--mantine-color-black":e.black,"--mantine-line-height":e.lineHeights.md,"--mantine-font-family":e.fontFamily,"--mantine-font-family-monospace":e.fontFamilyMonospace,"--mantine-font-family-headings":e.headings.fontFamily,"--mantine-heading-font-weight":e.headings.fontWeight,"--mantine-heading-text-wrap":e.headings.textWrap,"--mantine-radius-default":n,"--mantine-primary-color-filled":`var(--mantine-color-${e.primaryColor}-filled)`,"--mantine-primary-color-filled-hover":`var(--mantine-color-${e.primaryColor}-filled-hover)`,"--mantine-primary-color-light":`var(--mantine-color-${e.primaryColor}-light)`,"--mantine-primary-color-light-hover":`var(--mantine-color-${e.primaryColor}-light-hover)`,"--mantine-primary-color-light-color":`var(--mantine-color-${e.primaryColor}-light-color)`},light:{"--mantine-color-scheme":"light","--mantine-primary-color-contrast":Bne(e,"light"),"--mantine-color-bright":"var(--mantine-color-black)","--mantine-color-text":e.black,"--mantine-color-body":e.white,"--mantine-color-error":"var(--mantine-color-red-6)","--mantine-color-placeholder":"var(--mantine-color-gray-5)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-${r})`,"--mantine-color-default":"var(--mantine-color-white)","--mantine-color-default-hover":"var(--mantine-color-gray-0)","--mantine-color-default-color":"var(--mantine-color-black)","--mantine-color-default-border":"var(--mantine-color-gray-4)","--mantine-color-dimmed":"var(--mantine-color-gray-6)","--mantine-color-disabled":"var(--mantine-color-gray-2)","--mantine-color-disabled-color":"var(--mantine-color-gray-5)","--mantine-color-disabled-border":"var(--mantine-color-gray-3)"},dark:{"--mantine-color-scheme":"dark","--mantine-primary-color-contrast":Bne(e,"dark"),"--mantine-color-bright":"var(--mantine-color-white)","--mantine-color-text":"var(--mantine-color-dark-0)","--mantine-color-body":"var(--mantine-color-dark-7)","--mantine-color-error":"var(--mantine-color-red-8)","--mantine-color-placeholder":"var(--mantine-color-dark-3)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-4)`,"--mantine-color-default":"var(--mantine-color-dark-6)","--mantine-color-default-hover":"var(--mantine-color-dark-5)","--mantine-color-default-color":"var(--mantine-color-white)","--mantine-color-default-border":"var(--mantine-color-dark-4)","--mantine-color-dimmed":"var(--mantine-color-dark-2)","--mantine-color-disabled":"var(--mantine-color-dark-6)","--mantine-color-disabled-color":"var(--mantine-color-dark-3)","--mantine-color-disabled-border":"var(--mantine-color-dark-4)"}};Fm(o.variables,e.breakpoints,"breakpoint"),Fm(o.variables,e.spacing,"spacing"),Fm(o.variables,e.fontSizes,"font-size"),Fm(o.variables,e.lineHeights,"line-height"),Fm(o.variables,e.shadows,"shadow"),Fm(o.variables,e.radius,"radius"),e.colors[e.primaryColor].forEach((a,l)=>{o.variables[`--mantine-primary-color-${l}`]=`var(--mantine-color-${e.primaryColor}-${l})`}),Ro(e.colors).forEach(a=>{const l=e.colors[a];if(Vtt(l)){Object.assign(o.light,D4({theme:e,name:l.name,color:l.light,colorScheme:"light",withColorValues:!0})),Object.assign(o.dark,D4({theme:e,name:l.name,color:l.dark,colorScheme:"dark",withColorValues:!0}));return}l.forEach((s,c)=>{o.variables[`--mantine-color-${a}-${c}`]=s}),Object.assign(o.light,D4({theme:e,color:a,colorScheme:"light",withColorValues:!1})),Object.assign(o.dark,D4({theme:e,color:a,colorScheme:"dark",withColorValues:!1}))});const i=e.headings.sizes;return Ro(i).forEach(a=>{o.variables[`--mantine-${a}-font-size`]=i[a].fontSize,o.variables[`--mantine-${a}-line-height`]=i[a].lineHeight,o.variables[`--mantine-${a}-font-weight`]=i[a].fontWeight||e.headings.fontWeight}),o})(Ltt);function Hz({classNames:e,styles:r,props:n,stylesCtx:o}){const i=uo();return{resolvedClassNames:T4({theme:i,classNames:e,props:n,stylesCtx:o||void 0}),resolvedStyles:j4({theme:i,styles:r,props:n,stylesCtx:o||void 0})}}const qtt={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function Htt({theme:e,options:r,unstyled:n}){return no(r?.focusable&&!n&&(e.focusClassName||qtt[e.focusRing]),r?.active&&!n&&e.activeClassName)}function Utt({selector:e,stylesCtx:r,options:n,props:o,theme:i}){return T4({theme:i,classNames:n?.classNames,props:n?.props||o,stylesCtx:r})[e]}function Ine({selector:e,stylesCtx:r,theme:n,classNames:o,props:i}){return T4({theme:n,classNames:o,props:i,stylesCtx:r})[e]}function Wtt({rootSelector:e,selector:r,className:n}){return e===r?n:void 0}function Gtt({selector:e,classes:r,unstyled:n}){return n?void 0:r[e]}function Ytt({themeName:e,classNamesPrefix:r,selector:n,withStaticClass:o}){return o===!1?[]:e.map(i=>`${r}-${i}-${n}`)}function Xtt({themeName:e,theme:r,selector:n,props:o,stylesCtx:i}){return e.map(a=>T4({theme:r,classNames:r.components[a]?.classNames,props:o,stylesCtx:i})?.[n])}function Ktt({options:e,classes:r,selector:n,unstyled:o}){return e?.variant&&!o?r[`${n}--${e.variant}`]:void 0}function Ztt({theme:e,options:r,themeName:n,selector:o,classNamesPrefix:i,classNames:a,classes:l,unstyled:s,className:c,rootSelector:d,props:u,stylesCtx:p,withStaticClasses:f,headless:g,transformedStyles:v}){return no(Htt({theme:e,options:r,unstyled:s||g}),Xtt({theme:e,themeName:n,selector:o,props:u,stylesCtx:p}),Ktt({options:r,classes:l,selector:o,unstyled:s}),Ine({selector:o,stylesCtx:p,theme:e,classNames:a,props:u}),Ine({selector:o,stylesCtx:p,theme:e,classNames:v,props:u}),Utt({selector:o,stylesCtx:p,options:r,props:u,theme:e}),Wtt({rootSelector:d,selector:o,className:c}),Gtt({selector:o,classes:l,unstyled:s||g}),f&&!g&&Ytt({themeName:n,classNamesPrefix:i,selector:o,withStaticClass:r?.withStaticClass}),r?.className)}function Qtt({theme:e,themeName:r,props:n,stylesCtx:o,selector:i}){return r.map(a=>j4({theme:e,styles:e.components[a]?.styles,props:n,stylesCtx:o})[i]).reduce((a,l)=>({...a,...l}),{})}function Uz({style:e,theme:r}){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...Uz({style:o,theme:r})}),{}):typeof e=="function"?e(r):e??{}}function Jtt(e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{r[o]={...r[o],...Vd(n[o])}}),r),{})}function ert({vars:e,varsResolver:r,theme:n,props:o,stylesCtx:i,selector:a,themeName:l,headless:s}){return Jtt([s?{}:r?.(n,o,i),...l.map(c=>n.components?.[c]?.vars?.(n,o,i)),e?.(n,o,i)])?.[a]}function trt({theme:e,themeName:r,selector:n,options:o,props:i,stylesCtx:a,rootSelector:l,styles:s,style:c,vars:d,varsResolver:u,headless:p,withStylesTransform:f}){return{...!f&&Qtt({theme:e,themeName:r,props:i,stylesCtx:a,selector:n}),...!f&&j4({theme:e,styles:s,props:i,stylesCtx:a})[n],...!f&&j4({theme:e,styles:o?.styles,props:o?.props||i,stylesCtx:a})[n],...ert({theme:e,props:i,stylesCtx:a,vars:d,varsResolver:u,selector:n,themeName:r,headless:p}),...l===n?Uz({style:c,theme:e}):null,...Uz({style:o?.style,theme:e})}}function rrt({props:e,stylesCtx:r,themeName:n}){const o=uo(),i=jtt()?.();return{getTransformedStyles:a=>i?[...a.map(l=>i(l,{props:e,theme:o,ctx:r})),...n.map(l=>i(o.components[l]?.styles,{props:e,theme:o,ctx:r}))].filter(Boolean):[],withStylesTransform:!!i}}function dt({name:e,classes:r,props:n,stylesCtx:o,className:i,style:a,rootSelector:l="root",unstyled:s,classNames:c,styles:d,vars:u,varsResolver:p,attributes:f}){const g=uo(),v=Ctt(),w=Rtt(),x=ztt(),k=(Array.isArray(e)?e:[e]).filter($=>$),{withStylesTransform:C,getTransformedStyles:_}=rrt({props:n,stylesCtx:o,themeName:k});return($,R)=>({className:Ztt({theme:g,options:R,themeName:k,selector:$,classNamesPrefix:v,classNames:c,classes:r,unstyled:s,className:i,rootSelector:l,props:n,stylesCtx:o,withStaticClasses:w,headless:x,transformedStyles:_([R?.styles,d])}),style:trt({theme:g,themeName:k,selector:$,options:R,props:n,stylesCtx:o,rootSelector:l,styles:d,style:a,vars:u,varsResolver:p,headless:x,withStylesTransform:C}),...f?.[$]})}function nrt(e,r){return typeof e=="boolean"?e:r.autoContrast}function ze(e,r,n){const o=uo(),i=o.components[e]?.defaultProps,a=typeof i=="function"?i(o):i;return{...r,...a,...Vd(n)}}function Wz(e){return Ro(e).reduce((r,n)=>e[n]!==void 0?`${r}${qet(n)}:${e[n]};`:r,"").trim()}function ort({selector:e,styles:r,media:n,container:o}){const i=r?Wz(r):"",a=Array.isArray(n)?n.map(s=>`@media${s.query}{${e}{${Wz(s.styles)}}}`):[],l=Array.isArray(o)?o.map(s=>`@container ${s.query}{${e}{${Wz(s.styles)}}}`):[];return`${i?`${e}{${i}}`:""}${a.join("")}${l.join("")}`.trim()}function Vm(e){const r=$tt();return y.jsx("style",{"data-mantine-styles":"inline",nonce:r?.(),dangerouslySetInnerHTML:{__html:ort(e)}})}function Gz(e){const{m:r,mx:n,my:o,mt:i,mb:a,ml:l,mr:s,me:c,ms:d,p:u,px:p,py:f,pt:g,pb:v,pl:w,pr:x,pe:k,ps:C,bd:_,bdrs:$,bg:R,c:T,opacity:A,ff:z,fz:j,fw:I,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:K,bgsz:O,bgp:W,bgr:Z,bga:Q,pos:ie,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,hiddenFrom:je,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le,...St}=e;return{styleProps:Vd({m:r,mx:n,my:o,mt:i,mb:a,ml:l,mr:s,me:c,ms:d,p:u,px:p,py:f,pt:g,pb:v,pl:w,pr:x,pe:k,ps:C,bd:_,bg:R,c:T,opacity:A,ff:z,fz:j,fw:I,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:K,bgsz:O,bgp:W,bgr:Z,bga:Q,pos:ie,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,bdrs:$,hiddenFrom:je,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le}),rest:St}}const irt={m:{type:"spacing",property:"margin"},mt:{type:"spacing",property:"marginTop"},mb:{type:"spacing",property:"marginBottom"},ml:{type:"spacing",property:"marginLeft"},mr:{type:"spacing",property:"marginRight"},ms:{type:"spacing",property:"marginInlineStart"},me:{type:"spacing",property:"marginInlineEnd"},mx:{type:"spacing",property:"marginInline"},my:{type:"spacing",property:"marginBlock"},p:{type:"spacing",property:"padding"},pt:{type:"spacing",property:"paddingTop"},pb:{type:"spacing",property:"paddingBottom"},pl:{type:"spacing",property:"paddingLeft"},pr:{type:"spacing",property:"paddingRight"},ps:{type:"spacing",property:"paddingInlineStart"},pe:{type:"spacing",property:"paddingInlineEnd"},px:{type:"spacing",property:"paddingInline"},py:{type:"spacing",property:"paddingBlock"},bd:{type:"border",property:"border"},bdrs:{type:"radius",property:"borderRadius"},bg:{type:"color",property:"background"},c:{type:"textColor",property:"color"},opacity:{type:"identity",property:"opacity"},ff:{type:"fontFamily",property:"fontFamily"},fz:{type:"fontSize",property:"fontSize"},fw:{type:"identity",property:"fontWeight"},lts:{type:"size",property:"letterSpacing"},ta:{type:"identity",property:"textAlign"},lh:{type:"lineHeight",property:"lineHeight"},fs:{type:"identity",property:"fontStyle"},tt:{type:"identity",property:"textTransform"},td:{type:"identity",property:"textDecoration"},w:{type:"spacing",property:"width"},miw:{type:"spacing",property:"minWidth"},maw:{type:"spacing",property:"maxWidth"},h:{type:"spacing",property:"height"},mih:{type:"spacing",property:"minHeight"},mah:{type:"spacing",property:"maxHeight"},bgsz:{type:"size",property:"backgroundSize"},bgp:{type:"identity",property:"backgroundPosition"},bgr:{type:"identity",property:"backgroundRepeat"},bga:{type:"identity",property:"backgroundAttachment"},pos:{type:"identity",property:"position"},top:{type:"size",property:"top"},left:{type:"size",property:"left"},bottom:{type:"size",property:"bottom"},right:{type:"size",property:"right"},inset:{type:"size",property:"inset"},display:{type:"identity",property:"display"},flex:{type:"identity",property:"flex"}};function Yz(e,r){const n=Bp({color:e,theme:r});return n.color==="dimmed"?"var(--mantine-color-dimmed)":n.color==="bright"?"var(--mantine-color-bright)":n.variable?`var(${n.variable})`:n.color}function art(e,r){const n=Bp({color:e,theme:r});return n.isThemeColor&&n.shade===void 0?`var(--mantine-color-${n.color}-text)`:Yz(e,r)}function lrt(e,r){if(typeof e=="number")return Pe(e);if(typeof e=="string"){const[n,o,...i]=e.split(" ").filter(l=>l.trim()!=="");let a=`${Pe(n)}`;return o&&(a+=` ${o}`),i.length>0&&(a+=` ${Yz(i.join(" "),r)}`),a.trim()}return e}const One={text:"var(--mantine-font-family)",mono:"var(--mantine-font-family-monospace)",monospace:"var(--mantine-font-family-monospace)",heading:"var(--mantine-font-family-headings)",headings:"var(--mantine-font-family-headings)"};function srt(e){return typeof e=="string"&&e in One?One[e]:e}const crt=["h1","h2","h3","h4","h5","h6"];function drt(e,r){return typeof e=="string"&&e in r.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&crt.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?Pe(e):e}function urt(e){return e}const prt=["h1","h2","h3","h4","h5","h6"];function hrt(e,r){return typeof e=="string"&&e in r.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&prt.includes(e)?`var(--mantine-${e}-line-height)`:e}function frt(e,r){return typeof e=="string"&&e in r.radius?`var(--mantine-radius-${e})`:typeof e=="number"||typeof e=="string"?Pe(e):e}function mrt(e){return typeof e=="number"?Pe(e):e}function grt(e,r){if(typeof e=="number")return Pe(e);if(typeof e=="string"){const n=e.replace("-","");if(!(n in r.spacing))return Pe(e);const o=`--mantine-spacing-${n}`;return e.startsWith("-")?`calc(var(${o}) * -1)`:`var(${o})`}return e}const Xz={color:Yz,textColor:art,fontSize:drt,spacing:grt,radius:frt,identity:urt,size:mrt,lineHeight:hrt,fontFamily:srt,border:lrt};function Lne(e){return e.replace("(min-width: ","").replace("em)","")}function yrt({media:e,...r}){const n=Object.keys(e).sort((o,i)=>Number(Lne(o))-Number(Lne(i))).map(o=>({query:o,styles:e[o]}));return{...r,media:n}}function vrt(e){if(typeof e!="object"||e===null)return!1;const r=Object.keys(e);return!(r.length===1&&r[0]==="base")}function brt(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function xrt(e){return typeof e=="object"&&e!==null?Ro(e).filter(r=>r!=="base"):[]}function wrt(e,r){return typeof e=="object"&&e!==null&&r in e?e[r]:e}function Fne({styleProps:e,data:r,theme:n}){return yrt(Ro(e).reduce((o,i)=>{if(i==="hiddenFrom"||i==="visibleFrom"||i==="sx")return o;const a=r[i],l=Array.isArray(a.property)?a.property:[a.property],s=brt(e[i]);if(!vrt(e[i]))return l.forEach(d=>{o.inlineStyles[d]=Xz[a.type](s,n)}),o;o.hasResponsiveStyles=!0;const c=xrt(e[i]);return l.forEach(d=>{s!=null&&(o.styles[d]=Xz[a.type](s,n)),c.forEach(u=>{const p=`(min-width: ${n.breakpoints[u]})`;o.media[p]={...o.media[p],[d]:Xz[a.type](wrt(e[i],u),n)}})}),o},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function M0(){return`__m__-${S.useId().replace(/[:«»]/g,"")}`}function Kz(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...Kz(o,r)}),{}):typeof e=="function"?e(r):e??{}}function Vne(e){return e.startsWith("data-")?e:`data-${e}`}function krt(e){return Object.keys(e).reduce((r,n)=>{const o=e[n];return o===void 0||o===""||o===!1||o===null||(r[Vne(n)]=e[n]),r},{})}function qne(e){return e?typeof e=="string"?{[Vne(e)]:!0}:Array.isArray(e)?[...e].reduce((r,n)=>({...r,...qne(n)}),{}):krt(e):null}function Zz(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...Zz(o,r)}),{}):typeof e=="function"?e(r):e??{}}function _rt({theme:e,style:r,vars:n,styleProps:o}){const i=Zz(r,e),a=Zz(n,e);return{...i,...a,...o}}const Hne=S.forwardRef(({component:e,style:r,__vars:n,className:o,variant:i,mod:a,size:l,hiddenFrom:s,visibleFrom:c,lightHidden:d,darkHidden:u,renderRoot:p,__size:f,...g},v)=>{const w=uo(),x=e||"div",{styleProps:k,rest:C}=Gz(g),_=Ttt()?.()?.(k.sx),$=M0(),R=Fne({styleProps:k,theme:w,data:irt}),T={ref:v,style:_rt({theme:w,style:r,vars:n,styleProps:R.inlineStyles}),className:no(o,_,{[$]:R.hasResponsiveStyles,"mantine-light-hidden":d,"mantine-dark-hidden":u,[`mantine-hidden-from-${s}`]:s,[`mantine-visible-from-${c}`]:c}),"data-variant":i,"data-size":_ne(l)?void 0:l||void 0,size:f,...qne(a),...C};return y.jsxs(y.Fragment,{children:[R.hasResponsiveStyles&&y.jsx(Vm,{selector:`.${$}`,styles:R.styles,media:R.media}),typeof p=="function"?p(T):y.jsx(x,{...T})]})});Hne.displayName="@mantine/core/Box";const Ae=Hne;function Une(e){return e}function We(e){const r=S.forwardRef(e);return r.extend=Une,r.withProps=n=>{const o=S.forwardRef((i,a)=>y.jsx(r,{...n,...i,ref:a}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o},r}function Un(e){const r=S.forwardRef(e);return r.withProps=n=>{const o=S.forwardRef((i,a)=>y.jsx(r,{...n,...i,ref:a}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o},r.extend=Une,r}const Srt=S.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function gc(){return S.useContext(Srt)}function Ert(e){if(!e||typeof e=="string")return 0;const r=e/36;return Math.round((4+15*r**.25+r/5)*10)}function Qz(e){return e?.current?e.current.scrollHeight:"auto"}const M4=typeof window<"u"&&window.requestAnimationFrame,Wne=0,Crt=e=>({height:0,overflow:"hidden",...e?{}:{display:"none"}});function $rt({transitionDuration:e,transitionTimingFunction:r="ease",onTransitionEnd:n=()=>{},opened:o,keepMounted:i=!1}){const a=S.useRef(null),l=Crt(i),[s,c]=S.useState(o?{}:l),d=v=>{Va.flushSync(()=>c(v))},u=v=>{d(w=>({...w,...v}))};function p(v){const w=e||Ert(v);return{transition:`height ${w}ms ${r}, opacity ${w}ms ${r}`}}Om(()=>{typeof M4=="function"&&M4(o?()=>{u({willChange:"height",display:"block",overflow:"hidden"}),M4(()=>{const v=Qz(a);u({...p(v),height:v})})}:()=>{const v=Qz(a);u({...p(v),willChange:"height",height:v}),M4(()=>u({height:Wne,overflow:"hidden"}))})},[o]);const f=v=>{if(!(v.target!==a.current||v.propertyName!=="height"))if(o){const w=Qz(a);w===s.height?d({}):u({height:w}),n()}else s.height===Wne&&(d(l),n())};function g({style:v={},refKey:w="ref",...x}={}){const k=x[w],C={"aria-hidden":!o,...x,[w]:Tne(a,k),onTransitionEnd:f,style:{boxSizing:"border-box",...v,...s}};return Zr.version.startsWith("18")?o||(C.inert=""):C.inert=!o,C}return g}const Rrt={transitionDuration:200,transitionTimingFunction:"ease",animateOpacity:!0},Gne=We((e,r)=>{const{children:n,in:o,transitionDuration:i,transitionTimingFunction:a,style:l,onTransitionEnd:s,animateOpacity:c,keepMounted:d,...u}=ze("Collapse",Rrt,e),p=uo(),f=Fz(),g=p.respectReducedMotion&&f?0:i,v=$rt({opened:o,transitionDuration:g,transitionTimingFunction:a,onTransitionEnd:s,keepMounted:d});return g===0?o?y.jsx(Ae,{...u,children:n}):null:y.jsx(Ae,{...v({style:{opacity:o||!c?1:0,transition:c?`opacity ${g}ms ${a}`:"none",...Kz(l,p)},ref:r,...u}),children:n})});Gne.displayName="@mantine/core/Collapse";function N4(){return typeof window<"u"}function qm(e){return Yne(e)?(e.nodeName||"").toLowerCase():"#document"}function si(e){var r;return(e==null||(r=e.ownerDocument)==null?void 0:r.defaultView)||window}function ss(e){var r;return(r=(Yne(e)?e.ownerDocument:e.document)||window.document)==null?void 0:r.documentElement}function Yne(e){return N4()?e instanceof Node||e instanceof si(e).Node:!1}function Mr(e){return N4()?e instanceof Element||e instanceof si(e).Element:!1}function Mi(e){return N4()?e instanceof HTMLElement||e instanceof si(e).HTMLElement:!1}function Jz(e){return!N4()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof si(e).ShadowRoot}const zrt=new Set(["inline","contents"]);function N0(e){const{overflow:r,overflowX:n,overflowY:o,display:i}=_a(e);return/auto|scroll|overlay|hidden|clip/.test(r+o+n)&&!zrt.has(i)}const Trt=new Set(["table","td","th"]);function jrt(e){return Trt.has(qm(e))}const Art=[":popover-open",":modal"];function P4(e){return Art.some(r=>{try{return e.matches(r)}catch{return!1}})}const Drt=["transform","translate","scale","rotate","perspective"],Mrt=["transform","translate","scale","rotate","perspective","filter"],Nrt=["paint","layout","strict","content"];function eT(e){const r=B4(),n=Mr(e)?_a(e):e;return Drt.some(o=>n[o]?n[o]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!r&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!r&&(n.filter?n.filter!=="none":!1)||Mrt.some(o=>(n.willChange||"").includes(o))||Nrt.some(o=>(n.contain||"").includes(o))}function Prt(e){let r=vc(e);for(;Mi(r)&&!yc(r);){if(eT(r))return r;if(P4(r))return null;r=vc(r)}return null}function B4(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const Brt=new Set(["html","body","#document"]);function yc(e){return Brt.has(qm(e))}function _a(e){return si(e).getComputedStyle(e)}function I4(e){return Mr(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function vc(e){if(qm(e)==="html")return e;const r=e.assignedSlot||e.parentNode||Jz(e)&&e.host||ss(e);return Jz(r)?r.host:r}function Xne(e){const r=vc(e);return yc(r)?e.ownerDocument?e.ownerDocument.body:e.body:Mi(r)&&N0(r)?r:Xne(r)}function bc(e,r,n){var o;r===void 0&&(r=[]),n===void 0&&(n=!0);const i=Xne(e),a=i===((o=e.ownerDocument)==null?void 0:o.body),l=si(i);if(a){const s=tT(l);return r.concat(l,l.visualViewport||[],N0(i)?i:[],s&&n?bc(s):[])}return r.concat(i,bc(i,[],n))}function tT(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}const Irt=["top","right","bottom","left"],xl=Math.min,To=Math.max,O4=Math.round,L4=Math.floor,cs=e=>({x:e,y:e}),Ort={left:"right",right:"left",bottom:"top",top:"bottom"},Lrt={start:"end",end:"start"};function rT(e,r,n){return To(e,xl(r,n))}function ds(e,r){return typeof e=="function"?e(r):e}function wl(e){return e.split("-")[0]}function Hm(e){return e.split("-")[1]}function nT(e){return e==="x"?"y":"x"}function oT(e){return e==="y"?"height":"width"}const Frt=new Set(["top","bottom"]);function kl(e){return Frt.has(wl(e))?"y":"x"}function iT(e){return nT(kl(e))}function Vrt(e,r,n){n===void 0&&(n=!1);const o=Hm(e),i=iT(e),a=oT(i);let l=i==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return r.reference[a]>r.floating[a]&&(l=F4(l)),[l,F4(l)]}function qrt(e){const r=F4(e);return[aT(e),r,aT(r)]}function aT(e){return e.replace(/start|end/g,r=>Lrt[r])}const Kne=["left","right"],Zne=["right","left"],Hrt=["top","bottom"],Urt=["bottom","top"];function Wrt(e,r,n){switch(e){case"top":case"bottom":return n?r?Zne:Kne:r?Kne:Zne;case"left":case"right":return r?Hrt:Urt;default:return[]}}function Grt(e,r,n,o){const i=Hm(e);let a=Wrt(wl(e),n==="start",o);return i&&(a=a.map(l=>l+"-"+i),r&&(a=a.concat(a.map(aT)))),a}function F4(e){return e.replace(/left|right|bottom|top/g,r=>Ort[r])}function Yrt(e){return{top:0,right:0,bottom:0,left:0,...e}}function lT(e){return typeof e!="number"?Yrt(e):{top:e,right:e,bottom:e,left:e}}function Um(e){const{x:r,y:n,width:o,height:i}=e;return{width:o,height:i,top:n,left:r,right:r+o,bottom:n+i,x:r,y:n}}function Xrt(){const e=navigator.userAgentData;return e!=null&&e.platform?e.platform:navigator.platform}function Krt(){const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?e.brands.map(r=>{let{brand:n,version:o}=r;return n+"/"+o}).join(" "):navigator.userAgent}function Zrt(){return/apple/i.test(navigator.vendor)}function Qrt(){return Xrt().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function Jrt(){return Krt().includes("jsdom/")}const Qne="data-floating-ui-focusable",ent="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function Jne(e){let r=e.activeElement;for(;((n=r)==null||(n=n.shadowRoot)==null?void 0:n.activeElement)!=null;){var n;r=r.shadowRoot.activeElement}return r}function P0(e,r){if(!e||!r)return!1;const n=r.getRootNode==null?void 0:r.getRootNode();if(e.contains(r))return!0;if(n&&Jz(n)){let o=r;for(;o;){if(e===o)return!0;o=o.parentNode||o.host}}return!1}function Wm(e){return"composedPath"in e?e.composedPath()[0]:e.target}function sT(e,r){if(r==null)return!1;if("composedPath"in e)return e.composedPath().includes(r);const n=e;return n.target!=null&&r.contains(n.target)}function tnt(e){return e.matches("html,body")}function Ip(e){return e?.ownerDocument||document}function rnt(e){return Mi(e)&&e.matches(ent)}function nnt(e){if(!e||Jrt())return!0;try{return e.matches(":focus-visible")}catch{return!0}}function ont(e){return e?e.hasAttribute(Qne)?e:e.querySelector("["+Qne+"]")||e:null}function V4(e,r,n){return n===void 0&&(n=!0),e.filter(o=>{var i;return o.parentId===r&&(!n||((i=o.context)==null?void 0:i.open))}).flatMap(o=>[o,...V4(e,o.id,n)])}function int(e){return"nativeEvent"in e}function cT(e,r){const n=["mouse","pen"];return n.push("",void 0),n.includes(e)}var ant=typeof document<"u",lnt=function(){},us=ant?S.useLayoutEffect:lnt;const snt={...gb};function q4(e){const r=S.useRef(e);return us(()=>{r.current=e}),r}const cnt=snt.useInsertionEffect,dnt=cnt||(e=>e());function ps(e){const r=S.useRef(()=>{});return dnt(()=>{r.current=e}),S.useCallback(function(){for(var n=arguments.length,o=new Array(n),i=0;i{const{placement:o="bottom",strategy:i="absolute",middleware:a=[],platform:l}=n,s=a.filter(Boolean),c=await(l.isRTL==null?void 0:l.isRTL(r));let d=await l.getElementRects({reference:e,floating:r,strategy:i}),{x:u,y:p}=eoe(d,o,c),f=o,g={},v=0;for(let w=0;w({name:"arrow",options:e,async fn(r){const{x:n,y:o,placement:i,rects:a,platform:l,elements:s,middlewareData:c}=r,{element:d,padding:u=0}=ds(e,r)||{};if(d==null)return{};const p=lT(u),f={x:n,y:o},g=iT(i),v=oT(g),w=await l.getDimensions(d),x=g==="y",k=x?"top":"left",C=x?"bottom":"right",_=x?"clientHeight":"clientWidth",$=a.reference[v]+a.reference[g]-f[g]-a.floating[v],R=f[g]-a.reference[g],T=await(l.getOffsetParent==null?void 0:l.getOffsetParent(d));let A=T?T[_]:0;(!A||!await(l.isElement==null?void 0:l.isElement(T)))&&(A=s.floating[_]||a.floating[v]);const z=$/2-R/2,j=A/2-w[v]/2-1,I=xl(p[k],j),P=xl(p[C],j),L=I,H=A-w[v]-P,M=A/2-w[v]/2+z,V=rT(L,M,H),B=!c.arrow&&Hm(i)!=null&&M!==V&&a.reference[v]/2-(MM<=0)){var P,L;const M=(((P=a.flip)==null?void 0:P.index)||0)+1,V=A[M];if(V&&(!(p==="alignment"&&C!==kl(V))||I.every(F=>kl(F.placement)===C?F.overflows[0]>0:!0)))return{data:{index:M,overflows:I},reset:{placement:V}};let B=(L=I.filter(F=>F.overflows[0]<=0).sort((F,q)=>F.overflows[1]-q.overflows[1])[0])==null?void 0:L.placement;if(!B)switch(g){case"bestFit":{var H;const F=(H=I.filter(q=>{if(T){const G=kl(q.placement);return G===C||G==="y"}return!0}).map(q=>[q.placement,q.overflows.filter(G=>G>0).reduce((G,U)=>G+U,0)]).sort((q,G)=>q[1]-G[1])[0])==null?void 0:H[0];F&&(B=F);break}case"initialPlacement":B=s;break}if(i!==B)return{reset:{placement:B}}}return{}}}};function toe(e,r){return{top:e.top-r.height,right:e.right-r.width,bottom:e.bottom-r.height,left:e.left-r.width}}function roe(e){return Irt.some(r=>e[r]>=0)}const fnt=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(r){const{rects:n}=r,{strategy:o="referenceHidden",...i}=ds(e,r);switch(o){case"referenceHidden":{const a=await B0(r,{...i,elementContext:"reference"}),l=toe(a,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:roe(l)}}}case"escaped":{const a=await B0(r,{...i,altBoundary:!0}),l=toe(a,n.floating);return{data:{escapedOffsets:l,escaped:roe(l)}}}default:return{}}}}};function noe(e){const r=xl(...e.map(a=>a.left)),n=xl(...e.map(a=>a.top)),o=To(...e.map(a=>a.right)),i=To(...e.map(a=>a.bottom));return{x:r,y:n,width:o-r,height:i-n}}function mnt(e){const r=e.slice().sort((i,a)=>i.y-a.y),n=[];let o=null;for(let i=0;io.height/2?n.push([a]):n[n.length-1].push(a),o=a}return n.map(i=>Um(noe(i)))}const gnt=function(e){return e===void 0&&(e={}),{name:"inline",options:e,async fn(r){const{placement:n,elements:o,rects:i,platform:a,strategy:l}=r,{padding:s=2,x:c,y:d}=ds(e,r),u=Array.from(await(a.getClientRects==null?void 0:a.getClientRects(o.reference))||[]),p=mnt(u),f=Um(noe(u)),g=lT(s);function v(){if(p.length===2&&p[0].left>p[1].right&&c!=null&&d!=null)return p.find(x=>c>x.left-g.left&&cx.top-g.top&&d=2){if(kl(n)==="y"){const I=p[0],P=p[p.length-1],L=wl(n)==="top",H=I.top,M=P.bottom,V=L?I.left:P.left,B=L?I.right:P.right,F=B-V,q=M-H;return{top:H,bottom:M,left:V,right:B,width:F,height:q,x:V,y:H}}const x=wl(n)==="left",k=To(...p.map(I=>I.right)),C=xl(...p.map(I=>I.left)),_=p.filter(I=>x?I.left===C:I.right===k),$=_[0].top,R=_[_.length-1].bottom,T=C,A=k,z=A-T,j=R-$;return{top:$,bottom:R,left:T,right:A,width:z,height:j,x:T,y:$}}return f}const w=await a.getElementRects({reference:{getBoundingClientRect:v},floating:o.floating,strategy:l});return i.reference.x!==w.reference.x||i.reference.y!==w.reference.y||i.reference.width!==w.reference.width||i.reference.height!==w.reference.height?{reset:{rects:w}}:{}}}},ooe=new Set(["left","top"]);async function ynt(e,r){const{placement:n,platform:o,elements:i}=e,a=await(o.isRTL==null?void 0:o.isRTL(i.floating)),l=wl(n),s=Hm(n),c=kl(n)==="y",d=ooe.has(l)?-1:1,u=a&&c?-1:1,p=ds(r,e);let{mainAxis:f,crossAxis:g,alignmentAxis:v}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return s&&typeof v=="number"&&(g=s==="end"?v*-1:v),c?{x:g*u,y:f*d}:{x:f*d,y:g*u}}const vnt=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(r){var n,o;const{x:i,y:a,placement:l,middlewareData:s}=r,c=await ynt(r,e);return l===((n=s.offset)==null?void 0:n.placement)&&(o=s.arrow)!=null&&o.alignmentOffset?{}:{x:i+c.x,y:a+c.y,data:{...c,placement:l}}}}},bnt=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(r){const{x:n,y:o,placement:i}=r,{mainAxis:a=!0,crossAxis:l=!1,limiter:s={fn:x=>{let{x:k,y:C}=x;return{x:k,y:C}}},...c}=ds(e,r),d={x:n,y:o},u=await B0(r,c),p=kl(wl(i)),f=nT(p);let g=d[f],v=d[p];if(a){const x=f==="y"?"top":"left",k=f==="y"?"bottom":"right",C=g+u[x],_=g-u[k];g=rT(C,g,_)}if(l){const x=p==="y"?"top":"left",k=p==="y"?"bottom":"right",C=v+u[x],_=v-u[k];v=rT(C,v,_)}const w=s.fn({...r,[f]:g,[p]:v});return{...w,data:{x:w.x-n,y:w.y-o,enabled:{[f]:a,[p]:l}}}}}},xnt=function(e){return e===void 0&&(e={}),{options:e,fn(r){const{x:n,y:o,placement:i,rects:a,middlewareData:l}=r,{offset:s=0,mainAxis:c=!0,crossAxis:d=!0}=ds(e,r),u={x:n,y:o},p=kl(i),f=nT(p);let g=u[f],v=u[p];const w=ds(s,r),x=typeof w=="number"?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(c){const _=f==="y"?"height":"width",$=a.reference[f]-a.floating[_]+x.mainAxis,R=a.reference[f]+a.reference[_]-x.mainAxis;g<$?g=$:g>R&&(g=R)}if(d){var k,C;const _=f==="y"?"width":"height",$=ooe.has(wl(i)),R=a.reference[p]-a.floating[_]+($&&((k=l.offset)==null?void 0:k[p])||0)+($?0:x.crossAxis),T=a.reference[p]+a.reference[_]+($?0:((C=l.offset)==null?void 0:C[p])||0)-($?x.crossAxis:0);vT&&(v=T)}return{[f]:g,[p]:v}}}},wnt=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(r){var n,o;const{placement:i,rects:a,platform:l,elements:s}=r,{apply:c=()=>{},...d}=ds(e,r),u=await B0(r,d),p=wl(i),f=Hm(i),g=kl(i)==="y",{width:v,height:w}=a.floating;let x,k;p==="top"||p==="bottom"?(x=p,k=f===(await(l.isRTL==null?void 0:l.isRTL(s.floating))?"start":"end")?"left":"right"):(k=p,x=f==="end"?"top":"bottom");const C=w-u.top-u.bottom,_=v-u.left-u.right,$=xl(w-u[x],C),R=xl(v-u[k],_),T=!r.middlewareData.shift;let A=$,z=R;if((n=r.middlewareData.shift)!=null&&n.enabled.x&&(z=_),(o=r.middlewareData.shift)!=null&&o.enabled.y&&(A=C),T&&!f){const I=To(u.left,0),P=To(u.right,0),L=To(u.top,0),H=To(u.bottom,0);g?z=v-2*(I!==0||P!==0?I+P:To(u.left,u.right)):A=w-2*(L!==0||H!==0?L+H:To(u.top,u.bottom))}await c({...r,availableWidth:z,availableHeight:A});const j=await l.getDimensions(s.floating);return v!==j.width||w!==j.height?{reset:{rects:!0}}:{}}}};function ioe(e){const r=_a(e);let n=parseFloat(r.width)||0,o=parseFloat(r.height)||0;const i=Mi(e),a=i?e.offsetWidth:n,l=i?e.offsetHeight:o,s=O4(n)!==a||O4(o)!==l;return s&&(n=a,o=l),{width:n,height:o,$:s}}function dT(e){return Mr(e)?e:e.contextElement}function Gm(e){const r=dT(e);if(!Mi(r))return cs(1);const n=r.getBoundingClientRect(),{width:o,height:i,$:a}=ioe(r);let l=(a?O4(n.width):n.width)/o,s=(a?O4(n.height):n.height)/i;return(!l||!Number.isFinite(l))&&(l=1),(!s||!Number.isFinite(s))&&(s=1),{x:l,y:s}}const knt=cs(0);function aoe(e){const r=si(e);return!B4()||!r.visualViewport?knt:{x:r.visualViewport.offsetLeft,y:r.visualViewport.offsetTop}}function _nt(e,r,n){return r===void 0&&(r=!1),!n||r&&n!==si(e)?!1:r}function Op(e,r,n,o){r===void 0&&(r=!1),n===void 0&&(n=!1);const i=e.getBoundingClientRect(),a=dT(e);let l=cs(1);r&&(o?Mr(o)&&(l=Gm(o)):l=Gm(e));const s=_nt(a,n,o)?aoe(a):cs(0);let c=(i.left+s.x)/l.x,d=(i.top+s.y)/l.y,u=i.width/l.x,p=i.height/l.y;if(a){const f=si(a),g=o&&Mr(o)?si(o):o;let v=f,w=tT(v);for(;w&&o&&g!==v;){const x=Gm(w),k=w.getBoundingClientRect(),C=_a(w),_=k.left+(w.clientLeft+parseFloat(C.paddingLeft))*x.x,$=k.top+(w.clientTop+parseFloat(C.paddingTop))*x.y;c*=x.x,d*=x.y,u*=x.x,p*=x.y,c+=_,d+=$,v=si(w),w=tT(v)}}return Um({width:u,height:p,x:c,y:d})}function H4(e,r){const n=I4(e).scrollLeft;return r?r.left+n:Op(ss(e)).left+n}function loe(e,r){const n=e.getBoundingClientRect(),o=n.left+r.scrollLeft-H4(e,n),i=n.top+r.scrollTop;return{x:o,y:i}}function Snt(e){let{elements:r,rect:n,offsetParent:o,strategy:i}=e;const a=i==="fixed",l=ss(o),s=r?P4(r.floating):!1;if(o===l||s&&a)return n;let c={scrollLeft:0,scrollTop:0},d=cs(1);const u=cs(0),p=Mi(o);if((p||!p&&!a)&&((qm(o)!=="body"||N0(l))&&(c=I4(o)),Mi(o))){const g=Op(o);d=Gm(o),u.x=g.x+o.clientLeft,u.y=g.y+o.clientTop}const f=l&&!p&&!a?loe(l,c):cs(0);return{width:n.width*d.x,height:n.height*d.y,x:n.x*d.x-c.scrollLeft*d.x+u.x+f.x,y:n.y*d.y-c.scrollTop*d.y+u.y+f.y}}function Ent(e){return Array.from(e.getClientRects())}function Cnt(e){const r=ss(e),n=I4(e),o=e.ownerDocument.body,i=To(r.scrollWidth,r.clientWidth,o.scrollWidth,o.clientWidth),a=To(r.scrollHeight,r.clientHeight,o.scrollHeight,o.clientHeight);let l=-n.scrollLeft+H4(e);const s=-n.scrollTop;return _a(o).direction==="rtl"&&(l+=To(r.clientWidth,o.clientWidth)-i),{width:i,height:a,x:l,y:s}}const soe=25;function $nt(e,r){const n=si(e),o=ss(e),i=n.visualViewport;let a=o.clientWidth,l=o.clientHeight,s=0,c=0;if(i){a=i.width,l=i.height;const u=B4();(!u||u&&r==="fixed")&&(s=i.offsetLeft,c=i.offsetTop)}const d=H4(o);if(d<=0){const u=o.ownerDocument,p=u.body,f=getComputedStyle(p),g=u.compatMode==="CSS1Compat"&&parseFloat(f.marginLeft)+parseFloat(f.marginRight)||0,v=Math.abs(o.clientWidth-p.clientWidth-g);v<=soe&&(a-=v)}else d<=soe&&(a+=d);return{width:a,height:l,x:s,y:c}}const Rnt=new Set(["absolute","fixed"]);function znt(e,r){const n=Op(e,!0,r==="fixed"),o=n.top+e.clientTop,i=n.left+e.clientLeft,a=Mi(e)?Gm(e):cs(1),l=e.clientWidth*a.x,s=e.clientHeight*a.y,c=i*a.x,d=o*a.y;return{width:l,height:s,x:c,y:d}}function coe(e,r,n){let o;if(r==="viewport")o=$nt(e,n);else if(r==="document")o=Cnt(ss(e));else if(Mr(r))o=znt(r,n);else{const i=aoe(e);o={x:r.x-i.x,y:r.y-i.y,width:r.width,height:r.height}}return Um(o)}function doe(e,r){const n=vc(e);return n===r||!Mr(n)||yc(n)?!1:_a(n).position==="fixed"||doe(n,r)}function Tnt(e,r){const n=r.get(e);if(n)return n;let o=bc(e,[],!1).filter(s=>Mr(s)&&qm(s)!=="body"),i=null;const a=_a(e).position==="fixed";let l=a?vc(e):e;for(;Mr(l)&&!yc(l);){const s=_a(l),c=eT(l);!c&&s.position==="fixed"&&(i=null),(a?!c&&!i:!c&&s.position==="static"&&i&&Rnt.has(i.position)||N0(l)&&!c&&doe(e,l))?o=o.filter(d=>d!==l):i=s,l=vc(l)}return r.set(e,o),o}function jnt(e){let{element:r,boundary:n,rootBoundary:o,strategy:i}=e;const a=[...n==="clippingAncestors"?P4(r)?[]:Tnt(r,this._c):[].concat(n),o],l=a[0],s=a.reduce((c,d)=>{const u=coe(r,d,i);return c.top=To(u.top,c.top),c.right=xl(u.right,c.right),c.bottom=xl(u.bottom,c.bottom),c.left=To(u.left,c.left),c},coe(r,l,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function Ant(e){const{width:r,height:n}=ioe(e);return{width:r,height:n}}function Dnt(e,r,n){const o=Mi(r),i=ss(r),a=n==="fixed",l=Op(e,!0,a,r);let s={scrollLeft:0,scrollTop:0};const c=cs(0);function d(){c.x=H4(i)}if(o||!o&&!a)if((qm(r)!=="body"||N0(i))&&(s=I4(r)),o){const g=Op(r,!0,a,r);c.x=g.x+r.clientLeft,c.y=g.y+r.clientTop}else i&&d();a&&!o&&i&&d();const u=i&&!o&&!a?loe(i,s):cs(0),p=l.left+s.scrollLeft-c.x-u.x,f=l.top+s.scrollTop-c.y-u.y;return{x:p,y:f,width:l.width,height:l.height}}function uT(e){return _a(e).position==="static"}function uoe(e,r){if(!Mi(e)||_a(e).position==="fixed")return null;if(r)return r(e);let n=e.offsetParent;return ss(e)===n&&(n=n.ownerDocument.body),n}function poe(e,r){const n=si(e);if(P4(e))return n;if(!Mi(e)){let i=vc(e);for(;i&&!yc(i);){if(Mr(i)&&!uT(i))return i;i=vc(i)}return n}let o=uoe(e,r);for(;o&&jrt(o)&&uT(o);)o=uoe(o,r);return o&&yc(o)&&uT(o)&&!eT(o)?n:o||Prt(e)||n}const Mnt=async function(e){const r=this.getOffsetParent||poe,n=this.getDimensions,o=await n(e.floating);return{reference:Dnt(e.reference,await r(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function Nnt(e){return _a(e).direction==="rtl"}const Pnt={convertOffsetParentRelativeRectToViewportRelativeRect:Snt,getDocumentElement:ss,getClippingRect:jnt,getOffsetParent:poe,getElementRects:Mnt,getClientRects:Ent,getDimensions:Ant,getScale:Gm,isElement:Mr,isRTL:Nnt};function hoe(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}function Bnt(e,r){let n=null,o;const i=ss(e);function a(){var s;clearTimeout(o),(s=n)==null||s.disconnect(),n=null}function l(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();const d=e.getBoundingClientRect(),{left:u,top:p,width:f,height:g}=d;if(s||r(),!f||!g)return;const v=L4(p),w=L4(i.clientWidth-(u+f)),x=L4(i.clientHeight-(p+g)),k=L4(u),C={rootMargin:-v+"px "+-w+"px "+-x+"px "+-k+"px",threshold:To(0,xl(1,c))||1};let _=!0;function $(R){const T=R[0].intersectionRatio;if(T!==c){if(!_)return l();T?l(!1,T):o=setTimeout(()=>{l(!1,1e-7)},1e3)}T===1&&!hoe(d,e.getBoundingClientRect())&&l(),_=!1}try{n=new IntersectionObserver($,{...C,root:i.ownerDocument})}catch{n=new IntersectionObserver($,C)}n.observe(e)}return l(!0),a}function pT(e,r,n,o){o===void 0&&(o={});const{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:l=typeof ResizeObserver=="function",layoutShift:s=typeof IntersectionObserver=="function",animationFrame:c=!1}=o,d=dT(e),u=i||a?[...d?bc(d):[],...bc(r)]:[];u.forEach(k=>{i&&k.addEventListener("scroll",n,{passive:!0}),a&&k.addEventListener("resize",n)});const p=d&&s?Bnt(d,n):null;let f=-1,g=null;l&&(g=new ResizeObserver(k=>{let[C]=k;C&&C.target===d&&g&&(g.unobserve(r),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var _;(_=g)==null||_.observe(r)})),n()}),d&&!c&&g.observe(d),g.observe(r));let v,w=c?Op(e):null;c&&x();function x(){const k=Op(e);w&&!hoe(w,k)&&n(),w=k,v=requestAnimationFrame(x)}return n(),()=>{var k;u.forEach(C=>{i&&C.removeEventListener("scroll",n),a&&C.removeEventListener("resize",n)}),p?.(),(k=g)==null||k.disconnect(),g=null,c&&cancelAnimationFrame(v)}}const Int=vnt,Ont=bnt,Lnt=hnt,Fnt=wnt,Vnt=fnt,foe=pnt,qnt=gnt,Hnt=xnt,Unt=(e,r,n)=>{const o=new Map,i={platform:Pnt,...n},a={...i.platform,_c:o};return unt(e,r,{...i,platform:a})};var Wnt=typeof document<"u",Gnt=function(){},U4=Wnt?S.useLayoutEffect:Gnt;function W4(e,r){if(e===r)return!0;if(typeof e!=typeof r)return!1;if(typeof e=="function"&&e.toString()===r.toString())return!0;let n,o,i;if(e&&r&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==r.length)return!1;for(o=n;o--!==0;)if(!W4(e[o],r[o]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!{}.hasOwnProperty.call(r,i[o]))return!1;for(o=n;o--!==0;){const a=i[o];if(!(a==="_owner"&&e.$$typeof)&&!W4(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}function moe(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function goe(e,r){const n=moe(e);return Math.round(r*n)/n}function hT(e){const r=S.useRef(e);return U4(()=>{r.current=e}),r}function Ynt(e){e===void 0&&(e={});const{placement:r="bottom",strategy:n="absolute",middleware:o=[],platform:i,elements:{reference:a,floating:l}={},transform:s=!0,whileElementsMounted:c,open:d}=e,[u,p]=S.useState({x:0,y:0,strategy:n,placement:r,middlewareData:{},isPositioned:!1}),[f,g]=S.useState(o);W4(f,o)||g(o);const[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(q=>{q!==T.current&&(T.current=q,w(q))},[]),_=S.useCallback(q=>{q!==A.current&&(A.current=q,k(q))},[]),$=a||v,R=l||x,T=S.useRef(null),A=S.useRef(null),z=S.useRef(u),j=c!=null,I=hT(c),P=hT(i),L=hT(d),H=S.useCallback(()=>{if(!T.current||!A.current)return;const q={placement:r,strategy:n,middleware:f};P.current&&(q.platform=P.current),Unt(T.current,A.current,q).then(G=>{const U={...G,isPositioned:L.current!==!1};M.current&&!W4(z.current,U)&&(z.current=U,Va.flushSync(()=>{p(U)}))})},[f,r,n,P,L]);U4(()=>{d===!1&&z.current.isPositioned&&(z.current.isPositioned=!1,p(q=>({...q,isPositioned:!1})))},[d]);const M=S.useRef(!1);U4(()=>(M.current=!0,()=>{M.current=!1}),[]),U4(()=>{if($&&(T.current=$),R&&(A.current=R),$&&R){if(I.current)return I.current($,R,H);H()}},[$,R,H,I,j]);const V=S.useMemo(()=>({reference:T,floating:A,setReference:C,setFloating:_}),[C,_]),B=S.useMemo(()=>({reference:$,floating:R}),[$,R]),F=S.useMemo(()=>{const q={position:n,left:0,top:0};if(!B.floating)return q;const G=goe(B.floating,u.x),U=goe(B.floating,u.y);return s?{...q,transform:"translate("+G+"px, "+U+"px)",...moe(B.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:G,top:U}},[n,s,B.floating,u.x,u.y]);return S.useMemo(()=>({...u,update:H,refs:V,elements:B,floatingStyles:F}),[u,H,V,B,F])}const Xnt=e=>{function r(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:o,padding:i}=typeof e=="function"?e(n):e;return o&&r(o)?o.current!=null?foe({element:o.current,padding:i}).fn(n):{}:o?foe({element:o,padding:i}).fn(n):{}}}},yoe=(e,r)=>({...Int(e),options:[e,r]}),fT=(e,r)=>({...Ont(e),options:[e,r]}),voe=(e,r)=>({...Hnt(e),options:[e,r]}),G4=(e,r)=>({...Lnt(e),options:[e,r]}),Knt=(e,r)=>({...Fnt(e),options:[e,r]}),Znt=(e,r)=>({...Vnt(e),options:[e,r]}),I0=(e,r)=>({...qnt(e),options:[e,r]}),boe=(e,r)=>({...Xnt(e),options:[e,r]});function xoe(e){const r=S.useRef(void 0),n=S.useCallback(o=>{const i=e.map(a=>{if(a!=null){if(typeof a=="function"){const l=a,s=l(o);return typeof s=="function"?s:()=>{l(null)}}return a.current=o,()=>{a.current=null}}});return()=>{i.forEach(a=>a?.())}},e);return S.useMemo(()=>e.every(o=>o==null)?null:o=>{r.current&&(r.current(),r.current=void 0),o!=null&&(r.current=n(o))},e)}const Qnt="data-floating-ui-focusable",woe="active",koe="selected",Jnt={...gb};let _oe=!1,eot=0;const Soe=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+eot++;function tot(){const[e,r]=S.useState(()=>_oe?Soe():void 0);return us(()=>{e==null&&r(Soe())},[]),S.useEffect(()=>{_oe=!0},[]),e}const rot=Jnt.useId,Eoe=rot||tot;function not(){const e=new Map;return{emit(r,n){var o;(o=e.get(r))==null||o.forEach(i=>i(n))},on(r,n){e.has(r)||e.set(r,new Set),e.get(r).add(n)},off(r,n){var o;(o=e.get(r))==null||o.delete(n)}}}const oot=S.createContext(null),iot=S.createContext(null),mT=()=>{var e;return((e=S.useContext(oot))==null?void 0:e.id)||null},gT=()=>S.useContext(iot);function yT(e){return"data-floating-ui-"+e}function Sa(e){e.current!==-1&&(clearTimeout(e.current),e.current=-1)}const Coe=yT("safe-polygon");function Y4(e,r,n){if(n&&!cT(n))return 0;if(typeof e=="number")return e;if(typeof e=="function"){const o=e();return typeof o=="number"?o:o?.[r]}return e?.[r]}function vT(e){return typeof e=="function"?e():e}function aot(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,dataRef:i,events:a,elements:l}=e,{enabled:s=!0,delay:c=0,handleClose:d=null,mouseOnly:u=!1,restMs:p=0,move:f=!0}=r,g=gT(),v=mT(),w=q4(d),x=q4(c),k=q4(n),C=q4(p),_=S.useRef(),$=S.useRef(-1),R=S.useRef(),T=S.useRef(-1),A=S.useRef(!0),z=S.useRef(!1),j=S.useRef(()=>{}),I=S.useRef(!1),P=ps(()=>{var F;const q=(F=i.current.openEvent)==null?void 0:F.type;return q?.includes("mouse")&&q!=="mousedown"});S.useEffect(()=>{if(!s)return;function F(q){let{open:G}=q;G||(Sa($),Sa(T),A.current=!0,I.current=!1)}return a.on("openchange",F),()=>{a.off("openchange",F)}},[s,a]),S.useEffect(()=>{if(!s||!w.current||!n)return;function F(G){P()&&o(!1,G,"hover")}const q=Ip(l.floating).documentElement;return q.addEventListener("mouseleave",F),()=>{q.removeEventListener("mouseleave",F)}},[l.floating,n,o,s,w,P]);const L=S.useCallback(function(F,q,G){q===void 0&&(q=!0),G===void 0&&(G="hover");const U=Y4(x.current,"close",_.current);U&&!R.current?(Sa($),$.current=window.setTimeout(()=>o(!1,F,G),U)):q&&(Sa($),o(!1,F,G))},[x,o]),H=ps(()=>{j.current(),R.current=void 0}),M=ps(()=>{if(z.current){const F=Ip(l.floating).body;F.style.pointerEvents="",F.removeAttribute(Coe),z.current=!1}}),V=ps(()=>i.current.openEvent?["click","mousedown"].includes(i.current.openEvent.type):!1);S.useEffect(()=>{if(!s)return;function F(K){if(Sa($),A.current=!1,u&&!cT(_.current)||vT(C.current)>0&&!Y4(x.current,"open"))return;const O=Y4(x.current,"open",_.current);O?$.current=window.setTimeout(()=>{k.current||o(!0,K,"hover")},O):n||o(!0,K,"hover")}function q(K){if(V()){M();return}j.current();const O=Ip(l.floating);if(Sa(T),I.current=!1,w.current&&i.current.floatingContext){n||Sa($),R.current=w.current({...i.current.floatingContext,tree:g,x:K.clientX,y:K.clientY,onClose(){M(),H(),V()||L(K,!0,"safe-polygon")}});const W=R.current;O.addEventListener("mousemove",W),j.current=()=>{O.removeEventListener("mousemove",W)};return}(_.current!=="touch"||!P0(l.floating,K.relatedTarget))&&L(K)}function G(K){V()||i.current.floatingContext&&(w.current==null||w.current({...i.current.floatingContext,tree:g,x:K.clientX,y:K.clientY,onClose(){M(),H(),V()||L(K)}})(K))}function U(){Sa($)}function Y(K){V()||L(K,!1)}if(Mr(l.domReference)){const K=l.domReference,O=l.floating;return n&&K.addEventListener("mouseleave",G),f&&K.addEventListener("mousemove",F,{once:!0}),K.addEventListener("mouseenter",F),K.addEventListener("mouseleave",q),O&&(O.addEventListener("mouseleave",G),O.addEventListener("mouseenter",U),O.addEventListener("mouseleave",Y)),()=>{n&&K.removeEventListener("mouseleave",G),f&&K.removeEventListener("mousemove",F),K.removeEventListener("mouseenter",F),K.removeEventListener("mouseleave",q),O&&(O.removeEventListener("mouseleave",G),O.removeEventListener("mouseenter",U),O.removeEventListener("mouseleave",Y))}}},[l,s,e,u,f,L,H,M,o,n,k,g,x,w,i,V,C]),us(()=>{var F;if(s&&n&&(F=w.current)!=null&&(F=F.__options)!=null&&F.blockPointerEvents&&P()){z.current=!0;const G=l.floating;if(Mr(l.domReference)&&G){var q;const U=Ip(l.floating).body;U.setAttribute(Coe,"");const Y=l.domReference,K=g==null||(q=g.nodesRef.current.find(O=>O.id===v))==null||(q=q.context)==null?void 0:q.elements.floating;return K&&(K.style.pointerEvents=""),U.style.pointerEvents="none",Y.style.pointerEvents="auto",G.style.pointerEvents="auto",()=>{U.style.pointerEvents="",Y.style.pointerEvents="",G.style.pointerEvents=""}}}},[s,n,v,l,g,w,P]),us(()=>{n||(_.current=void 0,I.current=!1,H(),M())},[n,H,M]),S.useEffect(()=>()=>{H(),Sa($),Sa(T),M()},[s,l.domReference,H,M]);const B=S.useMemo(()=>{function F(q){_.current=q.pointerType}return{onPointerDown:F,onPointerEnter:F,onMouseMove(q){const{nativeEvent:G}=q;function U(){!A.current&&!k.current&&o(!0,G,"hover")}u&&!cT(_.current)||n||vT(C.current)===0||I.current&&q.movementX**2+q.movementY**2<2||(Sa(T),_.current==="touch"?U():(I.current=!0,T.current=window.setTimeout(U,vT(C.current))))}}},[u,o,n,k,C]);return S.useMemo(()=>s?{reference:B}:{},[s,B])}const bT=()=>{},$oe=S.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:bT,setState:bT,isInstantPhase:!1}),lot=()=>S.useContext($oe);function Roe(e){const{children:r,delay:n,timeoutMs:o=0}=e,[i,a]=S.useReducer((c,d)=>({...c,...d}),{delay:n,timeoutMs:o,initialDelay:n,currentId:null,isInstantPhase:!1}),l=S.useRef(null),s=S.useCallback(c=>{a({currentId:c})},[]);return us(()=>{i.currentId?l.current===null?l.current=i.currentId:i.isInstantPhase||a({isInstantPhase:!0}):(i.isInstantPhase&&a({isInstantPhase:!1}),l.current=null)},[i.currentId,i.isInstantPhase]),y.jsx($oe.Provider,{value:S.useMemo(()=>({...i,setState:a,setCurrentId:s}),[i,s]),children:r})}function sot(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,floatingId:i}=e,{id:a,enabled:l=!0}=r,s=a??i,c=lot(),{currentId:d,setCurrentId:u,initialDelay:p,setState:f,timeoutMs:g}=c;return us(()=>{l&&d&&(f({delay:{open:1,close:Y4(p,"close")}}),d!==s&&o(!1))},[l,s,o,f,d,p]),us(()=>{function v(){o(!1),f({delay:p,currentId:null})}if(l&&d&&!n&&d===s){if(g){const w=window.setTimeout(v,g);return()=>{clearTimeout(w)}}v()}},[l,n,f,d,s,o,p,g]),us(()=>{l&&(u===bT||!n||u(s))},[l,n,u,s]),c}const cot={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},dot={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},zoe=e=>{var r,n;return{escapeKey:typeof e=="boolean"?e:(r=e?.escapeKey)!=null?r:!1,outsidePress:typeof e=="boolean"?e:(n=e?.outsidePress)!=null?n:!0}};function uot(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,elements:i,dataRef:a}=e,{enabled:l=!0,escapeKey:s=!0,outsidePress:c=!0,outsidePressEvent:d="pointerdown",referencePress:u=!1,referencePressEvent:p="pointerdown",ancestorScroll:f=!1,bubbles:g,capture:v}=r,w=gT(),x=ps(typeof c=="function"?c:()=>!1),k=typeof c=="function"?x:c,C=S.useRef(!1),{escapeKey:_,outsidePress:$}=zoe(g),{escapeKey:R,outsidePress:T}=zoe(v),A=S.useRef(!1),z=ps(M=>{var V;if(!n||!l||!s||M.key!=="Escape"||A.current)return;const B=(V=a.current.floatingContext)==null?void 0:V.nodeId,F=w?V4(w.nodesRef.current,B):[];if(!_&&(M.stopPropagation(),F.length>0)){let q=!0;if(F.forEach(G=>{var U;if((U=G.context)!=null&&U.open&&!G.context.dataRef.current.__escapeKeyBubbles){q=!1;return}}),!q)return}o(!1,int(M)?M.nativeEvent:M,"escape-key")}),j=ps(M=>{var V;const B=()=>{var F;z(M),(F=Wm(M))==null||F.removeEventListener("keydown",B)};(V=Wm(M))==null||V.addEventListener("keydown",B)}),I=ps(M=>{var V;const B=a.current.insideReactTree;a.current.insideReactTree=!1;const F=C.current;if(C.current=!1,d==="click"&&F||B||typeof k=="function"&&!k(M))return;const q=Wm(M),G="["+yT("inert")+"]",U=Ip(i.floating).querySelectorAll(G);let Y=Mr(q)?q:null;for(;Y&&!yc(Y);){const Z=vc(Y);if(yc(Z)||!Mr(Z))break;Y=Z}if(U.length&&Mr(q)&&!tnt(q)&&!P0(q,i.floating)&&Array.from(U).every(Z=>!P0(Y,Z)))return;if(Mi(q)&&H){const Z=yc(q),Q=_a(q),ie=/auto|scroll/,te=Z||ie.test(Q.overflowX),re=Z||ie.test(Q.overflowY),ue=te&&q.clientWidth>0&&q.scrollWidth>q.clientWidth,_e=re&&q.clientHeight>0&&q.scrollHeight>q.clientHeight,ce=Q.direction==="rtl",pe=_e&&(ce?M.offsetX<=q.offsetWidth-q.clientWidth:M.offsetX>q.clientWidth),xe=ue&&M.offsetY>q.clientHeight;if(pe||xe)return}const K=(V=a.current.floatingContext)==null?void 0:V.nodeId,O=w&&V4(w.nodesRef.current,K).some(Z=>{var Q;return sT(M,(Q=Z.context)==null?void 0:Q.elements.floating)});if(sT(M,i.floating)||sT(M,i.domReference)||O)return;const W=w?V4(w.nodesRef.current,K):[];if(W.length>0){let Z=!0;if(W.forEach(Q=>{var ie;if((ie=Q.context)!=null&&ie.open&&!Q.context.dataRef.current.__outsidePressBubbles){Z=!1;return}}),!Z)return}o(!1,M,"outside-press")}),P=ps(M=>{var V;const B=()=>{var F;I(M),(F=Wm(M))==null||F.removeEventListener(d,B)};(V=Wm(M))==null||V.addEventListener(d,B)});S.useEffect(()=>{if(!n||!l)return;a.current.__escapeKeyBubbles=_,a.current.__outsidePressBubbles=$;let M=-1;function V(U){o(!1,U,"ancestor-scroll")}function B(){window.clearTimeout(M),A.current=!0}function F(){M=window.setTimeout(()=>{A.current=!1},B4()?5:0)}const q=Ip(i.floating);s&&(q.addEventListener("keydown",R?j:z,R),q.addEventListener("compositionstart",B),q.addEventListener("compositionend",F)),k&&q.addEventListener(d,T?P:I,T);let G=[];return f&&(Mr(i.domReference)&&(G=bc(i.domReference)),Mr(i.floating)&&(G=G.concat(bc(i.floating))),!Mr(i.reference)&&i.reference&&i.reference.contextElement&&(G=G.concat(bc(i.reference.contextElement)))),G=G.filter(U=>{var Y;return U!==((Y=q.defaultView)==null?void 0:Y.visualViewport)}),G.forEach(U=>{U.addEventListener("scroll",V,{passive:!0})}),()=>{s&&(q.removeEventListener("keydown",R?j:z,R),q.removeEventListener("compositionstart",B),q.removeEventListener("compositionend",F)),k&&q.removeEventListener(d,T?P:I,T),G.forEach(U=>{U.removeEventListener("scroll",V)}),window.clearTimeout(M)}},[a,i,s,k,d,n,o,f,l,_,$,z,R,j,I,T,P]),S.useEffect(()=>{a.current.insideReactTree=!1},[a,k,d]);const L=S.useMemo(()=>({onKeyDown:z,...u&&{[cot[p]]:M=>{o(!1,M.nativeEvent,"reference-press")},...p!=="click"&&{onClick(M){o(!1,M.nativeEvent,"reference-press")}}}}),[z,o,u,p]),H=S.useMemo(()=>({onKeyDown:z,onMouseDown(){C.current=!0},onMouseUp(){C.current=!0},[dot[d]]:()=>{a.current.insideReactTree=!0}}),[z,d,a]);return S.useMemo(()=>l?{reference:L,floating:H}:{},[l,L,H])}function pot(e){const{open:r=!1,onOpenChange:n,elements:o}=e,i=Eoe(),a=S.useRef({}),[l]=S.useState(()=>not()),s=mT()!=null,[c,d]=S.useState(o.reference),u=ps((g,v,w)=>{a.current.openEvent=g?v:void 0,l.emit("openchange",{open:g,event:v,reason:w,nested:s}),n?.(g,v,w)}),p=S.useMemo(()=>({setPositionReference:d}),[]),f=S.useMemo(()=>({reference:c||o.reference||null,floating:o.floating||null,domReference:o.reference}),[c,o.reference,o.floating]);return S.useMemo(()=>({dataRef:a,open:r,onOpenChange:u,elements:f,events:l,floatingId:i,refs:p}),[r,u,f,l,i,p])}function xT(e){e===void 0&&(e={});const{nodeId:r}=e,n=pot({...e,elements:{reference:null,floating:null,...e.elements}}),o=e.rootContext||n,i=o.elements,[a,l]=S.useState(null),[s,c]=S.useState(null),d=i?.domReference||a,u=S.useRef(null),p=gT();us(()=>{d&&(u.current=d)},[d]);const f=Ynt({...e,elements:{...i,...s&&{reference:s}}}),g=S.useCallback(C=>{const _=Mr(C)?{getBoundingClientRect:()=>C.getBoundingClientRect(),getClientRects:()=>C.getClientRects(),contextElement:C}:C;c(_),f.refs.setReference(_)},[f.refs]),v=S.useCallback(C=>{(Mr(C)||C===null)&&(u.current=C,l(C)),(Mr(f.refs.reference.current)||f.refs.reference.current===null||C!==null&&!Mr(C))&&f.refs.setReference(C)},[f.refs]),w=S.useMemo(()=>({...f.refs,setReference:v,setPositionReference:g,domReference:u}),[f.refs,v,g]),x=S.useMemo(()=>({...f.elements,domReference:d}),[f.elements,d]),k=S.useMemo(()=>({...f,...o,refs:w,elements:x,nodeId:r}),[f,w,x,r,o]);return us(()=>{o.dataRef.current.floatingContext=k;const C=p?.nodesRef.current.find(_=>_.id===r);C&&(C.context=k)}),S.useMemo(()=>({...f,context:k,refs:w,elements:x}),[f,w,x,k])}function wT(){return Qrt()&&Zrt()}function hot(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,events:i,dataRef:a,elements:l}=e,{enabled:s=!0,visibleOnly:c=!0}=r,d=S.useRef(!1),u=S.useRef(-1),p=S.useRef(!0);S.useEffect(()=>{if(!s)return;const g=si(l.domReference);function v(){!n&&Mi(l.domReference)&&l.domReference===Jne(Ip(l.domReference))&&(d.current=!0)}function w(){p.current=!0}function x(){p.current=!1}return g.addEventListener("blur",v),wT()&&(g.addEventListener("keydown",w,!0),g.addEventListener("pointerdown",x,!0)),()=>{g.removeEventListener("blur",v),wT()&&(g.removeEventListener("keydown",w,!0),g.removeEventListener("pointerdown",x,!0))}},[l.domReference,n,s]),S.useEffect(()=>{if(!s)return;function g(v){let{reason:w}=v;(w==="reference-press"||w==="escape-key")&&(d.current=!0)}return i.on("openchange",g),()=>{i.off("openchange",g)}},[i,s]),S.useEffect(()=>()=>{Sa(u)},[]);const f=S.useMemo(()=>({onMouseLeave(){d.current=!1},onFocus(g){if(d.current)return;const v=Wm(g.nativeEvent);if(c&&Mr(v)){if(wT()&&!g.relatedTarget){if(!p.current&&!rnt(v))return}else if(!nnt(v))return}o(!0,g.nativeEvent,"focus")},onBlur(g){d.current=!1;const v=g.relatedTarget,w=g.nativeEvent,x=Mr(v)&&v.hasAttribute(yT("focus-guard"))&&v.getAttribute("data-type")==="outside";u.current=window.setTimeout(()=>{var k;const C=Jne(l.domReference?l.domReference.ownerDocument:document);!v&&C===l.domReference||P0((k=a.current.floatingContext)==null?void 0:k.refs.floating.current,C)||P0(l.domReference,C)||x||o(!1,w,"focus")})}}),[a,l.domReference,o,c]);return S.useMemo(()=>s?{reference:f}:{},[s,f])}function kT(e,r,n){const o=new Map,i=n==="item";let a=e;if(i&&e){const{[woe]:l,[koe]:s,...c}=e;a=c}return{...n==="floating"&&{tabIndex:-1,[Qnt]:""},...a,...r.map(l=>{const s=l?l[n]:null;return typeof s=="function"?e?s(e):null:s}).concat(e).reduce((l,s)=>(s&&Object.entries(s).forEach(c=>{let[d,u]=c;if(!(i&&[woe,koe].includes(d)))if(d.indexOf("on")===0){if(o.has(d)||o.set(d,[]),typeof u=="function"){var p;(p=o.get(d))==null||p.push(u),l[d]=function(){for(var f,g=arguments.length,v=new Array(g),w=0;wx(...v)).find(x=>x!==void 0)}}}else l[d]=u}),l),{})}}function fot(e){e===void 0&&(e=[]);const r=e.map(s=>s?.reference),n=e.map(s=>s?.floating),o=e.map(s=>s?.item),i=S.useCallback(s=>kT(s,e,"reference"),r),a=S.useCallback(s=>kT(s,e,"floating"),n),l=S.useCallback(s=>kT(s,e,"item"),o);return S.useMemo(()=>({getReferenceProps:i,getFloatingProps:a,getItemProps:l}),[i,a,l])}const mot=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function got(e,r){var n,o;r===void 0&&(r={});const{open:i,elements:a,floatingId:l}=e,{enabled:s=!0,role:c="dialog"}=r,d=Eoe(),u=((n=a.domReference)==null?void 0:n.id)||d,p=S.useMemo(()=>{var k;return((k=ont(a.floating))==null?void 0:k.id)||l},[a.floating,l]),f=(o=mot.get(c))!=null?o:c,g=mT()!=null,v=S.useMemo(()=>f==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]:i?p:void 0}:{"aria-expanded":i?"true":"false","aria-haspopup":f==="alertdialog"?"dialog":f,"aria-controls":i?p:void 0,...f==="listbox"&&{role:"combobox"},...f==="menu"&&{id:u},...f==="menu"&&g&&{role:"menuitem"},...c==="select"&&{"aria-autocomplete":"none"},...c==="combobox"&&{"aria-autocomplete":"list"}},[f,p,g,i,u,c]),w=S.useMemo(()=>{const k={id:p,...f&&{role:f}};return f==="tooltip"||c==="label"?k:{...k,...f==="menu"&&{"aria-labelledby":u}}},[f,p,u,c]),x=S.useCallback(k=>{let{active:C,selected:_}=k;const $={role:"option",...C&&{id:p+"-fui-option"}};switch(c){case"select":case"combobox":return{...$,"aria-selected":_}}return{}},[p,c]);return S.useMemo(()=>s?{reference:v,floating:w,item:x}:{},[s,v,w,x])}const[yot,Ea]=Di("ScrollArea.Root component was not found in tree");function Ym(e,r){const n=Np(r);$4(()=>{let o=0;if(e){const i=new ResizeObserver(()=>{cancelAnimationFrame(o),o=window.requestAnimationFrame(n)});return i.observe(e),()=>{window.cancelAnimationFrame(o),i.unobserve(e)}}},[e,n])}const vot=S.forwardRef((e,r)=>{const{style:n,...o}=e,i=Ea(),[a,l]=S.useState(0),[s,c]=S.useState(0),d=!!(a&&s);return Ym(i.scrollbarX,()=>{const u=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(u),c(u)}),Ym(i.scrollbarY,()=>{const u=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(u),l(u)}),d?y.jsx("div",{...o,ref:r,style:{...n,width:a,height:s}}):null}),bot=S.forwardRef((e,r)=>{const n=Ea(),o=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&o?y.jsx(vot,{...e,ref:r}):null}),xot={scrollHideDelay:1e3,type:"hover"},Toe=S.forwardRef((e,r)=>{const{type:n,scrollHideDelay:o,scrollbars:i,getStyles:a,...l}=ze("ScrollAreaRoot",xot,e),[s,c]=S.useState(null),[d,u]=S.useState(null),[p,f]=S.useState(null),[g,v]=S.useState(null),[w,x]=S.useState(null),[k,C]=S.useState(0),[_,$]=S.useState(0),[R,T]=S.useState(!1),[A,z]=S.useState(!1),j=on(r,I=>c(I));return y.jsx(yot,{value:{type:n,scrollHideDelay:o,scrollArea:s,viewport:d,onViewportChange:u,content:p,onContentChange:f,scrollbarX:g,onScrollbarXChange:v,scrollbarXEnabled:R,onScrollbarXEnabledChange:T,scrollbarY:w,onScrollbarYChange:x,scrollbarYEnabled:A,onScrollbarYEnabledChange:z,onCornerWidthChange:C,onCornerHeightChange:$,getStyles:a},children:y.jsx(Ae,{...l,ref:j,__vars:{"--sa-corner-width":i!=="xy"?"0px":`${k}px`,"--sa-corner-height":i!=="xy"?"0px":`${_}px`}})})});Toe.displayName="@mantine/core/ScrollAreaRoot";function joe(e,r){const n=e/r;return Number.isNaN(n)?0:n}function X4(e){const r=joe(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=(e.scrollbar.size-n)*r;return Math.max(o,18)}function Aoe(e,r){return n=>{if(e[0]===e[1]||r[0]===r[1])return r[0];const o=(r[1]-r[0])/(e[1]-e[0]);return r[0]+o*(n-e[0])}}function wot(e,[r,n]){return Math.min(n,Math.max(r,e))}function Doe(e,r,n="ltr"){const o=X4(r),i=r.scrollbar.paddingStart+r.scrollbar.paddingEnd,a=r.scrollbar.size-i,l=r.content-r.viewport,s=a-o,c=n==="ltr"?[0,l]:[l*-1,0],d=wot(e,c);return Aoe([0,l],[0,s])(d)}function kot(e,r,n,o="ltr"){const i=X4(n),a=i/2,l=r||a,s=i-l,c=n.scrollbar.paddingStart+l,d=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,p=o==="ltr"?[0,u]:[u*-1,0];return Aoe([c,d],p)(e)}function Moe(e,r){return e>0&&e{e?.(o),(n===!1||!o.defaultPrevented)&&r?.(o)}}const[_ot,Noe]=Di("ScrollAreaScrollbar was not found in tree"),Poe=S.forwardRef((e,r)=>{const{sizes:n,hasThumb:o,onThumbChange:i,onThumbPointerUp:a,onThumbPointerDown:l,onThumbPositionChange:s,onDragScroll:c,onWheelScroll:d,onResize:u,...p}=e,f=Ea(),[g,v]=S.useState(null),w=on(r,z=>v(z)),x=S.useRef(null),k=S.useRef(""),{viewport:C}=f,_=n.content-n.viewport,$=Np(d),R=Np(s),T=C4(u,10),A=z=>{if(x.current){const j=z.clientX-x.current.left,I=z.clientY-x.current.top;c({x:j,y:I})}};return S.useEffect(()=>{const z=j=>{const I=j.target;g?.contains(I)&&$(j,_)};return document.addEventListener("wheel",z,{passive:!1}),()=>document.removeEventListener("wheel",z,{passive:!1})},[C,g,_,$]),S.useEffect(R,[n,R]),Ym(g,T),Ym(f.content,T),y.jsx(_ot,{value:{scrollbar:g,hasThumb:o,onThumbChange:Np(i),onThumbPointerUp:Np(a),onThumbPositionChange:R,onThumbPointerDown:Np(l)},children:y.jsx("div",{...p,ref:w,"data-mantine-scrollbar":!0,style:{position:"absolute",...p.style},onPointerDown:Lp(e.onPointerDown,z=>{z.preventDefault(),z.button===0&&(z.target.setPointerCapture(z.pointerId),x.current=g.getBoundingClientRect(),k.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",A(z))}),onPointerMove:Lp(e.onPointerMove,A),onPointerUp:Lp(e.onPointerUp,z=>{const j=z.target;j.hasPointerCapture(z.pointerId)&&(z.preventDefault(),j.releasePointerCapture(z.pointerId))}),onLostPointerCapture:()=>{document.body.style.webkitUserSelect=k.current,x.current=null}})})}),Boe=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:i,...a}=e,l=Ea(),[s,c]=S.useState(),d=S.useRef(null),u=on(r,d,l.onScrollbarXChange);return S.useEffect(()=>{d.current&&c(getComputedStyle(d.current))},[d]),y.jsx(Poe,{"data-orientation":"horizontal",...a,ref:u,sizes:n,style:{...i,"--sa-thumb-width":`${X4(n)}px`},onThumbPointerDown:p=>e.onThumbPointerDown(p.x),onDragScroll:p=>e.onDragScroll(p.x),onWheelScroll:(p,f)=>{if(l.viewport){const g=l.viewport.scrollLeft+p.deltaX;e.onWheelScroll(g),Moe(g,f)&&p.preventDefault()}},onResize:()=>{d.current&&l.viewport&&s&&o({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:d.current.clientWidth,paddingStart:Gd(s.paddingLeft),paddingEnd:Gd(s.paddingRight)}})}})});Boe.displayName="@mantine/core/ScrollAreaScrollbarX";const Ioe=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:i,...a}=e,l=Ea(),[s,c]=S.useState(),d=S.useRef(null),u=on(r,d,l.onScrollbarYChange);return S.useEffect(()=>{d.current&&c(window.getComputedStyle(d.current))},[]),y.jsx(Poe,{...a,"data-orientation":"vertical",ref:u,sizes:n,style:{"--sa-thumb-height":`${X4(n)}px`,...i},onThumbPointerDown:p=>e.onThumbPointerDown(p.y),onDragScroll:p=>e.onDragScroll(p.y),onWheelScroll:(p,f)=>{if(l.viewport){const g=l.viewport.scrollTop+p.deltaY;e.onWheelScroll(g),Moe(g,f)&&p.preventDefault()}},onResize:()=>{d.current&&l.viewport&&s&&o({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:d.current.clientHeight,paddingStart:Gd(s.paddingTop),paddingEnd:Gd(s.paddingBottom)}})}})});Ioe.displayName="@mantine/core/ScrollAreaScrollbarY";const K4=S.forwardRef((e,r)=>{const{orientation:n="vertical",...o}=e,{dir:i}=gc(),a=Ea(),l=S.useRef(null),s=S.useRef(0),[c,d]=S.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=joe(c.viewport,c.content),p={...o,sizes:c,onSizesChange:d,hasThumb:u>0&&u<1,onThumbChange:g=>{l.current=g},onThumbPointerUp:()=>{s.current=0},onThumbPointerDown:g=>{s.current=g}},f=(g,v)=>kot(g,s.current,c,v);return n==="horizontal"?y.jsx(Boe,{...p,ref:r,onThumbPositionChange:()=>{if(a.viewport&&l.current){const g=a.viewport.scrollLeft,v=Doe(g,c,i);l.current.style.transform=`translate3d(${v}px, 0, 0)`}},onWheelScroll:g=>{a.viewport&&(a.viewport.scrollLeft=g)},onDragScroll:g=>{a.viewport&&(a.viewport.scrollLeft=f(g,i))}}):n==="vertical"?y.jsx(Ioe,{...p,ref:r,onThumbPositionChange:()=>{if(a.viewport&&l.current){const g=a.viewport.scrollTop,v=Doe(g,c);c.scrollbar.size===0?l.current.style.setProperty("--thumb-opacity","0"):l.current.style.setProperty("--thumb-opacity","1"),l.current.style.transform=`translate3d(0, ${v}px, 0)`}},onWheelScroll:g=>{a.viewport&&(a.viewport.scrollTop=g)},onDragScroll:g=>{a.viewport&&(a.viewport.scrollTop=f(g))}}):null});K4.displayName="@mantine/core/ScrollAreaScrollbarVisible";const _T=S.forwardRef((e,r)=>{const n=Ea(),{forceMount:o,...i}=e,[a,l]=S.useState(!1),s=e.orientation==="horizontal",c=C4(()=>{if(n.viewport){const d=n.viewport.offsetWidth{const{forceMount:n,...o}=e,i=Ea(),[a,l]=S.useState(!1);return S.useEffect(()=>{const{scrollArea:s}=i;let c=0;if(s){const d=()=>{window.clearTimeout(c),l(!0)},u=()=>{c=window.setTimeout(()=>l(!1),i.scrollHideDelay)};return s.addEventListener("pointerenter",d),s.addEventListener("pointerleave",u),()=>{window.clearTimeout(c),s.removeEventListener("pointerenter",d),s.removeEventListener("pointerleave",u)}}},[i.scrollArea,i.scrollHideDelay]),n||a?y.jsx(_T,{"data-state":a?"visible":"hidden",...o,ref:r}):null});Ooe.displayName="@mantine/core/ScrollAreaScrollbarHover";const Sot=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,i=Ea(),a=e.orientation==="horizontal",[l,s]=S.useState("hidden"),c=C4(()=>s("idle"),100);return S.useEffect(()=>{if(l==="idle"){const d=window.setTimeout(()=>s("hidden"),i.scrollHideDelay);return()=>window.clearTimeout(d)}},[l,i.scrollHideDelay]),S.useEffect(()=>{const{viewport:d}=i,u=a?"scrollLeft":"scrollTop";if(d){let p=d[u];const f=()=>{const g=d[u];p!==g&&(s("scrolling"),c()),p=g};return d.addEventListener("scroll",f),()=>d.removeEventListener("scroll",f)}},[i.viewport,a,c]),n||l!=="hidden"?y.jsx(K4,{"data-state":l==="hidden"?"hidden":"visible",...o,ref:r,onPointerEnter:Lp(e.onPointerEnter,()=>s("interacting")),onPointerLeave:Lp(e.onPointerLeave,()=>s("idle"))}):null}),ST=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,i=Ea(),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:l}=i,s=e.orientation==="horizontal";return S.useEffect(()=>(s?a(!0):l(!0),()=>{s?a(!1):l(!1)}),[s,a,l]),i.type==="hover"?y.jsx(Ooe,{...o,ref:r,forceMount:n}):i.type==="scroll"?y.jsx(Sot,{...o,ref:r,forceMount:n}):i.type==="auto"?y.jsx(_T,{...o,ref:r,forceMount:n}):i.type==="always"?y.jsx(K4,{...o,ref:r}):null});ST.displayName="@mantine/core/ScrollAreaScrollbar";function Eot(e,r=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},o=0;return(function i(){const a={left:e.scrollLeft,top:e.scrollTop},l=n.left!==a.left,s=n.top!==a.top;(l||s)&&r(),n=a,o=window.requestAnimationFrame(i)})(),()=>window.cancelAnimationFrame(o)}const Loe=S.forwardRef((e,r)=>{const{style:n,...o}=e,i=Ea(),a=Noe(),{onThumbPositionChange:l}=a,s=on(r,u=>a.onThumbChange(u)),c=S.useRef(void 0),d=C4(()=>{c.current&&(c.current(),c.current=void 0)},100);return S.useEffect(()=>{const{viewport:u}=i;if(u){const p=()=>{if(d(),!c.current){const f=Eot(u,l);c.current=f,l()}};return l(),u.addEventListener("scroll",p),()=>u.removeEventListener("scroll",p)}},[i.viewport,d,l]),y.jsx("div",{"data-state":a.hasThumb?"visible":"hidden",...o,ref:s,style:{width:"var(--sa-thumb-width)",height:"var(--sa-thumb-height)",...n},onPointerDownCapture:Lp(e.onPointerDownCapture,u=>{const p=u.target.getBoundingClientRect(),f=u.clientX-p.left,g=u.clientY-p.top;a.onThumbPointerDown({x:f,y:g})}),onPointerUp:Lp(e.onPointerUp,a.onThumbPointerUp)})});Loe.displayName="@mantine/core/ScrollAreaThumb";const ET=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,i=Noe();return n||i.hasThumb?y.jsx(Loe,{ref:r,...o}):null});ET.displayName="@mantine/core/ScrollAreaThumb";const Foe=S.forwardRef(({children:e,style:r,...n},o)=>{const i=Ea(),a=on(o,i.onViewportChange);return y.jsx(Ae,{...n,ref:a,style:{overflowX:i.scrollbarXEnabled?"scroll":"hidden",overflowY:i.scrollbarYEnabled?"scroll":"hidden",...r},children:y.jsx("div",{...i.getStyles("content"),ref:i.onContentChange,children:e})})});Foe.displayName="@mantine/core/ScrollAreaViewport";var CT={root:"m_d57069b5",content:"m_b1336c6",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const Voe={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},Cot=(e,{scrollbarSize:r,overscrollBehavior:n})=>({root:{"--scrollarea-scrollbar-size":Pe(r),"--scrollarea-over-scroll-behavior":n}}),Fp=We((e,r)=>{const n=ze("ScrollArea",Voe,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,scrollbarSize:c,vars:d,type:u,scrollHideDelay:p,viewportProps:f,viewportRef:g,onScrollPositionChange:v,children:w,offsetScrollbars:x,scrollbars:k,onBottomReached:C,onTopReached:_,overscrollBehavior:$,attributes:R,...T}=n,[A,z]=S.useState(!1),[j,I]=S.useState(!1),[P,L]=S.useState(!1),H=dt({name:"ScrollArea",props:n,classes:CT,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:R,vars:d,varsResolver:Cot}),M=S.useRef(null),V=xoe([g,M]);return S.useEffect(()=>{if(!M.current||x!=="present")return;const B=M.current,F=new ResizeObserver(()=>{const{scrollHeight:q,clientHeight:G,scrollWidth:U,clientWidth:Y}=B;I(q>G),L(U>Y)});return F.observe(B),()=>F.disconnect()},[M,x]),y.jsxs(Toe,{getStyles:H,type:u==="never"?"always":u,scrollHideDelay:p,ref:r,scrollbars:k,...H("root"),...T,children:[y.jsx(Foe,{...f,...H("viewport",{style:f?.style}),ref:V,"data-offset-scrollbars":x===!0?"xy":x||void 0,"data-scrollbars":k||void 0,"data-horizontal-hidden":x==="present"&&!P?"true":void 0,"data-vertical-hidden":x==="present"&&!j?"true":void 0,onScroll:B=>{f?.onScroll?.(B),v?.({x:B.currentTarget.scrollLeft,y:B.currentTarget.scrollTop});const{scrollTop:F,scrollHeight:q,clientHeight:G}=B.currentTarget;F-(q-G)>=-.6&&C?.(),F===0&&_?.()},children:w}),(k==="xy"||k==="x")&&y.jsx(ST,{...H("scrollbar"),orientation:"horizontal","data-hidden":u==="never"||x==="present"&&!P?!0:void 0,forceMount:!0,onMouseEnter:()=>z(!0),onMouseLeave:()=>z(!1),children:y.jsx(ET,{...H("thumb")})}),(k==="xy"||k==="y")&&y.jsx(ST,{...H("scrollbar"),orientation:"vertical","data-hidden":u==="never"||x==="present"&&!j?!0:void 0,forceMount:!0,onMouseEnter:()=>z(!0),onMouseLeave:()=>z(!1),children:y.jsx(ET,{...H("thumb")})}),y.jsx(bot,{...H("corner"),"data-hovered":A||void 0,"data-hidden":u==="never"||void 0})]})});Fp.displayName="@mantine/core/ScrollArea";const $T=We((e,r)=>{const{children:n,classNames:o,styles:i,scrollbarSize:a,scrollHideDelay:l,type:s,dir:c,offsetScrollbars:d,viewportRef:u,onScrollPositionChange:p,unstyled:f,variant:g,viewportProps:v,scrollbars:w,style:x,vars:k,onBottomReached:C,onTopReached:_,onOverflowChange:$,...R}=ze("ScrollAreaAutosize",Voe,e),T=S.useRef(null),A=xoe([u,T]),[z,j]=S.useState(!1),I=S.useRef(!1);return S.useEffect(()=>{if(!$)return;const P=T.current;if(!P)return;const L=()=>{const M=P.scrollHeight>P.clientHeight;M!==z&&(I.current?$?.(M):(I.current=!0,M&&$?.(!0)),j(M))};L();const H=new ResizeObserver(L);return H.observe(P),()=>H.disconnect()},[$,z]),y.jsx(Ae,{...R,ref:r,style:[{display:"flex",overflow:"hidden"},x],children:y.jsx(Ae,{style:{display:"flex",flexDirection:"column",flex:1,overflow:"hidden",...w==="y"&&{minWidth:0},...w==="x"&&{minHeight:0},...w==="xy"&&{minWidth:0,minHeight:0},...w===!1&&{minWidth:0,minHeight:0}},children:y.jsx(Fp,{classNames:o,styles:i,scrollHideDelay:l,scrollbarSize:a,type:s,dir:c,offsetScrollbars:d,viewportRef:A,onScrollPositionChange:p,unstyled:f,variant:g,viewportProps:v,vars:k,scrollbars:w,onBottomReached:C,onTopReached:_,"data-autosize":"true",children:n})})})});Fp.classes=CT,$T.displayName="@mantine/core/ScrollAreaAutosize",$T.classes=CT,Fp.Autosize=$T;var qoe={root:"m_87cf2631"};const $ot={__staticSelector:"UnstyledButton"},hs=Un((e,r)=>{const n=ze("UnstyledButton",$ot,e),{className:o,component:i="button",__staticSelector:a,unstyled:l,classNames:s,styles:c,style:d,attributes:u,...p}=n,f=dt({name:a,props:n,classes:qoe,className:o,style:d,classNames:s,styles:c,unstyled:l,attributes:u});return y.jsx(Ae,{...f("root",{focusable:!0}),component:i,ref:r,type:i==="button"?"button":void 0,...p})});hs.classes=qoe,hs.displayName="@mantine/core/UnstyledButton";var Hoe={root:"m_515a97f8"};const RT=We((e,r)=>{const n=ze("VisuallyHidden",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,attributes:d,...u}=n,p=dt({name:"VisuallyHidden",classes:Hoe,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:d});return y.jsx(Ae,{component:"span",ref:r,...p("root"),...u})});RT.classes=Hoe,RT.displayName="@mantine/core/VisuallyHidden";var Uoe={root:"m_1b7284a3"};const Rot=(e,{radius:r,shadow:n})=>({root:{"--paper-radius":r===void 0?void 0:hn(r),"--paper-shadow":Pz(n)}}),Z4=Un((e,r)=>{const n=ze("Paper",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,withBorder:c,vars:d,radius:u,shadow:p,variant:f,mod:g,attributes:v,...w}=n,x=dt({name:"Paper",props:n,classes:Uoe,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:v,vars:d,varsResolver:Rot});return y.jsx(Ae,{ref:r,mod:[{"data-with-border":c},g],...x("root"),variant:f,...w})});Z4.classes=Uoe,Z4.displayName="@mantine/core/Paper";function Woe(e,r,n,o){return e==="center"||o==="center"?{top:r}:e==="end"?{bottom:n}:e==="start"?{top:n}:{}}function Goe(e,r,n,o,i){return e==="center"||o==="center"?{left:r}:e==="end"?{[i==="ltr"?"right":"left"]:n}:e==="start"?{[i==="ltr"?"left":"right"]:n}:{}}const zot={bottom:"borderTopLeftRadius",left:"borderTopRightRadius",right:"borderBottomLeftRadius",top:"borderBottomRightRadius"};function Tot({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:i,arrowX:a,arrowY:l,dir:s}){const[c,d="center"]=e.split("-"),u={width:r,height:r,transform:"rotate(45deg)",position:"absolute",[zot[c]]:o},p=-r/2;return c==="left"?{...u,...Woe(d,l,n,i),right:p,borderLeftColor:"transparent",borderBottomColor:"transparent",clipPath:"polygon(100% 0, 0 0, 100% 100%)"}:c==="right"?{...u,...Woe(d,l,n,i),left:p,borderRightColor:"transparent",borderTopColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 100%)"}:c==="top"?{...u,...Goe(d,a,n,i,s),bottom:p,borderTopColor:"transparent",borderLeftColor:"transparent",clipPath:"polygon(0 100%, 100% 100%, 100% 0)"}:c==="bottom"?{...u,...Goe(d,a,n,i,s),top:p,borderBottomColor:"transparent",borderRightColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 0)"}:{}}const Q4=S.forwardRef(({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:i,visible:a,arrowX:l,arrowY:s,style:c,...d},u)=>{const{dir:p}=gc();return a?y.jsx("div",{...d,ref:u,style:{...c,...Tot({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:i,dir:p,arrowX:l,arrowY:s})}}):null});Q4.displayName="@mantine/core/FloatingArrow";function Yoe(e,r){if(e==="rtl"&&(r.includes("right")||r.includes("left"))){const[n,o]=r.split("-"),i=n==="right"?"left":"right";return o===void 0?i:`${i}-${o}`}return r}var Xoe={root:"m_9814e45f"};const jot={zIndex:yl("modal")},Aot=(e,{gradient:r,color:n,backgroundOpacity:o,blur:i,radius:a,zIndex:l})=>({root:{"--overlay-bg":r||(n!==void 0||o!==void 0)&&Nne(n||"#000",o??.6)||void 0,"--overlay-filter":i?`blur(${Pe(i)})`:void 0,"--overlay-radius":a===void 0?void 0:hn(a),"--overlay-z-index":l?.toString()}}),Xm=Un((e,r)=>{const n=ze("Overlay",jot,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,fixed:d,center:u,children:p,radius:f,zIndex:g,gradient:v,blur:w,color:x,backgroundOpacity:k,mod:C,attributes:_,...$}=n,R=dt({name:"Overlay",props:n,classes:Xoe,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:Aot});return y.jsx(Ae,{ref:r,...R("root"),mod:[{center:u,fixed:d},C],...$,children:p})});Xm.classes=Xoe,Xm.displayName="@mantine/core/Overlay";function zT(e){const r=document.createElement("div");return r.setAttribute("data-portal","true"),typeof e.className=="string"&&r.classList.add(...e.className.split(" ").filter(Boolean)),typeof e.style=="object"&&Object.assign(r.style,e.style),typeof e.id=="string"&&r.setAttribute("id",e.id),r}function Dot({target:e,reuseTargetNode:r,...n}){if(e)return typeof e=="string"?document.querySelector(e)||zT(n):e;if(r){const o=document.querySelector("[data-mantine-shared-portal-node]");if(o)return o;const i=zT(n);return i.setAttribute("data-mantine-shared-portal-node","true"),document.body.appendChild(i),i}return zT(n)}const Mot={reuseTargetNode:!0},Koe=We((e,r)=>{const{children:n,target:o,reuseTargetNode:i,...a}=ze("Portal",Mot,e),[l,s]=S.useState(!1),c=S.useRef(null);return $4(()=>(s(!0),c.current=Dot({target:o,reuseTargetNode:i,...a}),Lz(r,c.current),!o&&!i&&c.current&&document.body.appendChild(c.current),()=>{!o&&!i&&c.current&&document.body.removeChild(c.current)}),[o]),!l||!c.current?null:Va.createPortal(y.jsx(y.Fragment,{children:n}),c.current)});Koe.displayName="@mantine/core/Portal";const Vp=We(({withinPortal:e=!0,children:r,...n},o)=>A4()==="test"||!e?y.jsx(y.Fragment,{children:r}):y.jsx(Koe,{ref:o,...n,children:r}));Vp.displayName="@mantine/core/OptionalPortal";const O0=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${e==="bottom"?10:-10}px)`},transitionProperty:"transform, opacity"}),J4={fade:{in:{opacity:1},out:{opacity:0},transitionProperty:"opacity"},"fade-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(30px)"},transitionProperty:"opacity, transform"},"fade-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-30px)"},transitionProperty:"opacity, transform"},"fade-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(30px)"},transitionProperty:"opacity, transform"},"fade-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-30px)"},transitionProperty:"opacity, transform"},scale:{in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:"scale(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-y":{in:{opacity:1,transform:"scaleY(1)"},out:{opacity:0,transform:"scaleY(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-x":{in:{opacity:1,transform:"scaleX(1)"},out:{opacity:0,transform:"scaleX(0)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"skew-up":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(-20px) skew(-10deg, -5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"skew-down":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:"translateY(20px) skew(-10deg, -5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-left":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(-5deg)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-right":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:"translateY(20px) rotate(5deg)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-100%)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(100%)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"slide-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(100%)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"slide-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-100%)"},common:{transformOrigin:"right"},transitionProperty:"transform, opacity"},pop:{...O0("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...O0("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...O0("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...O0("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...O0("top"),common:{transformOrigin:"top right"}}},Zoe={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function Not({transition:e,state:r,duration:n,timingFunction:o}){const i={WebkitBackfaceVisibility:"hidden",transitionDuration:`${n}ms`,transitionTimingFunction:o};return typeof e=="string"?e in J4?{transitionProperty:J4[e].transitionProperty,...i,...J4[e].common,...J4[e][Zoe[r]]}:{}:{transitionProperty:e.transitionProperty,...i,...e.common,...e[Zoe[r]]}}function Pot({duration:e,exitDuration:r,timingFunction:n,mounted:o,onEnter:i,onExit:a,onEntered:l,onExited:s,enterDelay:c,exitDelay:d}){const u=uo(),p=Fz(),f=u.respectReducedMotion?p:!1,[g,v]=S.useState(f?0:e),[w,x]=S.useState(o?"entered":"exited"),k=S.useRef(-1),C=S.useRef(-1),_=S.useRef(-1);function $(){window.clearTimeout(k.current),window.clearTimeout(C.current),cancelAnimationFrame(_.current)}const R=A=>{$();const z=A?i:a,j=A?l:s,I=f?0:A?e:r;v(I),I===0?(typeof z=="function"&&z(),typeof j=="function"&&j(),x(A?"entered":"exited")):_.current=requestAnimationFrame(()=>{YN.flushSync(()=>{x(A?"pre-entering":"pre-exiting")}),_.current=requestAnimationFrame(()=>{typeof z=="function"&&z(),x(A?"entering":"exiting"),k.current=window.setTimeout(()=>{typeof j=="function"&&j(),x(A?"entered":"exited")},I)})})},T=A=>{if($(),typeof(A?c:d)!="number"){R(A);return}C.current=window.setTimeout(()=>{R(A)},A?c:d)};return Om(()=>{T(o)},[o]),S.useEffect(()=>()=>{$()},[]),{transitionDuration:g,transitionStatus:w,transitionTimingFunction:n||"ease"}}function _l({keepMounted:e,transition:r="fade",duration:n=250,exitDuration:o=n,mounted:i,children:a,timingFunction:l="ease",onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f}){const g=A4(),{transitionDuration:v,transitionStatus:w,transitionTimingFunction:x}=Pot({mounted:i,exitDuration:o,duration:n,timingFunction:l,onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f});return v===0||g==="test"?i?y.jsx(y.Fragment,{children:a({})}):e?a({display:"none"}):null:w==="exited"?e?a({display:"none"}):null:y.jsx(y.Fragment,{children:a(Not({transition:r,duration:v,state:w,timingFunction:x}))})}_l.displayName="@mantine/core/Transition";const[Bot,Qoe]=Di("Popover component was not found in the tree");function ek({children:e,active:r=!0,refProp:n="ref",innerRef:o}){const i=ctt(r),a=on(i,o),l=Wd(e);return l?S.cloneElement(l,{[n]:a}):e}function Joe(e){return y.jsx(RT,{tabIndex:-1,"data-autofocus":!0,...e})}ek.displayName="@mantine/core/FocusTrap",Joe.displayName="@mantine/core/FocusTrapInitialFocus",ek.InitialFocus=Joe;var eie={dropdown:"m_38a85659",arrow:"m_a31dc6c1",overlay:"m_3d7bc908"};const TT=We((e,r)=>{const n=ze("PopoverDropdown",null,e),{className:o,style:i,vars:a,children:l,onKeyDownCapture:s,variant:c,classNames:d,styles:u,...p}=n,f=Qoe(),g=Cne({opened:f.opened,shouldReturnFocus:f.returnFocus}),v=f.withRoles?{"aria-labelledby":f.getTargetId(),id:f.getDropdownId(),role:"dialog",tabIndex:-1}:{},w=on(r,f.floating);return f.disabled?null:y.jsx(Vp,{...f.portalProps,withinPortal:f.withinPortal,children:y.jsx(_l,{mounted:f.opened,...f.transitionProps,transition:f.transitionProps?.transition||"fade",duration:f.transitionProps?.duration??150,keepMounted:f.keepMounted,exitDuration:typeof f.transitionProps?.exitDuration=="number"?f.transitionProps.exitDuration:f.transitionProps?.duration,children:x=>y.jsx(ek,{active:f.trapFocus&&f.opened,innerRef:w,children:y.jsxs(Ae,{...v,...p,variant:c,onKeyDownCapture:Ket(()=>{f.onClose?.(),f.onDismiss?.()},{active:f.closeOnEscape,onTrigger:g,onKeyDown:s}),"data-position":f.placement,"data-fixed":f.floatingStrategy==="fixed"||void 0,...f.getStyles("dropdown",{className:o,props:n,classNames:d,styles:u,style:[{...x,zIndex:f.zIndex,top:f.y??0,left:f.x??0,width:f.width==="target"?void 0:Pe(f.width),...f.referenceHidden?{display:"none"}:null},f.resolvedStyles.dropdown,u?.dropdown,i]}),children:[l,y.jsx(Q4,{ref:f.arrowRef,arrowX:f.arrowX,arrowY:f.arrowY,visible:f.withArrow,position:f.placement,arrowSize:f.arrowSize,arrowRadius:f.arrowRadius,arrowOffset:f.arrowOffset,arrowPosition:f.arrowPosition,...f.getStyles("arrow",{props:n,classNames:d,styles:u})})]})})})})});TT.classes=eie,TT.displayName="@mantine/core/PopoverDropdown";const Iot={refProp:"ref",popupType:"dialog"},tie=We((e,r)=>{const{children:n,refProp:o,popupType:i,...a}=ze("PopoverTarget",Iot,e),l=Wd(n);if(!l)throw new Error("Popover.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const s=a,c=Qoe(),d=on(c.reference,R4(l),r),u=c.withRoles?{"aria-haspopup":i,"aria-expanded":c.opened,"aria-controls":c.getDropdownId(),id:c.getTargetId()}:{},p=l.props;return S.cloneElement(l,{...s,...u,...c.targetProps,className:no(c.targetProps.className,s.className,p.className),[o]:d,...c.controlled?null:{onClick:()=>{c.onToggle(),p.onClick?.()}}})});tie.displayName="@mantine/core/PopoverTarget";function Oot(e){if(e===void 0)return{shift:!0,flip:!0};const r={...e};return e.shift===void 0&&(r.shift=!0),e.flip===void 0&&(r.flip=!0),r}function Lot(e,r,n){const o=Oot(e.middlewares),i=[yoe(e.offset),Znt()];return e.dropdownVisible&&n!=="test"&&e.preventPositionChangeWhenVisible&&(o.flip=!1),o.shift&&i.push(fT(typeof o.shift=="boolean"?{limiter:voe(),padding:5}:{limiter:voe(),padding:5,...o.shift})),o.flip&&i.push(typeof o.flip=="boolean"?G4():G4(o.flip)),o.inline&&i.push(typeof o.inline=="boolean"?I0():I0(o.inline)),i.push(boe({element:e.arrowRef,padding:e.arrowOffset})),(o.size||e.width==="target")&&i.push(Knt({...typeof o.size=="boolean"?{}:o.size,apply({rects:a,availableWidth:l,availableHeight:s,...c}){const d=r().refs.floating.current?.style??{};o.size&&(typeof o.size=="object"&&o.size.apply?o.size.apply({rects:a,availableWidth:l,availableHeight:s,...c}):Object.assign(d,{maxWidth:`${l}px`,maxHeight:`${s}px`})),e.width==="target"&&Object.assign(d,{width:`${a.reference.width}px`})}})),i}function Fot(e){const r=A4(),[n,o]=qd({value:e.opened,defaultValue:e.defaultOpened,finalValue:!1,onChange:e.onChange}),i=S.useRef(n),a=()=>{n&&!e.disabled&&o(!1)},l=()=>{e.disabled||o(!n)},s=xT({strategy:e.strategy,placement:e.preventPositionChangeWhenVisible?e.positionRef.current:e.position,middleware:Lot(e,()=>s,r),whileElementsMounted:e.keepMounted?void 0:pT});return S.useEffect(()=>{if(!(!s.refs.reference.current||!s.refs.floating.current)&&n)return pT(s.refs.reference.current,s.refs.floating.current,s.update)},[n,s.update]),Om(()=>{e.onPositionChange?.(s.placement),e.positionRef.current=s.placement},[s.placement,e.preventPositionChangeWhenVisible]),Om(()=>{n!==i.current&&(n?e.onOpen?.():e.onClose?.()),i.current=n},[n,e.onClose,e.onOpen]),$4(()=>{let c=-1;return n&&(c=window.setTimeout(()=>e.setDropdownVisible(!0),4)),()=>{window.clearTimeout(c)}},[n,e.position]),{floating:s,controlled:typeof e.opened=="boolean",opened:n,onClose:a,onToggle:l}}const Vot={position:"bottom",offset:8,positionDependencies:[],transitionProps:{transition:"fade",duration:150},middlewares:{flip:!0,shift:!0,inline:!1},arrowSize:7,arrowOffset:5,arrowRadius:0,arrowPosition:"side",closeOnClickOutside:!0,withinPortal:!0,closeOnEscape:!0,trapFocus:!1,withRoles:!0,returnFocus:!1,withOverlay:!1,hideDetached:!0,clickOutsideEvents:["mousedown","touchstart"],zIndex:yl("popover"),__staticSelector:"Popover",width:"max-content"},qot=(e,{radius:r,shadow:n})=>({dropdown:{"--popover-radius":r===void 0?void 0:hn(r),"--popover-shadow":Pz(n)}});function po(e){const r=ze("Popover",Vot,e),{children:n,position:o,offset:i,onPositionChange:a,positionDependencies:l,opened:s,transitionProps:c,onExitTransitionEnd:d,onEnterTransitionEnd:u,width:p,middlewares:f,withArrow:g,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,unstyled:C,classNames:_,styles:$,closeOnClickOutside:R,withinPortal:T,portalProps:A,closeOnEscape:z,clickOutsideEvents:j,trapFocus:I,onClose:P,onDismiss:L,onOpen:H,onChange:M,zIndex:V,radius:B,shadow:F,id:q,defaultOpened:G,__staticSelector:U,withRoles:Y,disabled:K,returnFocus:O,variant:W,keepMounted:Z,vars:Q,floatingStrategy:ie,withOverlay:te,overlayProps:re,hideDetached:ue,attributes:_e,preventPositionChangeWhenVisible:ce,...pe}=r,xe=dt({name:U,props:r,classes:eie,classNames:_,styles:$,unstyled:C,attributes:_e,rootSelector:"dropdown",vars:Q,varsResolver:qot}),{resolvedStyles:je}=Hz({classNames:_,styles:$,props:r}),[Be,Je]=S.useState(s??G??!1),st=S.useRef(o),Le=S.useRef(null),[St,Ve]=S.useState(null),[qe,Xe]=S.useState(null),{dir:It}=gc(),Et=A4(),be=bl(q),ke=Fot({middlewares:f,width:p,position:Yoe(It,o),offset:typeof i=="number"?i+(g?v/2:0):i,arrowRef:Le,arrowOffset:w,onPositionChange:a,positionDependencies:l,opened:s,defaultOpened:G,onChange:M,onOpen:H,onClose:P,onDismiss:L,strategy:ie,dropdownVisible:Be,setDropdownVisible:Je,positionRef:st,disabled:K,preventPositionChangeWhenVisible:ce,keepMounted:Z});Ene(()=>{R&&(ke.onClose(),L?.())},j,[St,qe]);const Ye=S.useCallback(er=>{Ve(er),ke.floating.refs.setReference(er)},[ke.floating.refs.setReference]),yt=S.useCallback(er=>{Xe(er),ke.floating.refs.setFloating(er)},[ke.floating.refs.setFloating]),xt=S.useCallback(()=>{c?.onExited?.(),d?.(),Je(!1),ce||(st.current=o)},[c?.onExited,d,ce,o]),Tr=S.useCallback(()=>{c?.onEntered?.(),u?.()},[c?.onEntered,u]);return y.jsxs(Bot,{value:{returnFocus:O,disabled:K,controlled:ke.controlled,reference:Ye,floating:yt,x:ke.floating.x,y:ke.floating.y,arrowX:ke.floating?.middlewareData?.arrow?.x,arrowY:ke.floating?.middlewareData?.arrow?.y,opened:ke.opened,arrowRef:Le,transitionProps:{...c,onExited:xt,onEntered:Tr},width:p,withArrow:g,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,placement:ke.floating.placement,trapFocus:I,withinPortal:T,portalProps:A,zIndex:V,radius:B,shadow:F,closeOnEscape:z,onDismiss:L,onClose:ke.onClose,onToggle:ke.onToggle,getTargetId:()=>`${be}-target`,getDropdownId:()=>`${be}-dropdown`,withRoles:Y,targetProps:pe,__staticSelector:U,classNames:_,styles:$,unstyled:C,variant:W,keepMounted:Z,getStyles:xe,resolvedStyles:je,floatingStrategy:ie,referenceHidden:ue&&Et!=="test"?ke.floating.middlewareData.hide?.referenceHidden:!1},children:[n,te&&y.jsx(_l,{transition:"fade",mounted:ke.opened,duration:c?.duration||250,exitDuration:c?.exitDuration||250,children:er=>y.jsx(Vp,{withinPortal:T,children:y.jsx(Xm,{...re,...xe("overlay",{className:re?.className,style:[er,re?.style]})})})})]})}po.Target=tie,po.Dropdown=TT,po.displayName="@mantine/core/Popover",po.extend=e=>e;var Sl={root:"m_5ae2e3c",barsLoader:"m_7a2bd4cd",bar:"m_870bb79","bars-loader-animation":"m_5d2b3b9d",dotsLoader:"m_4e3f22d7",dot:"m_870c4af","loader-dots-animation":"m_aac34a1",ovalLoader:"m_b34414df","oval-loader-animation":"m_f8e89c4b"};const rie=S.forwardRef(({className:e,...r},n)=>y.jsxs(Ae,{component:"span",className:no(Sl.barsLoader,e),...r,ref:n,children:[y.jsx("span",{className:Sl.bar}),y.jsx("span",{className:Sl.bar}),y.jsx("span",{className:Sl.bar})]}));rie.displayName="@mantine/core/Bars";const nie=S.forwardRef(({className:e,...r},n)=>y.jsxs(Ae,{component:"span",className:no(Sl.dotsLoader,e),...r,ref:n,children:[y.jsx("span",{className:Sl.dot}),y.jsx("span",{className:Sl.dot}),y.jsx("span",{className:Sl.dot})]}));nie.displayName="@mantine/core/Dots";const oie=S.forwardRef(({className:e,...r},n)=>y.jsx(Ae,{component:"span",className:no(Sl.ovalLoader,e),...r,ref:n}));oie.displayName="@mantine/core/Oval";const iie={bars:rie,oval:oie,dots:nie},Hot={loaders:iie,type:"oval"},Uot=(e,{size:r,color:n})=>({root:{"--loader-size":Qt(r,"loader-size"),"--loader-color":n?Uo(n,e):void 0}}),qp=We((e,r)=>{const n=ze("Loader",Hot,e),{size:o,color:i,type:a,vars:l,className:s,style:c,classNames:d,styles:u,unstyled:p,loaders:f,variant:g,children:v,attributes:w,...x}=n,k=dt({name:"Loader",props:n,classes:Sl,className:s,style:c,classNames:d,styles:u,unstyled:p,attributes:w,vars:l,varsResolver:Uot});return v?y.jsx(Ae,{...k("root"),ref:r,...x,children:v}):y.jsx(Ae,{...k("root"),ref:r,component:f[a],variant:g,size:o,...x})});qp.defaultLoaders=iie,qp.classes=Sl,qp.displayName="@mantine/core/Loader";var Km={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21",groupSection:"m_437b6484"};const aie={orientation:"horizontal"},Wot=(e,{borderWidth:r})=>({group:{"--ai-border-width":Pe(r)}}),jT=We((e,r)=>{const n=ze("ActionIconGroup",aie,e),{className:o,style:i,classNames:a,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=ze("ActionIconGroup",aie,e),w=dt({name:"ActionIconGroup",props:n,classes:Km,className:o,style:i,classNames:a,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:Wot,rootSelector:"group"});return y.jsx(Ae,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});jT.classes=Km,jT.displayName="@mantine/core/ActionIconGroup";const Got=(e,{radius:r,color:n,gradient:o,variant:i,autoContrast:a,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:i||"filled",autoContrast:a});return{groupSection:{"--section-height":Qt(l,"section-height"),"--section-padding-x":Qt(l,"section-padding-x"),"--section-fz":zo(l),"--section-radius":r===void 0?void 0:hn(r),"--section-bg":n||i?s.background:void 0,"--section-color":s.color,"--section-bd":n||i?s.border:void 0}}},AT=We((e,r)=>{const n=ze("ActionIconGroupSection",null,e),{className:o,style:i,classNames:a,styles:l,unstyled:s,vars:c,variant:d,gradient:u,radius:p,autoContrast:f,attributes:g,...v}=n,w=dt({name:"ActionIconGroupSection",props:n,classes:Km,className:o,style:i,classNames:a,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:Got,rootSelector:"groupSection"});return y.jsx(Ae,{...w("groupSection"),ref:r,variant:d,...v})});AT.classes=Km,AT.displayName="@mantine/core/ActionIconGroupSection";const Yot=(e,{size:r,radius:n,variant:o,gradient:i,color:a,autoContrast:l})=>{const s=e.variantColorResolver({color:a||e.primaryColor,theme:e,gradient:i,variant:o||"filled",autoContrast:l});return{root:{"--ai-size":Qt(r,"ai-size"),"--ai-radius":n===void 0?void 0:hn(n),"--ai-bg":a||o?s.background:void 0,"--ai-hover":a||o?s.hover:void 0,"--ai-hover-color":a||o?s.hoverColor:void 0,"--ai-color":s.color,"--ai-bd":a||o?s.border:void 0}}},tk=Un((e,r)=>{const n=ze("ActionIcon",null,e),{className:o,unstyled:i,variant:a,classNames:l,styles:s,style:c,loading:d,loaderProps:u,size:p,color:f,radius:g,__staticSelector:v,gradient:w,vars:x,children:k,disabled:C,"data-disabled":_,autoContrast:$,mod:R,attributes:T,...A}=n,z=dt({name:["ActionIcon",v],props:n,className:o,style:c,classes:Km,classNames:l,styles:s,unstyled:i,attributes:T,vars:x,varsResolver:Yot});return y.jsxs(hs,{...z("root",{active:!C&&!d&&!_}),...A,unstyled:i,variant:a,size:p,disabled:C||d,ref:r,mod:[{loading:d,disabled:C||_},R],children:[typeof d=="boolean"&&y.jsx(_l,{mounted:d,transition:"slide-down",duration:150,children:j=>y.jsx(Ae,{component:"span",...z("loader",{style:j}),"aria-hidden":!0,children:y.jsx(qp,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...u})})}),y.jsx(Ae,{component:"span",mod:{loading:d},...z("icon"),children:k})]})});tk.classes=Km,tk.displayName="@mantine/core/ActionIcon",tk.Group=jT,tk.GroupSection=AT;const lie=S.forwardRef(({size:e="var(--cb-icon-size, 70%)",style:r,...n},o)=>y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...r,width:e,height:e},ref:o,...n,children:y.jsx("path",{d:"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})}));lie.displayName="@mantine/core/CloseIcon";var sie={root:"m_86a44da5","root--subtle":"m_220c80f2"};const Xot={variant:"subtle"},Kot=(e,{size:r,radius:n,iconSize:o})=>({root:{"--cb-size":Qt(r,"cb-size"),"--cb-radius":n===void 0?void 0:hn(n),"--cb-icon-size":Pe(o)}}),Hp=Un((e,r)=>{const n=ze("CloseButton",Xot,e),{iconSize:o,children:i,vars:a,radius:l,className:s,classNames:c,style:d,styles:u,unstyled:p,"data-disabled":f,disabled:g,variant:v,icon:w,mod:x,attributes:k,__staticSelector:C,..._}=n,$=dt({name:C||"CloseButton",props:n,className:s,style:d,classes:sie,classNames:c,styles:u,unstyled:p,attributes:k,vars:a,varsResolver:Kot});return y.jsxs(hs,{ref:r,..._,unstyled:p,variant:v,disabled:g,mod:[{disabled:g||f},x],...$("root",{variant:v,active:!g&&!f}),children:[w||y.jsx(lie,{}),i]})});Hp.classes=sie,Hp.displayName="@mantine/core/CloseButton";function Zot(e){return S.Children.toArray(e).filter(Boolean)}var cie={root:"m_4081bf90"};const Qot={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},Jot=(e,{grow:r,preventGrowOverflow:n,gap:o,align:i,justify:a,wrap:l},{childWidth:s})=>({root:{"--group-child-width":r&&n?s:void 0,"--group-gap":ro(o),"--group-align":i,"--group-justify":a,"--group-wrap":l}}),die=We((e,r)=>{const n=ze("Group",Qot,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,children:c,gap:d,align:u,justify:p,wrap:f,grow:g,preventGrowOverflow:v,vars:w,variant:x,__size:k,mod:C,attributes:_,...$}=n,R=Zot(c),T=R.length,A=ro(d??"md"),z={childWidth:`calc(${100/T}% - (${A} - ${A} / ${T}))`},j=dt({name:"Group",props:n,stylesCtx:z,className:i,style:a,classes:cie,classNames:o,styles:l,unstyled:s,attributes:_,vars:w,varsResolver:Jot});return y.jsx(Ae,{...j("root"),ref:r,variant:x,mod:[{grow:g},C],size:k,...$,children:R})});die.classes=cie,die.displayName="@mantine/core/Group";const[eit,xc]=Di("ModalBase component was not found in tree");function tit({opened:e,transitionDuration:r}){const[n,o]=S.useState(e),i=S.useRef(-1),a=Fz()?0:r;return S.useEffect(()=>(e?(o(!0),window.clearTimeout(i.current)):a===0?o(!1):i.current=window.setTimeout(()=>o(!1),a),()=>window.clearTimeout(i.current)),[e,a]),n}function rit({id:e,transitionProps:r,opened:n,trapFocus:o,closeOnEscape:i,onClose:a,returnFocus:l}){const s=bl(e),[c,d]=S.useState(!1),[u,p]=S.useState(!1),f=typeof r?.duration=="number"?r?.duration:200,g=tit({opened:n,transitionDuration:f});return ptt("keydown",v=>{v.key==="Escape"&&i&&!v.isComposing&&n&&v.target?.getAttribute("data-mantine-stop-propagation")!=="true"&&a()},{capture:!0}),Cne({opened:n,shouldReturnFocus:o&&l}),{_id:s,titleMounted:c,bodyMounted:u,shouldLockScroll:g,setTitleMounted:d,setBodyMounted:p}}const DT=S.forwardRef(({keepMounted:e,opened:r,onClose:n,id:o,transitionProps:i,onExitTransitionEnd:a,onEnterTransitionEnd:l,trapFocus:s,closeOnEscape:c,returnFocus:d,closeOnClickOutside:u,withinPortal:p,portalProps:f,lockScroll:g,children:v,zIndex:w,shadow:x,padding:k,__vars:C,unstyled:_,removeScrollProps:$,...R},T)=>{const{_id:A,titleMounted:z,bodyMounted:j,shouldLockScroll:I,setTitleMounted:P,setBodyMounted:L}=rit({id:o,transitionProps:i,opened:r,trapFocus:s,closeOnEscape:c,onClose:n,returnFocus:d}),{key:H,...M}=$||{};return y.jsx(Vp,{...f,withinPortal:p,children:y.jsx(eit,{value:{opened:r,onClose:n,closeOnClickOutside:u,onExitTransitionEnd:a,onEnterTransitionEnd:l,transitionProps:{...i,keepMounted:e},getTitleId:()=>`${A}-title`,getBodyId:()=>`${A}-body`,titleMounted:z,bodyMounted:j,setTitleMounted:P,setBodyMounted:L,trapFocus:s,closeOnEscape:c,zIndex:w,unstyled:_},children:y.jsx(xne,{enabled:I&&g,...M,children:y.jsx(Ae,{ref:T,...R,__vars:{...C,"--mb-z-index":(w||yl("modal")).toString(),"--mb-shadow":Pz(x),"--mb-padding":ro(k)},children:v})},H)})})});DT.displayName="@mantine/core/ModalBase";function nit(){const e=xc();return S.useEffect(()=>(e.setBodyMounted(!0),()=>e.setBodyMounted(!1)),[]),e.getBodyId()}var Zm={title:"m_615af6c9",header:"m_b5489c3c",inner:"m_60c222c7",content:"m_fd1ab0aa",close:"m_606cb269",body:"m_5df29311"};const MT=S.forwardRef(({className:e,...r},n)=>{const o=nit(),i=xc();return y.jsx(Ae,{ref:n,...r,id:o,className:no({[Zm.body]:!i.unstyled},e)})});MT.displayName="@mantine/core/ModalBaseBody";const uie=S.forwardRef(({className:e,onClick:r,...n},o)=>{const i=xc();return y.jsx(Hp,{ref:o,...n,onClick:a=>{i.onClose(),r?.(a)},className:no({[Zm.close]:!i.unstyled},e),unstyled:i.unstyled})});uie.displayName="@mantine/core/ModalBaseCloseButton";const NT=S.forwardRef(({transitionProps:e,className:r,innerProps:n,onKeyDown:o,style:i,...a},l)=>{const s=xc();return y.jsx(_l,{mounted:s.opened,transition:"pop",...s.transitionProps,onExited:()=>{s.onExitTransitionEnd?.(),s.transitionProps?.onExited?.()},onEntered:()=>{s.onEnterTransitionEnd?.(),s.transitionProps?.onEntered?.()},...e,children:c=>y.jsx("div",{...n,className:no({[Zm.inner]:!s.unstyled},n.className),children:y.jsx(ek,{active:s.opened&&s.trapFocus,innerRef:l,children:y.jsx(Z4,{...a,component:"section",role:"dialog",tabIndex:-1,"aria-modal":!0,"aria-describedby":s.bodyMounted?s.getBodyId():void 0,"aria-labelledby":s.titleMounted?s.getTitleId():void 0,style:[i,c],className:no({[Zm.content]:!s.unstyled},r),unstyled:s.unstyled,children:a.children})})})})});NT.displayName="@mantine/core/ModalBaseContent";const pie=S.forwardRef(({className:e,...r},n)=>{const o=xc();return y.jsx(Ae,{component:"header",ref:n,className:no({[Zm.header]:!o.unstyled},e),...r})});pie.displayName="@mantine/core/ModalBaseHeader";const oit={duration:200,timingFunction:"ease",transition:"fade"};function iit(e){const r=xc();return{...oit,...r.transitionProps,...e}}const PT=S.forwardRef(({onClick:e,transitionProps:r,style:n,visible:o,...i},a)=>{const l=xc(),s=iit(r);return y.jsx(_l,{mounted:o!==void 0?o:l.opened,...s,transition:"fade",children:c=>y.jsx(Xm,{ref:a,fixed:!0,style:[n,c],zIndex:l.zIndex,unstyled:l.unstyled,onClick:d=>{e?.(d),l.closeOnClickOutside&&l.onClose()},...i})})});PT.displayName="@mantine/core/ModalBaseOverlay";function ait(){const e=xc();return S.useEffect(()=>(e.setTitleMounted(!0),()=>e.setTitleMounted(!1)),[]),e.getTitleId()}const hie=S.forwardRef(({className:e,...r},n)=>{const o=ait(),i=xc();return y.jsx(Ae,{component:"h2",ref:n,className:no({[Zm.title]:!i.unstyled},e),...r,id:o})});hie.displayName="@mantine/core/ModalBaseTitle";function fie({children:e}){return y.jsx(y.Fragment,{children:e})}const[lit,sit]=Bm({size:"sm"}),mie=We((e,r)=>{const n=ze("InputClearButton",null,e),{size:o,variant:i,vars:a,classNames:l,styles:s,...c}=n,d=sit(),{resolvedClassNames:u,resolvedStyles:p}=Hz({classNames:l,styles:s,props:n});return y.jsx(Hp,{variant:i||"transparent",ref:r,size:o||d?.size||"sm",classNames:u,styles:p,__staticSelector:"InputClearButton",style:{pointerEvents:"all",background:"var(--input-bg)",...c.style},...c})});mie.displayName="@mantine/core/InputClearButton";const cit={xs:7,sm:8,md:10,lg:12,xl:15};function dit({__clearable:e,__clearSection:r,rightSection:n,__defaultRightSection:o,size:i="sm"}){const a=e&&r;return a&&(n||o)?y.jsxs("div",{"data-combined-clear-section":!0,style:{display:"flex",gap:2,alignItems:"center",paddingInlineEnd:cit[i]},children:[a,n||o]}):n===null?null:n||a||o}const[uit,rk]=Bm({offsetBottom:!1,offsetTop:!1,describedBy:void 0,getStyles:null,inputId:void 0,labelId:void 0});var Ca={wrapper:"m_6c018570",input:"m_8fb7ebe7",section:"m_82577fc2",placeholder:"m_88bacfd0",root:"m_46b77525",label:"m_8fdc1311",required:"m_78a94662",error:"m_8f816625",description:"m_fe47ce59"};const pit=(e,{size:r})=>({description:{"--input-description-size":r===void 0?void 0:`calc(${zo(r)} - ${Pe(2)})`}}),nk=We((e,r)=>{const n=ze("InputDescription",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,size:d,__staticSelector:u,__inheritStyles:p=!0,attributes:f,variant:g,...v}=ze("InputDescription",null,n),w=rk(),x=dt({name:["InputWrapper",u],props:n,classes:Ca,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:f,rootSelector:"description",vars:c,varsResolver:pit}),k=p&&w?.getStyles||x;return y.jsx(Ae,{component:"p",ref:r,variant:g,size:d,...k("description",w?.getStyles?{className:i,style:a}:void 0),...v})});nk.classes=Ca,nk.displayName="@mantine/core/InputDescription";const hit=(e,{size:r})=>({error:{"--input-error-size":r===void 0?void 0:`calc(${zo(r)} - ${Pe(2)})`}}),ok=We((e,r)=>{const n=ze("InputError",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,size:d,attributes:u,__staticSelector:p,__inheritStyles:f=!0,variant:g,...v}=n,w=dt({name:["InputWrapper",p],props:n,classes:Ca,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:u,rootSelector:"error",vars:c,varsResolver:hit}),x=rk(),k=f&&x?.getStyles||w;return y.jsx(Ae,{component:"p",ref:r,variant:g,size:d,...k("error",x?.getStyles?{className:i,style:a}:void 0),...v})});ok.classes=Ca,ok.displayName="@mantine/core/InputError";const gie={labelElement:"label"},fit=(e,{size:r})=>({label:{"--input-label-size":zo(r),"--input-asterisk-color":void 0}}),ik=We((e,r)=>{const n=ze("InputLabel",gie,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,labelElement:d,size:u,required:p,htmlFor:f,onMouseDown:g,children:v,__staticSelector:w,variant:x,mod:k,attributes:C,..._}=ze("InputLabel",gie,n),$=dt({name:["InputWrapper",w],props:n,classes:Ca,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:C,rootSelector:"label",vars:c,varsResolver:fit}),R=rk(),T=R?.getStyles||$;return y.jsxs(Ae,{...T("label",R?.getStyles?{className:i,style:a}:void 0),component:d,variant:x,size:u,ref:r,htmlFor:d==="label"?f:void 0,mod:[{required:p},k],onMouseDown:A=>{g?.(A),!A.defaultPrevented&&A.detail>1&&A.preventDefault()},..._,children:[v,p&&y.jsx("span",{...T("required"),"aria-hidden":!0,children:" *"})]})});ik.classes=Ca,ik.displayName="@mantine/core/InputLabel";const BT=We((e,r)=>{const n=ze("InputPlaceholder",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,__staticSelector:d,variant:u,error:p,mod:f,attributes:g,...v}=n,w=dt({name:["InputPlaceholder",d],props:n,classes:Ca,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:g,rootSelector:"placeholder"});return y.jsx(Ae,{...w("placeholder"),mod:[{error:!!p},f],component:"span",variant:u,ref:r,...v})});BT.classes=Ca,BT.displayName="@mantine/core/InputPlaceholder";function mit(e,{hasDescription:r,hasError:n}){const o=e.findIndex(s=>s==="input"),i=e.slice(0,o),a=e.slice(o+1),l=r&&i.includes("description")||n&&i.includes("error");return{offsetBottom:r&&a.includes("description")||n&&a.includes("error"),offsetTop:l}}const git={labelElement:"label",inputContainer:e=>e,inputWrapperOrder:["label","description","input","error"]},yit=(e,{size:r})=>({label:{"--input-label-size":zo(r),"--input-asterisk-color":void 0},error:{"--input-error-size":r===void 0?void 0:`calc(${zo(r)} - ${Pe(2)})`},description:{"--input-description-size":r===void 0?void 0:`calc(${zo(r)} - ${Pe(2)})`}}),IT=We((e,r)=>{const n=ze("InputWrapper",git,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,size:d,variant:u,__staticSelector:p,inputContainer:f,inputWrapperOrder:g,label:v,error:w,description:x,labelProps:k,descriptionProps:C,errorProps:_,labelElement:$,children:R,withAsterisk:T,id:A,required:z,__stylesApiProps:j,mod:I,attributes:P,...L}=n,H=dt({name:["InputWrapper",p],props:j||n,classes:Ca,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:yit}),M={size:d,variant:u,__staticSelector:p},V=bl(A),B=typeof T=="boolean"?T:z,F=_?.id||`${V}-error`,q=C?.id||`${V}-description`,G=V,U=!!w&&typeof w!="boolean",Y=!!x,K=`${U?F:""} ${Y?q:""}`,O=K.trim().length>0?K.trim():void 0,W=k?.id||`${V}-label`,Z=v&&y.jsx(ik,{labelElement:$,id:W,htmlFor:G,required:B,...M,...k,children:v},"label"),Q=Y&&y.jsx(nk,{...C,...M,size:C?.size||M.size,id:C?.id||q,children:x},"description"),ie=y.jsx(S.Fragment,{children:f(R)},"input"),te=U&&S.createElement(ok,{..._,...M,size:_?.size||M.size,key:"error",id:_?.id||F},w),re=g.map(ue=>{switch(ue){case"label":return Z;case"input":return ie;case"description":return Q;case"error":return te;default:return null}});return y.jsx(uit,{value:{getStyles:H,describedBy:O,inputId:G,labelId:W,...mit(g,{hasDescription:Y,hasError:U})},children:y.jsx(Ae,{ref:r,variant:u,size:d,mod:[{error:!!w},I],...H("root"),...L,children:re})})});IT.classes=Ca,IT.displayName="@mantine/core/InputWrapper";const vit={variant:"default",leftSectionPointerEvents:"none",rightSectionPointerEvents:"none",withAria:!0,withErrorStyles:!0,size:"sm"},bit=(e,r,n)=>({wrapper:{"--input-margin-top":n.offsetTop?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-margin-bottom":n.offsetBottom?"calc(var(--mantine-spacing-xs) / 2)":void 0,"--input-height":Qt(r.size,"input-height"),"--input-fz":zo(r.size),"--input-radius":r.radius===void 0?void 0:hn(r.radius),"--input-left-section-width":r.leftSectionWidth!==void 0?Pe(r.leftSectionWidth):void 0,"--input-right-section-width":r.rightSectionWidth!==void 0?Pe(r.rightSectionWidth):void 0,"--input-padding-y":r.multiline?Qt(r.size,"input-padding-y"):void 0,"--input-left-section-pointer-events":r.leftSectionPointerEvents,"--input-right-section-pointer-events":r.rightSectionPointerEvents}}),ci=Un((e,r)=>{const n=ze("Input",vit,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,required:c,__staticSelector:d,__stylesApiProps:u,size:p,wrapperProps:f,error:g,disabled:v,leftSection:w,leftSectionProps:x,leftSectionWidth:k,rightSection:C,rightSectionProps:_,rightSectionWidth:$,rightSectionPointerEvents:R,leftSectionPointerEvents:T,variant:A,vars:z,pointer:j,multiline:I,radius:P,id:L,withAria:H,withErrorStyles:M,mod:V,inputSize:B,attributes:F,__clearSection:q,__clearable:G,__defaultRightSection:U,...Y}=n,{styleProps:K,rest:O}=Gz(Y),W=rk(),Z={offsetBottom:W?.offsetBottom,offsetTop:W?.offsetTop},Q=dt({name:["Input",d],props:u||n,classes:Ca,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:F,stylesCtx:Z,rootSelector:"wrapper",vars:z,varsResolver:bit}),ie=H?{required:c,disabled:v,"aria-invalid":!!g,"aria-describedby":W?.describedBy,id:W?.inputId||L}:{},te=dit({__clearable:G,__clearSection:q,rightSection:C,__defaultRightSection:U,size:p});return y.jsx(lit,{value:{size:p||"sm"},children:y.jsxs(Ae,{...Q("wrapper"),...K,...f,mod:[{error:!!g&&M,pointer:j,disabled:v,multiline:I,"data-with-right-section":!!te,"data-with-left-section":!!w},V],variant:A,size:p,children:[w&&y.jsx("div",{...x,"data-position":"left",...Q("section",{className:x?.className,style:x?.style}),children:w}),y.jsx(Ae,{component:"input",...O,...ie,ref:r,required:c,mod:{disabled:v,error:!!g&&M},variant:A,__size:B,...Q("input")}),te&&y.jsx("div",{..._,"data-position":"right",...Q("section",{className:_?.className,style:_?.style}),children:te})]})})});ci.classes=Ca,ci.Wrapper=IT,ci.Label=ik,ci.Error=ok,ci.Description=nk,ci.Placeholder=BT,ci.ClearButton=mie,ci.displayName="@mantine/core/Input";function xit(e,r,n){const o=ze(e,r,n),{label:i,description:a,error:l,required:s,classNames:c,styles:d,className:u,unstyled:p,__staticSelector:f,__stylesApiProps:g,errorProps:v,labelProps:w,descriptionProps:x,wrapperProps:k,id:C,size:_,style:$,inputContainer:R,inputWrapperOrder:T,withAsterisk:A,variant:z,vars:j,mod:I,attributes:P,...L}=o,{styleProps:H,rest:M}=Gz(L),V={label:i,description:a,error:l,required:s,classNames:c,className:u,__staticSelector:f,__stylesApiProps:g||o,errorProps:v,labelProps:w,descriptionProps:x,unstyled:p,styles:d,size:_,style:$,inputContainer:R,inputWrapperOrder:T,withAsterisk:A,variant:z,id:C,mod:I,attributes:P,...k};return{...M,classNames:c,styles:d,unstyled:p,wrapperProps:{...V,...H},inputProps:{required:s,classNames:c,styles:d,unstyled:p,size:_,__staticSelector:f,__stylesApiProps:g||o,error:l,variant:z,id:C,attributes:P}}}const wit={__staticSelector:"InputBase",withAria:!0,size:"sm"},ak=Un((e,r)=>{const{inputProps:n,wrapperProps:o,...i}=xit("InputBase",wit,e);return y.jsx(ci.Wrapper,{...o,children:y.jsx(ci,{...n,...i,ref:r})})});ak.classes={...ci.classes,...ci.Wrapper.classes},ak.displayName="@mantine/core/InputBase";const kit={gap:{type:"spacing",property:"gap"},rowGap:{type:"spacing",property:"rowGap"},columnGap:{type:"spacing",property:"columnGap"},align:{type:"identity",property:"alignItems"},justify:{type:"identity",property:"justifyContent"},wrap:{type:"identity",property:"flexWrap"},direction:{type:"identity",property:"flexDirection"}};var yie={root:"m_8bffd616"};const vie=Un((e,r)=>{const n=ze("Flex",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,gap:d,rowGap:u,columnGap:p,align:f,justify:g,wrap:v,direction:w,attributes:x,...k}=n,C=dt({name:"Flex",classes:yie,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:x,vars:c}),_=uo(),$=M0(),R=Fne({styleProps:{gap:d,rowGap:u,columnGap:p,align:f,justify:g,wrap:v,direction:w},theme:_,data:kit});return y.jsxs(y.Fragment,{children:[R.hasResponsiveStyles&&y.jsx(Vm,{selector:`.${$}`,styles:R.styles,media:R.media}),y.jsx(Ae,{ref:r,...C("root",{className:$,style:Vd(R.inlineStyles)}),...k})]})});vie.classes=yie,vie.displayName="@mantine/core/Flex";function _it(e,r){if(!r||!e)return!1;let n=r.parentNode;for(;n!=null;){if(n===e)return!0;n=n.parentNode}return!1}function Sit({target:e,parent:r,ref:n,displayAfterTransitionEnd:o}){const i=S.useRef(-1),[a,l]=S.useState(!1),[s,c]=S.useState(typeof o=="boolean"?o:!1),d=()=>{if(!e||!r||!n.current)return;const g=e.getBoundingClientRect(),v=r.getBoundingClientRect(),w=window.getComputedStyle(e),x=window.getComputedStyle(r),k=Gd(w.borderTopWidth)+Gd(x.borderTopWidth),C=Gd(w.borderLeftWidth)+Gd(x.borderLeftWidth),_={top:g.top-v.top-k,left:g.left-v.left-C,width:g.width,height:g.height};n.current.style.transform=`translateY(${_.top}px) translateX(${_.left}px)`,n.current.style.width=`${_.width}px`,n.current.style.height=`${_.height}px`},u=()=>{window.clearTimeout(i.current),n.current&&(n.current.style.transitionDuration="0ms"),d(),i.current=window.setTimeout(()=>{n.current&&(n.current.style.transitionDuration="")},30)},p=S.useRef(null),f=S.useRef(null);return S.useEffect(()=>{if(d(),e)return p.current=new ResizeObserver(u),p.current.observe(e),r&&(f.current=new ResizeObserver(u),f.current.observe(r)),()=>{p.current?.disconnect(),f.current?.disconnect()}},[r,e]),S.useEffect(()=>{if(r){const g=v=>{_it(v.target,r)&&(u(),c(!1))};return r.addEventListener("transitionend",g),()=>{r.removeEventListener("transitionend",g)}}},[r]),vtt(()=>{ktt()!=="test"&&l(!0)},20,{autoInvoke:!0}),xtt(g=>{g.forEach(v=>{v.type==="attributes"&&v.attributeName==="dir"&&u()})},{attributes:!0,attributeFilter:["dir"]},()=>document.documentElement),{initialized:a,hidden:s}}var bie={root:"m_96b553a6"};const Eit=(e,{transitionDuration:r})=>({root:{"--transition-duration":typeof r=="number"?`${r}ms`:r}}),OT=We((e,r)=>{const n=ze("FloatingIndicator",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,target:d,parent:u,transitionDuration:p,mod:f,displayAfterTransitionEnd:g,attributes:v,...w}=n,x=dt({name:"FloatingIndicator",classes:bie,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:Eit}),k=S.useRef(null),{initialized:C,hidden:_}=Sit({target:d,parent:u,ref:k,displayAfterTransitionEnd:g}),$=on(r,k);return!d||!u?null:y.jsx(Ae,{ref:$,mod:[{initialized:C,hidden:_},f],...x("root"),...w})});OT.displayName="@mantine/core/FloatingIndicator",OT.classes=bie;function Cit({open:e,close:r,openDelay:n,closeDelay:o}){const i=S.useRef(-1),a=S.useRef(-1),l=()=>{window.clearTimeout(i.current),window.clearTimeout(a.current)},s=()=>{l(),n===0||n===void 0?e():i.current=window.setTimeout(e,n)},c=()=>{l(),o===0||o===void 0?r():a.current=window.setTimeout(r,o)};return S.useEffect(()=>l,[]),{openDropdown:s,closeDropdown:c}}function LT({style:e,size:r=16,...n}){return y.jsx("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...e,width:Pe(r),height:Pe(r),display:"block"},...n,children:y.jsx("path",{d:"M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}LT.displayName="@mantine/core/AccordionChevron";var xie={root:"m_66836ed3",wrapper:"m_a5d60502",body:"m_667c2793",title:"m_6a03f287",label:"m_698f4f23",icon:"m_667f2a6a",message:"m_7fa78076",closeButton:"m_87f54839"};const $it=(e,{radius:r,color:n,variant:o,autoContrast:i})=>{const a=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:o||"light",autoContrast:i});return{root:{"--alert-radius":r===void 0?void 0:hn(r),"--alert-bg":n||o?a.background:void 0,"--alert-color":a.color,"--alert-bd":n||o?a.border:void 0}}},wie=We((e,r)=>{const n=ze("Alert",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,radius:d,color:u,title:p,children:f,id:g,icon:v,withCloseButton:w,onClose:x,closeButtonLabel:k,variant:C,autoContrast:_,role:$,attributes:R,...T}=n,A=dt({name:"Alert",classes:xie,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:R,vars:c,varsResolver:$it}),z=bl(g),j=p&&`${z}-title`||void 0,I=`${z}-body`;return y.jsx(Ae,{id:z,...A("root",{variant:C}),variant:C,ref:r,role:$||"alert",...T,"aria-describedby":f?I:void 0,"aria-labelledby":p?j:void 0,children:y.jsxs("div",{...A("wrapper"),children:[v&&y.jsx("div",{...A("icon"),children:v}),y.jsxs("div",{...A("body"),children:[p&&y.jsx("div",{...A("title"),"data-with-close-button":w||void 0,children:y.jsx("span",{id:j,...A("label"),children:p})}),f&&y.jsx("div",{id:I,...A("message"),"data-variant":C,children:f})]}),w&&y.jsx(Hp,{...A("closeButton"),onClick:x,variant:"transparent",size:16,iconSize:16,"aria-label":k,unstyled:s})]})})});wie.classes=xie,wie.displayName="@mantine/core/Alert";var kie={root:"m_b6d8b162"};function Rit(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const zit={inherit:!1},Tit=(e,{variant:r,lineClamp:n,gradient:o,size:i,color:a})=>({root:{"--text-fz":zo(i),"--text-lh":Zet(i),"--text-gradient":r==="gradient"?Itt(o,e):void 0,"--text-line-clamp":typeof n=="number"?n.toString():void 0,"--text-color":a?Uo(a,e):void 0}}),L0=Un((e,r)=>{const n=ze("Text",zit,e),{lineClamp:o,truncate:i,inline:a,inherit:l,gradient:s,span:c,__staticSelector:d,vars:u,className:p,style:f,classNames:g,styles:v,unstyled:w,variant:x,mod:k,size:C,attributes:_,...$}=n,R=dt({name:["Text",d],props:n,classes:kie,className:p,style:f,classNames:g,styles:v,unstyled:w,attributes:_,vars:u,varsResolver:Tit});return y.jsx(Ae,{...R("root",{focusable:!0}),ref:r,component:c?"span":"p",variant:x,mod:[{"data-truncate":Rit(i),"data-line-clamp":typeof o=="number","data-inline":a,"data-inherit":l},k],size:C,...$})});L0.classes=kie,L0.displayName="@mantine/core/Text";var _ie={root:"m_849cf0da"};const jit={underline:"hover"},Sie=Un((e,r)=>{const{underline:n,className:o,unstyled:i,mod:a,...l}=ze("Anchor",jit,e);return y.jsx(L0,{component:"a",ref:r,className:no({[_ie.root]:!i},o),...l,mod:[{underline:n},a],__staticSelector:"Anchor",unstyled:i})});Sie.classes=_ie,Sie.displayName="@mantine/core/Anchor";function Eie(e){return typeof e=="string"?{value:e,label:e}:"value"in e&&!("label"in e)?{value:e.value,label:e.value,disabled:e.disabled}:typeof e=="number"?{value:e.toString(),label:e.toString()}:"group"in e?{group:e.group,items:e.items.map(r=>Eie(r))}:e}function Ait(e){return e?e.map(r=>Eie(r)):[]}function Cie(e){return e.reduce((r,n)=>"group"in n?{...r,...Cie(n.items)}:(r[n.value]=n,r),{})}var Wo={dropdown:"m_88b62a41",search:"m_985517d8",options:"m_b2821a6e",option:"m_92253aa5",empty:"m_2530cd1d",header:"m_858f94bd",footer:"m_82b967cb",group:"m_254f3e4f",groupLabel:"m_2bb2e9e5",chevron:"m_2943220b",optionsDropdownOption:"m_390b5f4",optionsDropdownCheckIcon:"m_8ee53fc2",optionsDropdownCheckPlaceholder:"m_a530ee0a"};const Dit={error:null},Mit=(e,{size:r,color:n})=>({chevron:{"--combobox-chevron-size":Qt(r,"combobox-chevron-size"),"--combobox-chevron-color":n?Uo(n,e):void 0}}),FT=We((e,r)=>{const n=ze("ComboboxChevron",Dit,e),{size:o,error:i,style:a,className:l,classNames:s,styles:c,unstyled:d,vars:u,mod:p,...f}=n,g=dt({name:"ComboboxChevron",classes:Wo,props:n,style:a,className:l,classNames:s,styles:c,unstyled:d,vars:u,varsResolver:Mit,rootSelector:"chevron"});return y.jsx(Ae,{component:"svg",...f,...g("chevron"),size:o,viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",mod:["combobox-chevron",{error:i},p],ref:r,children:y.jsx("path",{d:"M4.93179 5.43179C4.75605 5.60753 4.75605 5.89245 4.93179 6.06819C5.10753 6.24392 5.39245 6.24392 5.56819 6.06819L7.49999 4.13638L9.43179 6.06819C9.60753 6.24392 9.89245 6.24392 10.0682 6.06819C10.2439 5.89245 10.2439 5.60753 10.0682 5.43179L7.81819 3.18179C7.73379 3.0974 7.61933 3.04999 7.49999 3.04999C7.38064 3.04999 7.26618 3.0974 7.18179 3.18179L4.93179 5.43179ZM10.0682 9.56819C10.2439 9.39245 10.2439 9.10753 10.0682 8.93179C9.89245 8.75606 9.60753 8.75606 9.43179 8.93179L7.49999 10.8636L5.56819 8.93179C5.39245 8.75606 5.10753 8.75606 4.93179 8.93179C4.75605 9.10753 4.75605 9.39245 4.93179 9.56819L7.18179 11.8182C7.35753 11.9939 7.64245 11.9939 7.81819 11.8182L10.0682 9.56819Z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})});FT.classes=Wo,FT.displayName="@mantine/core/ComboboxChevron";const[Nit,$a]=Di("Combobox component was not found in tree"),$ie=S.forwardRef(({size:e,onMouseDown:r,onClick:n,onClear:o,...i},a)=>y.jsx(ci.ClearButton,{ref:a,tabIndex:-1,"aria-hidden":!0,...i,onMouseDown:l=>{l.preventDefault(),r?.(l)},onClick:l=>{o(),n?.(l)}}));$ie.displayName="@mantine/core/ComboboxClearButton";const VT=We((e,r)=>{const{classNames:n,styles:o,className:i,style:a,hidden:l,...s}=ze("ComboboxDropdown",null,e),c=$a();return y.jsx(po.Dropdown,{...s,ref:r,role:"presentation","data-hidden":l||void 0,...c.getStyles("dropdown",{className:i,style:a,classNames:n,styles:o})})});VT.classes=Wo,VT.displayName="@mantine/core/ComboboxDropdown";const Pit={refProp:"ref"},Rie=We((e,r)=>{const{children:n,refProp:o}=ze("ComboboxDropdownTarget",Pit,e);if($a(),!E4(n))throw new Error("Combobox.DropdownTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return y.jsx(po.Target,{ref:r,refProp:o,children:n})});Rie.displayName="@mantine/core/ComboboxDropdownTarget";const qT=We((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=ze("ComboboxEmpty",null,e),c=$a();return y.jsx(Ae,{ref:r,...c.getStyles("empty",{className:o,classNames:n,styles:a,style:i}),...s})});qT.classes=Wo,qT.displayName="@mantine/core/ComboboxEmpty";function HT({onKeyDown:e,withKeyboardNavigation:r,withAriaAttributes:n,withExpandedAttribute:o,targetType:i,autoComplete:a}){const l=$a(),[s,c]=S.useState(null),d=u=>{if(e?.(u),!l.readOnly&&r){if(u.nativeEvent.isComposing)return;if(u.nativeEvent.code==="ArrowDown"&&(u.preventDefault(),l.store.dropdownOpened?c(l.store.selectNextOption()):(l.store.openDropdown("keyboard"),c(l.store.selectActiveOption()),l.store.updateSelectedOptionIndex("selected",{scrollIntoView:!0}))),u.nativeEvent.code==="ArrowUp"&&(u.preventDefault(),l.store.dropdownOpened?c(l.store.selectPreviousOption()):(l.store.openDropdown("keyboard"),c(l.store.selectActiveOption()),l.store.updateSelectedOptionIndex("selected",{scrollIntoView:!0}))),u.nativeEvent.code==="Enter"||u.nativeEvent.code==="NumpadEnter"){if(u.nativeEvent.keyCode===229)return;const p=l.store.getSelectedOptionIndex();l.store.dropdownOpened&&p!==-1?(u.preventDefault(),l.store.clickSelectedOption()):i==="button"&&(u.preventDefault(),l.store.openDropdown("keyboard"))}u.key==="Escape"&&l.store.closeDropdown("keyboard"),u.nativeEvent.code==="Space"&&i==="button"&&(u.preventDefault(),l.store.toggleDropdown("keyboard"))}};return{...n?{"aria-haspopup":"listbox","aria-expanded":o?!!(l.store.listId&&l.store.dropdownOpened):void 0,"aria-controls":l.store.dropdownOpened&&l.store.listId?l.store.listId:void 0,"aria-activedescendant":l.store.dropdownOpened&&s||void 0,autoComplete:a,"data-expanded":l.store.dropdownOpened||void 0,"data-mantine-stop-propagation":l.store.dropdownOpened||void 0}:{},onKeyDown:d}}const Bit={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},zie=We((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:i,withAriaAttributes:a,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=ze("ComboboxEventsTarget",Bit,e),u=Wd(n);if(!u)throw new Error("Combobox.EventsTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const p=$a(),f=HT({targetType:s,withAriaAttributes:a,withKeyboardNavigation:i,withExpandedAttribute:l,onKeyDown:u.props.onKeyDown,autoComplete:c});return S.cloneElement(u,{...f,...d,[o]:on(r,p.store.targetRef,R4(u))})});zie.displayName="@mantine/core/ComboboxEventsTarget";const UT=We((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=ze("ComboboxFooter",null,e),c=$a();return y.jsx(Ae,{ref:r,...c.getStyles("footer",{className:o,classNames:n,style:i,styles:a}),...s,onMouseDown:d=>{d.preventDefault()}})});UT.classes=Wo,UT.displayName="@mantine/core/ComboboxFooter";const WT=We((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,children:s,label:c,id:d,...u}=ze("ComboboxGroup",null,e),p=$a(),f=bl(d);return y.jsxs(Ae,{ref:r,role:"group","aria-labelledby":c?f:void 0,...p.getStyles("group",{className:o,classNames:n,style:i,styles:a}),...u,children:[c&&y.jsx("div",{id:f,...p.getStyles("groupLabel",{classNames:n,styles:a}),children:c}),s]})});WT.classes=Wo,WT.displayName="@mantine/core/ComboboxGroup";const GT=We((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=ze("ComboboxHeader",null,e),c=$a();return y.jsx(Ae,{ref:r,...c.getStyles("header",{className:o,classNames:n,style:i,styles:a}),...s,onMouseDown:d=>{d.preventDefault()}})});GT.classes=Wo,GT.displayName="@mantine/core/ComboboxHeader";function Tie({value:e,valuesDivider:r=",",...n}){return y.jsx("input",{type:"hidden",value:Array.isArray(e)?e.join(r):e||"",...n})}Tie.displayName="@mantine/core/ComboboxHiddenInput";const YT=We((e,r)=>{const n=ze("ComboboxOption",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,onClick:c,id:d,active:u,onMouseDown:p,onMouseOver:f,disabled:g,selected:v,mod:w,...x}=n,k=$a(),C=S.useId(),_=d||C;return y.jsx(Ae,{...k.getStyles("option",{className:i,classNames:o,styles:l,style:a}),...x,ref:r,id:_,mod:["combobox-option",{"combobox-active":u,"combobox-disabled":g,"combobox-selected":v},w],role:"option",onClick:$=>{g?$.preventDefault():(k.onOptionSubmit?.(n.value,n),c?.($))},onMouseDown:$=>{$.preventDefault(),p?.($)},onMouseOver:$=>{k.resetSelectionOnOptionHover&&k.store.resetSelectedOption(),f?.($)}})});YT.classes=Wo,YT.displayName="@mantine/core/ComboboxOption";const XT=We((e,r)=>{const n=ze("ComboboxOptions",null,e),{classNames:o,className:i,style:a,styles:l,id:s,onMouseDown:c,labelledBy:d,...u}=n,p=$a(),f=bl(s);return S.useEffect(()=>{p.store.setListId(f)},[f]),y.jsx(Ae,{ref:r,...p.getStyles("options",{className:i,style:a,classNames:o,styles:l}),...u,id:f,role:"listbox","aria-labelledby":d,onMouseDown:g=>{g.preventDefault(),c?.(g)}})});XT.classes=Wo,XT.displayName="@mantine/core/ComboboxOptions";const Iit={withAriaAttributes:!0,withKeyboardNavigation:!0},KT=We((e,r)=>{const n=ze("ComboboxSearch",Iit,e),{classNames:o,styles:i,unstyled:a,vars:l,withAriaAttributes:s,onKeyDown:c,withKeyboardNavigation:d,size:u,...p}=n,f=$a(),g=f.getStyles("search"),v=HT({targetType:"input",withAriaAttributes:s,withKeyboardNavigation:d,withExpandedAttribute:!1,onKeyDown:c,autoComplete:"off"});return y.jsx(ci,{ref:on(r,f.store.searchRef),classNames:[{input:g.className},o],styles:[{input:g.style},i],size:u||f.size,...v,...p,__staticSelector:"Combobox"})});KT.classes=Wo,KT.displayName="@mantine/core/ComboboxSearch";const Oit={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},jie=We((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:i,withAriaAttributes:a,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=ze("ComboboxTarget",Oit,e),u=Wd(n);if(!u)throw new Error("Combobox.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const p=$a(),f=HT({targetType:s,withAriaAttributes:a,withKeyboardNavigation:i,withExpandedAttribute:l,onKeyDown:u.props.onKeyDown,autoComplete:c}),g=S.cloneElement(u,{...f,...d});return y.jsx(po.Target,{ref:on(r,p.store.targetRef),children:g})});jie.displayName="@mantine/core/ComboboxTarget";function Lit(e,r,n){for(let o=e-1;o>=0;o-=1)if(!r[o].hasAttribute("data-combobox-disabled"))return o;if(n){for(let o=r.length-1;o>-1;o-=1)if(!r[o].hasAttribute("data-combobox-disabled"))return o}return e}function Fit(e,r,n){for(let o=e+1;o{s||(c(!0),i?.(B))},[c,i,s]),k=S.useCallback((B="unknown")=>{s&&(c(!1),o?.(B))},[c,o,s]),C=S.useCallback((B="unknown")=>{s?k(B):x(B)},[k,x,s]),_=S.useCallback(()=>{const B=Ud(f.current),F=z4(`#${d.current} [data-combobox-selected]`,B);F?.removeAttribute("data-combobox-selected"),F?.removeAttribute("aria-selected")},[]),$=S.useCallback(B=>{const F=Ud(f.current),q=z4(`#${d.current}`,F),G=q?Hd("[data-combobox-option]",q):null;if(!G)return null;const U=B>=G.length?0:B<0?G.length-1:B;return u.current=U,G?.[U]&&!G[U].hasAttribute("data-combobox-disabled")?(_(),G[U].setAttribute("data-combobox-selected","true"),G[U].setAttribute("aria-selected","true"),G[U].scrollIntoView({block:"nearest",behavior:l}),G[U].id):null},[l,_]),R=S.useCallback(()=>{const B=Ud(f.current),F=z4(`#${d.current} [data-combobox-active]`,B);if(F){const q=Hd(`#${d.current} [data-combobox-option]`,B).findIndex(G=>G===F);return $(q)}return $(0)},[$]),T=S.useCallback(()=>{const B=Ud(f.current),F=Hd(`#${d.current} [data-combobox-option]`,B);return $(Fit(u.current,F,a))},[$,a]),A=S.useCallback(()=>{const B=Ud(f.current),F=Hd(`#${d.current} [data-combobox-option]`,B);return $(Lit(u.current,F,a))},[$,a]),z=S.useCallback(()=>{const B=Ud(f.current),F=Hd(`#${d.current} [data-combobox-option]`,B);return $(Vit(F))},[$]),j=S.useCallback((B="selected",F)=>{w.current=window.setTimeout(()=>{const q=Ud(f.current),G=Hd(`#${d.current} [data-combobox-option]`,q),U=G.findIndex(Y=>Y.hasAttribute(`data-combobox-${B}`));u.current=U,F?.scrollIntoView&&G[U]?.scrollIntoView({block:"nearest",behavior:l})},0)},[]),I=S.useCallback(()=>{u.current=-1,_()},[_]),P=S.useCallback(()=>{const B=Ud(f.current);Hd(`#${d.current} [data-combobox-option]`,B)?.[u.current]?.click()},[]),L=S.useCallback(B=>{d.current=B},[]),H=S.useCallback(()=>{g.current=window.setTimeout(()=>p.current?.focus(),0)},[]),M=S.useCallback(()=>{v.current=window.setTimeout(()=>f.current?.focus(),0)},[]),V=S.useCallback(()=>u.current,[]);return S.useEffect(()=>()=>{window.clearTimeout(g.current),window.clearTimeout(v.current),window.clearTimeout(w.current)},[]),{dropdownOpened:s,openDropdown:x,closeDropdown:k,toggleDropdown:C,selectedOptionIndex:u.current,getSelectedOptionIndex:V,selectOption:$,selectFirstOption:z,selectActiveOption:R,selectNextOption:T,selectPreviousOption:A,resetSelectedOption:I,updateSelectedOptionIndex:j,listId:d.current,setListId:L,clickSelectedOption:P,searchRef:p,focusSearchInput:H,targetRef:f,focusTarget:M}}const qit={keepMounted:!0,withinPortal:!0,resetSelectionOnOptionHover:!1,width:"target",transitionProps:{transition:"fade",duration:0},size:"sm"},Hit=(e,{size:r,dropdownPadding:n})=>({options:{"--combobox-option-fz":zo(r),"--combobox-option-padding":Qt(r,"combobox-option-padding")},dropdown:{"--combobox-padding":n===void 0?void 0:Pe(n),"--combobox-option-fz":zo(r),"--combobox-option-padding":Qt(r,"combobox-option-padding")}});function xr(e){const r=ze("Combobox",qit,e),{classNames:n,styles:o,unstyled:i,children:a,store:l,vars:s,onOptionSubmit:c,onClose:d,size:u,dropdownPadding:p,resetSelectionOnOptionHover:f,__staticSelector:g,readOnly:v,attributes:w,...x}=r,k=Aie(),C=l||k,_=dt({name:g||"Combobox",classes:Wo,props:r,classNames:n,styles:o,unstyled:i,attributes:w,vars:s,varsResolver:Hit}),$=()=>{d?.(),C.closeDropdown()};return y.jsx(Nit,{value:{getStyles:_,store:C,onOptionSubmit:c,size:u,resetSelectionOnOptionHover:f,readOnly:v},children:y.jsx(po,{opened:C.dropdownOpened,preventPositionChangeWhenVisible:!0,...x,onChange:R=>!R&&$(),withRoles:!1,unstyled:i,children:a})})}const Uit=e=>e;xr.extend=Uit,xr.classes=Wo,xr.displayName="@mantine/core/Combobox",xr.Target=jie,xr.Dropdown=VT,xr.Options=XT,xr.Option=YT,xr.Search=KT,xr.Empty=qT,xr.Chevron=FT,xr.Footer=UT,xr.Header=GT,xr.EventsTarget=zie,xr.DropdownTarget=Rie,xr.Group=WT,xr.ClearButton=$ie,xr.HiddenInput=Tie;function Wit({size:e,style:r,...n}){const o=e!==void 0?{width:Pe(e),height:Pe(e),...r}:r;return y.jsx("svg",{viewBox:"0 0 10 7",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:o,"aria-hidden":!0,...n,children:y.jsx("path",{d:"M4 4.586L1.707 2.293A1 1 0 1 0 .293 3.707l3 3a.997.997 0 0 0 1.414 0l5-5A1 1 0 1 0 8.293.293L4 4.586z",fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd"})})}function F0(e){return"group"in e}function Die({options:e,search:r,limit:n}){const o=r.trim().toLowerCase(),i=[];for(let a=0;a0)return!1;return!0}function Mie(e,r=new Set){if(Array.isArray(e))for(const n of e)if(F0(n))Mie(n.items,r);else{if(typeof n.value>"u")throw new Error("[@mantine/core] Each option must have value property");if(typeof n.value!="string")throw new Error(`[@mantine/core] Option value must be a string, other data formats are not supported, got ${typeof n.value}`);if(r.has(n.value))throw new Error(`[@mantine/core] Duplicate options are not supported. Option with value "${n.value}" was provided more than once`);r.add(n.value)}}function Yit(e,r){return Array.isArray(e)?e.includes(r):e===r}function Nie({data:e,withCheckIcon:r,withAlignedLabels:n,value:o,checkIconPosition:i,unstyled:a,renderOption:l}){if(!F0(e)){const c=Yit(o,e.value),d=r&&(c?y.jsx(Wit,{className:Wo.optionsDropdownCheckIcon}):n?y.jsx("div",{className:Wo.optionsDropdownCheckPlaceholder}):null),u=y.jsxs(y.Fragment,{children:[i==="left"&&d,y.jsx("span",{children:e.label}),i==="right"&&d]});return y.jsx(xr.Option,{value:e.value,disabled:e.disabled,className:no({[Wo.optionsDropdownOption]:!a}),"data-reverse":i==="right"||void 0,"data-checked":c||void 0,"aria-selected":c,active:c,children:typeof l=="function"?l({option:e,checked:c}):u})}const s=e.items.map(c=>y.jsx(Nie,{data:c,value:o,unstyled:a,withCheckIcon:r,withAlignedLabels:n,checkIconPosition:i,renderOption:l},c.value));return y.jsx(xr.Group,{label:e.group,children:s})}function Xit({data:e,hidden:r,hiddenWhenEmpty:n,filter:o,search:i,limit:a,maxDropdownHeight:l,withScrollArea:s=!0,filterOptions:c=!0,withCheckIcon:d=!1,withAlignedLabels:u=!1,value:p,checkIconPosition:f,nothingFoundMessage:g,unstyled:v,labelId:w,renderOption:x,scrollAreaProps:k,"aria-label":C}){Mie(e);const _=typeof i=="string"?(o||Die)({options:e,search:c?i:"",limit:a??1/0}):e,$=Git(_),R=_.map(T=>y.jsx(Nie,{data:T,withCheckIcon:d,withAlignedLabels:u,value:p,checkIconPosition:f,unstyled:v,renderOption:x},F0(T)?T.group:T.value));return y.jsx(xr.Dropdown,{hidden:r||n&&$,"data-composed":!0,children:y.jsxs(xr.Options,{labelledBy:w,"aria-label":C,children:[s?y.jsx(Fp.Autosize,{mah:l??220,type:"scroll",scrollbarSize:"var(--combobox-padding)",offsetScrollbars:"y",...k,children:R}):R,$&&g&&y.jsx(xr.Empty,{children:g})]})})}var Pie={root:"m_347db0ec","root--dot":"m_fbd81e3d",label:"m_5add502a",section:"m_91fdda9b"};const Kit=(e,{radius:r,color:n,gradient:o,variant:i,size:a,autoContrast:l,circle:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:i||"filled",autoContrast:l});return{root:{"--badge-height":Qt(a,"badge-height"),"--badge-padding-x":Qt(a,"badge-padding-x"),"--badge-fz":Qt(a,"badge-fz"),"--badge-radius":s||r===void 0?void 0:hn(r),"--badge-bg":n||i?c.background:void 0,"--badge-color":n||i?c.color:void 0,"--badge-bd":n||i?c.border:void 0,"--badge-dot-color":i==="dot"?Uo(n,e):void 0}}},Bie=Un((e,r)=>{const n=ze("Badge",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,radius:d,color:u,gradient:p,leftSection:f,rightSection:g,children:v,variant:w,fullWidth:x,autoContrast:k,circle:C,mod:_,attributes:$,...R}=n,T=dt({name:"Badge",props:n,classes:Pie,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:$,vars:c,varsResolver:Kit});return y.jsxs(Ae,{variant:w,mod:[{block:x,circle:C,"with-right-section":!!g,"with-left-section":!!f},_],...T("root",{variant:w}),ref:r,...R,children:[f&&y.jsx("span",{...T("section"),"data-position":"left",children:f}),y.jsx("span",{...T("label"),children:v}),g&&y.jsx("span",{...T("section"),"data-position":"right",children:g})]})});Bie.classes=Pie,Bie.displayName="@mantine/core/Badge";var Iie={root:"m_8b3717df",breadcrumb:"m_f678d540",separator:"m_3b8f2208"};const Zit={separator:"/"},Qit=(e,{separatorMargin:r})=>({root:{"--bc-separator-margin":ro(r)}}),Oie=We((e,r)=>{const n=ze("Breadcrumbs",Zit,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,children:d,separator:u,separatorMargin:p,attributes:f,...g}=n,v=dt({name:"Breadcrumbs",classes:Iie,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:f,vars:c,varsResolver:Qit}),w=S.Children.toArray(d).reduce((x,k,C,_)=>{const $=E4(k)?S.cloneElement(k,{...v("breadcrumb",{className:k.props?.className}),key:C}):S.createElement("div",{...v("breadcrumb"),key:C},k);return x.push($),C!==_.length-1&&x.push(S.createElement(Ae,{...v("separator"),key:`separator-${C}`},u)),x},[]);return y.jsx(Ae,{ref:r,...v("root"),...g,children:w})});Oie.classes=Iie,Oie.displayName="@mantine/core/Breadcrumbs";var Lie={root:"m_fea6bf1a",burger:"m_d4fb9cad"};const Jit=(e,{color:r,size:n,lineSize:o,transitionDuration:i,transitionTimingFunction:a})=>({root:{"--burger-color":r?Uo(r,e):void 0,"--burger-size":Qt(n,"burger-size"),"--burger-line-size":o?Pe(o):void 0,"--burger-transition-duration":i===void 0?void 0:`${i}ms`,"--burger-transition-timing-function":a}}),Fie=We((e,r)=>{const n=ze("Burger",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,opened:d,children:u,transitionDuration:p,transitionTimingFunction:f,lineSize:g,attributes:v,...w}=n,x=dt({name:"Burger",classes:Lie,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:Jit});return y.jsxs(hs,{...x("root"),ref:r,...w,children:[y.jsx(Ae,{mod:["reduce-motion",{opened:d}],...x("burger")}),u]})});Fie.classes=Lie,Fie.displayName="@mantine/core/Burger";var Qm={root:"m_77c9d27d",inner:"m_80f1301b",label:"m_811560b9",section:"m_a74036a",loader:"m_a25b86ee",group:"m_80d6d844",groupSection:"m_70be2a01"};const Vie={orientation:"horizontal"},eat=(e,{borderWidth:r})=>({group:{"--button-border-width":Pe(r)}}),ZT=We((e,r)=>{const n=ze("ButtonGroup",Vie,e),{className:o,style:i,classNames:a,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=ze("ButtonGroup",Vie,e),w=dt({name:"ButtonGroup",props:n,classes:Qm,className:o,style:i,classNames:a,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:eat,rootSelector:"group"});return y.jsx(Ae,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});ZT.classes=Qm,ZT.displayName="@mantine/core/ButtonGroup";const tat=(e,{radius:r,color:n,gradient:o,variant:i,autoContrast:a,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:i||"filled",autoContrast:a});return{groupSection:{"--section-height":Qt(l,"section-height"),"--section-padding-x":Qt(l,"section-padding-x"),"--section-fz":l?.includes("compact")?zo(l.replace("compact-","")):zo(l),"--section-radius":r===void 0?void 0:hn(r),"--section-bg":n||i?s.background:void 0,"--section-color":s.color,"--section-bd":n||i?s.border:void 0}}},QT=We((e,r)=>{const n=ze("ButtonGroupSection",null,e),{className:o,style:i,classNames:a,styles:l,unstyled:s,vars:c,variant:d,gradient:u,radius:p,autoContrast:f,attributes:g,...v}=n,w=dt({name:"ButtonGroupSection",props:n,classes:Qm,className:o,style:i,classNames:a,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:tat,rootSelector:"groupSection"});return y.jsx(Ae,{...w("groupSection"),ref:r,variant:d,...v})});QT.classes=Qm,QT.displayName="@mantine/core/ButtonGroupSection";const rat={in:{opacity:1,transform:`translate(-50%, calc(-50% + ${Pe(1)}))`},out:{opacity:0,transform:"translate(-50%, -200%)"},common:{transformOrigin:"center"},transitionProperty:"transform, opacity"},nat=(e,{radius:r,color:n,gradient:o,variant:i,size:a,justify:l,autoContrast:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:i||"filled",autoContrast:s});return{root:{"--button-justify":l,"--button-height":Qt(a,"button-height"),"--button-padding-x":Qt(a,"button-padding-x"),"--button-fz":a?.includes("compact")?zo(a.replace("compact-","")):zo(a),"--button-radius":r===void 0?void 0:hn(r),"--button-bg":n||i?c.background:void 0,"--button-hover":n||i?c.hover:void 0,"--button-color":c.color,"--button-bd":n||i?c.border:void 0,"--button-hover-color":n||i?c.hoverColor:void 0}}},lk=Un((e,r)=>{const n=ze("Button",null,e),{style:o,vars:i,className:a,color:l,disabled:s,children:c,leftSection:d,rightSection:u,fullWidth:p,variant:f,radius:g,loading:v,loaderProps:w,gradient:x,classNames:k,styles:C,unstyled:_,"data-disabled":$,autoContrast:R,mod:T,attributes:A,...z}=n,j=dt({name:"Button",props:n,classes:Qm,className:a,style:o,classNames:k,styles:C,unstyled:_,attributes:A,vars:i,varsResolver:nat}),I=!!d,P=!!u;return y.jsxs(hs,{ref:r,...j("root",{active:!s&&!v&&!$}),unstyled:_,variant:f,disabled:s||v,mod:[{disabled:s||$,loading:v,block:p,"with-left-section":I,"with-right-section":P},T],...z,children:[typeof v=="boolean"&&y.jsx(_l,{mounted:v,transition:rat,duration:150,children:L=>y.jsx(Ae,{component:"span",...j("loader",{style:L}),"aria-hidden":!0,children:y.jsx(qp,{color:"var(--button-color)",size:"calc(var(--button-height) / 1.8)",...w})})}),y.jsxs("span",{...j("inner"),children:[d&&y.jsx(Ae,{component:"span",...j("section"),mod:{position:"left"},children:d}),y.jsx(Ae,{component:"span",mod:{loading:v},...j("label"),children:c}),u&&y.jsx(Ae,{component:"span",...j("section"),mod:{position:"right"},children:u})]})]})});lk.classes=Qm,lk.displayName="@mantine/core/Button",lk.Group=ZT,lk.GroupSection=QT;const[oat,iat]=Di("Card component was not found in tree");var JT={root:"m_e615b15f",section:"m_599a2148"};const sk=Un((e,r)=>{const n=ze("CardSection",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,withBorder:c,inheritPadding:d,mod:u,...p}=n,f=iat();return y.jsx(Ae,{ref:r,mod:[{"with-border":c,"inherit-padding":d},u],...f.getStyles("section",{className:i,style:a,styles:l,classNames:o}),...p})});sk.classes=JT,sk.displayName="@mantine/core/CardSection";const aat=(e,{padding:r})=>({root:{"--card-padding":ro(r)}}),ej=Un((e,r)=>{const n=ze("Card",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,children:d,padding:u,attributes:p,...f}=n,g=dt({name:"Card",props:n,classes:JT,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:aat}),v=S.Children.toArray(d),w=v.map((x,k)=>typeof x=="object"&&x&&"type"in x&&x.type===sk?S.cloneElement(x,{"data-first-section":k===0||void 0,"data-last-section":k===v.length-1||void 0}):x);return y.jsx(oat,{value:{getStyles:g},children:y.jsx(Z4,{ref:r,unstyled:s,...g("root"),...f,children:w})})});ej.classes=JT,ej.displayName="@mantine/core/Card",ej.Section=sk;var qie={root:"m_b183c0a2"};const lat=(e,{color:r})=>({root:{"--code-bg":r?Uo(r,e):void 0}}),Hie=We((e,r)=>{const n=ze("Code",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,color:d,block:u,variant:p,mod:f,attributes:g,...v}=n,w=dt({name:"Code",props:n,classes:qie,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:lat});return y.jsx(Ae,{component:u?"pre":"code",variant:p,ref:r,mod:[{block:u},f],...w("root"),...v,dir:"ltr"})});Hie.classes=qie,Hie.displayName="@mantine/core/Code";var Uie={root:"m_de3d2490",colorOverlay:"m_862f3d1b",shadowOverlay:"m_98ae7f22",alphaOverlay:"m_95709ac0",childrenOverlay:"m_93e74e3"};const Wie={withShadow:!0},sat=(e,{radius:r,size:n})=>({root:{"--cs-radius":r===void 0?void 0:hn(r),"--cs-size":Pe(n)}}),Gie=Un((e,r)=>{const n=ze("ColorSwatch",Wie,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,color:d,size:u,radius:p,withShadow:f,children:g,variant:v,attributes:w,...x}=ze("ColorSwatch",Wie,n),k=dt({name:"ColorSwatch",props:n,classes:Uie,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:w,vars:c,varsResolver:sat});return y.jsxs(Ae,{ref:r,variant:v,size:u,...k("root",{focusable:!0}),...x,children:[y.jsx("span",{...k("alphaOverlay")}),f&&y.jsx("span",{...k("shadowOverlay")}),y.jsx("span",{...k("colorOverlay",{style:{backgroundColor:d}})}),y.jsx("span",{...k("childrenOverlay"),children:g})]})});Gie.classes=Uie,Gie.displayName="@mantine/core/ColorSwatch";var Yie={root:"m_7485cace"};const cat=(e,{size:r,fluid:n})=>({root:{"--container-size":n?void 0:Qt(r,"container-size")}}),Xie=We((e,r)=>{const n=ze("Container",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,fluid:d,mod:u,attributes:p,strategy:f,...g}=n,v=dt({name:"Container",classes:Yie,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:cat});return y.jsx(Ae,{ref:r,mod:[{fluid:d,strategy:f||"block"},u],...v("root"),...g})});Xie.classes=Yie,Xie.displayName="@mantine/core/Container";var Kie={root:"m_3eebeb36",label:"m_9e365f20"};const dat={orientation:"horizontal"},uat=(e,{color:r,variant:n,size:o})=>({root:{"--divider-color":r?Uo(r,e):void 0,"--divider-border-style":n,"--divider-size":Qt(o,"divider-size")}}),Zie=We((e,r)=>{const n=ze("Divider",dat,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,color:d,orientation:u,label:p,labelPosition:f,mod:g,attributes:v,...w}=n,x=dt({name:"Divider",classes:Kie,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:uat});return y.jsx(Ae,{ref:r,mod:[{orientation:u,"with-label":!!p},g],...x("root"),...w,role:"separator",children:p&&y.jsx(Ae,{component:"span",mod:{position:f},...x("label"),children:p})})});Zie.classes=Kie,Zie.displayName="@mantine/core/Divider";const[pat,Jm]=Di("Drawer component was not found in tree");var wc={root:"m_f11b401e",header:"m_5a7c2c9",content:"m_b8a05bbd",inner:"m_31cd769a"};const ck=We((e,r)=>{const n=ze("DrawerBody",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,...c}=n,d=Jm();return y.jsx(MT,{ref:r,...d.getStyles("body",{classNames:o,style:a,styles:l,className:i}),...c})});ck.classes=wc,ck.displayName="@mantine/core/DrawerBody";const dk=We((e,r)=>{const n=ze("DrawerCloseButton",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,...c}=n,d=Jm();return y.jsx(uie,{ref:r,...d.getStyles("close",{classNames:o,style:a,styles:l,className:i}),...c})});dk.classes=wc,dk.displayName="@mantine/core/DrawerCloseButton";const uk=We((e,r)=>{const n=ze("DrawerContent",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,children:c,radius:d,__hidden:u,...p}=n,f=Jm(),g=f.scrollAreaComponent||fie;return y.jsx(NT,{...f.getStyles("content",{className:i,style:a,styles:l,classNames:o}),innerProps:f.getStyles("inner",{className:i,style:a,styles:l,classNames:o}),ref:r,...p,radius:d||f.radius||0,"data-hidden":u||void 0,children:y.jsx(g,{style:{height:"calc(100vh - var(--drawer-offset) * 2)"},children:c})})});uk.classes=wc,uk.displayName="@mantine/core/DrawerContent";const pk=We((e,r)=>{const n=ze("DrawerHeader",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,...c}=n,d=Jm();return y.jsx(pie,{ref:r,...d.getStyles("header",{classNames:o,style:a,styles:l,className:i}),...c})});pk.classes=wc,pk.displayName="@mantine/core/DrawerHeader";const hk=We((e,r)=>{const n=ze("DrawerOverlay",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,...c}=n,d=Jm();return y.jsx(PT,{ref:r,...d.getStyles("overlay",{classNames:o,style:a,styles:l,className:i}),...c})});hk.classes=wc,hk.displayName="@mantine/core/DrawerOverlay";function hat(e){switch(e){case"top":return"flex-start";case"bottom":return"flex-end";default:return}}function fat(e){if(e==="top"||e==="bottom")return"0 0 calc(100% - var(--drawer-offset, 0rem) * 2)"}const mat={top:"slide-down",bottom:"slide-up",left:"slide-right",right:"slide-left"},gat={top:"slide-down",bottom:"slide-up",right:"slide-right",left:"slide-left"},yat={closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:yl("modal"),position:"left"},vat=(e,{position:r,size:n,offset:o})=>({root:{"--drawer-size":Qt(n,"drawer-size"),"--drawer-flex":fat(r),"--drawer-height":r==="left"||r==="right"?void 0:"var(--drawer-size)","--drawer-align":hat(r),"--drawer-justify":r==="right"?"flex-end":void 0,"--drawer-offset":Pe(o)}}),fk=We((e,r)=>{const n=ze("DrawerRoot",yat,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,scrollAreaComponent:d,position:u,transitionProps:p,radius:f,attributes:g,...v}=n,{dir:w}=gc(),x=dt({name:"Drawer",classes:wc,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:vat}),k=(w==="rtl"?gat:mat)[u];return y.jsx(pat,{value:{scrollAreaComponent:d,getStyles:x,radius:f},children:y.jsx(DT,{ref:r,...x("root"),transitionProps:{transition:k,...p},"data-offset-scrollbars":d===Fp.Autosize||void 0,unstyled:s,...v})})});fk.classes=wc,fk.displayName="@mantine/core/DrawerRoot";const[bat,xat]=Bm();function Qie({children:e}){const[r,n]=S.useState([]),[o,i]=S.useState(yl("modal"));return y.jsx(bat,{value:{stack:r,addModal:(a,l)=>{n(s=>[...new Set([...s,a])]),i(s=>typeof l=="number"&&typeof s=="number"?Math.max(s,l):s)},removeModal:a=>n(l=>l.filter(s=>s!==a)),getZIndex:a=>`calc(${o} + ${r.indexOf(a)} + 1)`,currentId:r[r.length-1],maxZIndex:o},children:e})}Qie.displayName="@mantine/core/DrawerStack";const mk=We((e,r)=>{const n=ze("DrawerTitle",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,...c}=n,d=Jm();return y.jsx(hie,{ref:r,...d.getStyles("title",{classNames:o,style:a,styles:l,className:i}),...c})});mk.classes=wc,mk.displayName="@mantine/core/DrawerTitle";const wat={closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:yl("modal"),withOverlay:!0,withCloseButton:!0},fs=We((e,r)=>{const{title:n,withOverlay:o,overlayProps:i,withCloseButton:a,closeButtonProps:l,children:s,opened:c,stackId:d,zIndex:u,...p}=ze("Drawer",wat,e),f=xat(),g=!!n||a,v=f&&d?{closeOnEscape:f.currentId===d,trapFocus:f.currentId===d,zIndex:f.getZIndex(d)}:{},w=o===!1?!1:d&&f?f.currentId===d:c;return S.useEffect(()=>{f&&d&&(c?f.addModal(d,u||yl("modal")):f.removeModal(d))},[c,d,u]),y.jsxs(fk,{ref:r,opened:c,zIndex:f&&d?f.getZIndex(d):u,...p,...v,children:[o&&y.jsx(hk,{visible:w,transitionProps:f&&d?{duration:0}:void 0,...i}),y.jsxs(uk,{__hidden:f&&d&&c?d!==f.currentId:!1,children:[g&&y.jsxs(pk,{children:[n&&y.jsx(mk,{children:n}),a&&y.jsx(dk,{...l})]}),y.jsx(ck,{children:s})]})]})});fs.classes=wc,fs.displayName="@mantine/core/Drawer",fs.Root=fk,fs.Overlay=hk,fs.Content=uk,fs.Body=ck,fs.Header=pk,fs.Title=mk,fs.CloseButton=dk,fs.Stack=Qie;const[Jie,eae]=Di("Grid component was not found in tree"),tj=(e,r)=>e==="content"?"auto":e==="auto"?"0rem":e?`${100/(r/e)}%`:void 0,tae=(e,r,n)=>n||e==="auto"?"100%":e==="content"?"unset":tj(e,r),rae=(e,r)=>{if(e)return e==="auto"||r?"1":"auto"},nae=(e,r)=>e===0?"0":e?`${100/(r/e)}%`:void 0;function kat({span:e,order:r,offset:n,selector:o}){const i=uo(),a=eae(),l=a.breakpoints||i.breakpoints,s=vl(e)===void 0?12:vl(e),c=Vd({"--col-order":vl(r)?.toString(),"--col-flex-grow":rae(s,a.grow),"--col-flex-basis":tj(s,a.columns),"--col-width":s==="content"?"auto":void 0,"--col-max-width":tae(s,a.columns,a.grow),"--col-offset":nae(vl(n),a.columns)}),d=Ro(l).reduce((p,f)=>(p[f]||(p[f]={}),typeof r=="object"&&r[f]!==void 0&&(p[f]["--col-order"]=r[f]?.toString()),typeof e=="object"&&e[f]!==void 0&&(p[f]["--col-flex-grow"]=rae(e[f],a.grow),p[f]["--col-flex-basis"]=tj(e[f],a.columns),p[f]["--col-width"]=e[f]==="content"?"auto":void 0,p[f]["--col-max-width"]=tae(e[f],a.columns,a.grow)),typeof n=="object"&&n[f]!==void 0&&(p[f]["--col-offset"]=nae(n[f],a.columns)),p),{}),u=Bz(Ro(d),l).filter(p=>Ro(d[p.value]).length>0).map(p=>({query:a.type==="container"?`mantine-grid (min-width: ${l[p.value]})`:`(min-width: ${l[p.value]})`,styles:d[p.value]}));return y.jsx(Vm,{styles:c,media:a.type==="container"?void 0:u,container:a.type==="container"?u:void 0,selector:o})}var rj={container:"m_8478a6da",root:"m_410352e9",inner:"m_dee7bd2f",col:"m_96bdd299"};const _at={span:12},nj=We((e,r)=>{const n=ze("GridCol",_at,e),{classNames:o,className:i,style:a,styles:l,vars:s,span:c,order:d,offset:u,...p}=n,f=eae(),g=M0();return y.jsxs(y.Fragment,{children:[y.jsx(kat,{selector:`.${g}`,span:c,order:d,offset:u}),y.jsx(Ae,{ref:r,...f.getStyles("col",{className:no(i,g),style:a,classNames:o,styles:l}),...p})]})});nj.classes=rj,nj.displayName="@mantine/core/GridCol";function oae({gutter:e,selector:r,breakpoints:n,type:o}){const i=uo(),a=n||i.breakpoints,l=Vd({"--grid-gutter":ro(vl(e))}),s=Ro(a).reduce((d,u)=>(d[u]||(d[u]={}),typeof e=="object"&&e[u]!==void 0&&(d[u]["--grid-gutter"]=ro(e[u])),d),{}),c=Bz(Ro(s),a).filter(d=>Ro(s[d.value]).length>0).map(d=>({query:o==="container"?`mantine-grid (min-width: ${a[d.value]})`:`(min-width: ${a[d.value]})`,styles:s[d.value]}));return y.jsx(Vm,{styles:l,media:o==="container"?void 0:c,container:o==="container"?c:void 0,selector:r})}const Sat={gutter:"md",grow:!1,columns:12},Eat=(e,{justify:r,align:n,overflow:o})=>({root:{"--grid-justify":r,"--grid-align":n,"--grid-overflow":o}}),oj=We((e,r)=>{const n=ze("Grid",Sat,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,grow:d,gutter:u,columns:p,align:f,justify:g,children:v,breakpoints:w,type:x,attributes:k,...C}=n,_=dt({name:"Grid",classes:rj,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:k,vars:c,varsResolver:Eat}),$=M0();return x==="container"&&w?y.jsxs(Jie,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(oae,{selector:`.${$}`,...n}),y.jsx("div",{..._("container"),children:y.jsx(Ae,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})})]}):y.jsxs(Jie,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(oae,{selector:`.${$}`,...n}),y.jsx(Ae,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})]})});oj.classes=rj,oj.displayName="@mantine/core/Grid",oj.Col=nj;function iae({color:e,theme:r,defaultShade:n}){const o=Bp({color:e,theme:r});return o.isThemeColor?o.shade===void 0?`var(--mantine-color-${o.color}-${n})`:`var(${o.variable})`:e}var aae={root:"m_bcb3f3c2"};const Cat={color:"yellow"},$at=(e,{color:r})=>({root:{"--mark-bg-dark":iae({color:r,theme:e,defaultShade:5}),"--mark-bg-light":iae({color:r,theme:e,defaultShade:2})}}),ij=We((e,r)=>{const n=ze("Mark",Cat,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,color:d,variant:u,attributes:p,...f}=n,g=dt({name:"Mark",props:n,className:i,style:a,classes:aae,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:$at});return y.jsx(Ae,{component:"mark",ref:r,variant:u,...g("root"),...f})});ij.classes=aae,ij.displayName="@mantine/core/Mark";function lae(e){return e.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&")}function Rat(e,r){if(r==null)return[{chunk:e,highlighted:!1}];const n=Array.isArray(r)?r.map(lae):lae(r);if(!(Array.isArray(n)?n.filter(a=>a.trim().length>0).length>0:n.trim()!==""))return[{chunk:e,highlighted:!1}];const o=typeof n=="string"?n.trim():n.filter(a=>a.trim().length!==0).map(a=>a.trim()).sort((a,l)=>l.length-a.length).join("|"),i=new RegExp(`(${o})`,"gi");return e.split(i).map(a=>({chunk:a,highlighted:i.test(a)})).filter(({chunk:a})=>a)}const sae=Un((e,r)=>{const{unstyled:n,children:o,highlight:i,highlightStyles:a,color:l,...s}=ze("Highlight",null,e),c=Rat(o,i);return y.jsx(L0,{unstyled:n,ref:r,...s,__staticSelector:"Highlight",children:c.map(({chunk:d,highlighted:u},p)=>u?y.jsx(ij,{unstyled:n,color:l,style:a,"data-highlight":d,children:d},p):y.jsx("span",{children:d},p))})});sae.classes=L0.classes,sae.displayName="@mantine/core/Highlight";const[h3t,cae]=Di("HoverCard component was not found in the tree"),dae=S.createContext(!1),zat=dae.Provider,uae=()=>S.useContext(dae);function Tat(e){const{children:r,onMouseEnter:n,onMouseLeave:o,...i}=ze("HoverCardDropdown",null,e),a=cae();if(uae()&&a.getFloatingProps&&a.floating){const c=a.getFloatingProps();return y.jsx(po.Dropdown,{ref:a.floating,...c,onMouseEnter:Tn(n,c.onMouseEnter),onMouseLeave:Tn(o,c.onMouseLeave),...i,children:r})}const l=Tn(n,a.openDropdown),s=Tn(o,a.closeDropdown);return y.jsx(po.Dropdown,{onMouseEnter:l,onMouseLeave:s,...i,children:r})}Tat.displayName="@mantine/core/HoverCardDropdown";const jat={openDelay:0,closeDelay:0};function pae(e){const{openDelay:r,closeDelay:n,children:o}=ze("HoverCardGroup",jat,e);return y.jsx(zat,{value:!0,children:y.jsx(Roe,{delay:{open:r,close:n},children:o})})}pae.displayName="@mantine/core/HoverCardGroup",pae.extend=e=>e;const Aat={refProp:"ref"},Dat=S.forwardRef((e,r)=>{const{children:n,refProp:o,eventPropsWrapperName:i,...a}=ze("HoverCardTarget",Aat,e),l=Wd(n);if(!l)throw new Error("HoverCard.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const s=cae();if(uae()&&s.getReferenceProps&&s.reference){const p=s.getReferenceProps();return y.jsx(po.Target,{refProp:o,ref:r,...a,children:S.cloneElement(l,i?{[i]:{...p,ref:s.reference}}:{...p,ref:s.reference})})}const c=Tn(l.props.onMouseEnter,s.openDropdown),d=Tn(l.props.onMouseLeave,s.closeDropdown),u={onMouseEnter:c,onMouseLeave:d};return y.jsx(po.Target,{refProp:o,ref:r,...a,children:S.cloneElement(l,i?{[i]:u}:u)})});Dat.displayName="@mantine/core/HoverCardTarget";var hae={root:"m_6e45937b",loader:"m_e8eb006c",overlay:"m_df587f17"};const fae={transitionProps:{transition:"fade",duration:0},overlayProps:{backgroundOpacity:.75},zIndex:yl("overlay")},Mat=(e,{zIndex:r})=>({root:{"--lo-z-index":r?.toString()}}),mae=We((e,r)=>{const n=ze("LoadingOverlay",fae,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,transitionProps:d,loaderProps:u,overlayProps:p,visible:f,zIndex:g,attributes:v,...w}=n,x=uo(),k=dt({name:"LoadingOverlay",classes:hae,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:Mat}),C={...fae.overlayProps,...p};return y.jsx(_l,{transition:"fade",...d,mounted:!!f,children:_=>y.jsxs(Ae,{...k("root",{style:_}),ref:r,...w,children:[y.jsx(qp,{...k("loader"),unstyled:s,...u}),y.jsx(Xm,{...C,...k("overlay"),darkHidden:!0,unstyled:s,color:p?.color||x.white}),y.jsx(Xm,{...C,...k("overlay"),lightHidden:!0,unstyled:s,color:p?.color||x.colors.dark[5]})]})})});mae.classes=hae,mae.displayName="@mantine/core/LoadingOverlay";const[f3t,Yd]=Di("Menu component was not found in the tree");var eg={dropdown:"m_dc9b7c9f",label:"m_9bfac126",divider:"m_efdf90cb",item:"m_99ac2aa1",itemLabel:"m_5476e0d3",itemSection:"m_8b75e504",chevron:"m_b85b0bed"};const gae=We((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=ze("MenuDivider",null,e),c=Yd();return y.jsx(Ae,{ref:r,...c.getStyles("divider",{className:o,style:i,styles:a,classNames:n}),...s})});gae.classes=eg,gae.displayName="@mantine/core/MenuDivider";const yae=We((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=ze("MenuDropdown",null,e),f=S.useRef(null),g=Yd(),v=Tn(d,k=>{(k.key==="ArrowUp"||k.key==="ArrowDown")&&(k.preventDefault(),f.current?.querySelectorAll("[data-menu-item]:not(:disabled)")[0]?.focus())}),w=Tn(s,()=>(g.trigger==="hover"||g.trigger==="click-hover")&&g.openDropdown()),x=Tn(c,()=>(g.trigger==="hover"||g.trigger==="click-hover")&&g.closeDropdown());return y.jsxs(po.Dropdown,{...p,onMouseEnter:w,onMouseLeave:x,role:"menu","aria-orientation":"vertical",ref:on(r,f),...g.getStyles("dropdown",{className:o,style:i,styles:a,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,onKeyDown:v,children:[g.withInitialFocusPlaceholder&&y.jsx("div",{tabIndex:-1,"data-autofocus":!0,"data-mantine-stop-propagation":!0,style:{outline:0}}),u]})});yae.classes=eg,yae.displayName="@mantine/core/MenuDropdown";const[Nat,gk]=Bm(),vae=Un((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,color:s,closeMenuOnClick:c,leftSection:d,rightSection:u,children:p,disabled:f,"data-disabled":g,...v}=ze("MenuItem",null,e),w=Yd(),x=gk(),k=uo(),{dir:C}=gc(),_=S.useRef(null),$=v,R=Tn($.onClick,()=>{g||(typeof c=="boolean"?c&&w.closeDropdownImmediately():w.closeOnItemClick&&w.closeDropdownImmediately())}),T=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,A=s?Bp({color:s,theme:k}):null,z=Tn($.onKeyDown,j=>{j.key==="ArrowLeft"&&x&&(x.close(),x.focusParentItem())});return y.jsxs(hs,{onMouseDown:j=>j.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style:i,styles:a,classNames:n}),ref:on(_,r),role:"menuitem",disabled:f,"data-menu-item":!0,"data-disabled":f||g||void 0,"data-mantine-stop-propagation":!0,onClick:R,onKeyDown:Nz({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:z}),__vars:{"--menu-item-color":A?.isThemeColor&&A?.shade===void 0?`var(--mantine-color-${A.color}-6)`:T?.color,"--menu-item-hover":T?.hover},children:[d&&y.jsx("div",{...w.getStyles("itemSection",{styles:a,classNames:n}),"data-position":"left",children:d}),p&&y.jsx("div",{...w.getStyles("itemLabel",{styles:a,classNames:n}),children:p}),u&&y.jsx("div",{...w.getStyles("itemSection",{styles:a,classNames:n}),"data-position":"right",children:u})]})});vae.classes=eg,vae.displayName="@mantine/core/MenuItem";const bae=We((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,...s}=ze("MenuLabel",null,e),c=Yd();return y.jsx(Ae,{ref:r,...c.getStyles("label",{className:o,style:i,styles:a,classNames:n}),...s})});bae.classes=eg,bae.displayName="@mantine/core/MenuLabel";const aj=We((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=ze("MenuSubDropdown",null,e),f=S.useRef(null),g=Yd(),v=gk(),w=Tn(s,v?.open),x=Tn(c,v?.close);return y.jsx(po.Dropdown,{...p,onMouseEnter:w,onMouseLeave:x,role:"menu","aria-orientation":"vertical",ref:on(r,f),...g.getStyles("dropdown",{className:o,style:i,styles:a,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,children:u})});aj.classes=eg,aj.displayName="@mantine/core/MenuSubDropdown";const lj=Un((e,r)=>{const{classNames:n,className:o,style:i,styles:a,vars:l,color:s,leftSection:c,rightSection:d,children:u,disabled:p,"data-disabled":f,closeMenuOnClick:g,...v}=ze("MenuSubItem",null,e),w=Yd(),x=gk(),k=uo(),{dir:C}=gc(),_=S.useRef(null),$=v,R=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,T=s?Bp({color:s,theme:k}):null,A=Tn($.onKeyDown,P=>{P.key==="ArrowRight"&&(x?.open(),x?.focusFirstItem()),P.key==="ArrowLeft"&&x?.parentContext&&(x.parentContext.close(),x.parentContext.focusParentItem())}),z=Tn($.onClick,()=>{!f&&g&&w.closeDropdownImmediately()}),j=Tn($.onMouseEnter,x?.open),I=Tn($.onMouseLeave,x?.close);return y.jsxs(hs,{onMouseDown:P=>P.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style:i,styles:a,classNames:n}),ref:on(_,r),role:"menuitem",disabled:p,"data-menu-item":!0,"data-sub-menu-item":!0,"data-disabled":p||f||void 0,"data-mantine-stop-propagation":!0,onMouseEnter:j,onMouseLeave:I,onClick:z,onKeyDown:Nz({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:A}),__vars:{"--menu-item-color":T?.isThemeColor&&T?.shade===void 0?`var(--mantine-color-${T.color}-6)`:R?.color,"--menu-item-hover":R?.hover},children:[c&&y.jsx("div",{...w.getStyles("itemSection",{styles:a,classNames:n}),"data-position":"left",children:c}),u&&y.jsx("div",{...w.getStyles("itemLabel",{styles:a,classNames:n}),children:u}),y.jsx("div",{...w.getStyles("itemSection",{styles:a,classNames:n}),"data-position":"right",children:d||y.jsx(LT,{...w.getStyles("chevron"),size:14})})]})});lj.classes=eg,lj.displayName="@mantine/core/MenuSubItem";function xae({children:e,refProp:r}){if(!E4(e))throw new Error("Menu.Sub.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");return Yd(),y.jsx(po.Target,{refProp:r,popupType:"menu",children:e})}xae.displayName="@mantine/core/MenuSubTarget";const Pat={offset:0,position:"right-start",transitionProps:{duration:0},openDelay:0,middlewares:{shift:{crossAxis:!0}}};function V0(e){const{children:r,closeDelay:n,openDelay:o,...i}=ze("MenuSub",Pat,e),a=bl(),[l,{open:s,close:c}]=ytt(!1),d=gk(),{openDropdown:u,closeDropdown:p}=Cit({open:s,close:c,closeDelay:n,openDelay:o});return y.jsx(Nat,{value:{opened:l,close:p,open:u,focusFirstItem:()=>window.setTimeout(()=>{document.getElementById(`${a}-dropdown`)?.querySelectorAll("[data-menu-item]:not([data-disabled])")[0]?.focus()},16),focusParentItem:()=>window.setTimeout(()=>{document.getElementById(`${a}-target`)?.focus()},16),parentContext:d},children:y.jsx(po,{opened:l,withinPortal:!1,withArrow:!1,id:a,...i,children:r})})}V0.extend=e=>e,V0.displayName="@mantine/core/MenuSub",V0.Target=xae,V0.Dropdown=aj,V0.Item=lj;const Bat={refProp:"ref"},Iat=S.forwardRef((e,r)=>{const{children:n,refProp:o,...i}=ze("MenuTarget",Bat,e),a=Wd(n);if(!a)throw new Error("Menu.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported");const l=Yd(),s=a.props,c=Tn(s.onClick,()=>{l.trigger==="click"?l.toggleDropdown():l.trigger==="click-hover"&&(l.setOpenedViaClick(!0),l.opened||l.openDropdown())}),d=Tn(s.onMouseEnter,()=>(l.trigger==="hover"||l.trigger==="click-hover")&&l.openDropdown()),u=Tn(s.onMouseLeave,()=>{(l.trigger==="hover"||l.trigger==="click-hover"&&!l.openedViaClick)&&l.closeDropdown()});return y.jsx(po.Target,{refProp:o,popupType:"menu",ref:r,...i,children:S.cloneElement(a,{onClick:c,onMouseEnter:d,onMouseLeave:u,"data-expanded":l.opened?!0:void 0})})});Iat.displayName="@mantine/core/MenuTarget";const[Oat,sj]=Di("Modal component was not found in tree");var q0={root:"m_9df02822",content:"m_54c44539",inner:"m_1f958f16",header:"m_d0e2b9cd"};const wae=We((e,r)=>{const n=ze("ModalBody",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,...c}=n,d=sj();return y.jsx(MT,{ref:r,...d.getStyles("body",{classNames:o,style:a,styles:l,className:i}),...c})});wae.classes=q0,wae.displayName="@mantine/core/ModalBody";const kae=We((e,r)=>{const n=ze("ModalContent",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,children:c,__hidden:d,...u}=n,p=sj(),f=p.scrollAreaComponent||fie;return y.jsx(NT,{...p.getStyles("content",{className:i,style:a,styles:l,classNames:o}),innerProps:p.getStyles("inner",{className:i,style:a,styles:l,classNames:o}),"data-full-screen":p.fullScreen||void 0,"data-modal-content":!0,"data-hidden":d||void 0,ref:r,...u,children:y.jsx(f,{style:{maxHeight:p.fullScreen?"100dvh":`calc(100dvh - (${Pe(p.yOffset)} * 2))`},children:c})})});kae.classes=q0,kae.displayName="@mantine/core/ModalContent";const _ae=We((e,r)=>{const n=ze("ModalOverlay",null,e),{classNames:o,className:i,style:a,styles:l,vars:s,...c}=n,d=sj();return y.jsx(PT,{ref:r,...d.getStyles("overlay",{classNames:o,style:a,styles:l,className:i}),...c})});_ae.classes=q0,_ae.displayName="@mantine/core/ModalOverlay";const Lat={__staticSelector:"Modal",closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:yl("modal"),transitionProps:{duration:200,transition:"fade-down"},yOffset:"5dvh"},Fat=(e,{radius:r,size:n,yOffset:o,xOffset:i})=>({root:{"--modal-radius":r===void 0?void 0:hn(r),"--modal-size":Qt(n,"modal-size"),"--modal-y-offset":Pe(o),"--modal-x-offset":Pe(i)}}),Sae=We((e,r)=>{const n=ze("ModalRoot",Lat,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,yOffset:d,scrollAreaComponent:u,radius:p,fullScreen:f,centered:g,xOffset:v,__staticSelector:w,attributes:x,...k}=n,C=dt({name:w,classes:q0,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:x,vars:c,varsResolver:Fat});return y.jsx(Oat,{value:{yOffset:d,scrollAreaComponent:u,getStyles:C,fullScreen:f},children:y.jsx(DT,{ref:r,...C("root"),"data-full-screen":f||void 0,"data-centered":g||void 0,"data-offset-scrollbars":u===Fp.Autosize||void 0,unstyled:s,...k})})});Sae.classes=q0,Sae.displayName="@mantine/core/ModalRoot";const[m3t,Eae]=Bm(),[Vat,qat]=Bm();var yk={root:"m_7cda1cd6","root--default":"m_44da308b","root--contrast":"m_e3a01f8",label:"m_1e0e6180",remove:"m_ae386778",group:"m_1dcfd90b"};const Hat=(e,{gap:r},{size:n})=>({group:{"--pg-gap":r!==void 0?Qt(r):Qt(n,"pg-gap")}}),cj=We((e,r)=>{const n=ze("PillGroup",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,size:d,disabled:u,attributes:p,...f}=n,g=Eae()?.size||d||void 0,v=dt({name:"PillGroup",classes:yk,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:Hat,stylesCtx:{size:g},rootSelector:"group"});return y.jsx(Vat,{value:{size:g,disabled:u},children:y.jsx(Ae,{ref:r,size:g,...v("group"),...f})})});cj.classes=yk,cj.displayName="@mantine/core/PillGroup";const Uat={variant:"default"},Wat=(e,{radius:r},{size:n})=>({root:{"--pill-fz":Qt(n,"pill-fz"),"--pill-height":Qt(n,"pill-height"),"--pill-radius":r===void 0?void 0:hn(r)}}),dj=We((e,r)=>{const n=ze("Pill",Uat,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,variant:d,children:u,withRemoveButton:p,onRemove:f,removeButtonProps:g,radius:v,size:w,disabled:x,mod:k,attributes:C,..._}=n,$=qat(),R=Eae(),T=w||$?.size||void 0,A=R?.variant==="filled"?"contrast":d||"default",z=dt({name:"Pill",classes:yk,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:C,vars:c,varsResolver:Wat,stylesCtx:{size:T}});return y.jsxs(Ae,{component:"span",ref:r,variant:A,size:T,...z("root",{variant:A}),mod:[{"with-remove":p&&!x,disabled:x||$?.disabled},k],..._,children:[y.jsx("span",{...z("label"),children:u}),p&&y.jsx(Hp,{variant:"transparent",radius:v,tabIndex:-1,"aria-hidden":!0,unstyled:s,...g,...z("remove",{className:g?.className,style:g?.style}),onMouseDown:j=>{j.preventDefault(),j.stopPropagation(),g?.onMouseDown?.(j)},onClick:j=>{j.stopPropagation(),f?.(),g?.onClick?.(j)}})]})});dj.classes=yk,dj.displayName="@mantine/core/Pill",dj.Group=cj;var Cae={root:"m_f0824112",description:"m_57492dcc",section:"m_690090b5",label:"m_1f6ac4c4",body:"m_f07af9d2",children:"m_e17b862f",chevron:"m_1fd8a00b"};const Gat=(e,{variant:r,color:n,childrenOffset:o,autoContrast:i})=>{const a=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:r||"light",autoContrast:i});return{root:{"--nl-bg":n||r?a.background:void 0,"--nl-hover":n||r?a.hover:void 0,"--nl-color":n||r?a.color:void 0},children:{"--nl-offset":ro(o)}}},$ae=Un((e,r)=>{const n=ze("NavLink",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,opened:d,defaultOpened:u,onChange:p,children:f,active:g,disabled:v,leftSection:w,rightSection:x,label:k,description:C,disableRightSectionRotation:_,noWrap:$,childrenOffset:R,autoContrast:T,mod:A,attributes:z,onClick:j,onKeyDown:I,...P}=n,L=dt({name:"NavLink",props:n,classes:Cae,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:z,vars:c,varsResolver:Gat}),[H,M]=qd({value:d,defaultValue:u,finalValue:!1,onChange:p}),V=!!f,B=F=>{j?.(F),V&&(F.preventDefault(),M(!H))};return y.jsxs(y.Fragment,{children:[y.jsxs(hs,{...L("root"),component:"a",ref:r,onClick:B,onKeyDown:F=>{I?.(F),F.nativeEvent.code==="Space"&&V&&(F.preventDefault(),M(!H))},unstyled:s,mod:[{disabled:v,active:g,expanded:H},A],...P,children:[w&&y.jsx(Ae,{component:"span",...L("section"),mod:{position:"left"},children:w}),y.jsxs(Ae,{...L("body"),mod:{"no-wrap":$},children:[y.jsx(Ae,{component:"span",...L("label"),children:k}),y.jsx(Ae,{component:"span",mod:{active:g},...L("description"),children:C})]}),(V||x!==void 0)&&y.jsx(Ae,{...L("section"),component:"span",mod:{rotate:H&&!_,position:"right"},children:V?x!==void 0?x:y.jsx(LT,{...L("chevron")}):x})]}),V&&y.jsx(Gne,{in:H,...L("collapse"),children:y.jsx("div",{...L("children"),children:f})})]})});$ae.classes=Cae,$ae.displayName="@mantine/core/NavLink";var Rae={root:"m_a513464",icon:"m_a4ceffb",loader:"m_b0920b15",body:"m_a49ed24",title:"m_3feedf16",description:"m_3d733a3a",closeButton:"m_919a4d88"};const Yat={withCloseButton:!0},Xat=(e,{radius:r,color:n})=>({root:{"--notification-radius":r===void 0?void 0:hn(r),"--notification-color":n?Uo(n,e):void 0}}),zae=We((e,r)=>{const n=ze("Notification",Yat,e),{className:o,color:i,radius:a,loading:l,withCloseButton:s,withBorder:c,title:d,icon:u,children:p,onClose:f,closeButtonProps:g,classNames:v,style:w,styles:x,unstyled:k,variant:C,vars:_,mod:$,loaderProps:R,role:T,attributes:A,...z}=n,j=dt({name:"Notification",classes:Rae,props:n,className:o,style:w,classNames:v,styles:x,unstyled:k,attributes:A,vars:_,varsResolver:Xat});return y.jsxs(Ae,{...j("root"),mod:[{"data-with-icon":!!u||l,"data-with-border":c},$],ref:r,variant:C,role:T||"alert",...z,children:[u&&!l&&y.jsx("div",{...j("icon"),children:u}),l&&y.jsx(qp,{size:28,color:i,...R,...j("loader")}),y.jsxs("div",{...j("body"),children:[d&&y.jsx("div",{...j("title"),children:d}),y.jsx(Ae,{...j("description"),mod:{"data-with-title":!!d},children:p})]}),s&&y.jsx(Hp,{iconSize:16,color:"gray",...g,unstyled:k,onClick:f,...j("closeButton")})]})});zae.classes=Rae,zae.displayName="@mantine/core/Notification";const Kat={duration:100,transition:"fade"};function Tae(e,r){return{...Kat,...r,...e}}function Zat({offset:e,position:r,defaultOpened:n}){const[o,i]=S.useState(n),a=S.useRef(null),{x:l,y:s,elements:c,refs:d,update:u,placement:p}=xT({placement:r,middleware:[fT({crossAxis:!0,padding:5,rootBoundary:"document"})]}),f=p.includes("right")?e:r.includes("left")?e*-1:0,g=p.includes("bottom")?e:r.includes("top")?e*-1:0,v=S.useCallback(({clientX:w,clientY:x})=>{d.setPositionReference({getBoundingClientRect(){return{width:0,height:0,x:w,y:x,left:w+f,top:x+g,right:w,bottom:x}}})},[c.reference]);return S.useEffect(()=>{if(d.floating.current){const w=a.current;w.addEventListener("mousemove",v);const x=bc(d.floating.current);return x.forEach(k=>{k.addEventListener("scroll",u)}),()=>{w.removeEventListener("mousemove",v),x.forEach(k=>{k.removeEventListener("scroll",u)})}}},[c.reference,d.floating.current,u,v,o]),{handleMouseMove:v,x:l,y:s,opened:o,setOpened:i,boundaryRef:a,floating:d.setFloating}}var vk={tooltip:"m_1b3c8819",arrow:"m_f898399f"};const Qat={refProp:"ref",withinPortal:!0,offset:10,position:"right",zIndex:yl("popover")},Jat=(e,{radius:r,color:n})=>({tooltip:{"--tooltip-radius":r===void 0?void 0:hn(r),"--tooltip-bg":n?Uo(n,e):void 0,"--tooltip-color":n?"var(--mantine-color-white)":void 0}}),uj=We((e,r)=>{const n=ze("TooltipFloating",Qat,e),{children:o,refProp:i,withinPortal:a,style:l,className:s,classNames:c,styles:d,unstyled:u,radius:p,color:f,label:g,offset:v,position:w,multiline:x,zIndex:k,disabled:C,defaultOpened:_,variant:$,vars:R,portalProps:T,attributes:A,...z}=n,j=uo(),I=dt({name:"TooltipFloating",props:n,classes:vk,className:s,style:l,classNames:c,styles:d,unstyled:u,attributes:A,rootSelector:"tooltip",vars:R,varsResolver:Jat}),{handleMouseMove:P,x:L,y:H,opened:M,boundaryRef:V,floating:B,setOpened:F}=Zat({offset:v,position:w,defaultOpened:_}),q=Wd(o);if(!q)throw new Error("[@mantine/core] Tooltip.Floating component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported");const G=on(V,R4(q),r),U=q.props,Y=O=>{U.onMouseEnter?.(O),P(O),F(!0)},K=O=>{U.onMouseLeave?.(O),F(!1)};return y.jsxs(y.Fragment,{children:[y.jsx(Vp,{...T,withinPortal:a,children:y.jsx(Ae,{...z,...I("tooltip",{style:{...Kz(l,j),zIndex:k,display:!C&&M?"block":"none",top:(H&&Math.round(H))??"",left:(L&&Math.round(L))??""}}),variant:$,ref:B,mod:{multiline:x},children:g})}),S.cloneElement(q,{...U,[i]:G,onMouseEnter:Y,onMouseLeave:K})]})});uj.classes=vk,uj.displayName="@mantine/core/TooltipFloating";const jae=S.createContext(!1),elt=jae.Provider,tlt=()=>S.useContext(jae),rlt={openDelay:0,closeDelay:0};function pj(e){const{openDelay:r,closeDelay:n,children:o}=ze("TooltipGroup",rlt,e);return y.jsx(elt,{value:!0,children:y.jsx(Roe,{delay:{open:r,close:n},children:o})})}pj.displayName="@mantine/core/TooltipGroup",pj.extend=e=>e;function nlt(e){if(e===void 0)return{shift:!0,flip:!0};const r={...e};return e.shift===void 0&&(r.shift=!0),e.flip===void 0&&(r.flip=!0),r}function olt(e){const r=nlt(e.middlewares),n=[yoe(e.offset)];return r.shift&&n.push(fT(typeof r.shift=="boolean"?{padding:8}:{padding:8,...r.shift})),r.flip&&n.push(typeof r.flip=="boolean"?G4():G4(r.flip)),n.push(boe({element:e.arrowRef,padding:e.arrowOffset})),r.inline?n.push(typeof r.inline=="boolean"?I0():I0(r.inline)):e.inline&&n.push(I0()),n}function ilt(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,i=tlt(),a=bl(),l=S.useCallback($=>{n($),$&&x(a)},[a]),{x:s,y:c,context:d,refs:u,placement:p,middlewareData:{arrow:{x:f,y:g}={}}}=xT({strategy:e.strategy,placement:e.position,open:o,onOpenChange:l,middleware:olt(e),whileElementsMounted:pT}),{delay:v,currentId:w,setCurrentId:x}=sot(d,{id:a}),{getReferenceProps:k,getFloatingProps:C}=fot([aot(d,{enabled:e.events?.hover,delay:i?v:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),hot(d,{enabled:e.events?.focus,visibleOnly:!0}),got(d,{role:"tooltip"}),uot(d,{enabled:typeof e.opened>"u"})]);Om(()=>{e.onPositionChange?.(p)},[p]);const _=o&&w&&w!==a;return{x:s,y:c,arrowX:f,arrowY:g,reference:u.setReference,floating:u.setFloating,getFloatingProps:C,getReferenceProps:k,isGroupPhase:_,opened:o,placement:p}}const Aae={position:"top",refProp:"ref",withinPortal:!0,arrowSize:4,arrowOffset:5,arrowRadius:0,arrowPosition:"side",offset:5,transitionProps:{duration:100,transition:"fade"},events:{hover:!0,focus:!1,touch:!1},zIndex:yl("popover"),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},alt=(e,{radius:r,color:n,variant:o,autoContrast:i})=>{const a=e.variantColorResolver({theme:e,color:n||e.primaryColor,autoContrast:i,variant:o||"filled"});return{tooltip:{"--tooltip-radius":r===void 0?void 0:hn(r),"--tooltip-bg":n?a.background:void 0,"--tooltip-color":n?a.color:void 0}}},bk=We((e,r)=>{const n=ze("Tooltip",Aae,e),{children:o,position:i,refProp:a,label:l,openDelay:s,closeDelay:c,onPositionChange:d,opened:u,defaultOpened:p,withinPortal:f,radius:g,color:v,classNames:w,styles:x,unstyled:k,style:C,className:_,withArrow:$,arrowSize:R,arrowOffset:T,arrowRadius:A,arrowPosition:z,offset:j,transitionProps:I,multiline:P,events:L,zIndex:H,disabled:M,positionDependencies:V,onClick:B,onMouseEnter:F,onMouseLeave:q,inline:G,variant:U,keepMounted:Y,vars:K,portalProps:O,mod:W,floatingStrategy:Z,middlewares:Q,autoContrast:ie,attributes:te,target:re,...ue}=ze("Tooltip",Aae,n),{dir:_e}=gc(),ce=S.useRef(null),pe=ilt({position:Yoe(_e,i),closeDelay:c,openDelay:s,onPositionChange:d,opened:u,defaultOpened:p,events:L,arrowRef:ce,arrowOffset:T,offset:typeof j=="number"?j+($?R/2:0):j,positionDependencies:[...V,re??o],inline:G,strategy:Z,middlewares:Q});S.useEffect(()=>{const Le=re instanceof HTMLElement?re:typeof re=="string"?document.querySelector(re):re?.current||null;Le&&pe.reference(Le)},[re,pe]);const xe=dt({name:"Tooltip",props:n,classes:vk,className:_,style:C,classNames:w,styles:x,unstyled:k,attributes:te,rootSelector:"tooltip",vars:K,varsResolver:alt}),je=Wd(o);if(!re&&!je)return null;if(re){const Le=Tae(I,{duration:100,transition:"fade"});return y.jsx(y.Fragment,{children:y.jsx(Vp,{...O,withinPortal:f,children:y.jsx(_l,{...Le,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:Le.duration,children:St=>y.jsxs(Ae,{...ue,"data-fixed":Z==="fixed"||void 0,variant:U,mod:[{multiline:P},W],...pe.getFloatingProps({ref:pe.floating,className:xe("tooltip").className,style:{...xe("tooltip").style,...St,zIndex:H,top:pe.y??0,left:pe.x??0}}),children:[l,y.jsx(Q4,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:R,arrowOffset:T,arrowRadius:A,arrowPosition:z,...xe("arrow")})]})})})})}const Be=je.props,Je=on(pe.reference,R4(je),r),st=Tae(I,{duration:100,transition:"fade"});return y.jsxs(y.Fragment,{children:[y.jsx(Vp,{...O,withinPortal:f,children:y.jsx(_l,{...st,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:st.duration,children:Le=>y.jsxs(Ae,{...ue,"data-fixed":Z==="fixed"||void 0,variant:U,mod:[{multiline:P},W],...pe.getFloatingProps({ref:pe.floating,className:xe("tooltip").className,style:{...xe("tooltip").style,...Le,zIndex:H,top:pe.y??0,left:pe.x??0}}),children:[l,y.jsx(Q4,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:R,arrowOffset:T,arrowRadius:A,arrowPosition:z,...xe("arrow")})]})})}),S.cloneElement(je,pe.getReferenceProps({onClick:B,onMouseEnter:F,onMouseLeave:q,onMouseMove:n.onMouseMove,onPointerDown:n.onPointerDown,onPointerEnter:n.onPointerEnter,...Be,className:no(_,Be.className),[a]:Je}))]})});bk.classes=vk,bk.displayName="@mantine/core/Tooltip",bk.Floating=uj,bk.Group=pj;var Dae={root:"m_cf365364",indicator:"m_9e182ccd",label:"m_1738fcb2",input:"m_1714d588",control:"m_69686b9b",innerLabel:"m_78882f40"};const llt={withItemsBorders:!0},slt=(e,{radius:r,color:n,transitionDuration:o,size:i,transitionTimingFunction:a})=>({root:{"--sc-radius":r===void 0?void 0:hn(r),"--sc-color":n?Uo(n,e):void 0,"--sc-shadow":n?void 0:"var(--mantine-shadow-xs)","--sc-transition-duration":o===void 0?void 0:`${o}ms`,"--sc-transition-timing-function":a,"--sc-padding":Qt(i,"sc-padding"),"--sc-font-size":zo(i)}}),Mae=We((e,r)=>{const n=ze("SegmentedControl",llt,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,data:d,value:u,defaultValue:p,onChange:f,size:g,name:v,disabled:w,readOnly:x,fullWidth:k,orientation:C,radius:_,color:$,transitionDuration:R,transitionTimingFunction:T,variant:A,autoContrast:z,withItemsBorders:j,mod:I,attributes:P,...L}=n,H=dt({name:"SegmentedControl",props:n,classes:Dae,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:slt}),M=uo(),V=d.map(re=>typeof re=="string"?{label:re,value:re}:re),B=wtt(),[F,q]=S.useState(Iz()),[G,U]=S.useState(null),[Y,K]=S.useState({}),O=(re,ue)=>{Y[ue]=re,K(Y)},[W,Z]=qd({value:u,defaultValue:p,finalValue:Array.isArray(d)?V.find(re=>!re.disabled)?.value??d[0]?.value??null:null,onChange:f}),Q=bl(v),ie=V.map(re=>S.createElement(Ae,{...H("control"),mod:{active:W===re.value,orientation:C},key:re.value},S.createElement("input",{...H("input"),disabled:w||re.disabled,type:"radio",name:Q,value:re.value,id:`${Q}-${re.value}`,checked:W===re.value,onChange:()=>!x&&Z(re.value),"data-focus-ring":M.focusRing,key:`${re.value}-input`}),S.createElement(Ae,{component:"label",...H("label"),mod:{active:W===re.value&&!(w||re.disabled),disabled:w||re.disabled,"read-only":x},htmlFor:`${Q}-${re.value}`,ref:ue=>O(ue,re.value),__vars:{"--sc-label-color":$!==void 0?qz({color:$,theme:M,autoContrast:z}):void 0},key:`${re.value}-label`},y.jsx("span",{...H("innerLabel"),children:re.label})))),te=on(r,re=>U(re));return gtt(()=>{q(Iz())},[d.length]),d.length===0?null:y.jsxs(Ae,{...H("root"),variant:A,size:g,ref:te,mod:[{"full-width":k,orientation:C,initialized:B,"with-items-borders":j},I],...L,role:"radiogroup","data-disabled":w,children:[typeof W=="string"&&y.jsx(OT,{target:Y[W],parent:G,component:"span",transitionDuration:"var(--sc-transition-duration)",...H("indicator")},F),ie]})});Mae.classes=Dae,Mae.displayName="@mantine/core/SegmentedControl";const clt={withCheckIcon:!0,allowDeselect:!0,checkIconPosition:"left"},Nae=We((e,r)=>{const n=ze("Select",clt,e),{classNames:o,styles:i,unstyled:a,vars:l,dropdownOpened:s,defaultDropdownOpened:c,onDropdownClose:d,onDropdownOpen:u,onFocus:p,onBlur:f,onClick:g,onChange:v,data:w,value:x,defaultValue:k,selectFirstOptionOnChange:C,onOptionSubmit:_,comboboxProps:$,readOnly:R,disabled:T,filter:A,limit:z,withScrollArea:j,maxDropdownHeight:I,size:P,searchable:L,rightSection:H,checkIconPosition:M,withCheckIcon:V,withAlignedLabels:B,nothingFoundMessage:F,name:q,form:G,searchValue:U,defaultSearchValue:Y,onSearchChange:K,allowDeselect:O,error:W,rightSectionPointerEvents:Z,id:Q,clearable:ie,clearButtonProps:te,hiddenInputProps:re,renderOption:ue,onClear:_e,autoComplete:ce,scrollAreaProps:pe,__defaultRightSection:xe,__clearSection:je,__clearable:Be,chevronColor:Je,autoSelectOnBlur:st,attributes:Le,...St}=n,Ve=S.useMemo(()=>Ait(w),[w]),qe=S.useRef({}),Xe=S.useMemo(()=>Cie(Ve),[Ve]),It=bl(Q),[Et,be,ke]=qd({value:x,defaultValue:k,finalValue:null,onChange:v}),Ye=typeof Et=="string"?Et in Xe?Xe[Et]:qe.current[Et]:void 0,yt=btt(Ye),[xt,Tr,er]=qd({value:U,defaultValue:Y,finalValue:Ye?Ye.label:"",onChange:K}),qt=Aie({opened:s,defaultOpened:c,onDropdownOpen:()=>{u?.(),qt.updateSelectedOptionIndex("active",{scrollIntoView:!0})},onDropdownClose:()=>{d?.(),setTimeout(qt.resetSelectedOption,0)}}),Ht=fn=>{Tr(fn),qt.resetSelectedOption()},{resolvedClassNames:Kr,resolvedStyles:Gt}=Hz({props:n,styles:i,classNames:o});S.useEffect(()=>{C&&qt.selectFirstOption()},[C,xt]),S.useEffect(()=>{x===null&&Ht(""),typeof x=="string"&&Ye&&(yt?.value!==Ye.value||yt?.label!==Ye.label)&&Ht(Ye.label)},[x,Ye]),S.useEffect(()=>{!ke&&!er&&Ht(typeof Et=="string"?Et in Xe?Xe[Et]?.label:qe.current[Et]?.label||"":"")},[Xe,Et]),S.useEffect(()=>{Et&&Et in Xe&&(qe.current[Et]=Xe[Et])},[Xe,Et]);const ln=y.jsx(xr.ClearButton,{...te,onClear:()=>{be(null,null),Ht(""),_e?.()}}),Wn=ie&&!!Et&&!T&&!R;return y.jsxs(y.Fragment,{children:[y.jsxs(xr,{store:qt,__staticSelector:"Select",classNames:Kr,styles:Gt,unstyled:a,readOnly:R,size:P,attributes:Le,keepMounted:st,onOptionSubmit:fn=>{_?.(fn);const oo=O&&Xe[fn].value===Et?null:Xe[fn],Yo=oo?oo.value:null;Yo!==Et&&be(Yo,oo),!ke&&Ht(typeof Yo=="string"&&oo?.label||""),qt.closeDropdown()},...$,children:[y.jsx(xr.Target,{targetType:L?"input":"button",autoComplete:ce,children:y.jsx(ak,{id:It,ref:r,__defaultRightSection:y.jsx(xr.Chevron,{size:P,error:W,unstyled:a,color:Je}),__clearSection:ln,__clearable:Wn,rightSection:H,rightSectionPointerEvents:Z||"none",...St,size:P,__staticSelector:"Select",disabled:T,readOnly:R||!L,value:xt,onChange:fn=>{Ht(fn.currentTarget.value),qt.openDropdown(),C&&qt.selectFirstOption()},onFocus:fn=>{L&&qt.openDropdown(),p?.(fn)},onBlur:fn=>{st&&qt.clickSelectedOption(),L&&qt.closeDropdown();const oo=typeof Et=="string"&&(Et in Xe?Xe[Et]:qe.current[Et]);Ht(oo&&oo.label||""),f?.(fn)},onClick:fn=>{L?qt.openDropdown():qt.toggleDropdown(),g?.(fn)},classNames:Kr,styles:Gt,unstyled:a,pointer:!L,error:W,attributes:Le})}),y.jsx(Xit,{data:Ve,hidden:R||T,filter:A,search:xt,limit:z,hiddenWhenEmpty:!F,withScrollArea:j,maxDropdownHeight:I,filterOptions:!!L&&Ye?.label!==xt,value:Et,checkIconPosition:M,withCheckIcon:V,withAlignedLabels:B,nothingFoundMessage:F,unstyled:a,labelId:St.label?`${It}-label`:void 0,"aria-label":St.label?void 0:St["aria-label"],renderOption:ue,scrollAreaProps:pe})]}),y.jsx(xr.HiddenInput,{value:Et,name:q,form:G,disabled:T,...re})]})});Nae.classes={...ak.classes,...xr.classes},Nae.displayName="@mantine/core/Select";function dlt({spacing:e,verticalSpacing:r,cols:n,selector:o}){const i=uo(),a=r===void 0?e:r,l=Vd({"--sg-spacing-x":ro(vl(e)),"--sg-spacing-y":ro(vl(a)),"--sg-cols":vl(n)?.toString()}),s=Ro(i.breakpoints).reduce((d,u)=>(d[u]||(d[u]={}),typeof e=="object"&&e[u]!==void 0&&(d[u]["--sg-spacing-x"]=ro(e[u])),typeof a=="object"&&a[u]!==void 0&&(d[u]["--sg-spacing-y"]=ro(a[u])),typeof n=="object"&&n[u]!==void 0&&(d[u]["--sg-cols"]=n[u]),d),{}),c=Bz(Ro(s),i.breakpoints).filter(d=>Ro(s[d.value]).length>0).map(d=>({query:`(min-width: ${i.breakpoints[d.value]})`,styles:s[d.value]}));return y.jsx(Vm,{styles:l,media:c,selector:o})}function hj(e){return typeof e=="object"&&e!==null?Ro(e):[]}function ult(e){return e.sort((r,n)=>S4(r)-S4(n))}function plt({spacing:e,verticalSpacing:r,cols:n}){const o=Array.from(new Set([...hj(e),...hj(r),...hj(n)]));return ult(o)}function hlt({spacing:e,verticalSpacing:r,cols:n,selector:o}){const i=r===void 0?e:r,a=Vd({"--sg-spacing-x":ro(vl(e)),"--sg-spacing-y":ro(vl(i)),"--sg-cols":vl(n)?.toString()}),l=plt({spacing:e,verticalSpacing:r,cols:n}),s=l.reduce((d,u)=>(d[u]||(d[u]={}),typeof e=="object"&&e[u]!==void 0&&(d[u]["--sg-spacing-x"]=ro(e[u])),typeof i=="object"&&i[u]!==void 0&&(d[u]["--sg-spacing-y"]=ro(i[u])),typeof n=="object"&&n[u]!==void 0&&(d[u]["--sg-cols"]=n[u]),d),{}),c=l.map(d=>({query:`simple-grid (min-width: ${d})`,styles:s[d]}));return y.jsx(Vm,{styles:a,container:c,selector:o})}var Pae={container:"m_925c2d2c",root:"m_2415a157"};const flt={cols:1,spacing:"md",type:"media"},Bae=We((e,r)=>{const n=ze("SimpleGrid",flt,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,cols:d,verticalSpacing:u,spacing:p,type:f,attributes:g,...v}=n,w=dt({name:"SimpleGrid",classes:Pae,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:g,vars:c}),x=M0();return f==="container"?y.jsxs(y.Fragment,{children:[y.jsx(hlt,{...n,selector:`.${x}`}),y.jsx("div",{...w("container"),children:y.jsx(Ae,{ref:r,...w("root",{className:x}),...v})})]}):y.jsxs(y.Fragment,{children:[y.jsx(dlt,{...n,selector:`.${x}`}),y.jsx(Ae,{ref:r,...w("root",{className:x}),...v})]})});Bae.classes=Pae,Bae.displayName="@mantine/core/SimpleGrid";const[mlt,xk]=Di("SliderProvider was not found in tree"),Iae=S.forwardRef(({size:e,disabled:r,variant:n,color:o,thumbSize:i,radius:a,...l},s)=>{const{getStyles:c}=xk();return y.jsx(Ae,{tabIndex:-1,variant:n,size:e,ref:s,...c("root"),...l})});Iae.displayName="@mantine/core/SliderRoot";const Oae=S.forwardRef(({max:e,min:r,value:n,position:o,label:i,dragging:a,onMouseDown:l,onKeyDownCapture:s,labelTransitionProps:c,labelAlwaysOn:d,thumbLabel:u,onFocus:p,onBlur:f,showLabelOnHover:g,isHovered:v,children:w=null,disabled:x},k)=>{const{getStyles:C}=xk(),[_,$]=S.useState(!1),R=d||a||_||g&&v;return y.jsxs(Ae,{tabIndex:0,role:"slider","aria-label":u,"aria-valuemax":e,"aria-valuemin":r,"aria-valuenow":n,ref:k,__vars:{"--slider-thumb-offset":`${o}%`},...C("thumb",{focusable:!0}),mod:{dragging:a,disabled:x},onFocus:T=>{$(!0),typeof p=="function"&&p(T)},onBlur:T=>{$(!1),typeof f=="function"&&f(T)},onTouchStart:l,onMouseDown:l,onKeyDownCapture:s,onClick:T=>T.stopPropagation(),children:[w,y.jsx(_l,{mounted:i!=null&&!!R,transition:"fade",duration:0,...c,children:T=>y.jsx("div",{...C("label",{style:T}),children:i})})]})});Oae.displayName="@mantine/core/SliderThumb";function Lae({value:e,min:r,max:n}){const o=(e-r)/(n-r)*100;return Math.min(Math.max(o,0),100)}function glt({mark:e,offset:r,value:n,inverted:o=!1}){return o?typeof r=="number"&&e.value<=r||e.value>=n:typeof r=="number"?e.value>=r&&e.value<=n:e.value<=n}function Fae({marks:e,min:r,max:n,disabled:o,value:i,offset:a,inverted:l}){const{getStyles:s}=xk();if(!e)return null;const c=e.map((d,u)=>S.createElement(Ae,{...s("markWrapper"),__vars:{"--mark-offset":`${Lae({value:d.value,min:r,max:n})}%`},key:u},y.jsx(Ae,{...s("mark"),mod:{filled:glt({mark:d,value:i,offset:a,inverted:l}),disabled:o}}),d.label&&y.jsx("div",{...s("markLabel"),children:d.label})));return y.jsx("div",{children:c})}Fae.displayName="@mantine/core/SliderMarks";function Vae({filled:e,children:r,offset:n,disabled:o,marksOffset:i,inverted:a,containerProps:l,...s}){const{getStyles:c}=xk();return y.jsx(Ae,{...c("trackContainer"),mod:{disabled:o},...l,children:y.jsxs(Ae,{...c("track"),mod:{inverted:a,disabled:o},children:[y.jsx(Ae,{mod:{inverted:a,disabled:o},__vars:{"--slider-bar-width":`calc(${e}% + 2 * var(--slider-size))`,"--slider-bar-offset":`calc(${n}% - var(--slider-size))`},...c("bar")}),r,y.jsx(Fae,{...s,offset:i,disabled:o,inverted:a})]})})}Vae.displayName="@mantine/core/SliderTrack";function ylt({value:e,containerWidth:r,min:n,max:o,step:i,precision:a}){const l=(r?Math.min(Math.max(e,0),r)/r:e)*(o-n),s=(l!==0?Math.round(l/i)*i:0)+n,c=Math.max(s,n);return a!==void 0?Number(c.toFixed(a)):c}function wk(e,r){return parseFloat(e.toFixed(r))}function vlt(e){if(!e)return 0;const r=e.toString().split(".");return r.length>1?r[1].length:0}function fj(e,r){const n=[...r].sort((o,i)=>o.value-i.value).find(o=>o.value>e);return n?n.value:e}function mj(e,r){const n=[...r].sort((o,i)=>i.value-o.value).find(o=>o.valuen.value-o.value);return r.length>0?r[0].value:0}function Hae(e){const r=[...e].sort((n,o)=>n.value-o.value);return r.length>0?r[r.length-1].value:100}var Uae={root:"m_dd36362e",label:"m_c9357328",thumb:"m_c9a9a60a",trackContainer:"m_a8645c2",track:"m_c9ade57f",bar:"m_38aeed47",markWrapper:"m_b7b0423a",mark:"m_dd33bc19",markLabel:"m_68c77a5b"};const blt={radius:"xl",min:0,max:100,step:1,marks:[],label:e=>e,labelTransitionProps:{transition:"fade",duration:0},thumbLabel:"",showLabelOnHover:!0,scale:e=>e,size:"md"},xlt=(e,{size:r,color:n,thumbSize:o,radius:i})=>({root:{"--slider-size":Qt(r,"slider-size"),"--slider-color":n?Uo(n,e):void 0,"--slider-radius":i===void 0?void 0:hn(i),"--slider-thumb-size":o!==void 0?Pe(o):"calc(var(--slider-size) * 2)"}}),Wae=We((e,r)=>{const n=ze("Slider",blt,e),{classNames:o,styles:i,value:a,onChange:l,onChangeEnd:s,size:c,min:d,max:u,domain:p,step:f,precision:g,defaultValue:v,name:w,marks:x,label:k,labelTransitionProps:C,labelAlwaysOn:_,thumbLabel:$,showLabelOnHover:R,thumbChildren:T,disabled:A,unstyled:z,scale:j,inverted:I,className:P,style:L,vars:H,hiddenInputProps:M,restrictToMarks:V,thumbProps:B,attributes:F,...q}=n,G=dt({name:"Slider",props:n,classes:Uae,classNames:o,className:P,styles:i,style:L,attributes:F,vars:H,varsResolver:xlt,unstyled:z}),{dir:U}=gc(),[Y,K]=S.useState(!1),[O,W]=qd({value:typeof a=="number"?Im(a,d,u):a,defaultValue:typeof v=="number"?Im(v,d,u):v,finalValue:Im(0,d,u),onChange:l}),Z=S.useRef(O),Q=S.useRef(s);S.useEffect(()=>{Q.current=s},[s]);const ie=S.useRef(null),te=S.useRef(null),[re,ue]=p||[d,u],_e=Lae({value:O,min:re,max:ue}),ce=j(O),pe=typeof k=="function"?k(ce):k,xe=g??vlt(f),je=S.useCallback(({x:Ve})=>{if(!A){const qe=ylt({value:Ve,min:re,max:ue,step:f,precision:xe}),Xe=Im(qe,d,u);W(V&&x?.length?Ane(Xe,x.map(It=>It.value)):Xe),Z.current=Xe}},[A,d,u,re,ue,f,xe,W,x,V]),Be=S.useCallback(()=>{if(!A&&Q.current){const Ve=V&&x?.length?Ane(Z.current,x.map(qe=>qe.value)):Z.current;Q.current(Ve)}},[A,x,V]),{ref:Je,active:st}=htt(je,{onScrubEnd:Be},U),Le=S.useCallback(Ve=>{!A&&Q.current&&Q.current(Ve)},[A]),St=Ve=>{if(!A)switch(Ve.key){case"ArrowUp":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=fj(O,x);W(Xe),Le(Xe);break}const qe=wk(Math.min(Math.max(O+f,d),u),xe);W(qe),Le(qe);break}case"ArrowRight":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?mj(O,x):fj(O,x);W(Xe),Le(Xe);break}const qe=wk(Math.min(Math.max(U==="rtl"?O-f:O+f,d),u),xe);W(qe),Le(qe);break}case"ArrowDown":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=mj(O,x);W(Xe),Le(Xe);break}const qe=wk(Math.min(Math.max(O-f,d),u),xe);W(qe),Le(qe);break}case"ArrowLeft":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?fj(O,x):mj(O,x);W(Xe),Le(Xe);break}const qe=wk(Math.min(Math.max(U==="rtl"?O+f:O-f,d),u),xe);W(qe),Le(qe);break}case"Home":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(qae(x)),Le(qae(x));break}W(d),Le(d);break}case"End":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(Hae(x)),Le(Hae(x));break}W(u),Le(u);break}}};return y.jsx(mlt,{value:{getStyles:G},children:y.jsxs(Iae,{...q,ref:on(r,ie),onKeyDownCapture:St,onMouseDownCapture:()=>ie.current?.focus(),size:c,disabled:A,children:[y.jsx(Vae,{inverted:I,offset:0,filled:_e,marks:x,min:re,max:ue,value:ce,disabled:A,containerProps:{ref:Je,onMouseEnter:R?()=>K(!0):void 0,onMouseLeave:R?()=>K(!1):void 0},children:y.jsx(Oae,{max:ue,min:re,value:ce,position:_e,dragging:st,label:pe,ref:te,labelTransitionProps:C,labelAlwaysOn:_,thumbLabel:$,showLabelOnHover:R,isHovered:Y,disabled:A,...B,children:T})}),y.jsx("input",{type:"hidden",name:w,value:ce,...M})]})})});Wae.classes=Uae,Wae.displayName="@mantine/core/Slider";const wlt=We((e,r)=>{const{w:n,h:o,miw:i,mih:a,...l}=ze("Space",null,e);return y.jsx(Ae,{ref:r,...l,w:n,miw:i??n,h:o,mih:a??o})});wlt.displayName="@mantine/core/Space";var Gae={root:"m_6d731127"};const klt={gap:"md",align:"stretch",justify:"flex-start"},_lt=(e,{gap:r,align:n,justify:o})=>({root:{"--stack-gap":ro(r),"--stack-align":n,"--stack-justify":o}}),Yae=We((e,r)=>{const n=ze("Stack",klt,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,align:d,justify:u,gap:p,variant:f,attributes:g,...v}=n,w=dt({name:"Stack",props:n,classes:Gae,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:_lt});return y.jsx(Ae,{ref:r,...w("root"),variant:f,...v})});Yae.classes=Gae,Yae.displayName="@mantine/core/Stack";const[Slt,gj]=Di("Tabs component was not found in the tree");var H0={root:"m_89d60db1","list--default":"m_576c9d4",list:"m_89d33d6d",tab:"m_4ec4dce6",panel:"m_b0c91715",tabSection:"m_fc420b1f",tabLabel:"m_42bbd1ae","tab--default":"m_539e827b","list--outline":"m_6772fbd5","tab--outline":"m_b59ab47c","tab--pills":"m_c3381914"};const yj=We((e,r)=>{const n=ze("TabsList",null,e),{children:o,className:i,grow:a,justify:l,classNames:s,styles:c,style:d,mod:u,...p}=n,f=gj();return y.jsx(Ae,{...p,...f.getStyles("list",{className:i,style:d,classNames:s,styles:c,props:n,variant:f.variant}),ref:r,role:"tablist",variant:f.variant,mod:[{grow:a,orientation:f.orientation,placement:f.orientation==="vertical"&&f.placement,inverted:f.inverted},u],"aria-orientation":f.orientation,__vars:{"--tabs-justify":l},children:o})});yj.classes=H0,yj.displayName="@mantine/core/TabsList";const vj=We((e,r)=>{const n=ze("TabsPanel",null,e),{children:o,className:i,value:a,classNames:l,styles:s,style:c,mod:d,keepMounted:u,...p}=n,f=gj(),g=f.value===a,v=f.keepMounted||u||g?o:null;return y.jsx(Ae,{...f.getStyles("panel",{className:i,classNames:l,styles:s,style:[c,g?void 0:{display:"none"}],props:n}),ref:r,mod:[{orientation:f.orientation},d],role:"tabpanel",id:f.getPanelId(a),"aria-labelledby":f.getTabId(a),...p,children:v})});vj.classes=H0,vj.displayName="@mantine/core/TabsPanel";const bj=We((e,r)=>{const n=ze("TabsTab",null,e),{className:o,children:i,rightSection:a,leftSection:l,value:s,onClick:c,onKeyDown:d,disabled:u,color:p,style:f,classNames:g,styles:v,vars:w,mod:x,tabIndex:k,...C}=n,_=uo(),{dir:$}=gc(),R=gj(),T=s===R.value,A=j=>{R.onChange(R.allowTabDeactivation&&s===R.value?null:s),c?.(j)},z={classNames:g,styles:v,props:n};return y.jsxs(hs,{...R.getStyles("tab",{className:o,style:f,variant:R.variant,...z}),disabled:u,unstyled:R.unstyled,variant:R.variant,mod:[{active:T,disabled:u,orientation:R.orientation,inverted:R.inverted,placement:R.orientation==="vertical"&&R.placement},x],ref:r,role:"tab",id:R.getTabId(s),"aria-selected":T,tabIndex:k!==void 0?k:T||R.value===null?0:-1,"aria-controls":R.getPanelId(s),onClick:A,__vars:{"--tabs-color":p?Uo(p,_):void 0},onKeyDown:Nz({siblingSelector:'[role="tab"]',parentSelector:'[role="tablist"]',activateOnFocus:R.activateTabWithKeyboard,loop:R.loop,orientation:R.orientation||"horizontal",dir:$,onKeyDown:d}),...C,children:[l&&y.jsx("span",{...R.getStyles("tabSection",z),"data-position":"left",children:l}),i&&y.jsx("span",{...R.getStyles("tabLabel",z),children:i}),a&&y.jsx("span",{...R.getStyles("tabSection",z),"data-position":"right",children:a})]})});bj.classes=H0,bj.displayName="@mantine/core/TabsTab";const Xae="Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value",Elt={keepMounted:!0,orientation:"horizontal",loop:!0,activateTabWithKeyboard:!0,variant:"default",placement:"left"},Clt=(e,{radius:r,color:n,autoContrast:o})=>({root:{"--tabs-radius":hn(r),"--tabs-color":Uo(n,e),"--tabs-text-color":nrt(o,e)?qz({color:n,theme:e,autoContrast:o}):void 0}}),U0=We((e,r)=>{const n=ze("Tabs",Elt,e),{defaultValue:o,value:i,onChange:a,orientation:l,children:s,loop:c,id:d,activateTabWithKeyboard:u,allowTabDeactivation:p,variant:f,color:g,radius:v,inverted:w,placement:x,keepMounted:k,classNames:C,styles:_,unstyled:$,className:R,style:T,vars:A,autoContrast:z,mod:j,attributes:I,...P}=n,L=bl(d),[H,M]=qd({value:i,defaultValue:o,finalValue:null,onChange:a}),V=dt({name:"Tabs",props:n,classes:H0,className:R,style:T,classNames:C,styles:_,unstyled:$,attributes:I,vars:A,varsResolver:Clt});return y.jsx(Slt,{value:{placement:x,value:H,orientation:l,id:L,loop:c,activateTabWithKeyboard:u,getTabId:Sne(`${L}-tab`,Xae),getPanelId:Sne(`${L}-panel`,Xae),onChange:M,allowTabDeactivation:p,variant:f,color:g,radius:v,inverted:w,keepMounted:k,unstyled:$,getStyles:V},children:y.jsx(Ae,{ref:r,id:L,variant:f,mod:[{orientation:l,inverted:l==="horizontal"&&w,placement:l==="vertical"&&x},j],...V("root"),...P,children:s})})});U0.classes=H0,U0.displayName="@mantine/core/Tabs",U0.Tab=bj,U0.Panel=vj,U0.List=yj;var Kae={root:"m_7341320d"};const $lt=(e,{size:r,radius:n,variant:o,gradient:i,color:a,autoContrast:l})=>{const s=e.variantColorResolver({color:a||e.primaryColor,theme:e,gradient:i,variant:o||"filled",autoContrast:l});return{root:{"--ti-size":Qt(r,"ti-size"),"--ti-radius":n===void 0?void 0:hn(n),"--ti-bg":a||o?s.background:void 0,"--ti-color":a||o?s.color:void 0,"--ti-bd":a||o?s.border:void 0}}},Zae=We((e,r)=>{const n=ze("ThemeIcon",null,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,autoContrast:d,attributes:u,...p}=n,f=dt({name:"ThemeIcon",classes:Kae,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:u,vars:c,varsResolver:$lt});return y.jsx(Ae,{ref:r,...f("root"),...p})});Zae.classes=Kae,Zae.displayName="@mantine/core/ThemeIcon";const Rlt=["h1","h2","h3","h4","h5","h6"],zlt=["xs","sm","md","lg","xl"];function Tlt(e,r){const n=r!==void 0?r:`h${e}`;return Rlt.includes(n)?{fontSize:`var(--mantine-${n}-font-size)`,fontWeight:`var(--mantine-${n}-font-weight)`,lineHeight:`var(--mantine-${n}-line-height)`}:zlt.includes(n)?{fontSize:`var(--mantine-font-size-${n})`,fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}:{fontSize:Pe(n),fontWeight:`var(--mantine-h${e}-font-weight)`,lineHeight:`var(--mantine-h${e}-line-height)`}}var Qae={root:"m_8a5d1357"};const jlt={order:1},Alt=(e,{order:r,size:n,lineClamp:o,textWrap:i})=>{const a=Tlt(r||1,n);return{root:{"--title-fw":a.fontWeight,"--title-lh":a.lineHeight,"--title-fz":a.fontSize,"--title-line-clamp":typeof o=="number"?o.toString():void 0,"--title-text-wrap":i}}},Jae=We((e,r)=>{const n=ze("Title",jlt,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,order:c,vars:d,size:u,variant:p,lineClamp:f,textWrap:g,mod:v,attributes:w,...x}=n,k=dt({name:"Title",props:n,classes:Qae,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:w,vars:d,varsResolver:Alt});return[1,2,3,4,5,6].includes(c)?y.jsx(Ae,{...k("root"),component:`h${c}`,variant:p,ref:r,mod:[{order:c,"data-line-clamp":typeof f=="number"},v],size:u,...x}):null});Jae.classes=Qae,Jae.displayName="@mantine/core/Title";function ele(e,r,n){if(!e||!r)return[];const o=n.indexOf(e),i=n.indexOf(r),a=Math.min(o,i),l=Math.max(o,i);return n.slice(a,l+1)}function xj({node:e,getStyles:r,rootIndex:n,controller:o,expandOnClick:i,selectOnClick:a,isSubtree:l,level:s=1,renderNode:c,flatValues:d,allowRangeSelection:u,expandOnSpace:p,checkOnSpace:f}){const g=S.useRef(null),v=(e.children||[]).map(_=>y.jsx(xj,{node:_,flatValues:d,getStyles:r,rootIndex:void 0,level:s+1,controller:o,expandOnClick:i,isSubtree:!0,renderNode:c,selectOnClick:a,allowRangeSelection:u,expandOnSpace:p,checkOnSpace:f},_.value)),w=_=>{if(_.nativeEvent.code==="ArrowRight"&&(_.stopPropagation(),_.preventDefault(),o.expandedState[e.value]?_.currentTarget.querySelector("[role=treeitem]")?.focus():o.expand(e.value)),_.nativeEvent.code==="ArrowLeft"&&(_.stopPropagation(),_.preventDefault(),o.expandedState[e.value]&&(e.children||[]).length>0?o.collapse(e.value):l&&j0(_.currentTarget,"[role=treeitem]")?.focus()),_.nativeEvent.code==="ArrowDown"||_.nativeEvent.code==="ArrowUp"){const $=j0(_.currentTarget,"[data-tree-root]");if(!$)return;_.stopPropagation(),_.preventDefault();const R=Array.from($.querySelectorAll("[role=treeitem]")),T=R.indexOf(_.currentTarget);if(T===-1)return;const A=_.nativeEvent.code==="ArrowDown"?T+1:T-1;if(R[A]?.focus(),_.shiftKey){const z=R[A];z&&o.setSelectedState(ele(o.anchorNode,z.dataset.value,d))}}_.nativeEvent.code==="Space"&&(p&&(_.stopPropagation(),_.preventDefault(),o.toggleExpanded(e.value)),f&&(_.stopPropagation(),_.preventDefault(),o.isNodeChecked(e.value)?o.uncheckNode(e.value):o.checkNode(e.value)))},x=_=>{_.stopPropagation(),u&&_.shiftKey&&o.anchorNode?(o.setSelectedState(ele(o.anchorNode,e.value,d)),g.current?.focus()):(i&&o.toggleExpanded(e.value),a&&o.select(e.value),g.current?.focus())},k=o.selectedState.includes(e.value),C={...r("label"),onClick:x,"data-selected":k||void 0,"data-value":e.value,"data-hovered":o.hoveredNode===e.value||void 0};return y.jsxs("li",{...r("node",{style:{"--label-offset":`calc(var(--level-offset) * ${s-1})`}}),role:"treeitem","aria-selected":k,"data-value":e.value,"data-selected":k||void 0,"data-hovered":o.hoveredNode===e.value||void 0,"data-level":s,tabIndex:n===0?0:-1,onKeyDown:w,ref:g,onMouseOver:_=>{_.stopPropagation(),o.setHoveredNode(e.value)},onMouseLeave:_=>{_.stopPropagation(),o.setHoveredNode(null)},children:[typeof c=="function"?c({node:e,level:s,selected:k,tree:o,expanded:o.expandedState[e.value]||!1,hasChildren:Array.isArray(e.children)&&e.children.length>0,elementProps:C}):y.jsx("div",{...C,children:e.label}),o.expandedState[e.value]&&v.length>0&&y.jsx(Ae,{component:"ul",role:"group",...r("subtree"),"data-level":s,children:v})]})}xj.displayName="@mantine/core/TreeNode";function kk(e,r,n=[]){const o=[];for(const i of e)if(Array.isArray(i.children)&&i.children.length>0){const a=kk(i.children,r,n);if(a.currentTreeChecked.length===i.children.length){const l=a.currentTreeChecked.every(c=>c.checked),s={checked:l,indeterminate:!l,value:i.value,hasChildren:!0};o.push(s),n.push(s)}else if(a.currentTreeChecked.length>0){const l={checked:!1,indeterminate:!0,value:i.value,hasChildren:!0};o.push(l),n.push(l)}}else if(r.includes(i.value)){const a={checked:!0,indeterminate:!1,value:i.value,hasChildren:!1};o.push(a),n.push(a)}return{result:n,currentTreeChecked:o}}function tle(e,r){for(const n of r){if(n.value===e)return n;if(Array.isArray(n.children)){const o=tle(e,n.children);if(o)return o}}return null}function _k(e,r,n=[]){const o=tle(e,r);return o?!Array.isArray(o.children)||o.children.length===0?[o.value]:(o.children.forEach(i=>{Array.isArray(i.children)&&i.children.length>0?_k(i.value,r,n):n.push(i.value)}),n):n}function rle(e){return e.reduce((r,n)=>(Array.isArray(n.children)&&n.children.length>0?r.push(...rle(n.children)):r.push(n.value),r),[])}function Dlt(e,r,n){return n.length===0?!1:n.includes(e)?!0:kk(r,n).result.some(o=>o.value===e&&o.checked)}const Mlt=jne(Dlt);function Nlt(e,r,n){return n.length===0?!1:kk(r,n).result.some(o=>o.value===e&&o.indeterminate)}const Plt=jne(Nlt);function nle(e,r,n,o={}){return r.forEach(i=>{o[i.value]=i.value in e?e[i.value]:i.value===n,Array.isArray(i.children)&&nle(e,i.children,n,o)}),o}function Blt(e,r){const n=[];return e.forEach(o=>n.push(..._k(o,r))),Array.from(new Set(n))}function Ilt({initialSelectedState:e=[],initialCheckedState:r=[],initialExpandedState:n={},multiple:o=!1,onNodeCollapse:i,onNodeExpand:a}={}){const[l,s]=S.useState([]),[c,d]=S.useState(n),[u,p]=S.useState(e),[f,g]=S.useState(r),[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(B=>{d(F=>nle(F,B,u)),g(F=>Blt(F,B)),s(B)},[u,f]),_=S.useCallback(B=>{d(F=>{const q={...F,[B]:!F[B]};return q[B]?a?.(B):i?.(B),q})},[i,a]),$=S.useCallback(B=>{d(F=>(F[B]!==!1&&i?.(B),{...F,[B]:!1}))},[i]),R=S.useCallback(B=>{d(F=>(F[B]!==!0&&a?.(B),{...F,[B]:!0}))},[a]),T=S.useCallback(()=>{d(B=>{const F={...B};return Object.keys(F).forEach(q=>{F[q]=!0}),F})},[]),A=S.useCallback(()=>{d(B=>{const F={...B};return Object.keys(F).forEach(q=>{F[q]=!1}),F})},[]),z=S.useCallback(B=>p(F=>o?F.includes(B)?(w(null),F.filter(q=>q!==B)):(w(B),[...F,B]):F.includes(B)?(w(null),[]):(w(B),[B])),[]),j=S.useCallback(B=>{w(B),p(F=>o?F.includes(B)?F:[...F,B]:[B])},[]),I=S.useCallback(B=>{v===B&&w(null),p(F=>F.filter(q=>q!==B))},[]),P=S.useCallback(()=>{p([]),w(null)},[]),L=S.useCallback(B=>{const F=_k(B,l);g(q=>Array.from(new Set([...q,...F])))},[l]),H=S.useCallback(B=>{const F=_k(B,l);g(q=>q.filter(G=>!F.includes(G)))},[l]),M=S.useCallback(()=>{g(()=>rle(l))},[l]),V=S.useCallback(()=>{g([])},[]);return{multiple:o,expandedState:c,selectedState:u,checkedState:f,anchorNode:v,initialize:C,toggleExpanded:_,collapse:$,expand:R,expandAllNodes:T,collapseAllNodes:A,setExpandedState:d,checkNode:L,uncheckNode:H,checkAllNodes:M,uncheckAllNodes:V,setCheckedState:g,toggleSelected:z,select:j,deselect:I,clearSelected:P,setSelectedState:p,hoveredNode:x,setHoveredNode:k,getCheckedNodes:()=>kk(l,f).result,isNodeChecked:B=>Mlt(B,l,f),isNodeIndeterminate:B=>Plt(B,l,f)}}var ole={root:"m_f698e191",subtree:"m_75f3ecf",node:"m_f6970eb1",label:"m_dc283425"};function ile(e){return e.reduce((r,n)=>(r.push(n.value),n.children&&r.push(...ile(n.children)),r),[])}const Olt={expandOnClick:!0,allowRangeSelection:!0,expandOnSpace:!0},Llt=(e,{levelOffset:r})=>({root:{"--level-offset":ro(r)}}),ale=We((e,r)=>{const n=ze("Tree",Olt,e),{classNames:o,className:i,style:a,styles:l,unstyled:s,vars:c,data:d,expandOnClick:u,tree:p,renderNode:f,selectOnClick:g,clearSelectionOnOutsideClick:v,allowRangeSelection:w,expandOnSpace:x,levelOffset:k,checkOnSpace:C,attributes:_,...$}=n,R=Ilt(),T=p||R,A=dt({name:"Tree",classes:ole,props:n,className:i,style:a,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:Llt}),z=Ene(()=>v&&T.clearSelected()),j=on(r,z),I=S.useMemo(()=>ile(d),[d]);S.useEffect(()=>{T.initialize(d)},[d]);const P=d.map((L,H)=>y.jsx(xj,{node:L,getStyles:A,rootIndex:H,expandOnClick:u,selectOnClick:g,controller:T,renderNode:f,flatValues:I,allowRangeSelection:w,expandOnSpace:x,checkOnSpace:C},L.value));return y.jsx(Ae,{component:"ul",ref:j,...A("root"),...$,role:"tree","aria-multiselectable":T.multiple,"data-tree-root":!0,children:P})});ale.displayName="@mantine/core/Tree",ale.classes=ole;var Flt="Invariant failed";function Sk(e,r){if(!e)throw new Error(Flt)}function Vlt(e){return typeof e=="function"}function lle(e,r){return Vlt(e)?e(r):e}function qlt(e,r){return r.reduce((n,o)=>(n[o]=e[o],n),{})}function sle(e,r){if(e===r)return e;const n=r,o=dle(e)&&dle(n);if(o||Ek(e)&&Ek(n)){const i=o?e:Object.keys(e),a=i.length,l=o?n:Object.keys(n),s=l.length,c=o?[]:{};let d=0;for(let u=0;u"u")return!0;const n=r.prototype;return!(!cle(n)||!n.hasOwnProperty("isPrototypeOf"))}function cle(e){return Object.prototype.toString.call(e)==="[object Object]"}function dle(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function ule(e,r){let n=Object.keys(e);return r&&(n=n.filter(o=>e[o]!==void 0)),n}function wj(e,r,n){if(e===r)return!0;if(typeof e!=typeof r)return!1;if(Ek(e)&&Ek(r)){const o=n?.ignoreUndefined??!0,i=ule(e,o),a=ule(r,o);return!n?.partial&&i.length!==a.length?!1:a.every(l=>wj(e[l],r[l],n))}return Array.isArray(e)&&Array.isArray(r)?e.length!==r.length?!1:!e.some((o,i)=>!wj(o,r[i],n)):!1}function Hlt(e){let r,n;const o=new Promise((i,a)=>{r=i,n=a});return o.status="pending",o.resolve=i=>{o.status="resolved",o.value=i,r(i)},o.reject=i=>{o.status="rejected",n(i)},o}function Ck(e,r){return e?.endsWith("/")&&e!=="/"&&e!==`${r}/`?e.slice(0,-1):e}function Ult(e,r,n){return Ck(e,n)===Ck(r,n)}function $k(e){return!!e?.isNotFound}const ple="tsr-scroll-restoration-v1_3";let hle=!1;try{hle=typeof window<"u"&&typeof window.sessionStorage=="object"}catch{}hle&&JSON.parse(window.sessionStorage.getItem(ple)||"null");const fle=e=>e.state.key||e.href;function Wlt(e,r,n,o,i){var a;let l;try{l=JSON.parse(sessionStorage.getItem(e)||"{}")}catch(d){console.error(d);return}const s=r||((a=window.history.state)==null?void 0:a.key),c=l[s];(()=>{if(o&&c){for(const u in c){const p=c[u];if(u==="window")window.scrollTo({top:p.scrollY,left:p.scrollX,behavior:n});else if(u){const f=document.querySelector(u);f&&(f.scrollLeft=p.scrollX,f.scrollTop=p.scrollY)}}return}const d=window.location.hash.split("#")[1];if(d){const u=(window.history.state||{}).__hashScrollIntoViewOptions??!0;if(u){const p=document.getElementById(d);p&&p.scrollIntoView(u)}return}["window",...i?.filter(u=>u!=="window")??[]].forEach(u=>{const p=u==="window"?window:document.querySelector(u);p&&p.scrollTo({top:0,left:0,behavior:n})})})()}const mle="__root__";function Glt(e){return!!e?.isRedirect}function Ylt(e){const r=e.resolvedLocation,n=e.location,o=r?.pathname!==n.pathname,i=r?.href!==n.href,a=r?.hash!==n.hash;return{fromLocation:r,toLocation:n,pathChanged:o,hrefChanged:i,hashChanged:a}}const Xlt="Error preloading route! ☝️";function gle(e){const r=e.errorComponent??kj;return y.jsx(Klt,{getResetKey:e.getResetKey,onCatch:e.onCatch,children:({error:n,reset:o})=>n?S.createElement(r,{error:n,reset:o}):e.children})}class Klt extends S.Component{constructor(){super(...arguments),this.state={error:null}}static getDerivedStateFromProps(r){return{resetKey:r.getResetKey()}}static getDerivedStateFromError(r){return{error:r}}reset(){this.setState({error:null})}componentDidUpdate(r,n){n.error&&n.resetKey!==this.state.resetKey&&this.reset()}componentDidCatch(r,n){this.props.onCatch&&this.props.onCatch(r,n)}render(){return this.props.children({error:this.state.resetKey!==this.props.getResetKey()?null:this.state.error,reset:()=>{this.reset()}})}}function kj({error:e}){const[r,n]=S.useState(!1);return y.jsxs("div",{style:{padding:".5rem",maxWidth:"100%"},children:[y.jsxs("div",{style:{display:"flex",alignItems:"center",gap:".5rem"},children:[y.jsx("strong",{style:{fontSize:"1rem"},children:"Something went wrong!"}),y.jsx("button",{style:{appearance:"none",fontSize:".6em",border:"1px solid currentColor",padding:".1rem .2rem",fontWeight:"bold",borderRadius:".25rem"},onClick:()=>n(o=>!o),children:r?"Hide Error":"Show Error"})]}),y.jsx("div",{style:{height:".25rem"}}),r?y.jsx("div",{children:y.jsx("pre",{style:{fontSize:".7em",border:"1px solid red",borderRadius:".25rem",padding:".3rem",color:"red",overflow:"auto"},children:e.message?y.jsx("code",{children:e.message}):null})}):null]})}function Zlt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var yle={exports:{}},_j={},vle={exports:{}},Sj={},ble;function Qlt(){if(ble)return Sj;ble=1;var e=Zr;function r(p,f){return p===f&&(p!==0||1/p===1/f)||p!==p&&f!==f}var n=typeof Object.is=="function"?Object.is:r,o=e.useState,i=e.useEffect,a=e.useLayoutEffect,l=e.useDebugValue;function s(p,f){var g=f(),v=o({inst:{value:g,getSnapshot:f}}),w=v[0].inst,x=v[1];return a(function(){w.value=g,w.getSnapshot=f,c(w)&&x({inst:w})},[p,g,f]),i(function(){return c(w)&&x({inst:w}),p(function(){c(w)&&x({inst:w})})},[p]),l(g),g}function c(p){var f=p.getSnapshot;p=p.value;try{var g=f();return!n(p,g)}catch{return!0}}function d(p,f){return f()}var u=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?d:s;return Sj.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:u,Sj}var xle;function wle(){return xle||(xle=1,vle.exports=Qlt()),vle.exports}var kle;function Jlt(){if(kle)return _j;kle=1;var e=Zr,r=wle();function n(d,u){return d===u&&(d!==0||1/d===1/u)||d!==d&&u!==u}var o=typeof Object.is=="function"?Object.is:n,i=r.useSyncExternalStore,a=e.useRef,l=e.useEffect,s=e.useMemo,c=e.useDebugValue;return _j.useSyncExternalStoreWithSelector=function(d,u,p,f,g){var v=a(null);if(v.current===null){var w={hasValue:!1,value:null};v.current=w}else w=v.current;v=s(function(){function k(T){if(!C){if(C=!0,_=T,T=f(T),g!==void 0&&w.hasValue){var A=w.value;if(g(A,T))return $=A}return $=T}if(A=$,o(_,T))return A;var z=f(T);return g!==void 0&&g(A,z)?(_=T,A):(_=T,$=z)}var C=!1,_,$,R=p===void 0?null:p;return[function(){return k(u())},R===null?void 0:function(){return k(R())}]},[u,p,f,g]);var x=i(d,v[0],v[1]);return l(function(){w.hasValue=!0,w.value=x},[x]),c(x),x},_j}var _le;function est(){return _le||(_le=1,yle.exports=Jlt()),yle.exports}var Sle=est();const tst=Zlt(Sle);function rst(e,r=n=>n){return Sle.useSyncExternalStoreWithSelector(e.subscribe,()=>e.state,()=>e.state,r,nst)}function nst(e,r){if(Object.is(e,r))return!0;if(typeof e!="object"||e===null||typeof r!="object"||r===null)return!1;if(e instanceof Map&&r instanceof Map){if(e.size!==r.size)return!1;for(const[o,i]of e)if(!r.has(o)||!Object.is(i,r.get(o)))return!1;return!0}if(e instanceof Set&&r instanceof Set){if(e.size!==r.size)return!1;for(const o of e)if(!r.has(o))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(r).length)return!1;for(let o=0;o"u"?Ej:window.__TSR_ROUTER_CONTEXT__?window.__TSR_ROUTER_CONTEXT__:(window.__TSR_ROUTER_CONTEXT__=Ej,Ej)}function Up(e){const r=S.useContext(ost());return e?.warn,r}function El(e){const r=Up({warn:e?.router===void 0}),n=e?.router||r,o=S.useRef(void 0);return rst(n.__store,i=>{if(e?.select){if(e.structuralSharing??n.options.defaultStructuralSharing){const a=sle(o.current,e.select(i));return o.current=a,a}return e.select(i)}return i})}const Ele=S.createContext(void 0);S.createContext(void 0);function ist(e){const r=El({select:n=>`not-found-${n.location.pathname}-${n.status}`});return y.jsx(gle,{getResetKey:()=>r,onCatch:(n,o)=>{var i;if($k(n))(i=e.onCatch)==null||i.call(e,n,o);else throw n},errorComponent:({error:n})=>{var o;if($k(n))return(o=e.fallback)==null?void 0:o.call(e,n);throw n},children:e.children})}function ast(){return y.jsx("p",{children:"Not Found"})}function Cj(e){return y.jsx(y.Fragment,{children:e.children})}function Cle(e,r,n){return r.options.notFoundComponent?y.jsx(r.options.notFoundComponent,{data:n}):e.options.defaultNotFoundComponent?y.jsx(e.options.defaultNotFoundComponent,{data:n}):y.jsx(ast,{})}var $j,$le;function lst(){if($le)return $j;$le=1;const e={},r=e.hasOwnProperty,n=(z,j)=>{for(const I in z)r.call(z,I)&&j(I,z[I])},o=(z,j)=>(j&&n(j,(I,P)=>{z[I]=P}),z),i=(z,j)=>{const I=z.length;let P=-1;for(;++P"\\u"+("0000"+z).slice(-4),l=(z,j)=>{let I=z.toString(16);return j?I:I.toUpperCase()},s=e.toString,c=Array.isArray,d=z=>typeof Buffer=="function"&&Buffer.isBuffer(z),u=z=>s.call(z)=="[object Object]",p=z=>typeof z=="string"||s.call(z)=="[object String]",f=z=>typeof z=="number"||s.call(z)=="[object Number]",g=z=>typeof z=="bigint",v=z=>typeof z=="function",w=z=>s.call(z)=="[object Map]",x=z=>s.call(z)=="[object Set]",k={"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"},C=/[\\\b\f\n\r\t]/,_=/[0-9]/,$=/[\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/,R=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^]/g,T=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^ !#-&\(-\[\]-_a-~]/g,A=(z,j)=>{const I=()=>{F=B,++j.indentLevel,B=j.indent.repeat(j.indentLevel)},P={escapeEverything:!1,minimal:!1,isScriptContext:!1,quotes:"single",wrap:!1,es6:!1,json:!1,compact:!0,lowercaseHex:!1,numbers:"decimal",indent:" ",indentLevel:0,__inline1__:!1,__inline2__:!1},L=j&&j.json;L&&(P.quotes="double",P.wrap=!0),j=o(P,j),j.quotes!="single"&&j.quotes!="double"&&j.quotes!="backtick"&&(j.quotes="single");const H=j.quotes=="double"?'"':j.quotes=="backtick"?"`":"'",M=j.compact,V=j.lowercaseHex;let B=j.indent.repeat(j.indentLevel),F="";const q=j.__inline1__,G=j.__inline2__,U=M?"":` -`;let Y,K=!0;const O=j.numbers=="binary",W=j.numbers=="octal",Z=j.numbers=="decimal",Q=j.numbers=="hexadecimal";if(L&&z&&v(z.toJSON)&&(z=z.toJSON()),!p(z)){if(w(z))return z.size==0?"new Map()":(M||(j.__inline1__=!0,j.__inline2__=!1),"new Map("+A(Array.from(z),j)+")");if(x(z))return z.size==0?"new Set()":"new Set("+A(Array.from(z),j)+")";if(d(z))return z.length==0?"Buffer.from([])":"Buffer.from("+A(Array.from(z),j)+")";if(c(z))return Y=[],j.wrap=!0,q&&(j.__inline1__=!1,j.__inline2__=!0),G||I(),i(z,te=>{K=!1,G&&(j.__inline2__=!1),Y.push((M||G?"":B)+A(te,j))}),K?"[]":G?"["+Y.join(", ")+"]":"["+U+Y.join(","+U)+U+(M?"":F)+"]";if(f(z)||g(z)){if(L)return JSON.stringify(Number(z));let te;if(Z)te=String(z);else if(Q){let re=z.toString(16);V||(re=re.toUpperCase()),te="0x"+re}else O?te="0b"+z.toString(2):W&&(te="0o"+z.toString(8));return g(z)?te+"n":te}else return g(z)?L?JSON.stringify(Number(z)):z+"n":u(z)?(Y=[],j.wrap=!0,I(),n(z,(te,re)=>{K=!1,Y.push((M?"":B)+A(te,j)+":"+(M?"":" ")+A(re,j))}),K?"{}":"{"+U+Y.join(","+U)+U+(M?"":F)+"}"):L?JSON.stringify(z)||"null":String(z)}const ie=j.escapeEverything?R:T;return Y=z.replace(ie,(te,re,ue,_e,ce,pe)=>{if(re){if(j.minimal)return re;const je=re.charCodeAt(0),Be=re.charCodeAt(1);if(j.es6){const Je=(je-55296)*1024+Be-56320+65536;return"\\u{"+l(Je,V)+"}"}return a(l(je,V))+a(l(Be,V))}if(ue)return a(l(ue.charCodeAt(0),V));if(te=="\0"&&!L&&!_.test(pe.charAt(ce+1)))return"\\0";if(_e)return _e==H||j.escapeEverything?"\\"+_e:_e;if(C.test(te))return k[te];if(j.minimal&&!$.test(te))return te;const xe=l(te.charCodeAt(0),V);return L||xe.length>2?a(xe):"\\x"+("00"+xe).slice(-2)}),H=="`"&&(Y=Y.replace(/\$\{/g,"\\${")),j.isScriptContext&&(Y=Y.replace(/<\/(script|style)/gi,"<\\/$1").replace(/