diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml new file mode 100644 index 0000000..38eb8a5 --- /dev/null +++ b/.github/workflows/build.yaml @@ -0,0 +1,73 @@ +name: build + +on: + push: + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-22.04 + + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + submodules: recursive + fetch-depth: 0 + + - name: Load versions from .env.versions + id: versions + run: | + set -a + source .env.versions + set +a + + echo "node_version=${NODE_VERSION}" >> "$GITHUB_OUTPUT" + echo "go_version=${GO_VERSION}" >> "$GITHUB_OUTPUT" + echo "hugo_version=${HUGO_VERSION}" >> "$GITHUB_OUTPUT" + + echo "Node: ${NODE_VERSION}" + echo "Go: ${GO_VERSION}" + echo "Hugo: ${HUGO_VERSION}" + + - name: Repository meta + id: repository + run: | + registry=${{ github.server_url }} + registry=${registry##http*://} + echo "registry=${registry}" >> "$GITHUB_OUTPUT" + echo "registry=${registry}" + repository="$(echo "${{ github.repository }}" | tr '[:upper:]' '[:lower:]')" + echo "repository=${repository}" >> "$GITHUB_OUTPUT" + echo "repository=${repository}" + + - name: Docker meta + uses: docker/metadata-action@v5 + id: docker + with: + images: ${{ steps.repository.outputs.registry }}/${{ steps.repository.outputs.repository }} + tags: | + type=sha,prefix= + type=ref,event=tag + + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + with: + buildkitd-flags: '--allow-insecure-entitlement network.host' + driver-opts: network=host + + - name: Build and push + uses: docker/build-push-action@v6 + with: + context: . + push: true + allow: network.host + network: host + tags: ${{ steps.docker.outputs.tags }} + labels: ${{ steps.docker.outputs.labels }} + build-args: | + NODE_VERSION=${{ steps.versions.outputs.node_version }} + GO_VERSION=${{ steps.versions.outputs.go_version }} + HUGO_VERSION=${{ steps.versions.outputs.hugo_version }} + diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index ae56f2a..b326201 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -2,7 +2,6 @@ name: ci on: push: - workflow_dispatch: jobs: build: @@ -22,11 +21,11 @@ jobs: set -a source .env.versions set +a - + echo "node_version=${NODE_VERSION}" >> "$GITHUB_OUTPUT" echo "go_version=${GO_VERSION}" >> "$GITHUB_OUTPUT" echo "hugo_version=${HUGO_VERSION}" >> "$GITHUB_OUTPUT" - + echo "Node: ${NODE_VERSION}" echo "Go: ${GO_VERSION}" echo "Hugo: ${HUGO_VERSION}" diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 8168687..50db5ca 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -26,11 +26,11 @@ jobs: set -a source .env.versions set +a - + echo "node_version=${NODE_VERSION}" >> "$GITHUB_OUTPUT" echo "go_version=${GO_VERSION}" >> "$GITHUB_OUTPUT" echo "hugo_version=${HUGO_VERSION}" >> "$GITHUB_OUTPUT" - + echo "Node: ${NODE_VERSION}" echo "Go: ${GO_VERSION}" echo "Hugo: ${HUGO_VERSION}" @@ -100,7 +100,7 @@ jobs: run: | # Finde vorheriges Tag PREVIOUS_TAG=$(git describe --abbrev=0 --tags ${GITHUB_REF}^ 2>/dev/null || echo "") - + if [ -z "$PREVIOUS_TAG" ]; then echo "Erster Release - Changelog von Anfang an" CHANGELOG=$(git log --pretty=format:"- %s (%h)" --no-merges) @@ -108,7 +108,7 @@ jobs: echo "Changelog seit ${PREVIOUS_TAG}" CHANGELOG=$(git log ${PREVIOUS_TAG}..${GITHUB_REF} --pretty=format:"- %s (%h)" --no-merges) fi - + # Schreibe in Output-Datei (multiline) { echo 'changelog<}} + [Add infrastructure and deployment diagrams showing how the component is deployed] TODO c4 @@ -217,9 +204,7 @@ Now, connect to the WebUI, use `GARM_ADMIN_USERNAME` and `GARM_ADMIN_PASSWORD` a ## Additional Resources -* [Using garm](https://github.com/cloudbase/garm/blob/main/doc/using_garm.md) -* [Link to community resources] -* [Link to related components] +* [Using GARM](https://github.com/cloudbase/garm/blob/main/doc/using_garm.md) ## Documentation Notes diff --git a/content/en/docs/components/deployments/_index.md b/content/en/docs/components/orchestration/environments/_index.md similarity index 94% rename from content/en/docs/components/deployments/_index.md rename to content/en/docs/components/orchestration/environments/_index.md index c68c6ff..1cedef1 100644 --- a/content/en/docs/components/deployments/_index.md +++ b/content/en/docs/components/orchestration/environments/_index.md @@ -1,6 +1,6 @@ --- -title: "Deployments" -linkTitle: "Deployments" +title: Environments +linkTitle: Environments weight: 40 description: > Deployment targets and edge connectivity solutions. diff --git a/content/en/docs/components/deployments/edgeconnect/_index.md b/content/en/docs/components/orchestration/environments/edgeconnect/_index.md similarity index 100% rename from content/en/docs/components/deployments/edgeconnect/_index.md rename to content/en/docs/components/orchestration/environments/edgeconnect/_index.md diff --git a/content/en/docs/components/deployments/edgeconnect/edgeconnect-client.md b/content/en/docs/components/orchestration/environments/edgeconnect/edgeconnect-client.md similarity index 99% rename from content/en/docs/components/deployments/edgeconnect/edgeconnect-client.md rename to content/en/docs/components/orchestration/environments/edgeconnect/edgeconnect-client.md index dec365e..02ab2ab 100644 --- a/content/en/docs/components/deployments/edgeconnect/edgeconnect-client.md +++ b/content/en/docs/components/orchestration/environments/edgeconnect/edgeconnect-client.md @@ -1,6 +1,6 @@ --- -title: "EdgeConnect Client" -linkTitle: "EdgeConnect Client" +title: "Client" +linkTitle: "Client" weight: 30 description: > Client software for establishing EdgeConnect connections diff --git a/content/en/docs/components/deployments/edgeconnect/edgeconnect-sdk.md b/content/en/docs/components/orchestration/environments/edgeconnect/edgeconnect-sdk.md similarity index 98% rename from content/en/docs/components/deployments/edgeconnect/edgeconnect-sdk.md rename to content/en/docs/components/orchestration/environments/edgeconnect/edgeconnect-sdk.md index cf91227..df3c71a 100644 --- a/content/en/docs/components/deployments/edgeconnect/edgeconnect-sdk.md +++ b/content/en/docs/components/orchestration/environments/edgeconnect/edgeconnect-sdk.md @@ -1,6 +1,6 @@ --- -title: EdgeConnect SDK -linkTitle: EdgeConnect SDK +title: SDK +linkTitle: SDK weight: 10 description: > Software Development Kit for interacting with EdgeConnect diff --git a/content/en/docs/components/deployments/otc.md b/content/en/docs/components/orchestration/environments/otc.md similarity index 100% rename from content/en/docs/components/deployments/otc.md rename to content/en/docs/components/orchestration/environments/otc.md diff --git a/content/en/docs/components/orchestration/infrastructure/_index.md b/content/en/docs/components/orchestration/infrastructure/_index.md index fc84a9d..b982bea 100644 --- a/content/en/docs/components/orchestration/infrastructure/_index.md +++ b/content/en/docs/components/orchestration/infrastructure/_index.md @@ -1,6 +1,6 @@ --- -title: "Infrastructure Orchestration" -linkTitle: "Infrastructure Orchestration" +title: Orchestration tools +linkTitle: Orchestration tools weight: 10 description: > Infrastructure deployment and catalog management (infra-deploy, infra-catalogue) @@ -15,6 +15,7 @@ description: > * **Last Updated**: YYYY-MM-DD * **TODO**: * [ ] Add detailed component description + * [ ] Add info on deploying infra-deploy / infra-catalogue, and how versioning works * [ ] Include usage examples and code samples * [ ] Add architecture diagrams * [ ] Review and finalize content diff --git a/content/en/docs/operations/_index.md b/content/en/docs/operations/_index.md index c6e610c..c286cf4 100644 --- a/content/en/docs/operations/_index.md +++ b/content/en/docs/operations/_index.md @@ -15,13 +15,13 @@ This section covers operational aspects of the Edge Developer Platform. In gener ### EDP -EDP is running on two OTC clusters (remember: this just means that we twice run the [infra-deploy pipeline](https://edp.buildth.ing/DevFW/infra-deploy/actions?workflow=deploy.yaml&actor=0&status=0) as eyerything is code!) +EDP is running on two OTC clusters (remember: this just means that we twice run the [infra-deploy pipeline](https://edp.buildth.ing/DevFW/infra-deploy/actions?workflow=deploy.yaml&actor=0&status=0) as eyerything is code!) ![alt text](otc-hub.png) #### Further references for infrastructural informations -* OTC: +* OTC: * [IPCEI-CIS Confluence](https://confluence.telekom-mms.com/spaces/IPCEICIS/pages/1000105031/OTC) ### Edge Connect @@ -44,9 +44,16 @@ But we also got access on the cluster level for operations issues, see picture a ## Monitoring & Observability -On EDP the observability cluster is meant to monitor the platform stacks, e.g. by [Grafana](https://grafana.observability.buildth.ing). +On EDP the observability cluster is meant to monitor the platform stacks, e.g. by [Grafana](https://grafana.observability.buildth.ing). But there is no operational monitoring lifecycle in place. we didn't define metrics or alerts as there is no operational mode yet. +Most monitoring and observability is done through grafana, deployed through the observability stack. + +Login is found in the `grafana-admin-credentials` secret. + + +NOTE document that default deployed stacks are different depending on is_observability flag + ![alt text](edp-grafana.png) ## Maintenance diff --git a/resources/edp-likec4/views/dynamic/cicd/garm-arch.c4 b/resources/edp-likec4/views/dynamic/cicd/garm-arch.c4 new file mode 100644 index 0000000..3c3ab46 --- /dev/null +++ b/resources/edp-likec4/views/dynamic/cicd/garm-arch.c4 @@ -0,0 +1,70 @@ +deployment { + environment otcKubernetes 'OTC Kubernetes' { + description 'OTC Container Cluster Engine hosting EDP platform' + technology 'Kubernetes' + icon tech:kubernetes + + cluster edpCluster 'EDP Cluster' { + description 'EDP platform cluster' + + instanceOf edp.forgejo { + description 'Forgejo - Git platform with Actions' + } + + instanceOf edp.forgejoActions { + description 'CI/CD orchestration for Forgejo' + } + + instanceOf edp.garm { + description 'GARM container with runner orchestration' + } + + instanceOf edp.garm.garm { + description 'GARM - Runner lifecycle manager' + } + + instanceOf edp.garm.providerEdgeConnect { + description 'GARM Provider for Edge Connect' + } + } + } + + environment edgeConnectEnv 'Edge Connect' { + description 'Edge infrastructure for ephemeral runner deployment' + technology 'Edge Connect Platform' + icon tech:docker + + computeressource runnerInfrastructure 'Runner Infrastructure' { + description 'Dynamically provisioned runner instances' + + instanceOf forgejoRunner { + description 'Ephemeral Forgejo Actions runner' + -> otcKubernetes.edpCluster.forgejo 'registers with and picks up jobs' + -> otcKubernetes.edpCluster.garm 'retrieves bootstrap information' + } + } + } +} + +views { + deployment view forgejoGarmArchitecture { + title 'Architecture of Forgejo, Garm and Edge Connect' + description 'Deployment architecture showing GARM orchestrating ephemeral runners on Edge Connect for Forgejo Actions' + + include + otcKubernetes, + otcKubernetes.*, + otcKubernetes.**, + edgeConnectEnv, + edgeConnectEnv.*, + edgeConnectEnv.** + + style otcKubernetes { + color blue + } + + style edgeConnectEnv { + color green + } + } +} diff --git a/static/js/likec4-webcomponent.js b/static/js/likec4-webcomponent.js index 11c2030..116734d 100644 --- a/static/js/likec4-webcomponent.js +++ b/static/js/likec4-webcomponent.js @@ -45,9 +45,9 @@ function Mme(e,r){for(var n=0;n0&&n.push({type:"text",value:` `}),n}function nO(e){let r=0,n=e.charCodeAt(r);for(;n===9||n===32;)r++,n=e.charCodeAt(r);return e.slice(r)}function oO(e,r){const n=$3e(e,r),o=n.one(e,void 0),a=E3e(n),i=Array.isArray(o)?{type:"root",children:o}:o||{type:"root",children:[]};return a&&i.children.push({type:"text",value:` -`},a),i}function A3e(e,r){return e&&"run"in e?async function(n,o){const a=oO(n,{file:o,...r});await e.run(a,o)}:function(n,o){return oO(n,{file:o,...e||r})}}function aO(e){if(e)throw e}var $_,iO;function D3e(){if(iO)return $_;iO=1;var e=Object.prototype.hasOwnProperty,r=Object.prototype.toString,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=function(d){return typeof Array.isArray=="function"?Array.isArray(d):r.call(d)==="[object Array]"},i=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 $_=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(a);try{c=e.apply(this,l)}catch(d){const u=d;if(s&&n)throw u;return a(u)}s||(c&&c.then&&typeof c.then=="function"?c.then(i,a):c instanceof Error?a(c):i(c))}function a(l,...s){n||(n=!0,r(l,...s))}function i(l){a(null,l)}}class Qo extends Error{constructor(r,n,o){super(),typeof n=="string"&&(o=n,n=void 0);let a="",i={},l=!1;if(n&&("line"in n&&"column"in n?i={place:n}:"start"in n&&"end"in n?i={place:n}:"type"in n?i={ancestors:[n],place:n.position}:i={...n}),typeof r=="string"?a=r:!i.cause&&r&&(l=!0,a=r.message,i.cause=r),!i.ruleId&&!i.source&&typeof o=="string"){const c=o.indexOf(":");c===-1?i.ruleId=o:(i.source=o.slice(0,c),i.ruleId=o.slice(c+1))}if(!i.place&&i.ancestors&&i.ancestors){const c=i.ancestors[i.ancestors.length-1];c&&(i.place=c.position)}const s=i.place&&"start"in i.place?i.place.start:i.place;this.ancestors=i.ancestors||void 0,this.cause=i.cause||void 0,this.column=s?s.column:void 0,this.fatal=void 0,this.file,this.message=a,this.line=s?s.line:void 0,this.name=t1(i.place)||"1:1",this.place=i.place||void 0,this.reason=this.message,this.ruleId=i.ruleId||void 0,this.source=i.source||void 0,this.stack=l&&i.cause&&typeof i.cause.stack=="string"?i.cause.stack:"",this.actual,this.expected,this.note,this.url}}Qo.prototype.file="",Qo.prototype.name="",Qo.prototype.reason="",Qo.prototype.message="",Qo.prototype.stack="",Qo.prototype.column=void 0,Qo.prototype.line=void 0,Qo.prototype.ancestors=void 0,Qo.prototype.cause=void 0,Qo.prototype.fatal=void 0,Qo.prototype.place=void 0,Qo.prototype.ruleId=void 0,Qo.prototype.source=void 0;const Vl={basename:B3e,dirname:O3e,extname:I3e,join:L3e,sep:"/"};function B3e(e,r){if(r!==void 0&&typeof r!="string")throw new TypeError('"ext" argument must be a string');r1(e);let n=0,o=-1,a=e.length,i;if(r===void 0||r.length===0||r.length>e.length){for(;a--;)if(e.codePointAt(a)===47){if(i){n=a+1;break}}else o<0&&(i=!0,o=a+1);return o<0?"":e.slice(n,o)}if(r===e)return"";let l=-1,s=r.length-1;for(;a--;)if(e.codePointAt(a)===47){if(i){n=a+1;break}}else l<0&&(i=!0,l=a+1),s>-1&&(e.codePointAt(a)===r.codePointAt(s--)?s<0&&(o=a):(s=-1,o=l));return n===o?o=l:o<0&&(o=e.length),e.slice(n,o)}function O3e(e){if(r1(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 I3e(e){r1(e);let r=e.length,n=-1,o=0,a=-1,i=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?a<0?a=r:i!==1&&(i=1):a>-1&&(i=-1)}return a<0||n<0||i===0||i===1&&a===n-1&&a===o+1?"":e.slice(a,n)}function L3e(...e){let r=-1,n;for(;++r0&&e.codePointAt(e.length-1)===47&&(n+="/"),r?"/"+n:n}function V3e(e,r){let n="",o=0,a=-1,i=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("/")),a=l,i=0;continue}}else if(n.length>0){n="",o=0,a=l,i=0;continue}}r&&(n=n.length>0?n+"/..":"..",o=2)}else n.length>0?n+="/"+e.slice(a+1,l):n=e.slice(a+1,l),o=l-a-1;a=l,i=0}else s===46&&i>-1?i++:i=-1}return n}function r1(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const q3e={cwd:H3e};function H3e(){return"/"}function j_(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function U3e(e){if(typeof e=="string")e=new URL(e);else if(!j_(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 W3e(e)}function W3e(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];R_(w)&&R_(g)&&(g=z_(!0,w,g)),o[f]=[d,g,...v]}}}}const K3e=new M_().freeze();function N_(e,r){if(typeof r!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function P_(e,r){if(typeof r!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function B_(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 sO(e){if(!R_(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function cO(e,r,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+r+"` instead")}function Bb(e){return Q3e(e)?e:new G3e(e)}function Q3e(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function J3e(e){return typeof e=="string"||e2e(e)}function e2e(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}function t2e(){return K3e().use(Zwe).use(Swe).use($we).use(A3e,{allowDangerousHtml:!0}).use(vye,JM({attributes:{"*":["className"],svg:["width","height","viewBox","fill","ariaHidden"],path:["d","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin"]},tagNames:["svg","g","path","div"]},J6)).use(N0e,{allowDangerousHtml:!0})}function r2e(e){return(""+t2e().processSync(e)).trim()}function n2e(e){return Ab(XB(e),{includeHtml:!1,includeImageAlt:!1})}var O_,dO;function o2e(){if(dO)return O_;dO=1;var e=dP(),r=xb();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,a){a=arguments.length>1?a:this;for(var i=this.offset,l=0,s=this.items.length;i=o.length)return{done:!0};var i=o[a];return a++,{value:i,done:!1}})},n.prototype.entries=function(){var o=this.items,a=this.offset,i=0;return new e(function(){if(a>=o.length)return{done:!0};var l=o[a];return a++,{value:[i++,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 a=new n;return r(o,function(i){a.enqueue(i)}),a},n.of=function(){return n.from(arguments)},O_=n,O_}var a2e=o2e();const I_=Vg(a2e);var L_,uO;function i2e(){if(uO)return L_;uO=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++}},L_=e,L_}var l2e=i2e();const Ln=Vg(l2e);function Za(e){return!!e}function pO(e){return r=>!e(r)}function s2e(...e){return io(c2e,e)}const c2e=(e,r)=>r.every(n=>n(e));function d2e(...e){return io(u2e,e)}const u2e=(e,r)=>r.some(n=>n(e));function Xn(e){return e==null}function hO(e,r){return e[$u]===r}const $u="_stage",n1="_type",F_="_layout";function p2e(e){return Za(e.kind)&&!Za(e.element)}function h2e(e){return"tag"in e}function f2e(e){return"kind"in e}function m2e(e){return"participant"in e}function g2e(e){return"not"in e}function y2e(e){return"and"in e}function v2e(e){return"or"in e}function zu(e){switch(!0){case m2e(e):{const r=e.participant,n=zu(e.operator);return b2e(r,n)}case h2e(e):{if(Uc(e.tag)||"eq"in e.tag){const n=Uc(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 f2e(e):{if(Uc(e.kind)||"eq"in e.kind){const n=Uc(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 g2e(e):{const r=zu(e.not);return pO(r)}case y2e(e):{const r=e.and.map(zu);return s2e(r)}case v2e(e):{const r=e.or.map(zu);return d2e(r)}default:Xo(e)}}function b2e(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 x2e(e){return e._type==="dynamic"}function o1(...e){return io(Object.entries,e)}function Ru(e,...r){return typeof e=="string"||typeof e=="number"||typeof e=="symbol"?n=>fO(n,e,...r):fO(e,...r)}function fO(e,...r){let n=e;for(let o of r){if(n==null)return;n=n[o]}return n}function Ob(...e){return io(w2e,e,k2e)}const w2e=(e,r)=>e.map(r),k2e=e=>(r,n,o)=>({done:!1,hasNext:!0,next:e(r,n,o)});function _2e(e,r){let n=r.length-e.length;if(n===1){let[o,...a]=r;return Ns(o,{lazy:e,lazyArgs:a})}if(n===0){let o={lazy:e,lazyArgs:r};return Object.assign(a=>Ns(a,o),o)}throw Error("Wrong number of arguments")}function Ib(...e){return _2e(S2e,e)}function S2e(){let e=new Set;return r=>e.has(r)?H6:(e.add(r),{done:!1,hasNext:!0,next:r})}var V_={},mO;function E2e(){return mO||(mO=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,a,i,l=arguments.length;for(i=0;in.size)return!1;for(;a=o.next(),!a.done;)if(!n.has(a.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(),a;a=o.next(),!a.done;)r.add(a.value)},e.subtract=function(r,n){for(var o=n.values(),a;a=o.next(),!a.done;)r.delete(a.value)},e.intersect=function(r,n){for(var o=r.values(),a;a=o.next(),!a.done;)n.has(a.value)||r.delete(a.value)},e.disjunct=function(r,n){for(var o=r.values(),a,i=[];a=o.next(),!a.done;)n.has(a.value)&&i.push(a.value);for(o=n.values();a=o.next(),!a.done;)r.has(a.value)||r.add(a.value);for(var l=0,s=i.length;ln.size&&(o=r,r=n,n=o),r.size===0)return 0;if(r===n)return r.size;for(var a=r.values(),i,l=0;i=a.next(),!i.done;)n.has(i.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 a=r.size+n.size-o;return o/a},e.overlap=function(r,n){var o=e.intersectionSize(r,n);return o===0?0:o/Math.min(r.size,n.size)}})(V_)),V_}var gO=E2e();function q_(...e){let r=new Set;for(const n of e)for(const o of n)r.add(o);return r}function qh(e,...r){let n=new Set;if(e.size===0)return n;let o=Il(r,2)?gO.intersection(...r):r[0];if(o.size===0)return n;for(const a of e)o.has(a)&&n.add(a);return n}function H_(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 C2e(e,r){return e.size===r.size&&[...e].every(n=>r.has(n))}function $2e(e,r){return gO.symmetricDifference(e,r)}function a1(e){return e?yO(e):yO}function yO(e){const r=e[Symbol.iterator](),{value:n}=r.next();return n}const Lb=e=>typeof e=="function";function Bs(e,r){const n=r??e;He(Lb(n));function*o(a){for(const i of a)n(i)&&(yield i)}return r?o(e):o}const vO={asc:(e,r)=>e>r,desc:(e,r)=>ee(i,a)}function U_(e,r,...n){let o=typeof e=="function"?e:e[0],a=typeof e=="function"?"asc":e[1],{[a]:i}=vO,l=r===void 0?void 0:U_(r,...n);return(s,c)=>{let d=o(s),u=o(c);return i(d,u)?1:i(u,d)?-1:l?.(s,c)??0}}function R2e(e){if(bO(e))return!0;if(typeof e!="object"||!Array.isArray(e))return!1;let[r,n,...o]=e;return bO(r)&&typeof n=="string"&&n in vO&&o.length===0}const bO=e=>typeof e=="function"&&e.length===1;function j2e(...e){return io(T2e,e,A2e)}const T2e=(e,r)=>e.filter(r),A2e=e=>(r,n,o)=>e(r,n,o)?{done:!1,hasNext:!0,next:r}:H6;function xO(...e){return io(D2e,e,M2e)}const D2e=(e,r)=>e.flatMap(r),M2e=e=>(r,n,o)=>{let a=e(r,n,o);return Array.isArray(a)?{done:!1,hasNext:!0,hasMany:!0,next:a}:{done:!1,hasNext:!0,next:a}};function W_(...e){return io(N2e,e)}const N2e=(e,r)=>{let n=Object.create(null);for(let o=0;oNs(r,...e)}function kO(...e){return z2e(I2e,e)}const I2e=(e,r)=>[...e].sort(r);var _O=Symbol.for("immer-nothing"),SO=Symbol.for("immer-draftable"),va=Symbol.for("immer-state");function qi(e,...r){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var i1=Object.getPrototypeOf;function Hh(e){return!!e&&!!e[va]}function ju(e){return e?CO(e)||Array.isArray(e)||!!e[SO]||!!e.constructor?.[SO]||l1(e)||qb(e):!1}var L2e=Object.prototype.constructor.toString(),EO=new WeakMap;function CO(e){if(!e||typeof e!="object")return!1;const r=Object.getPrototypeOf(e);if(r===null||r===Object.prototype)return!0;const n=Object.hasOwnProperty.call(r,"constructor")&&r.constructor;if(n===Object)return!0;if(typeof n!="function")return!1;let o=EO.get(n);return o===void 0&&(o=Function.toString.call(n),EO.set(n,o)),o===L2e}function Fb(e,r,n=!0){Vb(e)===0?(n?Reflect.ownKeys(e):Object.keys(e)).forEach(a=>{r(a,e[a],e)}):e.forEach((o,a)=>r(a,o,e))}function Vb(e){const r=e[va];return r?r.type_:Array.isArray(e)?1:l1(e)?2:qb(e)?3:0}function X_(e,r){return Vb(e)===2?e.has(r):Object.prototype.hasOwnProperty.call(e,r)}function $O(e,r,n){const o=Vb(e);o===2?e.set(r,n):o===3?e.add(n):e[r]=n}function F2e(e,r){return e===r?e!==0||1/e===1/r:e!==e&&r!==r}function l1(e){return e instanceof Map}function qb(e){return e instanceof Set}function Tu(e){return e.copy_||e.base_}function Z_(e,r){if(l1(e))return new Map(e);if(qb(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const n=CO(e);if(r===!0||r==="class_only"&&!n){const o=Object.getOwnPropertyDescriptors(e);delete o[va];let a=Reflect.ownKeys(o);for(let i=0;i1&&Object.defineProperties(e,{set:Hb,add:Hb,clear:Hb,delete:Hb}),Object.freeze(e),r&&Object.values(e).forEach(n=>K_(n,!0))),e}function V2e(){qi(2)}var Hb={value:V2e};function Ub(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var q2e={};function Au(e){const r=q2e[e];return r||qi(0,e),r}var s1;function zO(){return s1}function H2e(e,r){return{drafts_:[],parent_:e,immer_:r,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function RO(e,r){r&&(Au("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=r)}function Q_(e){J_(e),e.drafts_.forEach(U2e),e.drafts_=null}function J_(e){e===s1&&(s1=e.parent_)}function jO(e){return s1=H2e(s1,e)}function U2e(e){const r=e[va];r.type_===0||r.type_===1?r.revoke_():r.revoked_=!0}function TO(e,r){r.unfinalizedDrafts_=r.drafts_.length;const n=r.drafts_[0];return e!==void 0&&e!==n?(n[va].modified_&&(Q_(r),qi(4)),ju(e)&&(e=Wb(r,e),r.parent_||Gb(r,e)),r.patches_&&Au("Patches").generateReplacementPatches_(n[va].base_,e,r.patches_,r.inversePatches_)):e=Wb(r,n,[]),Q_(r),r.patches_&&r.patchListener_(r.patches_,r.inversePatches_),e!==_O?e:void 0}function Wb(e,r,n){if(Ub(r))return r;const o=e.immer_.shouldUseStrictIteration(),a=r[va];if(!a)return Fb(r,(i,l)=>AO(e,a,r,i,l,n),o),r;if(a.scope_!==e)return r;if(!a.modified_)return Gb(e,a.base_,!0),a.base_;if(!a.finalized_){a.finalized_=!0,a.scope_.unfinalizedDrafts_--;const i=a.copy_;let l=i,s=!1;a.type_===3&&(l=new Set(i),i.clear(),s=!0),Fb(l,(c,d)=>AO(e,a,i,c,d,n,s),o),Gb(e,i,!1),n&&e.patches_&&Au("Patches").generatePatches_(a,n,e.patches_,e.inversePatches_)}return a.copy_}function AO(e,r,n,o,a,i,l){if(a==null||typeof a!="object"&&!l)return;const s=Ub(a);if(!(s&&!l)){if(Hh(a)){const c=i&&r&&r.type_!==3&&!X_(r.assigned_,o)?i.concat(o):void 0,d=Wb(e,a,c);if($O(n,o,d),Hh(d))e.canAutoFreeze_=!1;else return}else l&&n.add(a);if(ju(a)&&!s){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||r&&r.base_&&r.base_[o]===a&&s)return;Wb(e,a),(!r||!r.scope_.parent_)&&typeof o!="symbol"&&(l1(n)?n.has(o):Object.prototype.propertyIsEnumerable.call(n,o))&&Gb(e,a)}}}function Gb(e,r,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&K_(r,n)}function W2e(e,r){const n=Array.isArray(e),o={type_:n?1:0,scope_:r?r.scope_:zO(),modified_:!1,finalized_:!1,assigned_:{},parent_:r,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let a=o,i=e8;n&&(a=[o],i=c1);const{revoke:l,proxy:s}=Proxy.revocable(a,i);return o.draft_=s,o.revoke_=l,s}var e8={get(e,r){if(r===va)return e;const n=Tu(e);if(!X_(n,r))return G2e(e,n,r);const o=n[r];return e.finalized_||!ju(o)?o:o===t8(e.base_,r)?(n8(e),e.copy_[r]=o8(o,e)):o},has(e,r){return r in Tu(e)},ownKeys(e){return Reflect.ownKeys(Tu(e))},set(e,r,n){const o=DO(Tu(e),r);if(o?.set)return o.set.call(e.draft_,n),!0;if(!e.modified_){const a=t8(Tu(e),r),i=a?.[va];if(i&&i.base_===n)return e.copy_[r]=n,e.assigned_[r]=!1,!0;if(F2e(n,a)&&(n!==void 0||X_(e.base_,r)))return!0;n8(e),r8(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_[r]=!0),!0},deleteProperty(e,r){return t8(e.base_,r)!==void 0||r in e.base_?(e.assigned_[r]=!1,n8(e),r8(e)):delete e.assigned_[r],e.copy_&&delete e.copy_[r],!0},getOwnPropertyDescriptor(e,r){const n=Tu(e),o=Reflect.getOwnPropertyDescriptor(n,r);return o&&{writable:!0,configurable:e.type_!==1||r!=="length",enumerable:o.enumerable,value:n[r]}},defineProperty(){qi(11)},getPrototypeOf(e){return i1(e.base_)},setPrototypeOf(){qi(12)}},c1={};Fb(e8,(e,r)=>{c1[e]=function(){return arguments[0]=arguments[0][0],r.apply(this,arguments)}}),c1.deleteProperty=function(e,r){return c1.set.call(this,e,r,void 0)},c1.set=function(e,r,n){return e8.set.call(this,e[0],r,n,e[0])};function t8(e,r){const n=e[va];return(n?Tu(n):e)[r]}function G2e(e,r,n){const o=DO(r,n);return o?"value"in o?o.value:o.get?.call(e.draft_):void 0}function DO(e,r){if(!(r in e))return;let n=i1(e);for(;n;){const o=Object.getOwnPropertyDescriptor(n,r);if(o)return o;n=i1(n)}}function r8(e){e.modified_||(e.modified_=!0,e.parent_&&r8(e.parent_))}function n8(e){e.copy_||(e.copy_=Z_(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var Y2e=class{constructor(r){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(n,o,a)=>{if(typeof n=="function"&&typeof o!="function"){const l=o;o=n;const s=this;return function(d=l,...u){return s.produce(d,p=>o.call(this,p,...u))}}typeof o!="function"&&qi(6),a!==void 0&&typeof a!="function"&&qi(7);let i;if(ju(n)){const l=jO(this),s=o8(n,void 0);let c=!0;try{i=o(s),c=!1}finally{c?Q_(l):J_(l)}return RO(l,a),TO(i,l)}else if(!n||typeof n!="object"){if(i=o(n),i===void 0&&(i=n),i===_O&&(i=void 0),this.autoFreeze_&&K_(i,!0),a){const l=[],s=[];Au("Patches").generateReplacementPatches_(n,i,l,s),a(l,s)}return i}else qi(1,n)},this.produceWithPatches=(n,o)=>{if(typeof n=="function")return(s,...c)=>this.produceWithPatches(s,d=>n(d,...c));let a,i;return[this.produce(n,o,(s,c)=>{a=s,i=c}),a,i]},typeof r?.autoFreeze=="boolean"&&this.setAutoFreeze(r.autoFreeze),typeof r?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(r.useStrictShallowCopy),typeof r?.useStrictIteration=="boolean"&&this.setUseStrictIteration(r.useStrictIteration)}createDraft(r){ju(r)||qi(8),Hh(r)&&(r=X2e(r));const n=jO(this),o=o8(r,void 0);return o[va].isManual_=!0,J_(n),o}finishDraft(r,n){const o=r&&r[va];(!o||!o.isManual_)&&qi(9);const{scope_:a}=o;return RO(a,n),TO(void 0,a)}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 i=n[o];if(i.path.length===0&&i.op==="replace"){r=i.value;break}}o>-1&&(n=n.slice(o+1));const a=Au("Patches").applyPatches_;return Hh(r)?a(r,n):this.produce(r,i=>a(i,n))}};function o8(e,r){const n=l1(e)?Au("MapSet").proxyMap_(e,r):qb(e)?Au("MapSet").proxySet_(e,r):W2e(e,r);return(r?r.scope_:zO()).drafts_.push(n),n}function X2e(e){return Hh(e)||qi(10,e),MO(e)}function MO(e){if(!ju(e)||Ub(e))return e;const r=e[va];let n,o=!0;if(r){if(!r.modified_)return r.base_;r.finalized_=!0,n=Z_(e,r.scope_.immer_.useStrictShallowCopy_),o=r.scope_.immer_.shouldUseStrictIteration()}else n=Z_(e,!0);return Fb(n,(a,i)=>{$O(n,a,MO(i))},o),r&&(r.finalized_=!1),n}var Z2e=new Y2e,Uh=Z2e.produce;function $xt(e){return e}function K2e(e){return Ns(e,j2e(r=>!!r.notation),W_(Ru("notation")),G_(Y_(W_(Ru("shape")),G_(Y_(W_(Ru("color")),G_(Y_(Ob(Ru("kind")),Ib())),o1(),Ob(([r,n])=>({kinds:n,color:r})))),o1(),xO(([r,n])=>n.map(({color:o,kinds:a})=>({shape:r,color:o,kinds:a}))))),o1(),xO(([r,n])=>n.map(({shape:o,color:a,kinds:i})=>({title:r,shape:o,color:a,kinds:i}))),kO(Ru("shape"),Ru("title"),[r=>r.kinds.length,"desc"]))}const wo=(e,r)=>e===r||Xn(e)&&Xn(r)?!1:!ab(e,r),Yb=5;function Q2e(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,P2e(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 J2e(e,r,n){if(wo(r.icon??"none",e.icon??"none")){const o=Za(e.icon)&&e.icon!=="none";switch(!0){case(o&&Za(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&&Za(r.icon)&&r.icon!=="none"):return n?(e.icon=r.icon,!0):!1}}return!0}function a8(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 eke(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=a8(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 tke(e,r,n){return e.title=r.title,Xn(r.description)?delete e.description:e.description=a8(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])),a=new Map(e.edges.map(u=>[u.id,u])),i=rke(r.nodes,o,n),l=nke(r.edges,a,n),s=K2e(i),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,[F_]:"manual",...s&&s.length>0?{notation:{nodes:s}}:{},nodes:i,edges:l});x2e(e)&&c._type==="dynamic"&&(c.variant=e.variant);const d=[...n];return Il(d,1)?c.drifts=d:"drifts"in c&&delete c.drifts,c}function rke(e,r,n){const o=e.map(a=>{const i=r.get(a.id);return i&&r.delete(i.id),Uh(a,l=>{if(!i){l.drifts=["removed"],n.add("nodes-removed");return}Q2e(l,i);const s=new Set,c=a.children.length>0,d=i.children.length>0;(wo(l.modelRef,i.modelRef)||wo(l.deploymentRef,i.deploymentRef))&&s.add("modelRef-changed"),d&&!c&&s.add("became-compound"),!d&&c&&s.add("became-leaf"),wo(l.parent,i.parent)&&s.add("parent-changed");const u=l.width+Yb>=i.width&&l.height+Yb>=i.height;wo(l.shape,i.shape)&&(u?l.shape=i.shape:s.add("shape-changed")),J2e(l,i,u&&d===c)||s.add("label-changed"),(c?tke:eke)(l,i,u)||s.add("label-changed"),wo(a.notation,i.notation)&&(l.notation=i.notation??null),c&&d&&$2e(new Set(a.children),new Set(i.children)).size>0&&s.add("children-changed");const f=[...s];Il(f,1)?(n.add("nodes-drift"),l.drifts=f):delete l.drifts})});return r.size>0&&n.add("nodes-added"),o}function nke(e,r,n){const o=e.map(a=>{let i=r.get(a.id)??Ns(r.values(),Bs(l=>l.source===a.source&&l.target===a.target),a1());return i&&r.delete(i.id),Uh(a,l=>{if(!i){l.drifts=["removed"],n.add("edges-removed");return}const s=new Set,c=a.id===i.id;switch(!0){case(c&&a.source==i.source&&a.target==i.target):{wo(l.dir??"forward",i.dir??"forward")&&s.add("direction-changed");break}case(c&&a.source==i.target&&a.target==i.source):{a.source!==a.target&&s.add("direction-changed");break}case c:{a.source!=i.source&&s.add("source-changed"),a.target!=i.target&&s.add("target-changed");break}default:{He(a.id!=i.id,"Unexpected case in edge drift detection, ids should not match"),He(a.source==i.source,"Unexpected case in edge drift detection, sources should match"),He(a.target==i.target,"Unexpected case in edge drift detection, targets should match"),wo(l.dir??"forward",i.dir??"forward")&&s.add("direction-changed");break}}l.color=i.color,l.line=i.line,l.navigateTo=i.navigateTo??null,l.tags=i.tags?[...i.tags]:null,wo(a.notes,i.notes)&&(Xn(a.notes)!==Xn(i.notes)&&s.add("notes-changed"),l.notes=i.notes??a.notes),i.astPath?l.astPath=i.astPath:delete l.astPath;const d=wO(a,["label","description","technology","labelBBox"]),u=wO(i,["label","description","technology","labelBBox"]);if(wo(d,u))switch(!0){case(i.labelBBox&&!a.labelBBox):{s.add("label-added");break}case(a.labelBBox&&!i.labelBBox):{s.add("label-removed");break}case(!!a.labelBBox&&!!i.labelBBox):{i.labelBBox.width*i.labelBBox.height>(a.labelBBox.width+Yb)*(a.labelBBox.height+Yb)&&(l.labelBBox.width=Math.round(i.labelBBox.width),l.labelBBox.height=Math.round(i.labelBBox.height)),wo(a.label,i.label)&&(Xn(i.label)!==Xn(a.label)&&s.add("label-changed"),l.label=i.label??a.label),wo(a.description,i.description)&&(Xn(i.description)!==Xn(a.description)&&s.add("label-changed"),i.description&&(l.description=a8(a.description,i.description))),wo(a.technology,i.technology)&&(Xn(i.technology)!==Xn(a.technology)&&s.add("label-changed"),l.technology=i.technology??a.technology??null);break}default:He(!a.labelBBox,"Unexpected case in edge labelBBox drift detection"),He(!i.labelBBox,"Unexpected case in next labelBBox drift detection");break}const p=[...s];Il(p,1)?(n.add("edges-drift"),l.drifts=p):delete l.drifts})});return r.size>0&&n.add("edges-added"),o}function oke(e,r){const{drifts:n,...o}=NO(e,r);if(n){const a=new Set;n.includes("type-changed")&&a.add("type-changed");const i=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=i.get(u.id);return p&&i.delete(p.id),Uh(u,f=>{if(!p){a.add("nodes-added"),f.drifts=["added"];return}p.drifts?(a.add("nodes-drift"),f.drifts=[...p.drifts]):delete f.drifts})});i.size>0&&a.add("nodes-removed");const c=e.edges.map(u=>{const p=l.get(u.id)??Ns(l.values(),Bs(f=>f.source===u.source&&f.target===u.target),a1());return p&&l.delete(p.id),Uh(u,f=>{if(!p){a.add("edges-added"),f.drifts=["added"];return}p.drifts?(a.add("edges-drift"),f.drifts=[...p.drifts]):delete f.drifts})});l.size>0&&a.add("edges-removed");const d=[...a];return Uh(e,u=>{Il(d,1)?u.drifts=d:delete u.drifts,u.nodes=s,u.edges=c,u[F_]="auto"})}return Uh(e,a=>{delete a.drifts,a[F_]="auto"})}function Os(e){return e.summary??e.description}function Wh(e){return e.description??e.summary}const d1="@group";function ake(e){return e.kind===d1}function PO(e,r){return He(typeof e=="string"&&e!=""),"@"+e+"."+r}function ike(e){return e.startsWith("@")}function lke(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 u1(e){return e.startsWith("step-")}function BO(e){if(!u1(e))throw new Error(`Invalid step edge id: ${e}`);return parseFloat(e.slice(5))}function ske(...e){return io(cke,e)}function cke(e,r){let n={...e};for(let[o,a]of Object.entries(n))r(a,o,e)&&delete n[o];return n}var i8={},OO;function l8(){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,a=Math.pow(2,7)-1,i=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<=a?Int8Array:d<=i?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]},a.prototype.peek=function(i){var l=this.items[i];if(!(typeof l>"u"))return this.V[l]},a.prototype.forEach=function(i,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 i++,i=l)return{done:!0};var u=c[s];return i++,i=l)return{done:!0};var p=c[s],f=d[s];return i++,i"u"))return this.splayOnTop(l),this.V[l]},a.prototype.peek=function(i){var l=this.items.get(i);if(!(typeof l>"u"))return this.V[l]},a.prototype.splayOnTop=e.prototype.splayOnTop,a.prototype.forEach=e.prototype.forEach,a.prototype.keys=e.prototype.keys,a.prototype.values=e.prototype.values,a.prototype.entries=e.prototype.entries,typeof Symbol<"u"&&(a.prototype[Symbol.iterator]=a.prototype.entries),a.prototype.inspect=e.prototype.inspect,a.from=function(i,l,s,c){if(arguments.length<2){if(c=o.guessLength(i),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 a(l,s,c);return r(i,function(u,p){d.set(p,u)}),d},c8=a,c8}var pke=uke();const qO=Vg(pke);function p1(e){return ske(e,r=>r===void 0)}const hke=Symbol.for("text"),fke=Symbol.for("html"),Is="",HO=new qO(500),UO=new qO(500);class ur{static getOrCreateFromText(r){if(r.trim()===Is)return ur.EMPTY;let n=UO.get(r);return n||(n=new ur({txt:r}),UO.set(r,n),n)}static getOrCreateFromMarkdown(r){if(r.trim()===Is)return ur.EMPTY;let n=HO.get(r);return n||(n=new ur({md:r}),HO.set(r,n),n)}static memoize(r,n,o){return ir(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:Is})}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()===Is):(this.$source=r,this.isEmpty=!0,"md"in r?(this.isEmpty=r.md===Is,this.isMarkdown=!0):this.isEmpty=r.txt===Is),this.nonEmpty=!this.isEmpty}get text(){if(this.isEmpty||this.$source===null)return Is;const r=this.$source;return"txt"in r?r.txt:ir(this,hke,()=>n2e(r.md))}get md(){if(this.isEmpty||this.$source===null)return Is;const r=this.$source;if("md"in r)return r.md;if("txt"in r)return r.txt;Xo(r)}get html(){if(this.isEmpty||this.$source===null)return Is;const r=this.$source;return"txt"in r?r.txt:ir(this,fke,()=>r2e(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 h1;(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(Uc(c))throw new Error(`Expected FqnRef, got: "${c}"`);if(n(c))return PO(c.project,c.model);if(r(c))return c.model;throw new Error("Expected FqnRef.ModelRef or FqnRef.ImportRef")}e.flatten=o;function a(c){return r(c)||n(c)}e.isModelRef=a;function i(c){return"deployment"in c&&"element"in c}e.isInsideInstanceRef=i;function l(c){return"deployment"in c&&!("element"in c)}e.isDeploymentElementRef=l;function s(c){return l(c)||i(c)}e.isDeploymentRef=s})(h1||(h1={}));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}=d8.fromPoints(u);return{x:p,y:f,width:g-p,height:v-f}}e.fromPoints=o;function a(...u){if(He(Il(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 d8;(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 a(l){return{x:l.x1,y:l.y1,width:l.x2-l.x1,height:l.y2-l.y1}}e.toBBox=a;function i(l,s){return l===s?!0:l.x1<=s.x1&&l.y1<=s.y1&&l.x2>=s.x2&&l.y2>=s.y2}e.includes=i})(d8||(d8={}));class ba{constructor(r,n){this.x=r,this.y=n}static create(...r){return r.length===2?new ba(r[0],r[1]):new ba(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 ba(this.x+r.x,this.y+r.y)}subtract(r){return new ba(this.x-r.x,this.y-r.y)}multiply(r){return new ba(this.x*r,this.y*r)}divide(r){return new ba(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 ba(0,0):new ba(this.x/r,this.y/r)}round(){return new ba(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 ba?e[0]:e.length===2?new ba(e[0],e[1]):new ba(e[0].x,e[0].y)}function u8(e){return u1(e)&&e.includes(".")?e.slice(0,e.indexOf(".")+1):null}function WO(e){const r=typeof e=="string"?e:e.color;return r.startsWith("#")||r.startsWith("rgb")}function p8(...e){return io(mke,e)}function mke(e,r){let n=[...e];return n.sort(r),n}const gke=["tomato","grass","blue","ruby","orange","indigo","pink","teal","purple","amber","crimson","red","lime","yellow","violet"];function yke(e,r,n){let o=e.get(r);return o||(o=n(r),e.set(r,o)),o}function vke(e){let r=5381;const n=e.length;He(n>0,"stringHash: empty string");for(let o=0;o>>0).toString(36)}function f1(e,r){const n=r??e;He(Lb(n));function o(a){for(const i of a)if(n(i))return i}return r?o(e):o}function bke(e,r){const n=e;He(Lb(n));function*o(a){for(const i of a)yield n(i)}return o}function m1(e){return e?Array.from(e):r=>Array.from(r)}function xke(e){return e?new Set(e):r=>new Set(r)}function GO(e,r){const n=r??e;He(Lb(n));function o(a){for(const i of a)if(n(i))return!0;return!1}return r?o(e):o}function wke(e,r){const n=e;He(n>=0,"Count must be a non-negative number");function*o(a){let i=0;for(const l of a){if(i>=n)break;yield l,i++}}return a=>o(a)}function kke(e,r){let n=Math.ceil(e),o=Math.floor(r);if(o{setTimeout(()=>{n(_ke)},r??100)})}function Xb(e){const r=Wc([...e]),n=new Set(r),o=new Map(r.map(l=>[l._literalId,l])),a=new Ln(()=>null),i=r.reduce((l,s,c,d)=>(l.set(s,d.slice(c+1).filter(aP(s)).map(u=>(n.delete(u),u)).reduce((u,p)=>(u.some(Yn(p))||(u.push(p),a.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=>a.get(l),children:l=>i.get(l),flatten:()=>new Set([...n,...r.reduce((l,s)=>{const c=i.get(s);return c.length===0?(l.push(s),l):(c.length>1&&l.push(...c),l)},[])])}}const h8=(e,r)=>e.size>2&&r.size!==e.size?new Set(Wc([...Xb(e).flatten(),...r])):e.size>1?new Set(Wc([...e])):e;function XO(e,r,n){const o=c=>r.has(c);let a=new Set([e]);const i={incomers:new Set,subjects:new Set([e]),outgoers:new Set};let l=new Set(n.incoming.flatMap(c=>{if(i.subjects.add(c.target),i.incomers.add(c.source),a.add(c.target),c.target!==e){let p=c.target.parent;for(;p&&p!==e;)a.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(i.subjects.add(c.source),i.outgoers.add(c.target),a.add(c.source),c.source!==e){let p=c.source.parent;for(;p&&p!==e;)a.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:h8(l,i.incomers),incoming:new Set(n.incoming),subjects:h8(a,i.subjects),outgoing:new Set(n.outgoing),outgoers:h8(s,i.outgoers)}}function ZO(e,r,n,o="global"){const a=n?r.findView(n):null;if(o==="view")return He(a,'Scope view id is required when scope is "view"'),Ske(e,a,r);const i=r.element(e),l=xke(i.ascendingSiblings());return XO(i,l,{incoming:[...i.incoming()],outgoing:[...i.outgoing()]})}function Ske(e,r,n){const o=n.element(e);let a={incoming:m1(Bs(o.incoming(),s=>r.includesRelation(s.id))),outgoing:m1(Bs(o.outgoing(),s=>r.includesRelation(s.id)))};const i=aP(o),l=new Set([...o.ascendingSiblings(),...Ns(r.elements(),bke(s=>s.element),Bs(s=>s!==o&&i(s)))]);return XO(o,l,a)}var KO;(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),a=(0,e.isDirectedBetween)(n,r);return i=>o(i)||a(i)},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 a=>n(a)||o(a)}})(KO||(KO={}));const Eke=Symbol.for("nodejs.util.inspect.custom");function g1(e){return e===""||e===void 0?!0:Array.isArray(e)?e.length===0:Object.keys(e).length===0}function f8(...e){return io(Cke,e)}function Cke(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 $ke(e,r);if(e instanceof Set&&r instanceof Set)return zke(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]:a}=e,{[o]:i}=r;if(a!==i||!Object.is(a,i))return!1}return!0}function $ke(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e){let a=r.get(n);if(o!==a||!Object.is(o,a))return!1}return!0}function zke(e,r){if(e.size!==r.size)return!1;for(let n of e)if(!r.has(n))return!1;return!0}class QO{Aux;get style(){return ir(this,"style",()=>p1({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 qg(this.id)}get shape(){return this.style.shape}get color(){return this.style.color}get summary(){return ur.memoize(this,"summary",Os(this.$node))}get description(){return ur.memoize(this,"description",Wh(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=Ug(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 ir(this,Symbol.for("allOutgoing"),()=>Zc.from(new Set(this.outgoingModelRelationships()),new Set(this.outgoing())))}get allIncoming(){return ir(this,Symbol.for("allIncoming"),()=>Zc.from(new Set(this.incomingModelRelationships()),new Set(this.incoming())))}hasMetadata(){return!!this.$node.metadata&&!g1(this.$node.metadata)}getMetadata(r){return r?this.$node.metadata?.[r]:this.$node.metadata??{}}isTagged(r){return this.tags.includes(r)}}class JO extends QO{constructor(r,n){super(),this.$model=r,this.$node=n,this.id=n.id,this._literalId=n.id,this.title=n.title,this.hierarchyLevel=vb(n.id)}id;_literalId;title;hierarchyLevel;get parent(){return this.$model.parent(this)}get kind(){return this.$node.kind}get tags(){return ir(this,Symbol.for("tags"),()=>Ib([...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=a1(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 a of o.element.outgoing())r.add(a);for(const a of o.element.incoming())n.add(a)}return this._relationshipsFromInstances}outgoingModelRelationships(){return this.relationshipsFromInstances().outgoing.values()}incomingModelRelationships(){return this.relationshipsFromInstances().incoming.values()}internalModelRelationships(){const{outgoing:r,incoming:n}=this.relationshipsFromInstances();return qh(n,r)}}class eI extends QO{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=vb(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 ir(this,"style",()=>p1({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 ir(this,Symbol.for("tags"),()=>Ib([...this.$instance.tags??[],...this.element.tags]))}get kind(){return this.element.kind}get summary(){return ur.memoize(this,"summary",Os(this.$instance)??Os(this.element.$element))}get description(){return ur.memoize(this,"description",Wh(this.$instance)??Wh(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 Rke{constructor(r,n){this.instance=r,this.element=n}get id(){return this.instance.id}get _literalId(){return this.instance.id}get style(){return ir(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 jke{constructor(r,n){this.$model=r,this.$relationship=n,this.source=r.deploymentRef(n.source),this.target=r.deploymentRef(n.target);const o=Ug(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 Za(this.$relationship.title)?this.$relationship.title:null}get technology(){return this.$relationship.technology??null}get hasSummary(){return!!this.$relationship.summary&&!!this.$relationship.description&&!f8(this.$relationship.summary,this.$relationship.description)}get summary(){return ur.memoize(this,"summary",Os(this.$relationship))}get description(){return ur.memoize(this,"description",Wh(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&&!g1(this.$relationship.metadata)}getMetadata(r){return r?this.$relationship.metadata?.[r]:this.$relationship.metadata??{}}isTagged(r){return this.tags.includes(r)}}class Zc{constructor(r=new Set,n=new Set){this.model=r,this.deployment=n}static empty(){return new Zc}static from(r,n){return new Zc(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 Zc.from(qh(this.model,r.model),qh(this.deployment,r.deployment))}difference(r){return Zc.from(H_(this.model,r.model),H_(this.deployment,r.deployment))}union(r){return Zc.from(q_(this.model,r.model),q_(this.deployment,r.deployment))}}function tI(e,r){return n=>e.source===n.source&&e.target===n.target}function m8(e,r,n="directed"){if(e===r)return[];if(oP(e,r))return[];const o=qh(e.allOutgoing,r.allIncoming),a=o.size>0?new Ka(e,r,o):null;if(n==="directed")return a?[a]:[];const i=qh(e.allIncoming,r.allOutgoing),l=i.size>0?new Ka(r,e,i):null;return a&&l?[a,l]:a?[a]:l?[l]:[]}function rI(e,r,n="both"){if(e.allIncoming.size===0&&e.allOutgoing.size===0)return[];const o=[],a=[];for(const i of r)if(e!==i)for(const l of m8(e,i,n))l.source===e?o.push(l):a.push(l);return[...o,...a]}function Tke(e){return[...e].reduce((r,n,o,a)=>(o===a.length-1||r.push(...rI(n,a.slice(o+1),"both")),r),[])}const Ake={__proto__:null,findConnection:m8,findConnectionsBetween:rI,findConnectionsWithin:Tke};class Ka{constructor(r,n,o=new Set){this.source=r,this.target=n,this.relations=o,this.id=vke(`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()&&GO(this.relations,pO(tI(this)))}get directRelations(){return new Set(Bs(this.relations,tI(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 Ka(this.source,this.target,q_(this.relations,r.relations))}difference(r){return new Ka(this.source,this.target,H_(this.relations,r.relations))}intersect(r){return He(r instanceof Ka,"Cannot intersect connection with different type"),new Ka(this.source,this.target,qh(this.relations,r.relations))}equals(r){He(r instanceof Ka,"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&&C2e(this.relations,n.relations)}update(r){return new Ka(this.source,this.target,r)}[Eke](r,n,o){const a=this.toString();return Object.defineProperty(a,"constructor",{value:Ka,enumerable:!1}),a}toString(){return[this.expression,this.relations.size?" relations:":" relations: [ ]",...[...this.relations].map(r=>" "+r.expression)].join(` -`)}reversed(r=!1){if(!r)return new Ka(this.target,this.source);const[n]=m8(this.target,this.source,"directed");return n??new Ka(this.target,this.source,new Set)}}function Dke(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 Mke(...e){return io(Nke,e)}const Nke=e=>e.at(-1);function nI(e,r,n){return typeof r=="number"||r===void 0?o=>o.split(e,r):e.split(r,n)}function Zb(...e){return io(Object.values,e)}class Kb{constructor(r,n){this.$model=r,this.$element=n,this.id=this.$element.id,this._literalId=this.$element.id;const[o,a]=lke(this.id);o?(this.imported={from:o,fqn:a},this.hierarchyLevel=vb(a)):(this.imported=null,this.hierarchyLevel=vb(this.id))}Aux;id;_literalId;hierarchyLevel;imported;get name(){return qg(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 ir(this,Symbol.for("tags"),()=>Ib([...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&&!f8(this.$element.summary,this.$element.description)}get summary(){return ur.memoize(this,"summary",Os(this.$element))}get description(){return ur.memoize(this,"description",Wh(this.$element))}get technology(){return this.$element.technology??null}get links(){return this.$element.links??[]}get defaultView(){return ir(this,Symbol.for("defaultView"),()=>a1(this.scopedViews())??null)}get isRoot(){return this.parent===null}get style(){return ir(this,"style",()=>p1({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=Ug(this.id,r.id);return n?this.$model.element(n):null}children(){return this.$model.children(this)}descendants(r){return r?iP([...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 ir(this,Symbol.for("allOutgoing"),()=>new Set(this.outgoing()))}get allIncoming(){return ir(this,Symbol.for("allIncoming"),()=>new Set(this.incoming()))}views(){return ir(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 ir(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 Za(a1(this.deployments()))}deployments(){return this.$model.deployment.instancesOf(this)}hasMetadata(){return!!this.$element.metadata&&!g1(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,xa="/",g8=e=>{if(He(!e.includes(` -`),"View title cannot contain newlines"),e.includes(xa)){const r=e.split(xa).map(n=>n.trim()).filter(n=>n.length>0);return Il(r,1)?r:[""]}return[e.trim()]},Qb=e=>g8(e).join(xa),Pke=e=>{const r=g8(e);return Il(r,2)?r.slice(0,-1).join(xa):null},y8=e=>e.includes(xa)?g8(e).pop()??e:e.trim();class Bke{constructor(r){this.$model=r;const n=this.$deployments=r.$data.deployments,o=Zb(n.elements);for(const a of Wc(o)){const i=this.addElement(a);for(const l of i.tags)this.#c.get(l).add(i);i.isInstance()&&this.#r.get(i.element.id).add(i)}for(const a of Zb(n.relations)){const i=this.addRelation(a);for(const l of i.tags)this.#c.get(l).add(i)}}#e=new Map;#i=new Map;#t=new Ln(()=>new Set);#r=new Ln(()=>new Set);#l=new Set;#n=new Map;#s=new Ln(()=>new Set);#a=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 JO||r instanceof eI)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(h1.isInsideInstanceRef(r)){const{deployment:n,element:o}=r;return yke(this.#d,`${n}@${o}`,()=>new Rke(this.instance(n),this.$model.element(o)))}return this.element(r.deployment)}relationships(){return this.#n.values()}relationship(r){return mt(this.#n.get(yr(r)),`DeploymentRelationModel ${r} 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.#i.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 a of o)a.id!==n&&(yield a)}*ancestors(r){let n=yr(r),o;for(;o=this.#i.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 a of this.#s.get(o))switch(!0){case n==="all":case(n==="direct"&&a.target.id===o):case(n==="to-descendants"&&a.target.id!==o):yield a;break}}*outgoing(r,n="all"){const o=yr(r);for(const a of this.#a.get(o))switch(!0){case n==="all":case(n==="direct"&&a.source.id===o):case(n==="from-descendants"&&a.source.id!==o):yield a;break}}addElement(r){if(this.#e.has(r.id))throw new Error(`Element ${r.id} already exists`);const n=p2e(r)?new JO(this,Object.freeze(r)):new eI(this,Object.freeze(r),this.$model.element(r.element));this.#e.set(n.id,n);const o=yb(n.id);return o?(He(this.#e.has(o),`Parent ${o} of ${n.id} not found`),this.#i.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 jke(this,Object.freeze(r));this.#n.set(n.id,n),this.#s.get(n.target.id).add(n),this.#a.get(n.source.id).add(n);const o=n.boundary?.id??null;if(o)for(const a of[o,...ku(o)])this.#o.get(a).add(n);for(const a of ku(n.source.id)){if(a===o)break;this.#a.get(a).add(n)}for(const a of ku(n.target.id)){if(a===o)break;this.#s.get(a).add(n)}return n}}class oI{constructor(r,n){this.model=r,this.$relationship=n,this.source=r.element(h1.flatten(n.source)),this.target=r.element(h1.flatten(n.target));const o=Ug(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 Za(this.$relationship.title)?this.$relationship.title:null}get technology(){return Za(this.$relationship.technology)?this.$relationship.technology:null}get hasSummary(){return!!this.$relationship.summary&&!!this.$relationship.description&&!f8(this.$relationship.summary,this.$relationship.description)}get summary(){return ur.memoize(this,"summary",Os(this.$relationship))}get description(){return ur.memoize(this,"description",Wh(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&&!g1(this.$relationship.metadata)}getMetadata(r){return r?this.$relationship.metadata?.[r]:this.$relationship.metadata??{}}isTagged(r){return this.tags.includes(r)}}class Oke{constructor(r,n,o,a){this.source=o,this.target=a,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()?BO(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 u1(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 Ike{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 ir(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 Za(this.$node.modelRef)}hasDeployment(){return Za(this.$node.deploymentRef)}hasDeployedInstance(){return this.hasElement()&&this.hasDeployment()}isGroup(){return ake(this.$node)}isTagged(r){return this.tags.includes(r)}}class v8{Aux;#e;#i=new Set;#t=new Map;#r=new Map;#l=new Set;#n=new Set;#s=new Set;#a=new Ln(r=>new Set);#o;id;$model;title;folder;viewPath;constructor(r,n,o,a){this.$model=r,this.#e=o,this.id=o.id,this.folder=n,this.#o=a;for(const i of this.#e.nodes){const l=new Ike(this,Object.freeze(i));this.#t.set(i.id,l),i.parent||this.#i.add(l),i.deploymentRef&&this.#n.add(i.deploymentRef),i.modelRef&&this.#l.add(i.modelRef);for(const s of l.tags)this.#a.get(s).add(l)}for(const i of this.#e.edges){const l=new Oke(this,Object.freeze(i),this.node(i.source),this.node(i.target));for(const s of l.tags)this.#a.get(s).add(l);for(const s of i.relations)this.#s.add(s);this.#r.set(i.id,l)}this.title=o.title?y8(o.title):null,this.viewPath=o.title?Qb(o.title):o.id}get $styles(){return this.$model.$styles}get _type(){return this.#e[n1]}get stage(){return this.#e[$u]}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 ir(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.#a.keys()]}get $view(){if(!this.isLayouted()||"drifts"in this.#e)return this.#e;const r=this.#o;return r?ir(this,"withDriftReasons",()=>oke(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?ir(this,"snapshotWithManualLayout",()=>NO(this.#e,r)):null}roots(){return this.#i.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)?f1(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[$u]==="computed"}isLayouted(){return this.#e[$u]==="layouted"}isDiagram(){return this.#e[$u]==="layouted"}isElementView(){return this.#e[n1]==="element"}isScopedElementView(){return this.#e[n1]==="element"&&Za(this.#e.viewOf)}isDeploymentView(){return this.#e[n1]==="deployment"}isDynamicView(){return this.#e[n1]==="dynamic"}}class Jb{$model;path;title;isRoot;parentPath;defaultViewId;constructor(r,n,o){this.$model=r,this.path=n.join("/"),this.isRoot=this.path==="",this.title=Mke(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"),ir(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"),Dke(this.parentPath)?null:this.$model.viewFolder(this.parentPath)}get children(){return this.$model.viewFolderItems(this.path)}get folders(){return ir(this,"folders",()=>{const r=[];for(const n of this.children)n instanceof Jb&&r.push(n);return r})}get views(){return ir(this,"views",()=>{const r=[];for(const n of this.children)n instanceof v8&&r.push(n);return r})}}class Du{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 Du(r)}static create(r){return new Du(r)}static fromDump(r){const{_stage:n="layouted",projectId:o="unknown",project:a,globals:i,imports:l,deployments:s,views:c,relations:d,elements:u,specification:p}=r;return new Du({[$u]:n,projectId:o,project:a,globals:{predicates:i?.predicates??{},dynamicPredicates:i?.dynamicPredicates??{},styles:i?.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 o1(r.elements)){const o=this.addElement(n);for(const a of o.tags)this._allTags.get(a).add(o)}for(const[n,o]of o1(r.imports??{}))for(const a of Wc(o)){const i=this.addImportedElement(n,a);for(const l of i.tags)this._allTags.get(l).add(i)}for(const n of Zb(r.relations)){const o=this.addRelation(n);for(const a of o.tags)this._allTags.get(a).add(o)}if(this.deployment=new Bke(this),hO(r,"computed")||hO(r,"layouted")){const n=nP(xa),o=Ns(Zb(r.views),Ob(i=>({view:i,path:Qb(i.title??i.id),folderPath:i.title&&Pke(i.title)||""})),p8((i,l)=>n(i.folderPath,l.folderPath))),a=i=>{let l=this._viewFolders.get(i);if(!l){const s=nI(i,xa);He(Il(s,1),`View group path "${i}" must have at least one element`);let c;i===""?c=o.find(d=>d.view.id==="index"):c=o.find(d=>d.path===i),l=new Jb(this,s,c?.view.id),this._viewFolders.set(i,l)}return l};this._rootViewFolder=a("");for(const{folderPath:i}of o)this._viewFolders.has(i)||nI(i,xa).reduce((l,s)=>{const c=l.join(xa),d=g1(c)?s:c+xa+s,u=a(d);return this._viewFolderItems.get(c).add(u),l.push(s),l},[]);for(const{view:i,folderPath:l}of o){const s=new v8(this,a(l),i,r.manualLayouts?.[i.id]);this._viewFolderItems.get(l).add(s),this._views.set(i.id,s);for(const c of s.tags)this._allTags.get(c).add(s)}}else this._rootViewFolder=new Jb(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 ir(this,"styles",()=>JN.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[$u]}get projectId(){return this.$data.projectId??"default"}get project(){return this.$data.project??ir(this,Symbol.for("project"),()=>({id:this.projectId}))}get specification(){return this.$data.specification}get globals(){return ir(this,Symbol.for("globals"),()=>({predicates:{...this.$data.globals?.predicates},dynamicPredicates:{...this.$data.globals?.dynamicPredicates},styles:{...this.$data.globals?.styles}}))}element(r){if(r instanceof Kb)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 a=this._relations.get(o)??null;return a||n==="model"?mt(a,`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),a=o?this._children.get(o.id).values():this.roots();for(const i of a)i.id!==n&&(yield i)}*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 a of this._incoming.get(o))switch(!0){case n==="all":case(n==="direct"&&a.target.id===o):case(n==="to-descendants"&&a.target.id!==o):yield a;break}}*outgoing(r,n="all"){const o=yr(r);for(const a of this._outgoing.get(o))switch(!0){case n==="all":case(n==="direct"&&a.source.id===o):case(n==="from-descendants"&&a.source.id!==o):yield a;break}}get tags(){return ir(this,"tags",()=>p8([...this._allTags.keys()],gb))}get tagsSortedByUsage(){return ir(this,"tagsSortedByUsage",()=>Ns([...this._allTags.entries()],Ob(([r,n])=>({tag:r,count:n.size,tagged:n})),p8((r,n)=>gb(r.tag,n.tag)),kO([Ru("count"),"desc"])))}findByTag(r,n){return Bs(this._allTags.get(r),o=>n==="elements"?o instanceof Kb:n==="views"?o instanceof v8:n==="relationships"?o instanceof oI:!0)}*elementsOfKind(r){for(const n of this._elements.values())n.kind===r&&(yield n)}*elementsWhere(r){const n=zu(r);for(const o of this._elements.values())n(o)&&(yield o)}*relationshipsWhere(r){const n=zu(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 Kb(this,Object.freeze(r));this._elements.set(n.id,n);const o=yb(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(!ike(n.id),"Imported element already has global FQN");const o=PO(r,n.id);if(this._elements.has(o))throw new Error(`Element ${o} already exists`);const a=new Kb(this,Object.freeze({...n,id:o}));this._elements.set(a.id,a);let i=yb(a.id);for(;i;){if(i.includes(".")&&this._elements.has(i))return this._parents.set(a.id,this.element(i)),this._children.get(i).add(a),a;i=yb(i)}return this._rootElements.add(a),a}addRelation(r){if(this._relations.has(r.id))throw new Error(`Relation ${r.id} already exists`);const n=new oI(this,Object.freeze(r)),{source:o,target:a}=n;this._relations.set(n.id,n),this._incoming.get(a.id).add(n),this._outgoing.get(o.id).add(n);const i=Ug(o.id,a.id);if(i)for(const l of[i,...ku(i)])this._internal.get(l).add(n);for(const l of ku(o.id)){if(l===i)break;this._outgoing.get(l).add(n)}for(const l of ku(a.id)){if(l===i)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:{}})})(Du||(Du={}));function ex(e){return typeof e=="object"&&e!=null&&!Array.isArray(e)}var Lke=e=>typeof e=="object"&&e!==null;function Mu(e){return Object.fromEntries(Object.entries(e??{}).filter(([r,n])=>n!==void 0))}var Fke=e=>e==="base";function Vke(e){return e.slice().filter(r=>!Fke(r))}function aI(e){return String.fromCharCode(e+(e>25?39:97))}function qke(e){let r="",n;for(n=Math.abs(e);n>52;n=n/52|0)r=aI(n%52)+r;return aI(n%52)+r}function Hke(e,r){let n=r.length;for(;n;)e=e*33^r.charCodeAt(--n);return e}function Uke(e){return qke(Hke(5381,e)>>>0)}var iI=/\s*!(important)?/i;function Wke(e){return typeof e=="string"?iI.test(e):!1}function Gke(e){return typeof e=="string"?e.replace(iI,"").trim():e}function b8(e){return typeof e=="string"?e.replaceAll(" ","_"):e}var Zn=e=>{const r=new Map;return(...n)=>{const o=JSON.stringify(n);if(r.has(o))return r.get(o);const a=e(...n);return r.set(o,a),a}},Yke=new Set(["__proto__","constructor","prototype"]);function x8(...e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{if(Yke.has(o))return;const a=r[o],i=n[o];ex(a)&&ex(i)?r[o]=x8(a,i):r[o]=i}),r),{})}var Xke=e=>e!=null;function w8(e,r,n={}){const{stop:o,getKey:a}=n;function i(l,s=[]){if(Lke(l)){const c={};for(const[d,u]of Object.entries(l)){const p=a?.(d,u)??d,f=[...s,p];if(o?.(l,f))return r(l,s);const g=i(u,f);Xke(g)&&(c[p]=g)}return c}return r(l,s)}return i(e)}function Zke(e,r){return Array.isArray(e)?e.map(n=>r(n)):ex(e)?w8(e,n=>r(n)):r(e)}function Kke(e,r){return e.reduce((n,o,a)=>{const i=r[a];return o!=null&&(n[i]=o),n},{})}function lI(e,r,n=!0){const{utility:o,conditions:a}=r,{hasShorthand:i,resolveShorthand:l}=o;return w8(e,s=>Array.isArray(s)?Kke(s,a.breakpoints.keys):s,{stop:s=>Array.isArray(s),getKey:n?s=>i?l(s):s:void 0})}var Qke={shift:e=>e,finalize:e=>e,breakpoints:{keys:[]}},Jke=e=>typeof e=="string"?e.replaceAll(/[\n\s]+/g," "):e;function sI(e){const{utility:r,hash:n,conditions:o=Qke}=e,a=l=>[r.prefix,l].filter(Boolean).join("-"),i=(l,s)=>{let c;if(n){const d=[...o.finalize(l),s];c=a(r.toHash(d,Uke))}else c=[...o.finalize(l),a(s)].join(":");return c};return Zn(({base:l,...s}={})=>{const c=Object.assign(s,l),d=lI(c,e),u=new Set;return w8(d,(p,f)=>{if(p==null)return;const g=Wke(p),[v,...w]=o.shift(f),x=Vke(w),k=r.transform(v,Gke(Jke(p)));let C=i(x,k.className);g&&(C=`${C}!`),u.add(C)}),Array.from(u).join(" ")})}function e4e(...e){return e.flat().filter(r=>ex(r)&&Object.keys(Mu(r)).length>0)}function t4e(e){function r(a){const i=e4e(...a);return i.length===1?i:i.map(l=>lI(l,e))}function n(...a){return x8(...r(a))}function o(...a){return Object.assign({},...r(a))}return{mergeCss:Zn(n),assignCss:o}}var r4e=/([A-Z])/g,n4e=/^ms-/,o4e=Zn(e=>e.startsWith("--")?e:e.replace(r4e,"-$1").replace(n4e,"-ms-").toLowerCase()),a4e=["min","max","clamp","calc"],i4e=new RegExp(`^(${a4e.join("|")})\\(.*\\)`),l4e=e=>typeof e=="string"&&i4e.test(e),s4e="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,%",c4e=`(?:${s4e.split(",").join("|")})`,d4e=new RegExp(`^[+-]?[0-9]*.?[0-9]+(?:[eE][+-]?[0-9]+)?${c4e}$`),u4e=e=>typeof e=="string"&&d4e.test(e),p4e=e=>typeof e=="string"&&/^var\(--.+\)$/.test(e),y1={map:Zke,isCssFunction:l4e,isCssVar:p4e,isCssUnit:u4e},v1=(e,r)=>{if(!e?.defaultValues)return r;const n=typeof e.defaultValues=="function"?e.defaultValues(r):e.defaultValues;return Object.assign({},n,Mu(r))},h4e=(e={})=>{const r=o=>({className:[e.className,o].filter(Boolean).join("__"),base:e.base?.[o]??{},variants:{},defaultVariants:e.defaultVariants??{},compoundVariants:e.compoundVariants?k8(e.compoundVariants,o):[]}),n=(e.slots??[]).map(o=>[o,r(o)]);for(const[o,a]of Object.entries(e.variants??{}))for(const[i,l]of Object.entries(a))n.forEach(([s,c])=>{c.variants[o]??={},c.variants[o][i]=l[s]??{}});return Object.fromEntries(n)},k8=(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),a=l=>{const s={};for(let c=0;ca(Array.isArray(l)?l:o.filter(l));return r.map(i).concat(a(o))}var _8=(...e)=>{const r=e.reduce((n,o)=>(o&&o.forEach(a=>n.add(a)),n),new Set([]));return Array.from(r)},cI=["htmlSize","htmlTranslate","htmlWidth","htmlHeight"];function f4e(e){return cI.includes(e)?e.replace("html","").toLowerCase():e}function S8(e){return Object.fromEntries(Object.entries(e).map(([r,n])=>[f4e(r),n]))}S8.keys=cI;const m4e="_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",dI=new Set(m4e.split(",")),g4e=/^@|&|&$/;function uI(e){return dI.has(e)||g4e.test(e)}const y4e=/^_/,v4e=/&|@/;function pI(e){return e.map(r=>dI.has(r)?r.replace(y4e,""):v4e.test(r)?`[${b8(r.trim())}]`:r)}function hI(e){return e.sort((r,n)=>{const o=uI(r),a=uI(n);return o&&!a?1:!o&&a?-1:0})}const b4e="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,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",fI=new Map,mI=new Map;b4e.split(",").forEach(e=>{const[r,n]=e.split(":"),[o,...a]=n.split("/");fI.set(r,o),a.length&&a.forEach(i=>{mI.set(i==="1"?o:i,r)})});const gI=e=>mI.get(e)||e,yI={conditions:{shift:hI,finalize:pI,breakpoints:{keys:["base","xs","sm","md","lg","xl"]}},utility:{transform:(e,r)=>{const n=gI(e);return{className:`${fI.get(n)||o4e(n)}_${b8(r)}`}},hasShorthand:!0,toHash:(e,r)=>r(e.join(":")),resolveShorthand:gI}},x4e=sI(yI),fe=(...e)=>x4e(Nu(...e));fe.raw=(...e)=>Nu(...e);const{mergeCss:Nu}=t4e(yI);function Ge(){let e="",r=0,n;for(;r({base:{},variants:{},defaultVariants:{},compoundVariants:[],...e});function b1(e){const{base:r,variants:n,defaultVariants:o,compoundVariants:a}=vI(e),i=f=>({...o,...Mu(f)});function l(f={}){const g=i(f);let v={...r};for(const[x,k]of Object.entries(g))n[x]?.[k]&&(v=Nu(v,n[x][k]));const w=E8(a,g);return Nu(v,w)}function s(f){const g=vI(f.config),v=_8(f.variantKeys,Object.keys(n));return b1({base:Nu(r,g.base),variants:Object.fromEntries(v.map(w=>[w,Nu(n[w],g.variants[w])])),defaultVariants:x8(o,g.defaultVariants),compoundVariants:[...a,...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(Zn(c),{__cva__:!0,variantMap:p,variantKeys:d,raw:l,config:e,merge:s,splitVariantProps:u,getVariantProps:i})}function E8(e,r){let n={};return e.forEach(o=>{Object.entries(o).every(([a,i])=>a==="css"?!0:(Array.isArray(i)?i:[i]).some(l=>r[a]===l))&&(n=Nu(n,o.css))}),n}function w4e(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 k4e(e){const r=Object.entries(h4e(e)).map(([p,f])=>[p,b1(f)]),n=e.defaultVariants??{},o=r.reduce((p,[f,g])=>(e.className&&(p[f]=g.config.className),p),{});function a(p){const f=r.map(([g,v])=>[g,Ge(v(p),o[g])]);return Object.fromEntries(f)}function i(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,...Mu(p)}),u=Object.fromEntries(Object.entries(l).map(([p,f])=>[p,Object.keys(f)]));return Object.assign(Zn(a),{__cva__:!1,raw:i,config:e,variantMap:u,variantKeys:s,classNameMap:o,splitVariantProps:c,getVariantProps:d})}var _4e={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 a=S.forwardRef(({color:i="currentColor",size:l=24,stroke:s=2,title:c,className:d,children:u,...p},f)=>S.createElement("svg",{ref:f,..._4e[e],width:l,height:l,className:["tabler-icon",`tabler-icon-${r}`,d].join(" "),...e==="filled"?{fill:i}:{strokeWidth:s,stroke:i},...p},[c&&S.createElement("title",{key:"svg-title"},c),...o.map(([g,v])=>S.createElement(g,v)),...Array.isArray(u)?u:[u]]));return a.displayName=`${n}`,a},S4e=[["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"}]],bI=wt("outline","cylinder","Cylinder",S4e),E4e=[["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"}]],C4e=wt("outline","rectangular-prism","RectangularPrism",E4e),$4e=[["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"}]],z4e=wt("outline","reorder","Reorder",$4e),R4e=[["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"}]],j4e=wt("outline","user","User",R4e),T4e=[["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"}]],A4e=wt("outline","device-mobile","DeviceMobile",T4e),D4e=[["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"}]],M4e=wt("outline","browser","Browser",D4e),C8=S.createContext(null);function N4e({value:e,children:r}){return S.useContext(C8)?y.jsx(y.Fragment,{children:r}):y.jsx(C8.Provider,{value:e,children:r})}function tx({element:e,className:r,style:n}){const o=S.useContext(C8);if(!e||!e.icon||e.icon==="none")return null;let a;return e.icon.startsWith("http://")||e.icon.startsWith("https://")?a=y.jsx("img",{src:e.icon,alt:e.title}):o&&(a=y.jsx(o,{node:e})),a?y.jsx("div",{className:Ge(r,"likec4-element-icon"),"data-likec4-icon":e.icon,style:n,children:a}):null}const P4e={browser:M4e,cylinder:bI,mobile:A4e,person:j4e,queue:z4e,rectangle:C4e,storage:bI};function B4e({element:e,className:r}){const n=y.jsx(tx,{element:e,className:r});if(n)return n;const o=P4e[e.shape];return y.jsx("div",{className:Ge(r,"likec4-shape-icon"),children:y.jsx(o,{})})}function Yh(e){const r=S.useRef(e);return r.current=e,S.useMemo(()=>Object.freeze({get current(){return r.current}}),[])}function xI(e){const r=Yh(e);S.useEffect(()=>()=>{r.current()},[])}function $8(e,r,n,o=0){const a=S.useRef(void 0),i=S.useRef(void 0),l=S.useRef(e),s=S.useRef(void 0),c=()=>{a.current&&(clearTimeout(a.current),a.current=void 0),i.current&&(clearTimeout(i.current),i.current=void 0)};return xI(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){a.current&&clearTimeout(a.current),s.current={args:p,this:this},a.current=setTimeout(d,n),o>0&&!i.current&&(i.current=setTimeout(d,o))};return Object.defineProperties(u,{length:{value:e.length},name:{value:`${e.name||"anonymous"}__debounced__${n}`}}),u},[n,o,...r])}const O4e=()=>{},rx=typeof globalThis<"u"&&typeof navigator<"u"&&typeof document<"u";function I4e(e){const r=Yh(e),n=S.useRef(0),o=S.useCallback(()=>{rx&&n.current&&(cancelAnimationFrame(n.current),n.current=0)},[]);return xI(o),[S.useMemo(()=>{const a=(...i)=>{rx&&(o(),n.current=requestAnimationFrame(()=>{r.current(...i),n.current=0}))};return Object.defineProperties(a,{length:{value:e.length},name:{value:`${e.name||"anonymous"}__raf`}}),a},[]),o]}const L4e=(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 F4e(e,r,n=L4e,o=S.useEffect,...a){const i=S.useRef(void 0);(i.current===void 0||rx&&!n(i.current,r))&&(i.current=r),o(e,i.current,...a)}function wI(){const e=S.useRef(!0);return S.useEffect(()=>{e.current=!1},[]),e.current}const z8=rx?S.useLayoutEffect:S.useEffect;function V4e(e){S.useEffect(()=>{e()},[])}function kI(e,r){const[n,o]=I4e(e);S.useEffect(()=>(n(),o),r)}const q4e=e=>(e+1)%Number.MAX_SAFE_INTEGER;function H4e(){const[,e]=S.useState(0);return S.useCallback(()=>{e(q4e)},[])}function U4e(e,r){const n=wI();S.useEffect(n?O4e:e,r)}const W4e=e=>{e&&clearTimeout(e)};function nx(e,r){const n=Yh(e),o=Yh(r),a=S.useRef(null),i=S.useCallback(()=>{W4e(a.current)},[]),l=S.useCallback(()=>{o.current!==void 0&&(i(),a.current=setTimeout(()=>{n.current()},o.current))},[]);return S.useEffect(()=>(l(),i),[r]),[i,l]}const _I=(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 ox(){for(var e=0,r=arguments.length,n={},o;e=0&&(o=n.slice(a+1),n=n.slice(0,a)),n&&!r.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:o}})}ax.prototype=ox.prototype={constructor:ax,on:function(e,r){var n=this._,o=Y4e(e+"",n),a,i=-1,l=o.length;if(arguments.length<2){for(;++i0)for(var n=new Array(a),o=0,a,i;o=0&&(r=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),EI.hasOwnProperty(r)?{space:EI[r],local:e}:e}function Z4e(e){return function(){var r=this.ownerDocument,n=this.namespaceURI;return n===R8&&r.documentElement.namespaceURI===R8?r.createElement(e):r.createElementNS(n,e)}}function K4e(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function CI(e){var r=ix(e);return(r.local?K4e:Z4e)(r)}function Q4e(){}function j8(e){return e==null?Q4e:function(){return this.querySelector(e)}}function J4e(e){typeof e!="function"&&(e=j8(e));for(var r=this._groups,n=r.length,o=new Array(n),a=0;a=_&&(_=C+1);!(z=x[_])&&++_=0;)(l=o[a])&&(i&&l.compareDocumentPosition(i)^4&&i.parentNode.insertBefore(l,i),i=l);return this}function S5e(e){e||(e=E5e);function r(p,f){return p&&f?e(p.__data__,f.__data__):!p-!f}for(var n=this._groups,o=n.length,a=new Array(o),i=0;ir?1:e>=r?0:NaN}function C5e(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function $5e(){return Array.from(this)}function z5e(){for(var e=this._groups,r=0,n=e.length;r1?this.each((r==null?I5e:typeof r=="function"?F5e:L5e)(e,r,n??"")):Xh(this.node(),e)}function Xh(e,r){return e.style.getPropertyValue(r)||TI(e).getComputedStyle(e,null).getPropertyValue(r)}function q5e(e){return function(){delete this[e]}}function H5e(e,r){return function(){this[e]=r}}function U5e(e,r){return function(){var n=r.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function W5e(e,r){return arguments.length>1?this.each((r==null?q5e:typeof r=="function"?U5e:H5e)(e,r)):this.node()[e]}function AI(e){return e.trim().split(/^|\s+/)}function T8(e){return e.classList||new DI(e)}function DI(e){this._node=e,this._names=AI(e.getAttribute("class")||"")}DI.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 MI(e,r){for(var n=T8(e),o=-1,a=r.length;++o=0&&(n=r.slice(o+1),r=r.slice(0,o)),{type:r,name:n}})}function x6e(e){return function(){var r=this.__on;if(r){for(var n=0,o=-1,a=r.length,i;n()=>e;function D8(e,{sourceEvent:r,subject:n,target:o,identifier:a,active:i,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:a,enumerable:!0,configurable:!0},active:{value:i,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}})}D8.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function j6e(e){return!e.ctrlKey&&!e.button}function T6e(){return this.parentNode}function A6e(e,r){return r??{x:e.x,y:e.y}}function D6e(){return navigator.maxTouchPoints||"ontouchstart"in this}function LI(){var e=j6e,r=T6e,n=A6e,o=D6e,a={},i=ox("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,R6e).on("touchend.drag touchcancel.drag",C).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g($,z){if(!(u||!e.call(this,$,z))){var j=_(this,r.call(this,$,z),$,z,"mouse");j&&(ka($.view).on("mousemove.drag",v,w1).on("mouseup.drag",w,w1),OI($.view),A8($),d=!1,s=$.clientX,c=$.clientY,j("start",$))}}function v($){if(Zh($),!d){var z=$.clientX-s,j=$.clientY-c;d=z*z+j*j>p}a.mouse("drag",$)}function w($){ka($.view).on("mousemove.drag mouseup.drag",null),II($.view,d),Zh($),a.mouse("end",$)}function x($,z){if(e.call(this,$,z)){var j=$.changedTouches,A=r.call(this,$,z),R=j.length,T,O;for(T=0;T>8&15|r>>4&240,r>>4&15|r&240,(r&15)<<4|r&15,1):n===8?dx(r>>24&255,r>>16&255,r>>8&255,(r&255)/255):n===4?dx(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=N6e.exec(e))?new Jo(r[1],r[2],r[3],1):(r=P6e.exec(e))?new Jo(r[1]*255/100,r[2]*255/100,r[3]*255/100,1):(r=B6e.exec(e))?dx(r[1],r[2],r[3],r[4]):(r=O6e.exec(e))?dx(r[1]*255/100,r[2]*255/100,r[3]*255/100,r[4]):(r=I6e.exec(e))?YI(r[1],r[2]/100,r[3]/100,1):(r=L6e.exec(e))?YI(r[1],r[2]/100,r[3]/100,r[4]):VI.hasOwnProperty(e)?UI(VI[e]):e==="transparent"?new Jo(NaN,NaN,NaN,0):null}function UI(e){return new Jo(e>>16&255,e>>8&255,e&255,1)}function dx(e,r,n,o){return o<=0&&(e=r=n=NaN),new Jo(e,r,n,o)}function q6e(e){return e instanceof k1||(e=Pu(e)),e?(e=e.rgb(),new Jo(e.r,e.g,e.b,e.opacity)):new Jo}function N8(e,r,n,o){return arguments.length===1?q6e(e):new Jo(e,r,n,o??1)}function Jo(e,r,n,o){this.r=+e,this.g=+r,this.b=+n,this.opacity=+o}M8(Jo,N8,FI(k1,{brighter(e){return e=e==null?cx:Math.pow(cx,e),new Jo(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?_1:Math.pow(_1,e),new Jo(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Jo(Bu(this.r),Bu(this.g),Bu(this.b),ux(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:WI,formatHex:WI,formatHex8:H6e,formatRgb:GI,toString:GI}));function WI(){return`#${Ou(this.r)}${Ou(this.g)}${Ou(this.b)}`}function H6e(){return`#${Ou(this.r)}${Ou(this.g)}${Ou(this.b)}${Ou((isNaN(this.opacity)?1:this.opacity)*255)}`}function GI(){const e=ux(this.opacity);return`${e===1?"rgb(":"rgba("}${Bu(this.r)}, ${Bu(this.g)}, ${Bu(this.b)}${e===1?")":`, ${e})`}`}function ux(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Bu(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Ou(e){return e=Bu(e),(e<16?"0":"")+e.toString(16)}function YI(e,r,n,o){return o<=0?e=r=n=NaN:n<=0||n>=1?e=r=NaN:r<=0&&(e=NaN),new Ui(e,r,n,o)}function XI(e){if(e instanceof Ui)return new Ui(e.h,e.s,e.l,e.opacity);if(e instanceof k1||(e=Pu(e)),!e)return new Ui;if(e instanceof Ui)return e;e=e.rgb();var r=e.r/255,n=e.g/255,o=e.b/255,a=Math.min(r,n,o),i=Math.max(r,n,o),l=NaN,s=i-a,c=(i+a)/2;return s?(r===i?l=(n-o)/s+(n0&&c<1?0:l,new Ui(l,s,c,e.opacity)}function U6e(e,r,n,o){return arguments.length===1?XI(e):new Ui(e,r,n,o??1)}function Ui(e,r,n,o){this.h=+e,this.s=+r,this.l=+n,this.opacity=+o}M8(Ui,U6e,FI(k1,{brighter(e){return e=e==null?cx:Math.pow(cx,e),new Ui(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?_1:Math.pow(_1,e),new Ui(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,a=2*n-o;return new Jo(P8(e>=240?e-240:e+120,a,o),P8(e,a,o),P8(e<120?e+240:e-120,a,o),this.opacity)},clamp(){return new Ui(ZI(this.h),px(this.s),px(this.l),ux(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=ux(this.opacity);return`${e===1?"hsl(":"hsla("}${ZI(this.h)}, ${px(this.s)*100}%, ${px(this.l)*100}%${e===1?")":`, ${e})`}`}}));function ZI(e){return e=(e||0)%360,e<0?e+360:e}function px(e){return Math.max(0,Math.min(1,e||0))}function P8(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 B8=e=>()=>e;function W6e(e,r){return function(n){return e+n*r}}function G6e(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 Y6e(e){return(e=+e)==1?KI:function(r,n){return n-r?G6e(r,n,e):B8(isNaN(r)?n:r)}}function KI(e,r){var n=r-e;return n?W6e(e,n):B8(isNaN(e)?r:e)}const hx=(function e(r){var n=Y6e(r);function o(a,i){var l=n((a=N8(a)).r,(i=N8(i)).r),s=n(a.g,i.g),c=n(a.b,i.b),d=KI(a.opacity,i.opacity);return function(u){return a.r=l(u),a.g=s(u),a.b=c(u),a.opacity=d(u),a+""}}return o.gamma=e,o})(1);function X6e(e,r){r||(r=[]);var n=e?Math.min(r.length,e.length):0,o=r.slice(),a;return function(i){for(a=0;an&&(i=r.slice(n,i),s[l]?s[l]+=i:s[++l]=i),(o=o[0])===(a=a[0])?s[l]?s[l]+=a:s[++l]=a:(s[++l]=null,c.push({i:l,x:Hl(o,a)})),n=I8.lastIndex;return n180?u+=360:u-d>180&&(d+=360),f.push({i:p.push(a(p)+"rotate(",null,o)-2,x:Hl(d,u)})):u&&p.push(a(p)+"rotate("+u+o)}function s(d,u,p,f){d!==u?f.push({i:p.push(a(p)+"skewX(",null,o)-2,x:Hl(d,u)}):u&&p.push(a(p)+"skewX("+u+o)}function c(d,u,p,f,g,v){if(d!==p||u!==f){var w=g.push(a(g)+"scale(",null,",",null,")");v.push({i:w-4,x:Hl(d,p)},{i:w-2,x:Hl(u,f)})}else(p!==1||f!==1)&&g.push(a(g)+"scale("+p+","+f+")")}return function(d,u){var p=[],f=[];return d=e(d),u=e(u),i(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;--Qh}function lL(){Iu=(yx=R1.now())+vx,Qh=C1=0;try{d_e()}finally{Qh=0,p_e(),Iu=0}}function u_e(){var e=R1.now(),r=e-yx;r>oL&&(vx-=r,yx=e)}function p_e(){for(var e,r=gx,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:gx=n);z1=e,F8(o)}function F8(e){if(!Qh){C1&&(C1=clearTimeout(C1));var r=e-Iu;r>24?(e<1/0&&(C1=setTimeout(lL,e-R1.now()-vx)),$1&&($1=clearInterval($1))):($1||(yx=R1.now(),$1=setInterval(u_e,oL)),Qh=1,aL(lL))}}function sL(e,r,n){var o=new bx;return r=r==null?0:+r,o.restart(a=>{o.stop(),e(a+r)},r,n),o}var h_e=ox("start","end","cancel","interrupt"),f_e=[],cL=0,dL=1,V8=2,xx=3,uL=4,q8=5,wx=6;function kx(e,r,n,o,a,i){var l=e.__transition;if(!l)e.__transition={};else if(n in l)return;m_e(e,n,{name:r,index:o,group:a,on:h_e,tween:f_e,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:cL})}function H8(e,r){var n=Wi(e,r);if(n.state>cL)throw new Error("too late; already scheduled");return n}function Ul(e,r){var n=Wi(e,r);if(n.state>xx)throw new Error("too late; already running");return n}function Wi(e,r){var n=e.__transition;if(!n||!(n=n[r]))throw new Error("transition not found");return n}function m_e(e,r,n){var o=e.__transition,a;o[r]=n,n.timer=iL(i,0,n.time);function i(d){n.state=dL,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!==dL)return c();for(u in o)if(g=o[u],g.name===n.name){if(g.state===xx)return sL(l);g.state===uL?(g.state=wx,g.timer.stop(),g.on.call("interrupt",e,e.__data__,g.index,g.group),delete o[u]):+uV8&&o.state=0&&(r=r.slice(0,n)),!r||r==="start"})}function U_e(e,r,n){var o,a,i=H_e(r)?H8:Ul;return function(){var l=i(this,e),s=l.on;s!==o&&(a=(o=s).copy()).on(r,n),l.on=a}}function W_e(e,r){var n=this._id;return arguments.length<2?Wi(this.node(),n).on.on(e):this.each(U_e(n,e,r))}function G_e(e){return function(){var r=this.parentNode;for(var n in this.__transition)if(+n!==e)return;r&&r.removeChild(this)}}function Y_e(){return this.on("end.remove",G_e(this._id))}function X_e(e){var r=this._name,n=this._id;typeof e!="function"&&(e=j8(e));for(var o=this._groups,a=o.length,i=new Array(a),l=0;l()=>e;function x8e(e,{sourceEvent:r,target:n,transform:o,dispatch:a}){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:a}})}function Vs(e,r,n){this.k=e,this.x=r,this.y=n}Vs.prototype={constructor:Vs,scale:function(e){return e===1?this:new Vs(this.k*e,this.x,this.y)},translate:function(e,r){return e===0&r===0?this:new Vs(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 Ex=new Vs(1,0,0);mL.prototype=Vs.prototype;function mL(e){for(;!e.__zoom;)if(!(e=e.parentNode))return Ex;return e.__zoom}function W8(e){e.stopImmediatePropagation()}function j1(e){e.preventDefault(),e.stopImmediatePropagation()}function w8e(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function k8e(){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 gL(){return this.__zoom||Ex}function _8e(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function S8e(){return navigator.maxTouchPoints||"ontouchstart"in this}function E8e(e,r,n){var o=e.invertX(r[0][0])-n[0][0],a=e.invertX(r[1][0])-n[1][0],i=e.invertY(r[0][1])-n[0][1],l=e.invertY(r[1][1])-n[1][1];return e.translate(a>o?(o+a)/2:Math.min(0,o)||Math.max(0,a),l>i?(i+l)/2:Math.min(0,i)||Math.max(0,l))}function yL(){var e=w8e,r=k8e,n=E8e,o=_8e,a=S8e,i=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=mx,d=ox("start","zoom","end"),u,p,f,g=500,v=150,w=0,x=10;function k(M){M.property("__zoom",gL).on("wheel.zoom",R,{passive:!1}).on("mousedown.zoom",T).on("dblclick.zoom",O).filter(a).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",gL),M!==q?z(M,V,B,F):q.interrupt().each(function(){j(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),Z=typeof V=="function"?V.apply(this,arguments):V;return n(_(C(G,Z),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(Ex.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(i[0],Math.min(i[1],V)),V===M.k?M:new Vs(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 Vs(M.k,F,q)}function $(M){return[(+M[0][0]+ +M[1][0])/2,(+M[0][1]+ +M[1][1])/2]}function z(M,V,B,F){M.on("start.zoom",function(){j(this,arguments).event(F).start()}).on("interrupt.zoom end.zoom",function(){j(this,arguments).event(F).end()}).tween("zoom",function(){var q=this,G=arguments,U=j(q,G).event(F),Y=r.apply(q,G),Z=B==null?$(Y):typeof B=="function"?B.apply(q,G):B,I=Math.max(Y[1][0]-Y[0][0],Y[1][1]-Y[0][1]),W=q.__zoom,K=typeof V=="function"?V.apply(q,G):V,Q=c(W.invert(Z).concat(I/W.k),K.invert(Z).concat(I/K.k));return function(ae){if(ae===1)ae=K;else{var te=Q(ae),re=I/te[2];ae=new Vs(re,Z[0]-te[0]*re,Z[1]-te[1]*re)}U.zoom(null,ae)}})}function j(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=ka(this.that).datum();d.call(M,this.that,new x8e(M,{sourceEvent:this.sourceEvent,target:k,transform:this.that.__zoom,dispatch:d}),V)}};function R(M,...V){if(!e.apply(this,arguments))return;var B=j(this,V).event(M),F=this.__zoom,q=Math.max(i[0],Math.min(i[1],F.k*Math.pow(2,o.apply(this,arguments)))),G=Hi(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)],_x(this),B.start()}j1(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 T(M,...V){if(f||!e.apply(this,arguments))return;var B=M.currentTarget,F=j(this,V,!0).event(M),q=ka(M.view).on("mousemove.zoom",Z,!0).on("mouseup.zoom",I,!0),G=Hi(M,B),U=M.clientX,Y=M.clientY;OI(M.view),W8(M),F.mouse=[G,this.__zoom.invert(G)],_x(this),F.start();function Z(W){if(j1(W),!F.moved){var K=W.clientX-U,Q=W.clientY-Y;F.moved=K*K+Q*Q>w}F.event(W).zoom("mouse",n(_(F.that.__zoom,F.mouse[0]=Hi(W,B),F.mouse[1]),F.extent,l))}function I(W){q.on("mousemove.zoom mouseup.zoom",null),II(W.view,F.moved),j1(W),F.event(W).end()}}function O(M,...V){if(e.apply(this,arguments)){var B=this.__zoom,F=Hi(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);j1(M),s>0?ka(this).transition().duration(s).call(z,U,F,M):ka(this).call(k.transform,U,F,M)}}function P(M,...V){if(e.apply(this,arguments)){var B=M.touches,F=B.length,q=j(this,V,M.changedTouches.length===F).event(M),G,U,Y,Z;for(W8(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."},T1=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],vL=["Enter"," ","Escape"],bL={"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 Jh;(function(e){e.Strict="strict",e.Loose="loose"})(Jh||(Jh={}));var Lu;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(Lu||(Lu={}));var A1;(function(e){e.Partial="partial",e.Full="full"})(A1||(A1={}));const xL={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var Kc;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(Kc||(Kc={}));var Cx;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(Cx||(Cx={}));var Ue;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(Ue||(Ue={}));const wL={[Ue.Left]:Ue.Right,[Ue.Right]:Ue.Left,[Ue.Top]:Ue.Bottom,[Ue.Bottom]:Ue.Top};function kL(e){return e===null?null:e?"valid":"invalid"}const _L=e=>"id"in e&&"source"in e&&"target"in e,C8e=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),G8=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),D1=(e,r=[0,0])=>{const{width:n,height:o}=_o(e),a=e.origin??r,i=n*a[0],l=o*a[1];return{x:e.position.x-i,y:e.position.y-l}},SL=(e,r={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((o,a)=>{const i=typeof a=="string";let l=!r.nodeLookup&&!i?a:void 0;r.nodeLookup&&(l=i?r.nodeLookup.get(a):G8(a)?a:r.nodeLookup.get(a.id));const s=l?Rx(l,r.nodeOrigin):{x:0,y:0,x2:0,y2:0};return $x(o,s)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return zx(n)},ef=(e,r={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},o=!1;return e.forEach(a=>{(r.filter===void 0||r.filter(a))&&(n=$x(n,Rx(a)),o=!0)}),o?zx(n):{x:0,y:0,width:0,height:0}},Y8=(e,r,[n,o,a]=[0,0,1],i=!1,l=!1)=>{const s={...P1(r,[n,o,a]),width:r.width/a,height:r.height/a},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=M1(s,Vu(d)),x=(g??0)*(v??0),k=i&&w>0;(!d.internals.handleBounds||k||w>=x||d.dragging)&&c.push(d)}return c},$8e=(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 z8e(e,r){const n=new Map,o=r?.nodes?new Set(r.nodes.map(a=>a.id)):null;return e.forEach(a=>{a.measured.width&&a.measured.height&&(r?.includeHiddenNodes||!a.hidden)&&(!o||o.has(a.id))&&n.set(a.id,a)}),n}async function R8e({nodes:e,width:r,height:n,panZoom:o,minZoom:a,maxZoom:i},l){if(e.size===0)return Promise.resolve(!0);const s=z8e(e,l),c=ef(s),d=qs(c,r,n,l?.minZoom??a,l?.maxZoom??i,l?.padding??.1);return await o.setViewport(d,{duration:l?.duration,ease:l?.ease,interpolate:l?.interpolate}),Promise.resolve(!0)}function EL({nodeId:e,nextPosition:r,nodeLookup:n,nodeOrigin:o=[0,0],nodeExtent:a,onError:i}){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||a;if(l.extent==="parent"&&!l.expandParent)if(!s)i?.("005",Wl.error005());else{const g=s.measured.width,v=s.measured.height;g&&v&&(p=[[c,d],[c+g,d+v]])}else s&&of(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=of(p)?Fu(r,p,l.measured):r;return(l.measured.width===void 0||l.measured.height===void 0)&&i?.("015",Wl.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 j8e({nodesToRemove:e=[],edgesToRemove:r=[],nodes:n,edges:o,onBeforeDelete:a}){const i=new Set(e.map(p=>p.id)),l=[];for(const p of n){if(p.deletable===!1)continue;const f=i.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=$8e(l,c);for(const p of c)s.has(p.id)&&!d.find(f=>f.id===p.id)&&d.push(p);if(!a)return{edges:d,nodes:l};const u=await a({nodes:l,edges:d});return typeof u=="boolean"?u?{edges:d,nodes:l}:{edges:[],nodes:[]}:u}const tf=(e,r=0,n=1)=>Math.min(Math.max(e,r),n),Fu=(e={x:0,y:0},r,n)=>({x:tf(e.x,r[0][0],r[1][0]-(n?.width??0)),y:tf(e.y,r[0][1],r[1][1]-(n?.height??0))});function CL(e,r,n){const{width:o,height:a}=_o(n),{x:i,y:l}=n.internals.positionAbsolute;return Fu(e,[[i,l],[i+o,l+a]],r)}const $L=(e,r,n)=>en?-tf(Math.abs(e-n),1,r)/r:0,zL=(e,r,n=15,o=40)=>{const a=$L(e.x,o,r.width-o)*n,i=$L(e.y,o,r.height-o)*n;return[a,i]},$x=(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)}),X8=({x:e,y:r,width:n,height:o})=>({x:e,y:r,x2:e+n,y2:r+o}),zx=({x:e,y:r,x2:n,y2:o})=>({x:e,y:r,width:n-e,height:o-r}),Vu=(e,r=[0,0])=>{const{x:n,y:o}=G8(e)?e.internals.positionAbsolute:D1(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}},Rx=(e,r=[0,0])=>{const{x:n,y:o}=G8(e)?e.internals.positionAbsolute:D1(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)}},RL=(e,r)=>zx($x(X8(e),X8(r))),M1=(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)},jL=e=>Gi(e.width)&&Gi(e.height)&&Gi(e.x)&&Gi(e.y),Gi=e=>!isNaN(e)&&isFinite(e),T8e=(e,r)=>{},N1=(e,r=[1,1])=>({x:r[0]*Math.round(e.x/r[0]),y:r[1]*Math.round(e.y/r[1])}),P1=({x:e,y:r},[n,o,a],i=!1,l=[1,1])=>{const s={x:(e-n)/a,y:(r-o)/a};return i?N1(s,l):s},jx=({x:e,y:r},[n,o,a])=>({x:e*a+n,y:r*a+o});function rf(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 A8e(e,r,n){if(typeof e=="string"||typeof e=="number"){const o=rf(e,n),a=rf(e,r);return{top:o,right:a,bottom:o,left:a,x:a*2,y:o*2}}if(typeof e=="object"){const o=rf(e.top??e.y??0,n),a=rf(e.bottom??e.y??0,n),i=rf(e.left??e.x??0,r),l=rf(e.right??e.x??0,r);return{top:o,right:l,bottom:a,left:i,x:i+l,y:o+a}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function D8e(e,r,n,o,a,i){const{x:l,y:s}=jx(e,[r,n,o]),{x:c,y:d}=jx({x:e.x+e.width,y:e.y+e.height},[r,n,o]),u=a-c,p=i-d;return{left:Math.floor(l),top:Math.floor(s),right:Math.floor(u),bottom:Math.floor(p)}}const qs=(e,r,n,o,a,i)=>{const l=A8e(i,r,n),s=(r-l.x)/e.width,c=(n-l.y)/e.height,d=Math.min(s,c),u=tf(d,o,a),p=e.x+e.width/2,f=e.y+e.height/2,g=r/2-p*u,v=n/2-f*u,w=D8e(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}},nf=()=>typeof navigator<"u"&&navigator?.userAgent?.indexOf("Mac")>=0;function of(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 TL(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function AL(e,r={width:0,height:0},n,o,a){const i={...e},l=o.get(n);if(l){const s=l.origin||a;i.x+=l.internals.positionAbsolute.x-(r.width??0)*s[0],i.y+=l.internals.positionAbsolute.y-(r.height??0)*s[1]}return i}function DL(e,r){if(e.size!==r.size)return!1;for(const n of e)if(!r.has(n))return!1;return!0}function M8e(){let e,r;return{promise:new Promise((n,o)=>{e=n,r=o}),resolve:e,reject:r}}function N8e(e){return{...bL,...e||{}}}function B1(e,{snapGrid:r=[0,0],snapToGrid:n=!1,transform:o,containerBounds:a}){const{x:i,y:l}=Yi(e),s=P1({x:i-(a?.left??0),y:l-(a?.top??0)},o),{x:c,y:d}=n?N1(s,r):s;return{xSnapped:c,ySnapped:d,...s}}const Z8=e=>({width:e.offsetWidth,height:e.offsetHeight}),ML=e=>e?.getRootNode?.()||window?.document,P8e=["INPUT","SELECT","TEXTAREA"];function NL(e){const r=e.composedPath?.()?.[0]||e.target;return r?.nodeType!==1?!1:P8e.includes(r.nodeName)||r.hasAttribute("contenteditable")||!!r.closest(".nokey")}const PL=e=>"clientX"in e,Yi=(e,r)=>{const n=PL(e),o=n?e.clientX:e.touches?.[0].clientX,a=n?e.clientY:e.touches?.[0].clientY;return{x:o-(r?.left??0),y:a-(r?.top??0)}},BL=(e,r,n,o,a)=>{const i=r.querySelectorAll(`.${e}`);return!i||!i.length?null:Array.from(i).map(l=>{const s=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:a,position:l.getAttribute("data-handlepos"),x:(s.left-n.left)/o,y:(s.top-n.top)/o,...Z8(l)}})};function OL({sourceX:e,sourceY:r,targetX:n,targetY:o,sourceControlX:a,sourceControlY:i,targetControlX:l,targetControlY:s}){const c=e*.125+a*.375+l*.375+n*.125,d=r*.125+i*.375+s*.375+o*.125,u=Math.abs(c-e),p=Math.abs(d-r);return[c,d,u,p]}function Tx(e,r){return e>=0?.5*e:r*25*Math.sqrt(-e)}function IL({pos:e,x1:r,y1:n,x2:o,y2:a,c:i}){switch(e){case Ue.Left:return[r-Tx(r-o,i),n];case Ue.Right:return[r+Tx(o-r,i),n];case Ue.Top:return[r,n-Tx(n-a,i)];case Ue.Bottom:return[r,n+Tx(a-n,i)]}}function Ax({sourceX:e,sourceY:r,sourcePosition:n=Ue.Bottom,targetX:o,targetY:a,targetPosition:i=Ue.Top,curvature:l=.25}){const[s,c]=IL({pos:n,x1:e,y1:r,x2:o,y2:a,c:l}),[d,u]=IL({pos:i,x1:o,y1:a,x2:e,y2:r,c:l}),[p,f,g,v]=OL({sourceX:e,sourceY:r,targetX:o,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:u});return[`M${e},${r} C${s},${c} ${d},${u} ${o},${a}`,p,f,g,v]}function LL({sourceX:e,sourceY:r,targetX:n,targetY:o}){const a=Math.abs(n-e)/2,i=n0}const I8e=({source:e,sourceHandle:r,target:n,targetHandle:o})=>`xy-edge__${e}${r||""}-${n}${o||""}`,L8e=(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)),F8e=(e,r,n={})=>{if(!e.source||!e.target)return r;const o=n.getEdgeId||I8e;let a;return _L(e)?a={...e}:a={...e,id:o(e)},L8e(a,r)?r:(a.sourceHandle===null&&delete a.sourceHandle,a.targetHandle===null&&delete a.targetHandle,r.concat(a))};function FL({sourceX:e,sourceY:r,targetX:n,targetY:o}){const[a,i,l,s]=LL({sourceX:e,sourceY:r,targetX:n,targetY:o});return[`M ${e},${r}L ${n},${o}`,a,i,l,s]}const VL={[Ue.Left]:{x:-1,y:0},[Ue.Right]:{x:1,y:0},[Ue.Top]:{x:0,y:-1},[Ue.Bottom]:{x:0,y:1}},V8e=({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 q8e({source:e,sourcePosition:r=Ue.Bottom,target:n,targetPosition:o=Ue.Top,center:a,offset:i,stepPosition:l}){const s=VL[r],c=VL[o],d={x:e.x+s.x*i,y:e.y+s.y*i},u={x:n.x+c.x*i,y:n.y+c.y*i},p=V8e({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},[,,_,$]=LL({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[f]*c[f]===-1){f==="x"?(w=a.x??d.x+(u.x-d.x)*l,x=a.y??(d.y+u.y)/2):(w=a.x??(d.x+u.x)/2,x=a.y??d.y+(u.y-d.y)*l);const z=[{x:w,y:d.y},{x:w,y:u.y}],j=[{x:d.x,y:x},{x:u.x,y:x}];s[f]===g?v=f==="x"?z:j:v=f==="x"?j:z}else{const z=[{x:d.x,y:u.y}],j=[{x:u.x,y:d.y}];if(f==="x"?v=s.x===g?j:z:v=s.y===g?z:j,r===o){const P=Math.abs(e[f]-n[f]);if(P<=i){const L=Math.min(i-1,i-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]=O?(w=(A.x+R.x)/2,x=v[0].y):(w=v[0].x,x=(A.y+R.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 H8e(e,r,n,o){const a=Math.min(qL(e,r)/2,qL(r,n)/2,o),{x:i,y:l}=r;if(e.x===i&&i===n.x||e.y===l&&l===n.y)return`L${i} ${l}`;if(e.y===l){const d=e.x{let _="";return C>0&&Cn.id===r):e[0])||null}function K8(e,r){return e?typeof e=="string"?e:`${r?`${r}__`:""}${Object.keys(e).sort().map(n=>`${n}=${e[n]}`).join("&")}`:""}function U8e(e,{id:r,defaultColor:n,defaultMarkerStart:o,defaultMarkerEnd:a}){const i=new Set;return e.reduce((l,s)=>([s.markerStart||o,s.markerEnd||a].forEach(c=>{if(c&&typeof c=="object"){const d=K8(c,r);i.has(d)||(l.push({id:d,color:c.color||n,...c}),i.add(d))}}),l),[]).sort((l,s)=>l.id.localeCompare(s.id))}function W8e(e,r,n,o,a){let i=.5;a==="start"?i=0:a==="end"&&(i=1);let l=[(e.x+e.width*i)*r.zoom+r.x,e.y*r.zoom+r.y-o],s=[-100*i,-100];switch(n){case Ue.Right:l=[(e.x+e.width)*r.zoom+r.x+o,(e.y+e.height*i)*r.zoom+r.y],s=[0,-100*i];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*i)*r.zoom+r.y],s=[-100,-100*i];break}return`translate(${l[0]}px, ${l[1]}px) translate(${s[0]}%, ${s[1]}%)`}const YL=1e3,G8e=10,Q8={nodeOrigin:[0,0],nodeExtent:T1,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},Y8e={...Q8,checkEquality:!0};function J8(e,r){const n={...e};for(const o in r)r[o]!==void 0&&(n[o]=r[o]);return n}function X8e(e,r,n){const o=J8(Q8,n);for(const a of e.values())if(a.parentId)r7(a,e,r,o);else{const i=D1(a,o.nodeOrigin),l=of(a.extent)?a.extent:o.nodeExtent,s=Fu(i,l,_o(a));a.internals.positionAbsolute=s}}function Z8e(e,r){if(!e.handles)return e.measured?r?.internals.handleBounds:void 0;const n=[],o=[];for(const a of e.handles){const i={id:a.id,width:a.width??1,height:a.height??1,nodeId:e.id,x:a.x,y:a.y,position:a.position,type:a.type};a.type==="source"?n.push(i):a.type==="target"&&o.push(i)}return{source:n,target:o}}function e7(e){return e==="manual"}function t7(e,r,n,o={}){const a=J8(Y8e,o),i={i:0},l=new Map(r),s=a?.elevateNodesOnSelect&&!e7(a.zIndexMode)?YL:0;let c=e.length>0;r.clear(),n.clear();for(const d of e){let u=l.get(d.id);if(a.checkEquality&&d===u?.internals.userNode)r.set(d.id,u);else{const p=D1(d,a.nodeOrigin),f=of(d.extent)?d.extent:a.nodeExtent,g=Fu(p,f,_o(d));u={...a.defaults,...d,measured:{width:d.measured?.width,height:d.measured?.height},internals:{positionAbsolute:g,handleBounds:Z8e(d,u),z:XL(d,s,a.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&&r7(u,r,n,o,i)}return c}function K8e(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 r7(e,r,n,o,a){const{elevateNodesOnSelect:i,nodeOrigin:l,nodeExtent:s,zIndexMode:c}=J8(Q8,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}K8e(e,n),a&&!u.parentId&&u.internals.rootParentIndex===void 0&&c==="auto"&&(u.internals.rootParentIndex=++a.i,u.internals.z=u.internals.z+a.i*G8e),a&&u.internals.rootParentIndex!==void 0&&(a.i=u.internals.rootParentIndex);const p=i&&!e7(c)?YL:0,{x:f,y:g,z:v}=Q8e(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 XL(e,r,n){const o=Gi(e.zIndex)?e.zIndex:0;return e7(n)?o:o+(e.selected?r:0)}function Q8e(e,r,n,o,a,i){const{x:l,y:s}=r.internals.positionAbsolute,c=_o(e),d=D1(e,n),u=of(e.extent)?Fu(d,e.extent,c):d;let p=Fu({x:l+u.x,y:s+u.y},o,c);e.extent==="parent"&&(p=CL(p,c,r));const f=XL(e,a,i),g=r.internals.z??0;return{x:p.x,y:p.y,z:g>=f?g+1:f}}function n7(e,r,n,o=[0,0]){const a=[],i=new Map;for(const l of e){const s=r.get(l.parentId);if(!s)continue;const c=i.get(l.parentId)?.expandedRect??Vu(s),d=RL(c,l.rect);i.set(l.parentId,{expandedRect:d,parent:s})}return i.size>0&&i.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)&&(a.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)||a.push({id:C.id,type:"position",position:{x:C.position.x+f,y:C.position.y+g}})})),(u.width0){const g=n7(f,r,n,a);d.push(...g)}return{changes:d,updatedInternals:c}}async function e7e({delta:e,panZoom:r,transform:n,translateExtent:o,width:a,height:i}){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],[a,i]],o),s=!!l&&(l.x!==n[0]||l.y!==n[1]||l.k!==n[2]);return Promise.resolve(s)}function ZL(e,r,n,o,a,i){let l=a;const s=o.get(l)||new Map;o.set(l,s.set(n,r)),l=`${a}-${e}`;const c=o.get(l)||new Map;if(o.set(l,c.set(n,r)),i){l=`${a}-${e}-${i}`;const d=o.get(l)||new Map;o.set(l,d.set(n,r))}}function KL(e,r,n){e.clear(),r.clear();for(const o of n){const{source:a,target:i,sourceHandle:l=null,targetHandle:s=null}=o,c={edgeId:o.id,source:a,target:i,sourceHandle:l,targetHandle:s},d=`${a}-${l}--${i}-${s}`,u=`${i}-${s}--${a}-${l}`;ZL("source",c,u,e,a,l),ZL("target",c,d,e,i,s),r.set(o.id,o)}}function QL(e,r){if(!e.parentId)return!1;const n=r.get(e.parentId);return n?n.selected?!0:QL(n,r):!1}function JL(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 t7e(e,r,n,o){const a=new Map;for(const[i,l]of e)if((l.selected||l.id===o)&&(!l.parentId||!QL(l,e))&&(l.draggable||r&&typeof l.draggable>"u")){const s=e.get(i);s&&a.set(i,{id:i,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 a}function o7({nodeId:e,dragItems:r,nodeLookup:n,dragging:o=!0}){const a=[];for(const[l,s]of r){const c=n.get(l)?.internals.userNode;c&&a.push({...c,position:s.position,dragging:o})}if(!e)return[a[0],a];const i=n.get(e)?.internals.userNode;return[i?{...i,position:r.get(e)?.position||i.position,dragging:o}:a[0],a]}function r7e({dragItems:e,snapGrid:r,x:n,y:o}){const a=e.values().next().value;if(!a)return null;const i={x:n-a.distance.x,y:o-a.distance.y},l=N1(i,r);return{x:l.x-i.x,y:l.y-i.y}}function n7e({onNodeMouseDown:e,getStoreItems:r,onDragStart:n,onDrag:o,onDragStop:a}){let i={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:z,nodeId:j,nodeClickDistance:A=0}){f=ka($);function R({x:L,y:H}){const{nodeLookup:M,nodeExtent:V,snapGrid:B,snapToGrid:F,nodeOrigin:q,onNodeDrag:G,onSelectionDrag:U,onError:Y,updateNodePositions:Z}=r();i={x:L,y:H};let I=!1;const W=s.size>1,K=W&&V?X8(ef(s)):null,Q=W&&F?r7e({dragItems:s,snapGrid:B,x:L,y:H}):null;for(const[ae,te]of s){if(!M.has(ae))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)}:N1(re,B));let ue=null;if(W&&V&&!te.extent&&K){const{positionAbsolute:pe}=te.internals,xe=pe.x-K.x+V[0][0],De=pe.x+te.measured.width-K.x2+V[1][0],Be=pe.y-K.y+V[0][1],Je=pe.y+te.measured.height-K.y2+V[1][1];ue=[[xe,Be],[De,Je]]}const{position:_e,positionAbsolute:ce}=EL({nodeId:ae,nextPosition:re,nodeLookup:M,nodeExtent:ue||V,nodeOrigin:q,onError:Y});I=I||te.position.x!==_e.x||te.position.y!==_e.y,te.position=_e,te.internals.positionAbsolute=ce}if(v=v||I,!!I&&(Z(s,!0),w&&(o||G||!j&&U))){const[ae,te]=o7({nodeId:j,dragItems:s,nodeLookup:M});o?.(w,s,ae,te),G?.(w,ae,te),j||U?.(w,te)}}async function T(){if(!u)return;const{transform:L,panBy:H,autoPanSpeed:M,autoPanOnNodeDrag:V}=r();if(!V){c=!1,cancelAnimationFrame(l);return}const[B,F]=zL(d,u,M);(B!==0||F!==0)&&(i.x=(i.x??0)-B/L[2],i.y=(i.y??0)-F/L[2],await H({x:B,y:F})&&R(i)),l=requestAnimationFrame(T)}function O(L){const{nodeLookup:H,multiSelectionActive:M,nodesDraggable:V,transform:B,snapGrid:F,snapToGrid:q,selectNodesOnDrag:G,onNodeDragStart:U,onSelectionDragStart:Y,unselectNodesAndEdges:Z}=r();p=!0,(!G||!z)&&!M&&j&&(H.get(j)?.selected||Z()),z&&G&&j&&e?.(j);const I=B1(L.sourceEvent,{transform:B,snapGrid:F,snapToGrid:q,containerBounds:u});if(i=I,s=t7e(H,V,I,j),s.size>0&&(n||U||!j&&Y)){const[W,K]=o7({nodeId:j,dragItems:s,nodeLookup:H});n?.(L.sourceEvent,s,W,K),U?.(L.sourceEvent,W,K),j||Y?.(L.sourceEvent,K)}}const P=LI().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&&O(L),i=B1(L.sourceEvent,{transform:V,snapGrid:B,snapToGrid:F,containerBounds:u}),d=Yi(L.sourceEvent,u)}).on("drag",L=>{const{autoPanOnNodeDrag:H,transform:M,snapGrid:V,snapToGrid:B,nodeDragThreshold:F,nodeLookup:q}=r(),G=B1(L.sourceEvent,{transform:M,snapGrid:V,snapToGrid:B,containerBounds:u});if(w=L.sourceEvent,(L.sourceEvent.type==="touchmove"&&L.sourceEvent.touches.length>1||j&&!q.has(j))&&(g=!0),!g){if(!c&&H&&p&&(c=!0,T()),!p){const U=Yi(L.sourceEvent,u),Y=U.x-d.x,Z=U.y-d.y;Math.sqrt(Y*Y+Z*Z)>F&&O(L)}(i.x!==G.xSnapped||i.y!==G.ySnapped)&&s&&p&&(d=Yi(L.sourceEvent,u),R(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),a||V||!j&&B){const[F,q]=o7({nodeId:j,dragItems:s,nodeLookup:H,dragging:!1});a?.(L.sourceEvent,s,F,q),V?.(L.sourceEvent,F,q),j||B?.(L.sourceEvent,q)}}}).filter(L=>{const H=L.target;return!L.button&&(!C||!JL(H,`.${C}`,$))&&(!_||JL(H,_,$))});f.call(P)}function k(){f?.on(".drag",null)}return{update:x,destroy:k}}function o7e(e,r,n){const o=[],a={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const i of r.values())M1(a,Vu(i))>0&&o.push(i);return o}const a7e=250;function i7e(e,r,n,o){let a=[],i=1/0;const l=o7e(e,n,r+a7e);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}=qu(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 a.find(c=>c.type===s)??a[0]}return a[0]}function eF(e,r,n,o,a,i=!1){const l=o.get(e);if(!l)return null;const s=a==="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&&i?{...c,...qu(l,c,c.position,!0)}:c}function tF(e,r){return e||(r?.classList.contains("target")?"target":r?.classList.contains("source")?"source":null)}function l7e(e,r){let n=null;return r?n=!0:e&&!r&&(n=!1),n}const rF=()=>!0;function s7e(e,{connectionMode:r,connectionRadius:n,handleId:o,nodeId:a,edgeUpdaterType:i,isTarget:l,domNode:s,nodeLookup:c,lib:d,autoPanOnConnect:u,flowId:p,panBy:f,cancelConnection:g,onConnectStart:v,onConnect:w,onConnectEnd:x,isValidConnection:k=rF,onReconnectEnd:C,updateConnection:_,getTransform:$,getFromHandle:z,autoPanSpeed:j,dragThreshold:A=1,handleDomNode:R}){const T=ML(e.target);let O=0,P;const{x:L,y:H}=Yi(e),M=tF(i,R),V=s?.getBoundingClientRect();let B=!1;if(!V||!M)return;const F=eF(a,M,o,c,r);if(!F)return;let q=Yi(e,V),G=!1,U=null,Y=!1,Z=null;function I(){if(!u||!V)return;const[ue,_e]=zL(q,V,j);f({x:ue,y:_e}),O=requestAnimationFrame(I)}const W={...F,nodeId:a,type:M,position:F.position},K=c.get(a);let Q={inProgress:!0,isValid:null,from:qu(K,W,Ue.Left,!0),fromHandle:W,fromPosition:W.position,fromNode:K,to:q,toHandle:null,toPosition:wL[W.position],toNode:null,pointer:q};function ae(){B=!0,_(Q),v?.(e,{nodeId:a,handleId:o,handleType:M})}A===0&&ae();function te(ue){if(!B){const{x:Be,y:Je}=Yi(ue),st=Be-L,Le=Je-H;if(!(st*st+Le*Le>A*A))return;ae()}if(!z()||!W){re(ue);return}const _e=$();q=Yi(ue,V),P=i7e(P1(q,_e,!1,[1,1]),n,c,W),G||(I(),G=!0);const ce=nF(ue,{handle:P,connectionMode:r,fromNodeId:a,fromHandleId:o,fromType:l?"target":"source",isValidConnection:k,doc:T,lib:d,flowId:p,nodeLookup:c});Z=ce.handleDomNode,U=ce.connection,Y=l7e(!!P,ce.isValid);const pe=c.get(a),xe=pe?qu(pe,W,Ue.Left,!0):Q.from,De={...Q,from:xe,isValid:Y,to:ce.toHandle&&Y?jx({x:ce.toHandle.x,y:ce.toHandle.y},_e):q,toHandle:ce.toHandle,toPosition:Y&&ce.toHandle?ce.toHandle.position:wL[W.position],toNode:ce.toHandle?c.get(ce.toHandle.nodeId):null,pointer:q};_(De),Q=De}function re(ue){if(!("touches"in ue&&ue.touches.length>0)){if(B){(P||Z)&&U&&Y&&w?.(U);const{inProgress:_e,...ce}=Q,pe={...ce,toPosition:Q.toHandle?Q.toPosition:null};x?.(ue,pe),i&&C?.(ue,pe)}g(),cancelAnimationFrame(O),G=!1,Y=!1,U=null,Z=null,T.removeEventListener("mousemove",te),T.removeEventListener("mouseup",re),T.removeEventListener("touchmove",te),T.removeEventListener("touchend",re)}}T.addEventListener("mousemove",te),T.addEventListener("mouseup",re),T.addEventListener("touchmove",te),T.addEventListener("touchend",re)}function nF(e,{handle:r,connectionMode:n,fromNodeId:o,fromHandleId:a,fromType:i,doc:l,lib:s,flowId:c,isValidConnection:d=rF,nodeLookup:u}){const p=i==="target",f=r?l.querySelector(`.${s}-flow__handle[data-id="${c}-${r?.nodeId}-${r?.id}-${r?.type}"]`):null,{x:g,y:v}=Yi(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=tF(void 0,x),_=x.getAttribute("data-nodeid"),$=x.getAttribute("data-handleid"),z=x.classList.contains("connectable"),j=x.classList.contains("connectableend");if(!_||!C)return k;const A={source:p?_:o,sourceHandle:p?$:a,target:p?o:_,targetHandle:p?a:$};k.connection=A;const R=z&&j&&(n===Jh.Strict?p&&C==="source"||!p&&C==="target":_!==o||$!==a);k.isValid=R&&d(A),k.toHandle=eF(_,C,$,u,n,!0)}return k}const a7={onPointerDown:s7e,isValid:nF};function c7e({domNode:e,panZoom:r,getTransform:n,getViewScale:o}){const a=ka(e);function i({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(),z=_.sourceEvent.ctrlKey&&nf()?10:1,j=-_.sourceEvent.deltaY*(_.sourceEvent.deltaMode===1?.05:_.sourceEvent.deltaMode?1:.002)*u,A=$[2]*Math.pow(2,j*z);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 z=[_.sourceEvent.clientX??_.sourceEvent.touches[0].clientX,_.sourceEvent.clientY??_.sourceEvent.touches[0].clientY],j=[z[0]-w[0],z[1]-w[1]];w=z;const A=o()*Math.max($[2],Math.log($[2]))*(g?-1:1),R={x:$[0]-j[0]*A,y:$[1]-j[1]*A},T=[[0,0],[c,d]];r.setViewportConstrained({x:R.x,y:R.y,zoom:$[2]},T,s)},C=yL().on("start",x).on("zoom",p?k:null).on("zoom.wheel",f?v:null);a.call(C,{})}function l(){a.on("zoom",null)}return{update:i,destroy:l,pointer:Hi}}const Mx=e=>({x:e.x,y:e.y,zoom:e.k}),i7=({x:e,y:r,zoom:n})=>Ex.translate(e,r).scale(n),af=(e,r)=>e.target.closest(`.${r}`),oF=(e,r)=>r===2&&Array.isArray(e)&&e.includes(2),d7e=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,l7=(e,r=0,n=d7e,o=()=>{})=>{const a=typeof r=="number"&&r>0;return a||o(),a?e.transition().duration(r).ease(n).on("end",o):e},aF=e=>{const r=e.ctrlKey&&nf()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*r};function u7e({zoomPanValues:e,noWheelClassName:r,d3Selection:n,d3Zoom:o,panOnScrollMode:a,panOnScrollSpeed:i,zoomOnPinch:l,onPanZoomStart:s,onPanZoom:c,onPanZoomEnd:d}){return u=>{if(af(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=Hi(u),k=aF(u),C=p*Math.pow(2,k);o.scaleTo(n,C,x,u);return}const f=u.deltaMode===1?20:1;let g=a===Lu.Vertical?0:u.deltaX*f,v=a===Lu.Horizontal?0:u.deltaY*f;!nf()&&u.shiftKey&&a!==Lu.Vertical&&(g=u.deltaY*f,v=0),o.translateBy(n,-(g/p)*i,-(v/p)*i,{internal:!0});const w=Mx(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 p7e({noWheelClassName:e,preventScrolling:r,d3ZoomHandler:n}){return function(o,a){const i=o.type==="wheel",l=!r&&i&&!o.ctrlKey,s=af(o,e);if(o.ctrlKey&&i&&s&&o.preventDefault(),l||s)return null;o.preventDefault(),n.call(this,o,a)}}function h7e({zoomPanValues:e,onDraggingChange:r,onPanZoomStart:n}){return o=>{if(o.sourceEvent?.internal)return;const a=Mx(o.transform);e.mouseButton=o.sourceEvent?.button||0,e.isZoomingOrPanning=!0,e.prevViewport=a,o.sourceEvent?.type==="mousedown"&&r(!0),n&&n?.(o.sourceEvent,a)}}function f7e({zoomPanValues:e,panOnDrag:r,onPaneContextMenu:n,onTransformChange:o,onPanZoom:a}){return i=>{e.usedRightMouseButton=!!(n&&oF(r,e.mouseButton??0)),i.sourceEvent?.sync||o([i.transform.x,i.transform.y,i.transform.k]),a&&!i.sourceEvent?.internal&&a?.(i.sourceEvent,Mx(i.transform))}}function m7e({zoomPanValues:e,panOnDrag:r,panOnScroll:n,onDraggingChange:o,onPanZoomEnd:a,onPaneContextMenu:i}){return l=>{if(!l.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,i&&oF(r,e.mouseButton??0)&&!e.usedRightMouseButton&&l.sourceEvent&&i(l.sourceEvent),e.usedRightMouseButton=!1,o(!1),a)){const s=Mx(l.transform);e.prevViewport=s,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{a?.(l.sourceEvent,s)},n?150:0)}}}function g7e({zoomActivationKeyPressed:e,zoomOnScroll:r,zoomOnPinch:n,panOnDrag:o,panOnScroll:a,zoomOnDoubleClick:i,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"&&(af(p,`${d}-flow__node`)||af(p,`${d}-flow__edge`)))return!0;if(!o&&!f&&!a&&!i&&!n||l||u&&!v||af(p,s)&&v||af(p,c)&&(!v||a&&v&&!e)||!n&&p.ctrlKey&&v)return!1;if(!n&&p.type==="touchstart"&&p.touches?.length>1)return p.preventDefault(),!1;if(!f&&!a&&!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 y7e({domNode:e,minZoom:r,maxZoom:n,translateExtent:o,viewport:a,onPanZoom:i,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=yL().scaleExtent([r,n]).translateExtent(o),f=ka(e).call(p);C({x:a.x,y:a.y,zoom:tf(a.zoom,r,n)},[[0,0],[u.width,u.height]],o);const g=f.on("wheel.zoom"),v=f.on("dblclick.zoom");p.wheelDelta(aF);function w(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?E1:mx).transform(l7(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:Z,zoomActivationKeyPressed:I,lib:W,onTransformChange:K,connectionInProgress:Q,paneClickDistance:ae,selectionOnDrag:te}){M&&!d.isZoomingOrPanning&&k();const re=V&&!I&&!M;p.clickDistance(te?1/0:!Gi(ae)||ae<0?0:ae);const ue=re?u7e({zoomPanValues:d,noWheelClassName:P,d3Selection:f,d3Zoom:p,panOnScrollMode:F,panOnScrollSpeed:q,zoomOnPinch:U,onPanZoomStart:l,onPanZoom:i,onPanZoomEnd:s}):p7e({noWheelClassName:P,preventScrolling:G,d3ZoomHandler:g});if(f.on("wheel.zoom",ue,{passive:!1}),!M){const ce=h7e({zoomPanValues:d,onDraggingChange:c,onPanZoomStart:l});p.on("start",ce);const pe=f7e({zoomPanValues:d,panOnDrag:B,onPaneContextMenu:!!H,onPanZoom:i,onTransformChange:K});p.on("zoom",pe);const xe=m7e({zoomPanValues:d,panOnDrag:B,panOnScroll:V,onPaneContextMenu:H,onPanZoomEnd:s,onDraggingChange:c});p.on("end",xe)}const _e=g7e({zoomActivationKeyPressed:I,panOnDrag:B,zoomOnScroll:Y,panOnScroll:V,zoomOnDoubleClick:Z,zoomOnPinch:U,userSelectionActive:M,noPanClassName:L,noWheelClassName:P,lib:W,connectionInProgress:Q});p.filter(_e),Z?f.on("dblclick.zoom",v):f.on("dblclick.zoom",null)}function k(){p.on("zoom",null)}async function C(P,L,H){const M=i7(P),V=p?.constrain()(M,L,H);return V&&await w(V),new Promise(B=>B(V))}async function _(P,L){const H=i7(P);return await w(H,L),new Promise(M=>M(H))}function $(P){if(f){const L=i7(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 z(){const P=f?mL(f.node()):{x:0,y:0,k:1};return{x:P.x,y:P.y,zoom:P.k}}function j(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?E1:mx).scaleTo(l7(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"?E1:mx).scaleBy(l7(f,L?.duration,L?.ease,()=>H(!0)),P)}):Promise.resolve(!1)}function R(P){p?.scaleExtent(P)}function T(P){p?.translateExtent(P)}function O(P){const L=!Gi(P)||P<0?0:P;p?.clickDistance(L)}return{update:x,destroy:k,setViewport:_,setViewportConstrained:C,getViewport:z,scaleTo:j,scaleBy:A,setScaleExtent:R,setTranslateExtent:T,syncViewport:$,setClickDistance:O}}var lf;(function(e){e.Line="line",e.Handle="handle"})(lf||(lf={}));function v7e({width:e,prevWidth:r,height:n,prevHeight:o,affectsX:a,affectsY:i}){const l=e-r,s=n-o,c=[l>0?1:l<0?-1:0,s>0?1:s<0?-1:0];return l&&a&&(c[0]=c[0]*-1),s&&i&&(c[1]=c[1]*-1),c}function iF(e){const r=e.includes("right")||e.includes("left"),n=e.includes("bottom")||e.includes("top"),o=e.includes("left"),a=e.includes("top");return{isHorizontal:r,isVertical:n,affectsX:o,affectsY:a}}function Qc(e,r){return Math.max(0,r-e)}function Jc(e,r){return Math.max(0,e-r)}function Nx(e,r,n){return Math.max(0,r-e,e-n)}function lF(e,r){return e?!r:r}function b7e(e,r,n,o,a,i,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:z,height:j,aspectRatio:A}=e;let R=Math.floor(u?g-e.pointerX:0),T=Math.floor(p?v-e.pointerY:0);const O=z+(c?-R:R),P=j+(d?-T:T),L=-i[0]*z,H=-i[1]*j;let M=Nx(O,w,x),V=Nx(P,k,C);if(l){let q=0,G=0;c&&R<0?q=Qc(_+R+L,l[0][0]):!c&&R>0&&(q=Jc(_+O+L,l[1][0])),d&&T<0?G=Qc($+T+H,l[0][1]):!d&&T>0&&(G=Jc($+P+H,l[1][1])),M=Math.max(M,q),V=Math.max(V,G)}if(s){let q=0,G=0;c&&R>0?q=Jc(_+R,s[0][0]):!c&&R<0&&(q=Qc(_+O,s[1][0])),d&&T>0?G=Jc($+T,s[0][1]):!d&&T<0&&(G=Qc($+P,s[1][1])),M=Math.max(M,q),V=Math.max(V,G)}if(a){if(u){const q=Nx(O/A,k,C)*A;if(M=Math.max(M,q),l){let G=0;!c&&!d||c&&!d&&f?G=Jc($+H+O/A,l[1][1])*A:G=Qc($+H+(c?R:-R)/A,l[0][1])*A,M=Math.max(M,G)}if(s){let G=0;!c&&!d||c&&!d&&f?G=Qc($+O/A,s[1][1])*A:G=Jc($+(c?R:-R)/A,s[0][1])*A,M=Math.max(M,G)}}if(p){const q=Nx(P*A,w,x)/A;if(V=Math.max(V,q),l){let G=0;!c&&!d||d&&!c&&f?G=Jc(_+P*A+L,l[1][0])/A:G=Qc(_+(d?T:-T)*A+L,l[0][0])/A,V=Math.max(V,G)}if(s){let G=0;!c&&!d||d&&!c&&f?G=Qc(_+P*A,s[1][0])/A:G=Jc(_+(d?T:-T)*A,s[0][0])/A,V=Math.max(V,G)}}}T=T+(T<0?V:-V),R=R+(R<0?M:-M),a&&(f?O>P*A?T=(lF(c,d)?-R:R)/A:R=(lF(c,d)?-T:T)*A:u?(T=R/A,d=c):(R=T*A,c=d));const B=c?_+R:_,F=d?$+T:$;return{width:z+(c?-R:R),height:j+(d?-T:T),x:i[0]*R*(c?-1:1)+B,y:i[1]*T*(d?-1:1)+F}}const sF={width:0,height:0,x:0,y:0},x7e={...sF,pointerX:0,pointerY:0,aspectRatio:1};function w7e(e){return[[0,0],[e.measured.width,e.measured.height]]}function k7e(e,r,n){const o=r.position.x+e.position.x,a=r.position.y+e.position.y,i=e.measured.width??0,l=e.measured.height??0,s=n[0]*i,c=n[1]*l;return[[o-s,a-c],[o+i-s,a+l-c]]}function _7e({domNode:e,nodeId:r,getStoreItems:n,onChange:o,onEnd:a}){const i=ka(e);let l={controlDirection:iF("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={...sF},C={...x7e};l={boundaries:u,resizeDirection:f,keepAspectRatio:p,controlDirection:iF(d)};let _,$=null,z=[],j,A,R,T=!1;const O=LI().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}=B1(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},j=void 0,_.parentId&&(_.extent==="parent"||_.expandParent)&&(j=L.get(_.parentId),A=j&&_.extent==="parent"?w7e(j):void 0),z=[],R=void 0;for(const[U,Y]of L)if(Y.parentId===r&&(z.push({id:U,position:{...Y.position},extent:Y.extent}),Y.extent==="parent"||Y.expandParent)){const Z=k7e(Y,_,Y.origin??B);R?R=[[Math.min(Z[0][0],R[0][0]),Math.min(Z[0][1],R[0][1])],[Math.max(Z[1][0],R[1][0]),Math.max(Z[1][1],R[1][1])]]:R=Z}g?.(P,{...k})}).on("drag",P=>{const{transform:L,snapGrid:H,snapToGrid:M,nodeOrigin:V}=n(),B=B1(P.sourceEvent,{transform:L,snapGrid:H,snapToGrid:M,containerBounds:$}),F=[];if(!_)return;const{x:q,y:G,width:U,height:Y}=k,Z={},I=_.origin??V,{width:W,height:K,x:Q,y:ae}=b7e(C,l.controlDirection,B,l.boundaries,l.keepAspectRatio,I,A,R),te=W!==U,re=K!==Y,ue=Q!==q&&te,_e=ae!==G&&re;if(!ue&&!_e&&!te&&!re)return;if((ue||_e||I[0]===1||I[1]===1)&&(Z.x=ue?Q:k.x,Z.y=_e?ae:k.y,k.x=Z.x,k.y=Z.y,z.length>0)){const xe=Q-q,De=ae-G;for(const Be of z)Be.position={x:Be.position.x-xe+I[0]*(W-U),y:Be.position.y-De+I[1]*(K-Y)},F.push(Be)}if((te||re)&&(Z.width=te&&(!l.resizeDirection||l.resizeDirection==="horizontal")?W:k.width,Z.height=re&&(!l.resizeDirection||l.resizeDirection==="vertical")?K:k.height,k.width=Z.width,k.height=Z.height),j&&_.expandParent){const xe=I[0]*(Z.width??0);Z.x&&Z.x{T&&(w?.(P,{...k}),a?.({...k}),T=!1)});i.call(O)}function c(){i.on(".drag",null)}return{update:s,destroy:c}}function s7(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var cF={exports:{}},c7={},dF={exports:{}},d7={},uF;function S7e(){if(uF)return d7;uF=1;var e=Kr;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,a=e.useEffect,i=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 i(function(){w.value=g,w.getSnapshot=f,c(w)&&x({inst:w})},[p,g,f]),a(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 d7.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:u,d7}var pF;function hF(){return pF||(pF=1,dF.exports=S7e()),dF.exports}var fF;function E7e(){if(fF)return c7;fF=1;var e=Kr,r=hF();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,a=r.useSyncExternalStore,i=e.useRef,l=e.useEffect,s=e.useMemo,c=e.useDebugValue;return c7.useSyncExternalStoreWithSelector=function(d,u,p,f,g){var v=i(null);if(v.current===null){var w={hasValue:!1,value:null};v.current=w}else w=v.current;v=s(function(){function k(j){if(!C){if(C=!0,_=j,j=f(j),g!==void 0&&w.hasValue){var A=w.value;if(g(A,j))return $=A}return $=j}if(A=$,o(_,j))return A;var R=f(j);return g!==void 0&&g(A,R)?(_=j,A):(_=j,$=R)}var C=!1,_,$,z=p===void 0?null:p;return[function(){return k(u())},z===null?void 0:function(){return k(z())}]},[u,p,f,g]);var x=a(d,v[0],v[1]);return l(function(){w.hasValue=!0,w.value=x},[x]),c(x),x},c7}var mF;function C7e(){return mF||(mF=1,cF.exports=E7e()),cF.exports}var gF=C7e();const $7e=s7(gF),z7e={},yF=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))}},a=()=>r,i={setState:o,getState:a,getInitialState:()=>l,subscribe:s=>(n.add(s),()=>n.delete(s)),destroy:()=>{(z7e?"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,a,i);return i},R7e=e=>e?yF(e):yF,{useDebugValue:j7e}=Kr,{useSyncExternalStoreWithSelector:T7e}=$7e,A7e=e=>e;function vF(e,r=A7e,n){const o=T7e(e.subscribe,e.getState,e.getServerState||e.getInitialState,r,n);return j7e(o),o}const bF=(e,r)=>{const n=R7e(e),o=(a,i=r)=>vF(n,a,i);return Object.assign(o,n),o},D7e=(e,r)=>e?bF(e,r):bF;function Tr(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,a]of e)if(!Object.is(a,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 Px=S.createContext(null),M7e=Px.Provider,xF=Wl.error001();function Dt(e,r){const n=S.useContext(Px);if(n===null)throw new Error(xF);return vF(n,e,r)}function vr(){const e=S.useContext(Px);if(e===null)throw new Error(xF);return S.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const wF={display:"none"},N7e={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},kF="react-flow__node-desc",_F="react-flow__edge-desc",P7e="react-flow__aria-live",B7e=e=>e.ariaLiveMessage,O7e=e=>e.ariaLabelConfig;function I7e({rfId:e}){const r=Dt(B7e);return y.jsx("div",{id:`${P7e}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:N7e,children:r})}function L7e({rfId:e,disableKeyboardA11y:r}){const n=Dt(O7e);return y.jsxs(y.Fragment,{children:[y.jsx("div",{id:`${kF}-${e}`,style:wF,children:r?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),y.jsx("div",{id:`${_F}-${e}`,style:wF,children:n["edge.a11yDescription.default"]}),!r&&y.jsx(I7e,{rfId:e})]})}const ed=S.forwardRef(({position:e="top-left",children:r,className:n,style:o,...a},i)=>{const l=`${e}`.split("-");return y.jsx("div",{className:dn(["react-flow__panel",n,...l]),style:o,ref:i,...a,children:r})});ed.displayName="Panel";function F7e({proOptions:e,position:r="bottom-right"}){return e?.hideAttribution?null:y.jsx(ed,{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 V7e=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}},Bx=e=>e.id;function q7e(e,r){return Tr(e.selectedNodes.map(Bx),r.selectedNodes.map(Bx))&&Tr(e.selectedEdges.map(Bx),r.selectedEdges.map(Bx))}function H7e({onSelectionChange:e}){const r=vr(),{selectedNodes:n,selectedEdges:o}=Dt(V7e,q7e);return S.useEffect(()=>{const a={nodes:n,edges:o};e?.(a),r.getState().onSelectionChangeHandlers.forEach(i=>i(a))},[n,o,e]),null}const U7e=e=>!!e.onSelectionChangeHandlers;function W7e({onSelectionChange:e}){const r=Dt(U7e);return e||r?y.jsx(H7e,{onSelectionChange:e}):null}const SF=[0,0],G7e={x:0,y:0,zoom:1},Y7e=["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"],EF=[...Y7e,"rfId"],X7e=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}),CF={translateExtent:T1,nodeOrigin:SF,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function Z7e(e){const{setNodes:r,setEdges:n,setMinZoom:o,setMaxZoom:a,setTranslateExtent:i,setNodeExtent:l,reset:s,setDefaultNodesAndEdges:c}=Dt(X7e,Tr),d=vr();S.useEffect(()=>(c(e.defaultNodes,e.defaultEdges),()=>{u.current=CF,s()}),[]);const u=S.useRef(CF);return S.useEffect(()=>{for(const p of EF){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"?a(f):p==="translateExtent"?i(f):p==="nodeExtent"?l(f):p==="ariaLabelConfig"?d.setState({ariaLabelConfig:N8e(f)}):p==="fitView"?d.setState({fitViewQueued:f}):p==="fitViewOptions"?d.setState({fitViewOptions:f}):d.setState({[p]:f})))}u.current=e},EF.map(p=>e[p])),null}function $F(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function K7e(e){const[r,n]=S.useState(e==="system"?null:e);return S.useEffect(()=>{if(e!=="system"){n(e);return}const o=$F(),a=()=>n(o?.matches?"dark":"light");return a(),o?.addEventListener("change",a),()=>{o?.removeEventListener("change",a)}},[e]),r!==null?r:$F()?.matches?"dark":"light"}const zF=typeof document<"u"?document:null;function O1(e=null,r={target:zF,actInsideInputWithModifier:!0}){const[n,o]=S.useState(!1),a=S.useRef(!1),i=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("+",` +`},a),i}function A3e(e,r){return e&&"run"in e?async function(n,o){const a=oO(n,{file:o,...r});await e.run(a,o)}:function(n,o){return oO(n,{file:o,...e||r})}}function aO(e){if(e)throw e}var $_,iO;function D3e(){if(iO)return $_;iO=1;var e=Object.prototype.hasOwnProperty,r=Object.prototype.toString,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=function(d){return typeof Array.isArray=="function"?Array.isArray(d):r.call(d)==="[object Array]"},i=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 $_=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(a);try{c=e.apply(this,l)}catch(d){const u=d;if(s&&n)throw u;return a(u)}s||(c&&c.then&&typeof c.then=="function"?c.then(i,a):c instanceof Error?a(c):i(c))}function a(l,...s){n||(n=!0,r(l,...s))}function i(l){a(null,l)}}class Qo extends Error{constructor(r,n,o){super(),typeof n=="string"&&(o=n,n=void 0);let a="",i={},l=!1;if(n&&("line"in n&&"column"in n?i={place:n}:"start"in n&&"end"in n?i={place:n}:"type"in n?i={ancestors:[n],place:n.position}:i={...n}),typeof r=="string"?a=r:!i.cause&&r&&(l=!0,a=r.message,i.cause=r),!i.ruleId&&!i.source&&typeof o=="string"){const c=o.indexOf(":");c===-1?i.ruleId=o:(i.source=o.slice(0,c),i.ruleId=o.slice(c+1))}if(!i.place&&i.ancestors&&i.ancestors){const c=i.ancestors[i.ancestors.length-1];c&&(i.place=c.position)}const s=i.place&&"start"in i.place?i.place.start:i.place;this.ancestors=i.ancestors||void 0,this.cause=i.cause||void 0,this.column=s?s.column:void 0,this.fatal=void 0,this.file,this.message=a,this.line=s?s.line:void 0,this.name=t1(i.place)||"1:1",this.place=i.place||void 0,this.reason=this.message,this.ruleId=i.ruleId||void 0,this.source=i.source||void 0,this.stack=l&&i.cause&&typeof i.cause.stack=="string"?i.cause.stack:"",this.actual,this.expected,this.note,this.url}}Qo.prototype.file="",Qo.prototype.name="",Qo.prototype.reason="",Qo.prototype.message="",Qo.prototype.stack="",Qo.prototype.column=void 0,Qo.prototype.line=void 0,Qo.prototype.ancestors=void 0,Qo.prototype.cause=void 0,Qo.prototype.fatal=void 0,Qo.prototype.place=void 0,Qo.prototype.ruleId=void 0,Qo.prototype.source=void 0;const Vl={basename:B3e,dirname:O3e,extname:I3e,join:L3e,sep:"/"};function B3e(e,r){if(r!==void 0&&typeof r!="string")throw new TypeError('"ext" argument must be a string');r1(e);let n=0,o=-1,a=e.length,i;if(r===void 0||r.length===0||r.length>e.length){for(;a--;)if(e.codePointAt(a)===47){if(i){n=a+1;break}}else o<0&&(i=!0,o=a+1);return o<0?"":e.slice(n,o)}if(r===e)return"";let l=-1,s=r.length-1;for(;a--;)if(e.codePointAt(a)===47){if(i){n=a+1;break}}else l<0&&(i=!0,l=a+1),s>-1&&(e.codePointAt(a)===r.codePointAt(s--)?s<0&&(o=a):(s=-1,o=l));return n===o?o=l:o<0&&(o=e.length),e.slice(n,o)}function O3e(e){if(r1(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 I3e(e){r1(e);let r=e.length,n=-1,o=0,a=-1,i=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?a<0?a=r:i!==1&&(i=1):a>-1&&(i=-1)}return a<0||n<0||i===0||i===1&&a===n-1&&a===o+1?"":e.slice(a,n)}function L3e(...e){let r=-1,n;for(;++r0&&e.codePointAt(e.length-1)===47&&(n+="/"),r?"/"+n:n}function V3e(e,r){let n="",o=0,a=-1,i=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("/")),a=l,i=0;continue}}else if(n.length>0){n="",o=0,a=l,i=0;continue}}r&&(n=n.length>0?n+"/..":"..",o=2)}else n.length>0?n+="/"+e.slice(a+1,l):n=e.slice(a+1,l),o=l-a-1;a=l,i=0}else s===46&&i>-1?i++:i=-1}return n}function r1(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const q3e={cwd:H3e};function H3e(){return"/"}function j_(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function U3e(e){if(typeof e=="string")e=new URL(e);else if(!j_(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 W3e(e)}function W3e(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];R_(w)&&R_(g)&&(g=z_(!0,w,g)),o[f]=[d,g,...v]}}}}const K3e=new M_().freeze();function N_(e,r){if(typeof r!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function P_(e,r){if(typeof r!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function B_(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 sO(e){if(!R_(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function cO(e,r,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+r+"` instead")}function Bb(e){return Q3e(e)?e:new G3e(e)}function Q3e(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function J3e(e){return typeof e=="string"||e2e(e)}function e2e(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}function t2e(){return K3e().use(Zwe).use(Swe).use($we).use(A3e,{allowDangerousHtml:!0}).use(vye,JM({attributes:{"*":["className"],svg:["width","height","viewBox","fill","ariaHidden"],path:["d","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin"]},tagNames:["svg","g","path","div"]},J6)).use(N0e,{allowDangerousHtml:!0})}function r2e(e){return(""+t2e().processSync(e)).trim()}function n2e(e){return Ab(XB(e),{includeHtml:!1,includeImageAlt:!1})}var O_,dO;function o2e(){if(dO)return O_;dO=1;var e=dP(),r=xb();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,a){a=arguments.length>1?a:this;for(var i=this.offset,l=0,s=this.items.length;i=o.length)return{done:!0};var i=o[a];return a++,{value:i,done:!1}})},n.prototype.entries=function(){var o=this.items,a=this.offset,i=0;return new e(function(){if(a>=o.length)return{done:!0};var l=o[a];return a++,{value:[i++,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 a=new n;return r(o,function(i){a.enqueue(i)}),a},n.of=function(){return n.from(arguments)},O_=n,O_}var a2e=o2e();const I_=Vg(a2e);var L_,uO;function i2e(){if(uO)return L_;uO=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++}},L_=e,L_}var l2e=i2e();const Ln=Vg(l2e);function Za(e){return!!e}function pO(e){return r=>!e(r)}function s2e(...e){return io(c2e,e)}const c2e=(e,r)=>r.every(n=>n(e));function d2e(...e){return io(u2e,e)}const u2e=(e,r)=>r.some(n=>n(e));function Xn(e){return e==null}function hO(e,r){return e[$u]===r}const $u="_stage",n1="_type",F_="_layout";function p2e(e){return Za(e.kind)&&!Za(e.element)}function h2e(e){return"tag"in e}function f2e(e){return"kind"in e}function m2e(e){return"participant"in e}function g2e(e){return"not"in e}function y2e(e){return"and"in e}function v2e(e){return"or"in e}function zu(e){switch(!0){case m2e(e):{const r=e.participant,n=zu(e.operator);return b2e(r,n)}case h2e(e):{if(Uc(e.tag)||"eq"in e.tag){const n=Uc(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 f2e(e):{if(Uc(e.kind)||"eq"in e.kind){const n=Uc(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 g2e(e):{const r=zu(e.not);return pO(r)}case y2e(e):{const r=e.and.map(zu);return s2e(r)}case v2e(e):{const r=e.or.map(zu);return d2e(r)}default:Xo(e)}}function b2e(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 x2e(e){return e._type==="dynamic"}function o1(...e){return io(Object.entries,e)}function Ru(e,...r){return typeof e=="string"||typeof e=="number"||typeof e=="symbol"?n=>fO(n,e,...r):fO(e,...r)}function fO(e,...r){let n=e;for(let o of r){if(n==null)return;n=n[o]}return n}function Ob(...e){return io(w2e,e,k2e)}const w2e=(e,r)=>e.map(r),k2e=e=>(r,n,o)=>({done:!1,hasNext:!0,next:e(r,n,o)});function _2e(e,r){let n=r.length-e.length;if(n===1){let[o,...a]=r;return Ns(o,{lazy:e,lazyArgs:a})}if(n===0){let o={lazy:e,lazyArgs:r};return Object.assign(a=>Ns(a,o),o)}throw Error("Wrong number of arguments")}function Ib(...e){return _2e(S2e,e)}function S2e(){let e=new Set;return r=>e.has(r)?H6:(e.add(r),{done:!1,hasNext:!0,next:r})}var V_={},mO;function E2e(){return mO||(mO=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,a,i,l=arguments.length;for(i=0;in.size)return!1;for(;a=o.next(),!a.done;)if(!n.has(a.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(),a;a=o.next(),!a.done;)r.add(a.value)},e.subtract=function(r,n){for(var o=n.values(),a;a=o.next(),!a.done;)r.delete(a.value)},e.intersect=function(r,n){for(var o=r.values(),a;a=o.next(),!a.done;)n.has(a.value)||r.delete(a.value)},e.disjunct=function(r,n){for(var o=r.values(),a,i=[];a=o.next(),!a.done;)n.has(a.value)&&i.push(a.value);for(o=n.values();a=o.next(),!a.done;)r.has(a.value)||r.add(a.value);for(var l=0,s=i.length;ln.size&&(o=r,r=n,n=o),r.size===0)return 0;if(r===n)return r.size;for(var a=r.values(),i,l=0;i=a.next(),!i.done;)n.has(i.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 a=r.size+n.size-o;return o/a},e.overlap=function(r,n){var o=e.intersectionSize(r,n);return o===0?0:o/Math.min(r.size,n.size)}})(V_)),V_}var gO=E2e();function q_(...e){let r=new Set;for(const n of e)for(const o of n)r.add(o);return r}function qh(e,...r){let n=new Set;if(e.size===0)return n;let o=Il(r,2)?gO.intersection(...r):r[0];if(o.size===0)return n;for(const a of e)o.has(a)&&n.add(a);return n}function H_(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 C2e(e,r){return e.size===r.size&&[...e].every(n=>r.has(n))}function $2e(e,r){return gO.symmetricDifference(e,r)}function a1(e){return e?yO(e):yO}function yO(e){const r=e[Symbol.iterator](),{value:n}=r.next();return n}const Lb=e=>typeof e=="function";function Bs(e,r){const n=r??e;He(Lb(n));function*o(a){for(const i of a)n(i)&&(yield i)}return r?o(e):o}const vO={asc:(e,r)=>e>r,desc:(e,r)=>ee(i,a)}function U_(e,r,...n){let o=typeof e=="function"?e:e[0],a=typeof e=="function"?"asc":e[1],{[a]:i}=vO,l=r===void 0?void 0:U_(r,...n);return(s,c)=>{let d=o(s),u=o(c);return i(d,u)?1:i(u,d)?-1:l?.(s,c)??0}}function R2e(e){if(bO(e))return!0;if(typeof e!="object"||!Array.isArray(e))return!1;let[r,n,...o]=e;return bO(r)&&typeof n=="string"&&n in vO&&o.length===0}const bO=e=>typeof e=="function"&&e.length===1;function j2e(...e){return io(T2e,e,A2e)}const T2e=(e,r)=>e.filter(r),A2e=e=>(r,n,o)=>e(r,n,o)?{done:!1,hasNext:!0,next:r}:H6;function xO(...e){return io(D2e,e,M2e)}const D2e=(e,r)=>e.flatMap(r),M2e=e=>(r,n,o)=>{let a=e(r,n,o);return Array.isArray(a)?{done:!1,hasNext:!0,hasMany:!0,next:a}:{done:!1,hasNext:!0,next:a}};function W_(...e){return io(N2e,e)}const N2e=(e,r)=>{let n=Object.create(null);for(let o=0;oNs(r,...e)}function kO(...e){return z2e(I2e,e)}const I2e=(e,r)=>[...e].sort(r);var _O=Symbol.for("immer-nothing"),SO=Symbol.for("immer-draftable"),va=Symbol.for("immer-state");function qi(e,...r){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var i1=Object.getPrototypeOf;function Hh(e){return!!e&&!!e[va]}function ju(e){return e?CO(e)||Array.isArray(e)||!!e[SO]||!!e.constructor?.[SO]||l1(e)||qb(e):!1}var L2e=Object.prototype.constructor.toString(),EO=new WeakMap;function CO(e){if(!e||typeof e!="object")return!1;const r=Object.getPrototypeOf(e);if(r===null||r===Object.prototype)return!0;const n=Object.hasOwnProperty.call(r,"constructor")&&r.constructor;if(n===Object)return!0;if(typeof n!="function")return!1;let o=EO.get(n);return o===void 0&&(o=Function.toString.call(n),EO.set(n,o)),o===L2e}function Fb(e,r,n=!0){Vb(e)===0?(n?Reflect.ownKeys(e):Object.keys(e)).forEach(a=>{r(a,e[a],e)}):e.forEach((o,a)=>r(a,o,e))}function Vb(e){const r=e[va];return r?r.type_:Array.isArray(e)?1:l1(e)?2:qb(e)?3:0}function X_(e,r){return Vb(e)===2?e.has(r):Object.prototype.hasOwnProperty.call(e,r)}function $O(e,r,n){const o=Vb(e);o===2?e.set(r,n):o===3?e.add(n):e[r]=n}function F2e(e,r){return e===r?e!==0||1/e===1/r:e!==e&&r!==r}function l1(e){return e instanceof Map}function qb(e){return e instanceof Set}function Tu(e){return e.copy_||e.base_}function Z_(e,r){if(l1(e))return new Map(e);if(qb(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const n=CO(e);if(r===!0||r==="class_only"&&!n){const o=Object.getOwnPropertyDescriptors(e);delete o[va];let a=Reflect.ownKeys(o);for(let i=0;i1&&Object.defineProperties(e,{set:Hb,add:Hb,clear:Hb,delete:Hb}),Object.freeze(e),r&&Object.values(e).forEach(n=>K_(n,!0))),e}function V2e(){qi(2)}var Hb={value:V2e};function Ub(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var q2e={};function Au(e){const r=q2e[e];return r||qi(0,e),r}var s1;function zO(){return s1}function H2e(e,r){return{drafts_:[],parent_:e,immer_:r,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function RO(e,r){r&&(Au("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=r)}function Q_(e){J_(e),e.drafts_.forEach(U2e),e.drafts_=null}function J_(e){e===s1&&(s1=e.parent_)}function jO(e){return s1=H2e(s1,e)}function U2e(e){const r=e[va];r.type_===0||r.type_===1?r.revoke_():r.revoked_=!0}function TO(e,r){r.unfinalizedDrafts_=r.drafts_.length;const n=r.drafts_[0];return e!==void 0&&e!==n?(n[va].modified_&&(Q_(r),qi(4)),ju(e)&&(e=Wb(r,e),r.parent_||Gb(r,e)),r.patches_&&Au("Patches").generateReplacementPatches_(n[va].base_,e,r.patches_,r.inversePatches_)):e=Wb(r,n,[]),Q_(r),r.patches_&&r.patchListener_(r.patches_,r.inversePatches_),e!==_O?e:void 0}function Wb(e,r,n){if(Ub(r))return r;const o=e.immer_.shouldUseStrictIteration(),a=r[va];if(!a)return Fb(r,(i,l)=>AO(e,a,r,i,l,n),o),r;if(a.scope_!==e)return r;if(!a.modified_)return Gb(e,a.base_,!0),a.base_;if(!a.finalized_){a.finalized_=!0,a.scope_.unfinalizedDrafts_--;const i=a.copy_;let l=i,s=!1;a.type_===3&&(l=new Set(i),i.clear(),s=!0),Fb(l,(c,d)=>AO(e,a,i,c,d,n,s),o),Gb(e,i,!1),n&&e.patches_&&Au("Patches").generatePatches_(a,n,e.patches_,e.inversePatches_)}return a.copy_}function AO(e,r,n,o,a,i,l){if(a==null||typeof a!="object"&&!l)return;const s=Ub(a);if(!(s&&!l)){if(Hh(a)){const c=i&&r&&r.type_!==3&&!X_(r.assigned_,o)?i.concat(o):void 0,d=Wb(e,a,c);if($O(n,o,d),Hh(d))e.canAutoFreeze_=!1;else return}else l&&n.add(a);if(ju(a)&&!s){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||r&&r.base_&&r.base_[o]===a&&s)return;Wb(e,a),(!r||!r.scope_.parent_)&&typeof o!="symbol"&&(l1(n)?n.has(o):Object.prototype.propertyIsEnumerable.call(n,o))&&Gb(e,a)}}}function Gb(e,r,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&K_(r,n)}function W2e(e,r){const n=Array.isArray(e),o={type_:n?1:0,scope_:r?r.scope_:zO(),modified_:!1,finalized_:!1,assigned_:{},parent_:r,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let a=o,i=e8;n&&(a=[o],i=c1);const{revoke:l,proxy:s}=Proxy.revocable(a,i);return o.draft_=s,o.revoke_=l,s}var e8={get(e,r){if(r===va)return e;const n=Tu(e);if(!X_(n,r))return G2e(e,n,r);const o=n[r];return e.finalized_||!ju(o)?o:o===t8(e.base_,r)?(n8(e),e.copy_[r]=o8(o,e)):o},has(e,r){return r in Tu(e)},ownKeys(e){return Reflect.ownKeys(Tu(e))},set(e,r,n){const o=DO(Tu(e),r);if(o?.set)return o.set.call(e.draft_,n),!0;if(!e.modified_){const a=t8(Tu(e),r),i=a?.[va];if(i&&i.base_===n)return e.copy_[r]=n,e.assigned_[r]=!1,!0;if(F2e(n,a)&&(n!==void 0||X_(e.base_,r)))return!0;n8(e),r8(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_[r]=!0),!0},deleteProperty(e,r){return t8(e.base_,r)!==void 0||r in e.base_?(e.assigned_[r]=!1,n8(e),r8(e)):delete e.assigned_[r],e.copy_&&delete e.copy_[r],!0},getOwnPropertyDescriptor(e,r){const n=Tu(e),o=Reflect.getOwnPropertyDescriptor(n,r);return o&&{writable:!0,configurable:e.type_!==1||r!=="length",enumerable:o.enumerable,value:n[r]}},defineProperty(){qi(11)},getPrototypeOf(e){return i1(e.base_)},setPrototypeOf(){qi(12)}},c1={};Fb(e8,(e,r)=>{c1[e]=function(){return arguments[0]=arguments[0][0],r.apply(this,arguments)}}),c1.deleteProperty=function(e,r){return c1.set.call(this,e,r,void 0)},c1.set=function(e,r,n){return e8.set.call(this,e[0],r,n,e[0])};function t8(e,r){const n=e[va];return(n?Tu(n):e)[r]}function G2e(e,r,n){const o=DO(r,n);return o?"value"in o?o.value:o.get?.call(e.draft_):void 0}function DO(e,r){if(!(r in e))return;let n=i1(e);for(;n;){const o=Object.getOwnPropertyDescriptor(n,r);if(o)return o;n=i1(n)}}function r8(e){e.modified_||(e.modified_=!0,e.parent_&&r8(e.parent_))}function n8(e){e.copy_||(e.copy_=Z_(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var Y2e=class{constructor(r){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(n,o,a)=>{if(typeof n=="function"&&typeof o!="function"){const l=o;o=n;const s=this;return function(d=l,...u){return s.produce(d,p=>o.call(this,p,...u))}}typeof o!="function"&&qi(6),a!==void 0&&typeof a!="function"&&qi(7);let i;if(ju(n)){const l=jO(this),s=o8(n,void 0);let c=!0;try{i=o(s),c=!1}finally{c?Q_(l):J_(l)}return RO(l,a),TO(i,l)}else if(!n||typeof n!="object"){if(i=o(n),i===void 0&&(i=n),i===_O&&(i=void 0),this.autoFreeze_&&K_(i,!0),a){const l=[],s=[];Au("Patches").generateReplacementPatches_(n,i,l,s),a(l,s)}return i}else qi(1,n)},this.produceWithPatches=(n,o)=>{if(typeof n=="function")return(s,...c)=>this.produceWithPatches(s,d=>n(d,...c));let a,i;return[this.produce(n,o,(s,c)=>{a=s,i=c}),a,i]},typeof r?.autoFreeze=="boolean"&&this.setAutoFreeze(r.autoFreeze),typeof r?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(r.useStrictShallowCopy),typeof r?.useStrictIteration=="boolean"&&this.setUseStrictIteration(r.useStrictIteration)}createDraft(r){ju(r)||qi(8),Hh(r)&&(r=X2e(r));const n=jO(this),o=o8(r,void 0);return o[va].isManual_=!0,J_(n),o}finishDraft(r,n){const o=r&&r[va];(!o||!o.isManual_)&&qi(9);const{scope_:a}=o;return RO(a,n),TO(void 0,a)}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 i=n[o];if(i.path.length===0&&i.op==="replace"){r=i.value;break}}o>-1&&(n=n.slice(o+1));const a=Au("Patches").applyPatches_;return Hh(r)?a(r,n):this.produce(r,i=>a(i,n))}};function o8(e,r){const n=l1(e)?Au("MapSet").proxyMap_(e,r):qb(e)?Au("MapSet").proxySet_(e,r):W2e(e,r);return(r?r.scope_:zO()).drafts_.push(n),n}function X2e(e){return Hh(e)||qi(10,e),MO(e)}function MO(e){if(!ju(e)||Ub(e))return e;const r=e[va];let n,o=!0;if(r){if(!r.modified_)return r.base_;r.finalized_=!0,n=Z_(e,r.scope_.immer_.useStrictShallowCopy_),o=r.scope_.immer_.shouldUseStrictIteration()}else n=Z_(e,!0);return Fb(n,(a,i)=>{$O(n,a,MO(i))},o),r&&(r.finalized_=!1),n}var Z2e=new Y2e,Uh=Z2e.produce;function $xt(e){return e}function K2e(e){return Ns(e,j2e(r=>!!r.notation),W_(Ru("notation")),G_(Y_(W_(Ru("shape")),G_(Y_(W_(Ru("color")),G_(Y_(Ob(Ru("kind")),Ib())),o1(),Ob(([r,n])=>({kinds:n,color:r})))),o1(),xO(([r,n])=>n.map(({color:o,kinds:a})=>({shape:r,color:o,kinds:a}))))),o1(),xO(([r,n])=>n.map(({shape:o,color:a,kinds:i})=>({title:r,shape:o,color:a,kinds:i}))),kO(Ru("shape"),Ru("title"),[r=>r.kinds.length,"desc"]))}const wo=(e,r)=>e===r||Xn(e)&&Xn(r)?!1:!ab(e,r),Yb=5;function Q2e(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,P2e(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 J2e(e,r,n){if(wo(r.icon??"none",e.icon??"none")){const o=Za(e.icon)&&e.icon!=="none";switch(!0){case(o&&Za(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&&Za(r.icon)&&r.icon!=="none"):return n?(e.icon=r.icon,!0):!1}}return!0}function a8(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 e4e(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=a8(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 t4e(e,r,n){return e.title=r.title,Xn(r.description)?delete e.description:e.description=a8(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])),a=new Map(e.edges.map(u=>[u.id,u])),i=r4e(r.nodes,o,n),l=n4e(r.edges,a,n),s=K2e(i),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,[F_]:"manual",...s&&s.length>0?{notation:{nodes:s}}:{},nodes:i,edges:l});x2e(e)&&c._type==="dynamic"&&(c.variant=e.variant);const d=[...n];return Il(d,1)?c.drifts=d:"drifts"in c&&delete c.drifts,c}function r4e(e,r,n){const o=e.map(a=>{const i=r.get(a.id);return i&&r.delete(i.id),Uh(a,l=>{if(!i){l.drifts=["removed"],n.add("nodes-removed");return}Q2e(l,i);const s=new Set,c=a.children.length>0,d=i.children.length>0;(wo(l.modelRef,i.modelRef)||wo(l.deploymentRef,i.deploymentRef))&&s.add("modelRef-changed"),d&&!c&&s.add("became-compound"),!d&&c&&s.add("became-leaf"),wo(l.parent,i.parent)&&s.add("parent-changed");const u=l.width+Yb>=i.width&&l.height+Yb>=i.height;wo(l.shape,i.shape)&&(u?l.shape=i.shape:s.add("shape-changed")),J2e(l,i,u&&d===c)||s.add("label-changed"),(c?t4e:e4e)(l,i,u)||s.add("label-changed"),wo(a.notation,i.notation)&&(l.notation=i.notation??null),c&&d&&$2e(new Set(a.children),new Set(i.children)).size>0&&s.add("children-changed");const f=[...s];Il(f,1)?(n.add("nodes-drift"),l.drifts=f):delete l.drifts})});return r.size>0&&n.add("nodes-added"),o}function n4e(e,r,n){const o=e.map(a=>{let i=r.get(a.id)??Ns(r.values(),Bs(l=>l.source===a.source&&l.target===a.target),a1());return i&&r.delete(i.id),Uh(a,l=>{if(!i){l.drifts=["removed"],n.add("edges-removed");return}const s=new Set,c=a.id===i.id;switch(!0){case(c&&a.source==i.source&&a.target==i.target):{wo(l.dir??"forward",i.dir??"forward")&&s.add("direction-changed");break}case(c&&a.source==i.target&&a.target==i.source):{a.source!==a.target&&s.add("direction-changed");break}case c:{a.source!=i.source&&s.add("source-changed"),a.target!=i.target&&s.add("target-changed");break}default:{He(a.id!=i.id,"Unexpected case in edge drift detection, ids should not match"),He(a.source==i.source,"Unexpected case in edge drift detection, sources should match"),He(a.target==i.target,"Unexpected case in edge drift detection, targets should match"),wo(l.dir??"forward",i.dir??"forward")&&s.add("direction-changed");break}}l.color=i.color,l.line=i.line,l.navigateTo=i.navigateTo??null,l.tags=i.tags?[...i.tags]:null,wo(a.notes,i.notes)&&(Xn(a.notes)!==Xn(i.notes)&&s.add("notes-changed"),l.notes=i.notes??a.notes),i.astPath?l.astPath=i.astPath:delete l.astPath;const d=wO(a,["label","description","technology","labelBBox"]),u=wO(i,["label","description","technology","labelBBox"]);if(wo(d,u))switch(!0){case(i.labelBBox&&!a.labelBBox):{s.add("label-added");break}case(a.labelBBox&&!i.labelBBox):{s.add("label-removed");break}case(!!a.labelBBox&&!!i.labelBBox):{i.labelBBox.width*i.labelBBox.height>(a.labelBBox.width+Yb)*(a.labelBBox.height+Yb)&&(l.labelBBox.width=Math.round(i.labelBBox.width),l.labelBBox.height=Math.round(i.labelBBox.height)),wo(a.label,i.label)&&(Xn(i.label)!==Xn(a.label)&&s.add("label-changed"),l.label=i.label??a.label),wo(a.description,i.description)&&(Xn(i.description)!==Xn(a.description)&&s.add("label-changed"),i.description&&(l.description=a8(a.description,i.description))),wo(a.technology,i.technology)&&(Xn(i.technology)!==Xn(a.technology)&&s.add("label-changed"),l.technology=i.technology??a.technology??null);break}default:He(!a.labelBBox,"Unexpected case in edge labelBBox drift detection"),He(!i.labelBBox,"Unexpected case in next labelBBox drift detection");break}const p=[...s];Il(p,1)?(n.add("edges-drift"),l.drifts=p):delete l.drifts})});return r.size>0&&n.add("edges-added"),o}function o4e(e,r){const{drifts:n,...o}=NO(e,r);if(n){const a=new Set;n.includes("type-changed")&&a.add("type-changed");const i=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=i.get(u.id);return p&&i.delete(p.id),Uh(u,f=>{if(!p){a.add("nodes-added"),f.drifts=["added"];return}p.drifts?(a.add("nodes-drift"),f.drifts=[...p.drifts]):delete f.drifts})});i.size>0&&a.add("nodes-removed");const c=e.edges.map(u=>{const p=l.get(u.id)??Ns(l.values(),Bs(f=>f.source===u.source&&f.target===u.target),a1());return p&&l.delete(p.id),Uh(u,f=>{if(!p){a.add("edges-added"),f.drifts=["added"];return}p.drifts?(a.add("edges-drift"),f.drifts=[...p.drifts]):delete f.drifts})});l.size>0&&a.add("edges-removed");const d=[...a];return Uh(e,u=>{Il(d,1)?u.drifts=d:delete u.drifts,u.nodes=s,u.edges=c,u[F_]="auto"})}return Uh(e,a=>{delete a.drifts,a[F_]="auto"})}function Os(e){return e.summary??e.description}function Wh(e){return e.description??e.summary}const d1="@group";function a4e(e){return e.kind===d1}function PO(e,r){return He(typeof e=="string"&&e!=""),"@"+e+"."+r}function i4e(e){return e.startsWith("@")}function l4e(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 u1(e){return e.startsWith("step-")}function BO(e){if(!u1(e))throw new Error(`Invalid step edge id: ${e}`);return parseFloat(e.slice(5))}function s4e(...e){return io(c4e,e)}function c4e(e,r){let n={...e};for(let[o,a]of Object.entries(n))r(a,o,e)&&delete n[o];return n}var i8={},OO;function l8(){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,a=Math.pow(2,7)-1,i=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<=a?Int8Array:d<=i?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]},a.prototype.peek=function(i){var l=this.items[i];if(!(typeof l>"u"))return this.V[l]},a.prototype.forEach=function(i,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 i++,i=l)return{done:!0};var u=c[s];return i++,i=l)return{done:!0};var p=c[s],f=d[s];return i++,i"u"))return this.splayOnTop(l),this.V[l]},a.prototype.peek=function(i){var l=this.items.get(i);if(!(typeof l>"u"))return this.V[l]},a.prototype.splayOnTop=e.prototype.splayOnTop,a.prototype.forEach=e.prototype.forEach,a.prototype.keys=e.prototype.keys,a.prototype.values=e.prototype.values,a.prototype.entries=e.prototype.entries,typeof Symbol<"u"&&(a.prototype[Symbol.iterator]=a.prototype.entries),a.prototype.inspect=e.prototype.inspect,a.from=function(i,l,s,c){if(arguments.length<2){if(c=o.guessLength(i),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 a(l,s,c);return r(i,function(u,p){d.set(p,u)}),d},c8=a,c8}var p4e=u4e();const qO=Vg(p4e);function p1(e){return s4e(e,r=>r===void 0)}const h4e=Symbol.for("text"),f4e=Symbol.for("html"),Is="",HO=new qO(500),UO=new qO(500);class ur{static getOrCreateFromText(r){if(r.trim()===Is)return ur.EMPTY;let n=UO.get(r);return n||(n=new ur({txt:r}),UO.set(r,n),n)}static getOrCreateFromMarkdown(r){if(r.trim()===Is)return ur.EMPTY;let n=HO.get(r);return n||(n=new ur({md:r}),HO.set(r,n),n)}static memoize(r,n,o){return ir(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:Is})}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()===Is):(this.$source=r,this.isEmpty=!0,"md"in r?(this.isEmpty=r.md===Is,this.isMarkdown=!0):this.isEmpty=r.txt===Is),this.nonEmpty=!this.isEmpty}get text(){if(this.isEmpty||this.$source===null)return Is;const r=this.$source;return"txt"in r?r.txt:ir(this,h4e,()=>n2e(r.md))}get md(){if(this.isEmpty||this.$source===null)return Is;const r=this.$source;if("md"in r)return r.md;if("txt"in r)return r.txt;Xo(r)}get html(){if(this.isEmpty||this.$source===null)return Is;const r=this.$source;return"txt"in r?r.txt:ir(this,f4e,()=>r2e(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 h1;(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(Uc(c))throw new Error(`Expected FqnRef, got: "${c}"`);if(n(c))return PO(c.project,c.model);if(r(c))return c.model;throw new Error("Expected FqnRef.ModelRef or FqnRef.ImportRef")}e.flatten=o;function a(c){return r(c)||n(c)}e.isModelRef=a;function i(c){return"deployment"in c&&"element"in c}e.isInsideInstanceRef=i;function l(c){return"deployment"in c&&!("element"in c)}e.isDeploymentElementRef=l;function s(c){return l(c)||i(c)}e.isDeploymentRef=s})(h1||(h1={}));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}=d8.fromPoints(u);return{x:p,y:f,width:g-p,height:v-f}}e.fromPoints=o;function a(...u){if(He(Il(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 d8;(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 a(l){return{x:l.x1,y:l.y1,width:l.x2-l.x1,height:l.y2-l.y1}}e.toBBox=a;function i(l,s){return l===s?!0:l.x1<=s.x1&&l.y1<=s.y1&&l.x2>=s.x2&&l.y2>=s.y2}e.includes=i})(d8||(d8={}));class ba{constructor(r,n){this.x=r,this.y=n}static create(...r){return r.length===2?new ba(r[0],r[1]):new ba(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 ba(this.x+r.x,this.y+r.y)}subtract(r){return new ba(this.x-r.x,this.y-r.y)}multiply(r){return new ba(this.x*r,this.y*r)}divide(r){return new ba(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 ba(0,0):new ba(this.x/r,this.y/r)}round(){return new ba(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 ba?e[0]:e.length===2?new ba(e[0],e[1]):new ba(e[0].x,e[0].y)}function u8(e){return u1(e)&&e.includes(".")?e.slice(0,e.indexOf(".")+1):null}function WO(e){const r=typeof e=="string"?e:e.color;return r.startsWith("#")||r.startsWith("rgb")}function p8(...e){return io(m4e,e)}function m4e(e,r){let n=[...e];return n.sort(r),n}const g4e=["tomato","grass","blue","ruby","orange","indigo","pink","teal","purple","amber","crimson","red","lime","yellow","violet"];function y4e(e,r,n){let o=e.get(r);return o||(o=n(r),e.set(r,o)),o}function v4e(e){let r=5381;const n=e.length;He(n>0,"stringHash: empty string");for(let o=0;o>>0).toString(36)}function f1(e,r){const n=r??e;He(Lb(n));function o(a){for(const i of a)if(n(i))return i}return r?o(e):o}function b4e(e,r){const n=e;He(Lb(n));function*o(a){for(const i of a)yield n(i)}return o}function m1(e){return e?Array.from(e):r=>Array.from(r)}function x4e(e){return e?new Set(e):r=>new Set(r)}function GO(e,r){const n=r??e;He(Lb(n));function o(a){for(const i of a)if(n(i))return!0;return!1}return r?o(e):o}function w4e(e,r){const n=e;He(n>=0,"Count must be a non-negative number");function*o(a){let i=0;for(const l of a){if(i>=n)break;yield l,i++}}return a=>o(a)}function k4e(e,r){let n=Math.ceil(e),o=Math.floor(r);if(o{setTimeout(()=>{n(_4e)},r??100)})}function Xb(e){const r=Wc([...e]),n=new Set(r),o=new Map(r.map(l=>[l._literalId,l])),a=new Ln(()=>null),i=r.reduce((l,s,c,d)=>(l.set(s,d.slice(c+1).filter(aP(s)).map(u=>(n.delete(u),u)).reduce((u,p)=>(u.some(Yn(p))||(u.push(p),a.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=>a.get(l),children:l=>i.get(l),flatten:()=>new Set([...n,...r.reduce((l,s)=>{const c=i.get(s);return c.length===0?(l.push(s),l):(c.length>1&&l.push(...c),l)},[])])}}const h8=(e,r)=>e.size>2&&r.size!==e.size?new Set(Wc([...Xb(e).flatten(),...r])):e.size>1?new Set(Wc([...e])):e;function XO(e,r,n){const o=c=>r.has(c);let a=new Set([e]);const i={incomers:new Set,subjects:new Set([e]),outgoers:new Set};let l=new Set(n.incoming.flatMap(c=>{if(i.subjects.add(c.target),i.incomers.add(c.source),a.add(c.target),c.target!==e){let p=c.target.parent;for(;p&&p!==e;)a.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(i.subjects.add(c.source),i.outgoers.add(c.target),a.add(c.source),c.source!==e){let p=c.source.parent;for(;p&&p!==e;)a.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:h8(l,i.incomers),incoming:new Set(n.incoming),subjects:h8(a,i.subjects),outgoing:new Set(n.outgoing),outgoers:h8(s,i.outgoers)}}function ZO(e,r,n,o="global"){const a=n?r.findView(n):null;if(o==="view")return He(a,'Scope view id is required when scope is "view"'),S4e(e,a,r);const i=r.element(e),l=x4e(i.ascendingSiblings());return XO(i,l,{incoming:[...i.incoming()],outgoing:[...i.outgoing()]})}function S4e(e,r,n){const o=n.element(e);let a={incoming:m1(Bs(o.incoming(),s=>r.includesRelation(s.id))),outgoing:m1(Bs(o.outgoing(),s=>r.includesRelation(s.id)))};const i=aP(o),l=new Set([...o.ascendingSiblings(),...Ns(r.elements(),b4e(s=>s.element),Bs(s=>s!==o&&i(s)))]);return XO(o,l,a)}var KO;(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),a=(0,e.isDirectedBetween)(n,r);return i=>o(i)||a(i)},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 a=>n(a)||o(a)}})(KO||(KO={}));const E4e=Symbol.for("nodejs.util.inspect.custom");function g1(e){return e===""||e===void 0?!0:Array.isArray(e)?e.length===0:Object.keys(e).length===0}function f8(...e){return io(C4e,e)}function C4e(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 $4e(e,r);if(e instanceof Set&&r instanceof Set)return z4e(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]:a}=e,{[o]:i}=r;if(a!==i||!Object.is(a,i))return!1}return!0}function $4e(e,r){if(e.size!==r.size)return!1;for(let[n,o]of e){let a=r.get(n);if(o!==a||!Object.is(o,a))return!1}return!0}function z4e(e,r){if(e.size!==r.size)return!1;for(let n of e)if(!r.has(n))return!1;return!0}class QO{Aux;get style(){return ir(this,"style",()=>p1({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 qg(this.id)}get shape(){return this.style.shape}get color(){return this.style.color}get summary(){return ur.memoize(this,"summary",Os(this.$node))}get description(){return ur.memoize(this,"description",Wh(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=Ug(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 ir(this,Symbol.for("allOutgoing"),()=>Zc.from(new Set(this.outgoingModelRelationships()),new Set(this.outgoing())))}get allIncoming(){return ir(this,Symbol.for("allIncoming"),()=>Zc.from(new Set(this.incomingModelRelationships()),new Set(this.incoming())))}hasMetadata(){return!!this.$node.metadata&&!g1(this.$node.metadata)}getMetadata(r){return r?this.$node.metadata?.[r]:this.$node.metadata??{}}isTagged(r){return this.tags.includes(r)}}class JO extends QO{constructor(r,n){super(),this.$model=r,this.$node=n,this.id=n.id,this._literalId=n.id,this.title=n.title,this.hierarchyLevel=vb(n.id)}id;_literalId;title;hierarchyLevel;get parent(){return this.$model.parent(this)}get kind(){return this.$node.kind}get tags(){return ir(this,Symbol.for("tags"),()=>Ib([...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=a1(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 a of o.element.outgoing())r.add(a);for(const a of o.element.incoming())n.add(a)}return this._relationshipsFromInstances}outgoingModelRelationships(){return this.relationshipsFromInstances().outgoing.values()}incomingModelRelationships(){return this.relationshipsFromInstances().incoming.values()}internalModelRelationships(){const{outgoing:r,incoming:n}=this.relationshipsFromInstances();return qh(n,r)}}class eI extends QO{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=vb(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 ir(this,"style",()=>p1({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 ir(this,Symbol.for("tags"),()=>Ib([...this.$instance.tags??[],...this.element.tags]))}get kind(){return this.element.kind}get summary(){return ur.memoize(this,"summary",Os(this.$instance)??Os(this.element.$element))}get description(){return ur.memoize(this,"description",Wh(this.$instance)??Wh(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 R4e{constructor(r,n){this.instance=r,this.element=n}get id(){return this.instance.id}get _literalId(){return this.instance.id}get style(){return ir(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 j4e{constructor(r,n){this.$model=r,this.$relationship=n,this.source=r.deploymentRef(n.source),this.target=r.deploymentRef(n.target);const o=Ug(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 Za(this.$relationship.title)?this.$relationship.title:null}get technology(){return this.$relationship.technology??null}get hasSummary(){return!!this.$relationship.summary&&!!this.$relationship.description&&!f8(this.$relationship.summary,this.$relationship.description)}get summary(){return ur.memoize(this,"summary",Os(this.$relationship))}get description(){return ur.memoize(this,"description",Wh(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&&!g1(this.$relationship.metadata)}getMetadata(r){return r?this.$relationship.metadata?.[r]:this.$relationship.metadata??{}}isTagged(r){return this.tags.includes(r)}}class Zc{constructor(r=new Set,n=new Set){this.model=r,this.deployment=n}static empty(){return new Zc}static from(r,n){return new Zc(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 Zc.from(qh(this.model,r.model),qh(this.deployment,r.deployment))}difference(r){return Zc.from(H_(this.model,r.model),H_(this.deployment,r.deployment))}union(r){return Zc.from(q_(this.model,r.model),q_(this.deployment,r.deployment))}}function tI(e,r){return n=>e.source===n.source&&e.target===n.target}function m8(e,r,n="directed"){if(e===r)return[];if(oP(e,r))return[];const o=qh(e.allOutgoing,r.allIncoming),a=o.size>0?new Ka(e,r,o):null;if(n==="directed")return a?[a]:[];const i=qh(e.allIncoming,r.allOutgoing),l=i.size>0?new Ka(r,e,i):null;return a&&l?[a,l]:a?[a]:l?[l]:[]}function rI(e,r,n="both"){if(e.allIncoming.size===0&&e.allOutgoing.size===0)return[];const o=[],a=[];for(const i of r)if(e!==i)for(const l of m8(e,i,n))l.source===e?o.push(l):a.push(l);return[...o,...a]}function T4e(e){return[...e].reduce((r,n,o,a)=>(o===a.length-1||r.push(...rI(n,a.slice(o+1),"both")),r),[])}const A4e={__proto__:null,findConnection:m8,findConnectionsBetween:rI,findConnectionsWithin:T4e};class Ka{constructor(r,n,o=new Set){this.source=r,this.target=n,this.relations=o,this.id=v4e(`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()&&GO(this.relations,pO(tI(this)))}get directRelations(){return new Set(Bs(this.relations,tI(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 Ka(this.source,this.target,q_(this.relations,r.relations))}difference(r){return new Ka(this.source,this.target,H_(this.relations,r.relations))}intersect(r){return He(r instanceof Ka,"Cannot intersect connection with different type"),new Ka(this.source,this.target,qh(this.relations,r.relations))}equals(r){He(r instanceof Ka,"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&&C2e(this.relations,n.relations)}update(r){return new Ka(this.source,this.target,r)}[E4e](r,n,o){const a=this.toString();return Object.defineProperty(a,"constructor",{value:Ka,enumerable:!1}),a}toString(){return[this.expression,this.relations.size?" relations:":" relations: [ ]",...[...this.relations].map(r=>" "+r.expression)].join(` +`)}reversed(r=!1){if(!r)return new Ka(this.target,this.source);const[n]=m8(this.target,this.source,"directed");return n??new Ka(this.target,this.source,new Set)}}function D4e(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 M4e(...e){return io(N4e,e)}const N4e=e=>e.at(-1);function nI(e,r,n){return typeof r=="number"||r===void 0?o=>o.split(e,r):e.split(r,n)}function Zb(...e){return io(Object.values,e)}class Kb{constructor(r,n){this.$model=r,this.$element=n,this.id=this.$element.id,this._literalId=this.$element.id;const[o,a]=l4e(this.id);o?(this.imported={from:o,fqn:a},this.hierarchyLevel=vb(a)):(this.imported=null,this.hierarchyLevel=vb(this.id))}Aux;id;_literalId;hierarchyLevel;imported;get name(){return qg(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 ir(this,Symbol.for("tags"),()=>Ib([...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&&!f8(this.$element.summary,this.$element.description)}get summary(){return ur.memoize(this,"summary",Os(this.$element))}get description(){return ur.memoize(this,"description",Wh(this.$element))}get technology(){return this.$element.technology??null}get links(){return this.$element.links??[]}get defaultView(){return ir(this,Symbol.for("defaultView"),()=>a1(this.scopedViews())??null)}get isRoot(){return this.parent===null}get style(){return ir(this,"style",()=>p1({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=Ug(this.id,r.id);return n?this.$model.element(n):null}children(){return this.$model.children(this)}descendants(r){return r?iP([...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 ir(this,Symbol.for("allOutgoing"),()=>new Set(this.outgoing()))}get allIncoming(){return ir(this,Symbol.for("allIncoming"),()=>new Set(this.incoming()))}views(){return ir(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 ir(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 Za(a1(this.deployments()))}deployments(){return this.$model.deployment.instancesOf(this)}hasMetadata(){return!!this.$element.metadata&&!g1(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,xa="/",g8=e=>{if(He(!e.includes(` +`),"View title cannot contain newlines"),e.includes(xa)){const r=e.split(xa).map(n=>n.trim()).filter(n=>n.length>0);return Il(r,1)?r:[""]}return[e.trim()]},Qb=e=>g8(e).join(xa),P4e=e=>{const r=g8(e);return Il(r,2)?r.slice(0,-1).join(xa):null},y8=e=>e.includes(xa)?g8(e).pop()??e:e.trim();class B4e{constructor(r){this.$model=r;const n=this.$deployments=r.$data.deployments,o=Zb(n.elements);for(const a of Wc(o)){const i=this.addElement(a);for(const l of i.tags)this.#c.get(l).add(i);i.isInstance()&&this.#r.get(i.element.id).add(i)}for(const a of Zb(n.relations)){const i=this.addRelation(a);for(const l of i.tags)this.#c.get(l).add(i)}}#e=new Map;#i=new Map;#t=new Ln(()=>new Set);#r=new Ln(()=>new Set);#l=new Set;#n=new Map;#s=new Ln(()=>new Set);#a=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 JO||r instanceof eI)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(h1.isInsideInstanceRef(r)){const{deployment:n,element:o}=r;return y4e(this.#d,`${n}@${o}`,()=>new R4e(this.instance(n),this.$model.element(o)))}return this.element(r.deployment)}relationships(){return this.#n.values()}relationship(r){return mt(this.#n.get(yr(r)),`DeploymentRelationModel ${r} 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.#i.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 a of o)a.id!==n&&(yield a)}*ancestors(r){let n=yr(r),o;for(;o=this.#i.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 a of this.#s.get(o))switch(!0){case n==="all":case(n==="direct"&&a.target.id===o):case(n==="to-descendants"&&a.target.id!==o):yield a;break}}*outgoing(r,n="all"){const o=yr(r);for(const a of this.#a.get(o))switch(!0){case n==="all":case(n==="direct"&&a.source.id===o):case(n==="from-descendants"&&a.source.id!==o):yield a;break}}addElement(r){if(this.#e.has(r.id))throw new Error(`Element ${r.id} already exists`);const n=p2e(r)?new JO(this,Object.freeze(r)):new eI(this,Object.freeze(r),this.$model.element(r.element));this.#e.set(n.id,n);const o=yb(n.id);return o?(He(this.#e.has(o),`Parent ${o} of ${n.id} not found`),this.#i.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 j4e(this,Object.freeze(r));this.#n.set(n.id,n),this.#s.get(n.target.id).add(n),this.#a.get(n.source.id).add(n);const o=n.boundary?.id??null;if(o)for(const a of[o,...ku(o)])this.#o.get(a).add(n);for(const a of ku(n.source.id)){if(a===o)break;this.#a.get(a).add(n)}for(const a of ku(n.target.id)){if(a===o)break;this.#s.get(a).add(n)}return n}}class oI{constructor(r,n){this.model=r,this.$relationship=n,this.source=r.element(h1.flatten(n.source)),this.target=r.element(h1.flatten(n.target));const o=Ug(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 Za(this.$relationship.title)?this.$relationship.title:null}get technology(){return Za(this.$relationship.technology)?this.$relationship.technology:null}get hasSummary(){return!!this.$relationship.summary&&!!this.$relationship.description&&!f8(this.$relationship.summary,this.$relationship.description)}get summary(){return ur.memoize(this,"summary",Os(this.$relationship))}get description(){return ur.memoize(this,"description",Wh(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&&!g1(this.$relationship.metadata)}getMetadata(r){return r?this.$relationship.metadata?.[r]:this.$relationship.metadata??{}}isTagged(r){return this.tags.includes(r)}}class O4e{constructor(r,n,o,a){this.source=o,this.target=a,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()?BO(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 u1(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 I4e{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 ir(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 Za(this.$node.modelRef)}hasDeployment(){return Za(this.$node.deploymentRef)}hasDeployedInstance(){return this.hasElement()&&this.hasDeployment()}isGroup(){return a4e(this.$node)}isTagged(r){return this.tags.includes(r)}}class v8{Aux;#e;#i=new Set;#t=new Map;#r=new Map;#l=new Set;#n=new Set;#s=new Set;#a=new Ln(r=>new Set);#o;id;$model;title;folder;viewPath;constructor(r,n,o,a){this.$model=r,this.#e=o,this.id=o.id,this.folder=n,this.#o=a;for(const i of this.#e.nodes){const l=new I4e(this,Object.freeze(i));this.#t.set(i.id,l),i.parent||this.#i.add(l),i.deploymentRef&&this.#n.add(i.deploymentRef),i.modelRef&&this.#l.add(i.modelRef);for(const s of l.tags)this.#a.get(s).add(l)}for(const i of this.#e.edges){const l=new O4e(this,Object.freeze(i),this.node(i.source),this.node(i.target));for(const s of l.tags)this.#a.get(s).add(l);for(const s of i.relations)this.#s.add(s);this.#r.set(i.id,l)}this.title=o.title?y8(o.title):null,this.viewPath=o.title?Qb(o.title):o.id}get $styles(){return this.$model.$styles}get _type(){return this.#e[n1]}get stage(){return this.#e[$u]}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 ir(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.#a.keys()]}get $view(){if(!this.isLayouted()||"drifts"in this.#e)return this.#e;const r=this.#o;return r?ir(this,"withDriftReasons",()=>o4e(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?ir(this,"snapshotWithManualLayout",()=>NO(this.#e,r)):null}roots(){return this.#i.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)?f1(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[$u]==="computed"}isLayouted(){return this.#e[$u]==="layouted"}isDiagram(){return this.#e[$u]==="layouted"}isElementView(){return this.#e[n1]==="element"}isScopedElementView(){return this.#e[n1]==="element"&&Za(this.#e.viewOf)}isDeploymentView(){return this.#e[n1]==="deployment"}isDynamicView(){return this.#e[n1]==="dynamic"}}class Jb{$model;path;title;isRoot;parentPath;defaultViewId;constructor(r,n,o){this.$model=r,this.path=n.join("/"),this.isRoot=this.path==="",this.title=M4e(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"),ir(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"),D4e(this.parentPath)?null:this.$model.viewFolder(this.parentPath)}get children(){return this.$model.viewFolderItems(this.path)}get folders(){return ir(this,"folders",()=>{const r=[];for(const n of this.children)n instanceof Jb&&r.push(n);return r})}get views(){return ir(this,"views",()=>{const r=[];for(const n of this.children)n instanceof v8&&r.push(n);return r})}}class Du{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 Du(r)}static create(r){return new Du(r)}static fromDump(r){const{_stage:n="layouted",projectId:o="unknown",project:a,globals:i,imports:l,deployments:s,views:c,relations:d,elements:u,specification:p}=r;return new Du({[$u]:n,projectId:o,project:a,globals:{predicates:i?.predicates??{},dynamicPredicates:i?.dynamicPredicates??{},styles:i?.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 o1(r.elements)){const o=this.addElement(n);for(const a of o.tags)this._allTags.get(a).add(o)}for(const[n,o]of o1(r.imports??{}))for(const a of Wc(o)){const i=this.addImportedElement(n,a);for(const l of i.tags)this._allTags.get(l).add(i)}for(const n of Zb(r.relations)){const o=this.addRelation(n);for(const a of o.tags)this._allTags.get(a).add(o)}if(this.deployment=new B4e(this),hO(r,"computed")||hO(r,"layouted")){const n=nP(xa),o=Ns(Zb(r.views),Ob(i=>({view:i,path:Qb(i.title??i.id),folderPath:i.title&&P4e(i.title)||""})),p8((i,l)=>n(i.folderPath,l.folderPath))),a=i=>{let l=this._viewFolders.get(i);if(!l){const s=nI(i,xa);He(Il(s,1),`View group path "${i}" must have at least one element`);let c;i===""?c=o.find(d=>d.view.id==="index"):c=o.find(d=>d.path===i),l=new Jb(this,s,c?.view.id),this._viewFolders.set(i,l)}return l};this._rootViewFolder=a("");for(const{folderPath:i}of o)this._viewFolders.has(i)||nI(i,xa).reduce((l,s)=>{const c=l.join(xa),d=g1(c)?s:c+xa+s,u=a(d);return this._viewFolderItems.get(c).add(u),l.push(s),l},[]);for(const{view:i,folderPath:l}of o){const s=new v8(this,a(l),i,r.manualLayouts?.[i.id]);this._viewFolderItems.get(l).add(s),this._views.set(i.id,s);for(const c of s.tags)this._allTags.get(c).add(s)}}else this._rootViewFolder=new Jb(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 ir(this,"styles",()=>JN.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[$u]}get projectId(){return this.$data.projectId??"default"}get project(){return this.$data.project??ir(this,Symbol.for("project"),()=>({id:this.projectId}))}get specification(){return this.$data.specification}get globals(){return ir(this,Symbol.for("globals"),()=>({predicates:{...this.$data.globals?.predicates},dynamicPredicates:{...this.$data.globals?.dynamicPredicates},styles:{...this.$data.globals?.styles}}))}element(r){if(r instanceof Kb)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 a=this._relations.get(o)??null;return a||n==="model"?mt(a,`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),a=o?this._children.get(o.id).values():this.roots();for(const i of a)i.id!==n&&(yield i)}*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 a of this._incoming.get(o))switch(!0){case n==="all":case(n==="direct"&&a.target.id===o):case(n==="to-descendants"&&a.target.id!==o):yield a;break}}*outgoing(r,n="all"){const o=yr(r);for(const a of this._outgoing.get(o))switch(!0){case n==="all":case(n==="direct"&&a.source.id===o):case(n==="from-descendants"&&a.source.id!==o):yield a;break}}get tags(){return ir(this,"tags",()=>p8([...this._allTags.keys()],gb))}get tagsSortedByUsage(){return ir(this,"tagsSortedByUsage",()=>Ns([...this._allTags.entries()],Ob(([r,n])=>({tag:r,count:n.size,tagged:n})),p8((r,n)=>gb(r.tag,n.tag)),kO([Ru("count"),"desc"])))}findByTag(r,n){return Bs(this._allTags.get(r),o=>n==="elements"?o instanceof Kb:n==="views"?o instanceof v8:n==="relationships"?o instanceof oI:!0)}*elementsOfKind(r){for(const n of this._elements.values())n.kind===r&&(yield n)}*elementsWhere(r){const n=zu(r);for(const o of this._elements.values())n(o)&&(yield o)}*relationshipsWhere(r){const n=zu(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 Kb(this,Object.freeze(r));this._elements.set(n.id,n);const o=yb(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(!i4e(n.id),"Imported element already has global FQN");const o=PO(r,n.id);if(this._elements.has(o))throw new Error(`Element ${o} already exists`);const a=new Kb(this,Object.freeze({...n,id:o}));this._elements.set(a.id,a);let i=yb(a.id);for(;i;){if(i.includes(".")&&this._elements.has(i))return this._parents.set(a.id,this.element(i)),this._children.get(i).add(a),a;i=yb(i)}return this._rootElements.add(a),a}addRelation(r){if(this._relations.has(r.id))throw new Error(`Relation ${r.id} already exists`);const n=new oI(this,Object.freeze(r)),{source:o,target:a}=n;this._relations.set(n.id,n),this._incoming.get(a.id).add(n),this._outgoing.get(o.id).add(n);const i=Ug(o.id,a.id);if(i)for(const l of[i,...ku(i)])this._internal.get(l).add(n);for(const l of ku(o.id)){if(l===i)break;this._outgoing.get(l).add(n)}for(const l of ku(a.id)){if(l===i)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:{}})})(Du||(Du={}));function ex(e){return typeof e=="object"&&e!=null&&!Array.isArray(e)}var L4e=e=>typeof e=="object"&&e!==null;function Mu(e){return Object.fromEntries(Object.entries(e??{}).filter(([r,n])=>n!==void 0))}var F4e=e=>e==="base";function V4e(e){return e.slice().filter(r=>!F4e(r))}function aI(e){return String.fromCharCode(e+(e>25?39:97))}function q4e(e){let r="",n;for(n=Math.abs(e);n>52;n=n/52|0)r=aI(n%52)+r;return aI(n%52)+r}function H4e(e,r){let n=r.length;for(;n;)e=e*33^r.charCodeAt(--n);return e}function U4e(e){return q4e(H4e(5381,e)>>>0)}var iI=/\s*!(important)?/i;function W4e(e){return typeof e=="string"?iI.test(e):!1}function G4e(e){return typeof e=="string"?e.replace(iI,"").trim():e}function b8(e){return typeof e=="string"?e.replaceAll(" ","_"):e}var Zn=e=>{const r=new Map;return(...n)=>{const o=JSON.stringify(n);if(r.has(o))return r.get(o);const a=e(...n);return r.set(o,a),a}},Y4e=new Set(["__proto__","constructor","prototype"]);function x8(...e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{if(Y4e.has(o))return;const a=r[o],i=n[o];ex(a)&&ex(i)?r[o]=x8(a,i):r[o]=i}),r),{})}var X4e=e=>e!=null;function w8(e,r,n={}){const{stop:o,getKey:a}=n;function i(l,s=[]){if(L4e(l)){const c={};for(const[d,u]of Object.entries(l)){const p=a?.(d,u)??d,f=[...s,p];if(o?.(l,f))return r(l,s);const g=i(u,f);X4e(g)&&(c[p]=g)}return c}return r(l,s)}return i(e)}function Z4e(e,r){return Array.isArray(e)?e.map(n=>r(n)):ex(e)?w8(e,n=>r(n)):r(e)}function K4e(e,r){return e.reduce((n,o,a)=>{const i=r[a];return o!=null&&(n[i]=o),n},{})}function lI(e,r,n=!0){const{utility:o,conditions:a}=r,{hasShorthand:i,resolveShorthand:l}=o;return w8(e,s=>Array.isArray(s)?K4e(s,a.breakpoints.keys):s,{stop:s=>Array.isArray(s),getKey:n?s=>i?l(s):s:void 0})}var Q4e={shift:e=>e,finalize:e=>e,breakpoints:{keys:[]}},J4e=e=>typeof e=="string"?e.replaceAll(/[\n\s]+/g," "):e;function sI(e){const{utility:r,hash:n,conditions:o=Q4e}=e,a=l=>[r.prefix,l].filter(Boolean).join("-"),i=(l,s)=>{let c;if(n){const d=[...o.finalize(l),s];c=a(r.toHash(d,U4e))}else c=[...o.finalize(l),a(s)].join(":");return c};return Zn(({base:l,...s}={})=>{const c=Object.assign(s,l),d=lI(c,e),u=new Set;return w8(d,(p,f)=>{if(p==null)return;const g=W4e(p),[v,...w]=o.shift(f),x=V4e(w),k=r.transform(v,G4e(J4e(p)));let C=i(x,k.className);g&&(C=`${C}!`),u.add(C)}),Array.from(u).join(" ")})}function eke(...e){return e.flat().filter(r=>ex(r)&&Object.keys(Mu(r)).length>0)}function tke(e){function r(a){const i=eke(...a);return i.length===1?i:i.map(l=>lI(l,e))}function n(...a){return x8(...r(a))}function o(...a){return Object.assign({},...r(a))}return{mergeCss:Zn(n),assignCss:o}}var rke=/([A-Z])/g,nke=/^ms-/,oke=Zn(e=>e.startsWith("--")?e:e.replace(rke,"-$1").replace(nke,"-ms-").toLowerCase()),ake=["min","max","clamp","calc"],ike=new RegExp(`^(${ake.join("|")})\\(.*\\)`),lke=e=>typeof e=="string"&&ike.test(e),ske="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,%",cke=`(?:${ske.split(",").join("|")})`,dke=new RegExp(`^[+-]?[0-9]*.?[0-9]+(?:[eE][+-]?[0-9]+)?${cke}$`),uke=e=>typeof e=="string"&&dke.test(e),pke=e=>typeof e=="string"&&/^var\(--.+\)$/.test(e),y1={map:Z4e,isCssFunction:lke,isCssVar:pke,isCssUnit:uke},v1=(e,r)=>{if(!e?.defaultValues)return r;const n=typeof e.defaultValues=="function"?e.defaultValues(r):e.defaultValues;return Object.assign({},n,Mu(r))},hke=(e={})=>{const r=o=>({className:[e.className,o].filter(Boolean).join("__"),base:e.base?.[o]??{},variants:{},defaultVariants:e.defaultVariants??{},compoundVariants:e.compoundVariants?k8(e.compoundVariants,o):[]}),n=(e.slots??[]).map(o=>[o,r(o)]);for(const[o,a]of Object.entries(e.variants??{}))for(const[i,l]of Object.entries(a))n.forEach(([s,c])=>{c.variants[o]??={},c.variants[o][i]=l[s]??{}});return Object.fromEntries(n)},k8=(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),a=l=>{const s={};for(let c=0;ca(Array.isArray(l)?l:o.filter(l));return r.map(i).concat(a(o))}var _8=(...e)=>{const r=e.reduce((n,o)=>(o&&o.forEach(a=>n.add(a)),n),new Set([]));return Array.from(r)},cI=["htmlSize","htmlTranslate","htmlWidth","htmlHeight"];function fke(e){return cI.includes(e)?e.replace("html","").toLowerCase():e}function S8(e){return Object.fromEntries(Object.entries(e).map(([r,n])=>[fke(r),n]))}S8.keys=cI;const mke="_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",dI=new Set(mke.split(",")),gke=/^@|&|&$/;function uI(e){return dI.has(e)||gke.test(e)}const yke=/^_/,vke=/&|@/;function pI(e){return e.map(r=>dI.has(r)?r.replace(yke,""):vke.test(r)?`[${b8(r.trim())}]`:r)}function hI(e){return e.sort((r,n)=>{const o=uI(r),a=uI(n);return o&&!a?1:!o&&a?-1:0})}const bke="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,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",fI=new Map,mI=new Map;bke.split(",").forEach(e=>{const[r,n]=e.split(":"),[o,...a]=n.split("/");fI.set(r,o),a.length&&a.forEach(i=>{mI.set(i==="1"?o:i,r)})});const gI=e=>mI.get(e)||e,yI={conditions:{shift:hI,finalize:pI,breakpoints:{keys:["base","xs","sm","md","lg","xl"]}},utility:{transform:(e,r)=>{const n=gI(e);return{className:`${fI.get(n)||oke(n)}_${b8(r)}`}},hasShorthand:!0,toHash:(e,r)=>r(e.join(":")),resolveShorthand:gI}},xke=sI(yI),fe=(...e)=>xke(Nu(...e));fe.raw=(...e)=>Nu(...e);const{mergeCss:Nu}=tke(yI);function Ge(){let e="",r=0,n;for(;r({base:{},variants:{},defaultVariants:{},compoundVariants:[],...e});function b1(e){const{base:r,variants:n,defaultVariants:o,compoundVariants:a}=vI(e),i=f=>({...o,...Mu(f)});function l(f={}){const g=i(f);let v={...r};for(const[x,k]of Object.entries(g))n[x]?.[k]&&(v=Nu(v,n[x][k]));const w=E8(a,g);return Nu(v,w)}function s(f){const g=vI(f.config),v=_8(f.variantKeys,Object.keys(n));return b1({base:Nu(r,g.base),variants:Object.fromEntries(v.map(w=>[w,Nu(n[w],g.variants[w])])),defaultVariants:x8(o,g.defaultVariants),compoundVariants:[...a,...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(Zn(c),{__cva__:!0,variantMap:p,variantKeys:d,raw:l,config:e,merge:s,splitVariantProps:u,getVariantProps:i})}function E8(e,r){let n={};return e.forEach(o=>{Object.entries(o).every(([a,i])=>a==="css"?!0:(Array.isArray(i)?i:[i]).some(l=>r[a]===l))&&(n=Nu(n,o.css))}),n}function wke(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 kke(e){const r=Object.entries(hke(e)).map(([p,f])=>[p,b1(f)]),n=e.defaultVariants??{},o=r.reduce((p,[f,g])=>(e.className&&(p[f]=g.config.className),p),{});function a(p){const f=r.map(([g,v])=>[g,Ge(v(p),o[g])]);return Object.fromEntries(f)}function i(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,...Mu(p)}),u=Object.fromEntries(Object.entries(l).map(([p,f])=>[p,Object.keys(f)]));return Object.assign(Zn(a),{__cva__:!1,raw:i,config:e,variantMap:u,variantKeys:s,classNameMap:o,splitVariantProps:c,getVariantProps:d})}var _ke={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 a=S.forwardRef(({color:i="currentColor",size:l=24,stroke:s=2,title:c,className:d,children:u,...p},f)=>S.createElement("svg",{ref:f,..._ke[e],width:l,height:l,className:["tabler-icon",`tabler-icon-${r}`,d].join(" "),...e==="filled"?{fill:i}:{strokeWidth:s,stroke:i},...p},[c&&S.createElement("title",{key:"svg-title"},c),...o.map(([g,v])=>S.createElement(g,v)),...Array.isArray(u)?u:[u]]));return a.displayName=`${n}`,a},Ske=[["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"}]],bI=wt("outline","cylinder","Cylinder",Ske),Eke=[["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"}]],Cke=wt("outline","rectangular-prism","RectangularPrism",Eke),$ke=[["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"}]],zke=wt("outline","reorder","Reorder",$ke),Rke=[["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"}]],jke=wt("outline","user","User",Rke),Tke=[["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"}]],Ake=wt("outline","device-mobile","DeviceMobile",Tke),Dke=[["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"}]],Mke=wt("outline","browser","Browser",Dke),C8=S.createContext(null);function Nke({value:e,children:r}){return S.useContext(C8)?y.jsx(y.Fragment,{children:r}):y.jsx(C8.Provider,{value:e,children:r})}function tx({element:e,className:r,style:n}){const o=S.useContext(C8);if(!e||!e.icon||e.icon==="none")return null;let a;return e.icon.startsWith("http://")||e.icon.startsWith("https://")?a=y.jsx("img",{src:e.icon,alt:e.title}):o&&(a=y.jsx(o,{node:e})),a?y.jsx("div",{className:Ge(r,"likec4-element-icon"),"data-likec4-icon":e.icon,style:n,children:a}):null}const Pke={browser:Mke,cylinder:bI,mobile:Ake,person:jke,queue:zke,rectangle:Cke,storage:bI};function Bke({element:e,className:r}){const n=y.jsx(tx,{element:e,className:r});if(n)return n;const o=Pke[e.shape];return y.jsx("div",{className:Ge(r,"likec4-shape-icon"),children:y.jsx(o,{})})}function Yh(e){const r=S.useRef(e);return r.current=e,S.useMemo(()=>Object.freeze({get current(){return r.current}}),[])}function xI(e){const r=Yh(e);S.useEffect(()=>()=>{r.current()},[])}function $8(e,r,n,o=0){const a=S.useRef(void 0),i=S.useRef(void 0),l=S.useRef(e),s=S.useRef(void 0),c=()=>{a.current&&(clearTimeout(a.current),a.current=void 0),i.current&&(clearTimeout(i.current),i.current=void 0)};return xI(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){a.current&&clearTimeout(a.current),s.current={args:p,this:this},a.current=setTimeout(d,n),o>0&&!i.current&&(i.current=setTimeout(d,o))};return Object.defineProperties(u,{length:{value:e.length},name:{value:`${e.name||"anonymous"}__debounced__${n}`}}),u},[n,o,...r])}const Oke=()=>{},rx=typeof globalThis<"u"&&typeof navigator<"u"&&typeof document<"u";function Ike(e){const r=Yh(e),n=S.useRef(0),o=S.useCallback(()=>{rx&&n.current&&(cancelAnimationFrame(n.current),n.current=0)},[]);return xI(o),[S.useMemo(()=>{const a=(...i)=>{rx&&(o(),n.current=requestAnimationFrame(()=>{r.current(...i),n.current=0}))};return Object.defineProperties(a,{length:{value:e.length},name:{value:`${e.name||"anonymous"}__raf`}}),a},[]),o]}const Lke=(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 Fke(e,r,n=Lke,o=S.useEffect,...a){const i=S.useRef(void 0);(i.current===void 0||rx&&!n(i.current,r))&&(i.current=r),o(e,i.current,...a)}function wI(){const e=S.useRef(!0);return S.useEffect(()=>{e.current=!1},[]),e.current}const z8=rx?S.useLayoutEffect:S.useEffect;function Vke(e){S.useEffect(()=>{e()},[])}function kI(e,r){const[n,o]=Ike(e);S.useEffect(()=>(n(),o),r)}const qke=e=>(e+1)%Number.MAX_SAFE_INTEGER;function Hke(){const[,e]=S.useState(0);return S.useCallback(()=>{e(qke)},[])}function Uke(e,r){const n=wI();S.useEffect(n?Oke:e,r)}const Wke=e=>{e&&clearTimeout(e)};function nx(e,r){const n=Yh(e),o=Yh(r),a=S.useRef(null),i=S.useCallback(()=>{Wke(a.current)},[]),l=S.useCallback(()=>{o.current!==void 0&&(i(),a.current=setTimeout(()=>{n.current()},o.current))},[]);return S.useEffect(()=>(l(),i),[r]),[i,l]}const _I=(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 ox(){for(var e=0,r=arguments.length,n={},o;e=0&&(o=n.slice(a+1),n=n.slice(0,a)),n&&!r.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:o}})}ax.prototype=ox.prototype={constructor:ax,on:function(e,r){var n=this._,o=Yke(e+"",n),a,i=-1,l=o.length;if(arguments.length<2){for(;++i0)for(var n=new Array(a),o=0,a,i;o=0&&(r=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),EI.hasOwnProperty(r)?{space:EI[r],local:e}:e}function Zke(e){return function(){var r=this.ownerDocument,n=this.namespaceURI;return n===R8&&r.documentElement.namespaceURI===R8?r.createElement(e):r.createElementNS(n,e)}}function Kke(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function CI(e){var r=ix(e);return(r.local?Kke:Zke)(r)}function Qke(){}function j8(e){return e==null?Qke:function(){return this.querySelector(e)}}function Jke(e){typeof e!="function"&&(e=j8(e));for(var r=this._groups,n=r.length,o=new Array(n),a=0;a=_&&(_=C+1);!(z=x[_])&&++_=0;)(l=o[a])&&(i&&l.compareDocumentPosition(i)^4&&i.parentNode.insertBefore(l,i),i=l);return this}function S5e(e){e||(e=E5e);function r(p,f){return p&&f?e(p.__data__,f.__data__):!p-!f}for(var n=this._groups,o=n.length,a=new Array(o),i=0;ir?1:e>=r?0:NaN}function C5e(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function $5e(){return Array.from(this)}function z5e(){for(var e=this._groups,r=0,n=e.length;r1?this.each((r==null?I5e:typeof r=="function"?F5e:L5e)(e,r,n??"")):Xh(this.node(),e)}function Xh(e,r){return e.style.getPropertyValue(r)||TI(e).getComputedStyle(e,null).getPropertyValue(r)}function q5e(e){return function(){delete this[e]}}function H5e(e,r){return function(){this[e]=r}}function U5e(e,r){return function(){var n=r.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function W5e(e,r){return arguments.length>1?this.each((r==null?q5e:typeof r=="function"?U5e:H5e)(e,r)):this.node()[e]}function AI(e){return e.trim().split(/^|\s+/)}function T8(e){return e.classList||new DI(e)}function DI(e){this._node=e,this._names=AI(e.getAttribute("class")||"")}DI.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 MI(e,r){for(var n=T8(e),o=-1,a=r.length;++o=0&&(n=r.slice(o+1),r=r.slice(0,o)),{type:r,name:n}})}function x6e(e){return function(){var r=this.__on;if(r){for(var n=0,o=-1,a=r.length,i;n()=>e;function D8(e,{sourceEvent:r,subject:n,target:o,identifier:a,active:i,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:a,enumerable:!0,configurable:!0},active:{value:i,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}})}D8.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function j6e(e){return!e.ctrlKey&&!e.button}function T6e(){return this.parentNode}function A6e(e,r){return r??{x:e.x,y:e.y}}function D6e(){return navigator.maxTouchPoints||"ontouchstart"in this}function LI(){var e=j6e,r=T6e,n=A6e,o=D6e,a={},i=ox("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,R6e).on("touchend.drag touchcancel.drag",C).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g($,z){if(!(u||!e.call(this,$,z))){var j=_(this,r.call(this,$,z),$,z,"mouse");j&&(ka($.view).on("mousemove.drag",v,w1).on("mouseup.drag",w,w1),OI($.view),A8($),d=!1,s=$.clientX,c=$.clientY,j("start",$))}}function v($){if(Zh($),!d){var z=$.clientX-s,j=$.clientY-c;d=z*z+j*j>p}a.mouse("drag",$)}function w($){ka($.view).on("mousemove.drag mouseup.drag",null),II($.view,d),Zh($),a.mouse("end",$)}function x($,z){if(e.call(this,$,z)){var j=$.changedTouches,A=r.call(this,$,z),R=j.length,T,O;for(T=0;T>8&15|r>>4&240,r>>4&15|r&240,(r&15)<<4|r&15,1):n===8?dx(r>>24&255,r>>16&255,r>>8&255,(r&255)/255):n===4?dx(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=N6e.exec(e))?new Jo(r[1],r[2],r[3],1):(r=P6e.exec(e))?new Jo(r[1]*255/100,r[2]*255/100,r[3]*255/100,1):(r=B6e.exec(e))?dx(r[1],r[2],r[3],r[4]):(r=O6e.exec(e))?dx(r[1]*255/100,r[2]*255/100,r[3]*255/100,r[4]):(r=I6e.exec(e))?YI(r[1],r[2]/100,r[3]/100,1):(r=L6e.exec(e))?YI(r[1],r[2]/100,r[3]/100,r[4]):VI.hasOwnProperty(e)?UI(VI[e]):e==="transparent"?new Jo(NaN,NaN,NaN,0):null}function UI(e){return new Jo(e>>16&255,e>>8&255,e&255,1)}function dx(e,r,n,o){return o<=0&&(e=r=n=NaN),new Jo(e,r,n,o)}function q6e(e){return e instanceof k1||(e=Pu(e)),e?(e=e.rgb(),new Jo(e.r,e.g,e.b,e.opacity)):new Jo}function N8(e,r,n,o){return arguments.length===1?q6e(e):new Jo(e,r,n,o??1)}function Jo(e,r,n,o){this.r=+e,this.g=+r,this.b=+n,this.opacity=+o}M8(Jo,N8,FI(k1,{brighter(e){return e=e==null?cx:Math.pow(cx,e),new Jo(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?_1:Math.pow(_1,e),new Jo(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Jo(Bu(this.r),Bu(this.g),Bu(this.b),ux(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:WI,formatHex:WI,formatHex8:H6e,formatRgb:GI,toString:GI}));function WI(){return`#${Ou(this.r)}${Ou(this.g)}${Ou(this.b)}`}function H6e(){return`#${Ou(this.r)}${Ou(this.g)}${Ou(this.b)}${Ou((isNaN(this.opacity)?1:this.opacity)*255)}`}function GI(){const e=ux(this.opacity);return`${e===1?"rgb(":"rgba("}${Bu(this.r)}, ${Bu(this.g)}, ${Bu(this.b)}${e===1?")":`, ${e})`}`}function ux(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Bu(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Ou(e){return e=Bu(e),(e<16?"0":"")+e.toString(16)}function YI(e,r,n,o){return o<=0?e=r=n=NaN:n<=0||n>=1?e=r=NaN:r<=0&&(e=NaN),new Ui(e,r,n,o)}function XI(e){if(e instanceof Ui)return new Ui(e.h,e.s,e.l,e.opacity);if(e instanceof k1||(e=Pu(e)),!e)return new Ui;if(e instanceof Ui)return e;e=e.rgb();var r=e.r/255,n=e.g/255,o=e.b/255,a=Math.min(r,n,o),i=Math.max(r,n,o),l=NaN,s=i-a,c=(i+a)/2;return s?(r===i?l=(n-o)/s+(n0&&c<1?0:l,new Ui(l,s,c,e.opacity)}function U6e(e,r,n,o){return arguments.length===1?XI(e):new Ui(e,r,n,o??1)}function Ui(e,r,n,o){this.h=+e,this.s=+r,this.l=+n,this.opacity=+o}M8(Ui,U6e,FI(k1,{brighter(e){return e=e==null?cx:Math.pow(cx,e),new Ui(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?_1:Math.pow(_1,e),new Ui(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,a=2*n-o;return new Jo(P8(e>=240?e-240:e+120,a,o),P8(e,a,o),P8(e<120?e+240:e-120,a,o),this.opacity)},clamp(){return new Ui(ZI(this.h),px(this.s),px(this.l),ux(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=ux(this.opacity);return`${e===1?"hsl(":"hsla("}${ZI(this.h)}, ${px(this.s)*100}%, ${px(this.l)*100}%${e===1?")":`, ${e})`}`}}));function ZI(e){return e=(e||0)%360,e<0?e+360:e}function px(e){return Math.max(0,Math.min(1,e||0))}function P8(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 B8=e=>()=>e;function W6e(e,r){return function(n){return e+n*r}}function G6e(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 Y6e(e){return(e=+e)==1?KI:function(r,n){return n-r?G6e(r,n,e):B8(isNaN(r)?n:r)}}function KI(e,r){var n=r-e;return n?W6e(e,n):B8(isNaN(e)?r:e)}const hx=(function e(r){var n=Y6e(r);function o(a,i){var l=n((a=N8(a)).r,(i=N8(i)).r),s=n(a.g,i.g),c=n(a.b,i.b),d=KI(a.opacity,i.opacity);return function(u){return a.r=l(u),a.g=s(u),a.b=c(u),a.opacity=d(u),a+""}}return o.gamma=e,o})(1);function X6e(e,r){r||(r=[]);var n=e?Math.min(r.length,e.length):0,o=r.slice(),a;return function(i){for(a=0;an&&(i=r.slice(n,i),s[l]?s[l]+=i:s[++l]=i),(o=o[0])===(a=a[0])?s[l]?s[l]+=a:s[++l]=a:(s[++l]=null,c.push({i:l,x:Hl(o,a)})),n=I8.lastIndex;return n180?u+=360:u-d>180&&(d+=360),f.push({i:p.push(a(p)+"rotate(",null,o)-2,x:Hl(d,u)})):u&&p.push(a(p)+"rotate("+u+o)}function s(d,u,p,f){d!==u?f.push({i:p.push(a(p)+"skewX(",null,o)-2,x:Hl(d,u)}):u&&p.push(a(p)+"skewX("+u+o)}function c(d,u,p,f,g,v){if(d!==p||u!==f){var w=g.push(a(g)+"scale(",null,",",null,")");v.push({i:w-4,x:Hl(d,p)},{i:w-2,x:Hl(u,f)})}else(p!==1||f!==1)&&g.push(a(g)+"scale("+p+","+f+")")}return function(d,u){var p=[],f=[];return d=e(d),u=e(u),i(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;--Qh}function lL(){Iu=(yx=R1.now())+vx,Qh=C1=0;try{d_e()}finally{Qh=0,p_e(),Iu=0}}function u_e(){var e=R1.now(),r=e-yx;r>oL&&(vx-=r,yx=e)}function p_e(){for(var e,r=gx,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:gx=n);z1=e,F8(o)}function F8(e){if(!Qh){C1&&(C1=clearTimeout(C1));var r=e-Iu;r>24?(e<1/0&&(C1=setTimeout(lL,e-R1.now()-vx)),$1&&($1=clearInterval($1))):($1||(yx=R1.now(),$1=setInterval(u_e,oL)),Qh=1,aL(lL))}}function sL(e,r,n){var o=new bx;return r=r==null?0:+r,o.restart(a=>{o.stop(),e(a+r)},r,n),o}var h_e=ox("start","end","cancel","interrupt"),f_e=[],cL=0,dL=1,V8=2,xx=3,uL=4,q8=5,wx=6;function kx(e,r,n,o,a,i){var l=e.__transition;if(!l)e.__transition={};else if(n in l)return;m_e(e,n,{name:r,index:o,group:a,on:h_e,tween:f_e,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:cL})}function H8(e,r){var n=Wi(e,r);if(n.state>cL)throw new Error("too late; already scheduled");return n}function Ul(e,r){var n=Wi(e,r);if(n.state>xx)throw new Error("too late; already running");return n}function Wi(e,r){var n=e.__transition;if(!n||!(n=n[r]))throw new Error("transition not found");return n}function m_e(e,r,n){var o=e.__transition,a;o[r]=n,n.timer=iL(i,0,n.time);function i(d){n.state=dL,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!==dL)return c();for(u in o)if(g=o[u],g.name===n.name){if(g.state===xx)return sL(l);g.state===uL?(g.state=wx,g.timer.stop(),g.on.call("interrupt",e,e.__data__,g.index,g.group),delete o[u]):+uV8&&o.state=0&&(r=r.slice(0,n)),!r||r==="start"})}function U_e(e,r,n){var o,a,i=H_e(r)?H8:Ul;return function(){var l=i(this,e),s=l.on;s!==o&&(a=(o=s).copy()).on(r,n),l.on=a}}function W_e(e,r){var n=this._id;return arguments.length<2?Wi(this.node(),n).on.on(e):this.each(U_e(n,e,r))}function G_e(e){return function(){var r=this.parentNode;for(var n in this.__transition)if(+n!==e)return;r&&r.removeChild(this)}}function Y_e(){return this.on("end.remove",G_e(this._id))}function X_e(e){var r=this._name,n=this._id;typeof e!="function"&&(e=j8(e));for(var o=this._groups,a=o.length,i=new Array(a),l=0;l()=>e;function x8e(e,{sourceEvent:r,target:n,transform:o,dispatch:a}){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:a}})}function Vs(e,r,n){this.k=e,this.x=r,this.y=n}Vs.prototype={constructor:Vs,scale:function(e){return e===1?this:new Vs(this.k*e,this.x,this.y)},translate:function(e,r){return e===0&r===0?this:new Vs(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 Ex=new Vs(1,0,0);mL.prototype=Vs.prototype;function mL(e){for(;!e.__zoom;)if(!(e=e.parentNode))return Ex;return e.__zoom}function W8(e){e.stopImmediatePropagation()}function j1(e){e.preventDefault(),e.stopImmediatePropagation()}function w8e(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function k8e(){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 gL(){return this.__zoom||Ex}function _8e(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function S8e(){return navigator.maxTouchPoints||"ontouchstart"in this}function E8e(e,r,n){var o=e.invertX(r[0][0])-n[0][0],a=e.invertX(r[1][0])-n[1][0],i=e.invertY(r[0][1])-n[0][1],l=e.invertY(r[1][1])-n[1][1];return e.translate(a>o?(o+a)/2:Math.min(0,o)||Math.max(0,a),l>i?(i+l)/2:Math.min(0,i)||Math.max(0,l))}function yL(){var e=w8e,r=k8e,n=E8e,o=_8e,a=S8e,i=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=mx,d=ox("start","zoom","end"),u,p,f,g=500,v=150,w=0,x=10;function k(M){M.property("__zoom",gL).on("wheel.zoom",R,{passive:!1}).on("mousedown.zoom",T).on("dblclick.zoom",O).filter(a).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",gL),M!==q?z(M,V,B,F):q.interrupt().each(function(){j(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),Z=typeof V=="function"?V.apply(this,arguments):V;return n(_(C(G,Z),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(Ex.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(i[0],Math.min(i[1],V)),V===M.k?M:new Vs(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 Vs(M.k,F,q)}function $(M){return[(+M[0][0]+ +M[1][0])/2,(+M[0][1]+ +M[1][1])/2]}function z(M,V,B,F){M.on("start.zoom",function(){j(this,arguments).event(F).start()}).on("interrupt.zoom end.zoom",function(){j(this,arguments).event(F).end()}).tween("zoom",function(){var q=this,G=arguments,U=j(q,G).event(F),Y=r.apply(q,G),Z=B==null?$(Y):typeof B=="function"?B.apply(q,G):B,I=Math.max(Y[1][0]-Y[0][0],Y[1][1]-Y[0][1]),W=q.__zoom,K=typeof V=="function"?V.apply(q,G):V,Q=c(W.invert(Z).concat(I/W.k),K.invert(Z).concat(I/K.k));return function(ae){if(ae===1)ae=K;else{var te=Q(ae),re=I/te[2];ae=new Vs(re,Z[0]-te[0]*re,Z[1]-te[1]*re)}U.zoom(null,ae)}})}function j(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=ka(this.that).datum();d.call(M,this.that,new x8e(M,{sourceEvent:this.sourceEvent,target:k,transform:this.that.__zoom,dispatch:d}),V)}};function R(M,...V){if(!e.apply(this,arguments))return;var B=j(this,V).event(M),F=this.__zoom,q=Math.max(i[0],Math.min(i[1],F.k*Math.pow(2,o.apply(this,arguments)))),G=Hi(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)],_x(this),B.start()}j1(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 T(M,...V){if(f||!e.apply(this,arguments))return;var B=M.currentTarget,F=j(this,V,!0).event(M),q=ka(M.view).on("mousemove.zoom",Z,!0).on("mouseup.zoom",I,!0),G=Hi(M,B),U=M.clientX,Y=M.clientY;OI(M.view),W8(M),F.mouse=[G,this.__zoom.invert(G)],_x(this),F.start();function Z(W){if(j1(W),!F.moved){var K=W.clientX-U,Q=W.clientY-Y;F.moved=K*K+Q*Q>w}F.event(W).zoom("mouse",n(_(F.that.__zoom,F.mouse[0]=Hi(W,B),F.mouse[1]),F.extent,l))}function I(W){q.on("mousemove.zoom mouseup.zoom",null),II(W.view,F.moved),j1(W),F.event(W).end()}}function O(M,...V){if(e.apply(this,arguments)){var B=this.__zoom,F=Hi(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);j1(M),s>0?ka(this).transition().duration(s).call(z,U,F,M):ka(this).call(k.transform,U,F,M)}}function P(M,...V){if(e.apply(this,arguments)){var B=M.touches,F=B.length,q=j(this,V,M.changedTouches.length===F).event(M),G,U,Y,Z;for(W8(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."},T1=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],vL=["Enter"," ","Escape"],bL={"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 Jh;(function(e){e.Strict="strict",e.Loose="loose"})(Jh||(Jh={}));var Lu;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(Lu||(Lu={}));var A1;(function(e){e.Partial="partial",e.Full="full"})(A1||(A1={}));const xL={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var Kc;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(Kc||(Kc={}));var Cx;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(Cx||(Cx={}));var Ue;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(Ue||(Ue={}));const wL={[Ue.Left]:Ue.Right,[Ue.Right]:Ue.Left,[Ue.Top]:Ue.Bottom,[Ue.Bottom]:Ue.Top};function kL(e){return e===null?null:e?"valid":"invalid"}const _L=e=>"id"in e&&"source"in e&&"target"in e,C8e=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),G8=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),D1=(e,r=[0,0])=>{const{width:n,height:o}=_o(e),a=e.origin??r,i=n*a[0],l=o*a[1];return{x:e.position.x-i,y:e.position.y-l}},SL=(e,r={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((o,a)=>{const i=typeof a=="string";let l=!r.nodeLookup&&!i?a:void 0;r.nodeLookup&&(l=i?r.nodeLookup.get(a):G8(a)?a:r.nodeLookup.get(a.id));const s=l?Rx(l,r.nodeOrigin):{x:0,y:0,x2:0,y2:0};return $x(o,s)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return zx(n)},ef=(e,r={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},o=!1;return e.forEach(a=>{(r.filter===void 0||r.filter(a))&&(n=$x(n,Rx(a)),o=!0)}),o?zx(n):{x:0,y:0,width:0,height:0}},Y8=(e,r,[n,o,a]=[0,0,1],i=!1,l=!1)=>{const s={...P1(r,[n,o,a]),width:r.width/a,height:r.height/a},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=M1(s,Vu(d)),x=(g??0)*(v??0),k=i&&w>0;(!d.internals.handleBounds||k||w>=x||d.dragging)&&c.push(d)}return c},$8e=(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 z8e(e,r){const n=new Map,o=r?.nodes?new Set(r.nodes.map(a=>a.id)):null;return e.forEach(a=>{a.measured.width&&a.measured.height&&(r?.includeHiddenNodes||!a.hidden)&&(!o||o.has(a.id))&&n.set(a.id,a)}),n}async function R8e({nodes:e,width:r,height:n,panZoom:o,minZoom:a,maxZoom:i},l){if(e.size===0)return Promise.resolve(!0);const s=z8e(e,l),c=ef(s),d=qs(c,r,n,l?.minZoom??a,l?.maxZoom??i,l?.padding??.1);return await o.setViewport(d,{duration:l?.duration,ease:l?.ease,interpolate:l?.interpolate}),Promise.resolve(!0)}function EL({nodeId:e,nextPosition:r,nodeLookup:n,nodeOrigin:o=[0,0],nodeExtent:a,onError:i}){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||a;if(l.extent==="parent"&&!l.expandParent)if(!s)i?.("005",Wl.error005());else{const g=s.measured.width,v=s.measured.height;g&&v&&(p=[[c,d],[c+g,d+v]])}else s&&of(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=of(p)?Fu(r,p,l.measured):r;return(l.measured.width===void 0||l.measured.height===void 0)&&i?.("015",Wl.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 j8e({nodesToRemove:e=[],edgesToRemove:r=[],nodes:n,edges:o,onBeforeDelete:a}){const i=new Set(e.map(p=>p.id)),l=[];for(const p of n){if(p.deletable===!1)continue;const f=i.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=$8e(l,c);for(const p of c)s.has(p.id)&&!d.find(f=>f.id===p.id)&&d.push(p);if(!a)return{edges:d,nodes:l};const u=await a({nodes:l,edges:d});return typeof u=="boolean"?u?{edges:d,nodes:l}:{edges:[],nodes:[]}:u}const tf=(e,r=0,n=1)=>Math.min(Math.max(e,r),n),Fu=(e={x:0,y:0},r,n)=>({x:tf(e.x,r[0][0],r[1][0]-(n?.width??0)),y:tf(e.y,r[0][1],r[1][1]-(n?.height??0))});function CL(e,r,n){const{width:o,height:a}=_o(n),{x:i,y:l}=n.internals.positionAbsolute;return Fu(e,[[i,l],[i+o,l+a]],r)}const $L=(e,r,n)=>en?-tf(Math.abs(e-n),1,r)/r:0,zL=(e,r,n=15,o=40)=>{const a=$L(e.x,o,r.width-o)*n,i=$L(e.y,o,r.height-o)*n;return[a,i]},$x=(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)}),X8=({x:e,y:r,width:n,height:o})=>({x:e,y:r,x2:e+n,y2:r+o}),zx=({x:e,y:r,x2:n,y2:o})=>({x:e,y:r,width:n-e,height:o-r}),Vu=(e,r=[0,0])=>{const{x:n,y:o}=G8(e)?e.internals.positionAbsolute:D1(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}},Rx=(e,r=[0,0])=>{const{x:n,y:o}=G8(e)?e.internals.positionAbsolute:D1(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)}},RL=(e,r)=>zx($x(X8(e),X8(r))),M1=(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)},jL=e=>Gi(e.width)&&Gi(e.height)&&Gi(e.x)&&Gi(e.y),Gi=e=>!isNaN(e)&&isFinite(e),T8e=(e,r)=>{},N1=(e,r=[1,1])=>({x:r[0]*Math.round(e.x/r[0]),y:r[1]*Math.round(e.y/r[1])}),P1=({x:e,y:r},[n,o,a],i=!1,l=[1,1])=>{const s={x:(e-n)/a,y:(r-o)/a};return i?N1(s,l):s},jx=({x:e,y:r},[n,o,a])=>({x:e*a+n,y:r*a+o});function rf(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 A8e(e,r,n){if(typeof e=="string"||typeof e=="number"){const o=rf(e,n),a=rf(e,r);return{top:o,right:a,bottom:o,left:a,x:a*2,y:o*2}}if(typeof e=="object"){const o=rf(e.top??e.y??0,n),a=rf(e.bottom??e.y??0,n),i=rf(e.left??e.x??0,r),l=rf(e.right??e.x??0,r);return{top:o,right:l,bottom:a,left:i,x:i+l,y:o+a}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function D8e(e,r,n,o,a,i){const{x:l,y:s}=jx(e,[r,n,o]),{x:c,y:d}=jx({x:e.x+e.width,y:e.y+e.height},[r,n,o]),u=a-c,p=i-d;return{left:Math.floor(l),top:Math.floor(s),right:Math.floor(u),bottom:Math.floor(p)}}const qs=(e,r,n,o,a,i)=>{const l=A8e(i,r,n),s=(r-l.x)/e.width,c=(n-l.y)/e.height,d=Math.min(s,c),u=tf(d,o,a),p=e.x+e.width/2,f=e.y+e.height/2,g=r/2-p*u,v=n/2-f*u,w=D8e(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}},nf=()=>typeof navigator<"u"&&navigator?.userAgent?.indexOf("Mac")>=0;function of(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 TL(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function AL(e,r={width:0,height:0},n,o,a){const i={...e},l=o.get(n);if(l){const s=l.origin||a;i.x+=l.internals.positionAbsolute.x-(r.width??0)*s[0],i.y+=l.internals.positionAbsolute.y-(r.height??0)*s[1]}return i}function DL(e,r){if(e.size!==r.size)return!1;for(const n of e)if(!r.has(n))return!1;return!0}function M8e(){let e,r;return{promise:new Promise((n,o)=>{e=n,r=o}),resolve:e,reject:r}}function N8e(e){return{...bL,...e||{}}}function B1(e,{snapGrid:r=[0,0],snapToGrid:n=!1,transform:o,containerBounds:a}){const{x:i,y:l}=Yi(e),s=P1({x:i-(a?.left??0),y:l-(a?.top??0)},o),{x:c,y:d}=n?N1(s,r):s;return{xSnapped:c,ySnapped:d,...s}}const Z8=e=>({width:e.offsetWidth,height:e.offsetHeight}),ML=e=>e?.getRootNode?.()||window?.document,P8e=["INPUT","SELECT","TEXTAREA"];function NL(e){const r=e.composedPath?.()?.[0]||e.target;return r?.nodeType!==1?!1:P8e.includes(r.nodeName)||r.hasAttribute("contenteditable")||!!r.closest(".nokey")}const PL=e=>"clientX"in e,Yi=(e,r)=>{const n=PL(e),o=n?e.clientX:e.touches?.[0].clientX,a=n?e.clientY:e.touches?.[0].clientY;return{x:o-(r?.left??0),y:a-(r?.top??0)}},BL=(e,r,n,o,a)=>{const i=r.querySelectorAll(`.${e}`);return!i||!i.length?null:Array.from(i).map(l=>{const s=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:a,position:l.getAttribute("data-handlepos"),x:(s.left-n.left)/o,y:(s.top-n.top)/o,...Z8(l)}})};function OL({sourceX:e,sourceY:r,targetX:n,targetY:o,sourceControlX:a,sourceControlY:i,targetControlX:l,targetControlY:s}){const c=e*.125+a*.375+l*.375+n*.125,d=r*.125+i*.375+s*.375+o*.125,u=Math.abs(c-e),p=Math.abs(d-r);return[c,d,u,p]}function Tx(e,r){return e>=0?.5*e:r*25*Math.sqrt(-e)}function IL({pos:e,x1:r,y1:n,x2:o,y2:a,c:i}){switch(e){case Ue.Left:return[r-Tx(r-o,i),n];case Ue.Right:return[r+Tx(o-r,i),n];case Ue.Top:return[r,n-Tx(n-a,i)];case Ue.Bottom:return[r,n+Tx(a-n,i)]}}function Ax({sourceX:e,sourceY:r,sourcePosition:n=Ue.Bottom,targetX:o,targetY:a,targetPosition:i=Ue.Top,curvature:l=.25}){const[s,c]=IL({pos:n,x1:e,y1:r,x2:o,y2:a,c:l}),[d,u]=IL({pos:i,x1:o,y1:a,x2:e,y2:r,c:l}),[p,f,g,v]=OL({sourceX:e,sourceY:r,targetX:o,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:u});return[`M${e},${r} C${s},${c} ${d},${u} ${o},${a}`,p,f,g,v]}function LL({sourceX:e,sourceY:r,targetX:n,targetY:o}){const a=Math.abs(n-e)/2,i=n0}const I8e=({source:e,sourceHandle:r,target:n,targetHandle:o})=>`xy-edge__${e}${r||""}-${n}${o||""}`,L8e=(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)),F8e=(e,r,n={})=>{if(!e.source||!e.target)return r;const o=n.getEdgeId||I8e;let a;return _L(e)?a={...e}:a={...e,id:o(e)},L8e(a,r)?r:(a.sourceHandle===null&&delete a.sourceHandle,a.targetHandle===null&&delete a.targetHandle,r.concat(a))};function FL({sourceX:e,sourceY:r,targetX:n,targetY:o}){const[a,i,l,s]=LL({sourceX:e,sourceY:r,targetX:n,targetY:o});return[`M ${e},${r}L ${n},${o}`,a,i,l,s]}const VL={[Ue.Left]:{x:-1,y:0},[Ue.Right]:{x:1,y:0},[Ue.Top]:{x:0,y:-1},[Ue.Bottom]:{x:0,y:1}},V8e=({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 q8e({source:e,sourcePosition:r=Ue.Bottom,target:n,targetPosition:o=Ue.Top,center:a,offset:i,stepPosition:l}){const s=VL[r],c=VL[o],d={x:e.x+s.x*i,y:e.y+s.y*i},u={x:n.x+c.x*i,y:n.y+c.y*i},p=V8e({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},[,,_,$]=LL({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[f]*c[f]===-1){f==="x"?(w=a.x??d.x+(u.x-d.x)*l,x=a.y??(d.y+u.y)/2):(w=a.x??(d.x+u.x)/2,x=a.y??d.y+(u.y-d.y)*l);const z=[{x:w,y:d.y},{x:w,y:u.y}],j=[{x:d.x,y:x},{x:u.x,y:x}];s[f]===g?v=f==="x"?z:j:v=f==="x"?j:z}else{const z=[{x:d.x,y:u.y}],j=[{x:u.x,y:d.y}];if(f==="x"?v=s.x===g?j:z:v=s.y===g?z:j,r===o){const P=Math.abs(e[f]-n[f]);if(P<=i){const L=Math.min(i-1,i-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]=O?(w=(A.x+R.x)/2,x=v[0].y):(w=v[0].x,x=(A.y+R.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 H8e(e,r,n,o){const a=Math.min(qL(e,r)/2,qL(r,n)/2,o),{x:i,y:l}=r;if(e.x===i&&i===n.x||e.y===l&&l===n.y)return`L${i} ${l}`;if(e.y===l){const d=e.x{let _="";return C>0&&Cn.id===r):e[0])||null}function K8(e,r){return e?typeof e=="string"?e:`${r?`${r}__`:""}${Object.keys(e).sort().map(n=>`${n}=${e[n]}`).join("&")}`:""}function U8e(e,{id:r,defaultColor:n,defaultMarkerStart:o,defaultMarkerEnd:a}){const i=new Set;return e.reduce((l,s)=>([s.markerStart||o,s.markerEnd||a].forEach(c=>{if(c&&typeof c=="object"){const d=K8(c,r);i.has(d)||(l.push({id:d,color:c.color||n,...c}),i.add(d))}}),l),[]).sort((l,s)=>l.id.localeCompare(s.id))}function W8e(e,r,n,o,a){let i=.5;a==="start"?i=0:a==="end"&&(i=1);let l=[(e.x+e.width*i)*r.zoom+r.x,e.y*r.zoom+r.y-o],s=[-100*i,-100];switch(n){case Ue.Right:l=[(e.x+e.width)*r.zoom+r.x+o,(e.y+e.height*i)*r.zoom+r.y],s=[0,-100*i];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*i)*r.zoom+r.y],s=[-100,-100*i];break}return`translate(${l[0]}px, ${l[1]}px) translate(${s[0]}%, ${s[1]}%)`}const YL=1e3,G8e=10,Q8={nodeOrigin:[0,0],nodeExtent:T1,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},Y8e={...Q8,checkEquality:!0};function J8(e,r){const n={...e};for(const o in r)r[o]!==void 0&&(n[o]=r[o]);return n}function X8e(e,r,n){const o=J8(Q8,n);for(const a of e.values())if(a.parentId)r7(a,e,r,o);else{const i=D1(a,o.nodeOrigin),l=of(a.extent)?a.extent:o.nodeExtent,s=Fu(i,l,_o(a));a.internals.positionAbsolute=s}}function Z8e(e,r){if(!e.handles)return e.measured?r?.internals.handleBounds:void 0;const n=[],o=[];for(const a of e.handles){const i={id:a.id,width:a.width??1,height:a.height??1,nodeId:e.id,x:a.x,y:a.y,position:a.position,type:a.type};a.type==="source"?n.push(i):a.type==="target"&&o.push(i)}return{source:n,target:o}}function e7(e){return e==="manual"}function t7(e,r,n,o={}){const a=J8(Y8e,o),i={i:0},l=new Map(r),s=a?.elevateNodesOnSelect&&!e7(a.zIndexMode)?YL:0;let c=e.length>0;r.clear(),n.clear();for(const d of e){let u=l.get(d.id);if(a.checkEquality&&d===u?.internals.userNode)r.set(d.id,u);else{const p=D1(d,a.nodeOrigin),f=of(d.extent)?d.extent:a.nodeExtent,g=Fu(p,f,_o(d));u={...a.defaults,...d,measured:{width:d.measured?.width,height:d.measured?.height},internals:{positionAbsolute:g,handleBounds:Z8e(d,u),z:XL(d,s,a.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&&r7(u,r,n,o,i)}return c}function K8e(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 r7(e,r,n,o,a){const{elevateNodesOnSelect:i,nodeOrigin:l,nodeExtent:s,zIndexMode:c}=J8(Q8,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}K8e(e,n),a&&!u.parentId&&u.internals.rootParentIndex===void 0&&c==="auto"&&(u.internals.rootParentIndex=++a.i,u.internals.z=u.internals.z+a.i*G8e),a&&u.internals.rootParentIndex!==void 0&&(a.i=u.internals.rootParentIndex);const p=i&&!e7(c)?YL:0,{x:f,y:g,z:v}=Q8e(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 XL(e,r,n){const o=Gi(e.zIndex)?e.zIndex:0;return e7(n)?o:o+(e.selected?r:0)}function Q8e(e,r,n,o,a,i){const{x:l,y:s}=r.internals.positionAbsolute,c=_o(e),d=D1(e,n),u=of(e.extent)?Fu(d,e.extent,c):d;let p=Fu({x:l+u.x,y:s+u.y},o,c);e.extent==="parent"&&(p=CL(p,c,r));const f=XL(e,a,i),g=r.internals.z??0;return{x:p.x,y:p.y,z:g>=f?g+1:f}}function n7(e,r,n,o=[0,0]){const a=[],i=new Map;for(const l of e){const s=r.get(l.parentId);if(!s)continue;const c=i.get(l.parentId)?.expandedRect??Vu(s),d=RL(c,l.rect);i.set(l.parentId,{expandedRect:d,parent:s})}return i.size>0&&i.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)&&(a.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)||a.push({id:C.id,type:"position",position:{x:C.position.x+f,y:C.position.y+g}})})),(u.width0){const g=n7(f,r,n,a);d.push(...g)}return{changes:d,updatedInternals:c}}async function e7e({delta:e,panZoom:r,transform:n,translateExtent:o,width:a,height:i}){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],[a,i]],o),s=!!l&&(l.x!==n[0]||l.y!==n[1]||l.k!==n[2]);return Promise.resolve(s)}function ZL(e,r,n,o,a,i){let l=a;const s=o.get(l)||new Map;o.set(l,s.set(n,r)),l=`${a}-${e}`;const c=o.get(l)||new Map;if(o.set(l,c.set(n,r)),i){l=`${a}-${e}-${i}`;const d=o.get(l)||new Map;o.set(l,d.set(n,r))}}function KL(e,r,n){e.clear(),r.clear();for(const o of n){const{source:a,target:i,sourceHandle:l=null,targetHandle:s=null}=o,c={edgeId:o.id,source:a,target:i,sourceHandle:l,targetHandle:s},d=`${a}-${l}--${i}-${s}`,u=`${i}-${s}--${a}-${l}`;ZL("source",c,u,e,a,l),ZL("target",c,d,e,i,s),r.set(o.id,o)}}function QL(e,r){if(!e.parentId)return!1;const n=r.get(e.parentId);return n?n.selected?!0:QL(n,r):!1}function JL(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 t7e(e,r,n,o){const a=new Map;for(const[i,l]of e)if((l.selected||l.id===o)&&(!l.parentId||!QL(l,e))&&(l.draggable||r&&typeof l.draggable>"u")){const s=e.get(i);s&&a.set(i,{id:i,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 a}function o7({nodeId:e,dragItems:r,nodeLookup:n,dragging:o=!0}){const a=[];for(const[l,s]of r){const c=n.get(l)?.internals.userNode;c&&a.push({...c,position:s.position,dragging:o})}if(!e)return[a[0],a];const i=n.get(e)?.internals.userNode;return[i?{...i,position:r.get(e)?.position||i.position,dragging:o}:a[0],a]}function r7e({dragItems:e,snapGrid:r,x:n,y:o}){const a=e.values().next().value;if(!a)return null;const i={x:n-a.distance.x,y:o-a.distance.y},l=N1(i,r);return{x:l.x-i.x,y:l.y-i.y}}function n7e({onNodeMouseDown:e,getStoreItems:r,onDragStart:n,onDrag:o,onDragStop:a}){let i={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:z,nodeId:j,nodeClickDistance:A=0}){f=ka($);function R({x:L,y:H}){const{nodeLookup:M,nodeExtent:V,snapGrid:B,snapToGrid:F,nodeOrigin:q,onNodeDrag:G,onSelectionDrag:U,onError:Y,updateNodePositions:Z}=r();i={x:L,y:H};let I=!1;const W=s.size>1,K=W&&V?X8(ef(s)):null,Q=W&&F?r7e({dragItems:s,snapGrid:B,x:L,y:H}):null;for(const[ae,te]of s){if(!M.has(ae))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)}:N1(re,B));let ue=null;if(W&&V&&!te.extent&&K){const{positionAbsolute:pe}=te.internals,xe=pe.x-K.x+V[0][0],De=pe.x+te.measured.width-K.x2+V[1][0],Be=pe.y-K.y+V[0][1],Je=pe.y+te.measured.height-K.y2+V[1][1];ue=[[xe,Be],[De,Je]]}const{position:_e,positionAbsolute:ce}=EL({nodeId:ae,nextPosition:re,nodeLookup:M,nodeExtent:ue||V,nodeOrigin:q,onError:Y});I=I||te.position.x!==_e.x||te.position.y!==_e.y,te.position=_e,te.internals.positionAbsolute=ce}if(v=v||I,!!I&&(Z(s,!0),w&&(o||G||!j&&U))){const[ae,te]=o7({nodeId:j,dragItems:s,nodeLookup:M});o?.(w,s,ae,te),G?.(w,ae,te),j||U?.(w,te)}}async function T(){if(!u)return;const{transform:L,panBy:H,autoPanSpeed:M,autoPanOnNodeDrag:V}=r();if(!V){c=!1,cancelAnimationFrame(l);return}const[B,F]=zL(d,u,M);(B!==0||F!==0)&&(i.x=(i.x??0)-B/L[2],i.y=(i.y??0)-F/L[2],await H({x:B,y:F})&&R(i)),l=requestAnimationFrame(T)}function O(L){const{nodeLookup:H,multiSelectionActive:M,nodesDraggable:V,transform:B,snapGrid:F,snapToGrid:q,selectNodesOnDrag:G,onNodeDragStart:U,onSelectionDragStart:Y,unselectNodesAndEdges:Z}=r();p=!0,(!G||!z)&&!M&&j&&(H.get(j)?.selected||Z()),z&&G&&j&&e?.(j);const I=B1(L.sourceEvent,{transform:B,snapGrid:F,snapToGrid:q,containerBounds:u});if(i=I,s=t7e(H,V,I,j),s.size>0&&(n||U||!j&&Y)){const[W,K]=o7({nodeId:j,dragItems:s,nodeLookup:H});n?.(L.sourceEvent,s,W,K),U?.(L.sourceEvent,W,K),j||Y?.(L.sourceEvent,K)}}const P=LI().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&&O(L),i=B1(L.sourceEvent,{transform:V,snapGrid:B,snapToGrid:F,containerBounds:u}),d=Yi(L.sourceEvent,u)}).on("drag",L=>{const{autoPanOnNodeDrag:H,transform:M,snapGrid:V,snapToGrid:B,nodeDragThreshold:F,nodeLookup:q}=r(),G=B1(L.sourceEvent,{transform:M,snapGrid:V,snapToGrid:B,containerBounds:u});if(w=L.sourceEvent,(L.sourceEvent.type==="touchmove"&&L.sourceEvent.touches.length>1||j&&!q.has(j))&&(g=!0),!g){if(!c&&H&&p&&(c=!0,T()),!p){const U=Yi(L.sourceEvent,u),Y=U.x-d.x,Z=U.y-d.y;Math.sqrt(Y*Y+Z*Z)>F&&O(L)}(i.x!==G.xSnapped||i.y!==G.ySnapped)&&s&&p&&(d=Yi(L.sourceEvent,u),R(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),a||V||!j&&B){const[F,q]=o7({nodeId:j,dragItems:s,nodeLookup:H,dragging:!1});a?.(L.sourceEvent,s,F,q),V?.(L.sourceEvent,F,q),j||B?.(L.sourceEvent,q)}}}).filter(L=>{const H=L.target;return!L.button&&(!C||!JL(H,`.${C}`,$))&&(!_||JL(H,_,$))});f.call(P)}function k(){f?.on(".drag",null)}return{update:x,destroy:k}}function o7e(e,r,n){const o=[],a={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const i of r.values())M1(a,Vu(i))>0&&o.push(i);return o}const a7e=250;function i7e(e,r,n,o){let a=[],i=1/0;const l=o7e(e,n,r+a7e);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}=qu(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 a.find(c=>c.type===s)??a[0]}return a[0]}function eF(e,r,n,o,a,i=!1){const l=o.get(e);if(!l)return null;const s=a==="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&&i?{...c,...qu(l,c,c.position,!0)}:c}function tF(e,r){return e||(r?.classList.contains("target")?"target":r?.classList.contains("source")?"source":null)}function l7e(e,r){let n=null;return r?n=!0:e&&!r&&(n=!1),n}const rF=()=>!0;function s7e(e,{connectionMode:r,connectionRadius:n,handleId:o,nodeId:a,edgeUpdaterType:i,isTarget:l,domNode:s,nodeLookup:c,lib:d,autoPanOnConnect:u,flowId:p,panBy:f,cancelConnection:g,onConnectStart:v,onConnect:w,onConnectEnd:x,isValidConnection:k=rF,onReconnectEnd:C,updateConnection:_,getTransform:$,getFromHandle:z,autoPanSpeed:j,dragThreshold:A=1,handleDomNode:R}){const T=ML(e.target);let O=0,P;const{x:L,y:H}=Yi(e),M=tF(i,R),V=s?.getBoundingClientRect();let B=!1;if(!V||!M)return;const F=eF(a,M,o,c,r);if(!F)return;let q=Yi(e,V),G=!1,U=null,Y=!1,Z=null;function I(){if(!u||!V)return;const[ue,_e]=zL(q,V,j);f({x:ue,y:_e}),O=requestAnimationFrame(I)}const W={...F,nodeId:a,type:M,position:F.position},K=c.get(a);let Q={inProgress:!0,isValid:null,from:qu(K,W,Ue.Left,!0),fromHandle:W,fromPosition:W.position,fromNode:K,to:q,toHandle:null,toPosition:wL[W.position],toNode:null,pointer:q};function ae(){B=!0,_(Q),v?.(e,{nodeId:a,handleId:o,handleType:M})}A===0&&ae();function te(ue){if(!B){const{x:Be,y:Je}=Yi(ue),st=Be-L,Le=Je-H;if(!(st*st+Le*Le>A*A))return;ae()}if(!z()||!W){re(ue);return}const _e=$();q=Yi(ue,V),P=i7e(P1(q,_e,!1,[1,1]),n,c,W),G||(I(),G=!0);const ce=nF(ue,{handle:P,connectionMode:r,fromNodeId:a,fromHandleId:o,fromType:l?"target":"source",isValidConnection:k,doc:T,lib:d,flowId:p,nodeLookup:c});Z=ce.handleDomNode,U=ce.connection,Y=l7e(!!P,ce.isValid);const pe=c.get(a),xe=pe?qu(pe,W,Ue.Left,!0):Q.from,De={...Q,from:xe,isValid:Y,to:ce.toHandle&&Y?jx({x:ce.toHandle.x,y:ce.toHandle.y},_e):q,toHandle:ce.toHandle,toPosition:Y&&ce.toHandle?ce.toHandle.position:wL[W.position],toNode:ce.toHandle?c.get(ce.toHandle.nodeId):null,pointer:q};_(De),Q=De}function re(ue){if(!("touches"in ue&&ue.touches.length>0)){if(B){(P||Z)&&U&&Y&&w?.(U);const{inProgress:_e,...ce}=Q,pe={...ce,toPosition:Q.toHandle?Q.toPosition:null};x?.(ue,pe),i&&C?.(ue,pe)}g(),cancelAnimationFrame(O),G=!1,Y=!1,U=null,Z=null,T.removeEventListener("mousemove",te),T.removeEventListener("mouseup",re),T.removeEventListener("touchmove",te),T.removeEventListener("touchend",re)}}T.addEventListener("mousemove",te),T.addEventListener("mouseup",re),T.addEventListener("touchmove",te),T.addEventListener("touchend",re)}function nF(e,{handle:r,connectionMode:n,fromNodeId:o,fromHandleId:a,fromType:i,doc:l,lib:s,flowId:c,isValidConnection:d=rF,nodeLookup:u}){const p=i==="target",f=r?l.querySelector(`.${s}-flow__handle[data-id="${c}-${r?.nodeId}-${r?.id}-${r?.type}"]`):null,{x:g,y:v}=Yi(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=tF(void 0,x),_=x.getAttribute("data-nodeid"),$=x.getAttribute("data-handleid"),z=x.classList.contains("connectable"),j=x.classList.contains("connectableend");if(!_||!C)return k;const A={source:p?_:o,sourceHandle:p?$:a,target:p?o:_,targetHandle:p?a:$};k.connection=A;const R=z&&j&&(n===Jh.Strict?p&&C==="source"||!p&&C==="target":_!==o||$!==a);k.isValid=R&&d(A),k.toHandle=eF(_,C,$,u,n,!0)}return k}const a7={onPointerDown:s7e,isValid:nF};function c7e({domNode:e,panZoom:r,getTransform:n,getViewScale:o}){const a=ka(e);function i({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(),z=_.sourceEvent.ctrlKey&&nf()?10:1,j=-_.sourceEvent.deltaY*(_.sourceEvent.deltaMode===1?.05:_.sourceEvent.deltaMode?1:.002)*u,A=$[2]*Math.pow(2,j*z);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 z=[_.sourceEvent.clientX??_.sourceEvent.touches[0].clientX,_.sourceEvent.clientY??_.sourceEvent.touches[0].clientY],j=[z[0]-w[0],z[1]-w[1]];w=z;const A=o()*Math.max($[2],Math.log($[2]))*(g?-1:1),R={x:$[0]-j[0]*A,y:$[1]-j[1]*A},T=[[0,0],[c,d]];r.setViewportConstrained({x:R.x,y:R.y,zoom:$[2]},T,s)},C=yL().on("start",x).on("zoom",p?k:null).on("zoom.wheel",f?v:null);a.call(C,{})}function l(){a.on("zoom",null)}return{update:i,destroy:l,pointer:Hi}}const Mx=e=>({x:e.x,y:e.y,zoom:e.k}),i7=({x:e,y:r,zoom:n})=>Ex.translate(e,r).scale(n),af=(e,r)=>e.target.closest(`.${r}`),oF=(e,r)=>r===2&&Array.isArray(e)&&e.includes(2),d7e=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,l7=(e,r=0,n=d7e,o=()=>{})=>{const a=typeof r=="number"&&r>0;return a||o(),a?e.transition().duration(r).ease(n).on("end",o):e},aF=e=>{const r=e.ctrlKey&&nf()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*r};function u7e({zoomPanValues:e,noWheelClassName:r,d3Selection:n,d3Zoom:o,panOnScrollMode:a,panOnScrollSpeed:i,zoomOnPinch:l,onPanZoomStart:s,onPanZoom:c,onPanZoomEnd:d}){return u=>{if(af(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=Hi(u),k=aF(u),C=p*Math.pow(2,k);o.scaleTo(n,C,x,u);return}const f=u.deltaMode===1?20:1;let g=a===Lu.Vertical?0:u.deltaX*f,v=a===Lu.Horizontal?0:u.deltaY*f;!nf()&&u.shiftKey&&a!==Lu.Vertical&&(g=u.deltaY*f,v=0),o.translateBy(n,-(g/p)*i,-(v/p)*i,{internal:!0});const w=Mx(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 p7e({noWheelClassName:e,preventScrolling:r,d3ZoomHandler:n}){return function(o,a){const i=o.type==="wheel",l=!r&&i&&!o.ctrlKey,s=af(o,e);if(o.ctrlKey&&i&&s&&o.preventDefault(),l||s)return null;o.preventDefault(),n.call(this,o,a)}}function h7e({zoomPanValues:e,onDraggingChange:r,onPanZoomStart:n}){return o=>{if(o.sourceEvent?.internal)return;const a=Mx(o.transform);e.mouseButton=o.sourceEvent?.button||0,e.isZoomingOrPanning=!0,e.prevViewport=a,o.sourceEvent?.type==="mousedown"&&r(!0),n&&n?.(o.sourceEvent,a)}}function f7e({zoomPanValues:e,panOnDrag:r,onPaneContextMenu:n,onTransformChange:o,onPanZoom:a}){return i=>{e.usedRightMouseButton=!!(n&&oF(r,e.mouseButton??0)),i.sourceEvent?.sync||o([i.transform.x,i.transform.y,i.transform.k]),a&&!i.sourceEvent?.internal&&a?.(i.sourceEvent,Mx(i.transform))}}function m7e({zoomPanValues:e,panOnDrag:r,panOnScroll:n,onDraggingChange:o,onPanZoomEnd:a,onPaneContextMenu:i}){return l=>{if(!l.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,i&&oF(r,e.mouseButton??0)&&!e.usedRightMouseButton&&l.sourceEvent&&i(l.sourceEvent),e.usedRightMouseButton=!1,o(!1),a)){const s=Mx(l.transform);e.prevViewport=s,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{a?.(l.sourceEvent,s)},n?150:0)}}}function g7e({zoomActivationKeyPressed:e,zoomOnScroll:r,zoomOnPinch:n,panOnDrag:o,panOnScroll:a,zoomOnDoubleClick:i,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"&&(af(p,`${d}-flow__node`)||af(p,`${d}-flow__edge`)))return!0;if(!o&&!f&&!a&&!i&&!n||l||u&&!v||af(p,s)&&v||af(p,c)&&(!v||a&&v&&!e)||!n&&p.ctrlKey&&v)return!1;if(!n&&p.type==="touchstart"&&p.touches?.length>1)return p.preventDefault(),!1;if(!f&&!a&&!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 y7e({domNode:e,minZoom:r,maxZoom:n,translateExtent:o,viewport:a,onPanZoom:i,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=yL().scaleExtent([r,n]).translateExtent(o),f=ka(e).call(p);C({x:a.x,y:a.y,zoom:tf(a.zoom,r,n)},[[0,0],[u.width,u.height]],o);const g=f.on("wheel.zoom"),v=f.on("dblclick.zoom");p.wheelDelta(aF);function w(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?E1:mx).transform(l7(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:Z,zoomActivationKeyPressed:I,lib:W,onTransformChange:K,connectionInProgress:Q,paneClickDistance:ae,selectionOnDrag:te}){M&&!d.isZoomingOrPanning&&k();const re=V&&!I&&!M;p.clickDistance(te?1/0:!Gi(ae)||ae<0?0:ae);const ue=re?u7e({zoomPanValues:d,noWheelClassName:P,d3Selection:f,d3Zoom:p,panOnScrollMode:F,panOnScrollSpeed:q,zoomOnPinch:U,onPanZoomStart:l,onPanZoom:i,onPanZoomEnd:s}):p7e({noWheelClassName:P,preventScrolling:G,d3ZoomHandler:g});if(f.on("wheel.zoom",ue,{passive:!1}),!M){const ce=h7e({zoomPanValues:d,onDraggingChange:c,onPanZoomStart:l});p.on("start",ce);const pe=f7e({zoomPanValues:d,panOnDrag:B,onPaneContextMenu:!!H,onPanZoom:i,onTransformChange:K});p.on("zoom",pe);const xe=m7e({zoomPanValues:d,panOnDrag:B,panOnScroll:V,onPaneContextMenu:H,onPanZoomEnd:s,onDraggingChange:c});p.on("end",xe)}const _e=g7e({zoomActivationKeyPressed:I,panOnDrag:B,zoomOnScroll:Y,panOnScroll:V,zoomOnDoubleClick:Z,zoomOnPinch:U,userSelectionActive:M,noPanClassName:L,noWheelClassName:P,lib:W,connectionInProgress:Q});p.filter(_e),Z?f.on("dblclick.zoom",v):f.on("dblclick.zoom",null)}function k(){p.on("zoom",null)}async function C(P,L,H){const M=i7(P),V=p?.constrain()(M,L,H);return V&&await w(V),new Promise(B=>B(V))}async function _(P,L){const H=i7(P);return await w(H,L),new Promise(M=>M(H))}function $(P){if(f){const L=i7(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 z(){const P=f?mL(f.node()):{x:0,y:0,k:1};return{x:P.x,y:P.y,zoom:P.k}}function j(P,L){return f?new Promise(H=>{p?.interpolate(L?.interpolate==="linear"?E1:mx).scaleTo(l7(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"?E1:mx).scaleBy(l7(f,L?.duration,L?.ease,()=>H(!0)),P)}):Promise.resolve(!1)}function R(P){p?.scaleExtent(P)}function T(P){p?.translateExtent(P)}function O(P){const L=!Gi(P)||P<0?0:P;p?.clickDistance(L)}return{update:x,destroy:k,setViewport:_,setViewportConstrained:C,getViewport:z,scaleTo:j,scaleBy:A,setScaleExtent:R,setTranslateExtent:T,syncViewport:$,setClickDistance:O}}var lf;(function(e){e.Line="line",e.Handle="handle"})(lf||(lf={}));function v7e({width:e,prevWidth:r,height:n,prevHeight:o,affectsX:a,affectsY:i}){const l=e-r,s=n-o,c=[l>0?1:l<0?-1:0,s>0?1:s<0?-1:0];return l&&a&&(c[0]=c[0]*-1),s&&i&&(c[1]=c[1]*-1),c}function iF(e){const r=e.includes("right")||e.includes("left"),n=e.includes("bottom")||e.includes("top"),o=e.includes("left"),a=e.includes("top");return{isHorizontal:r,isVertical:n,affectsX:o,affectsY:a}}function Qc(e,r){return Math.max(0,r-e)}function Jc(e,r){return Math.max(0,e-r)}function Nx(e,r,n){return Math.max(0,r-e,e-n)}function lF(e,r){return e?!r:r}function b7e(e,r,n,o,a,i,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:z,height:j,aspectRatio:A}=e;let R=Math.floor(u?g-e.pointerX:0),T=Math.floor(p?v-e.pointerY:0);const O=z+(c?-R:R),P=j+(d?-T:T),L=-i[0]*z,H=-i[1]*j;let M=Nx(O,w,x),V=Nx(P,k,C);if(l){let q=0,G=0;c&&R<0?q=Qc(_+R+L,l[0][0]):!c&&R>0&&(q=Jc(_+O+L,l[1][0])),d&&T<0?G=Qc($+T+H,l[0][1]):!d&&T>0&&(G=Jc($+P+H,l[1][1])),M=Math.max(M,q),V=Math.max(V,G)}if(s){let q=0,G=0;c&&R>0?q=Jc(_+R,s[0][0]):!c&&R<0&&(q=Qc(_+O,s[1][0])),d&&T>0?G=Jc($+T,s[0][1]):!d&&T<0&&(G=Qc($+P,s[1][1])),M=Math.max(M,q),V=Math.max(V,G)}if(a){if(u){const q=Nx(O/A,k,C)*A;if(M=Math.max(M,q),l){let G=0;!c&&!d||c&&!d&&f?G=Jc($+H+O/A,l[1][1])*A:G=Qc($+H+(c?R:-R)/A,l[0][1])*A,M=Math.max(M,G)}if(s){let G=0;!c&&!d||c&&!d&&f?G=Qc($+O/A,s[1][1])*A:G=Jc($+(c?R:-R)/A,s[0][1])*A,M=Math.max(M,G)}}if(p){const q=Nx(P*A,w,x)/A;if(V=Math.max(V,q),l){let G=0;!c&&!d||d&&!c&&f?G=Jc(_+P*A+L,l[1][0])/A:G=Qc(_+(d?T:-T)*A+L,l[0][0])/A,V=Math.max(V,G)}if(s){let G=0;!c&&!d||d&&!c&&f?G=Qc(_+P*A,s[1][0])/A:G=Jc(_+(d?T:-T)*A,s[0][0])/A,V=Math.max(V,G)}}}T=T+(T<0?V:-V),R=R+(R<0?M:-M),a&&(f?O>P*A?T=(lF(c,d)?-R:R)/A:R=(lF(c,d)?-T:T)*A:u?(T=R/A,d=c):(R=T*A,c=d));const B=c?_+R:_,F=d?$+T:$;return{width:z+(c?-R:R),height:j+(d?-T:T),x:i[0]*R*(c?-1:1)+B,y:i[1]*T*(d?-1:1)+F}}const sF={width:0,height:0,x:0,y:0},x7e={...sF,pointerX:0,pointerY:0,aspectRatio:1};function w7e(e){return[[0,0],[e.measured.width,e.measured.height]]}function k7e(e,r,n){const o=r.position.x+e.position.x,a=r.position.y+e.position.y,i=e.measured.width??0,l=e.measured.height??0,s=n[0]*i,c=n[1]*l;return[[o-s,a-c],[o+i-s,a+l-c]]}function _7e({domNode:e,nodeId:r,getStoreItems:n,onChange:o,onEnd:a}){const i=ka(e);let l={controlDirection:iF("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={...sF},C={...x7e};l={boundaries:u,resizeDirection:f,keepAspectRatio:p,controlDirection:iF(d)};let _,$=null,z=[],j,A,R,T=!1;const O=LI().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}=B1(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},j=void 0,_.parentId&&(_.extent==="parent"||_.expandParent)&&(j=L.get(_.parentId),A=j&&_.extent==="parent"?w7e(j):void 0),z=[],R=void 0;for(const[U,Y]of L)if(Y.parentId===r&&(z.push({id:U,position:{...Y.position},extent:Y.extent}),Y.extent==="parent"||Y.expandParent)){const Z=k7e(Y,_,Y.origin??B);R?R=[[Math.min(Z[0][0],R[0][0]),Math.min(Z[0][1],R[0][1])],[Math.max(Z[1][0],R[1][0]),Math.max(Z[1][1],R[1][1])]]:R=Z}g?.(P,{...k})}).on("drag",P=>{const{transform:L,snapGrid:H,snapToGrid:M,nodeOrigin:V}=n(),B=B1(P.sourceEvent,{transform:L,snapGrid:H,snapToGrid:M,containerBounds:$}),F=[];if(!_)return;const{x:q,y:G,width:U,height:Y}=k,Z={},I=_.origin??V,{width:W,height:K,x:Q,y:ae}=b7e(C,l.controlDirection,B,l.boundaries,l.keepAspectRatio,I,A,R),te=W!==U,re=K!==Y,ue=Q!==q&&te,_e=ae!==G&&re;if(!ue&&!_e&&!te&&!re)return;if((ue||_e||I[0]===1||I[1]===1)&&(Z.x=ue?Q:k.x,Z.y=_e?ae:k.y,k.x=Z.x,k.y=Z.y,z.length>0)){const xe=Q-q,De=ae-G;for(const Be of z)Be.position={x:Be.position.x-xe+I[0]*(W-U),y:Be.position.y-De+I[1]*(K-Y)},F.push(Be)}if((te||re)&&(Z.width=te&&(!l.resizeDirection||l.resizeDirection==="horizontal")?W:k.width,Z.height=re&&(!l.resizeDirection||l.resizeDirection==="vertical")?K:k.height,k.width=Z.width,k.height=Z.height),j&&_.expandParent){const xe=I[0]*(Z.width??0);Z.x&&Z.x{T&&(w?.(P,{...k}),a?.({...k}),T=!1)});i.call(O)}function c(){i.on(".drag",null)}return{update:s,destroy:c}}function s7(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var cF={exports:{}},c7={},dF={exports:{}},d7={},uF;function S7e(){if(uF)return d7;uF=1;var e=Kr;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,a=e.useEffect,i=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 i(function(){w.value=g,w.getSnapshot=f,c(w)&&x({inst:w})},[p,g,f]),a(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 d7.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:u,d7}var pF;function hF(){return pF||(pF=1,dF.exports=S7e()),dF.exports}var fF;function E7e(){if(fF)return c7;fF=1;var e=Kr,r=hF();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,a=r.useSyncExternalStore,i=e.useRef,l=e.useEffect,s=e.useMemo,c=e.useDebugValue;return c7.useSyncExternalStoreWithSelector=function(d,u,p,f,g){var v=i(null);if(v.current===null){var w={hasValue:!1,value:null};v.current=w}else w=v.current;v=s(function(){function k(j){if(!C){if(C=!0,_=j,j=f(j),g!==void 0&&w.hasValue){var A=w.value;if(g(A,j))return $=A}return $=j}if(A=$,o(_,j))return A;var R=f(j);return g!==void 0&&g(A,R)?(_=j,A):(_=j,$=R)}var C=!1,_,$,z=p===void 0?null:p;return[function(){return k(u())},z===null?void 0:function(){return k(z())}]},[u,p,f,g]);var x=a(d,v[0],v[1]);return l(function(){w.hasValue=!0,w.value=x},[x]),c(x),x},c7}var mF;function C7e(){return mF||(mF=1,cF.exports=E7e()),cF.exports}var gF=C7e();const $7e=s7(gF),z7e={},yF=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))}},a=()=>r,i={setState:o,getState:a,getInitialState:()=>l,subscribe:s=>(n.add(s),()=>n.delete(s)),destroy:()=>{(z7e?"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,a,i);return i},R7e=e=>e?yF(e):yF,{useDebugValue:j7e}=Kr,{useSyncExternalStoreWithSelector:T7e}=$7e,A7e=e=>e;function vF(e,r=A7e,n){const o=T7e(e.subscribe,e.getState,e.getServerState||e.getInitialState,r,n);return j7e(o),o}const bF=(e,r)=>{const n=R7e(e),o=(a,i=r)=>vF(n,a,i);return Object.assign(o,n),o},D7e=(e,r)=>e?bF(e,r):bF;function Tr(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,a]of e)if(!Object.is(a,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 Px=S.createContext(null),M7e=Px.Provider,xF=Wl.error001();function Dt(e,r){const n=S.useContext(Px);if(n===null)throw new Error(xF);return vF(n,e,r)}function vr(){const e=S.useContext(Px);if(e===null)throw new Error(xF);return S.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const wF={display:"none"},N7e={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},kF="react-flow__node-desc",_F="react-flow__edge-desc",P7e="react-flow__aria-live",B7e=e=>e.ariaLiveMessage,O7e=e=>e.ariaLabelConfig;function I7e({rfId:e}){const r=Dt(B7e);return y.jsx("div",{id:`${P7e}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:N7e,children:r})}function L7e({rfId:e,disableKeyboardA11y:r}){const n=Dt(O7e);return y.jsxs(y.Fragment,{children:[y.jsx("div",{id:`${kF}-${e}`,style:wF,children:r?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),y.jsx("div",{id:`${_F}-${e}`,style:wF,children:n["edge.a11yDescription.default"]}),!r&&y.jsx(I7e,{rfId:e})]})}const ed=S.forwardRef(({position:e="top-left",children:r,className:n,style:o,...a},i)=>{const l=`${e}`.split("-");return y.jsx("div",{className:dn(["react-flow__panel",n,...l]),style:o,ref:i,...a,children:r})});ed.displayName="Panel";function F7e({proOptions:e,position:r="bottom-right"}){return e?.hideAttribution?null:y.jsx(ed,{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 V7e=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}},Bx=e=>e.id;function q7e(e,r){return Tr(e.selectedNodes.map(Bx),r.selectedNodes.map(Bx))&&Tr(e.selectedEdges.map(Bx),r.selectedEdges.map(Bx))}function H7e({onSelectionChange:e}){const r=vr(),{selectedNodes:n,selectedEdges:o}=Dt(V7e,q7e);return S.useEffect(()=>{const a={nodes:n,edges:o};e?.(a),r.getState().onSelectionChangeHandlers.forEach(i=>i(a))},[n,o,e]),null}const U7e=e=>!!e.onSelectionChangeHandlers;function W7e({onSelectionChange:e}){const r=Dt(U7e);return e||r?y.jsx(H7e,{onSelectionChange:e}):null}const SF=[0,0],G7e={x:0,y:0,zoom:1},Y7e=["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"],EF=[...Y7e,"rfId"],X7e=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}),CF={translateExtent:T1,nodeOrigin:SF,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function Z7e(e){const{setNodes:r,setEdges:n,setMinZoom:o,setMaxZoom:a,setTranslateExtent:i,setNodeExtent:l,reset:s,setDefaultNodesAndEdges:c}=Dt(X7e,Tr),d=vr();S.useEffect(()=>(c(e.defaultNodes,e.defaultEdges),()=>{u.current=CF,s()}),[]);const u=S.useRef(CF);return S.useEffect(()=>{for(const p of EF){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"?a(f):p==="translateExtent"?i(f):p==="nodeExtent"?l(f):p==="ariaLabelConfig"?d.setState({ariaLabelConfig:N8e(f)}):p==="fitView"?d.setState({fitViewQueued:f}):p==="fitViewOptions"?d.setState({fitViewOptions:f}):d.setState({[p]:f})))}u.current=e},EF.map(p=>e[p])),null}function $F(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function K7e(e){const[r,n]=S.useState(e==="system"?null:e);return S.useEffect(()=>{if(e!=="system"){n(e);return}const o=$F(),a=()=>n(o?.matches?"dark":"light");return a(),o?.addEventListener("change",a),()=>{o?.removeEventListener("change",a)}},[e]),r!==null?r:$F()?.matches?"dark":"light"}const zF=typeof document<"u"?document:null;function O1(e=null,r={target:zF,actInsideInputWithModifier:!0}){const[n,o]=S.useState(!1),a=S.useRef(!1),i=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(` `,` @@ -100,7 +100,7 @@ ${l} ${s}`}function F7({color:e,theme:r,autoContrast:n}){return(typeof n=="boolean"?n:r.autoContrast)&&cd({color:e||r.primaryColor,theme:r}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function Iq(e,r){return F7({color:e.colors[e.primaryColor][K1(e,r)],theme:e,autoContrast:null})}function mw({theme:e,color:r,colorScheme:n,name:o=r,withColorValues:a=!0}){if(!e.colors[r])return{};if(n==="light"){const s=K1(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`]:vf(e.colors[r][s],.1),[`--mantine-color-${o}-light-hover`]:vf(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`]:vf(e.colors[r][s],.05)};return a?{[`--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 i=K1(e,"dark"),l={[`--mantine-color-${o}-text`]:`var(--mantine-color-${o}-4)`,[`--mantine-color-${o}-filled`]:`var(--mantine-color-${o}-${i})`,[`--mantine-color-${o}-filled-hover`]:`var(--mantine-color-${o}-${i===9?8:i+1})`,[`--mantine-color-${o}-light`]:vf(e.colors[r][Math.max(0,i-2)],.15),[`--mantine-color-${o}-light-hover`]:vf(e.colors[r][Math.max(0,i-2)],.2),[`--mantine-color-${o}-light-color`]:`var(--mantine-color-${o}-${Math.max(i-5,0)})`,[`--mantine-color-${o}-outline`]:`var(--mantine-color-${o}-${Math.max(i-4,0)})`,[`--mantine-color-${o}-outline-hover`]:vf(e.colors[r][Math.max(i-4,0)],.05)};return a?{[`--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 Pze(e){return!!e&&typeof e=="object"&&"mantine-virtual-color"in e}function bf(e,r,n){So(r).forEach(o=>Object.assign(e,{[`--mantine-${n}-${o}`]:r[o]}))}const Lq=e=>{const r=K1(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":Iq(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":Iq(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)"}};bf(o.variables,e.breakpoints,"breakpoint"),bf(o.variables,e.spacing,"spacing"),bf(o.variables,e.fontSizes,"font-size"),bf(o.variables,e.lineHeights,"line-height"),bf(o.variables,e.shadows,"shadow"),bf(o.variables,e.radius,"radius"),e.colors[e.primaryColor].forEach((i,l)=>{o.variables[`--mantine-primary-color-${l}`]=`var(--mantine-color-${e.primaryColor}-${l})`}),So(e.colors).forEach(i=>{const l=e.colors[i];if(Pze(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-${i}-${c}`]=s}),Object.assign(o.light,mw({theme:e,color:i,colorScheme:"light",withColorValues:!1})),Object.assign(o.dark,mw({theme:e,color:i,colorScheme:"dark",withColorValues:!1}))});const a=e.headings.sizes;return So(a).forEach(i=>{o.variables[`--mantine-${i}-font-size`]=a[i].fontSize,o.variables[`--mantine-${i}-line-height`]=a[i].lineHeight,o.variables[`--mantine-${i}-font-weight`]=a[i].fontWeight||e.headings.fontWeight}),o};function Bze({theme:e,generator:r}){const n=Lq(e),o=r?.(e);return o?C7(n,o):n}const V7=Lq(P7);function Oze(e){const r={variables:{},light:{},dark:{}};return So(e.variables).forEach(n=>{V7.variables[n]!==e.variables[n]&&(r.variables[n]=e.variables[n])}),So(e.light).forEach(n=>{V7.light[n]!==e.light[n]&&(r.light[n]=e.light[n])}),So(e.dark).forEach(n=>{V7.dark[n]!==e.dark[n]&&(r.dark[n]=e.dark[n])}),r}function Ize(e){return` ${e}[data-mantine-color-scheme="dark"] { --mantine-color-scheme: dark; } ${e}[data-mantine-color-scheme="light"] { --mantine-color-scheme: light; } -`}function Fq({cssVariablesSelector:e,deduplicateCssVariables:r}){const n=lo(),o=Zu(),a=gze(),i=Bze({theme:n,generator:a}),l=e===":root"&&r,s=l?Oze(i):i,c=Nze(s,e);return c?y.jsx("style",{"data-mantine-styles":!0,nonce:o?.(),dangerouslySetInnerHTML:{__html:`${c}${l?"":Ize(e)}`}}):null}Fq.displayName="@mantine/CssVariables";function xf(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 Lze({manager:e,defaultColorScheme:r,getRootElement:n,forceColorScheme:o}){const a=S.useRef(null),[i,l]=S.useState(()=>e.get(r)),s=o||i,c=S.useCallback(u=>{o||(xf(u,n),l(u),e.set(u))},[e.set,s,o]),d=S.useCallback(()=>{l(r),xf(r,n),e.clear()},[e.clear,r]);return S.useEffect(()=>(e.subscribe(c),e.unsubscribe),[e.subscribe,e.unsubscribe]),Z1(()=>{xf(e.get(r),n)},[]),S.useEffect(()=>{if(o)return xf(o,n),()=>{};o===void 0&&xf(i,n),typeof window<"u"&&"matchMedia"in window&&(a.current=window.matchMedia("(prefers-color-scheme: dark)"));const u=p=>{i==="auto"&&xf(p.matches?"dark":"light",n)};return a.current?.addEventListener("change",u),()=>a.current?.removeEventListener("change",u)},[i,o]),{colorScheme:s,setColorScheme:c,clearColorScheme:d}}function Fze({respectReducedMotion:e,getRootElement:r}){Z1(()=>{e&&r()?.setAttribute("data-respect-reduced-motion","true")},[e])}function q7({theme:e,children:r,getStyleNonce:n,withStaticClasses:o=!0,withGlobalClasses:a=!0,deduplicateCssVariables:i=!0,withCssVariables:l=!0,cssVariablesSelector:s=":root",classNamesPrefix:c="mantine",colorSchemeManager:d=jze(),defaultColorScheme:u="light",getRootElement:p=()=>document.documentElement,cssVariablesResolver:f,forceColorScheme:g,stylesTransform:v,env:w}){const{colorScheme:x,setColorScheme:k,clearColorScheme:C}=Lze({defaultColorScheme:u,forceColorScheme:g,manager:d,getRootElement:p});return Fze({respectReducedMotion:e?.respectReducedMotion||!1,getRootElement:p}),y.jsx(pw.Provider,{value:{colorScheme:x,setColorScheme:k,clearColorScheme:C,getRootElement:p,classNamesPrefix:c,getStyleNonce:n,cssVariablesResolver:f,cssVariablesSelector:s,withStaticClasses:o,stylesTransform:v,env:w},children:y.jsxs(Oq,{theme:e,children:[l&&y.jsx(Fq,{cssVariablesSelector:s,deduplicateCssVariables:i}),a&&y.jsx(Mze,{}),r]})})}q7.displayName="@mantine/core/MantineProvider";function H7({classNames:e,styles:r,props:n,stylesCtx:o}){const a=lo();return{resolvedClassNames:dw({theme:a,classNames:e,props:n,stylesCtx:o||void 0}),resolvedStyles:uw({theme:a,styles:r,props:n,stylesCtx:o||void 0})}}const Vze={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function qze({theme:e,options:r,unstyled:n}){return Qi(r?.focusable&&!n&&(e.focusClassName||Vze[e.focusRing]),r?.active&&!n&&e.activeClassName)}function Hze({selector:e,stylesCtx:r,options:n,props:o,theme:a}){return dw({theme:a,classNames:n?.classNames,props:n?.props||o,stylesCtx:r})[e]}function Vq({selector:e,stylesCtx:r,theme:n,classNames:o,props:a}){return dw({theme:n,classNames:o,props:a,stylesCtx:r})[e]}function Uze({rootSelector:e,selector:r,className:n}){return e===r?n:void 0}function Wze({selector:e,classes:r,unstyled:n}){return n?void 0:r[e]}function Gze({themeName:e,classNamesPrefix:r,selector:n,withStaticClass:o}){return o===!1?[]:e.map(a=>`${r}-${a}-${n}`)}function Yze({themeName:e,theme:r,selector:n,props:o,stylesCtx:a}){return e.map(i=>dw({theme:r,classNames:r.components[i]?.classNames,props:o,stylesCtx:a})?.[n])}function Xze({options:e,classes:r,selector:n,unstyled:o}){return e?.variant&&!o?r[`${n}--${e.variant}`]:void 0}function Zze({theme:e,options:r,themeName:n,selector:o,classNamesPrefix:a,classNames:i,classes:l,unstyled:s,className:c,rootSelector:d,props:u,stylesCtx:p,withStaticClasses:f,headless:g,transformedStyles:v}){return Qi(qze({theme:e,options:r,unstyled:s||g}),Yze({theme:e,themeName:n,selector:o,props:u,stylesCtx:p}),Xze({options:r,classes:l,selector:o,unstyled:s}),Vq({selector:o,stylesCtx:p,theme:e,classNames:i,props:u}),Vq({selector:o,stylesCtx:p,theme:e,classNames:v,props:u}),Hze({selector:o,stylesCtx:p,options:r,props:u,theme:e}),Uze({rootSelector:d,selector:o,className:c}),Wze({selector:o,classes:l,unstyled:s||g}),f&&!g&&Gze({themeName:n,classNamesPrefix:a,selector:o,withStaticClass:r?.withStaticClass}),r?.className)}function Kze({theme:e,themeName:r,props:n,stylesCtx:o,selector:a}){return r.map(i=>uw({theme:e,styles:e.components[i]?.styles,props:n,stylesCtx:o})[a]).reduce((i,l)=>({...i,...l}),{})}function U7({style:e,theme:r}){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...U7({style:o,theme:r})}),{}):typeof e=="function"?e(r):e??{}}function Qze(e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{r[o]={...r[o],...ff(n[o])}}),r),{})}function Jze({vars:e,varsResolver:r,theme:n,props:o,stylesCtx:a,selector:i,themeName:l,headless:s}){return Qze([s?{}:r?.(n,o,a),...l.map(c=>n.components?.[c]?.vars?.(n,o,a)),e?.(n,o,a)])?.[i]}function eRe({theme:e,themeName:r,selector:n,options:o,props:a,stylesCtx:i,rootSelector:l,styles:s,style:c,vars:d,varsResolver:u,headless:p,withStylesTransform:f}){return{...!f&&Kze({theme:e,themeName:r,props:a,stylesCtx:i,selector:n}),...!f&&uw({theme:e,styles:s,props:a,stylesCtx:i})[n],...!f&&uw({theme:e,styles:o?.styles,props:o?.props||a,stylesCtx:i})[n],...Jze({theme:e,props:a,stylesCtx:i,vars:d,varsResolver:u,selector:n,themeName:r,headless:p}),...l===n?U7({style:c,theme:e}):null,...U7({style:o?.style,theme:e})}}function tRe({props:e,stylesCtx:r,themeName:n}){const o=lo(),a=wze()?.();return{getTransformedStyles:i=>a?[...i.map(l=>a(l,{props:e,theme:o,ctx:r})),...n.map(l=>a(o.components[l]?.styles,{props:e,theme:o,ctx:r}))].filter(Boolean):[],withStylesTransform:!!a}}function kt({name:e,classes:r,props:n,stylesCtx:o,className:a,style:i,rootSelector:l="root",unstyled:s,classNames:c,styles:d,vars:u,varsResolver:p,attributes:f}){const g=lo(),v=yze(),w=vze(),x=bze(),k=(Array.isArray(e)?e:[e]).filter($=>$),{withStylesTransform:C,getTransformedStyles:_}=tRe({props:n,stylesCtx:o,themeName:k});return($,z)=>({className:Zze({theme:g,options:z,themeName:k,selector:$,classNamesPrefix:v,classNames:c,classes:r,unstyled:s,className:a,rootSelector:l,props:n,stylesCtx:o,withStaticClasses:w,headless:x,transformedStyles:_([z?.styles,d])}),style:eRe({theme:g,themeName:k,selector:$,options:z,props:n,stylesCtx:o,rootSelector:l,styles:d,style:i,vars:u,varsResolver:p,headless:x,withStylesTransform:C}),...f?.[$]})}function rRe(e,r){return typeof e=="boolean"?e:r.autoContrast}function qq(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 nRe({keepTransitions:e}={}){const r=S.useRef(pq),n=S.useRef(-1),o=S.useContext(pw),a=Zu(),i=S.useRef(a?.());if(!o)throw new Error("[@mantine/core] MantineProvider was not found in tree");const l=p=>{o.setColorScheme(p),r.current=e?()=>{}:qq(i.current),window.clearTimeout(n.current),n.current=window.setTimeout(()=>{r.current?.()},10)},s=()=>{o.clearColorScheme(),r.current=e?()=>{}:qq(i.current),window.clearTimeout(n.current),n.current=window.setTimeout(()=>{r.current?.()},10)},c=yq("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(),a=o.components[e]?.defaultProps,i=typeof a=="function"?a(o):a;return{...r,...i,...ff(n)}}function W7(e){return So(e).reduce((r,n)=>e[n]!==void 0?`${r}${k$e(n)}:${e[n]};`:r,"").trim()}function oRe({selector:e,styles:r,media:n,container:o}){const a=r?W7(r):"",i=Array.isArray(n)?n.map(s=>`@media${s.query}{${e}{${W7(s.styles)}}}`):[],l=Array.isArray(o)?o.map(s=>`@container ${s.query}{${e}{${W7(s.styles)}}}`):[];return`${a?`${e}{${a}}`:""}${i.join("")}${l.join("")}`.trim()}function gw(e){const r=Zu();return y.jsx("style",{"data-mantine-styles":"inline",nonce:r?.(),dangerouslySetInnerHTML:{__html:oRe(e)}})}function Hq(e){const{m:r,mx:n,my:o,mt:a,mb:i,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:z,c:j,opacity:A,ff:R,fz:T,fw:O,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:I,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,hiddenFrom:De,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le,...St}=e;return{styleProps:ff({m:r,mx:n,my:o,mt:a,mb:i,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:z,c:j,opacity:A,ff:R,fz:T,fw:O,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:I,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,bdrs:$,hiddenFrom:De,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le}),rest:St}}const aRe={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 G7(e,r){const n=cd({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 iRe(e,r){const n=cd({color:e,theme:r});return n.isThemeColor&&n.shade===void 0?`var(--mantine-color-${n.color}-text)`:G7(e,r)}function lRe(e,r){if(typeof e=="number")return $e(e);if(typeof e=="string"){const[n,o,...a]=e.split(" ").filter(l=>l.trim()!=="");let i=`${$e(n)}`;return o&&(i+=` ${o}`),a.length>0&&(i+=` ${G7(a.join(" "),r)}`),i.trim()}return e}const Uq={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 sRe(e){return typeof e=="string"&&e in Uq?Uq[e]:e}const cRe=["h1","h2","h3","h4","h5","h6"];function dRe(e,r){return typeof e=="string"&&e in r.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&cRe.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?$e(e):e}function uRe(e){return e}const pRe=["h1","h2","h3","h4","h5","h6"];function hRe(e,r){return typeof e=="string"&&e in r.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&pRe.includes(e)?`var(--mantine-${e}-line-height)`:e}function fRe(e,r){return typeof e=="string"&&e in r.radius?`var(--mantine-radius-${e})`:typeof e=="number"||typeof e=="string"?$e(e):e}function mRe(e){return typeof e=="number"?$e(e):e}function gRe(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 Y7={color:G7,textColor:iRe,fontSize:dRe,spacing:gRe,radius:fRe,identity:uRe,size:mRe,lineHeight:hRe,fontFamily:sRe,border:lRe};function Wq(e){return e.replace("(min-width: ","").replace("em)","")}function yRe({media:e,...r}){const n=Object.keys(e).sort((o,a)=>Number(Wq(o))-Number(Wq(a))).map(o=>({query:o,styles:e[o]}));return{...r,media:n}}function vRe(e){if(typeof e!="object"||e===null)return!1;const r=Object.keys(e);return!(r.length===1&&r[0]==="base")}function bRe(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function xRe(e){return typeof e=="object"&&e!==null?So(e).filter(r=>r!=="base"):[]}function wRe(e,r){return typeof e=="object"&&e!==null&&r in e?e[r]:e}function Gq({styleProps:e,data:r,theme:n}){return yRe(So(e).reduce((o,a)=>{if(a==="hiddenFrom"||a==="visibleFrom"||a==="sx")return o;const i=r[a],l=Array.isArray(i.property)?i.property:[i.property],s=bRe(e[a]);if(!vRe(e[a]))return l.forEach(d=>{o.inlineStyles[d]=Y7[i.type](s,n)}),o;o.hasResponsiveStyles=!0;const c=xRe(e[a]);return l.forEach(d=>{s!=null&&(o.styles[d]=Y7[i.type](s,n)),c.forEach(u=>{const p=`(min-width: ${n.breakpoints[u]})`;o.media[p]={...o.media[p],[d]:Y7[i.type](wRe(e[a],u),n)}})}),o},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function yw(){return`__m__-${S.useId().replace(/[:«»]/g,"")}`}function X7(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...X7(o,r)}),{}):typeof e=="function"?e(r):e??{}}function Yq(e){return e.startsWith("data-")?e:`data-${e}`}function kRe(e){return Object.keys(e).reduce((r,n)=>{const o=e[n];return o===void 0||o===""||o===!1||o===null||(r[Yq(n)]=e[n]),r},{})}function Xq(e){return e?typeof e=="string"?{[Yq(e)]:!0}:Array.isArray(e)?[...e].reduce((r,n)=>({...r,...Xq(n)}),{}):kRe(e):null}function Z7(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...Z7(o,r)}),{}):typeof e=="function"?e(r):e??{}}function _Re({theme:e,style:r,vars:n,styleProps:o}){const a=Z7(r,e),i=Z7(n,e);return{...a,...i,...o}}const Zq=S.forwardRef(({component:e,style:r,__vars:n,className:o,variant:a,mod:i,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}=Hq(g),_=xze()?.()?.(k.sx),$=yw(),z=Gq({styleProps:k,theme:w,data:aRe}),j={ref:v,style:_Re({theme:w,style:r,vars:n,styleProps:z.inlineStyles}),className:Qi(o,_,{[$]:z.hasResponsiveStyles,"mantine-light-hidden":d,"mantine-dark-hidden":u,[`mantine-hidden-from-${s}`]:s,[`mantine-visible-from-${c}`]:c}),"data-variant":a,"data-size":dq(l)?void 0:l||void 0,size:f,...Xq(i),...C};return y.jsxs(y.Fragment,{children:[z.hasResponsiveStyles&&y.jsx(gw,{selector:`.${$}`,styles:z.styles,media:z.media}),typeof p=="function"?p(j):y.jsx(x,{...j})]})});Zq.displayName="@mantine/core/Box";const Se=Zq;function Kq(e){return e}function SRe(e){const r=e;return n=>{const o=S.forwardRef((a,i)=>y.jsx(r,{...n,...a,ref:i}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o}}function ot(e){const r=S.forwardRef(e);return r.extend=Kq,r.withProps=n=>{const o=S.forwardRef((a,i)=>y.jsx(r,{...n,...a,ref:i}));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((a,i)=>y.jsx(r,{...n,...a,ref:i}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o},r.extend=Kq,r}const ERe=S.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function dd(){return S.useContext(ERe)}function CRe(e){if(!e||typeof e=="string")return 0;const r=e/36;return Math.round((4+15*r**.25+r/5)*10)}function K7(e){return e?.current?e.current.scrollHeight:"auto"}const vw=typeof window<"u"&&window.requestAnimationFrame,Qq=0,$Re=e=>({height:0,overflow:"hidden",...e?{}:{display:"none"}});function zRe({transitionDuration:e,transitionTimingFunction:r="ease",onTransitionEnd:n=()=>{},opened:o,keepMounted:a=!1}){const i=S.useRef(null),l=$Re(a),[s,c]=S.useState(o?{}:l),d=v=>{Ii.flushSync(()=>c(v))},u=v=>{d(w=>({...w,...v}))};function p(v){const w=e||CRe(v);return{transition:`height ${w}ms ${r}, opacity ${w}ms ${r}`}}Xu(()=>{typeof vw=="function"&&vw(o?()=>{u({willChange:"height",display:"block",overflow:"hidden"}),vw(()=>{const v=K7(i);u({...p(v),height:v})})}:()=>{const v=K7(i);u({...p(v),willChange:"height",height:v}),vw(()=>u({height:Qq,overflow:"hidden"}))})},[o]);const f=v=>{if(!(v.target!==i.current||v.propertyName!=="height"))if(o){const w=K7(i);w===s.height?d({}):u({height:w}),n()}else s.height===Qq&&(d(l),n())};function g({style:v={},refKey:w="ref",...x}={}){const k=x[w],C={"aria-hidden":!o,...x,[w]:_q(i,k),onTransitionEnd:f,style:{boxSizing:"border-box",...v,...s}};return Kr.version.startsWith("18")?o||(C.inert=""):C.inert=!o,C}return g}const RRe={transitionDuration:200,transitionTimingFunction:"ease",animateOpacity:!0},Jq=ot((e,r)=>{const{children:n,in:o,transitionDuration:a,transitionTimingFunction:i,style:l,onTransitionEnd:s,animateOpacity:c,keepMounted:d,...u}=Me("Collapse",RRe,e),p=lo(),f=Eq(),g=p.respectReducedMotion&&f?0:a,v=zRe({opened:o,transitionDuration:g,transitionTimingFunction:i,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 ${i}`:"none",...X7(l,p)},ref:r,...u}),children:n})});Jq.displayName="@mantine/core/Collapse";function bw(){return typeof window<"u"}function wf(e){return eH(e)?(e.nodeName||"").toLowerCase():"#document"}function ea(e){var r;return(e==null||(r=e.ownerDocument)==null?void 0:r.defaultView)||window}function Xl(e){var r;return(r=(eH(e)?e.ownerDocument:e.document)||window.document)==null?void 0:r.documentElement}function eH(e){return bw()?e instanceof Node||e instanceof ea(e).Node:!1}function Ar(e){return bw()?e instanceof Element||e instanceof ea(e).Element:!1}function Sa(e){return bw()?e instanceof HTMLElement||e instanceof ea(e).HTMLElement:!1}function Q7(e){return!bw()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof ea(e).ShadowRoot}const jRe=new Set(["inline","contents"]);function J1(e){const{overflow:r,overflowX:n,overflowY:o,display:a}=ri(e);return/auto|scroll|overlay|hidden|clip/.test(r+o+n)&&!jRe.has(a)}const TRe=new Set(["table","td","th"]);function ARe(e){return TRe.has(wf(e))}const DRe=[":popover-open",":modal"];function xw(e){return DRe.some(r=>{try{return e.matches(r)}catch{return!1}})}const MRe=["transform","translate","scale","rotate","perspective"],NRe=["transform","translate","scale","rotate","perspective","filter"],PRe=["paint","layout","strict","content"];function J7(e){const r=ww(),n=Ar(e)?ri(e):e;return MRe.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)||NRe.some(o=>(n.willChange||"").includes(o))||PRe.some(o=>(n.contain||"").includes(o))}function BRe(e){let r=Gs(e);for(;Sa(r)&&!Ws(r);){if(J7(r))return r;if(xw(r))return null;r=Gs(r)}return null}function ww(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const ORe=new Set(["html","body","#document"]);function Ws(e){return ORe.has(wf(e))}function ri(e){return ea(e).getComputedStyle(e)}function kw(e){return Ar(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Gs(e){if(wf(e)==="html")return e;const r=e.assignedSlot||e.parentNode||Q7(e)&&e.host||Xl(e);return Q7(r)?r.host:r}function tH(e){const r=Gs(e);return Ws(r)?e.ownerDocument?e.ownerDocument.body:e.body:Sa(r)&&J1(r)?r:tH(r)}function Ys(e,r,n){var o;r===void 0&&(r=[]),n===void 0&&(n=!0);const a=tH(e),i=a===((o=e.ownerDocument)==null?void 0:o.body),l=ea(a);if(i){const s=e9(l);return r.concat(l,l.visualViewport||[],J1(a)?a:[],s&&n?Ys(s):[])}return r.concat(a,Ys(a,[],n))}function e9(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}const rH=["top","right","bottom","left"],nH=["start","end"],oH=rH.reduce((e,r)=>e.concat(r,r+"-"+nH[0],r+"-"+nH[1]),[]),Ji=Math.min,Co=Math.max,_w=Math.round,Sw=Math.floor,Zl=e=>({x:e,y:e}),IRe={left:"right",right:"left",bottom:"top",top:"bottom"},LRe={start:"end",end:"start"};function t9(e,r,n){return Co(e,Ji(r,n))}function el(e,r){return typeof e=="function"?e(r):e}function Ea(e){return e.split("-")[0]}function tl(e){return e.split("-")[1]}function r9(e){return e==="x"?"y":"x"}function n9(e){return e==="y"?"height":"width"}const FRe=new Set(["top","bottom"]);function rl(e){return FRe.has(Ea(e))?"y":"x"}function o9(e){return r9(rl(e))}function aH(e,r,n){n===void 0&&(n=!1);const o=tl(e),a=o9(e),i=n9(a);let l=a==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return r.reference[i]>r.floating[i]&&(l=Cw(l)),[l,Cw(l)]}function VRe(e){const r=Cw(e);return[Ew(e),r,Ew(r)]}function Ew(e){return e.replace(/start|end/g,r=>LRe[r])}const iH=["left","right"],lH=["right","left"],qRe=["top","bottom"],HRe=["bottom","top"];function URe(e,r,n){switch(e){case"top":case"bottom":return n?r?lH:iH:r?iH:lH;case"left":case"right":return r?qRe:HRe;default:return[]}}function WRe(e,r,n,o){const a=tl(e);let i=URe(Ea(e),n==="start",o);return a&&(i=i.map(l=>l+"-"+a),r&&(i=i.concat(i.map(Ew)))),i}function Cw(e){return e.replace(/left|right|bottom|top/g,r=>IRe[r])}function GRe(e){return{top:0,right:0,bottom:0,left:0,...e}}function a9(e){return typeof e!="number"?GRe(e):{top:e,right:e,bottom:e,left:e}}function kf(e){const{x:r,y:n,width:o,height:a}=e;return{width:o,height:a,top:n,left:r,right:r+o,bottom:n+a,x:r,y:n}}function YRe(){const e=navigator.userAgentData;return e!=null&&e.platform?e.platform:navigator.platform}function XRe(){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 ZRe(){return/apple/i.test(navigator.vendor)}function KRe(){return YRe().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function QRe(){return XRe().includes("jsdom/")}const sH="data-floating-ui-focusable",JRe="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function cH(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 ey(e,r){if(!e||!r)return!1;const n=r.getRootNode==null?void 0:r.getRootNode();if(e.contains(r))return!0;if(n&&Q7(n)){let o=r;for(;o;){if(e===o)return!0;o=o.parentNode||o.host}}return!1}function _f(e){return"composedPath"in e?e.composedPath()[0]:e.target}function i9(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 eje(e){return e.matches("html,body")}function Ku(e){return e?.ownerDocument||document}function tje(e){return Sa(e)&&e.matches(JRe)}function rje(e){if(!e||QRe())return!0;try{return e.matches(":focus-visible")}catch{return!0}}function nje(e){return e?e.hasAttribute(sH)?e:e.querySelector("["+sH+"]")||e:null}function $w(e,r,n){return n===void 0&&(n=!0),e.filter(o=>{var a;return o.parentId===r&&(!n||((a=o.context)==null?void 0:a.open))}).flatMap(o=>[o,...$w(e,o.id,n)])}function oje(e){return"nativeEvent"in e}function l9(e,r){const n=["mouse","pen"];return n.push("",void 0),n.includes(e)}var aje=typeof document<"u",ije=function(){},Kl=aje?S.useLayoutEffect:ije;const lje={...ob};function zw(e){const r=S.useRef(e);return Kl(()=>{r.current=e}),r}const sje=lje.useInsertionEffect,cje=sje||(e=>e());function Ql(e){const r=S.useRef(()=>{});return cje(()=>{r.current=e}),S.useCallback(function(){for(var n=arguments.length,o=new Array(n),a=0;a{const{placement:o="bottom",strategy:a="absolute",middleware:i=[],platform:l}=n,s=i.filter(Boolean),c=await(l.isRTL==null?void 0:l.isRTL(r));let d=await l.getElementRects({reference:e,floating:r,strategy:a}),{x:u,y:p}=dH(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:a,rects:i,platform:l,elements:s,middlewareData:c}=r,{element:d,padding:u=0}=el(e,r)||{};if(d==null)return{};const p=a9(u),f={x:n,y:o},g=o9(a),v=n9(g),w=await l.getDimensions(d),x=g==="y",k=x?"top":"left",C=x?"bottom":"right",_=x?"clientHeight":"clientWidth",$=i.reference[v]+i.reference[g]-f[g]-i.floating[v],z=f[g]-i.reference[g],j=await(l.getOffsetParent==null?void 0:l.getOffsetParent(d));let A=j?j[_]:0;(!A||!await(l.isElement==null?void 0:l.isElement(j)))&&(A=s.floating[_]||i.floating[v]);const R=$/2-z/2,T=A/2-w[v]/2-1,O=Ji(p[k],T),P=Ji(p[C],T),L=O,H=A-w[v]-P,M=A/2-w[v]/2+R,V=t9(L,M,H),B=!c.arrow&&tl(a)!=null&&M!==V&&i.reference[v]/2-(Mtl(o)===e),...n.filter(o=>tl(o)!==e)]:n.filter(o=>Ea(o)===o)).filter(o=>e?tl(o)===e||(r?Ew(o)!==o:!1):!0)}const hje=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(r){var n,o,a;const{rects:i,middlewareData:l,placement:s,platform:c,elements:d}=r,{crossAxis:u=!1,alignment:p,allowedPlacements:f=oH,autoAlignment:g=!0,...v}=el(e,r),w=p!==void 0||f===oH?pje(p||null,g,f):f,x=await Sf(r,v),k=((n=l.autoPlacement)==null?void 0:n.index)||0,C=w[k];if(C==null)return{};const _=aH(C,i,await(c.isRTL==null?void 0:c.isRTL(d.floating)));if(s!==C)return{reset:{placement:w[0]}};const $=[x[Ea(C)],x[_[0]],x[_[1]]],z=[...((o=l.autoPlacement)==null?void 0:o.overflows)||[],{placement:C,overflows:$}],j=w[k+1];if(j)return{data:{index:k+1,overflows:z},reset:{placement:j}};const A=z.map(T=>{const O=tl(T.placement);return[T.placement,O&&u?T.overflows.slice(0,2).reduce((P,L)=>P+L,0):T.overflows[0],T.overflows]}).sort((T,O)=>T[1]-O[1]),R=((a=A.filter(T=>T[2].slice(0,tl(T[0])?2:3).every(O=>O<=0))[0])==null?void 0:a[0])||A[0][0];return R!==s?{data:{index:k+1,overflows:z},reset:{placement:R}}:{}}}},fje=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(r){var n,o;const{placement:a,middlewareData:i,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}=el(e,r);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const k=Ea(a),C=rl(s),_=Ea(s)===s,$=await(c.isRTL==null?void 0:c.isRTL(d.floating)),z=f||(_||!w?[Cw(s)]:VRe(s)),j=v!=="none";!f&&j&&z.push(...WRe(s,w,v,$));const A=[s,...z],R=await Sf(r,x),T=[];let O=((o=i.flip)==null?void 0:o.overflows)||[];if(u&&T.push(R[k]),p){const M=aH(a,l,$);T.push(R[M[0]],R[M[1]])}if(O=[...O,{placement:a,overflows:T}],!T.every(M=>M<=0)){var P,L;const M=(((P=i.flip)==null?void 0:P.index)||0)+1,V=A[M];if(V&&(!(p==="alignment"&&C!==rl(V))||O.every(F=>rl(F.placement)===C?F.overflows[0]>0:!0)))return{data:{index:M,overflows:O},reset:{placement:V}};let B=(L=O.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=O.filter(q=>{if(j){const G=rl(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(a!==B)return{reset:{placement:B}}}return{}}}};function uH(e,r){return{top:e.top-r.height,right:e.right-r.width,bottom:e.bottom-r.height,left:e.left-r.width}}function pH(e){return rH.some(r=>e[r]>=0)}const mje=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(r){const{rects:n}=r,{strategy:o="referenceHidden",...a}=el(e,r);switch(o){case"referenceHidden":{const i=await Sf(r,{...a,elementContext:"reference"}),l=uH(i,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:pH(l)}}}case"escaped":{const i=await Sf(r,{...a,altBoundary:!0}),l=uH(i,n.floating);return{data:{escapedOffsets:l,escaped:pH(l)}}}default:return{}}}}};function hH(e){const r=Ji(...e.map(i=>i.left)),n=Ji(...e.map(i=>i.top)),o=Co(...e.map(i=>i.right)),a=Co(...e.map(i=>i.bottom));return{x:r,y:n,width:o-r,height:a-n}}function gje(e){const r=e.slice().sort((a,i)=>a.y-i.y),n=[];let o=null;for(let a=0;ao.height/2?n.push([i]):n[n.length-1].push(i),o=i}return n.map(a=>kf(hH(a)))}const yje=function(e){return e===void 0&&(e={}),{name:"inline",options:e,async fn(r){const{placement:n,elements:o,rects:a,platform:i,strategy:l}=r,{padding:s=2,x:c,y:d}=el(e,r),u=Array.from(await(i.getClientRects==null?void 0:i.getClientRects(o.reference))||[]),p=gje(u),f=kf(hH(u)),g=a9(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(rl(n)==="y"){const O=p[0],P=p[p.length-1],L=Ea(n)==="top",H=O.top,M=P.bottom,V=L?O.left:P.left,B=L?O.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=Ea(n)==="left",k=Co(...p.map(O=>O.right)),C=Ji(...p.map(O=>O.left)),_=p.filter(O=>x?O.left===C:O.right===k),$=_[0].top,z=_[_.length-1].bottom,j=C,A=k,R=A-j,T=z-$;return{top:$,bottom:z,left:j,right:A,width:R,height:T,x:j,y:$}}return f}const w=await i.getElementRects({reference:{getBoundingClientRect:v},floating:o.floating,strategy:l});return a.reference.x!==w.reference.x||a.reference.y!==w.reference.y||a.reference.width!==w.reference.width||a.reference.height!==w.reference.height?{reset:{rects:w}}:{}}}},fH=new Set(["left","top"]);async function vje(e,r){const{placement:n,platform:o,elements:a}=e,i=await(o.isRTL==null?void 0:o.isRTL(a.floating)),l=Ea(n),s=tl(n),c=rl(n)==="y",d=fH.has(l)?-1:1,u=i&&c?-1:1,p=el(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 bje=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(r){var n,o;const{x:a,y:i,placement:l,middlewareData:s}=r,c=await vje(r,e);return l===((n=s.offset)==null?void 0:n.placement)&&(o=s.arrow)!=null&&o.alignmentOffset?{}:{x:a+c.x,y:i+c.y,data:{...c,placement:l}}}}},xje=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(r){const{x:n,y:o,placement:a}=r,{mainAxis:i=!0,crossAxis:l=!1,limiter:s={fn:x=>{let{x:k,y:C}=x;return{x:k,y:C}}},...c}=el(e,r),d={x:n,y:o},u=await Sf(r,c),p=rl(Ea(a)),f=r9(p);let g=d[f],v=d[p];if(i){const x=f==="y"?"top":"left",k=f==="y"?"bottom":"right",C=g+u[x],_=g-u[k];g=t9(C,g,_)}if(l){const x=p==="y"?"top":"left",k=p==="y"?"bottom":"right",C=v+u[x],_=v-u[k];v=t9(C,v,_)}const w=s.fn({...r,[f]:g,[p]:v});return{...w,data:{x:w.x-n,y:w.y-o,enabled:{[f]:i,[p]:l}}}}}},wje=function(e){return e===void 0&&(e={}),{options:e,fn(r){const{x:n,y:o,placement:a,rects:i,middlewareData:l}=r,{offset:s=0,mainAxis:c=!0,crossAxis:d=!0}=el(e,r),u={x:n,y:o},p=rl(a),f=r9(p);let g=u[f],v=u[p];const w=el(s,r),x=typeof w=="number"?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(c){const _=f==="y"?"height":"width",$=i.reference[f]-i.floating[_]+x.mainAxis,z=i.reference[f]+i.reference[_]-x.mainAxis;g<$?g=$:g>z&&(g=z)}if(d){var k,C;const _=f==="y"?"width":"height",$=fH.has(Ea(a)),z=i.reference[p]-i.floating[_]+($&&((k=l.offset)==null?void 0:k[p])||0)+($?0:x.crossAxis),j=i.reference[p]+i.reference[_]+($?0:((C=l.offset)==null?void 0:C[p])||0)-($?x.crossAxis:0);vj&&(v=j)}return{[f]:g,[p]:v}}}},kje=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(r){var n,o;const{placement:a,rects:i,platform:l,elements:s}=r,{apply:c=()=>{},...d}=el(e,r),u=await Sf(r,d),p=Ea(a),f=tl(a),g=rl(a)==="y",{width:v,height:w}=i.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,$=Ji(w-u[x],C),z=Ji(v-u[k],_),j=!r.middlewareData.shift;let A=$,R=z;if((n=r.middlewareData.shift)!=null&&n.enabled.x&&(R=_),(o=r.middlewareData.shift)!=null&&o.enabled.y&&(A=C),j&&!f){const O=Co(u.left,0),P=Co(u.right,0),L=Co(u.top,0),H=Co(u.bottom,0);g?R=v-2*(O!==0||P!==0?O+P:Co(u.left,u.right)):A=w-2*(L!==0||H!==0?L+H:Co(u.top,u.bottom))}await c({...r,availableWidth:R,availableHeight:A});const T=await l.getDimensions(s.floating);return v!==T.width||w!==T.height?{reset:{rects:!0}}:{}}}};function mH(e){const r=ri(e);let n=parseFloat(r.width)||0,o=parseFloat(r.height)||0;const a=Sa(e),i=a?e.offsetWidth:n,l=a?e.offsetHeight:o,s=_w(n)!==i||_w(o)!==l;return s&&(n=i,o=l),{width:n,height:o,$:s}}function s9(e){return Ar(e)?e:e.contextElement}function Ef(e){const r=s9(e);if(!Sa(r))return Zl(1);const n=r.getBoundingClientRect(),{width:o,height:a,$:i}=mH(r);let l=(i?_w(n.width):n.width)/o,s=(i?_w(n.height):n.height)/a;return(!l||!Number.isFinite(l))&&(l=1),(!s||!Number.isFinite(s))&&(s=1),{x:l,y:s}}const _je=Zl(0);function gH(e){const r=ea(e);return!ww()||!r.visualViewport?_je:{x:r.visualViewport.offsetLeft,y:r.visualViewport.offsetTop}}function Sje(e,r,n){return r===void 0&&(r=!1),!n||r&&n!==ea(e)?!1:r}function Qu(e,r,n,o){r===void 0&&(r=!1),n===void 0&&(n=!1);const a=e.getBoundingClientRect(),i=s9(e);let l=Zl(1);r&&(o?Ar(o)&&(l=Ef(o)):l=Ef(e));const s=Sje(i,n,o)?gH(i):Zl(0);let c=(a.left+s.x)/l.x,d=(a.top+s.y)/l.y,u=a.width/l.x,p=a.height/l.y;if(i){const f=ea(i),g=o&&Ar(o)?ea(o):o;let v=f,w=e9(v);for(;w&&o&&g!==v;){const x=Ef(w),k=w.getBoundingClientRect(),C=ri(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=ea(w),w=e9(v)}}return kf({width:u,height:p,x:c,y:d})}function Rw(e,r){const n=kw(e).scrollLeft;return r?r.left+n:Qu(Xl(e)).left+n}function yH(e,r){const n=e.getBoundingClientRect(),o=n.left+r.scrollLeft-Rw(e,n),a=n.top+r.scrollTop;return{x:o,y:a}}function Eje(e){let{elements:r,rect:n,offsetParent:o,strategy:a}=e;const i=a==="fixed",l=Xl(o),s=r?xw(r.floating):!1;if(o===l||s&&i)return n;let c={scrollLeft:0,scrollTop:0},d=Zl(1);const u=Zl(0),p=Sa(o);if((p||!p&&!i)&&((wf(o)!=="body"||J1(l))&&(c=kw(o)),Sa(o))){const g=Qu(o);d=Ef(o),u.x=g.x+o.clientLeft,u.y=g.y+o.clientTop}const f=l&&!p&&!i?yH(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 Cje(e){return Array.from(e.getClientRects())}function $je(e){const r=Xl(e),n=kw(e),o=e.ownerDocument.body,a=Co(r.scrollWidth,r.clientWidth,o.scrollWidth,o.clientWidth),i=Co(r.scrollHeight,r.clientHeight,o.scrollHeight,o.clientHeight);let l=-n.scrollLeft+Rw(e);const s=-n.scrollTop;return ri(o).direction==="rtl"&&(l+=Co(r.clientWidth,o.clientWidth)-a),{width:a,height:i,x:l,y:s}}const vH=25;function zje(e,r){const n=ea(e),o=Xl(e),a=n.visualViewport;let i=o.clientWidth,l=o.clientHeight,s=0,c=0;if(a){i=a.width,l=a.height;const u=ww();(!u||u&&r==="fixed")&&(s=a.offsetLeft,c=a.offsetTop)}const d=Rw(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<=vH&&(i-=v)}else d<=vH&&(i+=d);return{width:i,height:l,x:s,y:c}}const Rje=new Set(["absolute","fixed"]);function jje(e,r){const n=Qu(e,!0,r==="fixed"),o=n.top+e.clientTop,a=n.left+e.clientLeft,i=Sa(e)?Ef(e):Zl(1),l=e.clientWidth*i.x,s=e.clientHeight*i.y,c=a*i.x,d=o*i.y;return{width:l,height:s,x:c,y:d}}function bH(e,r,n){let o;if(r==="viewport")o=zje(e,n);else if(r==="document")o=$je(Xl(e));else if(Ar(r))o=jje(r,n);else{const a=gH(e);o={x:r.x-a.x,y:r.y-a.y,width:r.width,height:r.height}}return kf(o)}function xH(e,r){const n=Gs(e);return n===r||!Ar(n)||Ws(n)?!1:ri(n).position==="fixed"||xH(n,r)}function Tje(e,r){const n=r.get(e);if(n)return n;let o=Ys(e,[],!1).filter(s=>Ar(s)&&wf(s)!=="body"),a=null;const i=ri(e).position==="fixed";let l=i?Gs(e):e;for(;Ar(l)&&!Ws(l);){const s=ri(l),c=J7(l);!c&&s.position==="fixed"&&(a=null),(i?!c&&!a:!c&&s.position==="static"&&a&&Rje.has(a.position)||J1(l)&&!c&&xH(e,l))?o=o.filter(d=>d!==l):a=s,l=Gs(l)}return r.set(e,o),o}function Aje(e){let{element:r,boundary:n,rootBoundary:o,strategy:a}=e;const i=[...n==="clippingAncestors"?xw(r)?[]:Tje(r,this._c):[].concat(n),o],l=i[0],s=i.reduce((c,d)=>{const u=bH(r,d,a);return c.top=Co(u.top,c.top),c.right=Ji(u.right,c.right),c.bottom=Ji(u.bottom,c.bottom),c.left=Co(u.left,c.left),c},bH(r,l,a));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function Dje(e){const{width:r,height:n}=mH(e);return{width:r,height:n}}function Mje(e,r,n){const o=Sa(r),a=Xl(r),i=n==="fixed",l=Qu(e,!0,i,r);let s={scrollLeft:0,scrollTop:0};const c=Zl(0);function d(){c.x=Rw(a)}if(o||!o&&!i)if((wf(r)!=="body"||J1(a))&&(s=kw(r)),o){const g=Qu(r,!0,i,r);c.x=g.x+r.clientLeft,c.y=g.y+r.clientTop}else a&&d();i&&!o&&a&&d();const u=a&&!o&&!i?yH(a,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 c9(e){return ri(e).position==="static"}function wH(e,r){if(!Sa(e)||ri(e).position==="fixed")return null;if(r)return r(e);let n=e.offsetParent;return Xl(e)===n&&(n=n.ownerDocument.body),n}function kH(e,r){const n=ea(e);if(xw(e))return n;if(!Sa(e)){let a=Gs(e);for(;a&&!Ws(a);){if(Ar(a)&&!c9(a))return a;a=Gs(a)}return n}let o=wH(e,r);for(;o&&ARe(o)&&c9(o);)o=wH(o,r);return o&&Ws(o)&&c9(o)&&!J7(o)?n:o||BRe(e)||n}const Nje=async function(e){const r=this.getOffsetParent||kH,n=this.getDimensions,o=await n(e.floating);return{reference:Mje(e.reference,await r(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function Pje(e){return ri(e).direction==="rtl"}const Bje={convertOffsetParentRelativeRectToViewportRelativeRect:Eje,getDocumentElement:Xl,getClippingRect:Aje,getOffsetParent:kH,getElementRects:Nje,getClientRects:Cje,getDimensions:Dje,getScale:Ef,isElement:Ar,isRTL:Pje};function _H(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}function Oje(e,r){let n=null,o;const a=Xl(e);function i(){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),i();const d=e.getBoundingClientRect(),{left:u,top:p,width:f,height:g}=d;if(s||r(),!f||!g)return;const v=Sw(p),w=Sw(a.clientWidth-(u+f)),x=Sw(a.clientHeight-(p+g)),k=Sw(u),C={rootMargin:-v+"px "+-w+"px "+-x+"px "+-k+"px",threshold:Co(0,Ji(1,c))||1};let _=!0;function $(z){const j=z[0].intersectionRatio;if(j!==c){if(!_)return l();j?l(!1,j):o=setTimeout(()=>{l(!1,1e-7)},1e3)}j===1&&!_H(d,e.getBoundingClientRect())&&l(),_=!1}try{n=new IntersectionObserver($,{...C,root:a.ownerDocument})}catch{n=new IntersectionObserver($,C)}n.observe(e)}return l(!0),i}function jw(e,r,n,o){o===void 0&&(o={});const{ancestorScroll:a=!0,ancestorResize:i=!0,elementResize:l=typeof ResizeObserver=="function",layoutShift:s=typeof IntersectionObserver=="function",animationFrame:c=!1}=o,d=s9(e),u=a||i?[...d?Ys(d):[],...Ys(r)]:[];u.forEach(k=>{a&&k.addEventListener("scroll",n,{passive:!0}),i&&k.addEventListener("resize",n)});const p=d&&s?Oje(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?Qu(e):null;c&&x();function x(){const k=Qu(e);w&&!_H(w,k)&&n(),w=k,v=requestAnimationFrame(x)}return n(),()=>{var k;u.forEach(C=>{a&&C.removeEventListener("scroll",n),i&&C.removeEventListener("resize",n)}),p?.(),(k=g)==null||k.disconnect(),g=null,c&&cancelAnimationFrame(v)}}const SH=bje,Ije=hje,Lje=xje,Fje=fje,EH=kje,CH=mje,$H=uje,Vje=yje,qje=wje,zH=(e,r,n)=>{const o=new Map,a={platform:Bje,...n},i={...a.platform,_c:o};return dje(e,r,{...a,platform:i})};var Hje=typeof document<"u",Uje=function(){},Tw=Hje?S.useLayoutEffect:Uje;function Aw(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,a;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(!Aw(e[o],r[o]))return!1;return!0}if(a=Object.keys(e),n=a.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!{}.hasOwnProperty.call(r,a[o]))return!1;for(o=n;o--!==0;){const i=a[o];if(!(i==="_owner"&&e.$$typeof)&&!Aw(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}function RH(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function jH(e,r){const n=RH(e);return Math.round(r*n)/n}function d9(e){const r=S.useRef(e);return Tw(()=>{r.current=e}),r}function Wje(e){e===void 0&&(e={});const{placement:r="bottom",strategy:n="absolute",middleware:o=[],platform:a,elements:{reference:i,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);Aw(f,o)||g(o);const[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(q=>{q!==j.current&&(j.current=q,w(q))},[]),_=S.useCallback(q=>{q!==A.current&&(A.current=q,k(q))},[]),$=i||v,z=l||x,j=S.useRef(null),A=S.useRef(null),R=S.useRef(u),T=c!=null,O=d9(c),P=d9(a),L=d9(d),H=S.useCallback(()=>{if(!j.current||!A.current)return;const q={placement:r,strategy:n,middleware:f};P.current&&(q.platform=P.current),zH(j.current,A.current,q).then(G=>{const U={...G,isPositioned:L.current!==!1};M.current&&!Aw(R.current,U)&&(R.current=U,Ii.flushSync(()=>{p(U)}))})},[f,r,n,P,L]);Tw(()=>{d===!1&&R.current.isPositioned&&(R.current.isPositioned=!1,p(q=>({...q,isPositioned:!1})))},[d]);const M=S.useRef(!1);Tw(()=>(M.current=!0,()=>{M.current=!1}),[]),Tw(()=>{if($&&(j.current=$),z&&(A.current=z),$&&z){if(O.current)return O.current($,z,H);H()}},[$,z,H,O,T]);const V=S.useMemo(()=>({reference:j,floating:A,setReference:C,setFloating:_}),[C,_]),B=S.useMemo(()=>({reference:$,floating:z}),[$,z]),F=S.useMemo(()=>{const q={position:n,left:0,top:0};if(!B.floating)return q;const G=jH(B.floating,u.x),U=jH(B.floating,u.y);return s?{...q,transform:"translate("+G+"px, "+U+"px)",...RH(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 Gje=e=>{function r(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:o,padding:a}=typeof e=="function"?e(n):e;return o&&r(o)?o.current!=null?$H({element:o.current,padding:a}).fn(n):{}:o?$H({element:o,padding:a}).fn(n):{}}}},TH=(e,r)=>({...SH(e),options:[e,r]}),u9=(e,r)=>({...Lje(e),options:[e,r]}),AH=(e,r)=>({...qje(e),options:[e,r]}),Dw=(e,r)=>({...Fje(e),options:[e,r]}),Yje=(e,r)=>({...EH(e),options:[e,r]}),Xje=(e,r)=>({...CH(e),options:[e,r]}),ty=(e,r)=>({...Vje(e),options:[e,r]}),DH=(e,r)=>({...Gje(e),options:[e,r]});function MH(e){const r=S.useRef(void 0),n=S.useCallback(o=>{const a=e.map(i=>{if(i!=null){if(typeof i=="function"){const l=i,s=l(o);return typeof s=="function"?s:()=>{l(null)}}return i.current=o,()=>{i.current=null}}});return()=>{a.forEach(i=>i?.())}},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 Zje="data-floating-ui-focusable",NH="active",PH="selected",Kje={...ob};let BH=!1,Qje=0;const OH=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+Qje++;function Jje(){const[e,r]=S.useState(()=>BH?OH():void 0);return Kl(()=>{e==null&&r(OH())},[]),S.useEffect(()=>{BH=!0},[]),e}const eTe=Kje.useId,IH=eTe||Jje;function tTe(){const e=new Map;return{emit(r,n){var o;(o=e.get(r))==null||o.forEach(a=>a(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 rTe=S.createContext(null),nTe=S.createContext(null),p9=()=>{var e;return((e=S.useContext(rTe))==null?void 0:e.id)||null},h9=()=>S.useContext(nTe);function f9(e){return"data-floating-ui-"+e}function ni(e){e.current!==-1&&(clearTimeout(e.current),e.current=-1)}const LH=f9("safe-polygon");function Mw(e,r,n){if(n&&!l9(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 m9(e){return typeof e=="function"?e():e}function FH(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,dataRef:a,events:i,elements:l}=e,{enabled:s=!0,delay:c=0,handleClose:d=null,mouseOnly:u=!1,restMs:p=0,move:f=!0}=r,g=h9(),v=p9(),w=zw(d),x=zw(c),k=zw(n),C=zw(p),_=S.useRef(),$=S.useRef(-1),z=S.useRef(),j=S.useRef(-1),A=S.useRef(!0),R=S.useRef(!1),T=S.useRef(()=>{}),O=S.useRef(!1),P=Ql(()=>{var F;const q=(F=a.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||(ni($),ni(j),A.current=!0,O.current=!1)}return i.on("openchange",F),()=>{i.off("openchange",F)}},[s,i]),S.useEffect(()=>{if(!s||!w.current||!n)return;function F(G){P()&&o(!1,G,"hover")}const q=Ku(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=Mw(x.current,"close",_.current);U&&!z.current?(ni($),$.current=window.setTimeout(()=>o(!1,F,G),U)):q&&(ni($),o(!1,F,G))},[x,o]),H=Ql(()=>{T.current(),z.current=void 0}),M=Ql(()=>{if(R.current){const F=Ku(l.floating).body;F.style.pointerEvents="",F.removeAttribute(LH),R.current=!1}}),V=Ql(()=>a.current.openEvent?["click","mousedown"].includes(a.current.openEvent.type):!1);S.useEffect(()=>{if(!s)return;function F(Z){if(ni($),A.current=!1,u&&!l9(_.current)||m9(C.current)>0&&!Mw(x.current,"open"))return;const I=Mw(x.current,"open",_.current);I?$.current=window.setTimeout(()=>{k.current||o(!0,Z,"hover")},I):n||o(!0,Z,"hover")}function q(Z){if(V()){M();return}T.current();const I=Ku(l.floating);if(ni(j),O.current=!1,w.current&&a.current.floatingContext){n||ni($),z.current=w.current({...a.current.floatingContext,tree:g,x:Z.clientX,y:Z.clientY,onClose(){M(),H(),V()||L(Z,!0,"safe-polygon")}});const W=z.current;I.addEventListener("mousemove",W),T.current=()=>{I.removeEventListener("mousemove",W)};return}(_.current!=="touch"||!ey(l.floating,Z.relatedTarget))&&L(Z)}function G(Z){V()||a.current.floatingContext&&(w.current==null||w.current({...a.current.floatingContext,tree:g,x:Z.clientX,y:Z.clientY,onClose(){M(),H(),V()||L(Z)}})(Z))}function U(){ni($)}function Y(Z){V()||L(Z,!1)}if(Ar(l.domReference)){const Z=l.domReference,I=l.floating;return n&&Z.addEventListener("mouseleave",G),f&&Z.addEventListener("mousemove",F,{once:!0}),Z.addEventListener("mouseenter",F),Z.addEventListener("mouseleave",q),I&&(I.addEventListener("mouseleave",G),I.addEventListener("mouseenter",U),I.addEventListener("mouseleave",Y)),()=>{n&&Z.removeEventListener("mouseleave",G),f&&Z.removeEventListener("mousemove",F),Z.removeEventListener("mouseenter",F),Z.removeEventListener("mouseleave",q),I&&(I.removeEventListener("mouseleave",G),I.removeEventListener("mouseenter",U),I.removeEventListener("mouseleave",Y))}}},[l,s,e,u,f,L,H,M,o,n,k,g,x,w,a,V,C]),Kl(()=>{var F;if(s&&n&&(F=w.current)!=null&&(F=F.__options)!=null&&F.blockPointerEvents&&P()){R.current=!0;const G=l.floating;if(Ar(l.domReference)&&G){var q;const U=Ku(l.floating).body;U.setAttribute(LH,"");const Y=l.domReference,Z=g==null||(q=g.nodesRef.current.find(I=>I.id===v))==null||(q=q.context)==null?void 0:q.elements.floating;return Z&&(Z.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]),Kl(()=>{n||(_.current=void 0,O.current=!1,H(),M())},[n,H,M]),S.useEffect(()=>()=>{H(),ni($),ni(j),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&&!l9(_.current)||n||m9(C.current)===0||O.current&&q.movementX**2+q.movementY**2<2||(ni(j),_.current==="touch"?U():(O.current=!0,j.current=window.setTimeout(U,m9(C.current))))}}},[u,o,n,k,C]);return S.useMemo(()=>s?{reference:B}:{},[s,B])}const g9=()=>{},VH=S.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:g9,setState:g9,isInstantPhase:!1}),oTe=()=>S.useContext(VH);function qH(e){const{children:r,delay:n,timeoutMs:o=0}=e,[a,i]=S.useReducer((c,d)=>({...c,...d}),{delay:n,timeoutMs:o,initialDelay:n,currentId:null,isInstantPhase:!1}),l=S.useRef(null),s=S.useCallback(c=>{i({currentId:c})},[]);return Kl(()=>{a.currentId?l.current===null?l.current=a.currentId:a.isInstantPhase||i({isInstantPhase:!0}):(a.isInstantPhase&&i({isInstantPhase:!1}),l.current=null)},[a.currentId,a.isInstantPhase]),y.jsx(VH.Provider,{value:S.useMemo(()=>({...a,setState:i,setCurrentId:s}),[a,s]),children:r})}function HH(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,floatingId:a}=e,{id:i,enabled:l=!0}=r,s=i??a,c=oTe(),{currentId:d,setCurrentId:u,initialDelay:p,setState:f,timeoutMs:g}=c;return Kl(()=>{l&&d&&(f({delay:{open:1,close:Mw(p,"close")}}),d!==s&&o(!1))},[l,s,o,f,d,p]),Kl(()=>{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]),Kl(()=>{l&&(u===g9||!n||u(s))},[l,n,u,s]),c}const aTe={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},iTe={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},UH=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 WH(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,elements:a,dataRef:i}=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=h9(),x=Ql(typeof c=="function"?c:()=>!1),k=typeof c=="function"?x:c,C=S.useRef(!1),{escapeKey:_,outsidePress:$}=UH(g),{escapeKey:z,outsidePress:j}=UH(v),A=S.useRef(!1),R=Ql(M=>{var V;if(!n||!l||!s||M.key!=="Escape"||A.current)return;const B=(V=i.current.floatingContext)==null?void 0:V.nodeId,F=w?$w(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,oje(M)?M.nativeEvent:M,"escape-key")}),T=Ql(M=>{var V;const B=()=>{var F;R(M),(F=_f(M))==null||F.removeEventListener("keydown",B)};(V=_f(M))==null||V.addEventListener("keydown",B)}),O=Ql(M=>{var V;const B=i.current.insideReactTree;i.current.insideReactTree=!1;const F=C.current;if(C.current=!1,d==="click"&&F||B||typeof k=="function"&&!k(M))return;const q=_f(M),G="["+f9("inert")+"]",U=Ku(a.floating).querySelectorAll(G);let Y=Ar(q)?q:null;for(;Y&&!Ws(Y);){const K=Gs(Y);if(Ws(K)||!Ar(K))break;Y=K}if(U.length&&Ar(q)&&!eje(q)&&!ey(q,a.floating)&&Array.from(U).every(K=>!ey(Y,K)))return;if(Sa(q)&&H){const K=Ws(q),Q=ri(q),ae=/auto|scroll/,te=K||ae.test(Q.overflowX),re=K||ae.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 Z=(V=i.current.floatingContext)==null?void 0:V.nodeId,I=w&&$w(w.nodesRef.current,Z).some(K=>{var Q;return i9(M,(Q=K.context)==null?void 0:Q.elements.floating)});if(i9(M,a.floating)||i9(M,a.domReference)||I)return;const W=w?$w(w.nodesRef.current,Z):[];if(W.length>0){let K=!0;if(W.forEach(Q=>{var ae;if((ae=Q.context)!=null&&ae.open&&!Q.context.dataRef.current.__outsidePressBubbles){K=!1;return}}),!K)return}o(!1,M,"outside-press")}),P=Ql(M=>{var V;const B=()=>{var F;O(M),(F=_f(M))==null||F.removeEventListener(d,B)};(V=_f(M))==null||V.addEventListener(d,B)});S.useEffect(()=>{if(!n||!l)return;i.current.__escapeKeyBubbles=_,i.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},ww()?5:0)}const q=Ku(a.floating);s&&(q.addEventListener("keydown",z?T:R,z),q.addEventListener("compositionstart",B),q.addEventListener("compositionend",F)),k&&q.addEventListener(d,j?P:O,j);let G=[];return f&&(Ar(a.domReference)&&(G=Ys(a.domReference)),Ar(a.floating)&&(G=G.concat(Ys(a.floating))),!Ar(a.reference)&&a.reference&&a.reference.contextElement&&(G=G.concat(Ys(a.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",z?T:R,z),q.removeEventListener("compositionstart",B),q.removeEventListener("compositionend",F)),k&&q.removeEventListener(d,j?P:O,j),G.forEach(U=>{U.removeEventListener("scroll",V)}),window.clearTimeout(M)}},[i,a,s,k,d,n,o,f,l,_,$,R,z,T,O,j,P]),S.useEffect(()=>{i.current.insideReactTree=!1},[i,k,d]);const L=S.useMemo(()=>({onKeyDown:R,...u&&{[aTe[p]]:M=>{o(!1,M.nativeEvent,"reference-press")},...p!=="click"&&{onClick(M){o(!1,M.nativeEvent,"reference-press")}}}}),[R,o,u,p]),H=S.useMemo(()=>({onKeyDown:R,onMouseDown(){C.current=!0},onMouseUp(){C.current=!0},[iTe[d]]:()=>{i.current.insideReactTree=!0}}),[R,d,i]);return S.useMemo(()=>l?{reference:L,floating:H}:{},[l,L,H])}function lTe(e){const{open:r=!1,onOpenChange:n,elements:o}=e,a=IH(),i=S.useRef({}),[l]=S.useState(()=>tTe()),s=p9()!=null,[c,d]=S.useState(o.reference),u=Ql((g,v,w)=>{i.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:i,open:r,onOpenChange:u,elements:f,events:l,floatingId:a,refs:p}),[r,u,f,l,a,p])}function Nw(e){e===void 0&&(e={});const{nodeId:r}=e,n=lTe({...e,elements:{reference:null,floating:null,...e.elements}}),o=e.rootContext||n,a=o.elements,[i,l]=S.useState(null),[s,c]=S.useState(null),d=a?.domReference||i,u=S.useRef(null),p=h9();Kl(()=>{d&&(u.current=d)},[d]);const f=Wje({...e,elements:{...a,...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 Kl(()=>{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 y9(){return KRe()&&ZRe()}function sTe(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,events:a,dataRef:i,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=ea(l.domReference);function v(){!n&&Sa(l.domReference)&&l.domReference===cH(Ku(l.domReference))&&(d.current=!0)}function w(){p.current=!0}function x(){p.current=!1}return g.addEventListener("blur",v),y9()&&(g.addEventListener("keydown",w,!0),g.addEventListener("pointerdown",x,!0)),()=>{g.removeEventListener("blur",v),y9()&&(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 a.on("openchange",g),()=>{a.off("openchange",g)}},[a,s]),S.useEffect(()=>()=>{ni(u)},[]);const f=S.useMemo(()=>({onMouseLeave(){d.current=!1},onFocus(g){if(d.current)return;const v=_f(g.nativeEvent);if(c&&Ar(v)){if(y9()&&!g.relatedTarget){if(!p.current&&!tje(v))return}else if(!rje(v))return}o(!0,g.nativeEvent,"focus")},onBlur(g){d.current=!1;const v=g.relatedTarget,w=g.nativeEvent,x=Ar(v)&&v.hasAttribute(f9("focus-guard"))&&v.getAttribute("data-type")==="outside";u.current=window.setTimeout(()=>{var k;const C=cH(l.domReference?l.domReference.ownerDocument:document);!v&&C===l.domReference||ey((k=i.current.floatingContext)==null?void 0:k.refs.floating.current,C)||ey(l.domReference,C)||x||o(!1,w,"focus")})}}),[i,l.domReference,o,c]);return S.useMemo(()=>s?{reference:f}:{},[s,f])}function v9(e,r,n){const o=new Map,a=n==="item";let i=e;if(a&&e){const{[NH]:l,[PH]:s,...c}=e;i=c}return{...n==="floating"&&{tabIndex:-1,[Zje]:""},...i,...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(!(a&&[NH,PH].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 GH(e){e===void 0&&(e=[]);const r=e.map(s=>s?.reference),n=e.map(s=>s?.floating),o=e.map(s=>s?.item),a=S.useCallback(s=>v9(s,e,"reference"),r),i=S.useCallback(s=>v9(s,e,"floating"),n),l=S.useCallback(s=>v9(s,e,"item"),o);return S.useMemo(()=>({getReferenceProps:a,getFloatingProps:i,getItemProps:l}),[a,i,l])}const cTe=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function YH(e,r){var n,o;r===void 0&&(r={});const{open:a,elements:i,floatingId:l}=e,{enabled:s=!0,role:c="dialog"}=r,d=IH(),u=((n=i.domReference)==null?void 0:n.id)||d,p=S.useMemo(()=>{var k;return((k=nje(i.floating))==null?void 0:k.id)||l},[i.floating,l]),f=(o=cTe.get(c))!=null?o:c,g=p9()!=null,v=S.useMemo(()=>f==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]:a?p:void 0}:{"aria-expanded":a?"true":"false","aria-haspopup":f==="alertdialog"?"dialog":f,"aria-controls":a?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,a,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[dTe,oi]=ei("ScrollArea.Root component was not found in tree");function Cf(e,r){const n=Qn(r);Z1(()=>{let o=0;if(e){const a=new ResizeObserver(()=>{cancelAnimationFrame(o),o=window.requestAnimationFrame(n)});return a.observe(e),()=>{window.cancelAnimationFrame(o),a.unobserve(e)}}},[e,n])}const uTe=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=oi(),[i,l]=S.useState(0),[s,c]=S.useState(0),d=!!(i&&s);return Cf(a.scrollbarX,()=>{const u=a.scrollbarX?.offsetHeight||0;a.onCornerHeightChange(u),c(u)}),Cf(a.scrollbarY,()=>{const u=a.scrollbarY?.offsetWidth||0;a.onCornerWidthChange(u),l(u)}),d?y.jsx("div",{...o,ref:r,style:{...n,width:i,height:s}}):null}),pTe=S.forwardRef((e,r)=>{const n=oi(),o=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&o?y.jsx(uTe,{...e,ref:r}):null}),hTe={scrollHideDelay:1e3,type:"hover"},XH=S.forwardRef((e,r)=>{const{type:n,scrollHideDelay:o,scrollbars:a,getStyles:i,...l}=Me("ScrollAreaRoot",hTe,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),[z,j]=S.useState(!1),[A,R]=S.useState(!1),T=$r(r,O=>c(O));return y.jsx(dTe,{value:{type:n,scrollHideDelay:o,scrollArea:s,viewport:d,onViewportChange:u,content:p,onContentChange:f,scrollbarX:g,onScrollbarXChange:v,scrollbarXEnabled:z,onScrollbarXEnabledChange:j,scrollbarY:w,onScrollbarYChange:x,scrollbarYEnabled:A,onScrollbarYEnabledChange:R,onCornerWidthChange:C,onCornerHeightChange:$,getStyles:i},children:y.jsx(Se,{...l,ref:T,__vars:{"--sa-corner-width":a!=="xy"?"0px":`${k}px`,"--sa-corner-height":a!=="xy"?"0px":`${_}px`}})})});XH.displayName="@mantine/core/ScrollAreaRoot";function ZH(e,r){const n=e/r;return Number.isNaN(n)?0:n}function Pw(e){const r=ZH(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=(e.scrollbar.size-n)*r;return Math.max(o,18)}function KH(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 fTe(e,[r,n]){return Math.min(n,Math.max(r,e))}function QH(e,r,n="ltr"){const o=Pw(r),a=r.scrollbar.paddingStart+r.scrollbar.paddingEnd,i=r.scrollbar.size-a,l=r.content-r.viewport,s=i-o,c=n==="ltr"?[0,l]:[l*-1,0],d=fTe(e,c);return KH([0,l],[0,s])(d)}function mTe(e,r,n,o="ltr"){const a=Pw(n),i=a/2,l=r||i,s=a-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 KH([c,d],p)(e)}function JH(e,r){return e>0&&e{e?.(o),(n===!1||!o.defaultPrevented)&&r?.(o)}}const[gTe,eU]=ei("ScrollAreaScrollbar was not found in tree"),tU=S.forwardRef((e,r)=>{const{sizes:n,hasThumb:o,onThumbChange:a,onThumbPointerUp:i,onThumbPointerDown:l,onThumbPositionChange:s,onDragScroll:c,onWheelScroll:d,onResize:u,...p}=e,f=oi(),[g,v]=S.useState(null),w=$r(r,R=>v(R)),x=S.useRef(null),k=S.useRef(""),{viewport:C}=f,_=n.content-n.viewport,$=Qn(d),z=Qn(s),j=gf(u,10),A=R=>{if(x.current){const T=R.clientX-x.current.left,O=R.clientY-x.current.top;c({x:T,y:O})}};return S.useEffect(()=>{const R=T=>{const O=T.target;g?.contains(O)&&$(T,_)};return document.addEventListener("wheel",R,{passive:!1}),()=>document.removeEventListener("wheel",R,{passive:!1})},[C,g,_,$]),S.useEffect(z,[n,z]),Cf(g,j),Cf(f.content,j),y.jsx(gTe,{value:{scrollbar:g,hasThumb:o,onThumbChange:Qn(a),onThumbPointerUp:Qn(i),onThumbPositionChange:z,onThumbPointerDown:Qn(l)},children:y.jsx("div",{...p,ref:w,"data-mantine-scrollbar":!0,style:{position:"absolute",...p.style},onPointerDown:Ju(e.onPointerDown,R=>{R.preventDefault(),R.button===0&&(R.target.setPointerCapture(R.pointerId),x.current=g.getBoundingClientRect(),k.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",A(R))}),onPointerMove:Ju(e.onPointerMove,A),onPointerUp:Ju(e.onPointerUp,R=>{const T=R.target;T.hasPointerCapture(R.pointerId)&&(R.preventDefault(),T.releasePointerCapture(R.pointerId))}),onLostPointerCapture:()=>{document.body.style.webkitUserSelect=k.current,x.current=null}})})}),rU=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=oi(),[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(tU,{"data-orientation":"horizontal",...i,ref:u,sizes:n,style:{...a,"--sa-thumb-width":`${Pw(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),JH(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:ud(s.paddingLeft),paddingEnd:ud(s.paddingRight)}})}})});rU.displayName="@mantine/core/ScrollAreaScrollbarX";const nU=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=oi(),[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(tU,{...i,"data-orientation":"vertical",ref:u,sizes:n,style:{"--sa-thumb-height":`${Pw(n)}px`,...a},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),JH(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:ud(s.paddingTop),paddingEnd:ud(s.paddingBottom)}})}})});nU.displayName="@mantine/core/ScrollAreaScrollbarY";const Bw=S.forwardRef((e,r)=>{const{orientation:n="vertical",...o}=e,{dir:a}=dd(),i=oi(),l=S.useRef(null),s=S.useRef(0),[c,d]=S.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=ZH(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)=>mTe(g,s.current,c,v);return n==="horizontal"?y.jsx(rU,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollLeft,v=QH(g,c,a);l.current.style.transform=`translate3d(${v}px, 0, 0)`}},onWheelScroll:g=>{i.viewport&&(i.viewport.scrollLeft=g)},onDragScroll:g=>{i.viewport&&(i.viewport.scrollLeft=f(g,a))}}):n==="vertical"?y.jsx(nU,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollTop,v=QH(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=>{i.viewport&&(i.viewport.scrollTop=g)},onDragScroll:g=>{i.viewport&&(i.viewport.scrollTop=f(g))}}):null});Bw.displayName="@mantine/core/ScrollAreaScrollbarVisible";const b9=S.forwardRef((e,r)=>{const n=oi(),{forceMount:o,...a}=e,[i,l]=S.useState(!1),s=e.orientation==="horizontal",c=gf(()=>{if(n.viewport){const d=n.viewport.offsetWidth{const{forceMount:n,...o}=e,a=oi(),[i,l]=S.useState(!1);return S.useEffect(()=>{const{scrollArea:s}=a;let c=0;if(s){const d=()=>{window.clearTimeout(c),l(!0)},u=()=>{c=window.setTimeout(()=>l(!1),a.scrollHideDelay)};return s.addEventListener("pointerenter",d),s.addEventListener("pointerleave",u),()=>{window.clearTimeout(c),s.removeEventListener("pointerenter",d),s.removeEventListener("pointerleave",u)}}},[a.scrollArea,a.scrollHideDelay]),n||i?y.jsx(b9,{"data-state":i?"visible":"hidden",...o,ref:r}):null});oU.displayName="@mantine/core/ScrollAreaScrollbarHover";const yTe=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=oi(),i=e.orientation==="horizontal",[l,s]=S.useState("hidden"),c=gf(()=>s("idle"),100);return S.useEffect(()=>{if(l==="idle"){const d=window.setTimeout(()=>s("hidden"),a.scrollHideDelay);return()=>window.clearTimeout(d)}},[l,a.scrollHideDelay]),S.useEffect(()=>{const{viewport:d}=a,u=i?"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)}},[a.viewport,i,c]),n||l!=="hidden"?y.jsx(Bw,{"data-state":l==="hidden"?"hidden":"visible",...o,ref:r,onPointerEnter:Ju(e.onPointerEnter,()=>s("interacting")),onPointerLeave:Ju(e.onPointerLeave,()=>s("idle"))}):null}),x9=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=oi(),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:l}=a,s=e.orientation==="horizontal";return S.useEffect(()=>(s?i(!0):l(!0),()=>{s?i(!1):l(!1)}),[s,i,l]),a.type==="hover"?y.jsx(oU,{...o,ref:r,forceMount:n}):a.type==="scroll"?y.jsx(yTe,{...o,ref:r,forceMount:n}):a.type==="auto"?y.jsx(b9,{...o,ref:r,forceMount:n}):a.type==="always"?y.jsx(Bw,{...o,ref:r}):null});x9.displayName="@mantine/core/ScrollAreaScrollbar";function vTe(e,r=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},o=0;return(function a(){const i={left:e.scrollLeft,top:e.scrollTop},l=n.left!==i.left,s=n.top!==i.top;(l||s)&&r(),n=i,o=window.requestAnimationFrame(a)})(),()=>window.cancelAnimationFrame(o)}const aU=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=oi(),i=eU(),{onThumbPositionChange:l}=i,s=$r(r,u=>i.onThumbChange(u)),c=S.useRef(void 0),d=gf(()=>{c.current&&(c.current(),c.current=void 0)},100);return S.useEffect(()=>{const{viewport:u}=a;if(u){const p=()=>{if(d(),!c.current){const f=vTe(u,l);c.current=f,l()}};return l(),u.addEventListener("scroll",p),()=>u.removeEventListener("scroll",p)}},[a.viewport,d,l]),y.jsx("div",{"data-state":i.hasThumb?"visible":"hidden",...o,ref:s,style:{width:"var(--sa-thumb-width)",height:"var(--sa-thumb-height)",...n},onPointerDownCapture:Ju(e.onPointerDownCapture,u=>{const p=u.target.getBoundingClientRect(),f=u.clientX-p.left,g=u.clientY-p.top;i.onThumbPointerDown({x:f,y:g})}),onPointerUp:Ju(e.onPointerUp,i.onThumbPointerUp)})});aU.displayName="@mantine/core/ScrollAreaThumb";const w9=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=eU();return n||a.hasThumb?y.jsx(aU,{ref:r,...o}):null});w9.displayName="@mantine/core/ScrollAreaThumb";const iU=S.forwardRef(({children:e,style:r,...n},o)=>{const a=oi(),i=$r(o,a.onViewportChange);return y.jsx(Se,{...n,ref:i,style:{overflowX:a.scrollbarXEnabled?"scroll":"hidden",overflowY:a.scrollbarYEnabled?"scroll":"hidden",...r},children:y.jsx("div",{...a.getStyles("content"),ref:a.onContentChange,children:e})})});iU.displayName="@mantine/core/ScrollAreaViewport";var k9={root:"m_d57069b5",content:"m_b1336c6",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const lU={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},bTe=(e,{scrollbarSize:r,overscrollBehavior:n})=>({root:{"--scrollarea-scrollbar-size":$e(r),"--scrollarea-over-scroll-behavior":n}}),Jl=ot((e,r)=>{const n=Me("ScrollArea",lU,e),{classNames:o,className:a,style:i,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:z,...j}=n,[A,R]=S.useState(!1),[T,O]=S.useState(!1),[P,L]=S.useState(!1),H=kt({name:"ScrollArea",props:n,classes:k9,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:d,varsResolver:bTe}),M=S.useRef(null),V=MH([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;O(q>G),L(U>Y)});return F.observe(B),()=>F.disconnect()},[M,x]),y.jsxs(XH,{getStyles:H,type:u==="never"?"always":u,scrollHideDelay:p,ref:r,scrollbars:k,...H("root"),...j,children:[y.jsx(iU,{...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"&&!T?"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(x9,{...H("scrollbar"),orientation:"horizontal","data-hidden":u==="never"||x==="present"&&!P?!0:void 0,forceMount:!0,onMouseEnter:()=>R(!0),onMouseLeave:()=>R(!1),children:y.jsx(w9,{...H("thumb")})}),(k==="xy"||k==="y")&&y.jsx(x9,{...H("scrollbar"),orientation:"vertical","data-hidden":u==="never"||x==="present"&&!T?!0:void 0,forceMount:!0,onMouseEnter:()=>R(!0),onMouseLeave:()=>R(!1),children:y.jsx(w9,{...H("thumb")})}),y.jsx(pTe,{...H("corner"),"data-hovered":A||void 0,"data-hidden":u==="never"||void 0})]})});Jl.displayName="@mantine/core/ScrollArea";const ta=ot((e,r)=>{const{children:n,classNames:o,styles:a,scrollbarSize:i,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:$,...z}=Me("ScrollAreaAutosize",lU,e),j=S.useRef(null),A=MH([u,j]),[R,T]=S.useState(!1),O=S.useRef(!1);return S.useEffect(()=>{if(!$)return;const P=j.current;if(!P)return;const L=()=>{const M=P.scrollHeight>P.clientHeight;M!==R&&(O.current?$?.(M):(O.current=!0,M&&$?.(!0)),T(M))};L();const H=new ResizeObserver(L);return H.observe(P),()=>H.disconnect()},[$,R]),y.jsx(Se,{...z,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(Jl,{classNames:o,styles:a,scrollHideDelay:l,scrollbarSize:i,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})})})});Jl.classes=k9,ta.displayName="@mantine/core/ScrollAreaAutosize",ta.classes=k9,Jl.Autosize=ta;var sU={root:"m_87cf2631"};const xTe={__staticSelector:"UnstyledButton"},pr=Jn((e,r)=>{const n=Me("UnstyledButton",xTe,e),{className:o,component:a="button",__staticSelector:i,unstyled:l,classNames:s,styles:c,style:d,attributes:u,...p}=n,f=kt({name:i,props:n,classes:sU,className:o,style:d,classNames:s,styles:c,unstyled:l,attributes:u});return y.jsx(Se,{...f("root",{focusable:!0}),component:a,ref:r,type:a==="button"?"button":void 0,...p})});pr.classes=sU,pr.displayName="@mantine/core/UnstyledButton";var cU={root:"m_515a97f8"};const Ow=ot((e,r)=>{const n=Me("VisuallyHidden",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,attributes:d,...u}=n,p=kt({name:"VisuallyHidden",classes:cU,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:d});return y.jsx(Se,{component:"span",ref:r,...p("root"),...u})});Ow.classes=cU,Ow.displayName="@mantine/core/VisuallyHidden";var dU={root:"m_1b7284a3"};const wTe=(e,{radius:r,shadow:n})=>({root:{"--paper-radius":r===void 0?void 0:wn(r),"--paper-shadow":hq(n)}}),$f=Jn((e,r)=>{const n=Me("Paper",null,e),{classNames:o,className:a,style:i,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:dU,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:d,varsResolver:wTe});return y.jsx(Se,{ref:r,mod:[{"data-with-border":c},g],...x("root"),variant:f,...w})});$f.classes=dU,$f.displayName="@mantine/core/Paper";function uU(e,r,n,o){return e==="center"||o==="center"?{top:r}:e==="end"?{bottom:n}:e==="start"?{top:n}:{}}function pU(e,r,n,o,a){return e==="center"||o==="center"?{left:r}:e==="end"?{[a==="ltr"?"right":"left"]:n}:e==="start"?{[a==="ltr"?"left":"right"]:n}:{}}const kTe={bottom:"borderTopLeftRadius",left:"borderTopRightRadius",right:"borderBottomLeftRadius",top:"borderBottomRightRadius"};function _Te({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,arrowX:i,arrowY:l,dir:s}){const[c,d="center"]=e.split("-"),u={width:r,height:r,transform:"rotate(45deg)",position:"absolute",[kTe[c]]:o},p=-r/2;return c==="left"?{...u,...uU(d,l,n,a),right:p,borderLeftColor:"transparent",borderBottomColor:"transparent",clipPath:"polygon(100% 0, 0 0, 100% 100%)"}:c==="right"?{...u,...uU(d,l,n,a),left:p,borderRightColor:"transparent",borderTopColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 100%)"}:c==="top"?{...u,...pU(d,i,n,a,s),bottom:p,borderTopColor:"transparent",borderLeftColor:"transparent",clipPath:"polygon(0 100%, 100% 100%, 100% 0)"}:c==="bottom"?{...u,...pU(d,i,n,a,s),top:p,borderBottomColor:"transparent",borderRightColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 0)"}:{}}const Iw=S.forwardRef(({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,visible:i,arrowX:l,arrowY:s,style:c,...d},u)=>{const{dir:p}=dd();return i?y.jsx("div",{...d,ref:u,style:{...c,..._Te({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,dir:p,arrowX:l,arrowY:s})}}):null});Iw.displayName="@mantine/core/FloatingArrow";function hU(e,r){if(e==="rtl"&&(r.includes("right")||r.includes("left"))){const[n,o]=r.split("-"),a=n==="right"?"left":"right";return o===void 0?a:`${a}-${o}`}return r}var fU={root:"m_9814e45f"};const STe={zIndex:aw("modal")},ETe=(e,{gradient:r,color:n,backgroundOpacity:o,blur:a,radius:i,zIndex:l})=>({root:{"--overlay-bg":r||(n!==void 0||o!==void 0)&&Yl(n||"#000",o??.6)||void 0,"--overlay-filter":a?`blur(${$e(a)})`:void 0,"--overlay-radius":i===void 0?void 0:wn(i),"--overlay-z-index":l?.toString()}}),_9=Jn((e,r)=>{const n=Me("Overlay",STe,e),{classNames:o,className:a,style:i,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,z=kt({name:"Overlay",props:n,classes:fU,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:ETe});return y.jsx(Se,{ref:r,...z("root"),mod:[{center:u,fixed:d},C],...$,children:p})});_9.classes=fU,_9.displayName="@mantine/core/Overlay";function S9(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 CTe({target:e,reuseTargetNode:r,...n}){if(e)return typeof e=="string"?document.querySelector(e)||S9(n):e;if(r){const o=document.querySelector("[data-mantine-shared-portal-node]");if(o)return o;const a=S9(n);return a.setAttribute("data-mantine-shared-portal-node","true"),document.body.appendChild(a),a}return S9(n)}const $Te={reuseTargetNode:!0},ry=ot((e,r)=>{const{children:n,target:o,reuseTargetNode:a,...i}=Me("Portal",$Te,e),[l,s]=S.useState(!1),c=S.useRef(null);return Z1(()=>(s(!0),c.current=CTe({target:o,reuseTargetNode:a,...i}),T7(r,c.current),!o&&!a&&c.current&&document.body.appendChild(c.current),()=>{!o&&!a&&c.current&&document.body.removeChild(c.current)}),[o]),!l||!c.current?null:Ii.createPortal(y.jsx(y.Fragment,{children:n}),c.current)});ry.displayName="@mantine/core/Portal";const zf=ot(({withinPortal:e=!0,children:r,...n},o)=>hw()==="test"||!e?y.jsx(y.Fragment,{children:r}):y.jsx(ry,{ref:o,...n,children:r}));zf.displayName="@mantine/core/OptionalPortal";const ny=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${e==="bottom"?10:-10}px)`},transitionProperty:"transform, opacity"}),Lw={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:{...ny("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...ny("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...ny("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...ny("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...ny("top"),common:{transformOrigin:"top right"}}},mU={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function zTe({transition:e,state:r,duration:n,timingFunction:o}){const a={WebkitBackfaceVisibility:"hidden",transitionDuration:`${n}ms`,transitionTimingFunction:o};return typeof e=="string"?e in Lw?{transitionProperty:Lw[e].transitionProperty,...a,...Lw[e].common,...Lw[e][mU[r]]}:{}:{transitionProperty:e.transitionProperty,...a,...e.common,...e[mU[r]]}}function RTe({duration:e,exitDuration:r,timingFunction:n,mounted:o,onEnter:a,onExit:i,onEntered:l,onExited:s,enterDelay:c,exitDelay:d}){const u=lo(),p=Eq(),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 z=A=>{$();const R=A?a:i,T=A?l:s,O=f?0:A?e:r;v(O),O===0?(typeof R=="function"&&R(),typeof T=="function"&&T(),x(A?"entered":"exited")):_.current=requestAnimationFrame(()=>{QM.flushSync(()=>{x(A?"pre-entering":"pre-exiting")}),_.current=requestAnimationFrame(()=>{typeof R=="function"&&R(),x(A?"entering":"exiting"),k.current=window.setTimeout(()=>{typeof T=="function"&&T(),x(A?"entered":"exited")},O)})})},j=A=>{if($(),typeof(A?c:d)!="number"){z(A);return}C.current=window.setTimeout(()=>{z(A)},A?c:d)};return Xu(()=>{j(o)},[o]),S.useEffect(()=>()=>{$()},[]),{transitionDuration:g,transitionStatus:w,transitionTimingFunction:n||"ease"}}function pd({keepMounted:e,transition:r="fade",duration:n=250,exitDuration:o=n,mounted:a,children:i,timingFunction:l="ease",onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f}){const g=hw(),{transitionDuration:v,transitionStatus:w,transitionTimingFunction:x}=RTe({mounted:a,exitDuration:o,duration:n,timingFunction:l,onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f});return v===0||g==="test"?a?y.jsx(y.Fragment,{children:i({})}):e?i({display:"none"}):null:w==="exited"?e?i({display:"none"}):null:y.jsx(y.Fragment,{children:i(zTe({transition:r,duration:v,state:w,timingFunction:x}))})}pd.displayName="@mantine/core/Transition";const[jTe,gU]=ei("Popover component was not found in the tree");function Fw({children:e,active:r=!0,refProp:n="ref",innerRef:o}){const a=wq(r),i=$r(a,o);return Ki(e)?S.cloneElement(e,{[n]:i}):e}function yU(e){return y.jsx(Ow,{tabIndex:-1,"data-autofocus":!0,...e})}Fw.displayName="@mantine/core/FocusTrap",yU.displayName="@mantine/core/FocusTrapInitialFocus",Fw.InitialFocus=yU;var vU={dropdown:"m_38a85659",arrow:"m_a31dc6c1",overlay:"m_3d7bc908"};const Xs=ot((e,r)=>{const n=Me("PopoverDropdown",null,e),{className:o,style:a,vars:i,children:l,onKeyDownCapture:s,variant:c,classNames:d,styles:u,...p}=n,f=gU(),g=O$e({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(zf,{...f.portalProps,withinPortal:f.withinPortal,children:y.jsx(pd,{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(Fw,{active:f.trapFocus&&f.opened,innerRef:w,children:y.jsxs(Se,{...v,...p,variant:c,onKeyDownCapture:z$e(()=>{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,a]}),children:[l,y.jsx(Iw,{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})})]})})})})});Xs.classes=vU,Xs.displayName="@mantine/core/PopoverDropdown";const TTe={refProp:"ref",popupType:"dialog"},hd=ot((e,r)=>{const{children:n,refProp:o,popupType:a,...i}=Me("PopoverTarget",TTe,e);if(!Ki(n))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 l=i,s=gU(),c=$r(s.reference,sw(n),r),d=s.withRoles?{"aria-haspopup":a,"aria-expanded":s.opened,"aria-controls":s.getDropdownId(),id:s.getTargetId()}:{};return S.cloneElement(n,{...l,...d,...s.targetProps,className:Qi(s.targetProps.className,l.className,n.props.className),[o]:c,...s.controlled?null:{onClick:()=>{s.onToggle(),n.props.onClick?.()}}})});hd.displayName="@mantine/core/PopoverTarget";function ATe(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 DTe(e,r,n){const o=ATe(e.middlewares),a=[TH(e.offset),Xje()];return e.dropdownVisible&&n!=="test"&&e.preventPositionChangeWhenVisible&&(o.flip=!1),o.shift&&a.push(u9(typeof o.shift=="boolean"?{limiter:AH(),padding:5}:{limiter:AH(),padding:5,...o.shift})),o.flip&&a.push(typeof o.flip=="boolean"?Dw():Dw(o.flip)),o.inline&&a.push(typeof o.inline=="boolean"?ty():ty(o.inline)),a.push(DH({element:e.arrowRef,padding:e.arrowOffset})),(o.size||e.width==="target")&&a.push(Yje({...typeof o.size=="boolean"?{}:o.size,apply({rects:i,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:i,availableWidth:l,availableHeight:s,...c}):Object.assign(d,{maxWidth:`${l}px`,maxHeight:`${s}px`})),e.width==="target"&&Object.assign(d,{width:`${i.reference.width}px`})}})),a}function MTe(e){const r=hw(),[n,o]=Us({value:e.opened,defaultValue:e.defaultOpened,finalValue:!1,onChange:e.onChange}),a=S.useRef(n),i=()=>{n&&!e.disabled&&o(!1)},l=()=>{e.disabled||o(!n)},s=Nw({strategy:e.strategy,placement:e.preventPositionChangeWhenVisible?e.positionRef.current:e.position,middleware:DTe(e,()=>s,r),whileElementsMounted:e.keepMounted?void 0:jw});return S.useEffect(()=>{if(!(!s.refs.reference.current||!s.refs.floating.current)&&n)return jw(s.refs.reference.current,s.refs.floating.current,s.update)},[n,s.update]),Xu(()=>{e.onPositionChange?.(s.placement),e.positionRef.current=s.placement},[s.placement,e.preventPositionChangeWhenVisible]),Xu(()=>{n!==a.current&&(n?e.onOpen?.():e.onClose?.()),a.current=n},[n,e.onClose,e.onOpen]),Xu(()=>{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:i,onToggle:l}}const NTe={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:aw("popover"),__staticSelector:"Popover",width:"max-content"},PTe=(e,{radius:r,shadow:n})=>({dropdown:{"--popover-radius":r===void 0?void 0:wn(r),"--popover-shadow":hq(n)}});function br(e){const r=Me("Popover",NTe,e),{children:n,position:o,offset:a,onPositionChange:i,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:z,withinPortal:j,portalProps:A,closeOnEscape:R,clickOutsideEvents:T,trapFocus:O,onClose:P,onDismiss:L,onOpen:H,onChange:M,zIndex:V,radius:B,shadow:F,id:q,defaultOpened:G,__staticSelector:U,withRoles:Y,disabled:Z,returnFocus:I,variant:W,keepMounted:K,vars:Q,floatingStrategy:ae,withOverlay:te,overlayProps:re,hideDetached:ue,attributes:_e,preventPositionChangeWhenVisible:ce,...pe}=r,xe=kt({name:U,props:r,classes:vU,classNames:_,styles:$,unstyled:C,attributes:_e,rootSelector:"dropdown",vars:Q,varsResolver:PTe}),{resolvedStyles:De}=H7({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:Ot}=dd(),Et=hw(),be=ti(q),ke=MTe({middlewares:f,width:p,position:hU(Ot,o),offset:typeof a=="number"?a+(g?v/2:0):a,arrowRef:Le,arrowOffset:w,onPositionChange:i,positionDependencies:l,opened:s,defaultOpened:G,onChange:M,onOpen:H,onClose:P,onDismiss:L,strategy:ae,dropdownVisible:Be,setDropdownVisible:Je,positionRef:st,disabled:Z,preventPositionChangeWhenVisible:ce,keepMounted:K});mq(()=>{z&&(ke.onClose(),L?.())},T,[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]),jr=S.useCallback(()=>{c?.onEntered?.(),u?.()},[c?.onEntered,u]);return y.jsxs(jTe,{value:{returnFocus:I,disabled:Z,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:jr},width:p,withArrow:g,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,placement:ke.floating.placement,trapFocus:O,withinPortal:j,portalProps:A,zIndex:V,radius:B,shadow:F,closeOnEscape:R,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:K,getStyles:xe,resolvedStyles:De,floatingStrategy:ae,referenceHidden:ue&&Et!=="test"?ke.floating.middlewareData.hide?.referenceHidden:!1},children:[n,te&&y.jsx(pd,{transition:"fade",mounted:ke.opened,duration:c?.duration||250,exitDuration:c?.exitDuration||250,children:er=>y.jsx(zf,{withinPortal:j,children:y.jsx(_9,{...re,...xe("overlay",{className:re?.className,style:[er,re?.style]})})})})]})}br.Target=hd,br.Dropdown=Xs,br.displayName="@mantine/core/Popover",br.extend=e=>e;var nl={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 bU=S.forwardRef(({className:e,...r},n)=>y.jsxs(Se,{component:"span",className:Qi(nl.barsLoader,e),...r,ref:n,children:[y.jsx("span",{className:nl.bar}),y.jsx("span",{className:nl.bar}),y.jsx("span",{className:nl.bar})]}));bU.displayName="@mantine/core/Bars";const xU=S.forwardRef(({className:e,...r},n)=>y.jsxs(Se,{component:"span",className:Qi(nl.dotsLoader,e),...r,ref:n,children:[y.jsx("span",{className:nl.dot}),y.jsx("span",{className:nl.dot}),y.jsx("span",{className:nl.dot})]}));xU.displayName="@mantine/core/Dots";const wU=S.forwardRef(({className:e,...r},n)=>y.jsx(Se,{component:"span",className:Qi(nl.ovalLoader,e),...r,ref:n}));wU.displayName="@mantine/core/Oval";const kU={bars:bU,oval:wU,dots:xU},BTe={loaders:kU,type:"oval"},OTe=(e,{size:r,color:n})=>({root:{"--loader-size":dr(r,"loader-size"),"--loader-color":n?_a(n,e):void 0}}),Rf=ot((e,r)=>{const n=Me("Loader",BTe,e),{size:o,color:a,type:i,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:nl,className:s,style:c,classNames:d,styles:u,unstyled:p,attributes:w,vars:l,varsResolver:OTe});return v?y.jsx(Se,{...k("root"),ref:r,...x,children:v}):y.jsx(Se,{...k("root"),ref:r,component:f[i],variant:g,size:o,...x})});Rf.defaultLoaders=kU,Rf.classes=nl,Rf.displayName="@mantine/core/Loader";var jf={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21",groupSection:"m_437b6484"};const _U={orientation:"horizontal"},ITe=(e,{borderWidth:r})=>({group:{"--ai-border-width":$e(r)}}),Vw=ot((e,r)=>{const n=Me("ActionIconGroup",_U,e),{className:o,style:a,classNames:i,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=Me("ActionIconGroup",_U,e),w=kt({name:"ActionIconGroup",props:n,classes:jf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:ITe,rootSelector:"group"});return y.jsx(Se,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});Vw.classes=jf,Vw.displayName="@mantine/core/ActionIconGroup";const LTe=(e,{radius:r,color:n,gradient:o,variant:a,autoContrast:i,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:i});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||a?s.background:void 0,"--section-color":s.color,"--section-bd":n||a?s.border:void 0}}},E9=ot((e,r)=>{const n=Me("ActionIconGroupSection",null,e),{className:o,style:a,classNames:i,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:jf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:LTe,rootSelector:"groupSection"});return y.jsx(Se,{...w("groupSection"),ref:r,variant:d,...v})});E9.classes=jf,E9.displayName="@mantine/core/ActionIconGroupSection";const FTe=(e,{size:r,radius:n,variant:o,gradient:a,color:i,autoContrast:l})=>{const s=e.variantColorResolver({color:i||e.primaryColor,theme:e,gradient:a,variant:o||"filled",autoContrast:l});return{root:{"--ai-size":dr(r,"ai-size"),"--ai-radius":n===void 0?void 0:wn(n),"--ai-bg":i||o?s.background:void 0,"--ai-hover":i||o?s.hover:void 0,"--ai-hover-color":i||o?s.hoverColor:void 0,"--ai-color":s.color,"--ai-bd":i||o?s.border:void 0}}},lr=Jn((e,r)=>{const n=Me("ActionIcon",null,e),{className:o,unstyled:a,variant:i,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:z,attributes:j,...A}=n,R=kt({name:["ActionIcon",v],props:n,className:o,style:c,classes:jf,classNames:l,styles:s,unstyled:a,attributes:j,vars:x,varsResolver:FTe});return y.jsxs(pr,{...R("root",{active:!C&&!d&&!_}),...A,unstyled:a,variant:i,size:p,disabled:C||d,ref:r,mod:[{loading:d,disabled:C||_},z],children:[typeof d=="boolean"&&y.jsx(pd,{mounted:d,transition:"slide-down",duration:150,children:T=>y.jsx(Se,{component:"span",...R("loader",{style:T}),"aria-hidden":!0,children:y.jsx(Rf,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...u})})}),y.jsx(Se,{component:"span",mod:{loading:d},...R("icon"),children:k})]})});lr.classes=jf,lr.displayName="@mantine/core/ActionIcon",lr.Group=Vw,lr.GroupSection=E9;const SU=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"})}));SU.displayName="@mantine/core/CloseIcon";var EU={root:"m_86a44da5","root--subtle":"m_220c80f2"};const VTe={variant:"subtle"},qTe=(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)}}),ep=Jn((e,r)=>{const n=Me("CloseButton",VTe,e),{iconSize:o,children:a,vars:i,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:EU,classNames:c,styles:u,unstyled:p,attributes:k,vars:i,varsResolver:qTe});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(SU,{}),a]})});ep.classes=EU,ep.displayName="@mantine/core/CloseButton";function HTe(e){return S.Children.toArray(e).filter(Boolean)}var CU={root:"m_4081bf90"};const UTe={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},WTe=(e,{grow:r,preventGrowOverflow:n,gap:o,align:a,justify:i,wrap:l},{childWidth:s})=>({root:{"--group-child-width":r&&n?s:void 0,"--group-gap":Hs(o),"--group-align":a,"--group-justify":i,"--group-wrap":l}}),en=ot((e,r)=>{const n=Me("Group",UTe,e),{classNames:o,className:a,style:i,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,z=HTe(c),j=z.length,A=Hs(d??"md"),R={childWidth:`calc(${100/j}% - (${A} - ${A} / ${j}))`},T=kt({name:"Group",props:n,stylesCtx:R,className:a,style:i,classes:CU,classNames:o,styles:l,unstyled:s,attributes:_,vars:w,varsResolver:WTe});return y.jsx(Se,{...T("root"),ref:r,variant:x,mod:[{grow:g},C],size:k,...$,children:z})});en.classes=CU,en.displayName="@mantine/core/Group";const[GTe,YTe]=G1({size:"sm"}),$U=ot((e,r)=>{const n=Me("InputClearButton",null,e),{size:o,variant:a,vars:i,classNames:l,styles:s,...c}=n,d=YTe(),{resolvedClassNames:u,resolvedStyles:p}=H7({classNames:l,styles:s,props:n});return y.jsx(ep,{variant:a||"transparent",ref:r,size:o||d?.size||"sm",classNames:u,styles:p,__staticSelector:"InputClearButton",style:{pointerEvents:"all",background:"var(--input-bg)",...c.style},...c})});$U.displayName="@mantine/core/InputClearButton";const XTe={xs:7,sm:8,md:10,lg:12,xl:15};function ZTe({__clearable:e,__clearSection:r,rightSection:n,__defaultRightSection:o,size:a="sm"}){const i=e&&r;return i&&(n||o)?y.jsxs("div",{"data-combined-clear-section":!0,style:{display:"flex",gap:2,alignItems:"center",paddingInlineEnd:XTe[a]},children:[i,n||o]}):n===null?null:n||i||o}const[KTe,qw]=G1({offsetBottom:!1,offsetTop:!1,describedBy:void 0,getStyles:null,inputId:void 0,labelId:void 0});var ai={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 QTe=(e,{size:r})=>({description:{"--input-description-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),Hw=ot((e,r)=>{const n=Me("InputDescription",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,size:d,__staticSelector:u,__inheritStyles:p=!0,attributes:f,variant:g,...v}=Me("InputDescription",null,n),w=qw(),x=kt({name:["InputWrapper",u],props:n,classes:ai,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,rootSelector:"description",vars:c,varsResolver:QTe}),k=p&&w?.getStyles||x;return y.jsx(Se,{component:"p",ref:r,variant:g,size:d,...k("description",w?.getStyles?{className:a,style:i}:void 0),...v})});Hw.classes=ai,Hw.displayName="@mantine/core/InputDescription";const JTe=(e,{size:r})=>({error:{"--input-error-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),Uw=ot((e,r)=>{const n=Me("InputError",null,e),{classNames:o,className:a,style:i,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:ai,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,rootSelector:"error",vars:c,varsResolver:JTe}),x=qw(),k=f&&x?.getStyles||w;return y.jsx(Se,{component:"p",ref:r,variant:g,size:d,...k("error",x?.getStyles?{className:a,style:i}:void 0),...v})});Uw.classes=ai,Uw.displayName="@mantine/core/InputError";const zU={labelElement:"label"},eAe=(e,{size:r})=>({label:{"--input-label-size":Eo(r),"--input-asterisk-color":void 0}}),Ww=ot((e,r)=>{const n=Me("InputLabel",zU,e),{classNames:o,className:a,style:i,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",zU,n),$=kt({name:["InputWrapper",w],props:n,classes:ai,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,rootSelector:"label",vars:c,varsResolver:eAe}),z=qw(),j=z?.getStyles||$;return y.jsxs(Se,{...j("label",z?.getStyles?{className:a,style:i}: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",{...j("required"),"aria-hidden":!0,children:" *"})]})});Ww.classes=ai,Ww.displayName="@mantine/core/InputLabel";const C9=ot((e,r)=>{const n=Me("InputPlaceholder",null,e),{classNames:o,className:a,style:i,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:ai,className:a,style:i,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})});C9.classes=ai,C9.displayName="@mantine/core/InputPlaceholder";function tAe(e,{hasDescription:r,hasError:n}){const o=e.findIndex(s=>s==="input"),a=e.slice(0,o),i=e.slice(o+1),l=r&&a.includes("description")||n&&a.includes("error");return{offsetBottom:r&&i.includes("description")||n&&i.includes("error"),offsetTop:l}}const rAe={labelElement:"label",inputContainer:e=>e,inputWrapperOrder:["label","description","input","error"]},nAe=(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)})`}}),$9=ot((e,r)=>{const n=Me("InputWrapper",rAe,e),{classNames:o,className:a,style:i,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:z,withAsterisk:j,id:A,required:R,__stylesApiProps:T,mod:O,attributes:P,...L}=n,H=kt({name:["InputWrapper",p],props:T||n,classes:ai,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:nAe}),M={size:d,variant:u,__staticSelector:p},V=ti(A),B=typeof j=="boolean"?j:R,F=_?.id||`${V}-error`,q=C?.id||`${V}-description`,G=V,U=!!w&&typeof w!="boolean",Y=!!x,Z=`${U?F:""} ${Y?q:""}`,I=Z.trim().length>0?Z.trim():void 0,W=k?.id||`${V}-label`,K=v&&y.jsx(Ww,{labelElement:$,id:W,htmlFor:G,required:B,...M,...k,children:v},"label"),Q=Y&&y.jsx(Hw,{...C,...M,size:C?.size||M.size,id:C?.id||q,children:x},"description"),ae=y.jsx(S.Fragment,{children:f(z)},"input"),te=U&&S.createElement(Uw,{..._,...M,size:_?.size||M.size,key:"error",id:_?.id||F},w),re=g.map(ue=>{switch(ue){case"label":return K;case"input":return ae;case"description":return Q;case"error":return te;default:return null}});return y.jsx(KTe,{value:{getStyles:H,describedBy:I,inputId:G,labelId:W,...tAe(g,{hasDescription:Y,hasError:U})},children:y.jsx(Se,{ref:r,variant:u,size:d,mod:[{error:!!w},O],...H("root"),...L,children:re})})});$9.classes=ai,$9.displayName="@mantine/core/InputWrapper";const oAe={variant:"default",leftSectionPointerEvents:"none",rightSectionPointerEvents:"none",withAria:!0,withErrorStyles:!0,size:"sm"},aAe=(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}}),Ca=Jn((e,r)=>{const n=Me("Input",oAe,e),{classNames:o,className:a,style:i,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:z,leftSectionPointerEvents:j,variant:A,vars:R,pointer:T,multiline:O,radius:P,id:L,withAria:H,withErrorStyles:M,mod:V,inputSize:B,attributes:F,__clearSection:q,__clearable:G,__defaultRightSection:U,...Y}=n,{styleProps:Z,rest:I}=Hq(Y),W=qw(),K={offsetBottom:W?.offsetBottom,offsetTop:W?.offsetTop},Q=kt({name:["Input",d],props:u||n,classes:ai,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:F,stylesCtx:K,rootSelector:"wrapper",vars:R,varsResolver:aAe}),ae=H?{required:c,disabled:v,"aria-invalid":!!g,"aria-describedby":W?.describedBy,id:W?.inputId||L}:{},te=ZTe({__clearable:G,__clearSection:q,rightSection:C,__defaultRightSection:U,size:p});return y.jsx(GTe,{value:{size:p||"sm"},children:y.jsxs(Se,{...Q("wrapper"),...Z,...f,mod:[{error:!!g&&M,pointer:T,disabled:v,multiline:O,"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",...I,...ae,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})]})})});Ca.classes=ai,Ca.Wrapper=$9,Ca.Label=Ww,Ca.Error=Uw,Ca.Description=Hw,Ca.Placeholder=C9,Ca.ClearButton=$U,Ca.displayName="@mantine/core/Input";const iAe={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 RU={root:"m_8bffd616"};const Zs=Jn((e,r)=>{const n=Me("Flex",null,e),{classNames:o,className:a,style:i,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:RU,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:x,vars:c}),_=lo(),$=yw(),z=Gq({styleProps:{gap:d,rowGap:u,columnGap:p,align:f,justify:g,wrap:v,direction:w},theme:_,data:iAe});return y.jsxs(y.Fragment,{children:[z.hasResponsiveStyles&&y.jsx(gw,{selector:`.${$}`,styles:z.styles,media:z.media}),y.jsx(Se,{ref:r,...C("root",{className:$,style:ff(z.inlineStyles)}),...k})]})});Zs.classes=RU,Zs.displayName="@mantine/core/Flex";function lAe(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 sAe({target:e,parent:r,ref:n,displayAfterTransitionEnd:o}){const a=S.useRef(-1),[i,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=ud(w.borderTopWidth)+ud(x.borderTopWidth),C=ud(w.borderLeftWidth)+ud(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(a.current),n.current&&(n.current.style.transitionDuration="0ms"),d(),a.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=>{lAe(v.target,r)&&(u(),c(!1))};return r.addEventListener("transitionend",g),()=>{r.removeEventListener("transitionend",g)}}},[r]),zq(()=>{hze()!=="test"&&l(!0)},20,{autoInvoke:!0}),Rq(g=>{g.forEach(v=>{v.type==="attributes"&&v.attributeName==="dir"&&u()})},{attributes:!0,attributeFilter:["dir"]},()=>document.documentElement),{initialized:i,hidden:s}}var jU={root:"m_96b553a6"};const cAe=(e,{transitionDuration:r})=>({root:{"--transition-duration":typeof r=="number"?`${r}ms`:r}}),Gw=ot((e,r)=>{const n=Me("FloatingIndicator",null,e),{classNames:o,className:a,style:i,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:jU,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:cAe}),k=S.useRef(null),{initialized:C,hidden:_}=sAe({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})});Gw.displayName="@mantine/core/FloatingIndicator",Gw.classes=jU;function TU({open:e,close:r,openDelay:n,closeDelay:o}){const a=S.useRef(-1),i=S.useRef(-1),l=()=>{window.clearTimeout(a.current),window.clearTimeout(i.current)},s=()=>{l(),n===0||n===void 0?e():a.current=window.setTimeout(e,n)},c=()=>{l(),o===0||o===void 0?r():i.current=window.setTimeout(r,o)};return S.useEffect(()=>l,[]),{openDropdown:s,closeDropdown:c}}function z9({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"})})}z9.displayName="@mantine/core/AccordionChevron";var AU={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 dAe=(e,{radius:r,color:n,variant:o,autoContrast:a})=>{const i=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:o||"light",autoContrast:a});return{root:{"--alert-radius":r===void 0?void 0:wn(r),"--alert-bg":n||o?i.background:void 0,"--alert-color":i.color,"--alert-bd":n||o?i.border:void 0}}},Yw=ot((e,r)=>{const n=Me("Alert",null,e),{classNames:o,className:a,style:i,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:z,...j}=n,A=kt({name:"Alert",classes:AU,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:c,varsResolver:dAe}),R=ti(g),T=p&&`${R}-title`||void 0,O=`${R}-body`;return y.jsx(Se,{id:R,...A("root",{variant:C}),variant:C,ref:r,role:$||"alert",...j,"aria-describedby":f?O:void 0,"aria-labelledby":p?T: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:T,...A("label"),children:p})}),f&&y.jsx("div",{id:O,...A("message"),"data-variant":C,children:f})]}),w&&y.jsx(ep,{...A("closeButton"),onClick:x,variant:"transparent",size:16,iconSize:16,"aria-label":k,unstyled:s})]})})});Yw.classes=AU,Yw.displayName="@mantine/core/Alert";var DU={root:"m_b6d8b162"};function uAe(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const pAe={inherit:!1},hAe=(e,{variant:r,lineClamp:n,gradient:o,size:a,color:i})=>({root:{"--text-fz":Eo(a),"--text-lh":R$e(a),"--text-gradient":r==="gradient"?N7(o,e):void 0,"--text-line-clamp":typeof n=="number"?n.toString():void 0,"--text-color":i?_a(i,e):void 0}}),at=Jn((e,r)=>{const n=Me("Text",pAe,e),{lineClamp:o,truncate:a,inline:i,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,z=kt({name:["Text",d],props:n,classes:DU,className:p,style:f,classNames:g,styles:v,unstyled:w,attributes:_,vars:u,varsResolver:hAe});return y.jsx(Se,{...z("root",{focusable:!0}),ref:r,component:c?"span":"p",variant:x,mod:[{"data-truncate":uAe(a),"data-line-clamp":typeof o=="number","data-inline":i,"data-inherit":l},k],size:C,...$})});at.classes=DU,at.displayName="@mantine/core/Text";var MU={root:"m_849cf0da"};const fAe={underline:"hover"},R9=Jn((e,r)=>{const{underline:n,className:o,unstyled:a,mod:i,...l}=Me("Anchor",fAe,e);return y.jsx(at,{component:"a",ref:r,className:Qi({[MU.root]:!a},o),...l,mod:[{underline:n},i],__staticSelector:"Anchor",unstyled:a})});R9.classes=MU,R9.displayName="@mantine/core/Anchor";var ii={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 mAe={error:null},gAe=(e,{size:r,color:n})=>({chevron:{"--combobox-chevron-size":dr(r,"combobox-chevron-size"),"--combobox-chevron-color":n?_a(n,e):void 0}}),j9=ot((e,r)=>{const n=Me("ComboboxChevron",mAe,e),{size:o,error:a,style:i,className:l,classNames:s,styles:c,unstyled:d,vars:u,mod:p,...f}=n,g=kt({name:"ComboboxChevron",classes:ii,props:n,style:i,className:l,classNames:s,styles:c,unstyled:d,vars:u,varsResolver:gAe,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:a},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"})})});j9.classes=ii,j9.displayName="@mantine/core/ComboboxChevron";const[yAe,li]=ei("Combobox component was not found in tree"),NU=S.forwardRef(({size:e,onMouseDown:r,onClick:n,onClear:o,...a},i)=>y.jsx(Ca.ClearButton,{ref:i,tabIndex:-1,"aria-hidden":!0,...a,onMouseDown:l=>{l.preventDefault(),r?.(l)},onClick:l=>{o(),n?.(l)}}));NU.displayName="@mantine/core/ComboboxClearButton";const Xw=ot((e,r)=>{const{classNames:n,styles:o,className:a,style:i,hidden:l,...s}=Me("ComboboxDropdown",null,e),c=li();return y.jsx(br.Dropdown,{...s,ref:r,role:"presentation","data-hidden":l||void 0,...c.getStyles("dropdown",{className:a,style:i,classNames:n,styles:o})})});Xw.classes=ii,Xw.displayName="@mantine/core/ComboboxDropdown";const vAe={refProp:"ref"},PU=ot((e,r)=>{const{children:n,refProp:o}=Me("ComboboxDropdownTarget",vAe,e);if(li(),!Ki(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})});PU.displayName="@mantine/core/ComboboxDropdownTarget";const oy=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("ComboboxEmpty",null,e),c=li();return y.jsx(Se,{ref:r,...c.getStyles("empty",{className:o,classNames:n,styles:i,style:a}),...s})});oy.classes=ii,oy.displayName="@mantine/core/ComboboxEmpty";function T9({onKeyDown:e,withKeyboardNavigation:r,withAriaAttributes:n,withExpandedAttribute:o,targetType:a,autoComplete:i}){const l=li(),[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()):a==="button"&&(u.preventDefault(),l.store.openDropdown("keyboard"))}u.key==="Escape"&&l.store.closeDropdown("keyboard"),u.nativeEvent.code==="Space"&&a==="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:i,"data-expanded":l.store.dropdownOpened||void 0,"data-mantine-stop-propagation":l.store.dropdownOpened||void 0}:{},onKeyDown:d}}const bAe={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},BU=ot((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Me("ComboboxEventsTarget",bAe,e);if(!Ki(n))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 u=li(),p=T9({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:n.props.onKeyDown,autoComplete:c});return S.cloneElement(n,{...p,...d,[o]:$r(r,u.store.targetRef,sw(n))})});BU.displayName="@mantine/core/ComboboxEventsTarget";const A9=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("ComboboxFooter",null,e),c=li();return y.jsx(Se,{ref:r,...c.getStyles("footer",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});A9.classes=ii,A9.displayName="@mantine/core/ComboboxFooter";const D9=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,children:s,label:c,id:d,...u}=Me("ComboboxGroup",null,e),p=li(),f=ti(d);return y.jsxs(Se,{ref:r,role:"group","aria-labelledby":c?f:void 0,...p.getStyles("group",{className:o,classNames:n,style:a,styles:i}),...u,children:[c&&y.jsx("div",{id:f,...p.getStyles("groupLabel",{classNames:n,styles:i}),children:c}),s]})});D9.classes=ii,D9.displayName="@mantine/core/ComboboxGroup";const M9=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("ComboboxHeader",null,e),c=li();return y.jsx(Se,{ref:r,...c.getStyles("header",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});M9.classes=ii,M9.displayName="@mantine/core/ComboboxHeader";function OU({value:e,valuesDivider:r=",",...n}){return y.jsx("input",{type:"hidden",value:Array.isArray(e)?e.join(r):e||"",...n})}OU.displayName="@mantine/core/ComboboxHiddenInput";const ay=ot((e,r)=>{const n=Me("ComboboxOption",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,onClick:c,id:d,active:u,onMouseDown:p,onMouseOver:f,disabled:g,selected:v,mod:w,...x}=n,k=li(),C=S.useId(),_=d||C;return y.jsx(Se,{...k.getStyles("option",{className:a,classNames:o,styles:l,style:i}),...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?.($)}})});ay.classes=ii,ay.displayName="@mantine/core/ComboboxOption";const Zw=ot((e,r)=>{const n=Me("ComboboxOptions",null,e),{classNames:o,className:a,style:i,styles:l,id:s,onMouseDown:c,labelledBy:d,...u}=n,p=li(),f=ti(s);return S.useEffect(()=>{p.store.setListId(f)},[f]),y.jsx(Se,{ref:r,...p.getStyles("options",{className:a,style:i,classNames:o,styles:l}),...u,id:f,role:"listbox","aria-labelledby":d,onMouseDown:g=>{g.preventDefault(),c?.(g)}})});Zw.classes=ii,Zw.displayName="@mantine/core/ComboboxOptions";const xAe={withAriaAttributes:!0,withKeyboardNavigation:!0},N9=ot((e,r)=>{const n=Me("ComboboxSearch",xAe,e),{classNames:o,styles:a,unstyled:i,vars:l,withAriaAttributes:s,onKeyDown:c,withKeyboardNavigation:d,size:u,...p}=n,f=li(),g=f.getStyles("search"),v=T9({targetType:"input",withAriaAttributes:s,withKeyboardNavigation:d,withExpandedAttribute:!1,onKeyDown:c,autoComplete:"off"});return y.jsx(Ca,{ref:$r(r,f.store.searchRef),classNames:[{input:g.className},o],styles:[{input:g.style},a],size:u||f.size,...v,...p,__staticSelector:"Combobox"})});N9.classes=ii,N9.displayName="@mantine/core/ComboboxSearch";const wAe={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},P9=ot((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Me("ComboboxTarget",wAe,e);if(!Ki(n))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 u=li(),p=T9({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:n.props.onKeyDown,autoComplete:c}),f=S.cloneElement(n,{...p,...d});return y.jsx(br.Target,{ref:$r(r,u.store.targetRef),children:f})});P9.displayName="@mantine/core/ComboboxTarget";function kAe(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 _Ae(e,r,n){for(let o=e+1;o{s||(c(!0),a?.(B))},[c,a,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=ld(f.current),F=cw(`#${d.current} [data-combobox-selected]`,B);F?.removeAttribute("data-combobox-selected"),F?.removeAttribute("aria-selected")},[]),$=S.useCallback(B=>{const F=ld(f.current),q=cw(`#${d.current}`,F),G=q?id("[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,_]),z=S.useCallback(()=>{const B=ld(f.current),F=cw(`#${d.current} [data-combobox-active]`,B);if(F){const q=id(`#${d.current} [data-combobox-option]`,B).findIndex(G=>G===F);return $(q)}return $(0)},[$]),j=S.useCallback(()=>{const B=ld(f.current),F=id(`#${d.current} [data-combobox-option]`,B);return $(_Ae(u.current,F,i))},[$,i]),A=S.useCallback(()=>{const B=ld(f.current),F=id(`#${d.current} [data-combobox-option]`,B);return $(kAe(u.current,F,i))},[$,i]),R=S.useCallback(()=>{const B=ld(f.current),F=id(`#${d.current} [data-combobox-option]`,B);return $(SAe(F))},[$]),T=S.useCallback((B="selected",F)=>{w.current=window.setTimeout(()=>{const q=ld(f.current),G=id(`#${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)},[]),O=S.useCallback(()=>{u.current=-1,_()},[_]),P=S.useCallback(()=>{const B=ld(f.current);id(`#${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:R,selectActiveOption:z,selectNextOption:j,selectPreviousOption:A,resetSelectedOption:O,updateSelectedOptionIndex:T,listId:d.current,setListId:L,clickSelectedOption:P,searchRef:p,focusSearchInput:H,targetRef:f,focusTarget:M}}const EAe={keepMounted:!0,withinPortal:!0,resetSelectionOnOptionHover:!1,width:"target",transitionProps:{transition:"fade",duration:0},size:"sm"},CAe=(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",EAe,e),{classNames:n,styles:o,unstyled:a,children:i,store:l,vars:s,onOptionSubmit:c,onClose:d,size:u,dropdownPadding:p,resetSelectionOnOptionHover:f,__staticSelector:g,readOnly:v,attributes:w,...x}=r,k=IU(),C=l||k,_=kt({name:g||"Combobox",classes:ii,props:r,classNames:n,styles:o,unstyled:a,attributes:w,vars:s,varsResolver:CAe}),$=()=>{d?.(),C.closeDropdown()};return y.jsx(yAe,{value:{getStyles:_,store:C,onOptionSubmit:c,size:u,resetSelectionOnOptionHover:f,readOnly:v},children:y.jsx(br,{opened:C.dropdownOpened,preventPositionChangeWhenVisible:!0,...x,onChange:z=>!z&&$(),withRoles:!1,unstyled:a,children:i})})}const $Ae=e=>e;eo.extend=$Ae,eo.classes=ii,eo.displayName="@mantine/core/Combobox",eo.Target=P9,eo.Dropdown=Xw,eo.Options=Zw,eo.Option=ay,eo.Search=N9,eo.Empty=oy,eo.Chevron=j9,eo.Footer=A9,eo.Header=M9,eo.EventsTarget=BU,eo.DropdownTarget=PU,eo.Group=D9,eo.ClearButton=NU,eo.HiddenInput=OU;function LU({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 FU={root:"m_347db0ec","root--dot":"m_fbd81e3d",label:"m_5add502a",section:"m_91fdda9b"};const zAe=(e,{radius:r,color:n,gradient:o,variant:a,size:i,autoContrast:l,circle:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:l});return{root:{"--badge-height":dr(i,"badge-height"),"--badge-padding-x":dr(i,"badge-padding-x"),"--badge-fz":dr(i,"badge-fz"),"--badge-radius":s||r===void 0?void 0:wn(r),"--badge-bg":n||a?c.background:void 0,"--badge-color":n||a?c.color:void 0,"--badge-bd":n||a?c.border:void 0,"--badge-dot-color":a==="dot"?_a(n,e):void 0}}},Ks=Jn((e,r)=>{const n=Me("Badge",null,e),{classNames:o,className:a,style:i,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:$,...z}=n,j=kt({name:"Badge",props:n,classes:FU,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:$,vars:c,varsResolver:zAe});return y.jsxs(Se,{variant:w,mod:[{block:x,circle:C,"with-right-section":!!g,"with-left-section":!!f},_],...j("root",{variant:w}),ref:r,...z,children:[f&&y.jsx("span",{...j("section"),"data-position":"left",children:f}),y.jsx("span",{...j("label"),children:v}),g&&y.jsx("span",{...j("section"),"data-position":"right",children:g})]})});Ks.classes=FU,Ks.displayName="@mantine/core/Badge";var VU={root:"m_8b3717df",breadcrumb:"m_f678d540",separator:"m_3b8f2208"};const RAe={separator:"/"},jAe=(e,{separatorMargin:r})=>({root:{"--bc-separator-margin":Hs(r)}}),Kw=ot((e,r)=>{const n=Me("Breadcrumbs",RAe,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,children:d,separator:u,separatorMargin:p,attributes:f,...g}=n,v=kt({name:"Breadcrumbs",classes:VU,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,vars:c,varsResolver:jAe}),w=S.Children.toArray(d).reduce((x,k,C,_)=>{const $=Ki(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})});Kw.classes=VU,Kw.displayName="@mantine/core/Breadcrumbs";var Tf={root:"m_77c9d27d",inner:"m_80f1301b",label:"m_811560b9",section:"m_a74036a",loader:"m_a25b86ee",group:"m_80d6d844",groupSection:"m_70be2a01"};const qU={orientation:"horizontal"},TAe=(e,{borderWidth:r})=>({group:{"--button-border-width":$e(r)}}),B9=ot((e,r)=>{const n=Me("ButtonGroup",qU,e),{className:o,style:a,classNames:i,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=Me("ButtonGroup",qU,e),w=kt({name:"ButtonGroup",props:n,classes:Tf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:TAe,rootSelector:"group"});return y.jsx(Se,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});B9.classes=Tf,B9.displayName="@mantine/core/ButtonGroup";const AAe=(e,{radius:r,color:n,gradient:o,variant:a,autoContrast:i,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:i});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||a?s.background:void 0,"--section-color":s.color,"--section-bd":n||a?s.border:void 0}}},O9=ot((e,r)=>{const n=Me("ButtonGroupSection",null,e),{className:o,style:a,classNames:i,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:Tf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:AAe,rootSelector:"groupSection"});return y.jsx(Se,{...w("groupSection"),ref:r,variant:d,...v})});O9.classes=Tf,O9.displayName="@mantine/core/ButtonGroupSection";const DAe={in:{opacity:1,transform:`translate(-50%, calc(-50% + ${$e(1)}))`},out:{opacity:0,transform:"translate(-50%, -200%)"},common:{transformOrigin:"center"},transitionProperty:"transform, opacity"},MAe=(e,{radius:r,color:n,gradient:o,variant:a,size:i,justify:l,autoContrast:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:s});return{root:{"--button-justify":l,"--button-height":dr(i,"button-height"),"--button-padding-x":dr(i,"button-padding-x"),"--button-fz":i?.includes("compact")?Eo(i.replace("compact-","")):Eo(i),"--button-radius":r===void 0?void 0:wn(r),"--button-bg":n||a?c.background:void 0,"--button-hover":n||a?c.hover:void 0,"--button-color":c.color,"--button-bd":n||a?c.border:void 0,"--button-hover-color":n||a?c.hoverColor:void 0}}},Vn=Jn((e,r)=>{const n=Me("Button",null,e),{style:o,vars:a,className:i,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:z,mod:j,attributes:A,...R}=n,T=kt({name:"Button",props:n,classes:Tf,className:i,style:o,classNames:k,styles:C,unstyled:_,attributes:A,vars:a,varsResolver:MAe}),O=!!d,P=!!u;return y.jsxs(pr,{ref:r,...T("root",{active:!s&&!v&&!$}),unstyled:_,variant:f,disabled:s||v,mod:[{disabled:s||$,loading:v,block:p,"with-left-section":O,"with-right-section":P},j],...R,children:[typeof v=="boolean"&&y.jsx(pd,{mounted:v,transition:DAe,duration:150,children:L=>y.jsx(Se,{component:"span",...T("loader",{style:L}),"aria-hidden":!0,children:y.jsx(Rf,{color:"var(--button-color)",size:"calc(var(--button-height) / 1.8)",...w})})}),y.jsxs("span",{...T("inner"),children:[d&&y.jsx(Se,{component:"span",...T("section"),mod:{position:"left"},children:d}),y.jsx(Se,{component:"span",mod:{loading:v},...T("label"),children:c}),u&&y.jsx(Se,{component:"span",...T("section"),mod:{position:"right"},children:u})]})]})});Vn.classes=Tf,Vn.displayName="@mantine/core/Button",Vn.Group=B9,Vn.GroupSection=O9;const[NAe,PAe]=ei("Card component was not found in tree");var I9={root:"m_e615b15f",section:"m_599a2148"};const Qw=Jn((e,r)=>{const n=Me("CardSection",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,withBorder:c,inheritPadding:d,mod:u,...p}=n,f=PAe();return y.jsx(Se,{ref:r,mod:[{"with-border":c,"inherit-padding":d},u],...f.getStyles("section",{className:a,style:i,styles:l,classNames:o}),...p})});Qw.classes=I9,Qw.displayName="@mantine/core/CardSection";const BAe=(e,{padding:r})=>({root:{"--card-padding":Hs(r)}}),Jw=Jn((e,r)=>{const n=Me("Card",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,children:d,padding:u,attributes:p,...f}=n,g=kt({name:"Card",props:n,classes:I9,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:BAe}),v=S.Children.toArray(d),w=v.map((x,k)=>typeof x=="object"&&x&&"type"in x&&x.type===Qw?S.cloneElement(x,{"data-first-section":k===0||void 0,"data-last-section":k===v.length-1||void 0}):x);return y.jsx(NAe,{value:{getStyles:g},children:y.jsx($f,{ref:r,unstyled:s,...g("root"),...f,children:w})})});Jw.classes=I9,Jw.displayName="@mantine/core/Card",Jw.Section=Qw;var HU={root:"m_de3d2490",colorOverlay:"m_862f3d1b",shadowOverlay:"m_98ae7f22",alphaOverlay:"m_95709ac0",childrenOverlay:"m_93e74e3"};const UU={withShadow:!0},OAe=(e,{radius:r,size:n})=>({root:{"--cs-radius":r===void 0?void 0:wn(r),"--cs-size":$e(n)}}),iy=Jn((e,r)=>{const n=Me("ColorSwatch",UU,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,color:d,size:u,radius:p,withShadow:f,children:g,variant:v,attributes:w,...x}=Me("ColorSwatch",UU,n),k=kt({name:"ColorSwatch",props:n,classes:HU,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:c,varsResolver:OAe});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})]})});iy.classes=HU,iy.displayName="@mantine/core/ColorSwatch";const IAe={timeout:1e3};function WU(e){const{children:r,timeout:n,value:o,...a}=Me("CopyButton",IAe,e),i=M$e({timeout:n});return y.jsx(y.Fragment,{children:r({copy:()=>i.copy(o),copied:i.copied,...a})})}WU.displayName="@mantine/core/CopyButton";var GU={root:"m_3eebeb36",label:"m_9e365f20"};const LAe={orientation:"horizontal"},FAe=(e,{color:r,variant:n,size:o})=>({root:{"--divider-color":r?_a(r,e):void 0,"--divider-border-style":n,"--divider-size":dr(o,"divider-size")}}),tp=ot((e,r)=>{const n=Me("Divider",LAe,e),{classNames:o,className:a,style:i,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:GU,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:FAe});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})})});tp.classes=GU,tp.displayName="@mantine/core/Divider";const[YU,XU]=ei("Grid component was not found in tree"),L9=(e,r)=>e==="content"?"auto":e==="auto"?"0rem":e?`${100/(r/e)}%`:void 0,ZU=(e,r,n)=>n||e==="auto"?"100%":e==="content"?"unset":L9(e,r),KU=(e,r)=>{if(e)return e==="auto"||r?"1":"auto"},QU=(e,r)=>e===0?"0":e?`${100/(r/e)}%`:void 0;function VAe({span:e,order:r,offset:n,selector:o}){const a=lo(),i=XU(),l=i.breakpoints||a.breakpoints,s=X1(e)===void 0?12:X1(e),c=ff({"--col-order":X1(r)?.toString(),"--col-flex-grow":KU(s,i.grow),"--col-flex-basis":L9(s,i.columns),"--col-width":s==="content"?"auto":void 0,"--col-max-width":ZU(s,i.columns,i.grow),"--col-offset":QU(X1(n),i.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"]=KU(e[f],i.grow),p[f]["--col-flex-basis"]=L9(e[f],i.columns),p[f]["--col-width"]=e[f]==="content"?"auto":void 0,p[f]["--col-max-width"]=ZU(e[f],i.columns,i.grow)),typeof n=="object"&&n[f]!==void 0&&(p[f]["--col-offset"]=QU(n[f],i.columns)),p),{}),u=fq(So(d),l).filter(p=>So(d[p.value]).length>0).map(p=>({query:i.type==="container"?`mantine-grid (min-width: ${l[p.value]})`:`(min-width: ${l[p.value]})`,styles:d[p.value]}));return y.jsx(gw,{styles:c,media:i.type==="container"?void 0:u,container:i.type==="container"?u:void 0,selector:o})}var F9={container:"m_8478a6da",root:"m_410352e9",inner:"m_dee7bd2f",col:"m_96bdd299"};const qAe={span:12},rp=ot((e,r)=>{const n=Me("GridCol",qAe,e),{classNames:o,className:a,style:i,styles:l,vars:s,span:c,order:d,offset:u,...p}=n,f=XU(),g=yw();return y.jsxs(y.Fragment,{children:[y.jsx(VAe,{selector:`.${g}`,span:c,order:d,offset:u}),y.jsx(Se,{ref:r,...f.getStyles("col",{className:Qi(a,g),style:i,classNames:o,styles:l}),...p})]})});rp.classes=F9,rp.displayName="@mantine/core/GridCol";function JU({gutter:e,selector:r,breakpoints:n,type:o}){const a=lo(),i=n||a.breakpoints,l=ff({"--grid-gutter":Hs(X1(e))}),s=So(i).reduce((d,u)=>(d[u]||(d[u]={}),typeof e=="object"&&e[u]!==void 0&&(d[u]["--grid-gutter"]=Hs(e[u])),d),{}),c=fq(So(s),i).filter(d=>So(s[d.value]).length>0).map(d=>({query:o==="container"?`mantine-grid (min-width: ${i[d.value]})`:`(min-width: ${i[d.value]})`,styles:s[d.value]}));return y.jsx(gw,{styles:l,media:o==="container"?void 0:c,container:o==="container"?c:void 0,selector:r})}const HAe={gutter:"md",grow:!1,columns:12},UAe=(e,{justify:r,align:n,overflow:o})=>({root:{"--grid-justify":r,"--grid-align":n,"--grid-overflow":o}}),ly=ot((e,r)=>{const n=Me("Grid",HAe,e),{classNames:o,className:a,style:i,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:F9,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:k,vars:c,varsResolver:UAe}),$=yw();return x==="container"&&w?y.jsxs(YU,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(JU,{selector:`.${$}`,...n}),y.jsx("div",{..._("container"),children:y.jsx(Se,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})})]}):y.jsxs(YU,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(JU,{selector:`.${$}`,...n}),y.jsx(Se,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})]})});ly.classes=F9,ly.displayName="@mantine/core/Grid",ly.Col=rp;function eW({color:e,theme:r,defaultShade:n}){const o=cd({color:e,theme:r});return o.isThemeColor?o.shade===void 0?`var(--mantine-color-${o.color}-${n})`:`var(${o.variable})`:e}var tW={root:"m_bcb3f3c2"};const WAe={color:"yellow"},GAe=(e,{color:r})=>({root:{"--mark-bg-dark":eW({color:r,theme:e,defaultShade:5}),"--mark-bg-light":eW({color:r,theme:e,defaultShade:2})}}),V9=ot((e,r)=>{const n=Me("Mark",WAe,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,color:d,variant:u,attributes:p,...f}=n,g=kt({name:"Mark",props:n,className:a,style:i,classes:tW,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:GAe});return y.jsx(Se,{component:"mark",ref:r,variant:u,...g("root"),...f})});V9.classes=tW,V9.displayName="@mantine/core/Mark";function rW(e){return e.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&")}function YAe(e,r){if(r==null)return[{chunk:e,highlighted:!1}];const n=Array.isArray(r)?r.map(rW):rW(r);if(!(Array.isArray(n)?n.filter(i=>i.trim().length>0).length>0:n.trim()!==""))return[{chunk:e,highlighted:!1}];const o=typeof n=="string"?n.trim():n.filter(i=>i.trim().length!==0).map(i=>i.trim()).sort((i,l)=>l.length-i.length).join("|"),a=new RegExp(`(${o})`,"gi");return e.split(a).map(i=>({chunk:i,highlighted:a.test(i)})).filter(({chunk:i})=>i)}const Qs=Jn((e,r)=>{const{unstyled:n,children:o,highlight:a,highlightStyles:i,color:l,...s}=Me("Highlight",null,e),c=YAe(o,a);return y.jsx(at,{unstyled:n,ref:r,...s,__staticSelector:"Highlight",children:c.map(({chunk:d,highlighted:u},p)=>u?y.jsx(V9,{unstyled:n,color:l,style:i,"data-highlight":d,children:d},p):y.jsx("span",{children:d},p))})});Qs.classes=at.classes,Qs.displayName="@mantine/core/Highlight";const[XAe,nW]=ei("HoverCard component was not found in the tree"),oW=S.createContext(!1),ZAe=oW.Provider,q9=()=>S.useContext(oW);function H9(e){const{children:r,onMouseEnter:n,onMouseLeave:o,...a}=Me("HoverCardDropdown",null,e),i=nW();if(q9()&&i.getFloatingProps&&i.floating){const c=i.getFloatingProps();return y.jsx(br.Dropdown,{ref:i.floating,...c,onMouseEnter:kn(n,c.onMouseEnter),onMouseLeave:kn(o,c.onMouseLeave),...a,children:r})}const l=kn(n,i.openDropdown),s=kn(o,i.closeDropdown);return y.jsx(br.Dropdown,{onMouseEnter:l,onMouseLeave:s,...a,children:r})}H9.displayName="@mantine/core/HoverCardDropdown";const KAe={openDelay:0,closeDelay:0};function U9(e){const{openDelay:r,closeDelay:n,children:o}=Me("HoverCardGroup",KAe,e);return y.jsx(ZAe,{value:!0,children:y.jsx(qH,{delay:{open:r,close:n},children:o})})}U9.displayName="@mantine/core/HoverCardGroup",U9.extend=e=>e;const QAe={refProp:"ref"},W9=S.forwardRef((e,r)=>{const{children:n,refProp:o,eventPropsWrapperName:a,...i}=Me("HoverCardTarget",QAe,e);if(!Ki(n))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 l=nW();if(q9()&&l.getReferenceProps&&l.reference){const u=l.getReferenceProps();return y.jsx(br.Target,{refProp:o,ref:r,...i,children:S.cloneElement(n,a?{[a]:{...u,ref:l.reference}}:{...u,ref:l.reference})})}const s=kn(n.props.onMouseEnter,l.openDropdown),c=kn(n.props.onMouseLeave,l.closeDropdown),d={onMouseEnter:s,onMouseLeave:c};return y.jsx(br.Target,{refProp:o,ref:r,...i,children:S.cloneElement(n,a?{[a]:d}:d)})});W9.displayName="@mantine/core/HoverCardTarget";function JAe(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,a=q9(),i=ti(),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(i),e.onOpen?.()):e.onClose?.()},[i,e.onOpen,e.onClose]),{context:u,refs:p}=Nw({open:o,onOpenChange:d}),{delay:f,setCurrentId:g}=HH(u,{id:i}),{getReferenceProps:v,getFloatingProps:w}=GH([FH(u,{enabled:!0,delay:a?f:{open:e.openDelay,close:e.closeDelay}}),YH(u,{role:"dialog"}),WH(u,{enabled:a})]),x=S.useCallback(()=>{a||(c(),e.openDelay===0||e.openDelay===void 0?d(!0):l.current=window.setTimeout(()=>d(!0),e.openDelay))},[a,c,e.openDelay,d]),k=S.useCallback(()=>{a||(c(),e.closeDelay===0||e.closeDelay===void 0?d(!1):s.current=window.setTimeout(()=>d(!1),e.closeDelay))},[a,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 eDe={openDelay:0,closeDelay:150,initiallyOpened:!1};function Af(e){const{children:r,onOpen:n,onClose:o,openDelay:a,closeDelay:i,initiallyOpened:l,...s}=Me("HoverCard",eDe,e),c=JAe({openDelay:a,closeDelay:i,defaultOpened:l,onOpen:n,onClose:o});return y.jsx(XAe,{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})})}Af.displayName="@mantine/core/HoverCard",Af.Target=W9,Af.Dropdown=H9,Af.Group=U9,Af.extend=e=>e;var tDe=S.useLayoutEffect;const[rDe,fd]=ei("Menu component was not found in the tree");var md={dropdown:"m_dc9b7c9f",label:"m_9bfac126",divider:"m_efdf90cb",item:"m_99ac2aa1",itemLabel:"m_5476e0d3",itemSection:"m_8b75e504",chevron:"m_b85b0bed"};const G9=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("MenuDivider",null,e),c=fd();return y.jsx(Se,{ref:r,...c.getStyles("divider",{className:o,style:a,styles:i,classNames:n}),...s})});G9.classes=md,G9.displayName="@mantine/core/MenuDivider";const sy=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=Me("MenuDropdown",null,e),f=S.useRef(null),g=fd(),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:a,styles:i,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]})});sy.classes=md,sy.displayName="@mantine/core/MenuDropdown";const[nDe,e3]=G1(),cy=Jn((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,color:s,closeMenuOnClick:c,leftSection:d,rightSection:u,children:p,disabled:f,"data-disabled":g,...v}=Me("MenuItem",null,e),w=fd(),x=e3(),k=lo(),{dir:C}=dd(),_=S.useRef(null),$=v,z=kn($.onClick,()=>{g||(typeof c=="boolean"?c&&w.closeDropdownImmediately():w.closeOnItemClick&&w.closeDropdownImmediately())}),j=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,A=s?cd({color:s,theme:k}):null,R=kn($.onKeyDown,T=>{T.key==="ArrowLeft"&&x&&(x.close(),x.focusParentItem())});return y.jsxs(pr,{onMouseDown:T=>T.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style:a,styles:i,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:z,onKeyDown:Y1({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:R}),__vars:{"--menu-item-color":A?.isThemeColor&&A?.shade===void 0?`var(--mantine-color-${A.color}-6)`:j?.color,"--menu-item-hover":j?.hover},children:[d&&y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"left",children:d}),p&&y.jsx("div",{...w.getStyles("itemLabel",{styles:i,classNames:n}),children:p}),u&&y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"right",children:u})]})});cy.classes=md,cy.displayName="@mantine/core/MenuItem";const Y9=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("MenuLabel",null,e),c=fd();return y.jsx(Se,{ref:r,...c.getStyles("label",{className:o,style:a,styles:i,classNames:n}),...s})});Y9.classes=md,Y9.displayName="@mantine/core/MenuLabel";const X9=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=Me("MenuSubDropdown",null,e),f=S.useRef(null),g=fd(),v=e3(),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:a,styles:i,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,children:u})});X9.classes=md,X9.displayName="@mantine/core/MenuSubDropdown";const Z9=Jn((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,color:s,leftSection:c,rightSection:d,children:u,disabled:p,"data-disabled":f,closeMenuOnClick:g,...v}=Me("MenuSubItem",null,e),w=fd(),x=e3(),k=lo(),{dir:C}=dd(),_=S.useRef(null),$=v,z=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,j=s?cd({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())}),R=kn($.onClick,()=>{!f&&g&&w.closeDropdownImmediately()}),T=kn($.onMouseEnter,x?.open),O=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:a,styles:i,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:T,onMouseLeave:O,onClick:R,onKeyDown:Y1({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":j?.isThemeColor&&j?.shade===void 0?`var(--mantine-color-${j.color}-6)`:z?.color,"--menu-item-hover":z?.hover},children:[c&&y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"left",children:c}),u&&y.jsx("div",{...w.getStyles("itemLabel",{styles:i,classNames:n}),children:u}),y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"right",children:d||y.jsx(z9,{...w.getStyles("chevron"),size:14})})]})});Z9.classes=md,Z9.displayName="@mantine/core/MenuSubItem";function aW({children:e,refProp:r}){if(!Ki(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 fd(),y.jsx(br.Target,{refProp:r,popupType:"menu",children:e})}aW.displayName="@mantine/core/MenuSubTarget";const oDe={offset:0,position:"right-start",transitionProps:{duration:0},openDelay:0,middlewares:{shift:{crossAxis:!0}}};function Df(e){const{children:r,closeDelay:n,openDelay:o,...a}=Me("MenuSub",oDe,e),i=ti(),[l,{open:s,close:c}]=lze(!1),d=e3(),{openDropdown:u,closeDropdown:p}=TU({open:s,close:c,closeDelay:n,openDelay:o});return y.jsx(nDe,{value:{opened:l,close:p,open:u,focusFirstItem:()=>window.setTimeout(()=>{document.getElementById(`${i}-dropdown`)?.querySelectorAll("[data-menu-item]:not([data-disabled])")[0]?.focus()},16),focusParentItem:()=>window.setTimeout(()=>{document.getElementById(`${i}-target`)?.focus()},16),parentContext:d},children:y.jsx(br,{opened:l,withinPortal:!1,withArrow:!1,id:i,...a,children:r})})}Df.extend=e=>e,Df.displayName="@mantine/core/MenuSub",Df.Target=aW,Df.Dropdown=X9,Df.Item=Z9;const aDe={refProp:"ref"},t3=S.forwardRef((e,r)=>{const{children:n,refProp:o,...a}=Me("MenuTarget",aDe,e);if(!Ki(n))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 i=fd(),l=n.props,s=kn(l.onClick,()=>{i.trigger==="click"?i.toggleDropdown():i.trigger==="click-hover"&&(i.setOpenedViaClick(!0),i.opened||i.openDropdown())}),c=kn(l.onMouseEnter,()=>(i.trigger==="hover"||i.trigger==="click-hover")&&i.openDropdown()),d=kn(l.onMouseLeave,()=>{(i.trigger==="hover"||i.trigger==="click-hover"&&!i.openedViaClick)&&i.closeDropdown()});return y.jsx(br.Target,{refProp:o,popupType:"menu",ref:r,...a,children:S.cloneElement(n,{onClick:s,onMouseEnter:c,onMouseLeave:d,"data-expanded":i.opened?!0:void 0})})});t3.displayName="@mantine/core/MenuTarget";const iDe={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",iDe,e),{children:n,onOpen:o,onClose:a,opened:i,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:z,withInitialFocusPlaceholder:j,attributes:A,...R}=r,T=kt({name:"Menu",classes:md,props:r,classNames:w,styles:x,unstyled:k,attributes:A}),[O,P]=Us({value:i,defaultValue:l,finalValue:!1,onChange:c}),[L,H]=S.useState(!1),M=()=>{P(!1),H(!1),O&&a?.()},V=()=>{P(!0),!O&&o?.()},B=()=>{O?M():V()},{openDropdown:F,closeDropdown:q}=TU({open:V,close:M,closeDelay:v,openDelay:g}),G=Z=>T$e("[data-menu-item]","[data-menu-dropdown]",Z),{resolvedClassNames:U,resolvedStyles:Y}=H7({classNames:w,styles:x,props:r});return y.jsx(rDe,{value:{getStyles:T,opened:O,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:j},children:y.jsx(br,{...R,opened:O,onChange:B,defaultOpened:l,trapFocus:z?!1:s,closeOnEscape:p,__staticSelector:"Menu",classNames:U,styles:Y,unstyled:k,variant:C,keepMounted:z,children:n})})}tn.extend=e=>e,tn.withProps=SRe(tn),tn.classes=md,tn.displayName="@mantine/core/Menu",tn.Item=cy,tn.Label=Y9,tn.Dropdown=sy,tn.Target=t3,tn.Divider=G9,tn.Sub=Df;const[zxt,iW]=G1(),[lDe,sDe]=G1();var r3={root:"m_7cda1cd6","root--default":"m_44da308b","root--contrast":"m_e3a01f8",label:"m_1e0e6180",remove:"m_ae386778",group:"m_1dcfd90b"};const cDe=(e,{gap:r},{size:n})=>({group:{"--pg-gap":r!==void 0?dr(r):dr(n,"pg-gap")}}),K9=ot((e,r)=>{const n=Me("PillGroup",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,size:d,disabled:u,attributes:p,...f}=n,g=iW()?.size||d||void 0,v=kt({name:"PillGroup",classes:r3,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:cDe,stylesCtx:{size:g},rootSelector:"group"});return y.jsx(lDe,{value:{size:g,disabled:u},children:y.jsx(Se,{ref:r,size:g,...v("group"),...f})})});K9.classes=r3,K9.displayName="@mantine/core/PillGroup";const dDe={variant:"default"},uDe=(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)}}),n3=ot((e,r)=>{const n=Me("Pill",dDe,e),{classNames:o,className:a,style:i,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,$=sDe(),z=iW(),j=w||$?.size||void 0,A=z?.variant==="filled"?"contrast":d||"default",R=kt({name:"Pill",classes:r3,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,vars:c,varsResolver:uDe,stylesCtx:{size:j}});return y.jsxs(Se,{component:"span",ref:r,variant:A,size:j,...R("root",{variant:A}),mod:[{"with-remove":p&&!x,disabled:x||$?.disabled},k],..._,children:[y.jsx("span",{...R("label"),children:u}),p&&y.jsx(ep,{variant:"transparent",radius:v,tabIndex:-1,"aria-hidden":!0,unstyled:s,...g,...R("remove",{className:g?.className,style:g?.style}),onMouseDown:T=>{T.preventDefault(),T.stopPropagation(),g?.onMouseDown?.(T)},onClick:T=>{T.stopPropagation(),f?.(),g?.onClick?.(T)}})]})});n3.classes=r3,n3.displayName="@mantine/core/Pill",n3.Group=K9;var lW={root:"m_f0824112",description:"m_57492dcc",section:"m_690090b5",label:"m_1f6ac4c4",body:"m_f07af9d2",children:"m_e17b862f",chevron:"m_1fd8a00b"};const pDe=(e,{variant:r,color:n,childrenOffset:o,autoContrast:a})=>{const i=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:r||"light",autoContrast:a});return{root:{"--nl-bg":n||r?i.background:void 0,"--nl-hover":n||r?i.hover:void 0,"--nl-color":n||r?i.color:void 0},children:{"--nl-offset":Hs(o)}}},Q9=Jn((e,r)=>{const n=Me("NavLink",null,e),{classNames:o,className:a,style:i,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:z,autoContrast:j,mod:A,attributes:R,onClick:T,onKeyDown:O,...P}=n,L=kt({name:"NavLink",props:n,classes:lW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:R,vars:c,varsResolver:pDe}),[H,M]=Us({value:d,defaultValue:u,finalValue:!1,onChange:p}),V=!!f,B=F=>{T?.(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=>{O?.(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(z9,{...L("chevron")}):x})]}),V&&y.jsx(Jq,{in:H,...L("collapse"),children:y.jsx("div",{...L("children"),children:f})})]})});Q9.classes=lW,Q9.displayName="@mantine/core/NavLink";var sW={root:"m_a513464",icon:"m_a4ceffb",loader:"m_b0920b15",body:"m_a49ed24",title:"m_3feedf16",description:"m_3d733a3a",closeButton:"m_919a4d88"};const hDe={withCloseButton:!0},fDe=(e,{radius:r,color:n})=>({root:{"--notification-radius":r===void 0?void 0:wn(r),"--notification-color":n?_a(n,e):void 0}}),dy=ot((e,r)=>{const n=Me("Notification",hDe,e),{className:o,color:a,radius:i,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:z,role:j,attributes:A,...R}=n,T=kt({name:"Notification",classes:sW,props:n,className:o,style:w,classNames:v,styles:x,unstyled:k,attributes:A,vars:_,varsResolver:fDe});return y.jsxs(Se,{...T("root"),mod:[{"data-with-icon":!!u||l,"data-with-border":c},$],ref:r,variant:C,role:j||"alert",...R,children:[u&&!l&&y.jsx("div",{...T("icon"),children:u}),l&&y.jsx(Rf,{size:28,color:a,...z,...T("loader")}),y.jsxs("div",{...T("body"),children:[d&&y.jsx("div",{...T("title"),children:d}),y.jsx(Se,{...T("description"),mod:{"data-with-title":!!d},children:p})]}),s&&y.jsx(ep,{iconSize:16,color:"gray",...g,unstyled:k,onClick:f,...T("closeButton")})]})});dy.classes=sW,dy.displayName="@mantine/core/Notification";const mDe={duration:100,transition:"fade"};function cW(e,r){return{...mDe,...r,...e}}function gDe({offset:e,position:r,defaultOpened:n}){const[o,a]=S.useState(n),i=S.useRef(null),{x:l,y:s,elements:c,refs:d,update:u,placement:p}=Nw({placement:r,middleware:[u9({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=i.current;w.addEventListener("mousemove",v);const x=Ys(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:a,boundaryRef:i,floating:d.setFloating}}var o3={tooltip:"m_1b3c8819",arrow:"m_f898399f"};const yDe={refProp:"ref",withinPortal:!0,offset:10,position:"right",zIndex:aw("popover")},vDe=(e,{radius:r,color:n})=>({tooltip:{"--tooltip-radius":r===void 0?void 0:wn(r),"--tooltip-bg":n?_a(n,e):void 0,"--tooltip-color":n?"var(--mantine-color-white)":void 0}}),J9=ot((e,r)=>{const n=Me("TooltipFloating",yDe,e),{children:o,refProp:a,withinPortal:i,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:z,portalProps:j,attributes:A,...R}=n,T=lo(),O=kt({name:"TooltipFloating",props:n,classes:o3,className:s,style:l,classNames:c,styles:d,unstyled:u,attributes:A,rootSelector:"tooltip",vars:z,varsResolver:vDe}),{handleMouseMove:P,x:L,y:H,opened:M,boundaryRef:V,floating:B,setOpened:F}=gDe({offset:v,position:w,defaultOpened:_});if(!Ki(o))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 q=$r(V,sw(o),r),G=o.props,U=Z=>{G.onMouseEnter?.(Z),P(Z),F(!0)},Y=Z=>{G.onMouseLeave?.(Z),F(!1)};return y.jsxs(y.Fragment,{children:[y.jsx(zf,{...j,withinPortal:i,children:y.jsx(Se,{...R,...O("tooltip",{style:{...X7(l,T),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(o,{...G,[a]:q,onMouseEnter:U,onMouseLeave:Y})]})});J9.classes=o3,J9.displayName="@mantine/core/TooltipFloating";const dW=S.createContext(!1),bDe=dW.Provider,xDe=()=>S.useContext(dW),wDe={openDelay:0,closeDelay:0};function np(e){const{openDelay:r,closeDelay:n,children:o}=Me("TooltipGroup",wDe,e);return y.jsx(bDe,{value:!0,children:y.jsx(qH,{delay:{open:r,close:n},children:o})})}np.displayName="@mantine/core/TooltipGroup",np.extend=e=>e;function kDe(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 _De(e){const r=kDe(e.middlewares),n=[TH(e.offset)];return r.shift&&n.push(u9(typeof r.shift=="boolean"?{padding:8}:{padding:8,...r.shift})),r.flip&&n.push(typeof r.flip=="boolean"?Dw():Dw(r.flip)),n.push(DH({element:e.arrowRef,padding:e.arrowOffset})),r.inline?n.push(typeof r.inline=="boolean"?ty():ty(r.inline)):e.inline&&n.push(ty()),n}function SDe(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,a=xDe(),i=ti(),l=S.useCallback($=>{n($),$&&x(i)},[i]),{x:s,y:c,context:d,refs:u,placement:p,middlewareData:{arrow:{x:f,y:g}={}}}=Nw({strategy:e.strategy,placement:e.position,open:o,onOpenChange:l,middleware:_De(e),whileElementsMounted:jw}),{delay:v,currentId:w,setCurrentId:x}=HH(d,{id:i}),{getReferenceProps:k,getFloatingProps:C}=GH([FH(d,{enabled:e.events?.hover,delay:a?v:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),sTe(d,{enabled:e.events?.focus,visibleOnly:!0}),YH(d,{role:"tooltip"}),WH(d,{enabled:typeof e.opened>"u"})]);Xu(()=>{e.onPositionChange?.(p)},[p]);const _=o&&w&&w!==i;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 uW={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:aw("popover"),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},EDe=(e,{radius:r,color:n,variant:o,autoContrast:a})=>{const i=e.variantColorResolver({theme:e,color:n||e.primaryColor,autoContrast:a,variant:o||"filled"});return{tooltip:{"--tooltip-radius":r===void 0?void 0:wn(r),"--tooltip-bg":n?i.background:void 0,"--tooltip-color":n?i.color:void 0}}},_n=ot((e,r)=>{const n=Me("Tooltip",uW,e),{children:o,position:a,refProp:i,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:z,arrowOffset:j,arrowRadius:A,arrowPosition:R,offset:T,transitionProps:O,multiline:P,events:L,zIndex:H,disabled:M,positionDependencies:V,onClick:B,onMouseEnter:F,onMouseLeave:q,inline:G,variant:U,keepMounted:Y,vars:Z,portalProps:I,mod:W,floatingStrategy:K,middlewares:Q,autoContrast:ae,attributes:te,target:re,...ue}=Me("Tooltip",uW,n),{dir:_e}=dd(),ce=S.useRef(null),pe=SDe({position:hU(_e,a),closeDelay:c,openDelay:s,onPositionChange:d,opened:u,defaultOpened:p,events:L,arrowRef:ce,arrowOffset:j,offset:typeof T=="number"?T+($?z/2:0):T,positionDependencies:[...V,re??o],inline:G,strategy:K,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:o3,className:_,style:C,classNames:w,styles:x,unstyled:k,attributes:te,rootSelector:"tooltip",vars:Z,varsResolver:EDe});if(!re&&!Ki(o))return null;if(re){const Le=cW(O,{duration:100,transition:"fade"});return y.jsx(y.Fragment,{children:y.jsx(zf,{...I,withinPortal:f,children:y.jsx(pd,{...Le,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:Le.duration,children:St=>y.jsxs(Se,{...ue,"data-fixed":K==="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(Iw,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:z,arrowOffset:j,arrowRadius:A,arrowPosition:R,...xe("arrow")})]})})})})}const De=o,Be=De.props,Je=$r(pe.reference,sw(De),r),st=cW(O,{duration:100,transition:"fade"});return y.jsxs(y.Fragment,{children:[y.jsx(zf,{...I,withinPortal:f,children:y.jsx(pd,{...st,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:st.duration,children:Le=>y.jsxs(Se,{...ue,"data-fixed":K==="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(Iw,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:z,arrowOffset:j,arrowRadius:A,arrowPosition:R,...xe("arrow")})]})})}),S.cloneElement(De,pe.getReferenceProps({onClick:B,onMouseEnter:F,onMouseLeave:q,onMouseMove:n.onMouseMove,onPointerDown:n.onPointerDown,onPointerEnter:n.onPointerEnter,className:Qi(_,Be.className),...Be,[i]:Je}))]})});_n.classes=o3,_n.displayName="@mantine/core/Tooltip",_n.Floating=J9,_n.Group=np;var pW={root:"m_cf365364",indicator:"m_9e182ccd",label:"m_1738fcb2",input:"m_1714d588",control:"m_69686b9b",innerLabel:"m_78882f40"};const CDe={withItemsBorders:!0},$De=(e,{radius:r,color:n,transitionDuration:o,size:a,transitionTimingFunction:i})=>({root:{"--sc-radius":r===void 0?void 0:wn(r),"--sc-color":n?_a(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":i,"--sc-padding":dr(a,"sc-padding"),"--sc-font-size":Eo(a)}}),Mf=ot((e,r)=>{const n=Me("SegmentedControl",CDe,e),{classNames:o,className:a,style:i,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:z,transitionTimingFunction:j,variant:A,autoContrast:R,withItemsBorders:T,mod:O,attributes:P,...L}=n,H=kt({name:"SegmentedControl",props:n,classes:pW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:$De}),M=lo(),V=d.map(re=>typeof re=="string"?{label:re,value:re}:re),B=dze(),[F,q]=S.useState(z7()),[G,U]=S.useState(null),[Y,Z]=S.useState({}),I=(re,ue)=>{Y[ue]=re,Z(Y)},[W,K]=Us({value:u,defaultValue:p,finalValue:Array.isArray(d)?V.find(re=>!re.disabled)?.value??d[0]?.value??null:null,onChange:f}),Q=ti(v),ae=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&&K(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=>I(ue,re.value),__vars:{"--sc-label-color":$!==void 0?F7({color:$,theme:M,autoContrast:R}):void 0},key:`${re.value}-label`},y.jsx("span",{...H("innerLabel"),children:re.label})))),te=$r(r,re=>U(re));return eze(()=>{q(z7())},[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":T},O],...L,role:"radiogroup","data-disabled":w,children:[typeof W=="string"&&y.jsx(Gw,{target:Y[W],parent:G,component:"span",transitionDuration:"var(--sc-transition-duration)",...H("indicator")},F),ae]})});Mf.classes=pW,Mf.displayName="@mantine/core/SegmentedControl";const[zDe,a3]=ei("SliderProvider was not found in tree"),hW=S.forwardRef(({size:e,disabled:r,variant:n,color:o,thumbSize:a,radius:i,...l},s)=>{const{getStyles:c}=a3();return y.jsx(Se,{tabIndex:-1,variant:n,size:e,ref:s,...c("root"),...l})});hW.displayName="@mantine/core/SliderRoot";const fW=S.forwardRef(({max:e,min:r,value:n,position:o,label:a,dragging:i,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}=a3(),[_,$]=S.useState(!1),z=d||i||_||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:i,disabled:x},onFocus:j=>{$(!0),typeof p=="function"&&p(j)},onBlur:j=>{$(!1),typeof f=="function"&&f(j)},onTouchStart:l,onMouseDown:l,onKeyDownCapture:s,onClick:j=>j.stopPropagation(),children:[w,y.jsx(pd,{mounted:a!=null&&!!z,transition:"fade",duration:0,...c,children:j=>y.jsx("div",{...C("label",{style:j}),children:a})})]})});fW.displayName="@mantine/core/SliderThumb";function mW({value:e,min:r,max:n}){const o=(e-r)/(n-r)*100;return Math.min(Math.max(o,0),100)}function RDe({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 gW({marks:e,min:r,max:n,disabled:o,value:a,offset:i,inverted:l}){const{getStyles:s}=a3();if(!e)return null;const c=e.map((d,u)=>S.createElement(Se,{...s("markWrapper"),__vars:{"--mark-offset":`${mW({value:d.value,min:r,max:n})}%`},key:u},y.jsx(Se,{...s("mark"),mod:{filled:RDe({mark:d,value:a,offset:i,inverted:l}),disabled:o}}),d.label&&y.jsx("div",{...s("markLabel"),children:d.label})));return y.jsx("div",{children:c})}gW.displayName="@mantine/core/SliderMarks";function yW({filled:e,children:r,offset:n,disabled:o,marksOffset:a,inverted:i,containerProps:l,...s}){const{getStyles:c}=a3();return y.jsx(Se,{...c("trackContainer"),mod:{disabled:o},...l,children:y.jsxs(Se,{...c("track"),mod:{inverted:i,disabled:o},children:[y.jsx(Se,{mod:{inverted:i,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(gW,{...s,offset:a,disabled:o,inverted:i})]})})}yW.displayName="@mantine/core/SliderTrack";function jDe({value:e,containerWidth:r,min:n,max:o,step:a,precision:i}){const l=(r?Math.min(Math.max(e,0),r)/r:e)*(o-n),s=(l!==0?Math.round(l/a)*a:0)+n,c=Math.max(s,n);return i!==void 0?Number(c.toFixed(i)):c}function i3(e,r){return parseFloat(e.toFixed(r))}function TDe(e){if(!e)return 0;const r=e.toString().split(".");return r.length>1?r[1].length:0}function eS(e,r){const n=[...r].sort((o,a)=>o.value-a.value).find(o=>o.value>e);return n?n.value:e}function tS(e,r){const n=[...r].sort((o,a)=>a.value-o.value).find(o=>o.valuen.value-o.value);return r.length>0?r[0].value:0}function bW(e){const r=[...e].sort((n,o)=>n.value-o.value);return r.length>0?r[r.length-1].value:100}var xW={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 ADe={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"},DDe=(e,{size:r,color:n,thumbSize:o,radius:a})=>({root:{"--slider-size":dr(r,"slider-size"),"--slider-color":n?_a(n,e):void 0,"--slider-radius":a===void 0?void 0:wn(a),"--slider-thumb-size":o!==void 0?$e(o):"calc(var(--slider-size) * 2)"}}),rS=ot((e,r)=>{const n=Me("Slider",ADe,e),{classNames:o,styles:a,value:i,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:z,thumbChildren:j,disabled:A,unstyled:R,scale:T,inverted:O,className:P,style:L,vars:H,hiddenInputProps:M,restrictToMarks:V,thumbProps:B,attributes:F,...q}=n,G=kt({name:"Slider",props:n,classes:xW,classNames:o,className:P,styles:a,style:L,attributes:F,vars:H,varsResolver:DDe,unstyled:R}),{dir:U}=dd(),[Y,Z]=S.useState(!1),[I,W]=Us({value:typeof i=="number"?ad(i,d,u):i,defaultValue:typeof v=="number"?ad(v,d,u):v,finalValue:ad(0,d,u),onChange:l}),K=S.useRef(I),Q=S.useRef(s);S.useEffect(()=>{Q.current=s},[s]);const ae=S.useRef(null),te=S.useRef(null),[re,ue]=p||[d,u],_e=mW({value:I,min:re,max:ue}),ce=T(I),pe=typeof k=="function"?k(ce):k,xe=g??TDe(f),De=S.useCallback(({x:Ve})=>{if(!A){const qe=jDe({value:Ve,min:re,max:ue,step:f,precision:xe}),Xe=ad(qe,d,u);W(V&&x?.length?Aq(Xe,x.map(Ot=>Ot.value)):Xe),K.current=Xe}},[A,d,u,re,ue,f,xe,W,x,V]),Be=S.useCallback(()=>{if(!A&&Q.current){const Ve=V&&x?.length?Aq(K.current,x.map(qe=>qe.value)):K.current;Q.current(Ve)}},[A,x,V]),{ref:Je,active:st}=Sq(De,{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=eS(I,x);W(Xe),Le(Xe);break}const qe=i3(Math.min(Math.max(I+f,d),u),xe);W(qe),Le(qe);break}case"ArrowRight":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?tS(I,x):eS(I,x);W(Xe),Le(Xe);break}const qe=i3(Math.min(Math.max(U==="rtl"?I-f:I+f,d),u),xe);W(qe),Le(qe);break}case"ArrowDown":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=tS(I,x);W(Xe),Le(Xe);break}const qe=i3(Math.min(Math.max(I-f,d),u),xe);W(qe),Le(qe);break}case"ArrowLeft":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?eS(I,x):tS(I,x);W(Xe),Le(Xe);break}const qe=i3(Math.min(Math.max(U==="rtl"?I+f:I-f,d),u),xe);W(qe),Le(qe);break}case"Home":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(vW(x)),Le(vW(x));break}W(d),Le(d);break}case"End":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(bW(x)),Le(bW(x));break}W(u),Le(u);break}}};return y.jsx(zDe,{value:{getStyles:G},children:y.jsxs(hW,{...q,ref:$r(r,ae),onKeyDownCapture:St,onMouseDownCapture:()=>ae.current?.focus(),size:c,disabled:A,children:[y.jsx(yW,{inverted:O,offset:0,filled:_e,marks:x,min:re,max:ue,value:ce,disabled:A,containerProps:{ref:Je,onMouseEnter:z?()=>Z(!0):void 0,onMouseLeave:z?()=>Z(!1):void 0},children:y.jsx(fW,{max:ue,min:re,value:ce,position:_e,dragging:st,label:pe,ref:te,labelTransitionProps:C,labelAlwaysOn:_,thumbLabel:$,showLabelOnHover:z,isHovered:Y,disabled:A,...B,children:j})}),y.jsx("input",{type:"hidden",name:w,value:ce,...M})]})})});rS.classes=xW,rS.displayName="@mantine/core/Slider";const nS=ot((e,r)=>{const{w:n,h:o,miw:a,mih:i,...l}=Me("Space",null,e);return y.jsx(Se,{ref:r,...l,w:n,miw:a??n,h:o,mih:i??o})});nS.displayName="@mantine/core/Space";var wW={root:"m_6d731127"};const MDe={gap:"md",align:"stretch",justify:"flex-start"},NDe=(e,{gap:r,align:n,justify:o})=>({root:{"--stack-gap":Hs(r),"--stack-align":n,"--stack-justify":o}}),Io=ot((e,r)=>{const n=Me("Stack",MDe,e),{classNames:o,className:a,style:i,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:wW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:NDe});return y.jsx(Se,{ref:r,...w("root"),variant:f,...v})});Io.classes=wW,Io.displayName="@mantine/core/Stack";const[PDe,oS]=ei("Tabs component was not found in the tree");var uy={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 py=ot((e,r)=>{const n=Me("TabsList",null,e),{children:o,className:a,grow:i,justify:l,classNames:s,styles:c,style:d,mod:u,...p}=n,f=oS();return y.jsx(Se,{...p,...f.getStyles("list",{className:a,style:d,classNames:s,styles:c,props:n,variant:f.variant}),ref:r,role:"tablist",variant:f.variant,mod:[{grow:i,orientation:f.orientation,placement:f.orientation==="vertical"&&f.placement,inverted:f.inverted},u],"aria-orientation":f.orientation,__vars:{"--tabs-justify":l},children:o})});py.classes=uy,py.displayName="@mantine/core/TabsList";const Js=ot((e,r)=>{const n=Me("TabsPanel",null,e),{children:o,className:a,value:i,classNames:l,styles:s,style:c,mod:d,keepMounted:u,...p}=n,f=oS(),g=f.value===i,v=f.keepMounted||u||g?o:null;return y.jsx(Se,{...f.getStyles("panel",{className:a,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(i),"aria-labelledby":f.getTabId(i),...p,children:v})});Js.classes=uy,Js.displayName="@mantine/core/TabsPanel";const Nf=ot((e,r)=>{const n=Me("TabsTab",null,e),{className:o,children:a,rightSection:i,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:$}=dd(),z=oS(),j=s===z.value,A=T=>{z.onChange(z.allowTabDeactivation&&s===z.value?null:s),c?.(T)},R={classNames:g,styles:v,props:n};return y.jsxs(pr,{...z.getStyles("tab",{className:o,style:f,variant:z.variant,...R}),disabled:u,unstyled:z.unstyled,variant:z.variant,mod:[{active:j,disabled:u,orientation:z.orientation,inverted:z.inverted,placement:z.orientation==="vertical"&&z.placement},x],ref:r,role:"tab",id:z.getTabId(s),"aria-selected":j,tabIndex:k!==void 0?k:j||z.value===null?0:-1,"aria-controls":z.getPanelId(s),onClick:A,__vars:{"--tabs-color":p?_a(p,_):void 0},onKeyDown:Y1({siblingSelector:'[role="tab"]',parentSelector:'[role="tablist"]',activateOnFocus:z.activateTabWithKeyboard,loop:z.loop,orientation:z.orientation||"horizontal",dir:$,onKeyDown:d}),...C,children:[l&&y.jsx("span",{...z.getStyles("tabSection",R),"data-position":"left",children:l}),a&&y.jsx("span",{...z.getStyles("tabLabel",R),children:a}),i&&y.jsx("span",{...z.getStyles("tabSection",R),"data-position":"right",children:i})]})});Nf.classes=uy,Nf.displayName="@mantine/core/TabsTab";const kW="Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value",BDe={keepMounted:!0,orientation:"horizontal",loop:!0,activateTabWithKeyboard:!0,variant:"default",placement:"left"},ODe=(e,{radius:r,color:n,autoContrast:o})=>({root:{"--tabs-radius":wn(r),"--tabs-color":_a(n,e),"--tabs-text-color":rRe(o,e)?F7({color:n,theme:e,autoContrast:o}):void 0}}),op=ot((e,r)=>{const n=Me("Tabs",BDe,e),{defaultValue:o,value:a,onChange:i,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:z,style:j,vars:A,autoContrast:R,mod:T,attributes:O,...P}=n,L=ti(d),[H,M]=Us({value:a,defaultValue:o,finalValue:null,onChange:i}),V=kt({name:"Tabs",props:n,classes:uy,className:z,style:j,classNames:C,styles:_,unstyled:$,attributes:O,vars:A,varsResolver:ODe});return y.jsx(PDe,{value:{placement:x,value:H,orientation:l,id:L,loop:c,activateTabWithKeyboard:u,getTabId:uq(`${L}-tab`,kW),getPanelId:uq(`${L}-panel`,kW),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},T],...V("root"),...P,children:s})})});op.classes=uy,op.displayName="@mantine/core/Tabs",op.Tab=Nf,op.Panel=Js,op.List=py;var _W={root:"m_7341320d"};const IDe=(e,{size:r,radius:n,variant:o,gradient:a,color:i,autoContrast:l})=>{const s=e.variantColorResolver({color:i||e.primaryColor,theme:e,gradient:a,variant:o||"filled",autoContrast:l});return{root:{"--ti-size":dr(r,"ti-size"),"--ti-radius":n===void 0?void 0:wn(n),"--ti-bg":i||o?s.background:void 0,"--ti-color":i||o?s.color:void 0,"--ti-bd":i||o?s.border:void 0}}},$a=ot((e,r)=>{const n=Me("ThemeIcon",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,autoContrast:d,attributes:u,...p}=n,f=kt({name:"ThemeIcon",classes:_W,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,vars:c,varsResolver:IDe});return y.jsx(Se,{ref:r,...f("root"),...p})});$a.classes=_W,$a.displayName="@mantine/core/ThemeIcon";const LDe=["h1","h2","h3","h4","h5","h6"],FDe=["xs","sm","md","lg","xl"];function VDe(e,r){const n=r!==void 0?r:`h${e}`;return LDe.includes(n)?{fontSize:`var(--mantine-${n}-font-size)`,fontWeight:`var(--mantine-${n}-font-weight)`,lineHeight:`var(--mantine-${n}-line-height)`}:FDe.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 SW={root:"m_8a5d1357"};const qDe={order:1},HDe=(e,{order:r,size:n,lineClamp:o,textWrap:a})=>{const i=VDe(r||1,n);return{root:{"--title-fw":i.fontWeight,"--title-lh":i.lineHeight,"--title-fz":i.fontSize,"--title-line-clamp":typeof o=="number"?o.toString():void 0,"--title-text-wrap":a}}},ap=ot((e,r)=>{const n=Me("Title",qDe,e),{classNames:o,className:a,style:i,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:SW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:d,varsResolver:HDe});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});ap.classes=SW,ap.displayName="@mantine/core/Title";function EW(e,r,n){if(!e||!r)return[];const o=n.indexOf(e),a=n.indexOf(r),i=Math.min(o,a),l=Math.max(o,a);return n.slice(i,l+1)}function aS({node:e,getStyles:r,rootIndex:n,controller:o,expandOnClick:a,selectOnClick:i,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(aS,{node:_,flatValues:d,getStyles:r,rootIndex:void 0,level:s+1,controller:o,expandOnClick:a,isSubtree:!0,renderNode:c,selectOnClick:i,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&&mf(_.currentTarget,"[role=treeitem]")?.focus()),_.nativeEvent.code==="ArrowDown"||_.nativeEvent.code==="ArrowUp"){const $=mf(_.currentTarget,"[data-tree-root]");if(!$)return;_.stopPropagation(),_.preventDefault();const z=Array.from($.querySelectorAll("[role=treeitem]")),j=z.indexOf(_.currentTarget);if(j===-1)return;const A=_.nativeEvent.code==="ArrowDown"?j+1:j-1;if(z[A]?.focus(),_.shiftKey){const R=z[A];R&&o.setSelectedState(EW(o.anchorNode,R.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(EW(o.anchorNode,e.value,d)),g.current?.focus()):(a&&o.toggleExpanded(e.value),i&&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})]})}aS.displayName="@mantine/core/TreeNode";function l3(e,r,n=[]){const o=[];for(const a of e)if(Array.isArray(a.children)&&a.children.length>0){const i=l3(a.children,r,n);if(i.currentTreeChecked.length===a.children.length){const l=i.currentTreeChecked.every(c=>c.checked),s={checked:l,indeterminate:!l,value:a.value,hasChildren:!0};o.push(s),n.push(s)}else if(i.currentTreeChecked.length>0){const l={checked:!1,indeterminate:!0,value:a.value,hasChildren:!0};o.push(l),n.push(l)}}else if(r.includes(a.value)){const i={checked:!0,indeterminate:!1,value:a.value,hasChildren:!1};o.push(i),n.push(i)}return{result:n,currentTreeChecked:o}}function CW(e,r){for(const n of r){if(n.value===e)return n;if(Array.isArray(n.children)){const o=CW(e,n.children);if(o)return o}}return null}function s3(e,r,n=[]){const o=CW(e,r);return o?!Array.isArray(o.children)||o.children.length===0?[o.value]:(o.children.forEach(a=>{Array.isArray(a.children)&&a.children.length>0?s3(a.value,r,n):n.push(a.value)}),n):n}function $W(e){return e.reduce((r,n)=>(Array.isArray(n.children)&&n.children.length>0?r.push(...$W(n.children)):r.push(n.value),r),[])}function UDe(e,r,n){return n.length===0?!1:n.includes(e)?!0:l3(r,n).result.some(o=>o.value===e&&o.checked)}const WDe=Tq(UDe);function GDe(e,r,n){return n.length===0?!1:l3(r,n).result.some(o=>o.value===e&&o.indeterminate)}const YDe=Tq(GDe);function zW(e,r,n,o={}){return r.forEach(a=>{o[a.value]=a.value in e?e[a.value]:a.value===n,Array.isArray(a.children)&&zW(e,a.children,n,o)}),o}function XDe(e,r){const n=[];return e.forEach(o=>n.push(...s3(o,r))),Array.from(new Set(n))}function hy({initialSelectedState:e=[],initialCheckedState:r=[],initialExpandedState:n={},multiple:o=!1,onNodeCollapse:a,onNodeExpand:i}={}){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=>zW(F,B,u)),g(F=>XDe(F,B)),s(B)},[u,f]),_=S.useCallback(B=>{d(F=>{const q={...F,[B]:!F[B]};return q[B]?i?.(B):a?.(B),q})},[a,i]),$=S.useCallback(B=>{d(F=>(F[B]!==!1&&a?.(B),{...F,[B]:!1}))},[a]),z=S.useCallback(B=>{d(F=>(F[B]!==!0&&i?.(B),{...F,[B]:!0}))},[i]),j=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})},[]),R=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])),[]),T=S.useCallback(B=>{w(B),p(F=>o?F.includes(B)?F:[...F,B]:[B])},[]),O=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=s3(B,l);g(q=>Array.from(new Set([...q,...F])))},[l]),H=S.useCallback(B=>{const F=s3(B,l);g(q=>q.filter(G=>!F.includes(G)))},[l]),M=S.useCallback(()=>{g(()=>$W(l))},[l]),V=S.useCallback(()=>{g([])},[]);return{multiple:o,expandedState:c,selectedState:u,checkedState:f,anchorNode:v,initialize:C,toggleExpanded:_,collapse:$,expand:z,expandAllNodes:j,collapseAllNodes:A,setExpandedState:d,checkNode:L,uncheckNode:H,checkAllNodes:M,uncheckAllNodes:V,setCheckedState:g,toggleSelected:R,select:T,deselect:O,clearSelected:P,setSelectedState:p,hoveredNode:x,setHoveredNode:k,getCheckedNodes:()=>l3(l,f).result,isNodeChecked:B=>WDe(B,l,f),isNodeIndeterminate:B=>YDe(B,l,f)}}var RW={root:"m_f698e191",subtree:"m_75f3ecf",node:"m_f6970eb1",label:"m_dc283425"};function jW(e){return e.reduce((r,n)=>(r.push(n.value),n.children&&r.push(...jW(n.children)),r),[])}const ZDe={expandOnClick:!0,allowRangeSelection:!0,expandOnSpace:!0},KDe=(e,{levelOffset:r})=>({root:{"--level-offset":Hs(r)}}),Pf=ot((e,r)=>{const n=Me("Tree",ZDe,e),{classNames:o,className:a,style:i,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,z=hy(),j=p||z,A=kt({name:"Tree",classes:RW,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:KDe}),R=mq(()=>v&&j.clearSelected()),T=$r(r,R),O=S.useMemo(()=>jW(d),[d]);S.useEffect(()=>{j.initialize(d)},[d]);const P=d.map((L,H)=>y.jsx(aS,{node:L,getStyles:A,rootIndex:H,expandOnClick:u,selectOnClick:g,controller:j,renderNode:f,flatValues:O,allowRangeSelection:w,expandOnSpace:x,checkOnSpace:C},L.value));return y.jsx(Se,{component:"ul",ref:T,...A("root"),...$,role:"tree","aria-multiselectable":j.multiple,"data-tree-root":!0,children:P})});Pf.displayName="@mantine/core/Tree",Pf.classes=RW;const iS=S.createContext(null);function TW(){const e=S.useContext(iS);if(!e)throw new Error("useRootContainer must be used within a RootContainer");return e}function QDe(){return TW().ref}function JDe(){return TW().ref.current}const AW=S.createContext(null);function eMe(){const e=S.useContext(AW);return e===null&&console.warn("ReduceGraphicsMode is not provided"),e??!1}const[tMe,rMe]=ei("PanningAtomSafeCtx is not provided");function nMe({id:e,className:r,reduceGraphics:n=!1,children:o}){const[a,i]=S.useState(!1),l=S.useRef(null),s=S.useRef(null);s.current||(s.current=ICe(!1)),z8(()=>{i(!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(tMe,{value:s.current,children:y.jsx(AW.Provider,{value:n,children:y.jsx("div",{id:e,className:Ge("likec4-root",r),ref:l,...n&&{"data-likec4-reduced-graphics":!0},children:a&&!!c.ref.current&&y.jsx(iS.Provider,{value:c,children:o})})})})}const fy=S.createContext(null),lS=S.createContext(null);function oMe(){return S.useContext(fy)}function Lo(){const e=S.useContext(fy);if(!e)throw new Error("LikeC4Model not found. Make sure you have LikeC4ModelProvider.");return e}function aMe(){const e=Lo(),[r,n]=S.useState(e.$data.specification);return S.useEffect(()=>{n(o=>tt(o,e.$data.specification)?o:e.$data.specification)},[e]),r}const DW=S.createContext({}),iMe=gke,lMe=e=>{const r=e.color;if(WO(e))return` +`}function Fq({cssVariablesSelector:e,deduplicateCssVariables:r}){const n=lo(),o=Zu(),a=gze(),i=Bze({theme:n,generator:a}),l=e===":root"&&r,s=l?Oze(i):i,c=Nze(s,e);return c?y.jsx("style",{"data-mantine-styles":!0,nonce:o?.(),dangerouslySetInnerHTML:{__html:`${c}${l?"":Ize(e)}`}}):null}Fq.displayName="@mantine/CssVariables";function xf(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 Lze({manager:e,defaultColorScheme:r,getRootElement:n,forceColorScheme:o}){const a=S.useRef(null),[i,l]=S.useState(()=>e.get(r)),s=o||i,c=S.useCallback(u=>{o||(xf(u,n),l(u),e.set(u))},[e.set,s,o]),d=S.useCallback(()=>{l(r),xf(r,n),e.clear()},[e.clear,r]);return S.useEffect(()=>(e.subscribe(c),e.unsubscribe),[e.subscribe,e.unsubscribe]),Z1(()=>{xf(e.get(r),n)},[]),S.useEffect(()=>{if(o)return xf(o,n),()=>{};o===void 0&&xf(i,n),typeof window<"u"&&"matchMedia"in window&&(a.current=window.matchMedia("(prefers-color-scheme: dark)"));const u=p=>{i==="auto"&&xf(p.matches?"dark":"light",n)};return a.current?.addEventListener("change",u),()=>a.current?.removeEventListener("change",u)},[i,o]),{colorScheme:s,setColorScheme:c,clearColorScheme:d}}function Fze({respectReducedMotion:e,getRootElement:r}){Z1(()=>{e&&r()?.setAttribute("data-respect-reduced-motion","true")},[e])}function q7({theme:e,children:r,getStyleNonce:n,withStaticClasses:o=!0,withGlobalClasses:a=!0,deduplicateCssVariables:i=!0,withCssVariables:l=!0,cssVariablesSelector:s=":root",classNamesPrefix:c="mantine",colorSchemeManager:d=jze(),defaultColorScheme:u="light",getRootElement:p=()=>document.documentElement,cssVariablesResolver:f,forceColorScheme:g,stylesTransform:v,env:w}){const{colorScheme:x,setColorScheme:k,clearColorScheme:C}=Lze({defaultColorScheme:u,forceColorScheme:g,manager:d,getRootElement:p});return Fze({respectReducedMotion:e?.respectReducedMotion||!1,getRootElement:p}),y.jsx(pw.Provider,{value:{colorScheme:x,setColorScheme:k,clearColorScheme:C,getRootElement:p,classNamesPrefix:c,getStyleNonce:n,cssVariablesResolver:f,cssVariablesSelector:s,withStaticClasses:o,stylesTransform:v,env:w},children:y.jsxs(Oq,{theme:e,children:[l&&y.jsx(Fq,{cssVariablesSelector:s,deduplicateCssVariables:i}),a&&y.jsx(Mze,{}),r]})})}q7.displayName="@mantine/core/MantineProvider";function H7({classNames:e,styles:r,props:n,stylesCtx:o}){const a=lo();return{resolvedClassNames:dw({theme:a,classNames:e,props:n,stylesCtx:o||void 0}),resolvedStyles:uw({theme:a,styles:r,props:n,stylesCtx:o||void 0})}}const Vze={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function qze({theme:e,options:r,unstyled:n}){return Qi(r?.focusable&&!n&&(e.focusClassName||Vze[e.focusRing]),r?.active&&!n&&e.activeClassName)}function Hze({selector:e,stylesCtx:r,options:n,props:o,theme:a}){return dw({theme:a,classNames:n?.classNames,props:n?.props||o,stylesCtx:r})[e]}function Vq({selector:e,stylesCtx:r,theme:n,classNames:o,props:a}){return dw({theme:n,classNames:o,props:a,stylesCtx:r})[e]}function Uze({rootSelector:e,selector:r,className:n}){return e===r?n:void 0}function Wze({selector:e,classes:r,unstyled:n}){return n?void 0:r[e]}function Gze({themeName:e,classNamesPrefix:r,selector:n,withStaticClass:o}){return o===!1?[]:e.map(a=>`${r}-${a}-${n}`)}function Yze({themeName:e,theme:r,selector:n,props:o,stylesCtx:a}){return e.map(i=>dw({theme:r,classNames:r.components[i]?.classNames,props:o,stylesCtx:a})?.[n])}function Xze({options:e,classes:r,selector:n,unstyled:o}){return e?.variant&&!o?r[`${n}--${e.variant}`]:void 0}function Zze({theme:e,options:r,themeName:n,selector:o,classNamesPrefix:a,classNames:i,classes:l,unstyled:s,className:c,rootSelector:d,props:u,stylesCtx:p,withStaticClasses:f,headless:g,transformedStyles:v}){return Qi(qze({theme:e,options:r,unstyled:s||g}),Yze({theme:e,themeName:n,selector:o,props:u,stylesCtx:p}),Xze({options:r,classes:l,selector:o,unstyled:s}),Vq({selector:o,stylesCtx:p,theme:e,classNames:i,props:u}),Vq({selector:o,stylesCtx:p,theme:e,classNames:v,props:u}),Hze({selector:o,stylesCtx:p,options:r,props:u,theme:e}),Uze({rootSelector:d,selector:o,className:c}),Wze({selector:o,classes:l,unstyled:s||g}),f&&!g&&Gze({themeName:n,classNamesPrefix:a,selector:o,withStaticClass:r?.withStaticClass}),r?.className)}function Kze({theme:e,themeName:r,props:n,stylesCtx:o,selector:a}){return r.map(i=>uw({theme:e,styles:e.components[i]?.styles,props:n,stylesCtx:o})[a]).reduce((i,l)=>({...i,...l}),{})}function U7({style:e,theme:r}){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...U7({style:o,theme:r})}),{}):typeof e=="function"?e(r):e??{}}function Qze(e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{r[o]={...r[o],...ff(n[o])}}),r),{})}function Jze({vars:e,varsResolver:r,theme:n,props:o,stylesCtx:a,selector:i,themeName:l,headless:s}){return Qze([s?{}:r?.(n,o,a),...l.map(c=>n.components?.[c]?.vars?.(n,o,a)),e?.(n,o,a)])?.[i]}function eRe({theme:e,themeName:r,selector:n,options:o,props:a,stylesCtx:i,rootSelector:l,styles:s,style:c,vars:d,varsResolver:u,headless:p,withStylesTransform:f}){return{...!f&&Kze({theme:e,themeName:r,props:a,stylesCtx:i,selector:n}),...!f&&uw({theme:e,styles:s,props:a,stylesCtx:i})[n],...!f&&uw({theme:e,styles:o?.styles,props:o?.props||a,stylesCtx:i})[n],...Jze({theme:e,props:a,stylesCtx:i,vars:d,varsResolver:u,selector:n,themeName:r,headless:p}),...l===n?U7({style:c,theme:e}):null,...U7({style:o?.style,theme:e})}}function tRe({props:e,stylesCtx:r,themeName:n}){const o=lo(),a=wze()?.();return{getTransformedStyles:i=>a?[...i.map(l=>a(l,{props:e,theme:o,ctx:r})),...n.map(l=>a(o.components[l]?.styles,{props:e,theme:o,ctx:r}))].filter(Boolean):[],withStylesTransform:!!a}}function kt({name:e,classes:r,props:n,stylesCtx:o,className:a,style:i,rootSelector:l="root",unstyled:s,classNames:c,styles:d,vars:u,varsResolver:p,attributes:f}){const g=lo(),v=yze(),w=vze(),x=bze(),k=(Array.isArray(e)?e:[e]).filter($=>$),{withStylesTransform:C,getTransformedStyles:_}=tRe({props:n,stylesCtx:o,themeName:k});return($,z)=>({className:Zze({theme:g,options:z,themeName:k,selector:$,classNamesPrefix:v,classNames:c,classes:r,unstyled:s,className:a,rootSelector:l,props:n,stylesCtx:o,withStaticClasses:w,headless:x,transformedStyles:_([z?.styles,d])}),style:eRe({theme:g,themeName:k,selector:$,options:z,props:n,stylesCtx:o,rootSelector:l,styles:d,style:i,vars:u,varsResolver:p,headless:x,withStylesTransform:C}),...f?.[$]})}function rRe(e,r){return typeof e=="boolean"?e:r.autoContrast}function qq(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 nRe({keepTransitions:e}={}){const r=S.useRef(pq),n=S.useRef(-1),o=S.useContext(pw),a=Zu(),i=S.useRef(a?.());if(!o)throw new Error("[@mantine/core] MantineProvider was not found in tree");const l=p=>{o.setColorScheme(p),r.current=e?()=>{}:qq(i.current),window.clearTimeout(n.current),n.current=window.setTimeout(()=>{r.current?.()},10)},s=()=>{o.clearColorScheme(),r.current=e?()=>{}:qq(i.current),window.clearTimeout(n.current),n.current=window.setTimeout(()=>{r.current?.()},10)},c=yq("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(),a=o.components[e]?.defaultProps,i=typeof a=="function"?a(o):a;return{...r,...i,...ff(n)}}function W7(e){return So(e).reduce((r,n)=>e[n]!==void 0?`${r}${k$e(n)}:${e[n]};`:r,"").trim()}function oRe({selector:e,styles:r,media:n,container:o}){const a=r?W7(r):"",i=Array.isArray(n)?n.map(s=>`@media${s.query}{${e}{${W7(s.styles)}}}`):[],l=Array.isArray(o)?o.map(s=>`@container ${s.query}{${e}{${W7(s.styles)}}}`):[];return`${a?`${e}{${a}}`:""}${i.join("")}${l.join("")}`.trim()}function gw(e){const r=Zu();return y.jsx("style",{"data-mantine-styles":"inline",nonce:r?.(),dangerouslySetInnerHTML:{__html:oRe(e)}})}function Hq(e){const{m:r,mx:n,my:o,mt:a,mb:i,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:z,c:j,opacity:A,ff:R,fz:T,fw:O,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:I,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,hiddenFrom:De,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le,...St}=e;return{styleProps:ff({m:r,mx:n,my:o,mt:a,mb:i,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:z,c:j,opacity:A,ff:R,fz:T,fw:O,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:I,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,bdrs:$,hiddenFrom:De,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le}),rest:St}}const aRe={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 G7(e,r){const n=cd({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 iRe(e,r){const n=cd({color:e,theme:r});return n.isThemeColor&&n.shade===void 0?`var(--mantine-color-${n.color}-text)`:G7(e,r)}function lRe(e,r){if(typeof e=="number")return $e(e);if(typeof e=="string"){const[n,o,...a]=e.split(" ").filter(l=>l.trim()!=="");let i=`${$e(n)}`;return o&&(i+=` ${o}`),a.length>0&&(i+=` ${G7(a.join(" "),r)}`),i.trim()}return e}const Uq={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 sRe(e){return typeof e=="string"&&e in Uq?Uq[e]:e}const cRe=["h1","h2","h3","h4","h5","h6"];function dRe(e,r){return typeof e=="string"&&e in r.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&cRe.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?$e(e):e}function uRe(e){return e}const pRe=["h1","h2","h3","h4","h5","h6"];function hRe(e,r){return typeof e=="string"&&e in r.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&pRe.includes(e)?`var(--mantine-${e}-line-height)`:e}function fRe(e,r){return typeof e=="string"&&e in r.radius?`var(--mantine-radius-${e})`:typeof e=="number"||typeof e=="string"?$e(e):e}function mRe(e){return typeof e=="number"?$e(e):e}function gRe(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 Y7={color:G7,textColor:iRe,fontSize:dRe,spacing:gRe,radius:fRe,identity:uRe,size:mRe,lineHeight:hRe,fontFamily:sRe,border:lRe};function Wq(e){return e.replace("(min-width: ","").replace("em)","")}function yRe({media:e,...r}){const n=Object.keys(e).sort((o,a)=>Number(Wq(o))-Number(Wq(a))).map(o=>({query:o,styles:e[o]}));return{...r,media:n}}function vRe(e){if(typeof e!="object"||e===null)return!1;const r=Object.keys(e);return!(r.length===1&&r[0]==="base")}function bRe(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function xRe(e){return typeof e=="object"&&e!==null?So(e).filter(r=>r!=="base"):[]}function wRe(e,r){return typeof e=="object"&&e!==null&&r in e?e[r]:e}function Gq({styleProps:e,data:r,theme:n}){return yRe(So(e).reduce((o,a)=>{if(a==="hiddenFrom"||a==="visibleFrom"||a==="sx")return o;const i=r[a],l=Array.isArray(i.property)?i.property:[i.property],s=bRe(e[a]);if(!vRe(e[a]))return l.forEach(d=>{o.inlineStyles[d]=Y7[i.type](s,n)}),o;o.hasResponsiveStyles=!0;const c=xRe(e[a]);return l.forEach(d=>{s!=null&&(o.styles[d]=Y7[i.type](s,n)),c.forEach(u=>{const p=`(min-width: ${n.breakpoints[u]})`;o.media[p]={...o.media[p],[d]:Y7[i.type](wRe(e[a],u),n)}})}),o},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function yw(){return`__m__-${S.useId().replace(/[:«»]/g,"")}`}function X7(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...X7(o,r)}),{}):typeof e=="function"?e(r):e??{}}function Yq(e){return e.startsWith("data-")?e:`data-${e}`}function kRe(e){return Object.keys(e).reduce((r,n)=>{const o=e[n];return o===void 0||o===""||o===!1||o===null||(r[Yq(n)]=e[n]),r},{})}function Xq(e){return e?typeof e=="string"?{[Yq(e)]:!0}:Array.isArray(e)?[...e].reduce((r,n)=>({...r,...Xq(n)}),{}):kRe(e):null}function Z7(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...Z7(o,r)}),{}):typeof e=="function"?e(r):e??{}}function _Re({theme:e,style:r,vars:n,styleProps:o}){const a=Z7(r,e),i=Z7(n,e);return{...a,...i,...o}}const Zq=S.forwardRef(({component:e,style:r,__vars:n,className:o,variant:a,mod:i,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}=Hq(g),_=xze()?.()?.(k.sx),$=yw(),z=Gq({styleProps:k,theme:w,data:aRe}),j={ref:v,style:_Re({theme:w,style:r,vars:n,styleProps:z.inlineStyles}),className:Qi(o,_,{[$]:z.hasResponsiveStyles,"mantine-light-hidden":d,"mantine-dark-hidden":u,[`mantine-hidden-from-${s}`]:s,[`mantine-visible-from-${c}`]:c}),"data-variant":a,"data-size":dq(l)?void 0:l||void 0,size:f,...Xq(i),...C};return y.jsxs(y.Fragment,{children:[z.hasResponsiveStyles&&y.jsx(gw,{selector:`.${$}`,styles:z.styles,media:z.media}),typeof p=="function"?p(j):y.jsx(x,{...j})]})});Zq.displayName="@mantine/core/Box";const Se=Zq;function Kq(e){return e}function SRe(e){const r=e;return n=>{const o=S.forwardRef((a,i)=>y.jsx(r,{...n,...a,ref:i}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o}}function ot(e){const r=S.forwardRef(e);return r.extend=Kq,r.withProps=n=>{const o=S.forwardRef((a,i)=>y.jsx(r,{...n,...a,ref:i}));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((a,i)=>y.jsx(r,{...n,...a,ref:i}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o},r.extend=Kq,r}const ERe=S.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function dd(){return S.useContext(ERe)}function CRe(e){if(!e||typeof e=="string")return 0;const r=e/36;return Math.round((4+15*r**.25+r/5)*10)}function K7(e){return e?.current?e.current.scrollHeight:"auto"}const vw=typeof window<"u"&&window.requestAnimationFrame,Qq=0,$Re=e=>({height:0,overflow:"hidden",...e?{}:{display:"none"}});function zRe({transitionDuration:e,transitionTimingFunction:r="ease",onTransitionEnd:n=()=>{},opened:o,keepMounted:a=!1}){const i=S.useRef(null),l=$Re(a),[s,c]=S.useState(o?{}:l),d=v=>{Ii.flushSync(()=>c(v))},u=v=>{d(w=>({...w,...v}))};function p(v){const w=e||CRe(v);return{transition:`height ${w}ms ${r}, opacity ${w}ms ${r}`}}Xu(()=>{typeof vw=="function"&&vw(o?()=>{u({willChange:"height",display:"block",overflow:"hidden"}),vw(()=>{const v=K7(i);u({...p(v),height:v})})}:()=>{const v=K7(i);u({...p(v),willChange:"height",height:v}),vw(()=>u({height:Qq,overflow:"hidden"}))})},[o]);const f=v=>{if(!(v.target!==i.current||v.propertyName!=="height"))if(o){const w=K7(i);w===s.height?d({}):u({height:w}),n()}else s.height===Qq&&(d(l),n())};function g({style:v={},refKey:w="ref",...x}={}){const k=x[w],C={"aria-hidden":!o,...x,[w]:_q(i,k),onTransitionEnd:f,style:{boxSizing:"border-box",...v,...s}};return Kr.version.startsWith("18")?o||(C.inert=""):C.inert=!o,C}return g}const RRe={transitionDuration:200,transitionTimingFunction:"ease",animateOpacity:!0},Jq=ot((e,r)=>{const{children:n,in:o,transitionDuration:a,transitionTimingFunction:i,style:l,onTransitionEnd:s,animateOpacity:c,keepMounted:d,...u}=Me("Collapse",RRe,e),p=lo(),f=Eq(),g=p.respectReducedMotion&&f?0:a,v=zRe({opened:o,transitionDuration:g,transitionTimingFunction:i,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 ${i}`:"none",...X7(l,p)},ref:r,...u}),children:n})});Jq.displayName="@mantine/core/Collapse";function bw(){return typeof window<"u"}function wf(e){return eH(e)?(e.nodeName||"").toLowerCase():"#document"}function ea(e){var r;return(e==null||(r=e.ownerDocument)==null?void 0:r.defaultView)||window}function Xl(e){var r;return(r=(eH(e)?e.ownerDocument:e.document)||window.document)==null?void 0:r.documentElement}function eH(e){return bw()?e instanceof Node||e instanceof ea(e).Node:!1}function Ar(e){return bw()?e instanceof Element||e instanceof ea(e).Element:!1}function Sa(e){return bw()?e instanceof HTMLElement||e instanceof ea(e).HTMLElement:!1}function Q7(e){return!bw()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof ea(e).ShadowRoot}const jRe=new Set(["inline","contents"]);function J1(e){const{overflow:r,overflowX:n,overflowY:o,display:a}=ri(e);return/auto|scroll|overlay|hidden|clip/.test(r+o+n)&&!jRe.has(a)}const TRe=new Set(["table","td","th"]);function ARe(e){return TRe.has(wf(e))}const DRe=[":popover-open",":modal"];function xw(e){return DRe.some(r=>{try{return e.matches(r)}catch{return!1}})}const MRe=["transform","translate","scale","rotate","perspective"],NRe=["transform","translate","scale","rotate","perspective","filter"],PRe=["paint","layout","strict","content"];function J7(e){const r=ww(),n=Ar(e)?ri(e):e;return MRe.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)||NRe.some(o=>(n.willChange||"").includes(o))||PRe.some(o=>(n.contain||"").includes(o))}function BRe(e){let r=Gs(e);for(;Sa(r)&&!Ws(r);){if(J7(r))return r;if(xw(r))return null;r=Gs(r)}return null}function ww(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const ORe=new Set(["html","body","#document"]);function Ws(e){return ORe.has(wf(e))}function ri(e){return ea(e).getComputedStyle(e)}function kw(e){return Ar(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Gs(e){if(wf(e)==="html")return e;const r=e.assignedSlot||e.parentNode||Q7(e)&&e.host||Xl(e);return Q7(r)?r.host:r}function tH(e){const r=Gs(e);return Ws(r)?e.ownerDocument?e.ownerDocument.body:e.body:Sa(r)&&J1(r)?r:tH(r)}function Ys(e,r,n){var o;r===void 0&&(r=[]),n===void 0&&(n=!0);const a=tH(e),i=a===((o=e.ownerDocument)==null?void 0:o.body),l=ea(a);if(i){const s=e9(l);return r.concat(l,l.visualViewport||[],J1(a)?a:[],s&&n?Ys(s):[])}return r.concat(a,Ys(a,[],n))}function e9(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}const rH=["top","right","bottom","left"],nH=["start","end"],oH=rH.reduce((e,r)=>e.concat(r,r+"-"+nH[0],r+"-"+nH[1]),[]),Ji=Math.min,Co=Math.max,_w=Math.round,Sw=Math.floor,Zl=e=>({x:e,y:e}),IRe={left:"right",right:"left",bottom:"top",top:"bottom"},LRe={start:"end",end:"start"};function t9(e,r,n){return Co(e,Ji(r,n))}function el(e,r){return typeof e=="function"?e(r):e}function Ea(e){return e.split("-")[0]}function tl(e){return e.split("-")[1]}function r9(e){return e==="x"?"y":"x"}function n9(e){return e==="y"?"height":"width"}const FRe=new Set(["top","bottom"]);function rl(e){return FRe.has(Ea(e))?"y":"x"}function o9(e){return r9(rl(e))}function aH(e,r,n){n===void 0&&(n=!1);const o=tl(e),a=o9(e),i=n9(a);let l=a==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return r.reference[i]>r.floating[i]&&(l=Cw(l)),[l,Cw(l)]}function VRe(e){const r=Cw(e);return[Ew(e),r,Ew(r)]}function Ew(e){return e.replace(/start|end/g,r=>LRe[r])}const iH=["left","right"],lH=["right","left"],qRe=["top","bottom"],HRe=["bottom","top"];function URe(e,r,n){switch(e){case"top":case"bottom":return n?r?lH:iH:r?iH:lH;case"left":case"right":return r?qRe:HRe;default:return[]}}function WRe(e,r,n,o){const a=tl(e);let i=URe(Ea(e),n==="start",o);return a&&(i=i.map(l=>l+"-"+a),r&&(i=i.concat(i.map(Ew)))),i}function Cw(e){return e.replace(/left|right|bottom|top/g,r=>IRe[r])}function GRe(e){return{top:0,right:0,bottom:0,left:0,...e}}function a9(e){return typeof e!="number"?GRe(e):{top:e,right:e,bottom:e,left:e}}function kf(e){const{x:r,y:n,width:o,height:a}=e;return{width:o,height:a,top:n,left:r,right:r+o,bottom:n+a,x:r,y:n}}function YRe(){const e=navigator.userAgentData;return e!=null&&e.platform?e.platform:navigator.platform}function XRe(){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 ZRe(){return/apple/i.test(navigator.vendor)}function KRe(){return YRe().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function QRe(){return XRe().includes("jsdom/")}const sH="data-floating-ui-focusable",JRe="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function cH(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 ey(e,r){if(!e||!r)return!1;const n=r.getRootNode==null?void 0:r.getRootNode();if(e.contains(r))return!0;if(n&&Q7(n)){let o=r;for(;o;){if(e===o)return!0;o=o.parentNode||o.host}}return!1}function _f(e){return"composedPath"in e?e.composedPath()[0]:e.target}function i9(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 eje(e){return e.matches("html,body")}function Ku(e){return e?.ownerDocument||document}function tje(e){return Sa(e)&&e.matches(JRe)}function rje(e){if(!e||QRe())return!0;try{return e.matches(":focus-visible")}catch{return!0}}function nje(e){return e?e.hasAttribute(sH)?e:e.querySelector("["+sH+"]")||e:null}function $w(e,r,n){return n===void 0&&(n=!0),e.filter(o=>{var a;return o.parentId===r&&(!n||((a=o.context)==null?void 0:a.open))}).flatMap(o=>[o,...$w(e,o.id,n)])}function oje(e){return"nativeEvent"in e}function l9(e,r){const n=["mouse","pen"];return n.push("",void 0),n.includes(e)}var aje=typeof document<"u",ije=function(){},Kl=aje?S.useLayoutEffect:ije;const lje={...ob};function zw(e){const r=S.useRef(e);return Kl(()=>{r.current=e}),r}const sje=lje.useInsertionEffect,cje=sje||(e=>e());function Ql(e){const r=S.useRef(()=>{});return cje(()=>{r.current=e}),S.useCallback(function(){for(var n=arguments.length,o=new Array(n),a=0;a{const{placement:o="bottom",strategy:a="absolute",middleware:i=[],platform:l}=n,s=i.filter(Boolean),c=await(l.isRTL==null?void 0:l.isRTL(r));let d=await l.getElementRects({reference:e,floating:r,strategy:a}),{x:u,y:p}=dH(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:a,rects:i,platform:l,elements:s,middlewareData:c}=r,{element:d,padding:u=0}=el(e,r)||{};if(d==null)return{};const p=a9(u),f={x:n,y:o},g=o9(a),v=n9(g),w=await l.getDimensions(d),x=g==="y",k=x?"top":"left",C=x?"bottom":"right",_=x?"clientHeight":"clientWidth",$=i.reference[v]+i.reference[g]-f[g]-i.floating[v],z=f[g]-i.reference[g],j=await(l.getOffsetParent==null?void 0:l.getOffsetParent(d));let A=j?j[_]:0;(!A||!await(l.isElement==null?void 0:l.isElement(j)))&&(A=s.floating[_]||i.floating[v]);const R=$/2-z/2,T=A/2-w[v]/2-1,O=Ji(p[k],T),P=Ji(p[C],T),L=O,H=A-w[v]-P,M=A/2-w[v]/2+R,V=t9(L,M,H),B=!c.arrow&&tl(a)!=null&&M!==V&&i.reference[v]/2-(Mtl(o)===e),...n.filter(o=>tl(o)!==e)]:n.filter(o=>Ea(o)===o)).filter(o=>e?tl(o)===e||(r?Ew(o)!==o:!1):!0)}const hje=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(r){var n,o,a;const{rects:i,middlewareData:l,placement:s,platform:c,elements:d}=r,{crossAxis:u=!1,alignment:p,allowedPlacements:f=oH,autoAlignment:g=!0,...v}=el(e,r),w=p!==void 0||f===oH?pje(p||null,g,f):f,x=await Sf(r,v),k=((n=l.autoPlacement)==null?void 0:n.index)||0,C=w[k];if(C==null)return{};const _=aH(C,i,await(c.isRTL==null?void 0:c.isRTL(d.floating)));if(s!==C)return{reset:{placement:w[0]}};const $=[x[Ea(C)],x[_[0]],x[_[1]]],z=[...((o=l.autoPlacement)==null?void 0:o.overflows)||[],{placement:C,overflows:$}],j=w[k+1];if(j)return{data:{index:k+1,overflows:z},reset:{placement:j}};const A=z.map(T=>{const O=tl(T.placement);return[T.placement,O&&u?T.overflows.slice(0,2).reduce((P,L)=>P+L,0):T.overflows[0],T.overflows]}).sort((T,O)=>T[1]-O[1]),R=((a=A.filter(T=>T[2].slice(0,tl(T[0])?2:3).every(O=>O<=0))[0])==null?void 0:a[0])||A[0][0];return R!==s?{data:{index:k+1,overflows:z},reset:{placement:R}}:{}}}},fje=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(r){var n,o;const{placement:a,middlewareData:i,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}=el(e,r);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const k=Ea(a),C=rl(s),_=Ea(s)===s,$=await(c.isRTL==null?void 0:c.isRTL(d.floating)),z=f||(_||!w?[Cw(s)]:VRe(s)),j=v!=="none";!f&&j&&z.push(...WRe(s,w,v,$));const A=[s,...z],R=await Sf(r,x),T=[];let O=((o=i.flip)==null?void 0:o.overflows)||[];if(u&&T.push(R[k]),p){const M=aH(a,l,$);T.push(R[M[0]],R[M[1]])}if(O=[...O,{placement:a,overflows:T}],!T.every(M=>M<=0)){var P,L;const M=(((P=i.flip)==null?void 0:P.index)||0)+1,V=A[M];if(V&&(!(p==="alignment"&&C!==rl(V))||O.every(F=>rl(F.placement)===C?F.overflows[0]>0:!0)))return{data:{index:M,overflows:O},reset:{placement:V}};let B=(L=O.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=O.filter(q=>{if(j){const G=rl(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(a!==B)return{reset:{placement:B}}}return{}}}};function uH(e,r){return{top:e.top-r.height,right:e.right-r.width,bottom:e.bottom-r.height,left:e.left-r.width}}function pH(e){return rH.some(r=>e[r]>=0)}const mje=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(r){const{rects:n}=r,{strategy:o="referenceHidden",...a}=el(e,r);switch(o){case"referenceHidden":{const i=await Sf(r,{...a,elementContext:"reference"}),l=uH(i,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:pH(l)}}}case"escaped":{const i=await Sf(r,{...a,altBoundary:!0}),l=uH(i,n.floating);return{data:{escapedOffsets:l,escaped:pH(l)}}}default:return{}}}}};function hH(e){const r=Ji(...e.map(i=>i.left)),n=Ji(...e.map(i=>i.top)),o=Co(...e.map(i=>i.right)),a=Co(...e.map(i=>i.bottom));return{x:r,y:n,width:o-r,height:a-n}}function gje(e){const r=e.slice().sort((a,i)=>a.y-i.y),n=[];let o=null;for(let a=0;ao.height/2?n.push([i]):n[n.length-1].push(i),o=i}return n.map(a=>kf(hH(a)))}const yje=function(e){return e===void 0&&(e={}),{name:"inline",options:e,async fn(r){const{placement:n,elements:o,rects:a,platform:i,strategy:l}=r,{padding:s=2,x:c,y:d}=el(e,r),u=Array.from(await(i.getClientRects==null?void 0:i.getClientRects(o.reference))||[]),p=gje(u),f=kf(hH(u)),g=a9(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(rl(n)==="y"){const O=p[0],P=p[p.length-1],L=Ea(n)==="top",H=O.top,M=P.bottom,V=L?O.left:P.left,B=L?O.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=Ea(n)==="left",k=Co(...p.map(O=>O.right)),C=Ji(...p.map(O=>O.left)),_=p.filter(O=>x?O.left===C:O.right===k),$=_[0].top,z=_[_.length-1].bottom,j=C,A=k,R=A-j,T=z-$;return{top:$,bottom:z,left:j,right:A,width:R,height:T,x:j,y:$}}return f}const w=await i.getElementRects({reference:{getBoundingClientRect:v},floating:o.floating,strategy:l});return a.reference.x!==w.reference.x||a.reference.y!==w.reference.y||a.reference.width!==w.reference.width||a.reference.height!==w.reference.height?{reset:{rects:w}}:{}}}},fH=new Set(["left","top"]);async function vje(e,r){const{placement:n,platform:o,elements:a}=e,i=await(o.isRTL==null?void 0:o.isRTL(a.floating)),l=Ea(n),s=tl(n),c=rl(n)==="y",d=fH.has(l)?-1:1,u=i&&c?-1:1,p=el(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 bje=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(r){var n,o;const{x:a,y:i,placement:l,middlewareData:s}=r,c=await vje(r,e);return l===((n=s.offset)==null?void 0:n.placement)&&(o=s.arrow)!=null&&o.alignmentOffset?{}:{x:a+c.x,y:i+c.y,data:{...c,placement:l}}}}},xje=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(r){const{x:n,y:o,placement:a}=r,{mainAxis:i=!0,crossAxis:l=!1,limiter:s={fn:x=>{let{x:k,y:C}=x;return{x:k,y:C}}},...c}=el(e,r),d={x:n,y:o},u=await Sf(r,c),p=rl(Ea(a)),f=r9(p);let g=d[f],v=d[p];if(i){const x=f==="y"?"top":"left",k=f==="y"?"bottom":"right",C=g+u[x],_=g-u[k];g=t9(C,g,_)}if(l){const x=p==="y"?"top":"left",k=p==="y"?"bottom":"right",C=v+u[x],_=v-u[k];v=t9(C,v,_)}const w=s.fn({...r,[f]:g,[p]:v});return{...w,data:{x:w.x-n,y:w.y-o,enabled:{[f]:i,[p]:l}}}}}},wje=function(e){return e===void 0&&(e={}),{options:e,fn(r){const{x:n,y:o,placement:a,rects:i,middlewareData:l}=r,{offset:s=0,mainAxis:c=!0,crossAxis:d=!0}=el(e,r),u={x:n,y:o},p=rl(a),f=r9(p);let g=u[f],v=u[p];const w=el(s,r),x=typeof w=="number"?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(c){const _=f==="y"?"height":"width",$=i.reference[f]-i.floating[_]+x.mainAxis,z=i.reference[f]+i.reference[_]-x.mainAxis;g<$?g=$:g>z&&(g=z)}if(d){var k,C;const _=f==="y"?"width":"height",$=fH.has(Ea(a)),z=i.reference[p]-i.floating[_]+($&&((k=l.offset)==null?void 0:k[p])||0)+($?0:x.crossAxis),j=i.reference[p]+i.reference[_]+($?0:((C=l.offset)==null?void 0:C[p])||0)-($?x.crossAxis:0);vj&&(v=j)}return{[f]:g,[p]:v}}}},kje=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(r){var n,o;const{placement:a,rects:i,platform:l,elements:s}=r,{apply:c=()=>{},...d}=el(e,r),u=await Sf(r,d),p=Ea(a),f=tl(a),g=rl(a)==="y",{width:v,height:w}=i.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,$=Ji(w-u[x],C),z=Ji(v-u[k],_),j=!r.middlewareData.shift;let A=$,R=z;if((n=r.middlewareData.shift)!=null&&n.enabled.x&&(R=_),(o=r.middlewareData.shift)!=null&&o.enabled.y&&(A=C),j&&!f){const O=Co(u.left,0),P=Co(u.right,0),L=Co(u.top,0),H=Co(u.bottom,0);g?R=v-2*(O!==0||P!==0?O+P:Co(u.left,u.right)):A=w-2*(L!==0||H!==0?L+H:Co(u.top,u.bottom))}await c({...r,availableWidth:R,availableHeight:A});const T=await l.getDimensions(s.floating);return v!==T.width||w!==T.height?{reset:{rects:!0}}:{}}}};function mH(e){const r=ri(e);let n=parseFloat(r.width)||0,o=parseFloat(r.height)||0;const a=Sa(e),i=a?e.offsetWidth:n,l=a?e.offsetHeight:o,s=_w(n)!==i||_w(o)!==l;return s&&(n=i,o=l),{width:n,height:o,$:s}}function s9(e){return Ar(e)?e:e.contextElement}function Ef(e){const r=s9(e);if(!Sa(r))return Zl(1);const n=r.getBoundingClientRect(),{width:o,height:a,$:i}=mH(r);let l=(i?_w(n.width):n.width)/o,s=(i?_w(n.height):n.height)/a;return(!l||!Number.isFinite(l))&&(l=1),(!s||!Number.isFinite(s))&&(s=1),{x:l,y:s}}const _je=Zl(0);function gH(e){const r=ea(e);return!ww()||!r.visualViewport?_je:{x:r.visualViewport.offsetLeft,y:r.visualViewport.offsetTop}}function Sje(e,r,n){return r===void 0&&(r=!1),!n||r&&n!==ea(e)?!1:r}function Qu(e,r,n,o){r===void 0&&(r=!1),n===void 0&&(n=!1);const a=e.getBoundingClientRect(),i=s9(e);let l=Zl(1);r&&(o?Ar(o)&&(l=Ef(o)):l=Ef(e));const s=Sje(i,n,o)?gH(i):Zl(0);let c=(a.left+s.x)/l.x,d=(a.top+s.y)/l.y,u=a.width/l.x,p=a.height/l.y;if(i){const f=ea(i),g=o&&Ar(o)?ea(o):o;let v=f,w=e9(v);for(;w&&o&&g!==v;){const x=Ef(w),k=w.getBoundingClientRect(),C=ri(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=ea(w),w=e9(v)}}return kf({width:u,height:p,x:c,y:d})}function Rw(e,r){const n=kw(e).scrollLeft;return r?r.left+n:Qu(Xl(e)).left+n}function yH(e,r){const n=e.getBoundingClientRect(),o=n.left+r.scrollLeft-Rw(e,n),a=n.top+r.scrollTop;return{x:o,y:a}}function Eje(e){let{elements:r,rect:n,offsetParent:o,strategy:a}=e;const i=a==="fixed",l=Xl(o),s=r?xw(r.floating):!1;if(o===l||s&&i)return n;let c={scrollLeft:0,scrollTop:0},d=Zl(1);const u=Zl(0),p=Sa(o);if((p||!p&&!i)&&((wf(o)!=="body"||J1(l))&&(c=kw(o)),Sa(o))){const g=Qu(o);d=Ef(o),u.x=g.x+o.clientLeft,u.y=g.y+o.clientTop}const f=l&&!p&&!i?yH(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 Cje(e){return Array.from(e.getClientRects())}function $je(e){const r=Xl(e),n=kw(e),o=e.ownerDocument.body,a=Co(r.scrollWidth,r.clientWidth,o.scrollWidth,o.clientWidth),i=Co(r.scrollHeight,r.clientHeight,o.scrollHeight,o.clientHeight);let l=-n.scrollLeft+Rw(e);const s=-n.scrollTop;return ri(o).direction==="rtl"&&(l+=Co(r.clientWidth,o.clientWidth)-a),{width:a,height:i,x:l,y:s}}const vH=25;function zje(e,r){const n=ea(e),o=Xl(e),a=n.visualViewport;let i=o.clientWidth,l=o.clientHeight,s=0,c=0;if(a){i=a.width,l=a.height;const u=ww();(!u||u&&r==="fixed")&&(s=a.offsetLeft,c=a.offsetTop)}const d=Rw(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<=vH&&(i-=v)}else d<=vH&&(i+=d);return{width:i,height:l,x:s,y:c}}const Rje=new Set(["absolute","fixed"]);function jje(e,r){const n=Qu(e,!0,r==="fixed"),o=n.top+e.clientTop,a=n.left+e.clientLeft,i=Sa(e)?Ef(e):Zl(1),l=e.clientWidth*i.x,s=e.clientHeight*i.y,c=a*i.x,d=o*i.y;return{width:l,height:s,x:c,y:d}}function bH(e,r,n){let o;if(r==="viewport")o=zje(e,n);else if(r==="document")o=$je(Xl(e));else if(Ar(r))o=jje(r,n);else{const a=gH(e);o={x:r.x-a.x,y:r.y-a.y,width:r.width,height:r.height}}return kf(o)}function xH(e,r){const n=Gs(e);return n===r||!Ar(n)||Ws(n)?!1:ri(n).position==="fixed"||xH(n,r)}function Tje(e,r){const n=r.get(e);if(n)return n;let o=Ys(e,[],!1).filter(s=>Ar(s)&&wf(s)!=="body"),a=null;const i=ri(e).position==="fixed";let l=i?Gs(e):e;for(;Ar(l)&&!Ws(l);){const s=ri(l),c=J7(l);!c&&s.position==="fixed"&&(a=null),(i?!c&&!a:!c&&s.position==="static"&&a&&Rje.has(a.position)||J1(l)&&!c&&xH(e,l))?o=o.filter(d=>d!==l):a=s,l=Gs(l)}return r.set(e,o),o}function Aje(e){let{element:r,boundary:n,rootBoundary:o,strategy:a}=e;const i=[...n==="clippingAncestors"?xw(r)?[]:Tje(r,this._c):[].concat(n),o],l=i[0],s=i.reduce((c,d)=>{const u=bH(r,d,a);return c.top=Co(u.top,c.top),c.right=Ji(u.right,c.right),c.bottom=Ji(u.bottom,c.bottom),c.left=Co(u.left,c.left),c},bH(r,l,a));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function Dje(e){const{width:r,height:n}=mH(e);return{width:r,height:n}}function Mje(e,r,n){const o=Sa(r),a=Xl(r),i=n==="fixed",l=Qu(e,!0,i,r);let s={scrollLeft:0,scrollTop:0};const c=Zl(0);function d(){c.x=Rw(a)}if(o||!o&&!i)if((wf(r)!=="body"||J1(a))&&(s=kw(r)),o){const g=Qu(r,!0,i,r);c.x=g.x+r.clientLeft,c.y=g.y+r.clientTop}else a&&d();i&&!o&&a&&d();const u=a&&!o&&!i?yH(a,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 c9(e){return ri(e).position==="static"}function wH(e,r){if(!Sa(e)||ri(e).position==="fixed")return null;if(r)return r(e);let n=e.offsetParent;return Xl(e)===n&&(n=n.ownerDocument.body),n}function kH(e,r){const n=ea(e);if(xw(e))return n;if(!Sa(e)){let a=Gs(e);for(;a&&!Ws(a);){if(Ar(a)&&!c9(a))return a;a=Gs(a)}return n}let o=wH(e,r);for(;o&&ARe(o)&&c9(o);)o=wH(o,r);return o&&Ws(o)&&c9(o)&&!J7(o)?n:o||BRe(e)||n}const Nje=async function(e){const r=this.getOffsetParent||kH,n=this.getDimensions,o=await n(e.floating);return{reference:Mje(e.reference,await r(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function Pje(e){return ri(e).direction==="rtl"}const Bje={convertOffsetParentRelativeRectToViewportRelativeRect:Eje,getDocumentElement:Xl,getClippingRect:Aje,getOffsetParent:kH,getElementRects:Nje,getClientRects:Cje,getDimensions:Dje,getScale:Ef,isElement:Ar,isRTL:Pje};function _H(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}function Oje(e,r){let n=null,o;const a=Xl(e);function i(){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),i();const d=e.getBoundingClientRect(),{left:u,top:p,width:f,height:g}=d;if(s||r(),!f||!g)return;const v=Sw(p),w=Sw(a.clientWidth-(u+f)),x=Sw(a.clientHeight-(p+g)),k=Sw(u),C={rootMargin:-v+"px "+-w+"px "+-x+"px "+-k+"px",threshold:Co(0,Ji(1,c))||1};let _=!0;function $(z){const j=z[0].intersectionRatio;if(j!==c){if(!_)return l();j?l(!1,j):o=setTimeout(()=>{l(!1,1e-7)},1e3)}j===1&&!_H(d,e.getBoundingClientRect())&&l(),_=!1}try{n=new IntersectionObserver($,{...C,root:a.ownerDocument})}catch{n=new IntersectionObserver($,C)}n.observe(e)}return l(!0),i}function jw(e,r,n,o){o===void 0&&(o={});const{ancestorScroll:a=!0,ancestorResize:i=!0,elementResize:l=typeof ResizeObserver=="function",layoutShift:s=typeof IntersectionObserver=="function",animationFrame:c=!1}=o,d=s9(e),u=a||i?[...d?Ys(d):[],...Ys(r)]:[];u.forEach(k=>{a&&k.addEventListener("scroll",n,{passive:!0}),i&&k.addEventListener("resize",n)});const p=d&&s?Oje(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?Qu(e):null;c&&x();function x(){const k=Qu(e);w&&!_H(w,k)&&n(),w=k,v=requestAnimationFrame(x)}return n(),()=>{var k;u.forEach(C=>{a&&C.removeEventListener("scroll",n),i&&C.removeEventListener("resize",n)}),p?.(),(k=g)==null||k.disconnect(),g=null,c&&cancelAnimationFrame(v)}}const SH=bje,Ije=hje,Lje=xje,Fje=fje,EH=kje,CH=mje,$H=uje,Vje=yje,qje=wje,zH=(e,r,n)=>{const o=new Map,a={platform:Bje,...n},i={...a.platform,_c:o};return dje(e,r,{...a,platform:i})};var Hje=typeof document<"u",Uje=function(){},Tw=Hje?S.useLayoutEffect:Uje;function Aw(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,a;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(!Aw(e[o],r[o]))return!1;return!0}if(a=Object.keys(e),n=a.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!{}.hasOwnProperty.call(r,a[o]))return!1;for(o=n;o--!==0;){const i=a[o];if(!(i==="_owner"&&e.$$typeof)&&!Aw(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}function RH(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function jH(e,r){const n=RH(e);return Math.round(r*n)/n}function d9(e){const r=S.useRef(e);return Tw(()=>{r.current=e}),r}function Wje(e){e===void 0&&(e={});const{placement:r="bottom",strategy:n="absolute",middleware:o=[],platform:a,elements:{reference:i,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);Aw(f,o)||g(o);const[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(q=>{q!==j.current&&(j.current=q,w(q))},[]),_=S.useCallback(q=>{q!==A.current&&(A.current=q,k(q))},[]),$=i||v,z=l||x,j=S.useRef(null),A=S.useRef(null),R=S.useRef(u),T=c!=null,O=d9(c),P=d9(a),L=d9(d),H=S.useCallback(()=>{if(!j.current||!A.current)return;const q={placement:r,strategy:n,middleware:f};P.current&&(q.platform=P.current),zH(j.current,A.current,q).then(G=>{const U={...G,isPositioned:L.current!==!1};M.current&&!Aw(R.current,U)&&(R.current=U,Ii.flushSync(()=>{p(U)}))})},[f,r,n,P,L]);Tw(()=>{d===!1&&R.current.isPositioned&&(R.current.isPositioned=!1,p(q=>({...q,isPositioned:!1})))},[d]);const M=S.useRef(!1);Tw(()=>(M.current=!0,()=>{M.current=!1}),[]),Tw(()=>{if($&&(j.current=$),z&&(A.current=z),$&&z){if(O.current)return O.current($,z,H);H()}},[$,z,H,O,T]);const V=S.useMemo(()=>({reference:j,floating:A,setReference:C,setFloating:_}),[C,_]),B=S.useMemo(()=>({reference:$,floating:z}),[$,z]),F=S.useMemo(()=>{const q={position:n,left:0,top:0};if(!B.floating)return q;const G=jH(B.floating,u.x),U=jH(B.floating,u.y);return s?{...q,transform:"translate("+G+"px, "+U+"px)",...RH(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 Gje=e=>{function r(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:o,padding:a}=typeof e=="function"?e(n):e;return o&&r(o)?o.current!=null?$H({element:o.current,padding:a}).fn(n):{}:o?$H({element:o,padding:a}).fn(n):{}}}},TH=(e,r)=>({...SH(e),options:[e,r]}),u9=(e,r)=>({...Lje(e),options:[e,r]}),AH=(e,r)=>({...qje(e),options:[e,r]}),Dw=(e,r)=>({...Fje(e),options:[e,r]}),Yje=(e,r)=>({...EH(e),options:[e,r]}),Xje=(e,r)=>({...CH(e),options:[e,r]}),ty=(e,r)=>({...Vje(e),options:[e,r]}),DH=(e,r)=>({...Gje(e),options:[e,r]});function MH(e){const r=S.useRef(void 0),n=S.useCallback(o=>{const a=e.map(i=>{if(i!=null){if(typeof i=="function"){const l=i,s=l(o);return typeof s=="function"?s:()=>{l(null)}}return i.current=o,()=>{i.current=null}}});return()=>{a.forEach(i=>i?.())}},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 Zje="data-floating-ui-focusable",NH="active",PH="selected",Kje={...ob};let BH=!1,Qje=0;const OH=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+Qje++;function Jje(){const[e,r]=S.useState(()=>BH?OH():void 0);return Kl(()=>{e==null&&r(OH())},[]),S.useEffect(()=>{BH=!0},[]),e}const eTe=Kje.useId,IH=eTe||Jje;function tTe(){const e=new Map;return{emit(r,n){var o;(o=e.get(r))==null||o.forEach(a=>a(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 rTe=S.createContext(null),nTe=S.createContext(null),p9=()=>{var e;return((e=S.useContext(rTe))==null?void 0:e.id)||null},h9=()=>S.useContext(nTe);function f9(e){return"data-floating-ui-"+e}function ni(e){e.current!==-1&&(clearTimeout(e.current),e.current=-1)}const LH=f9("safe-polygon");function Mw(e,r,n){if(n&&!l9(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 m9(e){return typeof e=="function"?e():e}function FH(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,dataRef:a,events:i,elements:l}=e,{enabled:s=!0,delay:c=0,handleClose:d=null,mouseOnly:u=!1,restMs:p=0,move:f=!0}=r,g=h9(),v=p9(),w=zw(d),x=zw(c),k=zw(n),C=zw(p),_=S.useRef(),$=S.useRef(-1),z=S.useRef(),j=S.useRef(-1),A=S.useRef(!0),R=S.useRef(!1),T=S.useRef(()=>{}),O=S.useRef(!1),P=Ql(()=>{var F;const q=(F=a.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||(ni($),ni(j),A.current=!0,O.current=!1)}return i.on("openchange",F),()=>{i.off("openchange",F)}},[s,i]),S.useEffect(()=>{if(!s||!w.current||!n)return;function F(G){P()&&o(!1,G,"hover")}const q=Ku(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=Mw(x.current,"close",_.current);U&&!z.current?(ni($),$.current=window.setTimeout(()=>o(!1,F,G),U)):q&&(ni($),o(!1,F,G))},[x,o]),H=Ql(()=>{T.current(),z.current=void 0}),M=Ql(()=>{if(R.current){const F=Ku(l.floating).body;F.style.pointerEvents="",F.removeAttribute(LH),R.current=!1}}),V=Ql(()=>a.current.openEvent?["click","mousedown"].includes(a.current.openEvent.type):!1);S.useEffect(()=>{if(!s)return;function F(Z){if(ni($),A.current=!1,u&&!l9(_.current)||m9(C.current)>0&&!Mw(x.current,"open"))return;const I=Mw(x.current,"open",_.current);I?$.current=window.setTimeout(()=>{k.current||o(!0,Z,"hover")},I):n||o(!0,Z,"hover")}function q(Z){if(V()){M();return}T.current();const I=Ku(l.floating);if(ni(j),O.current=!1,w.current&&a.current.floatingContext){n||ni($),z.current=w.current({...a.current.floatingContext,tree:g,x:Z.clientX,y:Z.clientY,onClose(){M(),H(),V()||L(Z,!0,"safe-polygon")}});const W=z.current;I.addEventListener("mousemove",W),T.current=()=>{I.removeEventListener("mousemove",W)};return}(_.current!=="touch"||!ey(l.floating,Z.relatedTarget))&&L(Z)}function G(Z){V()||a.current.floatingContext&&(w.current==null||w.current({...a.current.floatingContext,tree:g,x:Z.clientX,y:Z.clientY,onClose(){M(),H(),V()||L(Z)}})(Z))}function U(){ni($)}function Y(Z){V()||L(Z,!1)}if(Ar(l.domReference)){const Z=l.domReference,I=l.floating;return n&&Z.addEventListener("mouseleave",G),f&&Z.addEventListener("mousemove",F,{once:!0}),Z.addEventListener("mouseenter",F),Z.addEventListener("mouseleave",q),I&&(I.addEventListener("mouseleave",G),I.addEventListener("mouseenter",U),I.addEventListener("mouseleave",Y)),()=>{n&&Z.removeEventListener("mouseleave",G),f&&Z.removeEventListener("mousemove",F),Z.removeEventListener("mouseenter",F),Z.removeEventListener("mouseleave",q),I&&(I.removeEventListener("mouseleave",G),I.removeEventListener("mouseenter",U),I.removeEventListener("mouseleave",Y))}}},[l,s,e,u,f,L,H,M,o,n,k,g,x,w,a,V,C]),Kl(()=>{var F;if(s&&n&&(F=w.current)!=null&&(F=F.__options)!=null&&F.blockPointerEvents&&P()){R.current=!0;const G=l.floating;if(Ar(l.domReference)&&G){var q;const U=Ku(l.floating).body;U.setAttribute(LH,"");const Y=l.domReference,Z=g==null||(q=g.nodesRef.current.find(I=>I.id===v))==null||(q=q.context)==null?void 0:q.elements.floating;return Z&&(Z.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]),Kl(()=>{n||(_.current=void 0,O.current=!1,H(),M())},[n,H,M]),S.useEffect(()=>()=>{H(),ni($),ni(j),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&&!l9(_.current)||n||m9(C.current)===0||O.current&&q.movementX**2+q.movementY**2<2||(ni(j),_.current==="touch"?U():(O.current=!0,j.current=window.setTimeout(U,m9(C.current))))}}},[u,o,n,k,C]);return S.useMemo(()=>s?{reference:B}:{},[s,B])}const g9=()=>{},VH=S.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:g9,setState:g9,isInstantPhase:!1}),oTe=()=>S.useContext(VH);function qH(e){const{children:r,delay:n,timeoutMs:o=0}=e,[a,i]=S.useReducer((c,d)=>({...c,...d}),{delay:n,timeoutMs:o,initialDelay:n,currentId:null,isInstantPhase:!1}),l=S.useRef(null),s=S.useCallback(c=>{i({currentId:c})},[]);return Kl(()=>{a.currentId?l.current===null?l.current=a.currentId:a.isInstantPhase||i({isInstantPhase:!0}):(a.isInstantPhase&&i({isInstantPhase:!1}),l.current=null)},[a.currentId,a.isInstantPhase]),y.jsx(VH.Provider,{value:S.useMemo(()=>({...a,setState:i,setCurrentId:s}),[a,s]),children:r})}function HH(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,floatingId:a}=e,{id:i,enabled:l=!0}=r,s=i??a,c=oTe(),{currentId:d,setCurrentId:u,initialDelay:p,setState:f,timeoutMs:g}=c;return Kl(()=>{l&&d&&(f({delay:{open:1,close:Mw(p,"close")}}),d!==s&&o(!1))},[l,s,o,f,d,p]),Kl(()=>{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]),Kl(()=>{l&&(u===g9||!n||u(s))},[l,n,u,s]),c}const aTe={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},iTe={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},UH=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 WH(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,elements:a,dataRef:i}=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=h9(),x=Ql(typeof c=="function"?c:()=>!1),k=typeof c=="function"?x:c,C=S.useRef(!1),{escapeKey:_,outsidePress:$}=UH(g),{escapeKey:z,outsidePress:j}=UH(v),A=S.useRef(!1),R=Ql(M=>{var V;if(!n||!l||!s||M.key!=="Escape"||A.current)return;const B=(V=i.current.floatingContext)==null?void 0:V.nodeId,F=w?$w(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,oje(M)?M.nativeEvent:M,"escape-key")}),T=Ql(M=>{var V;const B=()=>{var F;R(M),(F=_f(M))==null||F.removeEventListener("keydown",B)};(V=_f(M))==null||V.addEventListener("keydown",B)}),O=Ql(M=>{var V;const B=i.current.insideReactTree;i.current.insideReactTree=!1;const F=C.current;if(C.current=!1,d==="click"&&F||B||typeof k=="function"&&!k(M))return;const q=_f(M),G="["+f9("inert")+"]",U=Ku(a.floating).querySelectorAll(G);let Y=Ar(q)?q:null;for(;Y&&!Ws(Y);){const K=Gs(Y);if(Ws(K)||!Ar(K))break;Y=K}if(U.length&&Ar(q)&&!eje(q)&&!ey(q,a.floating)&&Array.from(U).every(K=>!ey(Y,K)))return;if(Sa(q)&&H){const K=Ws(q),Q=ri(q),ae=/auto|scroll/,te=K||ae.test(Q.overflowX),re=K||ae.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 Z=(V=i.current.floatingContext)==null?void 0:V.nodeId,I=w&&$w(w.nodesRef.current,Z).some(K=>{var Q;return i9(M,(Q=K.context)==null?void 0:Q.elements.floating)});if(i9(M,a.floating)||i9(M,a.domReference)||I)return;const W=w?$w(w.nodesRef.current,Z):[];if(W.length>0){let K=!0;if(W.forEach(Q=>{var ae;if((ae=Q.context)!=null&&ae.open&&!Q.context.dataRef.current.__outsidePressBubbles){K=!1;return}}),!K)return}o(!1,M,"outside-press")}),P=Ql(M=>{var V;const B=()=>{var F;O(M),(F=_f(M))==null||F.removeEventListener(d,B)};(V=_f(M))==null||V.addEventListener(d,B)});S.useEffect(()=>{if(!n||!l)return;i.current.__escapeKeyBubbles=_,i.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},ww()?5:0)}const q=Ku(a.floating);s&&(q.addEventListener("keydown",z?T:R,z),q.addEventListener("compositionstart",B),q.addEventListener("compositionend",F)),k&&q.addEventListener(d,j?P:O,j);let G=[];return f&&(Ar(a.domReference)&&(G=Ys(a.domReference)),Ar(a.floating)&&(G=G.concat(Ys(a.floating))),!Ar(a.reference)&&a.reference&&a.reference.contextElement&&(G=G.concat(Ys(a.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",z?T:R,z),q.removeEventListener("compositionstart",B),q.removeEventListener("compositionend",F)),k&&q.removeEventListener(d,j?P:O,j),G.forEach(U=>{U.removeEventListener("scroll",V)}),window.clearTimeout(M)}},[i,a,s,k,d,n,o,f,l,_,$,R,z,T,O,j,P]),S.useEffect(()=>{i.current.insideReactTree=!1},[i,k,d]);const L=S.useMemo(()=>({onKeyDown:R,...u&&{[aTe[p]]:M=>{o(!1,M.nativeEvent,"reference-press")},...p!=="click"&&{onClick(M){o(!1,M.nativeEvent,"reference-press")}}}}),[R,o,u,p]),H=S.useMemo(()=>({onKeyDown:R,onMouseDown(){C.current=!0},onMouseUp(){C.current=!0},[iTe[d]]:()=>{i.current.insideReactTree=!0}}),[R,d,i]);return S.useMemo(()=>l?{reference:L,floating:H}:{},[l,L,H])}function lTe(e){const{open:r=!1,onOpenChange:n,elements:o}=e,a=IH(),i=S.useRef({}),[l]=S.useState(()=>tTe()),s=p9()!=null,[c,d]=S.useState(o.reference),u=Ql((g,v,w)=>{i.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:i,open:r,onOpenChange:u,elements:f,events:l,floatingId:a,refs:p}),[r,u,f,l,a,p])}function Nw(e){e===void 0&&(e={});const{nodeId:r}=e,n=lTe({...e,elements:{reference:null,floating:null,...e.elements}}),o=e.rootContext||n,a=o.elements,[i,l]=S.useState(null),[s,c]=S.useState(null),d=a?.domReference||i,u=S.useRef(null),p=h9();Kl(()=>{d&&(u.current=d)},[d]);const f=Wje({...e,elements:{...a,...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 Kl(()=>{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 y9(){return KRe()&&ZRe()}function sTe(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,events:a,dataRef:i,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=ea(l.domReference);function v(){!n&&Sa(l.domReference)&&l.domReference===cH(Ku(l.domReference))&&(d.current=!0)}function w(){p.current=!0}function x(){p.current=!1}return g.addEventListener("blur",v),y9()&&(g.addEventListener("keydown",w,!0),g.addEventListener("pointerdown",x,!0)),()=>{g.removeEventListener("blur",v),y9()&&(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 a.on("openchange",g),()=>{a.off("openchange",g)}},[a,s]),S.useEffect(()=>()=>{ni(u)},[]);const f=S.useMemo(()=>({onMouseLeave(){d.current=!1},onFocus(g){if(d.current)return;const v=_f(g.nativeEvent);if(c&&Ar(v)){if(y9()&&!g.relatedTarget){if(!p.current&&!tje(v))return}else if(!rje(v))return}o(!0,g.nativeEvent,"focus")},onBlur(g){d.current=!1;const v=g.relatedTarget,w=g.nativeEvent,x=Ar(v)&&v.hasAttribute(f9("focus-guard"))&&v.getAttribute("data-type")==="outside";u.current=window.setTimeout(()=>{var k;const C=cH(l.domReference?l.domReference.ownerDocument:document);!v&&C===l.domReference||ey((k=i.current.floatingContext)==null?void 0:k.refs.floating.current,C)||ey(l.domReference,C)||x||o(!1,w,"focus")})}}),[i,l.domReference,o,c]);return S.useMemo(()=>s?{reference:f}:{},[s,f])}function v9(e,r,n){const o=new Map,a=n==="item";let i=e;if(a&&e){const{[NH]:l,[PH]:s,...c}=e;i=c}return{...n==="floating"&&{tabIndex:-1,[Zje]:""},...i,...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(!(a&&[NH,PH].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 GH(e){e===void 0&&(e=[]);const r=e.map(s=>s?.reference),n=e.map(s=>s?.floating),o=e.map(s=>s?.item),a=S.useCallback(s=>v9(s,e,"reference"),r),i=S.useCallback(s=>v9(s,e,"floating"),n),l=S.useCallback(s=>v9(s,e,"item"),o);return S.useMemo(()=>({getReferenceProps:a,getFloatingProps:i,getItemProps:l}),[a,i,l])}const cTe=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function YH(e,r){var n,o;r===void 0&&(r={});const{open:a,elements:i,floatingId:l}=e,{enabled:s=!0,role:c="dialog"}=r,d=IH(),u=((n=i.domReference)==null?void 0:n.id)||d,p=S.useMemo(()=>{var k;return((k=nje(i.floating))==null?void 0:k.id)||l},[i.floating,l]),f=(o=cTe.get(c))!=null?o:c,g=p9()!=null,v=S.useMemo(()=>f==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]:a?p:void 0}:{"aria-expanded":a?"true":"false","aria-haspopup":f==="alertdialog"?"dialog":f,"aria-controls":a?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,a,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[dTe,oi]=ei("ScrollArea.Root component was not found in tree");function Cf(e,r){const n=Qn(r);Z1(()=>{let o=0;if(e){const a=new ResizeObserver(()=>{cancelAnimationFrame(o),o=window.requestAnimationFrame(n)});return a.observe(e),()=>{window.cancelAnimationFrame(o),a.unobserve(e)}}},[e,n])}const uTe=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=oi(),[i,l]=S.useState(0),[s,c]=S.useState(0),d=!!(i&&s);return Cf(a.scrollbarX,()=>{const u=a.scrollbarX?.offsetHeight||0;a.onCornerHeightChange(u),c(u)}),Cf(a.scrollbarY,()=>{const u=a.scrollbarY?.offsetWidth||0;a.onCornerWidthChange(u),l(u)}),d?y.jsx("div",{...o,ref:r,style:{...n,width:i,height:s}}):null}),pTe=S.forwardRef((e,r)=>{const n=oi(),o=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&o?y.jsx(uTe,{...e,ref:r}):null}),hTe={scrollHideDelay:1e3,type:"hover"},XH=S.forwardRef((e,r)=>{const{type:n,scrollHideDelay:o,scrollbars:a,getStyles:i,...l}=Me("ScrollAreaRoot",hTe,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),[z,j]=S.useState(!1),[A,R]=S.useState(!1),T=$r(r,O=>c(O));return y.jsx(dTe,{value:{type:n,scrollHideDelay:o,scrollArea:s,viewport:d,onViewportChange:u,content:p,onContentChange:f,scrollbarX:g,onScrollbarXChange:v,scrollbarXEnabled:z,onScrollbarXEnabledChange:j,scrollbarY:w,onScrollbarYChange:x,scrollbarYEnabled:A,onScrollbarYEnabledChange:R,onCornerWidthChange:C,onCornerHeightChange:$,getStyles:i},children:y.jsx(Se,{...l,ref:T,__vars:{"--sa-corner-width":a!=="xy"?"0px":`${k}px`,"--sa-corner-height":a!=="xy"?"0px":`${_}px`}})})});XH.displayName="@mantine/core/ScrollAreaRoot";function ZH(e,r){const n=e/r;return Number.isNaN(n)?0:n}function Pw(e){const r=ZH(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=(e.scrollbar.size-n)*r;return Math.max(o,18)}function KH(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 fTe(e,[r,n]){return Math.min(n,Math.max(r,e))}function QH(e,r,n="ltr"){const o=Pw(r),a=r.scrollbar.paddingStart+r.scrollbar.paddingEnd,i=r.scrollbar.size-a,l=r.content-r.viewport,s=i-o,c=n==="ltr"?[0,l]:[l*-1,0],d=fTe(e,c);return KH([0,l],[0,s])(d)}function mTe(e,r,n,o="ltr"){const a=Pw(n),i=a/2,l=r||i,s=a-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 KH([c,d],p)(e)}function JH(e,r){return e>0&&e{e?.(o),(n===!1||!o.defaultPrevented)&&r?.(o)}}const[gTe,eU]=ei("ScrollAreaScrollbar was not found in tree"),tU=S.forwardRef((e,r)=>{const{sizes:n,hasThumb:o,onThumbChange:a,onThumbPointerUp:i,onThumbPointerDown:l,onThumbPositionChange:s,onDragScroll:c,onWheelScroll:d,onResize:u,...p}=e,f=oi(),[g,v]=S.useState(null),w=$r(r,R=>v(R)),x=S.useRef(null),k=S.useRef(""),{viewport:C}=f,_=n.content-n.viewport,$=Qn(d),z=Qn(s),j=gf(u,10),A=R=>{if(x.current){const T=R.clientX-x.current.left,O=R.clientY-x.current.top;c({x:T,y:O})}};return S.useEffect(()=>{const R=T=>{const O=T.target;g?.contains(O)&&$(T,_)};return document.addEventListener("wheel",R,{passive:!1}),()=>document.removeEventListener("wheel",R,{passive:!1})},[C,g,_,$]),S.useEffect(z,[n,z]),Cf(g,j),Cf(f.content,j),y.jsx(gTe,{value:{scrollbar:g,hasThumb:o,onThumbChange:Qn(a),onThumbPointerUp:Qn(i),onThumbPositionChange:z,onThumbPointerDown:Qn(l)},children:y.jsx("div",{...p,ref:w,"data-mantine-scrollbar":!0,style:{position:"absolute",...p.style},onPointerDown:Ju(e.onPointerDown,R=>{R.preventDefault(),R.button===0&&(R.target.setPointerCapture(R.pointerId),x.current=g.getBoundingClientRect(),k.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",A(R))}),onPointerMove:Ju(e.onPointerMove,A),onPointerUp:Ju(e.onPointerUp,R=>{const T=R.target;T.hasPointerCapture(R.pointerId)&&(R.preventDefault(),T.releasePointerCapture(R.pointerId))}),onLostPointerCapture:()=>{document.body.style.webkitUserSelect=k.current,x.current=null}})})}),rU=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=oi(),[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(tU,{"data-orientation":"horizontal",...i,ref:u,sizes:n,style:{...a,"--sa-thumb-width":`${Pw(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),JH(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:ud(s.paddingLeft),paddingEnd:ud(s.paddingRight)}})}})});rU.displayName="@mantine/core/ScrollAreaScrollbarX";const nU=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=oi(),[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(tU,{...i,"data-orientation":"vertical",ref:u,sizes:n,style:{"--sa-thumb-height":`${Pw(n)}px`,...a},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),JH(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:ud(s.paddingTop),paddingEnd:ud(s.paddingBottom)}})}})});nU.displayName="@mantine/core/ScrollAreaScrollbarY";const Bw=S.forwardRef((e,r)=>{const{orientation:n="vertical",...o}=e,{dir:a}=dd(),i=oi(),l=S.useRef(null),s=S.useRef(0),[c,d]=S.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=ZH(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)=>mTe(g,s.current,c,v);return n==="horizontal"?y.jsx(rU,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollLeft,v=QH(g,c,a);l.current.style.transform=`translate3d(${v}px, 0, 0)`}},onWheelScroll:g=>{i.viewport&&(i.viewport.scrollLeft=g)},onDragScroll:g=>{i.viewport&&(i.viewport.scrollLeft=f(g,a))}}):n==="vertical"?y.jsx(nU,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollTop,v=QH(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=>{i.viewport&&(i.viewport.scrollTop=g)},onDragScroll:g=>{i.viewport&&(i.viewport.scrollTop=f(g))}}):null});Bw.displayName="@mantine/core/ScrollAreaScrollbarVisible";const b9=S.forwardRef((e,r)=>{const n=oi(),{forceMount:o,...a}=e,[i,l]=S.useState(!1),s=e.orientation==="horizontal",c=gf(()=>{if(n.viewport){const d=n.viewport.offsetWidth{const{forceMount:n,...o}=e,a=oi(),[i,l]=S.useState(!1);return S.useEffect(()=>{const{scrollArea:s}=a;let c=0;if(s){const d=()=>{window.clearTimeout(c),l(!0)},u=()=>{c=window.setTimeout(()=>l(!1),a.scrollHideDelay)};return s.addEventListener("pointerenter",d),s.addEventListener("pointerleave",u),()=>{window.clearTimeout(c),s.removeEventListener("pointerenter",d),s.removeEventListener("pointerleave",u)}}},[a.scrollArea,a.scrollHideDelay]),n||i?y.jsx(b9,{"data-state":i?"visible":"hidden",...o,ref:r}):null});oU.displayName="@mantine/core/ScrollAreaScrollbarHover";const yTe=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=oi(),i=e.orientation==="horizontal",[l,s]=S.useState("hidden"),c=gf(()=>s("idle"),100);return S.useEffect(()=>{if(l==="idle"){const d=window.setTimeout(()=>s("hidden"),a.scrollHideDelay);return()=>window.clearTimeout(d)}},[l,a.scrollHideDelay]),S.useEffect(()=>{const{viewport:d}=a,u=i?"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)}},[a.viewport,i,c]),n||l!=="hidden"?y.jsx(Bw,{"data-state":l==="hidden"?"hidden":"visible",...o,ref:r,onPointerEnter:Ju(e.onPointerEnter,()=>s("interacting")),onPointerLeave:Ju(e.onPointerLeave,()=>s("idle"))}):null}),x9=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=oi(),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:l}=a,s=e.orientation==="horizontal";return S.useEffect(()=>(s?i(!0):l(!0),()=>{s?i(!1):l(!1)}),[s,i,l]),a.type==="hover"?y.jsx(oU,{...o,ref:r,forceMount:n}):a.type==="scroll"?y.jsx(yTe,{...o,ref:r,forceMount:n}):a.type==="auto"?y.jsx(b9,{...o,ref:r,forceMount:n}):a.type==="always"?y.jsx(Bw,{...o,ref:r}):null});x9.displayName="@mantine/core/ScrollAreaScrollbar";function vTe(e,r=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},o=0;return(function a(){const i={left:e.scrollLeft,top:e.scrollTop},l=n.left!==i.left,s=n.top!==i.top;(l||s)&&r(),n=i,o=window.requestAnimationFrame(a)})(),()=>window.cancelAnimationFrame(o)}const aU=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=oi(),i=eU(),{onThumbPositionChange:l}=i,s=$r(r,u=>i.onThumbChange(u)),c=S.useRef(void 0),d=gf(()=>{c.current&&(c.current(),c.current=void 0)},100);return S.useEffect(()=>{const{viewport:u}=a;if(u){const p=()=>{if(d(),!c.current){const f=vTe(u,l);c.current=f,l()}};return l(),u.addEventListener("scroll",p),()=>u.removeEventListener("scroll",p)}},[a.viewport,d,l]),y.jsx("div",{"data-state":i.hasThumb?"visible":"hidden",...o,ref:s,style:{width:"var(--sa-thumb-width)",height:"var(--sa-thumb-height)",...n},onPointerDownCapture:Ju(e.onPointerDownCapture,u=>{const p=u.target.getBoundingClientRect(),f=u.clientX-p.left,g=u.clientY-p.top;i.onThumbPointerDown({x:f,y:g})}),onPointerUp:Ju(e.onPointerUp,i.onThumbPointerUp)})});aU.displayName="@mantine/core/ScrollAreaThumb";const w9=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=eU();return n||a.hasThumb?y.jsx(aU,{ref:r,...o}):null});w9.displayName="@mantine/core/ScrollAreaThumb";const iU=S.forwardRef(({children:e,style:r,...n},o)=>{const a=oi(),i=$r(o,a.onViewportChange);return y.jsx(Se,{...n,ref:i,style:{overflowX:a.scrollbarXEnabled?"scroll":"hidden",overflowY:a.scrollbarYEnabled?"scroll":"hidden",...r},children:y.jsx("div",{...a.getStyles("content"),ref:a.onContentChange,children:e})})});iU.displayName="@mantine/core/ScrollAreaViewport";var k9={root:"m_d57069b5",content:"m_b1336c6",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const lU={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},bTe=(e,{scrollbarSize:r,overscrollBehavior:n})=>({root:{"--scrollarea-scrollbar-size":$e(r),"--scrollarea-over-scroll-behavior":n}}),Jl=ot((e,r)=>{const n=Me("ScrollArea",lU,e),{classNames:o,className:a,style:i,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:z,...j}=n,[A,R]=S.useState(!1),[T,O]=S.useState(!1),[P,L]=S.useState(!1),H=kt({name:"ScrollArea",props:n,classes:k9,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:d,varsResolver:bTe}),M=S.useRef(null),V=MH([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;O(q>G),L(U>Y)});return F.observe(B),()=>F.disconnect()},[M,x]),y.jsxs(XH,{getStyles:H,type:u==="never"?"always":u,scrollHideDelay:p,ref:r,scrollbars:k,...H("root"),...j,children:[y.jsx(iU,{...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"&&!T?"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(x9,{...H("scrollbar"),orientation:"horizontal","data-hidden":u==="never"||x==="present"&&!P?!0:void 0,forceMount:!0,onMouseEnter:()=>R(!0),onMouseLeave:()=>R(!1),children:y.jsx(w9,{...H("thumb")})}),(k==="xy"||k==="y")&&y.jsx(x9,{...H("scrollbar"),orientation:"vertical","data-hidden":u==="never"||x==="present"&&!T?!0:void 0,forceMount:!0,onMouseEnter:()=>R(!0),onMouseLeave:()=>R(!1),children:y.jsx(w9,{...H("thumb")})}),y.jsx(pTe,{...H("corner"),"data-hovered":A||void 0,"data-hidden":u==="never"||void 0})]})});Jl.displayName="@mantine/core/ScrollArea";const ta=ot((e,r)=>{const{children:n,classNames:o,styles:a,scrollbarSize:i,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:$,...z}=Me("ScrollAreaAutosize",lU,e),j=S.useRef(null),A=MH([u,j]),[R,T]=S.useState(!1),O=S.useRef(!1);return S.useEffect(()=>{if(!$)return;const P=j.current;if(!P)return;const L=()=>{const M=P.scrollHeight>P.clientHeight;M!==R&&(O.current?$?.(M):(O.current=!0,M&&$?.(!0)),T(M))};L();const H=new ResizeObserver(L);return H.observe(P),()=>H.disconnect()},[$,R]),y.jsx(Se,{...z,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(Jl,{classNames:o,styles:a,scrollHideDelay:l,scrollbarSize:i,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})})})});Jl.classes=k9,ta.displayName="@mantine/core/ScrollAreaAutosize",ta.classes=k9,Jl.Autosize=ta;var sU={root:"m_87cf2631"};const xTe={__staticSelector:"UnstyledButton"},pr=Jn((e,r)=>{const n=Me("UnstyledButton",xTe,e),{className:o,component:a="button",__staticSelector:i,unstyled:l,classNames:s,styles:c,style:d,attributes:u,...p}=n,f=kt({name:i,props:n,classes:sU,className:o,style:d,classNames:s,styles:c,unstyled:l,attributes:u});return y.jsx(Se,{...f("root",{focusable:!0}),component:a,ref:r,type:a==="button"?"button":void 0,...p})});pr.classes=sU,pr.displayName="@mantine/core/UnstyledButton";var cU={root:"m_515a97f8"};const Ow=ot((e,r)=>{const n=Me("VisuallyHidden",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,attributes:d,...u}=n,p=kt({name:"VisuallyHidden",classes:cU,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:d});return y.jsx(Se,{component:"span",ref:r,...p("root"),...u})});Ow.classes=cU,Ow.displayName="@mantine/core/VisuallyHidden";var dU={root:"m_1b7284a3"};const wTe=(e,{radius:r,shadow:n})=>({root:{"--paper-radius":r===void 0?void 0:wn(r),"--paper-shadow":hq(n)}}),$f=Jn((e,r)=>{const n=Me("Paper",null,e),{classNames:o,className:a,style:i,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:dU,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:d,varsResolver:wTe});return y.jsx(Se,{ref:r,mod:[{"data-with-border":c},g],...x("root"),variant:f,...w})});$f.classes=dU,$f.displayName="@mantine/core/Paper";function uU(e,r,n,o){return e==="center"||o==="center"?{top:r}:e==="end"?{bottom:n}:e==="start"?{top:n}:{}}function pU(e,r,n,o,a){return e==="center"||o==="center"?{left:r}:e==="end"?{[a==="ltr"?"right":"left"]:n}:e==="start"?{[a==="ltr"?"left":"right"]:n}:{}}const kTe={bottom:"borderTopLeftRadius",left:"borderTopRightRadius",right:"borderBottomLeftRadius",top:"borderBottomRightRadius"};function _Te({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,arrowX:i,arrowY:l,dir:s}){const[c,d="center"]=e.split("-"),u={width:r,height:r,transform:"rotate(45deg)",position:"absolute",[kTe[c]]:o},p=-r/2;return c==="left"?{...u,...uU(d,l,n,a),right:p,borderLeftColor:"transparent",borderBottomColor:"transparent",clipPath:"polygon(100% 0, 0 0, 100% 100%)"}:c==="right"?{...u,...uU(d,l,n,a),left:p,borderRightColor:"transparent",borderTopColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 100%)"}:c==="top"?{...u,...pU(d,i,n,a,s),bottom:p,borderTopColor:"transparent",borderLeftColor:"transparent",clipPath:"polygon(0 100%, 100% 100%, 100% 0)"}:c==="bottom"?{...u,...pU(d,i,n,a,s),top:p,borderBottomColor:"transparent",borderRightColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 0)"}:{}}const Iw=S.forwardRef(({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,visible:i,arrowX:l,arrowY:s,style:c,...d},u)=>{const{dir:p}=dd();return i?y.jsx("div",{...d,ref:u,style:{...c,..._Te({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,dir:p,arrowX:l,arrowY:s})}}):null});Iw.displayName="@mantine/core/FloatingArrow";function hU(e,r){if(e==="rtl"&&(r.includes("right")||r.includes("left"))){const[n,o]=r.split("-"),a=n==="right"?"left":"right";return o===void 0?a:`${a}-${o}`}return r}var fU={root:"m_9814e45f"};const STe={zIndex:aw("modal")},ETe=(e,{gradient:r,color:n,backgroundOpacity:o,blur:a,radius:i,zIndex:l})=>({root:{"--overlay-bg":r||(n!==void 0||o!==void 0)&&Yl(n||"#000",o??.6)||void 0,"--overlay-filter":a?`blur(${$e(a)})`:void 0,"--overlay-radius":i===void 0?void 0:wn(i),"--overlay-z-index":l?.toString()}}),_9=Jn((e,r)=>{const n=Me("Overlay",STe,e),{classNames:o,className:a,style:i,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,z=kt({name:"Overlay",props:n,classes:fU,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:ETe});return y.jsx(Se,{ref:r,...z("root"),mod:[{center:u,fixed:d},C],...$,children:p})});_9.classes=fU,_9.displayName="@mantine/core/Overlay";function S9(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 CTe({target:e,reuseTargetNode:r,...n}){if(e)return typeof e=="string"?document.querySelector(e)||S9(n):e;if(r){const o=document.querySelector("[data-mantine-shared-portal-node]");if(o)return o;const a=S9(n);return a.setAttribute("data-mantine-shared-portal-node","true"),document.body.appendChild(a),a}return S9(n)}const $Te={reuseTargetNode:!0},ry=ot((e,r)=>{const{children:n,target:o,reuseTargetNode:a,...i}=Me("Portal",$Te,e),[l,s]=S.useState(!1),c=S.useRef(null);return Z1(()=>(s(!0),c.current=CTe({target:o,reuseTargetNode:a,...i}),T7(r,c.current),!o&&!a&&c.current&&document.body.appendChild(c.current),()=>{!o&&!a&&c.current&&document.body.removeChild(c.current)}),[o]),!l||!c.current?null:Ii.createPortal(y.jsx(y.Fragment,{children:n}),c.current)});ry.displayName="@mantine/core/Portal";const zf=ot(({withinPortal:e=!0,children:r,...n},o)=>hw()==="test"||!e?y.jsx(y.Fragment,{children:r}):y.jsx(ry,{ref:o,...n,children:r}));zf.displayName="@mantine/core/OptionalPortal";const ny=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${e==="bottom"?10:-10}px)`},transitionProperty:"transform, opacity"}),Lw={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:{...ny("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...ny("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...ny("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...ny("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...ny("top"),common:{transformOrigin:"top right"}}},mU={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function zTe({transition:e,state:r,duration:n,timingFunction:o}){const a={WebkitBackfaceVisibility:"hidden",transitionDuration:`${n}ms`,transitionTimingFunction:o};return typeof e=="string"?e in Lw?{transitionProperty:Lw[e].transitionProperty,...a,...Lw[e].common,...Lw[e][mU[r]]}:{}:{transitionProperty:e.transitionProperty,...a,...e.common,...e[mU[r]]}}function RTe({duration:e,exitDuration:r,timingFunction:n,mounted:o,onEnter:a,onExit:i,onEntered:l,onExited:s,enterDelay:c,exitDelay:d}){const u=lo(),p=Eq(),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 z=A=>{$();const R=A?a:i,T=A?l:s,O=f?0:A?e:r;v(O),O===0?(typeof R=="function"&&R(),typeof T=="function"&&T(),x(A?"entered":"exited")):_.current=requestAnimationFrame(()=>{QM.flushSync(()=>{x(A?"pre-entering":"pre-exiting")}),_.current=requestAnimationFrame(()=>{typeof R=="function"&&R(),x(A?"entering":"exiting"),k.current=window.setTimeout(()=>{typeof T=="function"&&T(),x(A?"entered":"exited")},O)})})},j=A=>{if($(),typeof(A?c:d)!="number"){z(A);return}C.current=window.setTimeout(()=>{z(A)},A?c:d)};return Xu(()=>{j(o)},[o]),S.useEffect(()=>()=>{$()},[]),{transitionDuration:g,transitionStatus:w,transitionTimingFunction:n||"ease"}}function pd({keepMounted:e,transition:r="fade",duration:n=250,exitDuration:o=n,mounted:a,children:i,timingFunction:l="ease",onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f}){const g=hw(),{transitionDuration:v,transitionStatus:w,transitionTimingFunction:x}=RTe({mounted:a,exitDuration:o,duration:n,timingFunction:l,onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f});return v===0||g==="test"?a?y.jsx(y.Fragment,{children:i({})}):e?i({display:"none"}):null:w==="exited"?e?i({display:"none"}):null:y.jsx(y.Fragment,{children:i(zTe({transition:r,duration:v,state:w,timingFunction:x}))})}pd.displayName="@mantine/core/Transition";const[jTe,gU]=ei("Popover component was not found in the tree");function Fw({children:e,active:r=!0,refProp:n="ref",innerRef:o}){const a=wq(r),i=$r(a,o);return Ki(e)?S.cloneElement(e,{[n]:i}):e}function yU(e){return y.jsx(Ow,{tabIndex:-1,"data-autofocus":!0,...e})}Fw.displayName="@mantine/core/FocusTrap",yU.displayName="@mantine/core/FocusTrapInitialFocus",Fw.InitialFocus=yU;var vU={dropdown:"m_38a85659",arrow:"m_a31dc6c1",overlay:"m_3d7bc908"};const Xs=ot((e,r)=>{const n=Me("PopoverDropdown",null,e),{className:o,style:a,vars:i,children:l,onKeyDownCapture:s,variant:c,classNames:d,styles:u,...p}=n,f=gU(),g=O$e({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(zf,{...f.portalProps,withinPortal:f.withinPortal,children:y.jsx(pd,{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(Fw,{active:f.trapFocus&&f.opened,innerRef:w,children:y.jsxs(Se,{...v,...p,variant:c,onKeyDownCapture:z$e(()=>{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,a]}),children:[l,y.jsx(Iw,{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})})]})})})})});Xs.classes=vU,Xs.displayName="@mantine/core/PopoverDropdown";const TTe={refProp:"ref",popupType:"dialog"},hd=ot((e,r)=>{const{children:n,refProp:o,popupType:a,...i}=Me("PopoverTarget",TTe,e);if(!Ki(n))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 l=i,s=gU(),c=$r(s.reference,sw(n),r),d=s.withRoles?{"aria-haspopup":a,"aria-expanded":s.opened,"aria-controls":s.getDropdownId(),id:s.getTargetId()}:{};return S.cloneElement(n,{...l,...d,...s.targetProps,className:Qi(s.targetProps.className,l.className,n.props.className),[o]:c,...s.controlled?null:{onClick:()=>{s.onToggle(),n.props.onClick?.()}}})});hd.displayName="@mantine/core/PopoverTarget";function ATe(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 DTe(e,r,n){const o=ATe(e.middlewares),a=[TH(e.offset),Xje()];return e.dropdownVisible&&n!=="test"&&e.preventPositionChangeWhenVisible&&(o.flip=!1),o.shift&&a.push(u9(typeof o.shift=="boolean"?{limiter:AH(),padding:5}:{limiter:AH(),padding:5,...o.shift})),o.flip&&a.push(typeof o.flip=="boolean"?Dw():Dw(o.flip)),o.inline&&a.push(typeof o.inline=="boolean"?ty():ty(o.inline)),a.push(DH({element:e.arrowRef,padding:e.arrowOffset})),(o.size||e.width==="target")&&a.push(Yje({...typeof o.size=="boolean"?{}:o.size,apply({rects:i,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:i,availableWidth:l,availableHeight:s,...c}):Object.assign(d,{maxWidth:`${l}px`,maxHeight:`${s}px`})),e.width==="target"&&Object.assign(d,{width:`${i.reference.width}px`})}})),a}function MTe(e){const r=hw(),[n,o]=Us({value:e.opened,defaultValue:e.defaultOpened,finalValue:!1,onChange:e.onChange}),a=S.useRef(n),i=()=>{n&&!e.disabled&&o(!1)},l=()=>{e.disabled||o(!n)},s=Nw({strategy:e.strategy,placement:e.preventPositionChangeWhenVisible?e.positionRef.current:e.position,middleware:DTe(e,()=>s,r),whileElementsMounted:e.keepMounted?void 0:jw});return S.useEffect(()=>{if(!(!s.refs.reference.current||!s.refs.floating.current)&&n)return jw(s.refs.reference.current,s.refs.floating.current,s.update)},[n,s.update]),Xu(()=>{e.onPositionChange?.(s.placement),e.positionRef.current=s.placement},[s.placement,e.preventPositionChangeWhenVisible]),Xu(()=>{n!==a.current&&(n?e.onOpen?.():e.onClose?.()),a.current=n},[n,e.onClose,e.onOpen]),Xu(()=>{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:i,onToggle:l}}const NTe={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:aw("popover"),__staticSelector:"Popover",width:"max-content"},PTe=(e,{radius:r,shadow:n})=>({dropdown:{"--popover-radius":r===void 0?void 0:wn(r),"--popover-shadow":hq(n)}});function br(e){const r=Me("Popover",NTe,e),{children:n,position:o,offset:a,onPositionChange:i,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:z,withinPortal:j,portalProps:A,closeOnEscape:R,clickOutsideEvents:T,trapFocus:O,onClose:P,onDismiss:L,onOpen:H,onChange:M,zIndex:V,radius:B,shadow:F,id:q,defaultOpened:G,__staticSelector:U,withRoles:Y,disabled:Z,returnFocus:I,variant:W,keepMounted:K,vars:Q,floatingStrategy:ae,withOverlay:te,overlayProps:re,hideDetached:ue,attributes:_e,preventPositionChangeWhenVisible:ce,...pe}=r,xe=kt({name:U,props:r,classes:vU,classNames:_,styles:$,unstyled:C,attributes:_e,rootSelector:"dropdown",vars:Q,varsResolver:PTe}),{resolvedStyles:De}=H7({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:Ot}=dd(),Et=hw(),be=ti(q),ke=MTe({middlewares:f,width:p,position:hU(Ot,o),offset:typeof a=="number"?a+(g?v/2:0):a,arrowRef:Le,arrowOffset:w,onPositionChange:i,positionDependencies:l,opened:s,defaultOpened:G,onChange:M,onOpen:H,onClose:P,onDismiss:L,strategy:ae,dropdownVisible:Be,setDropdownVisible:Je,positionRef:st,disabled:Z,preventPositionChangeWhenVisible:ce,keepMounted:K});mq(()=>{z&&(ke.onClose(),L?.())},T,[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]),jr=S.useCallback(()=>{c?.onEntered?.(),u?.()},[c?.onEntered,u]);return y.jsxs(jTe,{value:{returnFocus:I,disabled:Z,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:jr},width:p,withArrow:g,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,placement:ke.floating.placement,trapFocus:O,withinPortal:j,portalProps:A,zIndex:V,radius:B,shadow:F,closeOnEscape:R,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:K,getStyles:xe,resolvedStyles:De,floatingStrategy:ae,referenceHidden:ue&&Et!=="test"?ke.floating.middlewareData.hide?.referenceHidden:!1},children:[n,te&&y.jsx(pd,{transition:"fade",mounted:ke.opened,duration:c?.duration||250,exitDuration:c?.exitDuration||250,children:er=>y.jsx(zf,{withinPortal:j,children:y.jsx(_9,{...re,...xe("overlay",{className:re?.className,style:[er,re?.style]})})})})]})}br.Target=hd,br.Dropdown=Xs,br.displayName="@mantine/core/Popover",br.extend=e=>e;var nl={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 bU=S.forwardRef(({className:e,...r},n)=>y.jsxs(Se,{component:"span",className:Qi(nl.barsLoader,e),...r,ref:n,children:[y.jsx("span",{className:nl.bar}),y.jsx("span",{className:nl.bar}),y.jsx("span",{className:nl.bar})]}));bU.displayName="@mantine/core/Bars";const xU=S.forwardRef(({className:e,...r},n)=>y.jsxs(Se,{component:"span",className:Qi(nl.dotsLoader,e),...r,ref:n,children:[y.jsx("span",{className:nl.dot}),y.jsx("span",{className:nl.dot}),y.jsx("span",{className:nl.dot})]}));xU.displayName="@mantine/core/Dots";const wU=S.forwardRef(({className:e,...r},n)=>y.jsx(Se,{component:"span",className:Qi(nl.ovalLoader,e),...r,ref:n}));wU.displayName="@mantine/core/Oval";const kU={bars:bU,oval:wU,dots:xU},BTe={loaders:kU,type:"oval"},OTe=(e,{size:r,color:n})=>({root:{"--loader-size":dr(r,"loader-size"),"--loader-color":n?_a(n,e):void 0}}),Rf=ot((e,r)=>{const n=Me("Loader",BTe,e),{size:o,color:a,type:i,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:nl,className:s,style:c,classNames:d,styles:u,unstyled:p,attributes:w,vars:l,varsResolver:OTe});return v?y.jsx(Se,{...k("root"),ref:r,...x,children:v}):y.jsx(Se,{...k("root"),ref:r,component:f[i],variant:g,size:o,...x})});Rf.defaultLoaders=kU,Rf.classes=nl,Rf.displayName="@mantine/core/Loader";var jf={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21",groupSection:"m_437b6484"};const _U={orientation:"horizontal"},ITe=(e,{borderWidth:r})=>({group:{"--ai-border-width":$e(r)}}),Vw=ot((e,r)=>{const n=Me("ActionIconGroup",_U,e),{className:o,style:a,classNames:i,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=Me("ActionIconGroup",_U,e),w=kt({name:"ActionIconGroup",props:n,classes:jf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:ITe,rootSelector:"group"});return y.jsx(Se,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});Vw.classes=jf,Vw.displayName="@mantine/core/ActionIconGroup";const LTe=(e,{radius:r,color:n,gradient:o,variant:a,autoContrast:i,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:i});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||a?s.background:void 0,"--section-color":s.color,"--section-bd":n||a?s.border:void 0}}},E9=ot((e,r)=>{const n=Me("ActionIconGroupSection",null,e),{className:o,style:a,classNames:i,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:jf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:LTe,rootSelector:"groupSection"});return y.jsx(Se,{...w("groupSection"),ref:r,variant:d,...v})});E9.classes=jf,E9.displayName="@mantine/core/ActionIconGroupSection";const FTe=(e,{size:r,radius:n,variant:o,gradient:a,color:i,autoContrast:l})=>{const s=e.variantColorResolver({color:i||e.primaryColor,theme:e,gradient:a,variant:o||"filled",autoContrast:l});return{root:{"--ai-size":dr(r,"ai-size"),"--ai-radius":n===void 0?void 0:wn(n),"--ai-bg":i||o?s.background:void 0,"--ai-hover":i||o?s.hover:void 0,"--ai-hover-color":i||o?s.hoverColor:void 0,"--ai-color":s.color,"--ai-bd":i||o?s.border:void 0}}},lr=Jn((e,r)=>{const n=Me("ActionIcon",null,e),{className:o,unstyled:a,variant:i,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:z,attributes:j,...A}=n,R=kt({name:["ActionIcon",v],props:n,className:o,style:c,classes:jf,classNames:l,styles:s,unstyled:a,attributes:j,vars:x,varsResolver:FTe});return y.jsxs(pr,{...R("root",{active:!C&&!d&&!_}),...A,unstyled:a,variant:i,size:p,disabled:C||d,ref:r,mod:[{loading:d,disabled:C||_},z],children:[typeof d=="boolean"&&y.jsx(pd,{mounted:d,transition:"slide-down",duration:150,children:T=>y.jsx(Se,{component:"span",...R("loader",{style:T}),"aria-hidden":!0,children:y.jsx(Rf,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...u})})}),y.jsx(Se,{component:"span",mod:{loading:d},...R("icon"),children:k})]})});lr.classes=jf,lr.displayName="@mantine/core/ActionIcon",lr.Group=Vw,lr.GroupSection=E9;const SU=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"})}));SU.displayName="@mantine/core/CloseIcon";var EU={root:"m_86a44da5","root--subtle":"m_220c80f2"};const VTe={variant:"subtle"},qTe=(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)}}),ep=Jn((e,r)=>{const n=Me("CloseButton",VTe,e),{iconSize:o,children:a,vars:i,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:EU,classNames:c,styles:u,unstyled:p,attributes:k,vars:i,varsResolver:qTe});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(SU,{}),a]})});ep.classes=EU,ep.displayName="@mantine/core/CloseButton";function HTe(e){return S.Children.toArray(e).filter(Boolean)}var CU={root:"m_4081bf90"};const UTe={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},WTe=(e,{grow:r,preventGrowOverflow:n,gap:o,align:a,justify:i,wrap:l},{childWidth:s})=>({root:{"--group-child-width":r&&n?s:void 0,"--group-gap":Hs(o),"--group-align":a,"--group-justify":i,"--group-wrap":l}}),en=ot((e,r)=>{const n=Me("Group",UTe,e),{classNames:o,className:a,style:i,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,z=HTe(c),j=z.length,A=Hs(d??"md"),R={childWidth:`calc(${100/j}% - (${A} - ${A} / ${j}))`},T=kt({name:"Group",props:n,stylesCtx:R,className:a,style:i,classes:CU,classNames:o,styles:l,unstyled:s,attributes:_,vars:w,varsResolver:WTe});return y.jsx(Se,{...T("root"),ref:r,variant:x,mod:[{grow:g},C],size:k,...$,children:z})});en.classes=CU,en.displayName="@mantine/core/Group";const[GTe,YTe]=G1({size:"sm"}),$U=ot((e,r)=>{const n=Me("InputClearButton",null,e),{size:o,variant:a,vars:i,classNames:l,styles:s,...c}=n,d=YTe(),{resolvedClassNames:u,resolvedStyles:p}=H7({classNames:l,styles:s,props:n});return y.jsx(ep,{variant:a||"transparent",ref:r,size:o||d?.size||"sm",classNames:u,styles:p,__staticSelector:"InputClearButton",style:{pointerEvents:"all",background:"var(--input-bg)",...c.style},...c})});$U.displayName="@mantine/core/InputClearButton";const XTe={xs:7,sm:8,md:10,lg:12,xl:15};function ZTe({__clearable:e,__clearSection:r,rightSection:n,__defaultRightSection:o,size:a="sm"}){const i=e&&r;return i&&(n||o)?y.jsxs("div",{"data-combined-clear-section":!0,style:{display:"flex",gap:2,alignItems:"center",paddingInlineEnd:XTe[a]},children:[i,n||o]}):n===null?null:n||i||o}const[KTe,qw]=G1({offsetBottom:!1,offsetTop:!1,describedBy:void 0,getStyles:null,inputId:void 0,labelId:void 0});var ai={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 QTe=(e,{size:r})=>({description:{"--input-description-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),Hw=ot((e,r)=>{const n=Me("InputDescription",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,size:d,__staticSelector:u,__inheritStyles:p=!0,attributes:f,variant:g,...v}=Me("InputDescription",null,n),w=qw(),x=kt({name:["InputWrapper",u],props:n,classes:ai,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,rootSelector:"description",vars:c,varsResolver:QTe}),k=p&&w?.getStyles||x;return y.jsx(Se,{component:"p",ref:r,variant:g,size:d,...k("description",w?.getStyles?{className:a,style:i}:void 0),...v})});Hw.classes=ai,Hw.displayName="@mantine/core/InputDescription";const JTe=(e,{size:r})=>({error:{"--input-error-size":r===void 0?void 0:`calc(${Eo(r)} - ${$e(2)})`}}),Uw=ot((e,r)=>{const n=Me("InputError",null,e),{classNames:o,className:a,style:i,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:ai,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,rootSelector:"error",vars:c,varsResolver:JTe}),x=qw(),k=f&&x?.getStyles||w;return y.jsx(Se,{component:"p",ref:r,variant:g,size:d,...k("error",x?.getStyles?{className:a,style:i}:void 0),...v})});Uw.classes=ai,Uw.displayName="@mantine/core/InputError";const zU={labelElement:"label"},eAe=(e,{size:r})=>({label:{"--input-label-size":Eo(r),"--input-asterisk-color":void 0}}),Ww=ot((e,r)=>{const n=Me("InputLabel",zU,e),{classNames:o,className:a,style:i,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",zU,n),$=kt({name:["InputWrapper",w],props:n,classes:ai,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,rootSelector:"label",vars:c,varsResolver:eAe}),z=qw(),j=z?.getStyles||$;return y.jsxs(Se,{...j("label",z?.getStyles?{className:a,style:i}: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",{...j("required"),"aria-hidden":!0,children:" *"})]})});Ww.classes=ai,Ww.displayName="@mantine/core/InputLabel";const C9=ot((e,r)=>{const n=Me("InputPlaceholder",null,e),{classNames:o,className:a,style:i,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:ai,className:a,style:i,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})});C9.classes=ai,C9.displayName="@mantine/core/InputPlaceholder";function tAe(e,{hasDescription:r,hasError:n}){const o=e.findIndex(s=>s==="input"),a=e.slice(0,o),i=e.slice(o+1),l=r&&a.includes("description")||n&&a.includes("error");return{offsetBottom:r&&i.includes("description")||n&&i.includes("error"),offsetTop:l}}const rAe={labelElement:"label",inputContainer:e=>e,inputWrapperOrder:["label","description","input","error"]},nAe=(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)})`}}),$9=ot((e,r)=>{const n=Me("InputWrapper",rAe,e),{classNames:o,className:a,style:i,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:z,withAsterisk:j,id:A,required:R,__stylesApiProps:T,mod:O,attributes:P,...L}=n,H=kt({name:["InputWrapper",p],props:T||n,classes:ai,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:nAe}),M={size:d,variant:u,__staticSelector:p},V=ti(A),B=typeof j=="boolean"?j:R,F=_?.id||`${V}-error`,q=C?.id||`${V}-description`,G=V,U=!!w&&typeof w!="boolean",Y=!!x,Z=`${U?F:""} ${Y?q:""}`,I=Z.trim().length>0?Z.trim():void 0,W=k?.id||`${V}-label`,K=v&&y.jsx(Ww,{labelElement:$,id:W,htmlFor:G,required:B,...M,...k,children:v},"label"),Q=Y&&y.jsx(Hw,{...C,...M,size:C?.size||M.size,id:C?.id||q,children:x},"description"),ae=y.jsx(S.Fragment,{children:f(z)},"input"),te=U&&S.createElement(Uw,{..._,...M,size:_?.size||M.size,key:"error",id:_?.id||F},w),re=g.map(ue=>{switch(ue){case"label":return K;case"input":return ae;case"description":return Q;case"error":return te;default:return null}});return y.jsx(KTe,{value:{getStyles:H,describedBy:I,inputId:G,labelId:W,...tAe(g,{hasDescription:Y,hasError:U})},children:y.jsx(Se,{ref:r,variant:u,size:d,mod:[{error:!!w},O],...H("root"),...L,children:re})})});$9.classes=ai,$9.displayName="@mantine/core/InputWrapper";const oAe={variant:"default",leftSectionPointerEvents:"none",rightSectionPointerEvents:"none",withAria:!0,withErrorStyles:!0,size:"sm"},aAe=(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}}),Ca=Jn((e,r)=>{const n=Me("Input",oAe,e),{classNames:o,className:a,style:i,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:z,leftSectionPointerEvents:j,variant:A,vars:R,pointer:T,multiline:O,radius:P,id:L,withAria:H,withErrorStyles:M,mod:V,inputSize:B,attributes:F,__clearSection:q,__clearable:G,__defaultRightSection:U,...Y}=n,{styleProps:Z,rest:I}=Hq(Y),W=qw(),K={offsetBottom:W?.offsetBottom,offsetTop:W?.offsetTop},Q=kt({name:["Input",d],props:u||n,classes:ai,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:F,stylesCtx:K,rootSelector:"wrapper",vars:R,varsResolver:aAe}),ae=H?{required:c,disabled:v,"aria-invalid":!!g,"aria-describedby":W?.describedBy,id:W?.inputId||L}:{},te=ZTe({__clearable:G,__clearSection:q,rightSection:C,__defaultRightSection:U,size:p});return y.jsx(GTe,{value:{size:p||"sm"},children:y.jsxs(Se,{...Q("wrapper"),...Z,...f,mod:[{error:!!g&&M,pointer:T,disabled:v,multiline:O,"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",...I,...ae,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})]})})});Ca.classes=ai,Ca.Wrapper=$9,Ca.Label=Ww,Ca.Error=Uw,Ca.Description=Hw,Ca.Placeholder=C9,Ca.ClearButton=$U,Ca.displayName="@mantine/core/Input";const iAe={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 RU={root:"m_8bffd616"};const Zs=Jn((e,r)=>{const n=Me("Flex",null,e),{classNames:o,className:a,style:i,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:RU,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:x,vars:c}),_=lo(),$=yw(),z=Gq({styleProps:{gap:d,rowGap:u,columnGap:p,align:f,justify:g,wrap:v,direction:w},theme:_,data:iAe});return y.jsxs(y.Fragment,{children:[z.hasResponsiveStyles&&y.jsx(gw,{selector:`.${$}`,styles:z.styles,media:z.media}),y.jsx(Se,{ref:r,...C("root",{className:$,style:ff(z.inlineStyles)}),...k})]})});Zs.classes=RU,Zs.displayName="@mantine/core/Flex";function lAe(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 sAe({target:e,parent:r,ref:n,displayAfterTransitionEnd:o}){const a=S.useRef(-1),[i,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=ud(w.borderTopWidth)+ud(x.borderTopWidth),C=ud(w.borderLeftWidth)+ud(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(a.current),n.current&&(n.current.style.transitionDuration="0ms"),d(),a.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=>{lAe(v.target,r)&&(u(),c(!1))};return r.addEventListener("transitionend",g),()=>{r.removeEventListener("transitionend",g)}}},[r]),zq(()=>{hze()!=="test"&&l(!0)},20,{autoInvoke:!0}),Rq(g=>{g.forEach(v=>{v.type==="attributes"&&v.attributeName==="dir"&&u()})},{attributes:!0,attributeFilter:["dir"]},()=>document.documentElement),{initialized:i,hidden:s}}var jU={root:"m_96b553a6"};const cAe=(e,{transitionDuration:r})=>({root:{"--transition-duration":typeof r=="number"?`${r}ms`:r}}),Gw=ot((e,r)=>{const n=Me("FloatingIndicator",null,e),{classNames:o,className:a,style:i,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:jU,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:cAe}),k=S.useRef(null),{initialized:C,hidden:_}=sAe({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})});Gw.displayName="@mantine/core/FloatingIndicator",Gw.classes=jU;function TU({open:e,close:r,openDelay:n,closeDelay:o}){const a=S.useRef(-1),i=S.useRef(-1),l=()=>{window.clearTimeout(a.current),window.clearTimeout(i.current)},s=()=>{l(),n===0||n===void 0?e():a.current=window.setTimeout(e,n)},c=()=>{l(),o===0||o===void 0?r():i.current=window.setTimeout(r,o)};return S.useEffect(()=>l,[]),{openDropdown:s,closeDropdown:c}}function z9({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"})})}z9.displayName="@mantine/core/AccordionChevron";var AU={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 dAe=(e,{radius:r,color:n,variant:o,autoContrast:a})=>{const i=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:o||"light",autoContrast:a});return{root:{"--alert-radius":r===void 0?void 0:wn(r),"--alert-bg":n||o?i.background:void 0,"--alert-color":i.color,"--alert-bd":n||o?i.border:void 0}}},Yw=ot((e,r)=>{const n=Me("Alert",null,e),{classNames:o,className:a,style:i,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:z,...j}=n,A=kt({name:"Alert",classes:AU,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:c,varsResolver:dAe}),R=ti(g),T=p&&`${R}-title`||void 0,O=`${R}-body`;return y.jsx(Se,{id:R,...A("root",{variant:C}),variant:C,ref:r,role:$||"alert",...j,"aria-describedby":f?O:void 0,"aria-labelledby":p?T: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:T,...A("label"),children:p})}),f&&y.jsx("div",{id:O,...A("message"),"data-variant":C,children:f})]}),w&&y.jsx(ep,{...A("closeButton"),onClick:x,variant:"transparent",size:16,iconSize:16,"aria-label":k,unstyled:s})]})})});Yw.classes=AU,Yw.displayName="@mantine/core/Alert";var DU={root:"m_b6d8b162"};function uAe(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const pAe={inherit:!1},hAe=(e,{variant:r,lineClamp:n,gradient:o,size:a,color:i})=>({root:{"--text-fz":Eo(a),"--text-lh":R$e(a),"--text-gradient":r==="gradient"?N7(o,e):void 0,"--text-line-clamp":typeof n=="number"?n.toString():void 0,"--text-color":i?_a(i,e):void 0}}),at=Jn((e,r)=>{const n=Me("Text",pAe,e),{lineClamp:o,truncate:a,inline:i,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,z=kt({name:["Text",d],props:n,classes:DU,className:p,style:f,classNames:g,styles:v,unstyled:w,attributes:_,vars:u,varsResolver:hAe});return y.jsx(Se,{...z("root",{focusable:!0}),ref:r,component:c?"span":"p",variant:x,mod:[{"data-truncate":uAe(a),"data-line-clamp":typeof o=="number","data-inline":i,"data-inherit":l},k],size:C,...$})});at.classes=DU,at.displayName="@mantine/core/Text";var MU={root:"m_849cf0da"};const fAe={underline:"hover"},R9=Jn((e,r)=>{const{underline:n,className:o,unstyled:a,mod:i,...l}=Me("Anchor",fAe,e);return y.jsx(at,{component:"a",ref:r,className:Qi({[MU.root]:!a},o),...l,mod:[{underline:n},i],__staticSelector:"Anchor",unstyled:a})});R9.classes=MU,R9.displayName="@mantine/core/Anchor";var ii={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 mAe={error:null},gAe=(e,{size:r,color:n})=>({chevron:{"--combobox-chevron-size":dr(r,"combobox-chevron-size"),"--combobox-chevron-color":n?_a(n,e):void 0}}),j9=ot((e,r)=>{const n=Me("ComboboxChevron",mAe,e),{size:o,error:a,style:i,className:l,classNames:s,styles:c,unstyled:d,vars:u,mod:p,...f}=n,g=kt({name:"ComboboxChevron",classes:ii,props:n,style:i,className:l,classNames:s,styles:c,unstyled:d,vars:u,varsResolver:gAe,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:a},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"})})});j9.classes=ii,j9.displayName="@mantine/core/ComboboxChevron";const[yAe,li]=ei("Combobox component was not found in tree"),NU=S.forwardRef(({size:e,onMouseDown:r,onClick:n,onClear:o,...a},i)=>y.jsx(Ca.ClearButton,{ref:i,tabIndex:-1,"aria-hidden":!0,...a,onMouseDown:l=>{l.preventDefault(),r?.(l)},onClick:l=>{o(),n?.(l)}}));NU.displayName="@mantine/core/ComboboxClearButton";const Xw=ot((e,r)=>{const{classNames:n,styles:o,className:a,style:i,hidden:l,...s}=Me("ComboboxDropdown",null,e),c=li();return y.jsx(br.Dropdown,{...s,ref:r,role:"presentation","data-hidden":l||void 0,...c.getStyles("dropdown",{className:a,style:i,classNames:n,styles:o})})});Xw.classes=ii,Xw.displayName="@mantine/core/ComboboxDropdown";const vAe={refProp:"ref"},PU=ot((e,r)=>{const{children:n,refProp:o}=Me("ComboboxDropdownTarget",vAe,e);if(li(),!Ki(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})});PU.displayName="@mantine/core/ComboboxDropdownTarget";const oy=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("ComboboxEmpty",null,e),c=li();return y.jsx(Se,{ref:r,...c.getStyles("empty",{className:o,classNames:n,styles:i,style:a}),...s})});oy.classes=ii,oy.displayName="@mantine/core/ComboboxEmpty";function T9({onKeyDown:e,withKeyboardNavigation:r,withAriaAttributes:n,withExpandedAttribute:o,targetType:a,autoComplete:i}){const l=li(),[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()):a==="button"&&(u.preventDefault(),l.store.openDropdown("keyboard"))}u.key==="Escape"&&l.store.closeDropdown("keyboard"),u.nativeEvent.code==="Space"&&a==="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:i,"data-expanded":l.store.dropdownOpened||void 0,"data-mantine-stop-propagation":l.store.dropdownOpened||void 0}:{},onKeyDown:d}}const bAe={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},BU=ot((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Me("ComboboxEventsTarget",bAe,e);if(!Ki(n))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 u=li(),p=T9({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:n.props.onKeyDown,autoComplete:c});return S.cloneElement(n,{...p,...d,[o]:$r(r,u.store.targetRef,sw(n))})});BU.displayName="@mantine/core/ComboboxEventsTarget";const A9=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("ComboboxFooter",null,e),c=li();return y.jsx(Se,{ref:r,...c.getStyles("footer",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});A9.classes=ii,A9.displayName="@mantine/core/ComboboxFooter";const D9=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,children:s,label:c,id:d,...u}=Me("ComboboxGroup",null,e),p=li(),f=ti(d);return y.jsxs(Se,{ref:r,role:"group","aria-labelledby":c?f:void 0,...p.getStyles("group",{className:o,classNames:n,style:a,styles:i}),...u,children:[c&&y.jsx("div",{id:f,...p.getStyles("groupLabel",{classNames:n,styles:i}),children:c}),s]})});D9.classes=ii,D9.displayName="@mantine/core/ComboboxGroup";const M9=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("ComboboxHeader",null,e),c=li();return y.jsx(Se,{ref:r,...c.getStyles("header",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});M9.classes=ii,M9.displayName="@mantine/core/ComboboxHeader";function OU({value:e,valuesDivider:r=",",...n}){return y.jsx("input",{type:"hidden",value:Array.isArray(e)?e.join(r):e||"",...n})}OU.displayName="@mantine/core/ComboboxHiddenInput";const ay=ot((e,r)=>{const n=Me("ComboboxOption",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,onClick:c,id:d,active:u,onMouseDown:p,onMouseOver:f,disabled:g,selected:v,mod:w,...x}=n,k=li(),C=S.useId(),_=d||C;return y.jsx(Se,{...k.getStyles("option",{className:a,classNames:o,styles:l,style:i}),...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?.($)}})});ay.classes=ii,ay.displayName="@mantine/core/ComboboxOption";const Zw=ot((e,r)=>{const n=Me("ComboboxOptions",null,e),{classNames:o,className:a,style:i,styles:l,id:s,onMouseDown:c,labelledBy:d,...u}=n,p=li(),f=ti(s);return S.useEffect(()=>{p.store.setListId(f)},[f]),y.jsx(Se,{ref:r,...p.getStyles("options",{className:a,style:i,classNames:o,styles:l}),...u,id:f,role:"listbox","aria-labelledby":d,onMouseDown:g=>{g.preventDefault(),c?.(g)}})});Zw.classes=ii,Zw.displayName="@mantine/core/ComboboxOptions";const xAe={withAriaAttributes:!0,withKeyboardNavigation:!0},N9=ot((e,r)=>{const n=Me("ComboboxSearch",xAe,e),{classNames:o,styles:a,unstyled:i,vars:l,withAriaAttributes:s,onKeyDown:c,withKeyboardNavigation:d,size:u,...p}=n,f=li(),g=f.getStyles("search"),v=T9({targetType:"input",withAriaAttributes:s,withKeyboardNavigation:d,withExpandedAttribute:!1,onKeyDown:c,autoComplete:"off"});return y.jsx(Ca,{ref:$r(r,f.store.searchRef),classNames:[{input:g.className},o],styles:[{input:g.style},a],size:u||f.size,...v,...p,__staticSelector:"Combobox"})});N9.classes=ii,N9.displayName="@mantine/core/ComboboxSearch";const wAe={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},P9=ot((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Me("ComboboxTarget",wAe,e);if(!Ki(n))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 u=li(),p=T9({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:n.props.onKeyDown,autoComplete:c}),f=S.cloneElement(n,{...p,...d});return y.jsx(br.Target,{ref:$r(r,u.store.targetRef),children:f})});P9.displayName="@mantine/core/ComboboxTarget";function kAe(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 _Ae(e,r,n){for(let o=e+1;o{s||(c(!0),a?.(B))},[c,a,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=ld(f.current),F=cw(`#${d.current} [data-combobox-selected]`,B);F?.removeAttribute("data-combobox-selected"),F?.removeAttribute("aria-selected")},[]),$=S.useCallback(B=>{const F=ld(f.current),q=cw(`#${d.current}`,F),G=q?id("[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,_]),z=S.useCallback(()=>{const B=ld(f.current),F=cw(`#${d.current} [data-combobox-active]`,B);if(F){const q=id(`#${d.current} [data-combobox-option]`,B).findIndex(G=>G===F);return $(q)}return $(0)},[$]),j=S.useCallback(()=>{const B=ld(f.current),F=id(`#${d.current} [data-combobox-option]`,B);return $(_Ae(u.current,F,i))},[$,i]),A=S.useCallback(()=>{const B=ld(f.current),F=id(`#${d.current} [data-combobox-option]`,B);return $(kAe(u.current,F,i))},[$,i]),R=S.useCallback(()=>{const B=ld(f.current),F=id(`#${d.current} [data-combobox-option]`,B);return $(SAe(F))},[$]),T=S.useCallback((B="selected",F)=>{w.current=window.setTimeout(()=>{const q=ld(f.current),G=id(`#${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)},[]),O=S.useCallback(()=>{u.current=-1,_()},[_]),P=S.useCallback(()=>{const B=ld(f.current);id(`#${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:R,selectActiveOption:z,selectNextOption:j,selectPreviousOption:A,resetSelectedOption:O,updateSelectedOptionIndex:T,listId:d.current,setListId:L,clickSelectedOption:P,searchRef:p,focusSearchInput:H,targetRef:f,focusTarget:M}}const EAe={keepMounted:!0,withinPortal:!0,resetSelectionOnOptionHover:!1,width:"target",transitionProps:{transition:"fade",duration:0},size:"sm"},CAe=(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",EAe,e),{classNames:n,styles:o,unstyled:a,children:i,store:l,vars:s,onOptionSubmit:c,onClose:d,size:u,dropdownPadding:p,resetSelectionOnOptionHover:f,__staticSelector:g,readOnly:v,attributes:w,...x}=r,k=IU(),C=l||k,_=kt({name:g||"Combobox",classes:ii,props:r,classNames:n,styles:o,unstyled:a,attributes:w,vars:s,varsResolver:CAe}),$=()=>{d?.(),C.closeDropdown()};return y.jsx(yAe,{value:{getStyles:_,store:C,onOptionSubmit:c,size:u,resetSelectionOnOptionHover:f,readOnly:v},children:y.jsx(br,{opened:C.dropdownOpened,preventPositionChangeWhenVisible:!0,...x,onChange:z=>!z&&$(),withRoles:!1,unstyled:a,children:i})})}const $Ae=e=>e;eo.extend=$Ae,eo.classes=ii,eo.displayName="@mantine/core/Combobox",eo.Target=P9,eo.Dropdown=Xw,eo.Options=Zw,eo.Option=ay,eo.Search=N9,eo.Empty=oy,eo.Chevron=j9,eo.Footer=A9,eo.Header=M9,eo.EventsTarget=BU,eo.DropdownTarget=PU,eo.Group=D9,eo.ClearButton=NU,eo.HiddenInput=OU;function LU({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 FU={root:"m_347db0ec","root--dot":"m_fbd81e3d",label:"m_5add502a",section:"m_91fdda9b"};const zAe=(e,{radius:r,color:n,gradient:o,variant:a,size:i,autoContrast:l,circle:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:l});return{root:{"--badge-height":dr(i,"badge-height"),"--badge-padding-x":dr(i,"badge-padding-x"),"--badge-fz":dr(i,"badge-fz"),"--badge-radius":s||r===void 0?void 0:wn(r),"--badge-bg":n||a?c.background:void 0,"--badge-color":n||a?c.color:void 0,"--badge-bd":n||a?c.border:void 0,"--badge-dot-color":a==="dot"?_a(n,e):void 0}}},Ks=Jn((e,r)=>{const n=Me("Badge",null,e),{classNames:o,className:a,style:i,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:$,...z}=n,j=kt({name:"Badge",props:n,classes:FU,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:$,vars:c,varsResolver:zAe});return y.jsxs(Se,{variant:w,mod:[{block:x,circle:C,"with-right-section":!!g,"with-left-section":!!f},_],...j("root",{variant:w}),ref:r,...z,children:[f&&y.jsx("span",{...j("section"),"data-position":"left",children:f}),y.jsx("span",{...j("label"),children:v}),g&&y.jsx("span",{...j("section"),"data-position":"right",children:g})]})});Ks.classes=FU,Ks.displayName="@mantine/core/Badge";var VU={root:"m_8b3717df",breadcrumb:"m_f678d540",separator:"m_3b8f2208"};const RAe={separator:"/"},jAe=(e,{separatorMargin:r})=>({root:{"--bc-separator-margin":Hs(r)}}),Kw=ot((e,r)=>{const n=Me("Breadcrumbs",RAe,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,children:d,separator:u,separatorMargin:p,attributes:f,...g}=n,v=kt({name:"Breadcrumbs",classes:VU,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,vars:c,varsResolver:jAe}),w=S.Children.toArray(d).reduce((x,k,C,_)=>{const $=Ki(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})});Kw.classes=VU,Kw.displayName="@mantine/core/Breadcrumbs";var Tf={root:"m_77c9d27d",inner:"m_80f1301b",label:"m_811560b9",section:"m_a74036a",loader:"m_a25b86ee",group:"m_80d6d844",groupSection:"m_70be2a01"};const qU={orientation:"horizontal"},TAe=(e,{borderWidth:r})=>({group:{"--button-border-width":$e(r)}}),B9=ot((e,r)=>{const n=Me("ButtonGroup",qU,e),{className:o,style:a,classNames:i,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=Me("ButtonGroup",qU,e),w=kt({name:"ButtonGroup",props:n,classes:Tf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:TAe,rootSelector:"group"});return y.jsx(Se,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});B9.classes=Tf,B9.displayName="@mantine/core/ButtonGroup";const AAe=(e,{radius:r,color:n,gradient:o,variant:a,autoContrast:i,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:i});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||a?s.background:void 0,"--section-color":s.color,"--section-bd":n||a?s.border:void 0}}},O9=ot((e,r)=>{const n=Me("ButtonGroupSection",null,e),{className:o,style:a,classNames:i,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:Tf,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:AAe,rootSelector:"groupSection"});return y.jsx(Se,{...w("groupSection"),ref:r,variant:d,...v})});O9.classes=Tf,O9.displayName="@mantine/core/ButtonGroupSection";const DAe={in:{opacity:1,transform:`translate(-50%, calc(-50% + ${$e(1)}))`},out:{opacity:0,transform:"translate(-50%, -200%)"},common:{transformOrigin:"center"},transitionProperty:"transform, opacity"},MAe=(e,{radius:r,color:n,gradient:o,variant:a,size:i,justify:l,autoContrast:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:s});return{root:{"--button-justify":l,"--button-height":dr(i,"button-height"),"--button-padding-x":dr(i,"button-padding-x"),"--button-fz":i?.includes("compact")?Eo(i.replace("compact-","")):Eo(i),"--button-radius":r===void 0?void 0:wn(r),"--button-bg":n||a?c.background:void 0,"--button-hover":n||a?c.hover:void 0,"--button-color":c.color,"--button-bd":n||a?c.border:void 0,"--button-hover-color":n||a?c.hoverColor:void 0}}},Vn=Jn((e,r)=>{const n=Me("Button",null,e),{style:o,vars:a,className:i,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:z,mod:j,attributes:A,...R}=n,T=kt({name:"Button",props:n,classes:Tf,className:i,style:o,classNames:k,styles:C,unstyled:_,attributes:A,vars:a,varsResolver:MAe}),O=!!d,P=!!u;return y.jsxs(pr,{ref:r,...T("root",{active:!s&&!v&&!$}),unstyled:_,variant:f,disabled:s||v,mod:[{disabled:s||$,loading:v,block:p,"with-left-section":O,"with-right-section":P},j],...R,children:[typeof v=="boolean"&&y.jsx(pd,{mounted:v,transition:DAe,duration:150,children:L=>y.jsx(Se,{component:"span",...T("loader",{style:L}),"aria-hidden":!0,children:y.jsx(Rf,{color:"var(--button-color)",size:"calc(var(--button-height) / 1.8)",...w})})}),y.jsxs("span",{...T("inner"),children:[d&&y.jsx(Se,{component:"span",...T("section"),mod:{position:"left"},children:d}),y.jsx(Se,{component:"span",mod:{loading:v},...T("label"),children:c}),u&&y.jsx(Se,{component:"span",...T("section"),mod:{position:"right"},children:u})]})]})});Vn.classes=Tf,Vn.displayName="@mantine/core/Button",Vn.Group=B9,Vn.GroupSection=O9;const[NAe,PAe]=ei("Card component was not found in tree");var I9={root:"m_e615b15f",section:"m_599a2148"};const Qw=Jn((e,r)=>{const n=Me("CardSection",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,withBorder:c,inheritPadding:d,mod:u,...p}=n,f=PAe();return y.jsx(Se,{ref:r,mod:[{"with-border":c,"inherit-padding":d},u],...f.getStyles("section",{className:a,style:i,styles:l,classNames:o}),...p})});Qw.classes=I9,Qw.displayName="@mantine/core/CardSection";const BAe=(e,{padding:r})=>({root:{"--card-padding":Hs(r)}}),Jw=Jn((e,r)=>{const n=Me("Card",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,children:d,padding:u,attributes:p,...f}=n,g=kt({name:"Card",props:n,classes:I9,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:BAe}),v=S.Children.toArray(d),w=v.map((x,k)=>typeof x=="object"&&x&&"type"in x&&x.type===Qw?S.cloneElement(x,{"data-first-section":k===0||void 0,"data-last-section":k===v.length-1||void 0}):x);return y.jsx(NAe,{value:{getStyles:g},children:y.jsx($f,{ref:r,unstyled:s,...g("root"),...f,children:w})})});Jw.classes=I9,Jw.displayName="@mantine/core/Card",Jw.Section=Qw;var HU={root:"m_de3d2490",colorOverlay:"m_862f3d1b",shadowOverlay:"m_98ae7f22",alphaOverlay:"m_95709ac0",childrenOverlay:"m_93e74e3"};const UU={withShadow:!0},OAe=(e,{radius:r,size:n})=>({root:{"--cs-radius":r===void 0?void 0:wn(r),"--cs-size":$e(n)}}),iy=Jn((e,r)=>{const n=Me("ColorSwatch",UU,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,color:d,size:u,radius:p,withShadow:f,children:g,variant:v,attributes:w,...x}=Me("ColorSwatch",UU,n),k=kt({name:"ColorSwatch",props:n,classes:HU,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:c,varsResolver:OAe});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})]})});iy.classes=HU,iy.displayName="@mantine/core/ColorSwatch";const IAe={timeout:1e3};function WU(e){const{children:r,timeout:n,value:o,...a}=Me("CopyButton",IAe,e),i=M$e({timeout:n});return y.jsx(y.Fragment,{children:r({copy:()=>i.copy(o),copied:i.copied,...a})})}WU.displayName="@mantine/core/CopyButton";var GU={root:"m_3eebeb36",label:"m_9e365f20"};const LAe={orientation:"horizontal"},FAe=(e,{color:r,variant:n,size:o})=>({root:{"--divider-color":r?_a(r,e):void 0,"--divider-border-style":n,"--divider-size":dr(o,"divider-size")}}),tp=ot((e,r)=>{const n=Me("Divider",LAe,e),{classNames:o,className:a,style:i,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:GU,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:FAe});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})})});tp.classes=GU,tp.displayName="@mantine/core/Divider";const[YU,XU]=ei("Grid component was not found in tree"),L9=(e,r)=>e==="content"?"auto":e==="auto"?"0rem":e?`${100/(r/e)}%`:void 0,ZU=(e,r,n)=>n||e==="auto"?"100%":e==="content"?"unset":L9(e,r),KU=(e,r)=>{if(e)return e==="auto"||r?"1":"auto"},QU=(e,r)=>e===0?"0":e?`${100/(r/e)}%`:void 0;function VAe({span:e,order:r,offset:n,selector:o}){const a=lo(),i=XU(),l=i.breakpoints||a.breakpoints,s=X1(e)===void 0?12:X1(e),c=ff({"--col-order":X1(r)?.toString(),"--col-flex-grow":KU(s,i.grow),"--col-flex-basis":L9(s,i.columns),"--col-width":s==="content"?"auto":void 0,"--col-max-width":ZU(s,i.columns,i.grow),"--col-offset":QU(X1(n),i.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"]=KU(e[f],i.grow),p[f]["--col-flex-basis"]=L9(e[f],i.columns),p[f]["--col-width"]=e[f]==="content"?"auto":void 0,p[f]["--col-max-width"]=ZU(e[f],i.columns,i.grow)),typeof n=="object"&&n[f]!==void 0&&(p[f]["--col-offset"]=QU(n[f],i.columns)),p),{}),u=fq(So(d),l).filter(p=>So(d[p.value]).length>0).map(p=>({query:i.type==="container"?`mantine-grid (min-width: ${l[p.value]})`:`(min-width: ${l[p.value]})`,styles:d[p.value]}));return y.jsx(gw,{styles:c,media:i.type==="container"?void 0:u,container:i.type==="container"?u:void 0,selector:o})}var F9={container:"m_8478a6da",root:"m_410352e9",inner:"m_dee7bd2f",col:"m_96bdd299"};const qAe={span:12},rp=ot((e,r)=>{const n=Me("GridCol",qAe,e),{classNames:o,className:a,style:i,styles:l,vars:s,span:c,order:d,offset:u,...p}=n,f=XU(),g=yw();return y.jsxs(y.Fragment,{children:[y.jsx(VAe,{selector:`.${g}`,span:c,order:d,offset:u}),y.jsx(Se,{ref:r,...f.getStyles("col",{className:Qi(a,g),style:i,classNames:o,styles:l}),...p})]})});rp.classes=F9,rp.displayName="@mantine/core/GridCol";function JU({gutter:e,selector:r,breakpoints:n,type:o}){const a=lo(),i=n||a.breakpoints,l=ff({"--grid-gutter":Hs(X1(e))}),s=So(i).reduce((d,u)=>(d[u]||(d[u]={}),typeof e=="object"&&e[u]!==void 0&&(d[u]["--grid-gutter"]=Hs(e[u])),d),{}),c=fq(So(s),i).filter(d=>So(s[d.value]).length>0).map(d=>({query:o==="container"?`mantine-grid (min-width: ${i[d.value]})`:`(min-width: ${i[d.value]})`,styles:s[d.value]}));return y.jsx(gw,{styles:l,media:o==="container"?void 0:c,container:o==="container"?c:void 0,selector:r})}const HAe={gutter:"md",grow:!1,columns:12},UAe=(e,{justify:r,align:n,overflow:o})=>({root:{"--grid-justify":r,"--grid-align":n,"--grid-overflow":o}}),ly=ot((e,r)=>{const n=Me("Grid",HAe,e),{classNames:o,className:a,style:i,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:F9,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:k,vars:c,varsResolver:UAe}),$=yw();return x==="container"&&w?y.jsxs(YU,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(JU,{selector:`.${$}`,...n}),y.jsx("div",{..._("container"),children:y.jsx(Se,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})})]}):y.jsxs(YU,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(JU,{selector:`.${$}`,...n}),y.jsx(Se,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})]})});ly.classes=F9,ly.displayName="@mantine/core/Grid",ly.Col=rp;function eW({color:e,theme:r,defaultShade:n}){const o=cd({color:e,theme:r});return o.isThemeColor?o.shade===void 0?`var(--mantine-color-${o.color}-${n})`:`var(${o.variable})`:e}var tW={root:"m_bcb3f3c2"};const WAe={color:"yellow"},GAe=(e,{color:r})=>({root:{"--mark-bg-dark":eW({color:r,theme:e,defaultShade:5}),"--mark-bg-light":eW({color:r,theme:e,defaultShade:2})}}),V9=ot((e,r)=>{const n=Me("Mark",WAe,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,color:d,variant:u,attributes:p,...f}=n,g=kt({name:"Mark",props:n,className:a,style:i,classes:tW,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:GAe});return y.jsx(Se,{component:"mark",ref:r,variant:u,...g("root"),...f})});V9.classes=tW,V9.displayName="@mantine/core/Mark";function rW(e){return e.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&")}function YAe(e,r){if(r==null)return[{chunk:e,highlighted:!1}];const n=Array.isArray(r)?r.map(rW):rW(r);if(!(Array.isArray(n)?n.filter(i=>i.trim().length>0).length>0:n.trim()!==""))return[{chunk:e,highlighted:!1}];const o=typeof n=="string"?n.trim():n.filter(i=>i.trim().length!==0).map(i=>i.trim()).sort((i,l)=>l.length-i.length).join("|"),a=new RegExp(`(${o})`,"gi");return e.split(a).map(i=>({chunk:i,highlighted:a.test(i)})).filter(({chunk:i})=>i)}const Qs=Jn((e,r)=>{const{unstyled:n,children:o,highlight:a,highlightStyles:i,color:l,...s}=Me("Highlight",null,e),c=YAe(o,a);return y.jsx(at,{unstyled:n,ref:r,...s,__staticSelector:"Highlight",children:c.map(({chunk:d,highlighted:u},p)=>u?y.jsx(V9,{unstyled:n,color:l,style:i,"data-highlight":d,children:d},p):y.jsx("span",{children:d},p))})});Qs.classes=at.classes,Qs.displayName="@mantine/core/Highlight";const[XAe,nW]=ei("HoverCard component was not found in the tree"),oW=S.createContext(!1),ZAe=oW.Provider,q9=()=>S.useContext(oW);function H9(e){const{children:r,onMouseEnter:n,onMouseLeave:o,...a}=Me("HoverCardDropdown",null,e),i=nW();if(q9()&&i.getFloatingProps&&i.floating){const c=i.getFloatingProps();return y.jsx(br.Dropdown,{ref:i.floating,...c,onMouseEnter:kn(n,c.onMouseEnter),onMouseLeave:kn(o,c.onMouseLeave),...a,children:r})}const l=kn(n,i.openDropdown),s=kn(o,i.closeDropdown);return y.jsx(br.Dropdown,{onMouseEnter:l,onMouseLeave:s,...a,children:r})}H9.displayName="@mantine/core/HoverCardDropdown";const KAe={openDelay:0,closeDelay:0};function U9(e){const{openDelay:r,closeDelay:n,children:o}=Me("HoverCardGroup",KAe,e);return y.jsx(ZAe,{value:!0,children:y.jsx(qH,{delay:{open:r,close:n},children:o})})}U9.displayName="@mantine/core/HoverCardGroup",U9.extend=e=>e;const QAe={refProp:"ref"},W9=S.forwardRef((e,r)=>{const{children:n,refProp:o,eventPropsWrapperName:a,...i}=Me("HoverCardTarget",QAe,e);if(!Ki(n))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 l=nW();if(q9()&&l.getReferenceProps&&l.reference){const u=l.getReferenceProps();return y.jsx(br.Target,{refProp:o,ref:r,...i,children:S.cloneElement(n,a?{[a]:{...u,ref:l.reference}}:{...u,ref:l.reference})})}const s=kn(n.props.onMouseEnter,l.openDropdown),c=kn(n.props.onMouseLeave,l.closeDropdown),d={onMouseEnter:s,onMouseLeave:c};return y.jsx(br.Target,{refProp:o,ref:r,...i,children:S.cloneElement(n,a?{[a]:d}:d)})});W9.displayName="@mantine/core/HoverCardTarget";function JAe(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,a=q9(),i=ti(),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(i),e.onOpen?.()):e.onClose?.()},[i,e.onOpen,e.onClose]),{context:u,refs:p}=Nw({open:o,onOpenChange:d}),{delay:f,setCurrentId:g}=HH(u,{id:i}),{getReferenceProps:v,getFloatingProps:w}=GH([FH(u,{enabled:!0,delay:a?f:{open:e.openDelay,close:e.closeDelay}}),YH(u,{role:"dialog"}),WH(u,{enabled:a})]),x=S.useCallback(()=>{a||(c(),e.openDelay===0||e.openDelay===void 0?d(!0):l.current=window.setTimeout(()=>d(!0),e.openDelay))},[a,c,e.openDelay,d]),k=S.useCallback(()=>{a||(c(),e.closeDelay===0||e.closeDelay===void 0?d(!1):s.current=window.setTimeout(()=>d(!1),e.closeDelay))},[a,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 eDe={openDelay:0,closeDelay:150,initiallyOpened:!1};function Af(e){const{children:r,onOpen:n,onClose:o,openDelay:a,closeDelay:i,initiallyOpened:l,...s}=Me("HoverCard",eDe,e),c=JAe({openDelay:a,closeDelay:i,defaultOpened:l,onOpen:n,onClose:o});return y.jsx(XAe,{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})})}Af.displayName="@mantine/core/HoverCard",Af.Target=W9,Af.Dropdown=H9,Af.Group=U9,Af.extend=e=>e;var tDe=S.useLayoutEffect;const[rDe,fd]=ei("Menu component was not found in the tree");var md={dropdown:"m_dc9b7c9f",label:"m_9bfac126",divider:"m_efdf90cb",item:"m_99ac2aa1",itemLabel:"m_5476e0d3",itemSection:"m_8b75e504",chevron:"m_b85b0bed"};const G9=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("MenuDivider",null,e),c=fd();return y.jsx(Se,{ref:r,...c.getStyles("divider",{className:o,style:a,styles:i,classNames:n}),...s})});G9.classes=md,G9.displayName="@mantine/core/MenuDivider";const sy=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=Me("MenuDropdown",null,e),f=S.useRef(null),g=fd(),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:a,styles:i,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]})});sy.classes=md,sy.displayName="@mantine/core/MenuDropdown";const[nDe,e3]=G1(),cy=Jn((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,color:s,closeMenuOnClick:c,leftSection:d,rightSection:u,children:p,disabled:f,"data-disabled":g,...v}=Me("MenuItem",null,e),w=fd(),x=e3(),k=lo(),{dir:C}=dd(),_=S.useRef(null),$=v,z=kn($.onClick,()=>{g||(typeof c=="boolean"?c&&w.closeDropdownImmediately():w.closeOnItemClick&&w.closeDropdownImmediately())}),j=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,A=s?cd({color:s,theme:k}):null,R=kn($.onKeyDown,T=>{T.key==="ArrowLeft"&&x&&(x.close(),x.focusParentItem())});return y.jsxs(pr,{onMouseDown:T=>T.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style:a,styles:i,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:z,onKeyDown:Y1({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:R}),__vars:{"--menu-item-color":A?.isThemeColor&&A?.shade===void 0?`var(--mantine-color-${A.color}-6)`:j?.color,"--menu-item-hover":j?.hover},children:[d&&y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"left",children:d}),p&&y.jsx("div",{...w.getStyles("itemLabel",{styles:i,classNames:n}),children:p}),u&&y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"right",children:u})]})});cy.classes=md,cy.displayName="@mantine/core/MenuItem";const Y9=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Me("MenuLabel",null,e),c=fd();return y.jsx(Se,{ref:r,...c.getStyles("label",{className:o,style:a,styles:i,classNames:n}),...s})});Y9.classes=md,Y9.displayName="@mantine/core/MenuLabel";const X9=ot((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=Me("MenuSubDropdown",null,e),f=S.useRef(null),g=fd(),v=e3(),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:a,styles:i,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,children:u})});X9.classes=md,X9.displayName="@mantine/core/MenuSubDropdown";const Z9=Jn((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,color:s,leftSection:c,rightSection:d,children:u,disabled:p,"data-disabled":f,closeMenuOnClick:g,...v}=Me("MenuSubItem",null,e),w=fd(),x=e3(),k=lo(),{dir:C}=dd(),_=S.useRef(null),$=v,z=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,j=s?cd({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())}),R=kn($.onClick,()=>{!f&&g&&w.closeDropdownImmediately()}),T=kn($.onMouseEnter,x?.open),O=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:a,styles:i,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:T,onMouseLeave:O,onClick:R,onKeyDown:Y1({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":j?.isThemeColor&&j?.shade===void 0?`var(--mantine-color-${j.color}-6)`:z?.color,"--menu-item-hover":z?.hover},children:[c&&y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"left",children:c}),u&&y.jsx("div",{...w.getStyles("itemLabel",{styles:i,classNames:n}),children:u}),y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"right",children:d||y.jsx(z9,{...w.getStyles("chevron"),size:14})})]})});Z9.classes=md,Z9.displayName="@mantine/core/MenuSubItem";function aW({children:e,refProp:r}){if(!Ki(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 fd(),y.jsx(br.Target,{refProp:r,popupType:"menu",children:e})}aW.displayName="@mantine/core/MenuSubTarget";const oDe={offset:0,position:"right-start",transitionProps:{duration:0},openDelay:0,middlewares:{shift:{crossAxis:!0}}};function Df(e){const{children:r,closeDelay:n,openDelay:o,...a}=Me("MenuSub",oDe,e),i=ti(),[l,{open:s,close:c}]=lze(!1),d=e3(),{openDropdown:u,closeDropdown:p}=TU({open:s,close:c,closeDelay:n,openDelay:o});return y.jsx(nDe,{value:{opened:l,close:p,open:u,focusFirstItem:()=>window.setTimeout(()=>{document.getElementById(`${i}-dropdown`)?.querySelectorAll("[data-menu-item]:not([data-disabled])")[0]?.focus()},16),focusParentItem:()=>window.setTimeout(()=>{document.getElementById(`${i}-target`)?.focus()},16),parentContext:d},children:y.jsx(br,{opened:l,withinPortal:!1,withArrow:!1,id:i,...a,children:r})})}Df.extend=e=>e,Df.displayName="@mantine/core/MenuSub",Df.Target=aW,Df.Dropdown=X9,Df.Item=Z9;const aDe={refProp:"ref"},t3=S.forwardRef((e,r)=>{const{children:n,refProp:o,...a}=Me("MenuTarget",aDe,e);if(!Ki(n))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 i=fd(),l=n.props,s=kn(l.onClick,()=>{i.trigger==="click"?i.toggleDropdown():i.trigger==="click-hover"&&(i.setOpenedViaClick(!0),i.opened||i.openDropdown())}),c=kn(l.onMouseEnter,()=>(i.trigger==="hover"||i.trigger==="click-hover")&&i.openDropdown()),d=kn(l.onMouseLeave,()=>{(i.trigger==="hover"||i.trigger==="click-hover"&&!i.openedViaClick)&&i.closeDropdown()});return y.jsx(br.Target,{refProp:o,popupType:"menu",ref:r,...a,children:S.cloneElement(n,{onClick:s,onMouseEnter:c,onMouseLeave:d,"data-expanded":i.opened?!0:void 0})})});t3.displayName="@mantine/core/MenuTarget";const iDe={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",iDe,e),{children:n,onOpen:o,onClose:a,opened:i,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:z,withInitialFocusPlaceholder:j,attributes:A,...R}=r,T=kt({name:"Menu",classes:md,props:r,classNames:w,styles:x,unstyled:k,attributes:A}),[O,P]=Us({value:i,defaultValue:l,finalValue:!1,onChange:c}),[L,H]=S.useState(!1),M=()=>{P(!1),H(!1),O&&a?.()},V=()=>{P(!0),!O&&o?.()},B=()=>{O?M():V()},{openDropdown:F,closeDropdown:q}=TU({open:V,close:M,closeDelay:v,openDelay:g}),G=Z=>T$e("[data-menu-item]","[data-menu-dropdown]",Z),{resolvedClassNames:U,resolvedStyles:Y}=H7({classNames:w,styles:x,props:r});return y.jsx(rDe,{value:{getStyles:T,opened:O,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:j},children:y.jsx(br,{...R,opened:O,onChange:B,defaultOpened:l,trapFocus:z?!1:s,closeOnEscape:p,__staticSelector:"Menu",classNames:U,styles:Y,unstyled:k,variant:C,keepMounted:z,children:n})})}tn.extend=e=>e,tn.withProps=SRe(tn),tn.classes=md,tn.displayName="@mantine/core/Menu",tn.Item=cy,tn.Label=Y9,tn.Dropdown=sy,tn.Target=t3,tn.Divider=G9,tn.Sub=Df;const[zxt,iW]=G1(),[lDe,sDe]=G1();var r3={root:"m_7cda1cd6","root--default":"m_44da308b","root--contrast":"m_e3a01f8",label:"m_1e0e6180",remove:"m_ae386778",group:"m_1dcfd90b"};const cDe=(e,{gap:r},{size:n})=>({group:{"--pg-gap":r!==void 0?dr(r):dr(n,"pg-gap")}}),K9=ot((e,r)=>{const n=Me("PillGroup",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,size:d,disabled:u,attributes:p,...f}=n,g=iW()?.size||d||void 0,v=kt({name:"PillGroup",classes:r3,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:cDe,stylesCtx:{size:g},rootSelector:"group"});return y.jsx(lDe,{value:{size:g,disabled:u},children:y.jsx(Se,{ref:r,size:g,...v("group"),...f})})});K9.classes=r3,K9.displayName="@mantine/core/PillGroup";const dDe={variant:"default"},uDe=(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)}}),n3=ot((e,r)=>{const n=Me("Pill",dDe,e),{classNames:o,className:a,style:i,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,$=sDe(),z=iW(),j=w||$?.size||void 0,A=z?.variant==="filled"?"contrast":d||"default",R=kt({name:"Pill",classes:r3,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,vars:c,varsResolver:uDe,stylesCtx:{size:j}});return y.jsxs(Se,{component:"span",ref:r,variant:A,size:j,...R("root",{variant:A}),mod:[{"with-remove":p&&!x,disabled:x||$?.disabled},k],..._,children:[y.jsx("span",{...R("label"),children:u}),p&&y.jsx(ep,{variant:"transparent",radius:v,tabIndex:-1,"aria-hidden":!0,unstyled:s,...g,...R("remove",{className:g?.className,style:g?.style}),onMouseDown:T=>{T.preventDefault(),T.stopPropagation(),g?.onMouseDown?.(T)},onClick:T=>{T.stopPropagation(),f?.(),g?.onClick?.(T)}})]})});n3.classes=r3,n3.displayName="@mantine/core/Pill",n3.Group=K9;var lW={root:"m_f0824112",description:"m_57492dcc",section:"m_690090b5",label:"m_1f6ac4c4",body:"m_f07af9d2",children:"m_e17b862f",chevron:"m_1fd8a00b"};const pDe=(e,{variant:r,color:n,childrenOffset:o,autoContrast:a})=>{const i=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:r||"light",autoContrast:a});return{root:{"--nl-bg":n||r?i.background:void 0,"--nl-hover":n||r?i.hover:void 0,"--nl-color":n||r?i.color:void 0},children:{"--nl-offset":Hs(o)}}},Q9=Jn((e,r)=>{const n=Me("NavLink",null,e),{classNames:o,className:a,style:i,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:z,autoContrast:j,mod:A,attributes:R,onClick:T,onKeyDown:O,...P}=n,L=kt({name:"NavLink",props:n,classes:lW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:R,vars:c,varsResolver:pDe}),[H,M]=Us({value:d,defaultValue:u,finalValue:!1,onChange:p}),V=!!f,B=F=>{T?.(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=>{O?.(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(z9,{...L("chevron")}):x})]}),V&&y.jsx(Jq,{in:H,...L("collapse"),children:y.jsx("div",{...L("children"),children:f})})]})});Q9.classes=lW,Q9.displayName="@mantine/core/NavLink";var sW={root:"m_a513464",icon:"m_a4ceffb",loader:"m_b0920b15",body:"m_a49ed24",title:"m_3feedf16",description:"m_3d733a3a",closeButton:"m_919a4d88"};const hDe={withCloseButton:!0},fDe=(e,{radius:r,color:n})=>({root:{"--notification-radius":r===void 0?void 0:wn(r),"--notification-color":n?_a(n,e):void 0}}),dy=ot((e,r)=>{const n=Me("Notification",hDe,e),{className:o,color:a,radius:i,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:z,role:j,attributes:A,...R}=n,T=kt({name:"Notification",classes:sW,props:n,className:o,style:w,classNames:v,styles:x,unstyled:k,attributes:A,vars:_,varsResolver:fDe});return y.jsxs(Se,{...T("root"),mod:[{"data-with-icon":!!u||l,"data-with-border":c},$],ref:r,variant:C,role:j||"alert",...R,children:[u&&!l&&y.jsx("div",{...T("icon"),children:u}),l&&y.jsx(Rf,{size:28,color:a,...z,...T("loader")}),y.jsxs("div",{...T("body"),children:[d&&y.jsx("div",{...T("title"),children:d}),y.jsx(Se,{...T("description"),mod:{"data-with-title":!!d},children:p})]}),s&&y.jsx(ep,{iconSize:16,color:"gray",...g,unstyled:k,onClick:f,...T("closeButton")})]})});dy.classes=sW,dy.displayName="@mantine/core/Notification";const mDe={duration:100,transition:"fade"};function cW(e,r){return{...mDe,...r,...e}}function gDe({offset:e,position:r,defaultOpened:n}){const[o,a]=S.useState(n),i=S.useRef(null),{x:l,y:s,elements:c,refs:d,update:u,placement:p}=Nw({placement:r,middleware:[u9({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=i.current;w.addEventListener("mousemove",v);const x=Ys(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:a,boundaryRef:i,floating:d.setFloating}}var o3={tooltip:"m_1b3c8819",arrow:"m_f898399f"};const yDe={refProp:"ref",withinPortal:!0,offset:10,position:"right",zIndex:aw("popover")},vDe=(e,{radius:r,color:n})=>({tooltip:{"--tooltip-radius":r===void 0?void 0:wn(r),"--tooltip-bg":n?_a(n,e):void 0,"--tooltip-color":n?"var(--mantine-color-white)":void 0}}),J9=ot((e,r)=>{const n=Me("TooltipFloating",yDe,e),{children:o,refProp:a,withinPortal:i,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:z,portalProps:j,attributes:A,...R}=n,T=lo(),O=kt({name:"TooltipFloating",props:n,classes:o3,className:s,style:l,classNames:c,styles:d,unstyled:u,attributes:A,rootSelector:"tooltip",vars:z,varsResolver:vDe}),{handleMouseMove:P,x:L,y:H,opened:M,boundaryRef:V,floating:B,setOpened:F}=gDe({offset:v,position:w,defaultOpened:_});if(!Ki(o))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 q=$r(V,sw(o),r),G=o.props,U=Z=>{G.onMouseEnter?.(Z),P(Z),F(!0)},Y=Z=>{G.onMouseLeave?.(Z),F(!1)};return y.jsxs(y.Fragment,{children:[y.jsx(zf,{...j,withinPortal:i,children:y.jsx(Se,{...R,...O("tooltip",{style:{...X7(l,T),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(o,{...G,[a]:q,onMouseEnter:U,onMouseLeave:Y})]})});J9.classes=o3,J9.displayName="@mantine/core/TooltipFloating";const dW=S.createContext(!1),bDe=dW.Provider,xDe=()=>S.useContext(dW),wDe={openDelay:0,closeDelay:0};function np(e){const{openDelay:r,closeDelay:n,children:o}=Me("TooltipGroup",wDe,e);return y.jsx(bDe,{value:!0,children:y.jsx(qH,{delay:{open:r,close:n},children:o})})}np.displayName="@mantine/core/TooltipGroup",np.extend=e=>e;function kDe(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 _De(e){const r=kDe(e.middlewares),n=[TH(e.offset)];return r.shift&&n.push(u9(typeof r.shift=="boolean"?{padding:8}:{padding:8,...r.shift})),r.flip&&n.push(typeof r.flip=="boolean"?Dw():Dw(r.flip)),n.push(DH({element:e.arrowRef,padding:e.arrowOffset})),r.inline?n.push(typeof r.inline=="boolean"?ty():ty(r.inline)):e.inline&&n.push(ty()),n}function SDe(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,a=xDe(),i=ti(),l=S.useCallback($=>{n($),$&&x(i)},[i]),{x:s,y:c,context:d,refs:u,placement:p,middlewareData:{arrow:{x:f,y:g}={}}}=Nw({strategy:e.strategy,placement:e.position,open:o,onOpenChange:l,middleware:_De(e),whileElementsMounted:jw}),{delay:v,currentId:w,setCurrentId:x}=HH(d,{id:i}),{getReferenceProps:k,getFloatingProps:C}=GH([FH(d,{enabled:e.events?.hover,delay:a?v:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),sTe(d,{enabled:e.events?.focus,visibleOnly:!0}),YH(d,{role:"tooltip"}),WH(d,{enabled:typeof e.opened>"u"})]);Xu(()=>{e.onPositionChange?.(p)},[p]);const _=o&&w&&w!==i;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 uW={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:aw("popover"),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},EDe=(e,{radius:r,color:n,variant:o,autoContrast:a})=>{const i=e.variantColorResolver({theme:e,color:n||e.primaryColor,autoContrast:a,variant:o||"filled"});return{tooltip:{"--tooltip-radius":r===void 0?void 0:wn(r),"--tooltip-bg":n?i.background:void 0,"--tooltip-color":n?i.color:void 0}}},_n=ot((e,r)=>{const n=Me("Tooltip",uW,e),{children:o,position:a,refProp:i,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:z,arrowOffset:j,arrowRadius:A,arrowPosition:R,offset:T,transitionProps:O,multiline:P,events:L,zIndex:H,disabled:M,positionDependencies:V,onClick:B,onMouseEnter:F,onMouseLeave:q,inline:G,variant:U,keepMounted:Y,vars:Z,portalProps:I,mod:W,floatingStrategy:K,middlewares:Q,autoContrast:ae,attributes:te,target:re,...ue}=Me("Tooltip",uW,n),{dir:_e}=dd(),ce=S.useRef(null),pe=SDe({position:hU(_e,a),closeDelay:c,openDelay:s,onPositionChange:d,opened:u,defaultOpened:p,events:L,arrowRef:ce,arrowOffset:j,offset:typeof T=="number"?T+($?z/2:0):T,positionDependencies:[...V,re??o],inline:G,strategy:K,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:o3,className:_,style:C,classNames:w,styles:x,unstyled:k,attributes:te,rootSelector:"tooltip",vars:Z,varsResolver:EDe});if(!re&&!Ki(o))return null;if(re){const Le=cW(O,{duration:100,transition:"fade"});return y.jsx(y.Fragment,{children:y.jsx(zf,{...I,withinPortal:f,children:y.jsx(pd,{...Le,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:Le.duration,children:St=>y.jsxs(Se,{...ue,"data-fixed":K==="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(Iw,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:z,arrowOffset:j,arrowRadius:A,arrowPosition:R,...xe("arrow")})]})})})})}const De=o,Be=De.props,Je=$r(pe.reference,sw(De),r),st=cW(O,{duration:100,transition:"fade"});return y.jsxs(y.Fragment,{children:[y.jsx(zf,{...I,withinPortal:f,children:y.jsx(pd,{...st,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:st.duration,children:Le=>y.jsxs(Se,{...ue,"data-fixed":K==="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(Iw,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:z,arrowOffset:j,arrowRadius:A,arrowPosition:R,...xe("arrow")})]})})}),S.cloneElement(De,pe.getReferenceProps({onClick:B,onMouseEnter:F,onMouseLeave:q,onMouseMove:n.onMouseMove,onPointerDown:n.onPointerDown,onPointerEnter:n.onPointerEnter,className:Qi(_,Be.className),...Be,[i]:Je}))]})});_n.classes=o3,_n.displayName="@mantine/core/Tooltip",_n.Floating=J9,_n.Group=np;var pW={root:"m_cf365364",indicator:"m_9e182ccd",label:"m_1738fcb2",input:"m_1714d588",control:"m_69686b9b",innerLabel:"m_78882f40"};const CDe={withItemsBorders:!0},$De=(e,{radius:r,color:n,transitionDuration:o,size:a,transitionTimingFunction:i})=>({root:{"--sc-radius":r===void 0?void 0:wn(r),"--sc-color":n?_a(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":i,"--sc-padding":dr(a,"sc-padding"),"--sc-font-size":Eo(a)}}),Mf=ot((e,r)=>{const n=Me("SegmentedControl",CDe,e),{classNames:o,className:a,style:i,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:z,transitionTimingFunction:j,variant:A,autoContrast:R,withItemsBorders:T,mod:O,attributes:P,...L}=n,H=kt({name:"SegmentedControl",props:n,classes:pW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:$De}),M=lo(),V=d.map(re=>typeof re=="string"?{label:re,value:re}:re),B=dze(),[F,q]=S.useState(z7()),[G,U]=S.useState(null),[Y,Z]=S.useState({}),I=(re,ue)=>{Y[ue]=re,Z(Y)},[W,K]=Us({value:u,defaultValue:p,finalValue:Array.isArray(d)?V.find(re=>!re.disabled)?.value??d[0]?.value??null:null,onChange:f}),Q=ti(v),ae=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&&K(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=>I(ue,re.value),__vars:{"--sc-label-color":$!==void 0?F7({color:$,theme:M,autoContrast:R}):void 0},key:`${re.value}-label`},y.jsx("span",{...H("innerLabel"),children:re.label})))),te=$r(r,re=>U(re));return eze(()=>{q(z7())},[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":T},O],...L,role:"radiogroup","data-disabled":w,children:[typeof W=="string"&&y.jsx(Gw,{target:Y[W],parent:G,component:"span",transitionDuration:"var(--sc-transition-duration)",...H("indicator")},F),ae]})});Mf.classes=pW,Mf.displayName="@mantine/core/SegmentedControl";const[zDe,a3]=ei("SliderProvider was not found in tree"),hW=S.forwardRef(({size:e,disabled:r,variant:n,color:o,thumbSize:a,radius:i,...l},s)=>{const{getStyles:c}=a3();return y.jsx(Se,{tabIndex:-1,variant:n,size:e,ref:s,...c("root"),...l})});hW.displayName="@mantine/core/SliderRoot";const fW=S.forwardRef(({max:e,min:r,value:n,position:o,label:a,dragging:i,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}=a3(),[_,$]=S.useState(!1),z=d||i||_||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:i,disabled:x},onFocus:j=>{$(!0),typeof p=="function"&&p(j)},onBlur:j=>{$(!1),typeof f=="function"&&f(j)},onTouchStart:l,onMouseDown:l,onKeyDownCapture:s,onClick:j=>j.stopPropagation(),children:[w,y.jsx(pd,{mounted:a!=null&&!!z,transition:"fade",duration:0,...c,children:j=>y.jsx("div",{...C("label",{style:j}),children:a})})]})});fW.displayName="@mantine/core/SliderThumb";function mW({value:e,min:r,max:n}){const o=(e-r)/(n-r)*100;return Math.min(Math.max(o,0),100)}function RDe({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 gW({marks:e,min:r,max:n,disabled:o,value:a,offset:i,inverted:l}){const{getStyles:s}=a3();if(!e)return null;const c=e.map((d,u)=>S.createElement(Se,{...s("markWrapper"),__vars:{"--mark-offset":`${mW({value:d.value,min:r,max:n})}%`},key:u},y.jsx(Se,{...s("mark"),mod:{filled:RDe({mark:d,value:a,offset:i,inverted:l}),disabled:o}}),d.label&&y.jsx("div",{...s("markLabel"),children:d.label})));return y.jsx("div",{children:c})}gW.displayName="@mantine/core/SliderMarks";function yW({filled:e,children:r,offset:n,disabled:o,marksOffset:a,inverted:i,containerProps:l,...s}){const{getStyles:c}=a3();return y.jsx(Se,{...c("trackContainer"),mod:{disabled:o},...l,children:y.jsxs(Se,{...c("track"),mod:{inverted:i,disabled:o},children:[y.jsx(Se,{mod:{inverted:i,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(gW,{...s,offset:a,disabled:o,inverted:i})]})})}yW.displayName="@mantine/core/SliderTrack";function jDe({value:e,containerWidth:r,min:n,max:o,step:a,precision:i}){const l=(r?Math.min(Math.max(e,0),r)/r:e)*(o-n),s=(l!==0?Math.round(l/a)*a:0)+n,c=Math.max(s,n);return i!==void 0?Number(c.toFixed(i)):c}function i3(e,r){return parseFloat(e.toFixed(r))}function TDe(e){if(!e)return 0;const r=e.toString().split(".");return r.length>1?r[1].length:0}function eS(e,r){const n=[...r].sort((o,a)=>o.value-a.value).find(o=>o.value>e);return n?n.value:e}function tS(e,r){const n=[...r].sort((o,a)=>a.value-o.value).find(o=>o.valuen.value-o.value);return r.length>0?r[0].value:0}function bW(e){const r=[...e].sort((n,o)=>n.value-o.value);return r.length>0?r[r.length-1].value:100}var xW={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 ADe={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"},DDe=(e,{size:r,color:n,thumbSize:o,radius:a})=>({root:{"--slider-size":dr(r,"slider-size"),"--slider-color":n?_a(n,e):void 0,"--slider-radius":a===void 0?void 0:wn(a),"--slider-thumb-size":o!==void 0?$e(o):"calc(var(--slider-size) * 2)"}}),rS=ot((e,r)=>{const n=Me("Slider",ADe,e),{classNames:o,styles:a,value:i,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:z,thumbChildren:j,disabled:A,unstyled:R,scale:T,inverted:O,className:P,style:L,vars:H,hiddenInputProps:M,restrictToMarks:V,thumbProps:B,attributes:F,...q}=n,G=kt({name:"Slider",props:n,classes:xW,classNames:o,className:P,styles:a,style:L,attributes:F,vars:H,varsResolver:DDe,unstyled:R}),{dir:U}=dd(),[Y,Z]=S.useState(!1),[I,W]=Us({value:typeof i=="number"?ad(i,d,u):i,defaultValue:typeof v=="number"?ad(v,d,u):v,finalValue:ad(0,d,u),onChange:l}),K=S.useRef(I),Q=S.useRef(s);S.useEffect(()=>{Q.current=s},[s]);const ae=S.useRef(null),te=S.useRef(null),[re,ue]=p||[d,u],_e=mW({value:I,min:re,max:ue}),ce=T(I),pe=typeof k=="function"?k(ce):k,xe=g??TDe(f),De=S.useCallback(({x:Ve})=>{if(!A){const qe=jDe({value:Ve,min:re,max:ue,step:f,precision:xe}),Xe=ad(qe,d,u);W(V&&x?.length?Aq(Xe,x.map(Ot=>Ot.value)):Xe),K.current=Xe}},[A,d,u,re,ue,f,xe,W,x,V]),Be=S.useCallback(()=>{if(!A&&Q.current){const Ve=V&&x?.length?Aq(K.current,x.map(qe=>qe.value)):K.current;Q.current(Ve)}},[A,x,V]),{ref:Je,active:st}=Sq(De,{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=eS(I,x);W(Xe),Le(Xe);break}const qe=i3(Math.min(Math.max(I+f,d),u),xe);W(qe),Le(qe);break}case"ArrowRight":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?tS(I,x):eS(I,x);W(Xe),Le(Xe);break}const qe=i3(Math.min(Math.max(U==="rtl"?I-f:I+f,d),u),xe);W(qe),Le(qe);break}case"ArrowDown":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=tS(I,x);W(Xe),Le(Xe);break}const qe=i3(Math.min(Math.max(I-f,d),u),xe);W(qe),Le(qe);break}case"ArrowLeft":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?eS(I,x):tS(I,x);W(Xe),Le(Xe);break}const qe=i3(Math.min(Math.max(U==="rtl"?I+f:I-f,d),u),xe);W(qe),Le(qe);break}case"Home":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(vW(x)),Le(vW(x));break}W(d),Le(d);break}case"End":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(bW(x)),Le(bW(x));break}W(u),Le(u);break}}};return y.jsx(zDe,{value:{getStyles:G},children:y.jsxs(hW,{...q,ref:$r(r,ae),onKeyDownCapture:St,onMouseDownCapture:()=>ae.current?.focus(),size:c,disabled:A,children:[y.jsx(yW,{inverted:O,offset:0,filled:_e,marks:x,min:re,max:ue,value:ce,disabled:A,containerProps:{ref:Je,onMouseEnter:z?()=>Z(!0):void 0,onMouseLeave:z?()=>Z(!1):void 0},children:y.jsx(fW,{max:ue,min:re,value:ce,position:_e,dragging:st,label:pe,ref:te,labelTransitionProps:C,labelAlwaysOn:_,thumbLabel:$,showLabelOnHover:z,isHovered:Y,disabled:A,...B,children:j})}),y.jsx("input",{type:"hidden",name:w,value:ce,...M})]})})});rS.classes=xW,rS.displayName="@mantine/core/Slider";const nS=ot((e,r)=>{const{w:n,h:o,miw:a,mih:i,...l}=Me("Space",null,e);return y.jsx(Se,{ref:r,...l,w:n,miw:a??n,h:o,mih:i??o})});nS.displayName="@mantine/core/Space";var wW={root:"m_6d731127"};const MDe={gap:"md",align:"stretch",justify:"flex-start"},NDe=(e,{gap:r,align:n,justify:o})=>({root:{"--stack-gap":Hs(r),"--stack-align":n,"--stack-justify":o}}),Io=ot((e,r)=>{const n=Me("Stack",MDe,e),{classNames:o,className:a,style:i,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:wW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:NDe});return y.jsx(Se,{ref:r,...w("root"),variant:f,...v})});Io.classes=wW,Io.displayName="@mantine/core/Stack";const[PDe,oS]=ei("Tabs component was not found in the tree");var uy={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 py=ot((e,r)=>{const n=Me("TabsList",null,e),{children:o,className:a,grow:i,justify:l,classNames:s,styles:c,style:d,mod:u,...p}=n,f=oS();return y.jsx(Se,{...p,...f.getStyles("list",{className:a,style:d,classNames:s,styles:c,props:n,variant:f.variant}),ref:r,role:"tablist",variant:f.variant,mod:[{grow:i,orientation:f.orientation,placement:f.orientation==="vertical"&&f.placement,inverted:f.inverted},u],"aria-orientation":f.orientation,__vars:{"--tabs-justify":l},children:o})});py.classes=uy,py.displayName="@mantine/core/TabsList";const Js=ot((e,r)=>{const n=Me("TabsPanel",null,e),{children:o,className:a,value:i,classNames:l,styles:s,style:c,mod:d,keepMounted:u,...p}=n,f=oS(),g=f.value===i,v=f.keepMounted||u||g?o:null;return y.jsx(Se,{...f.getStyles("panel",{className:a,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(i),"aria-labelledby":f.getTabId(i),...p,children:v})});Js.classes=uy,Js.displayName="@mantine/core/TabsPanel";const Nf=ot((e,r)=>{const n=Me("TabsTab",null,e),{className:o,children:a,rightSection:i,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:$}=dd(),z=oS(),j=s===z.value,A=T=>{z.onChange(z.allowTabDeactivation&&s===z.value?null:s),c?.(T)},R={classNames:g,styles:v,props:n};return y.jsxs(pr,{...z.getStyles("tab",{className:o,style:f,variant:z.variant,...R}),disabled:u,unstyled:z.unstyled,variant:z.variant,mod:[{active:j,disabled:u,orientation:z.orientation,inverted:z.inverted,placement:z.orientation==="vertical"&&z.placement},x],ref:r,role:"tab",id:z.getTabId(s),"aria-selected":j,tabIndex:k!==void 0?k:j||z.value===null?0:-1,"aria-controls":z.getPanelId(s),onClick:A,__vars:{"--tabs-color":p?_a(p,_):void 0},onKeyDown:Y1({siblingSelector:'[role="tab"]',parentSelector:'[role="tablist"]',activateOnFocus:z.activateTabWithKeyboard,loop:z.loop,orientation:z.orientation||"horizontal",dir:$,onKeyDown:d}),...C,children:[l&&y.jsx("span",{...z.getStyles("tabSection",R),"data-position":"left",children:l}),a&&y.jsx("span",{...z.getStyles("tabLabel",R),children:a}),i&&y.jsx("span",{...z.getStyles("tabSection",R),"data-position":"right",children:i})]})});Nf.classes=uy,Nf.displayName="@mantine/core/TabsTab";const kW="Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value",BDe={keepMounted:!0,orientation:"horizontal",loop:!0,activateTabWithKeyboard:!0,variant:"default",placement:"left"},ODe=(e,{radius:r,color:n,autoContrast:o})=>({root:{"--tabs-radius":wn(r),"--tabs-color":_a(n,e),"--tabs-text-color":rRe(o,e)?F7({color:n,theme:e,autoContrast:o}):void 0}}),op=ot((e,r)=>{const n=Me("Tabs",BDe,e),{defaultValue:o,value:a,onChange:i,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:z,style:j,vars:A,autoContrast:R,mod:T,attributes:O,...P}=n,L=ti(d),[H,M]=Us({value:a,defaultValue:o,finalValue:null,onChange:i}),V=kt({name:"Tabs",props:n,classes:uy,className:z,style:j,classNames:C,styles:_,unstyled:$,attributes:O,vars:A,varsResolver:ODe});return y.jsx(PDe,{value:{placement:x,value:H,orientation:l,id:L,loop:c,activateTabWithKeyboard:u,getTabId:uq(`${L}-tab`,kW),getPanelId:uq(`${L}-panel`,kW),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},T],...V("root"),...P,children:s})})});op.classes=uy,op.displayName="@mantine/core/Tabs",op.Tab=Nf,op.Panel=Js,op.List=py;var _W={root:"m_7341320d"};const IDe=(e,{size:r,radius:n,variant:o,gradient:a,color:i,autoContrast:l})=>{const s=e.variantColorResolver({color:i||e.primaryColor,theme:e,gradient:a,variant:o||"filled",autoContrast:l});return{root:{"--ti-size":dr(r,"ti-size"),"--ti-radius":n===void 0?void 0:wn(n),"--ti-bg":i||o?s.background:void 0,"--ti-color":i||o?s.color:void 0,"--ti-bd":i||o?s.border:void 0}}},$a=ot((e,r)=>{const n=Me("ThemeIcon",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,autoContrast:d,attributes:u,...p}=n,f=kt({name:"ThemeIcon",classes:_W,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,vars:c,varsResolver:IDe});return y.jsx(Se,{ref:r,...f("root"),...p})});$a.classes=_W,$a.displayName="@mantine/core/ThemeIcon";const LDe=["h1","h2","h3","h4","h5","h6"],FDe=["xs","sm","md","lg","xl"];function VDe(e,r){const n=r!==void 0?r:`h${e}`;return LDe.includes(n)?{fontSize:`var(--mantine-${n}-font-size)`,fontWeight:`var(--mantine-${n}-font-weight)`,lineHeight:`var(--mantine-${n}-line-height)`}:FDe.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 SW={root:"m_8a5d1357"};const qDe={order:1},HDe=(e,{order:r,size:n,lineClamp:o,textWrap:a})=>{const i=VDe(r||1,n);return{root:{"--title-fw":i.fontWeight,"--title-lh":i.lineHeight,"--title-fz":i.fontSize,"--title-line-clamp":typeof o=="number"?o.toString():void 0,"--title-text-wrap":a}}},ap=ot((e,r)=>{const n=Me("Title",qDe,e),{classNames:o,className:a,style:i,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:SW,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:d,varsResolver:HDe});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});ap.classes=SW,ap.displayName="@mantine/core/Title";function EW(e,r,n){if(!e||!r)return[];const o=n.indexOf(e),a=n.indexOf(r),i=Math.min(o,a),l=Math.max(o,a);return n.slice(i,l+1)}function aS({node:e,getStyles:r,rootIndex:n,controller:o,expandOnClick:a,selectOnClick:i,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(aS,{node:_,flatValues:d,getStyles:r,rootIndex:void 0,level:s+1,controller:o,expandOnClick:a,isSubtree:!0,renderNode:c,selectOnClick:i,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&&mf(_.currentTarget,"[role=treeitem]")?.focus()),_.nativeEvent.code==="ArrowDown"||_.nativeEvent.code==="ArrowUp"){const $=mf(_.currentTarget,"[data-tree-root]");if(!$)return;_.stopPropagation(),_.preventDefault();const z=Array.from($.querySelectorAll("[role=treeitem]")),j=z.indexOf(_.currentTarget);if(j===-1)return;const A=_.nativeEvent.code==="ArrowDown"?j+1:j-1;if(z[A]?.focus(),_.shiftKey){const R=z[A];R&&o.setSelectedState(EW(o.anchorNode,R.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(EW(o.anchorNode,e.value,d)),g.current?.focus()):(a&&o.toggleExpanded(e.value),i&&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})]})}aS.displayName="@mantine/core/TreeNode";function l3(e,r,n=[]){const o=[];for(const a of e)if(Array.isArray(a.children)&&a.children.length>0){const i=l3(a.children,r,n);if(i.currentTreeChecked.length===a.children.length){const l=i.currentTreeChecked.every(c=>c.checked),s={checked:l,indeterminate:!l,value:a.value,hasChildren:!0};o.push(s),n.push(s)}else if(i.currentTreeChecked.length>0){const l={checked:!1,indeterminate:!0,value:a.value,hasChildren:!0};o.push(l),n.push(l)}}else if(r.includes(a.value)){const i={checked:!0,indeterminate:!1,value:a.value,hasChildren:!1};o.push(i),n.push(i)}return{result:n,currentTreeChecked:o}}function CW(e,r){for(const n of r){if(n.value===e)return n;if(Array.isArray(n.children)){const o=CW(e,n.children);if(o)return o}}return null}function s3(e,r,n=[]){const o=CW(e,r);return o?!Array.isArray(o.children)||o.children.length===0?[o.value]:(o.children.forEach(a=>{Array.isArray(a.children)&&a.children.length>0?s3(a.value,r,n):n.push(a.value)}),n):n}function $W(e){return e.reduce((r,n)=>(Array.isArray(n.children)&&n.children.length>0?r.push(...$W(n.children)):r.push(n.value),r),[])}function UDe(e,r,n){return n.length===0?!1:n.includes(e)?!0:l3(r,n).result.some(o=>o.value===e&&o.checked)}const WDe=Tq(UDe);function GDe(e,r,n){return n.length===0?!1:l3(r,n).result.some(o=>o.value===e&&o.indeterminate)}const YDe=Tq(GDe);function zW(e,r,n,o={}){return r.forEach(a=>{o[a.value]=a.value in e?e[a.value]:a.value===n,Array.isArray(a.children)&&zW(e,a.children,n,o)}),o}function XDe(e,r){const n=[];return e.forEach(o=>n.push(...s3(o,r))),Array.from(new Set(n))}function hy({initialSelectedState:e=[],initialCheckedState:r=[],initialExpandedState:n={},multiple:o=!1,onNodeCollapse:a,onNodeExpand:i}={}){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=>zW(F,B,u)),g(F=>XDe(F,B)),s(B)},[u,f]),_=S.useCallback(B=>{d(F=>{const q={...F,[B]:!F[B]};return q[B]?i?.(B):a?.(B),q})},[a,i]),$=S.useCallback(B=>{d(F=>(F[B]!==!1&&a?.(B),{...F,[B]:!1}))},[a]),z=S.useCallback(B=>{d(F=>(F[B]!==!0&&i?.(B),{...F,[B]:!0}))},[i]),j=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})},[]),R=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])),[]),T=S.useCallback(B=>{w(B),p(F=>o?F.includes(B)?F:[...F,B]:[B])},[]),O=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=s3(B,l);g(q=>Array.from(new Set([...q,...F])))},[l]),H=S.useCallback(B=>{const F=s3(B,l);g(q=>q.filter(G=>!F.includes(G)))},[l]),M=S.useCallback(()=>{g(()=>$W(l))},[l]),V=S.useCallback(()=>{g([])},[]);return{multiple:o,expandedState:c,selectedState:u,checkedState:f,anchorNode:v,initialize:C,toggleExpanded:_,collapse:$,expand:z,expandAllNodes:j,collapseAllNodes:A,setExpandedState:d,checkNode:L,uncheckNode:H,checkAllNodes:M,uncheckAllNodes:V,setCheckedState:g,toggleSelected:R,select:T,deselect:O,clearSelected:P,setSelectedState:p,hoveredNode:x,setHoveredNode:k,getCheckedNodes:()=>l3(l,f).result,isNodeChecked:B=>WDe(B,l,f),isNodeIndeterminate:B=>YDe(B,l,f)}}var RW={root:"m_f698e191",subtree:"m_75f3ecf",node:"m_f6970eb1",label:"m_dc283425"};function jW(e){return e.reduce((r,n)=>(r.push(n.value),n.children&&r.push(...jW(n.children)),r),[])}const ZDe={expandOnClick:!0,allowRangeSelection:!0,expandOnSpace:!0},KDe=(e,{levelOffset:r})=>({root:{"--level-offset":Hs(r)}}),Pf=ot((e,r)=>{const n=Me("Tree",ZDe,e),{classNames:o,className:a,style:i,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,z=hy(),j=p||z,A=kt({name:"Tree",classes:RW,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:KDe}),R=mq(()=>v&&j.clearSelected()),T=$r(r,R),O=S.useMemo(()=>jW(d),[d]);S.useEffect(()=>{j.initialize(d)},[d]);const P=d.map((L,H)=>y.jsx(aS,{node:L,getStyles:A,rootIndex:H,expandOnClick:u,selectOnClick:g,controller:j,renderNode:f,flatValues:O,allowRangeSelection:w,expandOnSpace:x,checkOnSpace:C},L.value));return y.jsx(Se,{component:"ul",ref:T,...A("root"),...$,role:"tree","aria-multiselectable":j.multiple,"data-tree-root":!0,children:P})});Pf.displayName="@mantine/core/Tree",Pf.classes=RW;const iS=S.createContext(null);function TW(){const e=S.useContext(iS);if(!e)throw new Error("useRootContainer must be used within a RootContainer");return e}function QDe(){return TW().ref}function JDe(){return TW().ref.current}const AW=S.createContext(null);function eMe(){const e=S.useContext(AW);return e===null&&console.warn("ReduceGraphicsMode is not provided"),e??!1}const[tMe,rMe]=ei("PanningAtomSafeCtx is not provided");function nMe({id:e,className:r,reduceGraphics:n=!1,children:o}){const[a,i]=S.useState(!1),l=S.useRef(null),s=S.useRef(null);s.current||(s.current=ICe(!1)),z8(()=>{i(!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(tMe,{value:s.current,children:y.jsx(AW.Provider,{value:n,children:y.jsx("div",{id:e,className:Ge("likec4-root",r),ref:l,...n&&{"data-likec4-reduced-graphics":!0},children:a&&!!c.ref.current&&y.jsx(iS.Provider,{value:c,children:o})})})})}const fy=S.createContext(null),lS=S.createContext(null);function oMe(){return S.useContext(fy)}function Lo(){const e=S.useContext(fy);if(!e)throw new Error("LikeC4Model not found. Make sure you have LikeC4ModelProvider.");return e}function aMe(){const e=Lo(),[r,n]=S.useState(e.$data.specification);return S.useEffect(()=>{n(o=>tt(o,e.$data.specification)?o:e.$data.specification)},[e]),r}const DW=S.createContext({}),iMe=g4e,lMe=e=>{const r=e.color;if(WO(e))return` --colors-likec4-tag-bg: ${r}; --colors-likec4-tag-bg-hover: color-mix(in oklab, ${r}, var(--colors-likec4-mix-color) 20%); `;if(!iMe.includes(r))return"";let n="12";return["mint","grass","lime","yellow","amber"].includes(r)&&(n="dark-2"),` @@ -119,7 +119,7 @@ ${p.message}`)}if(u){a.push(...s.actions),i=s;break}}return i?[i]:void 0}get eve ${v}px !important; top: ${p}px !important; } - `),()=>{x.contains(w)&&x.removeChild(w)}},[r]),y.jsx(LOe,{isPresent:r,childRef:i,sizeRef:l,children:S.cloneElement(e,{ref:c})})}const VOe=({children:e,initial:r,isPresent:n,onExitComplete:o,custom:a,presenceAffectsLayout:i,mode:l,anchorX:s,root:c})=>{const d=tm(qOe),u=S.useId();let p=!0,f=S.useMemo(()=>(p=!1,{id:u,initial:r,isPresent:n,custom:a,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 i&&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(FOe,{isPresent:n,anchorX:s,root:c,children:e})),y.jsx(T3.Provider,{value:f,children:e})};function qOe(){return new Map}function _X(e=!0){const r=S.useContext(T3);if(r===null)return[!0,null];const{isPresent:n,onExitComplete:o,register:a}=r,i=S.useId();S.useEffect(()=>{if(e)return a(i)},[e]);const l=S.useCallback(()=>e&&o&&o(i),[i,o,e]);return!n&&o?[!1,l]:[!0]}const A3=e=>e.key||"";function SX(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:a=!0,mode:i="sync",propagate:l=!1,anchorX:s="left",root:c})=>{const[d,u]=_X(l),p=S.useMemo(()=>SX(e),[e]),f=l&&!d?[]:p.map(A3),g=S.useRef(!0),v=S.useRef(p),w=tm(()=>new Map),[x,k]=S.useState(p),[C,_]=S.useState(p);IE(()=>{g.current=!1,v.current=p;for(let j=0;j{const A=A3(j),R=l&&!d?!1:p===C||f.includes(A),T=()=>{if(w.has(A))w.set(A,!0);else return;let O=!0;w.forEach(P=>{P||(O=!1)}),O&&(z?.(),_(v.current),l&&u?.(),o&&o())};return y.jsx(VOe,{isPresent:R,initial:!g.current||n?void 0:!1,custom:r,presenceAffectsLayout:a,mode:i,root:c,onExitComplete:R?void 0:T,anchorX:s,children:j},A)})})},HOe=S.createContext(null);function UOe(){const e=S.useRef(!1);return IE(()=>(e.current=!0,()=>{e.current=!1}),[]),e}function WOe(){const e=UOe(),[r,n]=S.useState(0),o=S.useCallback(()=>{e.current&&n(r+1)},[r]);return[S.useCallback(()=>Dr.postRender(o),[o]),r]}const GOe=e=>!e.isLayoutDirty&&e.willUpdate(!1);function YOe(){const e=new Set,r=new WeakMap,n=()=>e.forEach(GOe);return{add:o=>{e.add(o),r.set(o,o.addEventListener("willUpdate",n))},remove:o=>{e.delete(o);const a=r.get(o);a&&(a(),r.delete(o)),n()},dirty:n}}const EX=e=>e===!0,XOe=e=>EX(e===!0)||e==="id",rm=({children:e,id:r,inherit:n=!0})=>{const o=S.useContext(My),a=S.useContext(HOe),[i,l]=WOe(),s=S.useRef(null),c=o.id||a;s.current===null&&(XOe(n)&&c&&(r=r?c+"-"+r:c),s.current={id:r,group:EX(n)&&o.group||YOe()});const d=S.useMemo(()=>({...s.current,forceRender:i}),[l]);return y.jsx(My.Provider,{value:d,children:e})},LE=S.createContext({strict:!1});function FE(e){for(const r in e)Jf[r]={...Jf[r],...e[r]}}function ZOe({children:e,features:r,strict:n=!1}){const[,o]=S.useState(!VE(r)),a=S.useRef(void 0);if(!VE(r)){const{renderer:i,...l}=r;a.current=i,FE(l)}return S.useEffect(()=>{VE(r)&&r().then(({renderer:i,...l})=>{FE(l),a.current=i,o(!0)})},[]),y.jsx(LE.Provider,{value:{renderer:a.current,strict:n},children:e})}function VE(e){return typeof e=="function"}const KOe=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 D3(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||KOe.has(e)}let CX=e=>!D3(e);function $X(e){typeof e=="function"&&(CX=r=>r.startsWith("on")?!D3(r):e(r))}try{$X(require("@emotion/is-prop-valid").default)}catch{}function QOe(e,r,n){const o={};for(const a in e)a==="values"&&typeof e.values=="object"||(CX(a)||n===!0&&D3(a)||!r&&!D3(a)||e.draggable&&a.startsWith("onDrag"))&&(o[a]=e[a]);return o}function JOe({children:e,isValidProp:r,...n}){r&&$X(r),n={...S.useContext(vp),...n},n.isStatic=tm(()=>n.isStatic);const o=S.useMemo(()=>n,[JSON.stringify(n.transition),n.transformPagePoint,n.reducedMotion]);return y.jsx(vp.Provider,{value:o,children:e})}const M3=S.createContext({});function eIe(e,r){if(j3(e)){const{initial:n,animate:o}=e;return{initial:n===!1||Ay(n)?n:void 0,animate:Ay(o)?o:void 0}}return e.inherit!==!1?r:{}}function tIe(e){const{initial:r,animate:n}=eIe(e,S.useContext(M3));return S.useMemo(()=>({initial:r,animate:n}),[zX(r),zX(n)])}function zX(e){return Array.isArray(e)?e.join(" "):e}const qE=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function RX(e,r,n){for(const o in r)!to(r[o])&&!pX(o,n)&&(e[o]=r[o])}function rIe({transformTemplate:e},r){return S.useMemo(()=>{const n=qE();return BE(n,r,e),Object.assign({},n.vars,n.style)},[r])}function nIe(e,r){const n=e.style||{},o={};return RX(o,n,e),Object.assign(o,rIe(e,r)),o}function oIe(e,r){const n={},o=nIe(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 jX=()=>({...qE(),attrs:{}});function aIe(e,r,n,o){const a=S.useMemo(()=>{const i=jX();return fX(i,r,gX(o),e.transformTemplate,e.style),{...i.attrs,style:{...i.style}}},[r]);if(e.style){const i={};RX(i,e.style,e),a.style={...i,...a.style}}return a}const iIe=["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 HE(e){return typeof e!="string"||e.includes("-")?!1:!!(iIe.indexOf(e)>-1||/[A-Z]/u.test(e))}function lIe(e,r,n,{latestValues:o},a,i=!1){const l=(HE(e)?aIe:oIe)(r,o,a,e),s=QOe(r,typeof e=="string",i),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 N3(e){return to(e)?e.get():e}function sIe({scrapeMotionValuesFromProps:e,createRenderState:r},n,o,a){return{latestValues:cIe(n,o,a,e),renderState:r()}}function cIe(e,r,n,o){const a={},i=o(e,{});for(const f in i)a[f]=N3(i[f]);let{initial:l,animate:s}=e;const c=j3(e),d=lX(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"&&!R3(p)){const f=Array.isArray(p)?p:[p];for(let g=0;g(r,n)=>{const o=S.useContext(M3),a=S.useContext(T3),i=()=>sIe(e,r,o,a);return n?i():tm(i)},dIe=TX({scrapeMotionValuesFromProps:OE,createRenderState:qE}),uIe=TX({scrapeMotionValuesFromProps:yX,createRenderState:jX}),pIe=Symbol.for("motionComponentSymbol");function nm(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function hIe(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):nm(n)&&(n.current=o))},[r])}const AX=S.createContext({});function fIe(e,r,n,o,a){const{visualElement:i}=S.useContext(M3),l=S.useContext(LE),s=S.useContext(T3),c=S.useContext(vp).reducedMotion,d=S.useRef(null);o=o||l.renderer,!d.current&&o&&(d.current=o(e,{visualState:r,parent:i,props:n,presenceContext:s,blockInitialAnimation:s?s.initial===!1:!1,reducedMotionConfig:c}));const u=d.current,p=S.useContext(AX);u&&!u.projection&&a&&(u.type==="html"||u.type==="svg")&&mIe(d.current,n,a,p);const f=S.useRef(!1);S.useInsertionEffect(()=>{u&&f.current&&u.update(n,s)});const g=n[WY],v=S.useRef(!!g&&!window.MotionHandoffIsComplete?.(g)&&window.MotionHasOptimisedAnimation?.(g));return IE(()=>{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 mIe(e,r,n,o){const{layoutId:a,layout:i,drag:l,dragConstraints:s,layoutScroll:c,layoutRoot:d,layoutCrossfade:u}=r;e.projection=new n(e.latestValues,r["data-framer-portal-id"]?void 0:DX(e.parent)),e.projection.setOptions({layoutId:a,layout:i,alwaysMeasureLayout:!!l||s&&nm(s),visualElement:e,animationType:typeof i=="string"?i:"both",initialPromotionConfig:o,crossfade:u,layoutScroll:c,layoutRoot:d})}function DX(e){if(e)return e.options.allowProjection!==!1?e.projection:DX(e.parent)}function P3(e,{forwardMotionProps:r=!1}={},n,o){n&&FE(n);const a=HE(e)?uIe:dIe;function i(s,c){let d;const u={...S.useContext(vp),...s,layoutId:gIe(s)},{isStatic:p}=u,f=tIe(s),g=a(s,p);if(!p&&DE){yIe();const v=vIe(u);d=v.MeasureLayout,f.visualElement=fIe(e,g,u,o,v.ProjectionNode)}return y.jsxs(M3.Provider,{value:f,children:[d&&f.visualElement?y.jsx(d,{visualElement:f.visualElement,...u}):null,lIe(e,s,hIe(g,f.visualElement,c),g,p,r)]})}i.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const l=S.forwardRef(i);return l[pIe]=e,l}function gIe({layoutId:e}){const r=S.useContext(My).id;return r&&e!==void 0?r+"-"+e:e}function yIe(e,r){S.useContext(LE).strict}function vIe(e){const{drag:r,layout:n}=Jf;if(!r&&!n)return{};const o={...r,...n};return{MeasureLayout:r?.isEnabled(e)||n?.isEnabled(e)?o.MeasureLayout:void 0,ProjectionNode:o.ProjectionNode}}function bIe(e,r){if(typeof Proxy>"u")return P3;const n=new Map,o=(i,l)=>P3(i,l,e,r),a=(i,l)=>o(i,l);return new Proxy(a,{get:(i,l)=>l==="create"?o:(n.has(l)||n.set(l,P3(l,void 0,e,r)),n.get(l))})}const pi=bIe(),xIe=(e,r)=>HE(e)?new vX(r):new hX(r,{allowProjection:e!==S.Fragment});function MX(e,r,n,o=0,a=1){const i=Array.from(e).sort((c,d)=>c.sortNodePosition(d)).indexOf(r),l=e.size,s=(l-1)*o;return typeof n=="function"?n(i,l):a===1?i*o:s-i*o}function UE(e,r,n={}){const o=Zf(e,r,n.type==="exit"?e.presenceContext?.custom:void 0);let{transition:a=e.getDefaultTransition()||{}}=o||{};n.transitionOverride&&(a=n.transitionOverride);const i=o?()=>Promise.all(RE(e,o,n)):()=>Promise.resolve(),l=e.variantChildren&&e.variantChildren.size?(c=0)=>{const{delayChildren:d=0,staggerChildren:u,staggerDirection:p}=a;return wIe(e,r,c,d,u,p,n)}:()=>Promise.resolve(),{when:s}=a;if(s){const[c,d]=s==="beforeChildren"?[i,l]:[l,i];return c().then(()=>d())}else return Promise.all([i(),l(n.delay)])}function wIe(e,r,n=0,o=0,a=0,i=1,l){const s=[];for(const c of e.variantChildren)c.notify("AnimationStart",r),s.push(UE(c,r,{...l,delay:n+(typeof o=="function"?0:o)+MX(e.variantChildren,c,o,a,i)}).then(()=>c.notify("AnimationComplete",r)));return Promise.all(s)}function kIe(e,r,n={}){e.notify("AnimationStart",r);let o;if(Array.isArray(r)){const a=r.map(i=>UE(e,i,n));o=Promise.all(a)}else if(typeof r=="string")o=UE(e,r,n);else{const a=typeof r=="function"?Zf(e,r,n.custom):r;o=Promise.all(RE(e,a,n))}return o.then(()=>{e.notify("AnimationComplete",r)})}function NX(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})=>kIe(e,n,o)))}function $Ie(e){let r=CIe(e),n=BX(),o=!0;const a=c=>(d,u)=>{const p=Zf(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 i(c){r=c(e)}function l(c){const{props:d}=e,u=PX(e.parent)||{},p=[],f=new Set;let g={},v=1/0;for(let x=0;xv&&$,T=!1;const O=Array.isArray(_)?_:[_];let P=O.reduce(a(k),{});z===!1&&(P={});const{prevResolvedValues:L={}}=C,H={...L,...P},M=B=>{R=!0,f.has(B)&&(T=!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;SE(F)&&SE(q)?G=!NX(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&&(R=!1);const V=j&&A;R&&(!V||T)&&p.push(...O.map(B=>{const F={type:k};if(typeof B=="string"&&o&&!V&&e.manuallyAnimateOnMount&&e.parent){const{parent:q}=e,G=Zf(q,B);if(q.enteringChildren&&G){const{delayChildren:U}=G.transition||{};F.delay=MX(q.enteringChildren,e,U)}}return{animation:B,options:F}}))}if(f.size){const x={};if(typeof d.initial!="boolean"){const k=Zf(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:i,getState:()=>n,reset:()=>{n=BX()}}}function zIe(e,r){return typeof r=="string"?r!==e:Array.isArray(r)?!NX(r,e):!1}function bp(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function BX(){return{animate:bp(!0),whileInView:bp(),whileHover:bp(),whileTap:bp(),whileDrag:bp(),whileFocus:bp(),exit:bp()}}class wd{constructor(r){this.isMounted=!1,this.node=r}update(){}}class RIe extends wd{constructor(r){super(r),r.animationState||(r.animationState=$Ie(r))}updateAnimationControlsSubscription(){const{animate:r}=this.node.getProps();R3(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 jIe=0;class TIe extends wd{constructor(){super(...arguments),this.id=jIe++}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 a=this.node.animationState.setActive("exit",!r);n&&!r&&a.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 AIe={animation:{Feature:RIe},exit:{Feature:TIe}};function Ny(e,r,n,o={passive:!0}){return e.addEventListener(r,n,o),()=>e.removeEventListener(r,n)}function Py(e){return{point:{x:e.pageX,y:e.pageY}}}const DIe=e=>r=>xE(r)&&e(r,Py(r));function By(e,r,n,o){return Ny(e,r,DIe(n),o)}const OX=1e-4,MIe=1-OX,NIe=1+OX,IX=.01,PIe=0-IX,BIe=0+IX;function Fo(e){return e.max-e.min}function OIe(e,r,n){return Math.abs(e-r)<=n}function LX(e,r,n,o=.5){e.origin=o,e.originPoint=Lr(r.min,r.max,e.origin),e.scale=Fo(n)/Fo(r),e.translate=Lr(n.min,n.max,e.origin)-e.originPoint,(e.scale>=MIe&&e.scale<=NIe||isNaN(e.scale))&&(e.scale=1),(e.translate>=PIe&&e.translate<=BIe||isNaN(e.translate))&&(e.translate=0)}function Oy(e,r,n,o){LX(e.x,r.x,n.x,o?o.originX:void 0),LX(e.y,r.y,n.y,o?o.originY:void 0)}function FX(e,r,n){e.min=n.min+r.min,e.max=e.min+Fo(r)}function IIe(e,r,n){FX(e.x,r.x,n.x),FX(e.y,r.y,n.y)}function VX(e,r,n){e.min=r.min-n.min,e.max=e.min+Fo(r)}function B3(e,r,n){VX(e.x,r.x,n.x),VX(e.y,r.y,n.y)}function hi(e){return[e("x"),e("y")]}const qX=({current:e})=>e?e.ownerDocument.defaultView:null;class HX{constructor(r,n,{transformPagePoint:o,contextWindow:a=window,dragSnapToOrigin:i=!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=GE(this.lastMoveEventInfo,this.history),g=this.startEvent!==null,v=BOe(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=WE(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=GE(f.type==="pointercancel"?this.lastMoveEventInfo:WE(g,this.transformPagePoint),this.history);this.startEvent&&v&&v(f,k),w&&w(f,k)},!xE(r))return;this.dragSnapToOrigin=i,this.handlers=n,this.transformPagePoint=o,this.distanceThreshold=l,this.contextWindow=a||window;const s=Py(r),c=WE(s,this.transformPagePoint),{point:d}=c,{timestamp:u}=so;this.history=[{...d,timestamp:u}];const{onSessionStart:p}=n;p&&p(r,GE(c,this.history)),this.removeListeners=ky(By(this.contextWindow,"pointermove",this.handlePointerMove),By(this.contextWindow,"pointerup",this.handlePointerUp),By(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(r){this.handlers=r}end(){this.removeListeners&&this.removeListeners(),vd(this.updatePoint)}}function WE(e,r){return r?{point:r(e.point)}:e}function UX(e,r){return{x:e.x-r.x,y:e.y-r.y}}function GE({point:e},r){return{point:e,delta:UX(e,WX(r)),offset:UX(e,LIe(r)),velocity:FIe(r,.1)}}function LIe(e){return e[0]}function WX(e){return e[e.length-1]}function FIe(e,r){if(e.length<2)return{x:0,y:0};let n=e.length-1,o=null;const a=WX(e);for(;n>=0&&(o=e[n],!(a.timestamp-o.timestamp>ol(r)));)n--;if(!o)return{x:0,y:0};const i=ui(a.timestamp-o.timestamp);if(i===0)return{x:0,y:0};const l={x:(a.x-o.x)/i,y:(a.y-o.y)/i};return l.x===1/0&&(l.x=0),l.y===1/0&&(l.y=0),l}function VIe(e,{min:r,max:n},o){return r!==void 0&&en&&(e=o?Lr(n,e,o.max):Math.min(e,n)),e}function GX(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 qIe(e,{top:r,left:n,bottom:o,right:a}){return{x:GX(e.x,n,a),y:GX(e.y,r,o)}}function YX(e,r){let n=r.min-e.min,o=r.max-e.max;return r.max-r.mino?n=Uf(r.min,r.max-o,e.min):o>a&&(n=Uf(e.min,e.max-a,r.min)),tc(0,1,n)}function WIe(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 YE=.35;function GIe(e=YE){return e===!1?e=0:e===!0&&(e=YE),{x:XX(e,"left","right"),y:XX(e,"top","bottom")}}function XX(e,r,n){return{min:ZX(e,r),max:ZX(e,n)}}function ZX(e,r){return typeof e=="number"?e:e[r]||0}const YIe=new WeakMap;class XIe{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:a}=this.visualElement;if(a&&a.isPresent===!1)return;const i=p=>{const{dragSnapToOrigin:f}=this.getProps();f?this.pauseAnimation():this.stopAnimation(),n&&this.snapToCursor(Py(p).point)},l=(p,f)=>{const{drag:g,dragPropagation:v,onDragStart:w}=this.getProps();if(g&&!v&&(this.openDragLock&&this.openDragLock(),this.openDragLock=MBe(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),hi(k=>{let C=this.getAxisMotionValue(k).get()||0;if(ns.test(C)){const{projection:_}=this.visualElement;if(_&&_.layout){const $=_.layout.layoutBox[k];$&&(C=Fo($)*(parseFloat(C)/100))}}this.originPoint[k]=C}),w&&Dr.postRender(()=>w(p,f)),CE(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=ZIe(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=()=>hi(p=>this.getAnimationState(p)==="paused"&&this.getAxisMotionValue(p).animation?.play()),{dragSnapToOrigin:u}=this.getProps();this.panSession=new HX(r,{onSessionStart:i,onStart:l,onMove:s,onSessionEnd:c,resumeAnimation:d},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:o,contextWindow:qX(this.visualElement)})}stop(r,n){const o=r||this.latestPointerEvent,a=n||this.latestPanInfo,i=this.isDragging;if(this.cancel(),!i||!a||!o)return;const{velocity:l}=a;this.startAnimation(l);const{onDragEnd:s}=this.getProps();s&&Dr.postRender(()=>s(o,a))}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:a}=this.getProps();if(!o||!O3(r,a,this.currentDirection))return;const i=this.getAxisMotionValue(r);let l=this.originPoint[r]+o[r];this.constraints&&this.constraints[r]&&(l=VIe(l,this.constraints[r],this.elastic[r])),i.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,a=this.constraints;r&&nm(r)?this.constraints||(this.constraints=this.resolveRefConstraints()):r&&o?this.constraints=qIe(o.layoutBox,r):this.constraints=!1,this.elastic=GIe(n),a!==this.constraints&&o&&this.constraints&&!this.hasMutatedConstraints&&hi(i=>{this.constraints!==!1&&this.getAxisMotionValue(i)&&(this.constraints[i]=WIe(o.layoutBox[i],this.constraints[i]))})}resolveRefConstraints(){const{dragConstraints:r,onMeasureDragConstraints:n}=this.getProps();if(!r||!nm(r))return!1;const o=r.current,{projection:a}=this.visualElement;if(!a||!a.layout)return!1;const i=gOe(o,a.root,this.visualElement.getTransformPagePoint());let l=HIe(a.layout.layoutBox,i);if(n){const s=n(hOe(l));this.hasMutatedConstraints=!!s,s&&(l=YY(s))}return l}startAnimation(r){const{drag:n,dragMomentum:o,dragElastic:a,dragTransition:i,dragSnapToOrigin:l,onDragTransitionEnd:s}=this.getProps(),c=this.constraints||{},d=hi(u=>{if(!O3(u,n,this.currentDirection))return;let p=c&&c[u]||{};l&&(p={min:0,max:0});const f=a?200:1e6,g=a?40:1e7,v={type:"inertia",velocity:o?r[u]:0,bounceStiffness:f,bounceDamping:g,timeConstant:750,restDelta:1,restSpeed:10,...i,...p};return this.startAxisValueAnimation(u,v)});return Promise.all(d).then(s)}startAxisValueAnimation(r,n){const o=this.getAxisMotionValue(r);return CE(this.visualElement,r),o.start(zE(r,o,0,n,this.visualElement,!1))}stopAnimation(){hi(r=>this.getAxisMotionValue(r).stop())}pauseAnimation(){hi(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){hi(n=>{const{drag:o}=this.getProps();if(!O3(n,o,this.currentDirection))return;const{projection:a}=this.visualElement,i=this.getAxisMotionValue(n);if(a&&a.layout){const{min:l,max:s}=a.layout.layoutBox[n];i.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(!nm(n)||!o||!this.constraints)return;this.stopAnimation();const a={x:0,y:0};hi(l=>{const s=this.getAxisMotionValue(l);if(s&&this.constraints!==!1){const c=s.get();a[l]=UIe({min:c,max:c},this.constraints[l])}});const{transformTemplate:i}=this.visualElement.getProps();this.visualElement.current.style.transform=i?i({},""):"none",o.root&&o.root.updateScroll(),o.updateLayout(),this.resolveConstraints(),hi(l=>{if(!O3(l,r,null))return;const s=this.getAxisMotionValue(l),{min:c,max:d}=this.constraints[l];s.set(Lr(c,d,a[l]))})}addListeners(){if(!this.visualElement.current)return;YIe.set(this.visualElement,this);const r=this.visualElement.current,n=By(r,"pointerdown",c=>{const{drag:d,dragListener:u=!0}=this.getProps();d&&u&&this.start(c)}),o=()=>{const{dragConstraints:c}=this.getProps();nm(c)&&c.current&&(this.constraints=this.resolveRefConstraints())},{projection:a}=this.visualElement,i=a.addEventListener("measure",o);a&&!a.layout&&(a.root&&a.root.updateScroll(),a.updateLayout()),Dr.read(o);const l=Ny(window,"resize",()=>this.scalePositionWithinConstraints()),s=a.addEventListener("didUpdate",(({delta:c,hasLayoutChanged:d})=>{this.isDragging&&d&&(hi(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(),i(),s&&s()}}getProps(){const r=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:o=!1,dragPropagation:a=!1,dragConstraints:i=!1,dragElastic:l=YE,dragMomentum:s=!0}=r;return{...r,drag:n,dragDirectionLock:o,dragPropagation:a,dragConstraints:i,dragElastic:l,dragMomentum:s}}}function O3(e,r,n){return(r===!0||r===e)&&(n===null||n===e)}function ZIe(e,r=10){let n=null;return Math.abs(e.y)>r?n="y":Math.abs(e.x)>r&&(n="x"),n}class KIe extends wd{constructor(r){super(r),this.removeGroupControls=di,this.removeListeners=di,this.controls=new XIe(r)}mount(){const{dragControls:r}=this.node.getProps();r&&(this.removeGroupControls=r.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||di}unmount(){this.removeGroupControls(),this.removeListeners()}}const KX=e=>(r,n)=>{e&&Dr.postRender(()=>e(r,n))};class QIe extends wd{constructor(){super(...arguments),this.removePointerDownListener=di}onPointerDown(r){this.session=new HX(r,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:qX(this.node)})}createPanHandlers(){const{onPanSessionStart:r,onPanStart:n,onPan:o,onPanEnd:a}=this.node.getProps();return{onSessionStart:KX(r),onStart:KX(n),onMove:o,onEnd:(i,l)=>{delete this.session,a&&Dr.postRender(()=>a(i,l))}}}mount(){this.removePointerDownListener=By(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 I3={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function QX(e,r){return r.max===r.min?0:e/(r.max-r.min)*100}const Iy={correct:(e,r)=>{if(!r.target)return e;if(typeof e=="string")if(_t.test(e))e=parseFloat(e);else return e;const n=QX(e,r.target.x),o=QX(e,r.target.y);return`${n}% ${o}%`}},JIe={correct:(e,{treeScale:r,projectionDelta:n})=>{const o=e,a=xd.parse(e);if(a.length>5)return o;const i=xd.createTransformer(e),l=typeof a[0]!="number"?1:0,s=n.x.scale*r.x,c=n.y.scale*r.y;a[0+l]/=s,a[1+l]/=c;const d=Lr(s,c,.5);return typeof a[2+l]=="number"&&(a[2+l]/=d),typeof a[3+l]=="number"&&(a[3+l]/=d),i(a)}};let XE=!1;class eLe extends S.Component{componentDidMount(){const{visualElement:r,layoutGroup:n,switchLayoutGroup:o,layoutId:a}=this.props,{projection:i}=r;wOe(tLe),i&&(n.group&&n.group.add(i),o&&o.register&&a&&o.register(i),XE&&i.root.didUpdate(),i.addEventListener("animationComplete",()=>{this.safeToRemove()}),i.setOptions({...i.options,onExitComplete:()=>this.safeToRemove()})),I3.hasEverUpdated=!0}getSnapshotBeforeUpdate(r){const{layoutDependency:n,visualElement:o,drag:a,isPresent:i}=this.props,{projection:l}=o;return l&&(l.isPresent=i,XE=!0,a||r.layoutDependency!==n||n===void 0||r.isPresent!==i?l.willUpdate():this.safeToRemove(),r.isPresent!==i&&(i?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(),bE.postRender(()=>{!r.currentAnimation&&r.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:r,layoutGroup:n,switchLayoutGroup:o}=this.props,{projection:a}=r;XE=!0,a&&(a.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(a),o&&o.deregister&&o.deregister(a))}safeToRemove(){const{safeToRemove:r}=this.props;r&&r()}render(){return null}}function JX(e){const[r,n]=_X(),o=S.useContext(My);return y.jsx(eLe,{...e,layoutGroup:o,switchLayoutGroup:S.useContext(AX),isPresent:r,safeToRemove:n})}const tLe={borderRadius:{...Iy,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:Iy,borderTopRightRadius:Iy,borderBottomLeftRadius:Iy,borderBottomRightRadius:Iy,boxShadow:JIe},rLe=(e,r)=>e.depth-r.depth;class nLe{constructor(){this.children=[],this.isDirty=!1}add(r){PS(this.children,r),this.isDirty=!0}remove(r){x3(this.children,r),this.isDirty=!0}forEach(r){this.isDirty&&this.children.sort(rLe),this.isDirty=!1,this.children.forEach(r)}}const eZ=["TopLeft","TopRight","BottomLeft","BottomRight"],oLe=eZ.length,tZ=e=>typeof e=="string"?parseFloat(e):e,rZ=e=>typeof e=="number"||_t.test(e);function aLe(e,r,n,o,a,i){a?(e.opacity=Lr(0,n.opacity??1,iLe(o)),e.opacityExit=Lr(r.opacity??1,0,lLe(o))):i&&(e.opacity=Lr(r.opacity??1,n.opacity??1,o));for(let l=0;lor?1:n(Uf(e,r,o))}function aZ(e,r){e.min=r.min,e.max=r.max}function il(e,r){aZ(e.x,r.x),aZ(e.y,r.y)}function iZ(e,r){e.translate=r.translate,e.scale=r.scale,e.originPoint=r.originPoint,e.origin=r.origin}function lZ(e,r,n,o,a){return e-=r,e=$3(e,1/n,o),a!==void 0&&(e=$3(e,1/a,o)),e}function sLe(e,r=0,n=1,o=.5,a,i=e,l=e){if(ns.test(r)&&(r=parseFloat(r),r=Lr(l.min,l.max,r/100)-l.min),typeof r!="number")return;let s=Lr(i.min,i.max,o);e===i&&(s-=r),e.min=lZ(e.min,r,n,s,a),e.max=lZ(e.max,r,n,s,a)}function sZ(e,r,[n,o,a],i,l){sLe(e,r[n],r[o],r[a],r.scale,i,l)}const cLe=["x","scaleX","originX"],dLe=["y","scaleY","originY"];function cZ(e,r,n,o){sZ(e.x,r,cLe,n?n.x:void 0,o?o.x:void 0),sZ(e.y,r,dLe,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 uLe(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 Fo(e.x)/Fo(e.y)}function gZ(e,r){return e.translate===r.translate&&e.scale===r.scale&&e.originPoint===r.originPoint}class pLe{constructor(){this.members=[]}add(r){PS(this.members,r),r.scheduleRender()}remove(r){if(x3(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(a=>r===a);if(n===0)return!1;let o;for(let a=n;a>=0;a--){const i=this.members[a];if(i.isPresent!==!1){o=i;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:a}=r.options;a===!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 hLe(e,r,n){let o="";const a=e.x.translate/r.x,i=e.y.translate/r.y,l=n?.z||0;if((a||i||l)&&(o=`translate3d(${a}px, ${i}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 ZE=["","X","Y","Z"],fLe=1e3;let mLe=0;function KE(e,r,n,o){const{latestValues:a}=r;a[e]&&(n[e]=a[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=GY(r);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:a,layoutId:i}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",Dr,!(a||i))}const{parent:o}=e;o&&!o.hasCheckedOptimisedAppear&&yZ(o)}function vZ({attachResizeListener:e,defaultParent:r,measureScroll:n,checkIsScrollRoot:o,resetTransform:a}){return class{constructor(i={},l=r?.()){this.id=mLe++,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(vLe),this.nodes.forEach(kLe),this.nodes.forEach(_Le),this.nodes.forEach(bLe)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=i,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(i,()=>{const f=window.innerWidth;f!==u&&(u=f,this.root.updateBlockedByResize=!0,d&&d(),d=POe(p,250),I3.hasAnimatedSinceResize&&(I3.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()||zLe,{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={...gE(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 i=this.getStack();i&&i.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),vd(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(SLe),this.animationId++)}getTransformTemplate(){const{visualElement:i}=this.options;return i&&i.getProps().transformTemplate}willUpdate(i=!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&&!Fo(this.snapshot.measuredBox.x)&&!Fo(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,i.x,$),kZ(u.y,i.y,$),this.setTargetDelta(u),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(B3(p,this.layout.layoutBox,this.relativeParent.layout.layoutBox),CLe(this.relativeTarget,this.relativeTargetOrigin,p,$),C&&uLe(this.relativeTarget,C)&&(this.isProjectionDirty=!1),C||(C=En()),il(C,this.relativeTarget)),v&&(this.animationValues=d,aLe(d,c,this.latestValues,$,k,x)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=$},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(i){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&(vd(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Dr.update(()=>{I3.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=gp(0)),this.currentAnimation=bX(this.motionValue,[0,1e3],{...i,velocity:0,isSync:!0,onUpdate:l=>{this.mixTargetDelta(l),i.onUpdate&&i.onUpdate(l)},onStop:()=>{},onComplete:()=>{i.onComplete&&i.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 i=this.getStack();i&&i.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(fLe),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const i=this.getLead();let{targetWithTransforms:l,target:s,layout:c,latestValues:d}=i;if(!(!l||!s||!c)){if(this!==i&&this.layout&&c&&$Z(this.options.animationType,this.layout.layoutBox,c.layoutBox)){s=this.target||En();const u=Fo(this.layout.layoutBox.x);s.x.min=i.target.x.min,s.x.max=s.x.min+u;const p=Fo(this.layout.layoutBox.y);s.y.min=i.target.y.min,s.y.max=s.y.min+p}il(l,s),Qf(l,d),Oy(this.projectionDeltaWithTransform,this.layoutCorrected,l,d)}}registerSharedNode(i,l){this.sharedNodes.has(i)||this.sharedNodes.set(i,new pLe),this.sharedNodes.get(i).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 i=this.getStack();return i?i.lead===this:!0}getLead(){const{layoutId:i}=this.options;return i?this.getStack()?.lead||this:this}getPrevLead(){const{layoutId:i}=this.options;return i?this.getStack()?.prevLead:void 0}getStack(){const{layoutId:i}=this.options;if(i)return this.root.sharedNodes.get(i)}promote({needsReset:i,transition:l,preserveFollowOpacity:s}={}){const c=this.getStack();c&&c.promote(this,s),i&&(this.projectionDelta=void 0,this.needsReset=!0),l&&this.setOptions({transition:l})}relegate(){const i=this.getStack();return i?i.relegate(this):!1}resetSkewAndRotation(){const{visualElement:i}=this.options;if(!i)return;let l=!1;const{latestValues:s}=i;if((s.z||s.rotate||s.rotateX||s.rotateY||s.rotateZ||s.skewX||s.skewY)&&(l=!0),!l)return;const c={};s.z&&KE("z",i,c,this.animationValues);for(let d=0;di.currentAnimation?.stop()),this.root.nodes.forEach(bZ),this.root.sharedNodes.clear()}}}function gLe(e){e.updateLayout()}function yLe(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:a}=e.options,i=r.source!==e.layout.source;a==="size"?hi(u=>{const p=i?r.measuredBox[u]:r.layoutBox[u],f=Fo(p);p.min=n[u].min,p.max=p.min+f}):$Z(a,r.layoutBox,n)&&hi(u=>{const p=i?r.measuredBox[u]:r.layoutBox[u],f=Fo(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=em();Oy(l,n,r.layoutBox);const s=em();i?Oy(s,e.applyTransform(o,!0),r.measuredBox):Oy(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();B3(g,r.layoutBox,p.layoutBox);const v=En();B3(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 vLe(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 bLe(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function xLe(e){e.clearSnapshot()}function bZ(e){e.clearMeasurements()}function xZ(e){e.isLayoutDirty=!1}function wLe(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 kLe(e){e.resolveTargetDelta()}function _Le(e){e.calcProjection()}function SLe(e){e.resetSkewAndRotation()}function ELe(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 CLe(e,r,n,o){_Z(e.x,r.x,n.x,o),_Z(e.y,r.y,n.y,o)}function $Le(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const zLe={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:di;function CZ(e){e.min=EZ(e.min),e.max=EZ(e.max)}function RLe(e){CZ(e.x),CZ(e.y)}function $Z(e,r,n){return e==="position"||e==="preserve-aspect"&&!OIe(mZ(r),mZ(n),.2)}function jLe(e){return e!==e.root&&e.scroll?.wasRoot}const TLe=vZ({attachResizeListener:(e,r)=>Ny(e,"resize",r),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),QE={current:void 0},zZ=vZ({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!QE.current){const e=new TLe({});e.mount(window),e.setOptions({layoutScroll:!0}),QE.current=e}return QE.current},resetTransform:(e,r)=>{e.style.transform=r!==void 0?r:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),ALe={pan:{Feature:QIe},drag:{Feature:KIe,ProjectionNode:zZ,MeasureLayout:JX}};function RZ(e,r,n){const{props:o}=e;e.animationState&&o.whileHover&&e.animationState.setActive("whileHover",n==="Start");const a="onHover"+n,i=o[a];i&&Dr.postRender(()=>i(r,Py(r)))}class DLe extends wd{mount(){const{current:r}=this.node;r&&(this.unmount=NBe(r,(n,o)=>(RZ(this.node,o,"Start"),a=>RZ(this.node,a,"End"))))}unmount(){}}class MLe extends wd{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=ky(Ny(this.node.current,"focus",()=>this.onFocus()),Ny(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function jZ(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 a="onTap"+(n==="End"?"":n),i=o[a];i&&Dr.postRender(()=>i(r,Py(r)))}class NLe extends wd{mount(){const{current:r}=this.node;r&&(this.unmount=IBe(r,(n,o)=>(jZ(this.node,o,"Start"),(a,{success:i})=>jZ(this.node,a,i?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const JE=new WeakMap,eC=new WeakMap,PLe=e=>{const r=JE.get(e.target);r&&r(e)},BLe=e=>{e.forEach(PLe)};function OLe({root:e,...r}){const n=e||document;eC.has(n)||eC.set(n,{});const o=eC.get(n),a=JSON.stringify(r);return o[a]||(o[a]=new IntersectionObserver(BLe,{root:e,...r})),o[a]}function ILe(e,r,n){const o=OLe(r);return JE.set(e,n),o.observe(e),()=>{JE.delete(e),o.unobserve(e)}}const LLe={some:0,all:1};class FLe extends wd{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:r={}}=this.node.getProps(),{root:n,margin:o,amount:a="some",once:i}=r,l={root:n?n.current:void 0,rootMargin:o,threshold:typeof a=="number"?a:LLe[a]},s=c=>{const{isIntersecting:d}=c;if(this.isInView===d||(this.isInView=d,i&&!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 ILe(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(VLe(r,n))&&this.startObserver()}unmount(){}}function VLe({viewport:e={}},{viewport:r={}}={}){return n=>e[n]!==r[n]}const qLe={inView:{Feature:FLe},tap:{Feature:NLe},focus:{Feature:MLe},hover:{Feature:DLe}},HLe={layout:{ProjectionNode:zZ,MeasureLayout:JX}},ULe={renderer:xIe,...AIe,...qLe},WLe={...ULe,...ALe,...HLe};function TZ(e){const r=tm(()=>gp(e)),{isStatic:n}=S.useContext(vp);if(n){const[,o]=S.useState(e);S.useEffect(()=>r.on("change",o),[])}return r}function GLe(){!ME.current&&iX();const[e]=S.useState(z3.current);return e}function AZ(){const e=GLe(),{reducedMotion:r}=S.useContext(vp);return r==="never"?!1:r==="always"?!0:e}class YLe{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 XLe=()=>new YLe;function ZLe(){return tm(XLe)}const tC=S.createContext(null);tC.displayName="ElementDetailsActorContext";const KLe=()=>{const e=S.useContext(tC);if(e===null)throw new Error("ElementDetailsActorRef is not provided");return e},fi=(e,r,n)=>{const o=a=>({[e]:"__ignore__",...r,...Mu(a)});return{recipeFn:(a,i=!0)=>{const l=sI({conditions:{shift:hI,finalize:pI,breakpoints:{keys:["base","xs","sm","md","lg","xl"]}},utility:{toHash:(c,d)=>d(c.join(":")),transform:(c,d)=>(w4e(e,n,a,c),d==="__ignore__"?{className:e}:(d=b8(d),{className:`${e}--${c}_${d}`}))}}),s=o(a);if(i){const c=E8(n,s);return Ge(l(s),fe(c))}return l(s)},getVariantProps:o,__getCompoundVariantCss__:a=>E8(n,o(a))}},os=(e,r)=>{if(e&&!r)return e;if(!e&&r)return r;const n=(...i)=>Ge(e(...i),r(...i)),o=_8(e.variantKeys,r.variantKeys),a=o.reduce((i,l)=>(i[l]=_8(e.variantMap[l],r.variantMap[l]),i),{});return Object.assign(n,{__recipe__:!0,__name__:`${e.__name__} ${r.__name__}`,raw:i=>i,variantKeys:o,variantMap:a,splitVariantProps(i){return Fn(i,o)}})},rC=fi("action-btn",{size:"md",radius:"md",variant:"filled"},[]),DZ={variant:["transparent","filled"],size:["sm","md"],radius:["sm","md"]},MZ=Object.keys(DZ),L3=Object.assign(Zn(rC.recipeFn),{__recipe__:!0,__name__:"actionBtn",__getCompoundVariantCss__:rC.__getCompoundVariantCss__,raw:e=>e,variantKeys:MZ,variantMap:DZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,MZ)},getVariantProps:rC.getVariantProps}),nC=fi("likec4-compound-node",{},[]),NZ={isTransparent:["false","true"],inverseColor:["true","false"],borderStyle:["solid","dashed","dotted","none"]},PZ=Object.keys(NZ),QLe=Object.assign(Zn(nC.recipeFn),{__recipe__:!0,__name__:"compoundNode",__getCompoundVariantCss__:nC.__getCompoundVariantCss__,raw:e=>e,variantKeys:PZ,variantMap:NZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,PZ)},getVariantProps:nC.getVariantProps}),oC=fi("likec4-edge-action-btn",{},[]),BZ={},OZ=Object.keys(BZ),JLe=Object.assign(Zn(oC.recipeFn),{__recipe__:!0,__name__:"edgeActionBtn",__getCompoundVariantCss__:oC.__getCompoundVariantCss__,raw:e=>e,variantKeys:OZ,variantMap:BZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,OZ)},getVariantProps:oC.getVariantProps}),aC=fi("likec4-edge-label",{pointerEvents:"all",isStepEdge:!1,cursor:"default"},[]),IZ={pointerEvents:["none","all"],cursor:["pointer","default"],isStepEdge:["false","true"]},LZ=Object.keys(IZ),eFe=Object.assign(Zn(aC.recipeFn),{__recipe__:!0,__name__:"edgeLabel",__getCompoundVariantCss__:aC.__getCompoundVariantCss__,raw:e=>e,variantKeys:LZ,variantMap:IZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,LZ)},getVariantProps:aC.getVariantProps}),FZ={},tFe=[],rFe=[["path","likec4-edge__path"],["pathBg","likec4-edge__pathBg"],["markersCtx","likec4-edge__markersCtx"],["middlePoint","likec4-edge__middlePoint"]],nFe=rFe.map(([e,r])=>[e,fi(r,FZ,k8(tFe,e))]),oFe=Zn((e={})=>Object.fromEntries(nFe.map(([r,n])=>[r,n.recipeFn(e)]))),VZ=[],aFe=e=>({...FZ,...Mu(e)}),iFe=Object.assign(oFe,{__recipe__:!1,__name__:"edgePath",raw:e=>e,classNameMap:{},variantKeys:VZ,variantMap:{},splitVariantProps(e){return Fn(e,VZ)},getVariantProps:aFe}),iC=fi("likec4-element-node-data",{},[]),qZ={},HZ=Object.keys(qZ),lFe=Object.assign(Zn(iC.recipeFn),{__recipe__:!0,__name__:"elementNodeData",__getCompoundVariantCss__:iC.__getCompoundVariantCss__,raw:e=>e,variantKeys:HZ,variantMap:qZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,HZ)},getVariantProps:iC.getVariantProps}),lC=fi("likec4-element-shape",{},[]),UZ={shapetype:["html","svg"]},WZ=Object.keys(UZ),GZ=Object.assign(Zn(lC.recipeFn),{__recipe__:!0,__name__:"elementShapeRecipe",__getCompoundVariantCss__:lC.__getCompoundVariantCss__,raw:e=>e,variantKeys:WZ,variantMap:UZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,WZ)},getVariantProps:lC.getVariantProps}),sC=fi("likec4-tag",{autoTextColor:!1},[]),YZ={autoTextColor:["false","true"]},XZ=Object.keys(YZ),sFe=Object.assign(Zn(sC.recipeFn),{__recipe__:!0,__name__:"likec4tag",__getCompoundVariantCss__:sC.__getCompoundVariantCss__,raw:e=>e,variantKeys:XZ,variantMap:YZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,XZ)},getVariantProps:sC.getVariantProps}),cC=fi("likec4-markdown-block",{uselikec4palette:!1,value:"markdown"},[]),ZZ={uselikec4palette:["true","false"],value:["markdown","plaintext"]},KZ=Object.keys(ZZ),cFe=Object.assign(Zn(cC.recipeFn),{__recipe__:!0,__name__:"markdownBlock",__getCompoundVariantCss__:cC.__getCompoundVariantCss__,raw:e=>e,variantKeys:KZ,variantMap:ZZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,KZ)},getVariantProps:cC.getVariantProps}),dC=fi("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),eK=Object.assign(Zn(dC.recipeFn),{__recipe__:!0,__name__:"navigationPanelActionIcon",__getCompoundVariantCss__:dC.__getCompoundVariantCss__,raw:e=>e,variantKeys:JZ,variantMap:QZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,JZ)},getVariantProps:dC.getVariantProps}),uC=fi("likec4-overlay",{fullscreen:!1,withBackdrop:!0},[]),tK={fullscreen:["false","true"],withBackdrop:["false","true"]},rK=Object.keys(tK),dFe=Object.assign(Zn(uC.recipeFn),{__recipe__:!0,__name__:"overlay",__getCompoundVariantCss__:uC.__getCompoundVariantCss__,raw:e=>e,variantKeys:rK,variantMap:tK,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,rK)},getVariantProps:uC.getVariantProps}),nK={truncateLabel:!1},uFe=[],pFe=[["root","likec4-navlink__root"],["body","likec4-navlink__body"],["section","likec4-navlink__section"],["label","likec4-navlink__label"],["description","likec4-navlink__description"]],hFe=pFe.map(([e,r])=>[e,fi(r,nK,k8(uFe,e))]),fFe=Zn((e={})=>Object.fromEntries(hFe.map(([r,n])=>[r,n.recipeFn(e)]))),oK=["truncateLabel"],mFe=e=>({...nK,...Mu(e)}),gFe=Object.assign(fFe,{__recipe__:!1,__name__:"navigationLink",raw:e=>e,classNameMap:{},variantKeys:oK,variantMap:{truncateLabel:["true","false"]},splitVariantProps(e){return Fn(e,oK)},getVariantProps:mFe});function aK(){return cf()}function pC(e,r){return Dt(it(e),r??Or)}function hC(){return vr()}const yFe=e=>Math.round(e.transform[2]*100)/100;function vFe(){return Dt(yFe)}const bFe=e=>e.transform[2]<.2;function xFe(){return Dt(bFe)}const{abs:Ly,cos:nc,sin:om,acos:wFe,atan2:Fy,sqrt:kd,pow:mi}=Math;function Vy(e){return e<0?-mi(-e,.3333333333333333):mi(e,.3333333333333333)}const iK=Math.PI,F3=2*iK,_d=iK/2,kFe=1e-6,fC=Number.MAX_SAFE_INTEGER||9007199254740991,mC=Number.MIN_SAFE_INTEGER||-9007199254740991,_Fe={x:0,y:0,z:0},Ie={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),kd(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 a=1-e;let i=r;if(o===0)return r[0].t=e,r[0];if(o===1){const s={x:a*i[0].x+e*i[1].x,y:a*i[0].y+e*i[1].y,t:e};return n&&(s.z=a*i[0].z+e*i[1].z),s}if(o<4){let s=a*a,c=e*e,d,u,p,f=0;o===2?(i=[i[0],i[1],i[2],_Fe],d=s,u=a*e*2,p=c):o===3&&(d=s*a,u=s*e*3,p=a*c*3,f=e*c);const g={x:d*i[0].x+u*i[1].x+p*i[2].x+f*i[3].x,y:d*i[0].y+u*i[1].y+p*i[2].y+f*i[3].y,t:e};return n&&(g.z=d*i[0].z+u*i[1].z+p*i[2].z+f*i[3].z),g}const l=JSON.parse(JSON.stringify(r));for(;l.length>1;){for(let s=0;s1;a--,i--){const l=[];for(let s=0,c;s"u")e=.5;else if(e===0||e===1)return e;const n=mi(e,r)+mi(1-e,r),o=n-1;return Ly(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=mi(1-e,r),o=mi(e,r)+n;return n/o},lli8:function(e,r,n,o,a,i,l,s){const c=(e*o-r*n)*(a-l)-(e-n)*(a*s-i*l),d=(e*o-r*n)*(i-s)-(r-o)*(a*s-i*l),u=(e-n)*(i-s)-(r-o)*(a-l);return u==0?!1:{x:c/u,y:d/u}},lli4:function(e,r,n,o){const a=e.x,i=e.y,l=r.x,s=r.y,c=n.x,d=n.y,u=o.x,p=o.y;return Ie.lli8(a,i,l,s,c,d,u,p)},lli:function(e,r){return Ie.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=fC,n=fC,o=mC,a=mC;return e.forEach(function(i){const l=i.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,i.push(u))})}),i},makeshape:function(e,r,n){const o=r.points.length,a=e.points.length,i=Ie.makeline(r.points[o-1],e.points[0]),l=Ie.makeline(e.points[a-1],r.points[0]),s={startcap:i,forward:e,back:r,endcap:l,bbox:Ie.findbbox([i,e,r,l])};return s.intersections=function(c){return Ie.shapeintersections(s,s.bbox,c,c.bbox,n)},s},getminmax:function(e,r,n){if(!n)return{min:0,max:0};let o=fC,a=mC,i,l;n.indexOf(0)===-1&&(n=[0].concat(n)),n.indexOf(1)===-1&&n.push(1);for(let s=0,c=n.length;sa&&(a=l[r]);return{min:o,mid:(o+a)/2,max:a,size:a-o}},align:function(e,r){const n=r.p1.x,o=r.p1.y,a=-Fy(r.p2.y-o,r.p2.x-n),i=function(l){return{x:(l.x-n)*nc(a)-(l.y-o)*om(a),y:(l.x-n)*om(a)+(l.y-o)*nc(a)}};return e.map(i)},roots:function(e,r){r=r||{p1:{x:0,y:0},p2:{x:1,y:0}};const n=e.length-1,o=Ie.align(e,r),a=function(A){return 0<=A&&A<=1};if(n===2){const A=o[0].y,R=o[1].y,T=o[2].y,O=A-2*R+T;if(O!==0){const P=-kd(R*R-A*T),L=-A+R,H=-(P+L)/O,M=-(-P+L)/O;return[H,M].filter(a)}else if(R!==T&&O===0)return[(2*R-T)/(2*R-2*T)].filter(a);return[]}const i=o[0].y,l=o[1].y,s=o[2].y,c=o[3].y;let d=-i+3*l-3*s+c,u=3*i-6*l+3*s,p=-3*i+3*l,f=i;if(Ie.approximately(d,0)){if(Ie.approximately(u,0))return Ie.approximately(p,0)?[]:[-f/p].filter(a);const A=kd(p*p-4*u*f),R=2*u;return[(A-p)/R,(-p-A)/R].filter(a)}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,_,$,z,j;if(k<0){const A=-g/3,R=A*A*A,T=kd(R),O=-w/(2*T),P=O<-1?-1:O>1?1:O,L=wFe(P),H=Vy(T),M=2*H;return $=M*nc(L/3)-u/3,z=M*nc((L+F3)/3)-u/3,j=M*nc((L+2*F3)/3)-u/3,[$,z,j].filter(a)}else{if(k===0)return C=x<0?Vy(-x):-Vy(x),$=2*C-u/3,z=-C-u/3,[$,z].filter(a);{const A=kd(k);return C=Vy(-x+A),_=Vy(x+A),[C-_-u/3].filter(a)}}},droots:function(e){if(e.length===3){const r=e[0],n=e[1],o=e[2],a=r-2*n+o;if(a!==0){const i=-kd(n*n-r*o),l=-r+n,s=-(i+l)/a,c=-(-i+l)/a;return[s,c]}else if(n!==o&&a===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,a){let i,l,s,c,d=0,u=0;const p=Ie.compute(e,r),f=Ie.compute(e,n),g=p.x*p.x+p.y*p.y;if(o?(i=kd(mi(p.y*f.z-f.y*p.z,2)+mi(p.z*f.x-f.z*p.x,2)+mi(p.x*f.y-f.x*p.y,2)),l=mi(g+p.z*p.z,3/2)):(i=p.x*f.y-p.y*f.x,l=mi(g,3/2)),i===0||l===0)return{k:0,r:0};if(d=i/l,u=l/i,!a){const v=Ie.curvature(e-.001,r,n,o,!0).k,w=Ie.curvature(e+.001,r,n,o,!0).k;c=(w-d+(d-v))/2,s=(Ly(w-d)+Ly(d-v))/2}return{k:d,r:u,dk:c,adk:s}},inflections:function(e){if(e.length<4)return[];const r=Ie.align(e,{p1:e[0],p2:e.slice(-1)[0]}),n=r[2].x*r[1].y,o=r[3].x*r[1].y,a=r[1].x*r[2].y,i=r[3].x*r[2].y,l=18*(-3*n+2*o+3*a-i),s=18*(3*n-o-3*a),c=18*(a-n);if(Ie.approximately(l,0)){if(!Ie.approximately(s,0)){let f=-c/s;if(0<=f&&f<=1)return[f]}return[]}const d=2*l;if(Ie.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 a=0,i,l,s,c;a=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(),a=r.bbox(),i=1e5,l=n||.5;if(o.x.size+o.y.sizej||j>A)&&(z+=F3),z>A&&(R=A,A=z,z=R)):A4){if(arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");a=!0}}else if(i!==6&&i!==8&&i!==9&&i!==12&&arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");const l=this._3d=!a&&(i===9||i===12)||r&&r[0]&&typeof r[0].z<"u",s=this.points=[];for(let g=0,v=l?3:2;gg+Hy(v.y),0)"u"&&(a=.5),a===0)return new Fr(n,n,o);if(a===1)return new Fr(r,n,n);const i=Fr.getABC(2,r,n,o,a);return new Fr(r,i.A,o)}static cubicFromPoints(r,n,o,a,i){typeof a>"u"&&(a=.5);const l=Fr.getABC(3,r,n,o,a);typeof i>"u"&&(i=Ie.dist(n,l.C));const s=i*(1-a)/a,c=Ie.dist(r,o),d=(o.x-r.x)/c,u=(o.y-r.y)/c,p=i*d,f=i*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-a),y:k.y+(w.y-k.y)/(1-a)},_={x:k.x+(x.x-k.x)/a,y:k.y+(x.y-k.y)/a},$={x:r.x+(C.x-r.x)/a,y:r.y+(C.y-r.y)/a},z={x:o.x+(_.x-o.x)/(1-a),y:o.y+(_.y-o.y)/(1-a)};return new Fr(r,$,z,o)}static getUtils(){return Ie}getUtils(){return Fr.getUtils()}static get PolyBezier(){return qy}valueOf(){return this.toString()}toString(){return Ie.pointsToString(this.points)}toSVG(){if(this._3d)return!1;const r=this.points,n=r[0].x,o=r[0].y,a=["M",n,o,this.order===2?"Q":"C"];for(let i=1,l=r.length;i0}length(){return Ie.length(this.derivative.bind(this))}static getABC(r=2,n,o,a,i=.5){const l=Ie.projectionratio(i,r),s=1-l,c={x:l*n.x+s*a.x,y:l*n.y+s*a.y},d=Ie.abcratio(i,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:a}}getABC(r,n){n=n||this.get(r);let o=this.points[0],a=this.points[this.order];return Fr.getABC(this.order,o,n,a,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,a;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?Ie.computeWithRatios(r,this.points,this.ratios,this._3d):Ie.compute(r,this.points,this._3d,this.ratios)}raise(){const r=this.points,n=[r[0]],o=r.length;for(let a=1,i,l;a1;){o=[];for(let l=0,s,c=n.length-1;l=0&&l<=1}),n=n.concat(r[o].sort(Ie.numberSort))}).bind(this)),r.values=n.sort(Ie.numberSort).filter(function(o,a){return n.indexOf(o)===a}),r}bbox(){const r=this.extrema(),n={};return this.dims.forEach((function(o){n[o]=Ie.getminmax(this,o,r[o])}).bind(this)),n}overlaps(r){const n=this.bbox(),o=r.bbox();return Ie.bboxoverlap(n,o)}offset(r,n){if(typeof n<"u"){const o=this.get(r),a=this.normal(r),i={c:o,n:a,x:o.x+a.x*n,y:o.y+a.y*n};return this._3d&&(i.z=o.z+a.z*n),i}if(this._linear){const o=this.normal(0),a=this.points.map(function(i){const l={x:i.x+r*o.x,y:i.y+r*o.y};return i.z&&o.z&&(l.z=i.z+r*o.z),l});return[new Fr(a)]}return this.reduce().map(function(o){return o._linear?o.offset(r)[0]:o.scale(r)})}simple(){if(this.order===3){const a=Ie.angle(this.points[0],this.points[3],this.points[1]),i=Ie.angle(this.points[0],this.points[3],this.points[2]);if(a>0&&i<0||a<0&&i>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),Hy(CFe(o))<$Fe/3}reduce(){let r,n=0,o=0,a=.01,i,l=[],s=[],c=this.extrema().values;for(c.indexOf(0)===-1&&(c=[0].concat(c)),c.indexOf(1)===-1&&c.push(1),n=c[0],r=1;r(1-s/a)*n+s/a*o);return new Fr(this.points.map((l,s)=>({x:l.x+r.x*i[s],y:l.y+r.y*i[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 a=this.clockwise,i=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=Ie.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]=Ie.copy(i[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=i[p+1],g={x:f.x-u.x,y:f.y-u.y},v=o?o((p+1)/n):r;o&&!a&&(v=-v);var w=Uy(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]=Ie.lli4(f,v,u,i[p+1])}),new Fr(d))}outline(r,n,o,a){if(n=n===void 0?r:n,this._linear){const z=this.normal(0),j=this.points[0],A=this.points[this.points.length-1];let R,T,O;o===void 0&&(o=r,a=n),R={x:j.x+z.x*r,y:j.y+z.y*r},O={x:A.x+z.x*o,y:A.y+z.y*o},T={x:(R.x+O.x)/2,y:(R.y+O.y)/2};const P=[R,T,O];R={x:j.x-z.x*n,y:j.y-z.y*n},O={x:A.x-z.x*a,y:A.y-z.y*a},T={x:(R.x+O.x)/2,y:(R.y+O.y)/2};const L=[O,T,R],H=Ie.makeline(L[2],P[0]),M=Ie.makeline(P[2],L[0]),V=[H,new Fr(P),M,new Fr(L)];return new qy(V)}const i=this.reduce(),l=i.length,s=[];let c=[],d,u=0,p=this.length();const f=typeof o<"u"&&typeof a<"u";function g(z,j,A,R,T){return function(O){const P=R/A,L=(R+T)/A,H=j-z;return Ie.map(O,0,1,z+P*H,z+L*H)}}i.forEach(function(z){const j=z.length();f?(s.push(z.scale(g(r,o,p,u,j))),c.push(z.scale(g(-n,-a,p,u,j)))):(s.push(z.scale(r)),c.push(z.scale(-n))),u+=j}),c=c.map(function(z){return d=z.points,d[3]?z.points=[d[3],d[2],d[1],d[0]]:z.points=[d[2],d[1],d[0]],z}).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=Ie.makeline(x,v),_=Ie.makeline(w,k),$=[C].concat(s).concat([_]).concat(c);return new qy($)}outlineshapes(r,n,o){n=n||r;const a=this.outline(r,n).curves,i=[];for(let l=1,s=a.length;l1,c.endcap.virtual=l{var s=this.get(l);return Ie.between(s.x,n,a)&&Ie.between(s.y,o,i)})}selfintersects(r){const n=this.reduce(),o=n.length-2,a=[];for(let i=0,l,s,c;i0&&(i=i.concat(s))}),i}arcs(r){return r=r||.5,this._iterate(r,[])}_error(r,n,o,a){const i=(a-o)/4,l=this.get(o+i),s=this.get(a-i),c=Ie.dist(r,n),d=Ie.dist(r,l),u=Ie.dist(r,s);return Hy(d-c)+Hy(u-c)}_iterate(r,n){let o=0,a=1,i;do{i=0,a=1;let l=this.get(o),s,c,d,u,p=!1,f=!1,g,v=a,w=1;do if(f=p,u=d,v=(o+a)/2,s=this.get(v),c=this.get(a),d=Ie.getccenter(l,s,c),d.interval={start:o,end:a},p=this._error(d,l,o,a)<=r,g=f&&!p,g||(w=a),p){if(a>=1){if(d.interval.end=w=1,u=d,a>1){let x={x:d.x+d.r*SFe(d.e),y:d.y+d.r*EFe(d.e)};d.e+=Ie.angle({x:d.x,y:d.y},x,this.get(1))}break}a=a+(a-o)/2}else a=v;while(!g&&i++<100);if(i>=100)break;u=u||d,n.push(u),o=w}while(a<1);return n}}function cK(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}const gC=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 yC(e){const{width:r,height:n}=_o(e),{x:o,y:a}=e.internals.positionAbsolute;return{x:Math.round(o+r/2),y:Math.round(a+n/2)}}function V3(e,r,n=0){const{width:o,height:a}=e,i=ko.center(e),l=Qr(r.x,r.y).subtract(i),s=(n+o/2)/l.x,c=(n+a/2)/l.y,d=Math.min(Math.abs(s),Math.abs(c));return Qr(l).multiply(d).add(i).round()}function q3(e){let[r,...n]=e;He(r,"start should be defined");const o=[];for(;xn(n,3);){const[a,i,l,...s]=n,c=new Fr(r[0],r[1],a[0],a[1],i[0],i[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 H3(e,r){const n=v7(e)?{x:e[0],y:e[1]}:e,o=v7(r)?{x:r[0],y:r[1]}:r;return zFe(n,o)<2.1}function zFe(e,r){return Math.hypot(r.x-e.x,r.y-e.y)}function nn(e){return e.stopPropagation()}function RFe(e){let[r,...n]=e;He(r,"start should be defined");let o=`M ${r[0]},${r[1]}`;for(;xn(n,3);){const[a,i,l,...s]=n;o=o+` C ${a[0]},${a[1]} ${i[0]},${i[1]} ${l[0]},${l[1]}`,n=s}return He(n.length===0,"all points should be consumed"),o}const U3=S.forwardRef(({tag:e,cursor:r,className:n,style:o,...a},i)=>{const l=uMe(e);return y.jsxs(hr,{ref:i,"data-likec4-tag":e,className:Ge(sFe({autoTextColor:WO(l)}),n),...a,style:{cursor:r,...o},children:[y.jsx("span",{children:"#"}),y.jsx("span",{children:e})]})}),jFe=(e,r)=>e.data.width===r.data.width&&tt(e.data.tags,r.data.tags)&&(e.data.hovered??!1)===(r.data.hovered??!1),Wy=S.memo(({id:e,data:{tags:r,width:n,hovered:o=!1}})=>{const{hovered:a,ref:i}=A7(),{hovered:l,ref:s}=A7(),[c,d]=B$e(!1,o?120:300);S.useEffect(()=>{d(x=>x?o||a||l:o&&(a||l))},[a,l,o]);const u=vFe(),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:i,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(g7,{isVisible:c,align:"start",position:Ue.Bottom,children:y.jsx(Ir,{ref:s,css:{gap:"0.5",alignItems:"baseline",flexWrap:"wrap",pb:"sm",translate:"auto",x:"[-8px]",maxWidth:w},children:r.map(x=>y.jsx(U3,{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))})})]})},jFe);Wy.displayName="ElementTags";const TFe=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"})})),AFe=[["path",{d:"M5 12l5 5l10 -10",key:"svg-0"}]],dK=wt("outline","check","Check",AFe),DFe=[["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"}]],MFe=wt("outline","copy","Copy",DFe),uK="https://github.com/",vC=S.forwardRef(({value:e,className:r,...n},o)=>{const a=e.url.includes("://")?e.url:new window.URL(e.url,window.location.href).toString();let i=a.startsWith(uK);return y.jsx(Ks,{ref:o,variant:"default",radius:"sm",size:"sm",tt:"none",leftSection:e.title?y.jsx(y.Fragment,{children:e.title}):null,rightSection:y.jsx(WU,{value:a,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(dK,{}):y.jsx(MFe,{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(gd.a,{href:a,target:"_blank",style:{color:"var(--badge-color)",cursor:"pointer"},css:{transition:"fast",opacity:{base:.7,_hover:1},textDecoration:{base:"none",_hover:"underline"}},children:[i&&y.jsx(TFe,{height:"12",width:"12",style:{verticalAlign:"middle",marginRight:"4px"}}),i?a.replace(uK,""):a]})})});function NFe(){return S.useContext(lS)}function PFe(){const e=S.useContext(lS);if(!e)throw new Error("No LikeC4ViewModel in context found");return e}const W3="--_blur",G3="--_opacity",BFe=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(${W3})`,backgroundColor:`[rgb(36 36 36 / var(${G3}, 5%))]`}}),OFe=fe({position:"absolute",pointerEvents:"all",display:"flex",flexDirection:"column",padding:"4",gap:"lg",justifyContent:"stretch",color:"mantine.colors.text",backgroundColor:{base:"mantine.colors.body",_dark:"mantine.colors.dark[6]"},boxShadow:"md",overflow:"hidden",border:"none",backgroundImage:` + `),()=>{x.contains(w)&&x.removeChild(w)}},[r]),y.jsx(LOe,{isPresent:r,childRef:i,sizeRef:l,children:S.cloneElement(e,{ref:c})})}const VOe=({children:e,initial:r,isPresent:n,onExitComplete:o,custom:a,presenceAffectsLayout:i,mode:l,anchorX:s,root:c})=>{const d=tm(qOe),u=S.useId();let p=!0,f=S.useMemo(()=>(p=!1,{id:u,initial:r,isPresent:n,custom:a,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 i&&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(FOe,{isPresent:n,anchorX:s,root:c,children:e})),y.jsx(T3.Provider,{value:f,children:e})};function qOe(){return new Map}function _X(e=!0){const r=S.useContext(T3);if(r===null)return[!0,null];const{isPresent:n,onExitComplete:o,register:a}=r,i=S.useId();S.useEffect(()=>{if(e)return a(i)},[e]);const l=S.useCallback(()=>e&&o&&o(i),[i,o,e]);return!n&&o?[!1,l]:[!0]}const A3=e=>e.key||"";function SX(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:a=!0,mode:i="sync",propagate:l=!1,anchorX:s="left",root:c})=>{const[d,u]=_X(l),p=S.useMemo(()=>SX(e),[e]),f=l&&!d?[]:p.map(A3),g=S.useRef(!0),v=S.useRef(p),w=tm(()=>new Map),[x,k]=S.useState(p),[C,_]=S.useState(p);IE(()=>{g.current=!1,v.current=p;for(let j=0;j{const A=A3(j),R=l&&!d?!1:p===C||f.includes(A),T=()=>{if(w.has(A))w.set(A,!0);else return;let O=!0;w.forEach(P=>{P||(O=!1)}),O&&(z?.(),_(v.current),l&&u?.(),o&&o())};return y.jsx(VOe,{isPresent:R,initial:!g.current||n?void 0:!1,custom:r,presenceAffectsLayout:a,mode:i,root:c,onExitComplete:R?void 0:T,anchorX:s,children:j},A)})})},HOe=S.createContext(null);function UOe(){const e=S.useRef(!1);return IE(()=>(e.current=!0,()=>{e.current=!1}),[]),e}function WOe(){const e=UOe(),[r,n]=S.useState(0),o=S.useCallback(()=>{e.current&&n(r+1)},[r]);return[S.useCallback(()=>Dr.postRender(o),[o]),r]}const GOe=e=>!e.isLayoutDirty&&e.willUpdate(!1);function YOe(){const e=new Set,r=new WeakMap,n=()=>e.forEach(GOe);return{add:o=>{e.add(o),r.set(o,o.addEventListener("willUpdate",n))},remove:o=>{e.delete(o);const a=r.get(o);a&&(a(),r.delete(o)),n()},dirty:n}}const EX=e=>e===!0,XOe=e=>EX(e===!0)||e==="id",rm=({children:e,id:r,inherit:n=!0})=>{const o=S.useContext(My),a=S.useContext(HOe),[i,l]=WOe(),s=S.useRef(null),c=o.id||a;s.current===null&&(XOe(n)&&c&&(r=r?c+"-"+r:c),s.current={id:r,group:EX(n)&&o.group||YOe()});const d=S.useMemo(()=>({...s.current,forceRender:i}),[l]);return y.jsx(My.Provider,{value:d,children:e})},LE=S.createContext({strict:!1});function FE(e){for(const r in e)Jf[r]={...Jf[r],...e[r]}}function ZOe({children:e,features:r,strict:n=!1}){const[,o]=S.useState(!VE(r)),a=S.useRef(void 0);if(!VE(r)){const{renderer:i,...l}=r;a.current=i,FE(l)}return S.useEffect(()=>{VE(r)&&r().then(({renderer:i,...l})=>{FE(l),a.current=i,o(!0)})},[]),y.jsx(LE.Provider,{value:{renderer:a.current,strict:n},children:e})}function VE(e){return typeof e=="function"}const KOe=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 D3(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||KOe.has(e)}let CX=e=>!D3(e);function $X(e){typeof e=="function"&&(CX=r=>r.startsWith("on")?!D3(r):e(r))}try{$X(require("@emotion/is-prop-valid").default)}catch{}function QOe(e,r,n){const o={};for(const a in e)a==="values"&&typeof e.values=="object"||(CX(a)||n===!0&&D3(a)||!r&&!D3(a)||e.draggable&&a.startsWith("onDrag"))&&(o[a]=e[a]);return o}function JOe({children:e,isValidProp:r,...n}){r&&$X(r),n={...S.useContext(vp),...n},n.isStatic=tm(()=>n.isStatic);const o=S.useMemo(()=>n,[JSON.stringify(n.transition),n.transformPagePoint,n.reducedMotion]);return y.jsx(vp.Provider,{value:o,children:e})}const M3=S.createContext({});function eIe(e,r){if(j3(e)){const{initial:n,animate:o}=e;return{initial:n===!1||Ay(n)?n:void 0,animate:Ay(o)?o:void 0}}return e.inherit!==!1?r:{}}function tIe(e){const{initial:r,animate:n}=eIe(e,S.useContext(M3));return S.useMemo(()=>({initial:r,animate:n}),[zX(r),zX(n)])}function zX(e){return Array.isArray(e)?e.join(" "):e}const qE=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function RX(e,r,n){for(const o in r)!to(r[o])&&!pX(o,n)&&(e[o]=r[o])}function rIe({transformTemplate:e},r){return S.useMemo(()=>{const n=qE();return BE(n,r,e),Object.assign({},n.vars,n.style)},[r])}function nIe(e,r){const n=e.style||{},o={};return RX(o,n,e),Object.assign(o,rIe(e,r)),o}function oIe(e,r){const n={},o=nIe(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 jX=()=>({...qE(),attrs:{}});function aIe(e,r,n,o){const a=S.useMemo(()=>{const i=jX();return fX(i,r,gX(o),e.transformTemplate,e.style),{...i.attrs,style:{...i.style}}},[r]);if(e.style){const i={};RX(i,e.style,e),a.style={...i,...a.style}}return a}const iIe=["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 HE(e){return typeof e!="string"||e.includes("-")?!1:!!(iIe.indexOf(e)>-1||/[A-Z]/u.test(e))}function lIe(e,r,n,{latestValues:o},a,i=!1){const l=(HE(e)?aIe:oIe)(r,o,a,e),s=QOe(r,typeof e=="string",i),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 N3(e){return to(e)?e.get():e}function sIe({scrapeMotionValuesFromProps:e,createRenderState:r},n,o,a){return{latestValues:cIe(n,o,a,e),renderState:r()}}function cIe(e,r,n,o){const a={},i=o(e,{});for(const f in i)a[f]=N3(i[f]);let{initial:l,animate:s}=e;const c=j3(e),d=lX(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"&&!R3(p)){const f=Array.isArray(p)?p:[p];for(let g=0;g(r,n)=>{const o=S.useContext(M3),a=S.useContext(T3),i=()=>sIe(e,r,o,a);return n?i():tm(i)},dIe=TX({scrapeMotionValuesFromProps:OE,createRenderState:qE}),uIe=TX({scrapeMotionValuesFromProps:yX,createRenderState:jX}),pIe=Symbol.for("motionComponentSymbol");function nm(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function hIe(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):nm(n)&&(n.current=o))},[r])}const AX=S.createContext({});function fIe(e,r,n,o,a){const{visualElement:i}=S.useContext(M3),l=S.useContext(LE),s=S.useContext(T3),c=S.useContext(vp).reducedMotion,d=S.useRef(null);o=o||l.renderer,!d.current&&o&&(d.current=o(e,{visualState:r,parent:i,props:n,presenceContext:s,blockInitialAnimation:s?s.initial===!1:!1,reducedMotionConfig:c}));const u=d.current,p=S.useContext(AX);u&&!u.projection&&a&&(u.type==="html"||u.type==="svg")&&mIe(d.current,n,a,p);const f=S.useRef(!1);S.useInsertionEffect(()=>{u&&f.current&&u.update(n,s)});const g=n[WY],v=S.useRef(!!g&&!window.MotionHandoffIsComplete?.(g)&&window.MotionHasOptimisedAnimation?.(g));return IE(()=>{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 mIe(e,r,n,o){const{layoutId:a,layout:i,drag:l,dragConstraints:s,layoutScroll:c,layoutRoot:d,layoutCrossfade:u}=r;e.projection=new n(e.latestValues,r["data-framer-portal-id"]?void 0:DX(e.parent)),e.projection.setOptions({layoutId:a,layout:i,alwaysMeasureLayout:!!l||s&&nm(s),visualElement:e,animationType:typeof i=="string"?i:"both",initialPromotionConfig:o,crossfade:u,layoutScroll:c,layoutRoot:d})}function DX(e){if(e)return e.options.allowProjection!==!1?e.projection:DX(e.parent)}function P3(e,{forwardMotionProps:r=!1}={},n,o){n&&FE(n);const a=HE(e)?uIe:dIe;function i(s,c){let d;const u={...S.useContext(vp),...s,layoutId:gIe(s)},{isStatic:p}=u,f=tIe(s),g=a(s,p);if(!p&&DE){yIe();const v=vIe(u);d=v.MeasureLayout,f.visualElement=fIe(e,g,u,o,v.ProjectionNode)}return y.jsxs(M3.Provider,{value:f,children:[d&&f.visualElement?y.jsx(d,{visualElement:f.visualElement,...u}):null,lIe(e,s,hIe(g,f.visualElement,c),g,p,r)]})}i.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const l=S.forwardRef(i);return l[pIe]=e,l}function gIe({layoutId:e}){const r=S.useContext(My).id;return r&&e!==void 0?r+"-"+e:e}function yIe(e,r){S.useContext(LE).strict}function vIe(e){const{drag:r,layout:n}=Jf;if(!r&&!n)return{};const o={...r,...n};return{MeasureLayout:r?.isEnabled(e)||n?.isEnabled(e)?o.MeasureLayout:void 0,ProjectionNode:o.ProjectionNode}}function bIe(e,r){if(typeof Proxy>"u")return P3;const n=new Map,o=(i,l)=>P3(i,l,e,r),a=(i,l)=>o(i,l);return new Proxy(a,{get:(i,l)=>l==="create"?o:(n.has(l)||n.set(l,P3(l,void 0,e,r)),n.get(l))})}const pi=bIe(),xIe=(e,r)=>HE(e)?new vX(r):new hX(r,{allowProjection:e!==S.Fragment});function MX(e,r,n,o=0,a=1){const i=Array.from(e).sort((c,d)=>c.sortNodePosition(d)).indexOf(r),l=e.size,s=(l-1)*o;return typeof n=="function"?n(i,l):a===1?i*o:s-i*o}function UE(e,r,n={}){const o=Zf(e,r,n.type==="exit"?e.presenceContext?.custom:void 0);let{transition:a=e.getDefaultTransition()||{}}=o||{};n.transitionOverride&&(a=n.transitionOverride);const i=o?()=>Promise.all(RE(e,o,n)):()=>Promise.resolve(),l=e.variantChildren&&e.variantChildren.size?(c=0)=>{const{delayChildren:d=0,staggerChildren:u,staggerDirection:p}=a;return wIe(e,r,c,d,u,p,n)}:()=>Promise.resolve(),{when:s}=a;if(s){const[c,d]=s==="beforeChildren"?[i,l]:[l,i];return c().then(()=>d())}else return Promise.all([i(),l(n.delay)])}function wIe(e,r,n=0,o=0,a=0,i=1,l){const s=[];for(const c of e.variantChildren)c.notify("AnimationStart",r),s.push(UE(c,r,{...l,delay:n+(typeof o=="function"?0:o)+MX(e.variantChildren,c,o,a,i)}).then(()=>c.notify("AnimationComplete",r)));return Promise.all(s)}function kIe(e,r,n={}){e.notify("AnimationStart",r);let o;if(Array.isArray(r)){const a=r.map(i=>UE(e,i,n));o=Promise.all(a)}else if(typeof r=="string")o=UE(e,r,n);else{const a=typeof r=="function"?Zf(e,r,n.custom):r;o=Promise.all(RE(e,a,n))}return o.then(()=>{e.notify("AnimationComplete",r)})}function NX(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})=>kIe(e,n,o)))}function $Ie(e){let r=CIe(e),n=BX(),o=!0;const a=c=>(d,u)=>{const p=Zf(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 i(c){r=c(e)}function l(c){const{props:d}=e,u=PX(e.parent)||{},p=[],f=new Set;let g={},v=1/0;for(let x=0;xv&&$,T=!1;const O=Array.isArray(_)?_:[_];let P=O.reduce(a(k),{});z===!1&&(P={});const{prevResolvedValues:L={}}=C,H={...L,...P},M=B=>{R=!0,f.has(B)&&(T=!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;SE(F)&&SE(q)?G=!NX(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&&(R=!1);const V=j&&A;R&&(!V||T)&&p.push(...O.map(B=>{const F={type:k};if(typeof B=="string"&&o&&!V&&e.manuallyAnimateOnMount&&e.parent){const{parent:q}=e,G=Zf(q,B);if(q.enteringChildren&&G){const{delayChildren:U}=G.transition||{};F.delay=MX(q.enteringChildren,e,U)}}return{animation:B,options:F}}))}if(f.size){const x={};if(typeof d.initial!="boolean"){const k=Zf(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:i,getState:()=>n,reset:()=>{n=BX()}}}function zIe(e,r){return typeof r=="string"?r!==e:Array.isArray(r)?!NX(r,e):!1}function bp(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function BX(){return{animate:bp(!0),whileInView:bp(),whileHover:bp(),whileTap:bp(),whileDrag:bp(),whileFocus:bp(),exit:bp()}}class wd{constructor(r){this.isMounted=!1,this.node=r}update(){}}class RIe extends wd{constructor(r){super(r),r.animationState||(r.animationState=$Ie(r))}updateAnimationControlsSubscription(){const{animate:r}=this.node.getProps();R3(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 jIe=0;class TIe extends wd{constructor(){super(...arguments),this.id=jIe++}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 a=this.node.animationState.setActive("exit",!r);n&&!r&&a.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 AIe={animation:{Feature:RIe},exit:{Feature:TIe}};function Ny(e,r,n,o={passive:!0}){return e.addEventListener(r,n,o),()=>e.removeEventListener(r,n)}function Py(e){return{point:{x:e.pageX,y:e.pageY}}}const DIe=e=>r=>xE(r)&&e(r,Py(r));function By(e,r,n,o){return Ny(e,r,DIe(n),o)}const OX=1e-4,MIe=1-OX,NIe=1+OX,IX=.01,PIe=0-IX,BIe=0+IX;function Fo(e){return e.max-e.min}function OIe(e,r,n){return Math.abs(e-r)<=n}function LX(e,r,n,o=.5){e.origin=o,e.originPoint=Lr(r.min,r.max,e.origin),e.scale=Fo(n)/Fo(r),e.translate=Lr(n.min,n.max,e.origin)-e.originPoint,(e.scale>=MIe&&e.scale<=NIe||isNaN(e.scale))&&(e.scale=1),(e.translate>=PIe&&e.translate<=BIe||isNaN(e.translate))&&(e.translate=0)}function Oy(e,r,n,o){LX(e.x,r.x,n.x,o?o.originX:void 0),LX(e.y,r.y,n.y,o?o.originY:void 0)}function FX(e,r,n){e.min=n.min+r.min,e.max=e.min+Fo(r)}function IIe(e,r,n){FX(e.x,r.x,n.x),FX(e.y,r.y,n.y)}function VX(e,r,n){e.min=r.min-n.min,e.max=e.min+Fo(r)}function B3(e,r,n){VX(e.x,r.x,n.x),VX(e.y,r.y,n.y)}function hi(e){return[e("x"),e("y")]}const qX=({current:e})=>e?e.ownerDocument.defaultView:null;class HX{constructor(r,n,{transformPagePoint:o,contextWindow:a=window,dragSnapToOrigin:i=!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=GE(this.lastMoveEventInfo,this.history),g=this.startEvent!==null,v=BOe(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=WE(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=GE(f.type==="pointercancel"?this.lastMoveEventInfo:WE(g,this.transformPagePoint),this.history);this.startEvent&&v&&v(f,k),w&&w(f,k)},!xE(r))return;this.dragSnapToOrigin=i,this.handlers=n,this.transformPagePoint=o,this.distanceThreshold=l,this.contextWindow=a||window;const s=Py(r),c=WE(s,this.transformPagePoint),{point:d}=c,{timestamp:u}=so;this.history=[{...d,timestamp:u}];const{onSessionStart:p}=n;p&&p(r,GE(c,this.history)),this.removeListeners=ky(By(this.contextWindow,"pointermove",this.handlePointerMove),By(this.contextWindow,"pointerup",this.handlePointerUp),By(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(r){this.handlers=r}end(){this.removeListeners&&this.removeListeners(),vd(this.updatePoint)}}function WE(e,r){return r?{point:r(e.point)}:e}function UX(e,r){return{x:e.x-r.x,y:e.y-r.y}}function GE({point:e},r){return{point:e,delta:UX(e,WX(r)),offset:UX(e,LIe(r)),velocity:FIe(r,.1)}}function LIe(e){return e[0]}function WX(e){return e[e.length-1]}function FIe(e,r){if(e.length<2)return{x:0,y:0};let n=e.length-1,o=null;const a=WX(e);for(;n>=0&&(o=e[n],!(a.timestamp-o.timestamp>ol(r)));)n--;if(!o)return{x:0,y:0};const i=ui(a.timestamp-o.timestamp);if(i===0)return{x:0,y:0};const l={x:(a.x-o.x)/i,y:(a.y-o.y)/i};return l.x===1/0&&(l.x=0),l.y===1/0&&(l.y=0),l}function VIe(e,{min:r,max:n},o){return r!==void 0&&en&&(e=o?Lr(n,e,o.max):Math.min(e,n)),e}function GX(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 qIe(e,{top:r,left:n,bottom:o,right:a}){return{x:GX(e.x,n,a),y:GX(e.y,r,o)}}function YX(e,r){let n=r.min-e.min,o=r.max-e.max;return r.max-r.mino?n=Uf(r.min,r.max-o,e.min):o>a&&(n=Uf(e.min,e.max-a,r.min)),tc(0,1,n)}function WIe(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 YE=.35;function GIe(e=YE){return e===!1?e=0:e===!0&&(e=YE),{x:XX(e,"left","right"),y:XX(e,"top","bottom")}}function XX(e,r,n){return{min:ZX(e,r),max:ZX(e,n)}}function ZX(e,r){return typeof e=="number"?e:e[r]||0}const YIe=new WeakMap;class XIe{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:a}=this.visualElement;if(a&&a.isPresent===!1)return;const i=p=>{const{dragSnapToOrigin:f}=this.getProps();f?this.pauseAnimation():this.stopAnimation(),n&&this.snapToCursor(Py(p).point)},l=(p,f)=>{const{drag:g,dragPropagation:v,onDragStart:w}=this.getProps();if(g&&!v&&(this.openDragLock&&this.openDragLock(),this.openDragLock=MBe(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),hi(k=>{let C=this.getAxisMotionValue(k).get()||0;if(ns.test(C)){const{projection:_}=this.visualElement;if(_&&_.layout){const $=_.layout.layoutBox[k];$&&(C=Fo($)*(parseFloat(C)/100))}}this.originPoint[k]=C}),w&&Dr.postRender(()=>w(p,f)),CE(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=ZIe(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=()=>hi(p=>this.getAnimationState(p)==="paused"&&this.getAxisMotionValue(p).animation?.play()),{dragSnapToOrigin:u}=this.getProps();this.panSession=new HX(r,{onSessionStart:i,onStart:l,onMove:s,onSessionEnd:c,resumeAnimation:d},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:o,contextWindow:qX(this.visualElement)})}stop(r,n){const o=r||this.latestPointerEvent,a=n||this.latestPanInfo,i=this.isDragging;if(this.cancel(),!i||!a||!o)return;const{velocity:l}=a;this.startAnimation(l);const{onDragEnd:s}=this.getProps();s&&Dr.postRender(()=>s(o,a))}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:a}=this.getProps();if(!o||!O3(r,a,this.currentDirection))return;const i=this.getAxisMotionValue(r);let l=this.originPoint[r]+o[r];this.constraints&&this.constraints[r]&&(l=VIe(l,this.constraints[r],this.elastic[r])),i.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,a=this.constraints;r&&nm(r)?this.constraints||(this.constraints=this.resolveRefConstraints()):r&&o?this.constraints=qIe(o.layoutBox,r):this.constraints=!1,this.elastic=GIe(n),a!==this.constraints&&o&&this.constraints&&!this.hasMutatedConstraints&&hi(i=>{this.constraints!==!1&&this.getAxisMotionValue(i)&&(this.constraints[i]=WIe(o.layoutBox[i],this.constraints[i]))})}resolveRefConstraints(){const{dragConstraints:r,onMeasureDragConstraints:n}=this.getProps();if(!r||!nm(r))return!1;const o=r.current,{projection:a}=this.visualElement;if(!a||!a.layout)return!1;const i=gOe(o,a.root,this.visualElement.getTransformPagePoint());let l=HIe(a.layout.layoutBox,i);if(n){const s=n(hOe(l));this.hasMutatedConstraints=!!s,s&&(l=YY(s))}return l}startAnimation(r){const{drag:n,dragMomentum:o,dragElastic:a,dragTransition:i,dragSnapToOrigin:l,onDragTransitionEnd:s}=this.getProps(),c=this.constraints||{},d=hi(u=>{if(!O3(u,n,this.currentDirection))return;let p=c&&c[u]||{};l&&(p={min:0,max:0});const f=a?200:1e6,g=a?40:1e7,v={type:"inertia",velocity:o?r[u]:0,bounceStiffness:f,bounceDamping:g,timeConstant:750,restDelta:1,restSpeed:10,...i,...p};return this.startAxisValueAnimation(u,v)});return Promise.all(d).then(s)}startAxisValueAnimation(r,n){const o=this.getAxisMotionValue(r);return CE(this.visualElement,r),o.start(zE(r,o,0,n,this.visualElement,!1))}stopAnimation(){hi(r=>this.getAxisMotionValue(r).stop())}pauseAnimation(){hi(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){hi(n=>{const{drag:o}=this.getProps();if(!O3(n,o,this.currentDirection))return;const{projection:a}=this.visualElement,i=this.getAxisMotionValue(n);if(a&&a.layout){const{min:l,max:s}=a.layout.layoutBox[n];i.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(!nm(n)||!o||!this.constraints)return;this.stopAnimation();const a={x:0,y:0};hi(l=>{const s=this.getAxisMotionValue(l);if(s&&this.constraints!==!1){const c=s.get();a[l]=UIe({min:c,max:c},this.constraints[l])}});const{transformTemplate:i}=this.visualElement.getProps();this.visualElement.current.style.transform=i?i({},""):"none",o.root&&o.root.updateScroll(),o.updateLayout(),this.resolveConstraints(),hi(l=>{if(!O3(l,r,null))return;const s=this.getAxisMotionValue(l),{min:c,max:d}=this.constraints[l];s.set(Lr(c,d,a[l]))})}addListeners(){if(!this.visualElement.current)return;YIe.set(this.visualElement,this);const r=this.visualElement.current,n=By(r,"pointerdown",c=>{const{drag:d,dragListener:u=!0}=this.getProps();d&&u&&this.start(c)}),o=()=>{const{dragConstraints:c}=this.getProps();nm(c)&&c.current&&(this.constraints=this.resolveRefConstraints())},{projection:a}=this.visualElement,i=a.addEventListener("measure",o);a&&!a.layout&&(a.root&&a.root.updateScroll(),a.updateLayout()),Dr.read(o);const l=Ny(window,"resize",()=>this.scalePositionWithinConstraints()),s=a.addEventListener("didUpdate",(({delta:c,hasLayoutChanged:d})=>{this.isDragging&&d&&(hi(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(),i(),s&&s()}}getProps(){const r=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:o=!1,dragPropagation:a=!1,dragConstraints:i=!1,dragElastic:l=YE,dragMomentum:s=!0}=r;return{...r,drag:n,dragDirectionLock:o,dragPropagation:a,dragConstraints:i,dragElastic:l,dragMomentum:s}}}function O3(e,r,n){return(r===!0||r===e)&&(n===null||n===e)}function ZIe(e,r=10){let n=null;return Math.abs(e.y)>r?n="y":Math.abs(e.x)>r&&(n="x"),n}class KIe extends wd{constructor(r){super(r),this.removeGroupControls=di,this.removeListeners=di,this.controls=new XIe(r)}mount(){const{dragControls:r}=this.node.getProps();r&&(this.removeGroupControls=r.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||di}unmount(){this.removeGroupControls(),this.removeListeners()}}const KX=e=>(r,n)=>{e&&Dr.postRender(()=>e(r,n))};class QIe extends wd{constructor(){super(...arguments),this.removePointerDownListener=di}onPointerDown(r){this.session=new HX(r,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:qX(this.node)})}createPanHandlers(){const{onPanSessionStart:r,onPanStart:n,onPan:o,onPanEnd:a}=this.node.getProps();return{onSessionStart:KX(r),onStart:KX(n),onMove:o,onEnd:(i,l)=>{delete this.session,a&&Dr.postRender(()=>a(i,l))}}}mount(){this.removePointerDownListener=By(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 I3={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function QX(e,r){return r.max===r.min?0:e/(r.max-r.min)*100}const Iy={correct:(e,r)=>{if(!r.target)return e;if(typeof e=="string")if(_t.test(e))e=parseFloat(e);else return e;const n=QX(e,r.target.x),o=QX(e,r.target.y);return`${n}% ${o}%`}},JIe={correct:(e,{treeScale:r,projectionDelta:n})=>{const o=e,a=xd.parse(e);if(a.length>5)return o;const i=xd.createTransformer(e),l=typeof a[0]!="number"?1:0,s=n.x.scale*r.x,c=n.y.scale*r.y;a[0+l]/=s,a[1+l]/=c;const d=Lr(s,c,.5);return typeof a[2+l]=="number"&&(a[2+l]/=d),typeof a[3+l]=="number"&&(a[3+l]/=d),i(a)}};let XE=!1;class eLe extends S.Component{componentDidMount(){const{visualElement:r,layoutGroup:n,switchLayoutGroup:o,layoutId:a}=this.props,{projection:i}=r;wOe(tLe),i&&(n.group&&n.group.add(i),o&&o.register&&a&&o.register(i),XE&&i.root.didUpdate(),i.addEventListener("animationComplete",()=>{this.safeToRemove()}),i.setOptions({...i.options,onExitComplete:()=>this.safeToRemove()})),I3.hasEverUpdated=!0}getSnapshotBeforeUpdate(r){const{layoutDependency:n,visualElement:o,drag:a,isPresent:i}=this.props,{projection:l}=o;return l&&(l.isPresent=i,XE=!0,a||r.layoutDependency!==n||n===void 0||r.isPresent!==i?l.willUpdate():this.safeToRemove(),r.isPresent!==i&&(i?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(),bE.postRender(()=>{!r.currentAnimation&&r.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:r,layoutGroup:n,switchLayoutGroup:o}=this.props,{projection:a}=r;XE=!0,a&&(a.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(a),o&&o.deregister&&o.deregister(a))}safeToRemove(){const{safeToRemove:r}=this.props;r&&r()}render(){return null}}function JX(e){const[r,n]=_X(),o=S.useContext(My);return y.jsx(eLe,{...e,layoutGroup:o,switchLayoutGroup:S.useContext(AX),isPresent:r,safeToRemove:n})}const tLe={borderRadius:{...Iy,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:Iy,borderTopRightRadius:Iy,borderBottomLeftRadius:Iy,borderBottomRightRadius:Iy,boxShadow:JIe},rLe=(e,r)=>e.depth-r.depth;class nLe{constructor(){this.children=[],this.isDirty=!1}add(r){PS(this.children,r),this.isDirty=!0}remove(r){x3(this.children,r),this.isDirty=!0}forEach(r){this.isDirty&&this.children.sort(rLe),this.isDirty=!1,this.children.forEach(r)}}const eZ=["TopLeft","TopRight","BottomLeft","BottomRight"],oLe=eZ.length,tZ=e=>typeof e=="string"?parseFloat(e):e,rZ=e=>typeof e=="number"||_t.test(e);function aLe(e,r,n,o,a,i){a?(e.opacity=Lr(0,n.opacity??1,iLe(o)),e.opacityExit=Lr(r.opacity??1,0,lLe(o))):i&&(e.opacity=Lr(r.opacity??1,n.opacity??1,o));for(let l=0;lor?1:n(Uf(e,r,o))}function aZ(e,r){e.min=r.min,e.max=r.max}function il(e,r){aZ(e.x,r.x),aZ(e.y,r.y)}function iZ(e,r){e.translate=r.translate,e.scale=r.scale,e.originPoint=r.originPoint,e.origin=r.origin}function lZ(e,r,n,o,a){return e-=r,e=$3(e,1/n,o),a!==void 0&&(e=$3(e,1/a,o)),e}function sLe(e,r=0,n=1,o=.5,a,i=e,l=e){if(ns.test(r)&&(r=parseFloat(r),r=Lr(l.min,l.max,r/100)-l.min),typeof r!="number")return;let s=Lr(i.min,i.max,o);e===i&&(s-=r),e.min=lZ(e.min,r,n,s,a),e.max=lZ(e.max,r,n,s,a)}function sZ(e,r,[n,o,a],i,l){sLe(e,r[n],r[o],r[a],r.scale,i,l)}const cLe=["x","scaleX","originX"],dLe=["y","scaleY","originY"];function cZ(e,r,n,o){sZ(e.x,r,cLe,n?n.x:void 0,o?o.x:void 0),sZ(e.y,r,dLe,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 uLe(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 Fo(e.x)/Fo(e.y)}function gZ(e,r){return e.translate===r.translate&&e.scale===r.scale&&e.originPoint===r.originPoint}class pLe{constructor(){this.members=[]}add(r){PS(this.members,r),r.scheduleRender()}remove(r){if(x3(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(a=>r===a);if(n===0)return!1;let o;for(let a=n;a>=0;a--){const i=this.members[a];if(i.isPresent!==!1){o=i;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:a}=r.options;a===!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 hLe(e,r,n){let o="";const a=e.x.translate/r.x,i=e.y.translate/r.y,l=n?.z||0;if((a||i||l)&&(o=`translate3d(${a}px, ${i}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 ZE=["","X","Y","Z"],fLe=1e3;let mLe=0;function KE(e,r,n,o){const{latestValues:a}=r;a[e]&&(n[e]=a[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=GY(r);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:a,layoutId:i}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",Dr,!(a||i))}const{parent:o}=e;o&&!o.hasCheckedOptimisedAppear&&yZ(o)}function vZ({attachResizeListener:e,defaultParent:r,measureScroll:n,checkIsScrollRoot:o,resetTransform:a}){return class{constructor(i={},l=r?.()){this.id=mLe++,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(vLe),this.nodes.forEach(kLe),this.nodes.forEach(_Le),this.nodes.forEach(bLe)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=i,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(i,()=>{const f=window.innerWidth;f!==u&&(u=f,this.root.updateBlockedByResize=!0,d&&d(),d=POe(p,250),I3.hasAnimatedSinceResize&&(I3.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()||zLe,{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={...gE(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 i=this.getStack();i&&i.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),vd(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(SLe),this.animationId++)}getTransformTemplate(){const{visualElement:i}=this.options;return i&&i.getProps().transformTemplate}willUpdate(i=!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&&!Fo(this.snapshot.measuredBox.x)&&!Fo(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,i.x,$),kZ(u.y,i.y,$),this.setTargetDelta(u),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(B3(p,this.layout.layoutBox,this.relativeParent.layout.layoutBox),CLe(this.relativeTarget,this.relativeTargetOrigin,p,$),C&&uLe(this.relativeTarget,C)&&(this.isProjectionDirty=!1),C||(C=En()),il(C,this.relativeTarget)),v&&(this.animationValues=d,aLe(d,c,this.latestValues,$,k,x)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=$},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(i){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&(vd(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Dr.update(()=>{I3.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=gp(0)),this.currentAnimation=bX(this.motionValue,[0,1e3],{...i,velocity:0,isSync:!0,onUpdate:l=>{this.mixTargetDelta(l),i.onUpdate&&i.onUpdate(l)},onStop:()=>{},onComplete:()=>{i.onComplete&&i.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 i=this.getStack();i&&i.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(fLe),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const i=this.getLead();let{targetWithTransforms:l,target:s,layout:c,latestValues:d}=i;if(!(!l||!s||!c)){if(this!==i&&this.layout&&c&&$Z(this.options.animationType,this.layout.layoutBox,c.layoutBox)){s=this.target||En();const u=Fo(this.layout.layoutBox.x);s.x.min=i.target.x.min,s.x.max=s.x.min+u;const p=Fo(this.layout.layoutBox.y);s.y.min=i.target.y.min,s.y.max=s.y.min+p}il(l,s),Qf(l,d),Oy(this.projectionDeltaWithTransform,this.layoutCorrected,l,d)}}registerSharedNode(i,l){this.sharedNodes.has(i)||this.sharedNodes.set(i,new pLe),this.sharedNodes.get(i).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 i=this.getStack();return i?i.lead===this:!0}getLead(){const{layoutId:i}=this.options;return i?this.getStack()?.lead||this:this}getPrevLead(){const{layoutId:i}=this.options;return i?this.getStack()?.prevLead:void 0}getStack(){const{layoutId:i}=this.options;if(i)return this.root.sharedNodes.get(i)}promote({needsReset:i,transition:l,preserveFollowOpacity:s}={}){const c=this.getStack();c&&c.promote(this,s),i&&(this.projectionDelta=void 0,this.needsReset=!0),l&&this.setOptions({transition:l})}relegate(){const i=this.getStack();return i?i.relegate(this):!1}resetSkewAndRotation(){const{visualElement:i}=this.options;if(!i)return;let l=!1;const{latestValues:s}=i;if((s.z||s.rotate||s.rotateX||s.rotateY||s.rotateZ||s.skewX||s.skewY)&&(l=!0),!l)return;const c={};s.z&&KE("z",i,c,this.animationValues);for(let d=0;di.currentAnimation?.stop()),this.root.nodes.forEach(bZ),this.root.sharedNodes.clear()}}}function gLe(e){e.updateLayout()}function yLe(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:a}=e.options,i=r.source!==e.layout.source;a==="size"?hi(u=>{const p=i?r.measuredBox[u]:r.layoutBox[u],f=Fo(p);p.min=n[u].min,p.max=p.min+f}):$Z(a,r.layoutBox,n)&&hi(u=>{const p=i?r.measuredBox[u]:r.layoutBox[u],f=Fo(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=em();Oy(l,n,r.layoutBox);const s=em();i?Oy(s,e.applyTransform(o,!0),r.measuredBox):Oy(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();B3(g,r.layoutBox,p.layoutBox);const v=En();B3(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 vLe(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 bLe(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function xLe(e){e.clearSnapshot()}function bZ(e){e.clearMeasurements()}function xZ(e){e.isLayoutDirty=!1}function wLe(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 kLe(e){e.resolveTargetDelta()}function _Le(e){e.calcProjection()}function SLe(e){e.resetSkewAndRotation()}function ELe(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 CLe(e,r,n,o){_Z(e.x,r.x,n.x,o),_Z(e.y,r.y,n.y,o)}function $Le(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const zLe={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:di;function CZ(e){e.min=EZ(e.min),e.max=EZ(e.max)}function RLe(e){CZ(e.x),CZ(e.y)}function $Z(e,r,n){return e==="position"||e==="preserve-aspect"&&!OIe(mZ(r),mZ(n),.2)}function jLe(e){return e!==e.root&&e.scroll?.wasRoot}const TLe=vZ({attachResizeListener:(e,r)=>Ny(e,"resize",r),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),QE={current:void 0},zZ=vZ({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!QE.current){const e=new TLe({});e.mount(window),e.setOptions({layoutScroll:!0}),QE.current=e}return QE.current},resetTransform:(e,r)=>{e.style.transform=r!==void 0?r:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),ALe={pan:{Feature:QIe},drag:{Feature:KIe,ProjectionNode:zZ,MeasureLayout:JX}};function RZ(e,r,n){const{props:o}=e;e.animationState&&o.whileHover&&e.animationState.setActive("whileHover",n==="Start");const a="onHover"+n,i=o[a];i&&Dr.postRender(()=>i(r,Py(r)))}class DLe extends wd{mount(){const{current:r}=this.node;r&&(this.unmount=NBe(r,(n,o)=>(RZ(this.node,o,"Start"),a=>RZ(this.node,a,"End"))))}unmount(){}}class MLe extends wd{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=ky(Ny(this.node.current,"focus",()=>this.onFocus()),Ny(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function jZ(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 a="onTap"+(n==="End"?"":n),i=o[a];i&&Dr.postRender(()=>i(r,Py(r)))}class NLe extends wd{mount(){const{current:r}=this.node;r&&(this.unmount=IBe(r,(n,o)=>(jZ(this.node,o,"Start"),(a,{success:i})=>jZ(this.node,a,i?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const JE=new WeakMap,eC=new WeakMap,PLe=e=>{const r=JE.get(e.target);r&&r(e)},BLe=e=>{e.forEach(PLe)};function OLe({root:e,...r}){const n=e||document;eC.has(n)||eC.set(n,{});const o=eC.get(n),a=JSON.stringify(r);return o[a]||(o[a]=new IntersectionObserver(BLe,{root:e,...r})),o[a]}function ILe(e,r,n){const o=OLe(r);return JE.set(e,n),o.observe(e),()=>{JE.delete(e),o.unobserve(e)}}const LLe={some:0,all:1};class FLe extends wd{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:r={}}=this.node.getProps(),{root:n,margin:o,amount:a="some",once:i}=r,l={root:n?n.current:void 0,rootMargin:o,threshold:typeof a=="number"?a:LLe[a]},s=c=>{const{isIntersecting:d}=c;if(this.isInView===d||(this.isInView=d,i&&!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 ILe(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(VLe(r,n))&&this.startObserver()}unmount(){}}function VLe({viewport:e={}},{viewport:r={}}={}){return n=>e[n]!==r[n]}const qLe={inView:{Feature:FLe},tap:{Feature:NLe},focus:{Feature:MLe},hover:{Feature:DLe}},HLe={layout:{ProjectionNode:zZ,MeasureLayout:JX}},ULe={renderer:xIe,...AIe,...qLe},WLe={...ULe,...ALe,...HLe};function TZ(e){const r=tm(()=>gp(e)),{isStatic:n}=S.useContext(vp);if(n){const[,o]=S.useState(e);S.useEffect(()=>r.on("change",o),[])}return r}function GLe(){!ME.current&&iX();const[e]=S.useState(z3.current);return e}function AZ(){const e=GLe(),{reducedMotion:r}=S.useContext(vp);return r==="never"?!1:r==="always"?!0:e}class YLe{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 XLe=()=>new YLe;function ZLe(){return tm(XLe)}const tC=S.createContext(null);tC.displayName="ElementDetailsActorContext";const KLe=()=>{const e=S.useContext(tC);if(e===null)throw new Error("ElementDetailsActorRef is not provided");return e},fi=(e,r,n)=>{const o=a=>({[e]:"__ignore__",...r,...Mu(a)});return{recipeFn:(a,i=!0)=>{const l=sI({conditions:{shift:hI,finalize:pI,breakpoints:{keys:["base","xs","sm","md","lg","xl"]}},utility:{toHash:(c,d)=>d(c.join(":")),transform:(c,d)=>(wke(e,n,a,c),d==="__ignore__"?{className:e}:(d=b8(d),{className:`${e}--${c}_${d}`}))}}),s=o(a);if(i){const c=E8(n,s);return Ge(l(s),fe(c))}return l(s)},getVariantProps:o,__getCompoundVariantCss__:a=>E8(n,o(a))}},os=(e,r)=>{if(e&&!r)return e;if(!e&&r)return r;const n=(...i)=>Ge(e(...i),r(...i)),o=_8(e.variantKeys,r.variantKeys),a=o.reduce((i,l)=>(i[l]=_8(e.variantMap[l],r.variantMap[l]),i),{});return Object.assign(n,{__recipe__:!0,__name__:`${e.__name__} ${r.__name__}`,raw:i=>i,variantKeys:o,variantMap:a,splitVariantProps(i){return Fn(i,o)}})},rC=fi("action-btn",{size:"md",radius:"md",variant:"filled"},[]),DZ={variant:["transparent","filled"],size:["sm","md"],radius:["sm","md"]},MZ=Object.keys(DZ),L3=Object.assign(Zn(rC.recipeFn),{__recipe__:!0,__name__:"actionBtn",__getCompoundVariantCss__:rC.__getCompoundVariantCss__,raw:e=>e,variantKeys:MZ,variantMap:DZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,MZ)},getVariantProps:rC.getVariantProps}),nC=fi("likec4-compound-node",{},[]),NZ={isTransparent:["false","true"],inverseColor:["true","false"],borderStyle:["solid","dashed","dotted","none"]},PZ=Object.keys(NZ),QLe=Object.assign(Zn(nC.recipeFn),{__recipe__:!0,__name__:"compoundNode",__getCompoundVariantCss__:nC.__getCompoundVariantCss__,raw:e=>e,variantKeys:PZ,variantMap:NZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,PZ)},getVariantProps:nC.getVariantProps}),oC=fi("likec4-edge-action-btn",{},[]),BZ={},OZ=Object.keys(BZ),JLe=Object.assign(Zn(oC.recipeFn),{__recipe__:!0,__name__:"edgeActionBtn",__getCompoundVariantCss__:oC.__getCompoundVariantCss__,raw:e=>e,variantKeys:OZ,variantMap:BZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,OZ)},getVariantProps:oC.getVariantProps}),aC=fi("likec4-edge-label",{pointerEvents:"all",isStepEdge:!1,cursor:"default"},[]),IZ={pointerEvents:["none","all"],cursor:["pointer","default"],isStepEdge:["false","true"]},LZ=Object.keys(IZ),eFe=Object.assign(Zn(aC.recipeFn),{__recipe__:!0,__name__:"edgeLabel",__getCompoundVariantCss__:aC.__getCompoundVariantCss__,raw:e=>e,variantKeys:LZ,variantMap:IZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,LZ)},getVariantProps:aC.getVariantProps}),FZ={},tFe=[],rFe=[["path","likec4-edge__path"],["pathBg","likec4-edge__pathBg"],["markersCtx","likec4-edge__markersCtx"],["middlePoint","likec4-edge__middlePoint"]],nFe=rFe.map(([e,r])=>[e,fi(r,FZ,k8(tFe,e))]),oFe=Zn((e={})=>Object.fromEntries(nFe.map(([r,n])=>[r,n.recipeFn(e)]))),VZ=[],aFe=e=>({...FZ,...Mu(e)}),iFe=Object.assign(oFe,{__recipe__:!1,__name__:"edgePath",raw:e=>e,classNameMap:{},variantKeys:VZ,variantMap:{},splitVariantProps(e){return Fn(e,VZ)},getVariantProps:aFe}),iC=fi("likec4-element-node-data",{},[]),qZ={},HZ=Object.keys(qZ),lFe=Object.assign(Zn(iC.recipeFn),{__recipe__:!0,__name__:"elementNodeData",__getCompoundVariantCss__:iC.__getCompoundVariantCss__,raw:e=>e,variantKeys:HZ,variantMap:qZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,HZ)},getVariantProps:iC.getVariantProps}),lC=fi("likec4-element-shape",{},[]),UZ={shapetype:["html","svg"]},WZ=Object.keys(UZ),GZ=Object.assign(Zn(lC.recipeFn),{__recipe__:!0,__name__:"elementShapeRecipe",__getCompoundVariantCss__:lC.__getCompoundVariantCss__,raw:e=>e,variantKeys:WZ,variantMap:UZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,WZ)},getVariantProps:lC.getVariantProps}),sC=fi("likec4-tag",{autoTextColor:!1},[]),YZ={autoTextColor:["false","true"]},XZ=Object.keys(YZ),sFe=Object.assign(Zn(sC.recipeFn),{__recipe__:!0,__name__:"likec4tag",__getCompoundVariantCss__:sC.__getCompoundVariantCss__,raw:e=>e,variantKeys:XZ,variantMap:YZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,XZ)},getVariantProps:sC.getVariantProps}),cC=fi("likec4-markdown-block",{uselikec4palette:!1,value:"markdown"},[]),ZZ={uselikec4palette:["true","false"],value:["markdown","plaintext"]},KZ=Object.keys(ZZ),cFe=Object.assign(Zn(cC.recipeFn),{__recipe__:!0,__name__:"markdownBlock",__getCompoundVariantCss__:cC.__getCompoundVariantCss__,raw:e=>e,variantKeys:KZ,variantMap:ZZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,KZ)},getVariantProps:cC.getVariantProps}),dC=fi("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),eK=Object.assign(Zn(dC.recipeFn),{__recipe__:!0,__name__:"navigationPanelActionIcon",__getCompoundVariantCss__:dC.__getCompoundVariantCss__,raw:e=>e,variantKeys:JZ,variantMap:QZ,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,JZ)},getVariantProps:dC.getVariantProps}),uC=fi("likec4-overlay",{fullscreen:!1,withBackdrop:!0},[]),tK={fullscreen:["false","true"],withBackdrop:["false","true"]},rK=Object.keys(tK),dFe=Object.assign(Zn(uC.recipeFn),{__recipe__:!0,__name__:"overlay",__getCompoundVariantCss__:uC.__getCompoundVariantCss__,raw:e=>e,variantKeys:rK,variantMap:tK,merge(e){return os(this,e)},splitVariantProps(e){return Fn(e,rK)},getVariantProps:uC.getVariantProps}),nK={truncateLabel:!1},uFe=[],pFe=[["root","likec4-navlink__root"],["body","likec4-navlink__body"],["section","likec4-navlink__section"],["label","likec4-navlink__label"],["description","likec4-navlink__description"]],hFe=pFe.map(([e,r])=>[e,fi(r,nK,k8(uFe,e))]),fFe=Zn((e={})=>Object.fromEntries(hFe.map(([r,n])=>[r,n.recipeFn(e)]))),oK=["truncateLabel"],mFe=e=>({...nK,...Mu(e)}),gFe=Object.assign(fFe,{__recipe__:!1,__name__:"navigationLink",raw:e=>e,classNameMap:{},variantKeys:oK,variantMap:{truncateLabel:["true","false"]},splitVariantProps(e){return Fn(e,oK)},getVariantProps:mFe});function aK(){return cf()}function pC(e,r){return Dt(it(e),r??Or)}function hC(){return vr()}const yFe=e=>Math.round(e.transform[2]*100)/100;function vFe(){return Dt(yFe)}const bFe=e=>e.transform[2]<.2;function xFe(){return Dt(bFe)}const{abs:Ly,cos:nc,sin:om,acos:wFe,atan2:Fy,sqrt:kd,pow:mi}=Math;function Vy(e){return e<0?-mi(-e,.3333333333333333):mi(e,.3333333333333333)}const iK=Math.PI,F3=2*iK,_d=iK/2,kFe=1e-6,fC=Number.MAX_SAFE_INTEGER||9007199254740991,mC=Number.MIN_SAFE_INTEGER||-9007199254740991,_Fe={x:0,y:0,z:0},Ie={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),kd(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 a=1-e;let i=r;if(o===0)return r[0].t=e,r[0];if(o===1){const s={x:a*i[0].x+e*i[1].x,y:a*i[0].y+e*i[1].y,t:e};return n&&(s.z=a*i[0].z+e*i[1].z),s}if(o<4){let s=a*a,c=e*e,d,u,p,f=0;o===2?(i=[i[0],i[1],i[2],_Fe],d=s,u=a*e*2,p=c):o===3&&(d=s*a,u=s*e*3,p=a*c*3,f=e*c);const g={x:d*i[0].x+u*i[1].x+p*i[2].x+f*i[3].x,y:d*i[0].y+u*i[1].y+p*i[2].y+f*i[3].y,t:e};return n&&(g.z=d*i[0].z+u*i[1].z+p*i[2].z+f*i[3].z),g}const l=JSON.parse(JSON.stringify(r));for(;l.length>1;){for(let s=0;s1;a--,i--){const l=[];for(let s=0,c;s"u")e=.5;else if(e===0||e===1)return e;const n=mi(e,r)+mi(1-e,r),o=n-1;return Ly(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=mi(1-e,r),o=mi(e,r)+n;return n/o},lli8:function(e,r,n,o,a,i,l,s){const c=(e*o-r*n)*(a-l)-(e-n)*(a*s-i*l),d=(e*o-r*n)*(i-s)-(r-o)*(a*s-i*l),u=(e-n)*(i-s)-(r-o)*(a-l);return u==0?!1:{x:c/u,y:d/u}},lli4:function(e,r,n,o){const a=e.x,i=e.y,l=r.x,s=r.y,c=n.x,d=n.y,u=o.x,p=o.y;return Ie.lli8(a,i,l,s,c,d,u,p)},lli:function(e,r){return Ie.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=fC,n=fC,o=mC,a=mC;return e.forEach(function(i){const l=i.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,i.push(u))})}),i},makeshape:function(e,r,n){const o=r.points.length,a=e.points.length,i=Ie.makeline(r.points[o-1],e.points[0]),l=Ie.makeline(e.points[a-1],r.points[0]),s={startcap:i,forward:e,back:r,endcap:l,bbox:Ie.findbbox([i,e,r,l])};return s.intersections=function(c){return Ie.shapeintersections(s,s.bbox,c,c.bbox,n)},s},getminmax:function(e,r,n){if(!n)return{min:0,max:0};let o=fC,a=mC,i,l;n.indexOf(0)===-1&&(n=[0].concat(n)),n.indexOf(1)===-1&&n.push(1);for(let s=0,c=n.length;sa&&(a=l[r]);return{min:o,mid:(o+a)/2,max:a,size:a-o}},align:function(e,r){const n=r.p1.x,o=r.p1.y,a=-Fy(r.p2.y-o,r.p2.x-n),i=function(l){return{x:(l.x-n)*nc(a)-(l.y-o)*om(a),y:(l.x-n)*om(a)+(l.y-o)*nc(a)}};return e.map(i)},roots:function(e,r){r=r||{p1:{x:0,y:0},p2:{x:1,y:0}};const n=e.length-1,o=Ie.align(e,r),a=function(A){return 0<=A&&A<=1};if(n===2){const A=o[0].y,R=o[1].y,T=o[2].y,O=A-2*R+T;if(O!==0){const P=-kd(R*R-A*T),L=-A+R,H=-(P+L)/O,M=-(-P+L)/O;return[H,M].filter(a)}else if(R!==T&&O===0)return[(2*R-T)/(2*R-2*T)].filter(a);return[]}const i=o[0].y,l=o[1].y,s=o[2].y,c=o[3].y;let d=-i+3*l-3*s+c,u=3*i-6*l+3*s,p=-3*i+3*l,f=i;if(Ie.approximately(d,0)){if(Ie.approximately(u,0))return Ie.approximately(p,0)?[]:[-f/p].filter(a);const A=kd(p*p-4*u*f),R=2*u;return[(A-p)/R,(-p-A)/R].filter(a)}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,_,$,z,j;if(k<0){const A=-g/3,R=A*A*A,T=kd(R),O=-w/(2*T),P=O<-1?-1:O>1?1:O,L=wFe(P),H=Vy(T),M=2*H;return $=M*nc(L/3)-u/3,z=M*nc((L+F3)/3)-u/3,j=M*nc((L+2*F3)/3)-u/3,[$,z,j].filter(a)}else{if(k===0)return C=x<0?Vy(-x):-Vy(x),$=2*C-u/3,z=-C-u/3,[$,z].filter(a);{const A=kd(k);return C=Vy(-x+A),_=Vy(x+A),[C-_-u/3].filter(a)}}},droots:function(e){if(e.length===3){const r=e[0],n=e[1],o=e[2],a=r-2*n+o;if(a!==0){const i=-kd(n*n-r*o),l=-r+n,s=-(i+l)/a,c=-(-i+l)/a;return[s,c]}else if(n!==o&&a===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,a){let i,l,s,c,d=0,u=0;const p=Ie.compute(e,r),f=Ie.compute(e,n),g=p.x*p.x+p.y*p.y;if(o?(i=kd(mi(p.y*f.z-f.y*p.z,2)+mi(p.z*f.x-f.z*p.x,2)+mi(p.x*f.y-f.x*p.y,2)),l=mi(g+p.z*p.z,3/2)):(i=p.x*f.y-p.y*f.x,l=mi(g,3/2)),i===0||l===0)return{k:0,r:0};if(d=i/l,u=l/i,!a){const v=Ie.curvature(e-.001,r,n,o,!0).k,w=Ie.curvature(e+.001,r,n,o,!0).k;c=(w-d+(d-v))/2,s=(Ly(w-d)+Ly(d-v))/2}return{k:d,r:u,dk:c,adk:s}},inflections:function(e){if(e.length<4)return[];const r=Ie.align(e,{p1:e[0],p2:e.slice(-1)[0]}),n=r[2].x*r[1].y,o=r[3].x*r[1].y,a=r[1].x*r[2].y,i=r[3].x*r[2].y,l=18*(-3*n+2*o+3*a-i),s=18*(3*n-o-3*a),c=18*(a-n);if(Ie.approximately(l,0)){if(!Ie.approximately(s,0)){let f=-c/s;if(0<=f&&f<=1)return[f]}return[]}const d=2*l;if(Ie.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 a=0,i,l,s,c;a=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(),a=r.bbox(),i=1e5,l=n||.5;if(o.x.size+o.y.sizej||j>A)&&(z+=F3),z>A&&(R=A,A=z,z=R)):A4){if(arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");a=!0}}else if(i!==6&&i!==8&&i!==9&&i!==12&&arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");const l=this._3d=!a&&(i===9||i===12)||r&&r[0]&&typeof r[0].z<"u",s=this.points=[];for(let g=0,v=l?3:2;gg+Hy(v.y),0)"u"&&(a=.5),a===0)return new Fr(n,n,o);if(a===1)return new Fr(r,n,n);const i=Fr.getABC(2,r,n,o,a);return new Fr(r,i.A,o)}static cubicFromPoints(r,n,o,a,i){typeof a>"u"&&(a=.5);const l=Fr.getABC(3,r,n,o,a);typeof i>"u"&&(i=Ie.dist(n,l.C));const s=i*(1-a)/a,c=Ie.dist(r,o),d=(o.x-r.x)/c,u=(o.y-r.y)/c,p=i*d,f=i*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-a),y:k.y+(w.y-k.y)/(1-a)},_={x:k.x+(x.x-k.x)/a,y:k.y+(x.y-k.y)/a},$={x:r.x+(C.x-r.x)/a,y:r.y+(C.y-r.y)/a},z={x:o.x+(_.x-o.x)/(1-a),y:o.y+(_.y-o.y)/(1-a)};return new Fr(r,$,z,o)}static getUtils(){return Ie}getUtils(){return Fr.getUtils()}static get PolyBezier(){return qy}valueOf(){return this.toString()}toString(){return Ie.pointsToString(this.points)}toSVG(){if(this._3d)return!1;const r=this.points,n=r[0].x,o=r[0].y,a=["M",n,o,this.order===2?"Q":"C"];for(let i=1,l=r.length;i0}length(){return Ie.length(this.derivative.bind(this))}static getABC(r=2,n,o,a,i=.5){const l=Ie.projectionratio(i,r),s=1-l,c={x:l*n.x+s*a.x,y:l*n.y+s*a.y},d=Ie.abcratio(i,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:a}}getABC(r,n){n=n||this.get(r);let o=this.points[0],a=this.points[this.order];return Fr.getABC(this.order,o,n,a,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,a;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?Ie.computeWithRatios(r,this.points,this.ratios,this._3d):Ie.compute(r,this.points,this._3d,this.ratios)}raise(){const r=this.points,n=[r[0]],o=r.length;for(let a=1,i,l;a1;){o=[];for(let l=0,s,c=n.length-1;l=0&&l<=1}),n=n.concat(r[o].sort(Ie.numberSort))}).bind(this)),r.values=n.sort(Ie.numberSort).filter(function(o,a){return n.indexOf(o)===a}),r}bbox(){const r=this.extrema(),n={};return this.dims.forEach((function(o){n[o]=Ie.getminmax(this,o,r[o])}).bind(this)),n}overlaps(r){const n=this.bbox(),o=r.bbox();return Ie.bboxoverlap(n,o)}offset(r,n){if(typeof n<"u"){const o=this.get(r),a=this.normal(r),i={c:o,n:a,x:o.x+a.x*n,y:o.y+a.y*n};return this._3d&&(i.z=o.z+a.z*n),i}if(this._linear){const o=this.normal(0),a=this.points.map(function(i){const l={x:i.x+r*o.x,y:i.y+r*o.y};return i.z&&o.z&&(l.z=i.z+r*o.z),l});return[new Fr(a)]}return this.reduce().map(function(o){return o._linear?o.offset(r)[0]:o.scale(r)})}simple(){if(this.order===3){const a=Ie.angle(this.points[0],this.points[3],this.points[1]),i=Ie.angle(this.points[0],this.points[3],this.points[2]);if(a>0&&i<0||a<0&&i>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),Hy(CFe(o))<$Fe/3}reduce(){let r,n=0,o=0,a=.01,i,l=[],s=[],c=this.extrema().values;for(c.indexOf(0)===-1&&(c=[0].concat(c)),c.indexOf(1)===-1&&c.push(1),n=c[0],r=1;r(1-s/a)*n+s/a*o);return new Fr(this.points.map((l,s)=>({x:l.x+r.x*i[s],y:l.y+r.y*i[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 a=this.clockwise,i=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=Ie.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]=Ie.copy(i[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=i[p+1],g={x:f.x-u.x,y:f.y-u.y},v=o?o((p+1)/n):r;o&&!a&&(v=-v);var w=Uy(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]=Ie.lli4(f,v,u,i[p+1])}),new Fr(d))}outline(r,n,o,a){if(n=n===void 0?r:n,this._linear){const z=this.normal(0),j=this.points[0],A=this.points[this.points.length-1];let R,T,O;o===void 0&&(o=r,a=n),R={x:j.x+z.x*r,y:j.y+z.y*r},O={x:A.x+z.x*o,y:A.y+z.y*o},T={x:(R.x+O.x)/2,y:(R.y+O.y)/2};const P=[R,T,O];R={x:j.x-z.x*n,y:j.y-z.y*n},O={x:A.x-z.x*a,y:A.y-z.y*a},T={x:(R.x+O.x)/2,y:(R.y+O.y)/2};const L=[O,T,R],H=Ie.makeline(L[2],P[0]),M=Ie.makeline(P[2],L[0]),V=[H,new Fr(P),M,new Fr(L)];return new qy(V)}const i=this.reduce(),l=i.length,s=[];let c=[],d,u=0,p=this.length();const f=typeof o<"u"&&typeof a<"u";function g(z,j,A,R,T){return function(O){const P=R/A,L=(R+T)/A,H=j-z;return Ie.map(O,0,1,z+P*H,z+L*H)}}i.forEach(function(z){const j=z.length();f?(s.push(z.scale(g(r,o,p,u,j))),c.push(z.scale(g(-n,-a,p,u,j)))):(s.push(z.scale(r)),c.push(z.scale(-n))),u+=j}),c=c.map(function(z){return d=z.points,d[3]?z.points=[d[3],d[2],d[1],d[0]]:z.points=[d[2],d[1],d[0]],z}).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=Ie.makeline(x,v),_=Ie.makeline(w,k),$=[C].concat(s).concat([_]).concat(c);return new qy($)}outlineshapes(r,n,o){n=n||r;const a=this.outline(r,n).curves,i=[];for(let l=1,s=a.length;l1,c.endcap.virtual=l{var s=this.get(l);return Ie.between(s.x,n,a)&&Ie.between(s.y,o,i)})}selfintersects(r){const n=this.reduce(),o=n.length-2,a=[];for(let i=0,l,s,c;i0&&(i=i.concat(s))}),i}arcs(r){return r=r||.5,this._iterate(r,[])}_error(r,n,o,a){const i=(a-o)/4,l=this.get(o+i),s=this.get(a-i),c=Ie.dist(r,n),d=Ie.dist(r,l),u=Ie.dist(r,s);return Hy(d-c)+Hy(u-c)}_iterate(r,n){let o=0,a=1,i;do{i=0,a=1;let l=this.get(o),s,c,d,u,p=!1,f=!1,g,v=a,w=1;do if(f=p,u=d,v=(o+a)/2,s=this.get(v),c=this.get(a),d=Ie.getccenter(l,s,c),d.interval={start:o,end:a},p=this._error(d,l,o,a)<=r,g=f&&!p,g||(w=a),p){if(a>=1){if(d.interval.end=w=1,u=d,a>1){let x={x:d.x+d.r*SFe(d.e),y:d.y+d.r*EFe(d.e)};d.e+=Ie.angle({x:d.x,y:d.y},x,this.get(1))}break}a=a+(a-o)/2}else a=v;while(!g&&i++<100);if(i>=100)break;u=u||d,n.push(u),o=w}while(a<1);return n}}function cK(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}const gC=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 yC(e){const{width:r,height:n}=_o(e),{x:o,y:a}=e.internals.positionAbsolute;return{x:Math.round(o+r/2),y:Math.round(a+n/2)}}function V3(e,r,n=0){const{width:o,height:a}=e,i=ko.center(e),l=Qr(r.x,r.y).subtract(i),s=(n+o/2)/l.x,c=(n+a/2)/l.y,d=Math.min(Math.abs(s),Math.abs(c));return Qr(l).multiply(d).add(i).round()}function q3(e){let[r,...n]=e;He(r,"start should be defined");const o=[];for(;xn(n,3);){const[a,i,l,...s]=n,c=new Fr(r[0],r[1],a[0],a[1],i[0],i[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 H3(e,r){const n=v7(e)?{x:e[0],y:e[1]}:e,o=v7(r)?{x:r[0],y:r[1]}:r;return zFe(n,o)<2.1}function zFe(e,r){return Math.hypot(r.x-e.x,r.y-e.y)}function nn(e){return e.stopPropagation()}function RFe(e){let[r,...n]=e;He(r,"start should be defined");let o=`M ${r[0]},${r[1]}`;for(;xn(n,3);){const[a,i,l,...s]=n;o=o+` C ${a[0]},${a[1]} ${i[0]},${i[1]} ${l[0]},${l[1]}`,n=s}return He(n.length===0,"all points should be consumed"),o}const U3=S.forwardRef(({tag:e,cursor:r,className:n,style:o,...a},i)=>{const l=uMe(e);return y.jsxs(hr,{ref:i,"data-likec4-tag":e,className:Ge(sFe({autoTextColor:WO(l)}),n),...a,style:{cursor:r,...o},children:[y.jsx("span",{children:"#"}),y.jsx("span",{children:e})]})}),jFe=(e,r)=>e.data.width===r.data.width&&tt(e.data.tags,r.data.tags)&&(e.data.hovered??!1)===(r.data.hovered??!1),Wy=S.memo(({id:e,data:{tags:r,width:n,hovered:o=!1}})=>{const{hovered:a,ref:i}=A7(),{hovered:l,ref:s}=A7(),[c,d]=B$e(!1,o?120:300);S.useEffect(()=>{d(x=>x?o||a||l:o&&(a||l))},[a,l,o]);const u=vFe(),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:i,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(g7,{isVisible:c,align:"start",position:Ue.Bottom,children:y.jsx(Ir,{ref:s,css:{gap:"0.5",alignItems:"baseline",flexWrap:"wrap",pb:"sm",translate:"auto",x:"[-8px]",maxWidth:w},children:r.map(x=>y.jsx(U3,{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))})})]})},jFe);Wy.displayName="ElementTags";const TFe=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"})})),AFe=[["path",{d:"M5 12l5 5l10 -10",key:"svg-0"}]],dK=wt("outline","check","Check",AFe),DFe=[["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"}]],MFe=wt("outline","copy","Copy",DFe),uK="https://github.com/",vC=S.forwardRef(({value:e,className:r,...n},o)=>{const a=e.url.includes("://")?e.url:new window.URL(e.url,window.location.href).toString();let i=a.startsWith(uK);return y.jsx(Ks,{ref:o,variant:"default",radius:"sm",size:"sm",tt:"none",leftSection:e.title?y.jsx(y.Fragment,{children:e.title}):null,rightSection:y.jsx(WU,{value:a,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(dK,{}):y.jsx(MFe,{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(gd.a,{href:a,target:"_blank",style:{color:"var(--badge-color)",cursor:"pointer"},css:{transition:"fast",opacity:{base:.7,_hover:1},textDecoration:{base:"none",_hover:"underline"}},children:[i&&y.jsx(TFe,{height:"12",width:"12",style:{verticalAlign:"middle",marginRight:"4px"}}),i?a.replace(uK,""):a]})})});function NFe(){return S.useContext(lS)}function PFe(){const e=S.useContext(lS);if(!e)throw new Error("No LikeC4ViewModel in context found");return e}const W3="--_blur",G3="--_opacity",BFe=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(${W3})`,backgroundColor:`[rgb(36 36 36 / var(${G3}, 5%))]`}}),OFe=fe({position:"absolute",pointerEvents:"all",display:"flex",flexDirection:"column",padding:"4",gap:"lg",justifyContent:"stretch",color:"mantine.colors.text",backgroundColor:{base:"mantine.colors.body",_dark:"mantine.colors.dark[6]"},boxShadow:"md",overflow:"hidden",border:"none",backgroundImage:` linear-gradient(180deg, color-mix(in oklab, var(--likec4-palette-fill) 60%, transparent), color-mix(in oklab, var(--likec4-palette-fill) 20%, transparent) 8px, @@ -133,7 +133,7 @@ ${p.message}`)}if(u){a.push(...s.actions),i=s;break}}return i?[i]:void 0}get eve drop-shadow(1px 1px 16px rgb(0 0 0 / 2%)) `},"& img":{objectFit:"contain"}}),Y3="--view-title-color",X3="--icon-color",VFe=fe({width:"100%",background:"mantine.colors.body",borderRadius:"sm",padding:"[10px 8px]",transition:"fast",border:"1px dashed",borderColor:"mantine.colors.defaultBorder",[Y3]:"{colors.mantine.colors.dark[1]}",_hover:{background:"mantine.colors.defaultHover",[X3]:"{colors.mantine.colors.dark[1]}",[Y3]:"{colors.mantine.colors.defaultColor}"},_dark:{background:"mantine.colors.dark[6]"},_light:{[X3]:"{colors.mantine.colors.gray[6]}",[Y3]:"{colors.mantine.colors.gray[7]}",_hover:{[X3]:"{colors.mantine.colors.gray[7]}"}},"& .mantine-ThemeIcon-root":{transition:"fast",color:`[var(${X3}, {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)"}}),qFe=fe({transition:"fast",color:`[var(${Y3}, {colors.mantine.colors.gray[7]})]`,fontSize:"15px",fontWeight:500,lineHeight:"1.4"}),HFe=fe({flex:1,display:"flex",flexDirection:"column",justifyContent:"stretch",overflow:"hidden",gap:"sm"}),UFe=fe({background:"mantine.colors.gray[1]",borderRadius:"sm",flexWrap:"nowrap",gap:"1.5",padding:"1",_dark:{background:"mantine.colors.dark[7]"}}),WFe=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]"}}}),GFe=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"}}}),YFe=fe({flex:1,display:"grid",gridTemplateColumns:"min-content 1fr",gridAutoRows:"min-content max-content",gap:"[24px 20px]",alignItems:"baseline",justifyItems:"stretch"}),XFe=fe({justifySelf:"end",textAlign:"right",userSelect:"none"}),ZFe=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]"}}),KFe=[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]],xC=wt("outline","chevron-down","ChevronDown",KFe),QFe=[["path",{d:"M9 6l6 6l-6 6",key:"svg-0"}]],Sd=wt("outline","chevron-right","ChevronRight",QFe);function pK({children:e}){return y.jsx(y.Fragment,{children:e})}function hK({value:e,isExpanded:r}){const[n,o]=S.useState(!1),a=S.useRef(null);return S.useEffect(()=>{a.current&&o(a.current.scrollWidth>a.current.clientWidth)},[e]),y.jsx(_n,{label:n&&!r?e:null,multiline:!0,w:300,withinPortal:!0,children:y.jsx(at,{ref:a,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 JFe({values:e,isExpanded:r}){return r?y.jsx(Io,{gap:"xs",children:e.map((n,o)=>y.jsxs(Zs,{align:"center",gap:"xs",children:[y.jsx(at,{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(hK,{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(Zs,{align:"center",gap:"xs",style:{minWidth:0},children:[y.jsx(at,{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,[a,i]=S.useState(!1);return y.jsxs(y.Fragment,{children:[o?y.jsx(pr,{onClick:()=>{i(!a)},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(Zs,{align:"center",gap:"xs",children:[y.jsxs(at,{component:"span",size:"xs",fw:700,children:[e,":"]}),y.jsx(at,{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}),a?y.jsx(xC,{size:12}):y.jsx(Sd,{size:12})]})}):y.jsxs(at,{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(JFe,{values:n,isExpanded:a}):y.jsx(Se,{className:fe({minHeight:"32px",display:"flex",alignItems:"center"}),children:y.jsx(hK,{value:n[0]||"",isExpanded:a})})})]})}const tVe=fe({"&[data-level='1']":{marginBottom:"sm"}}),rVe=fe({cursor:"default",marginTop:"0",marginBottom:"0"}),fK=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)"}}}),nVe=Ge(fK),oVe=Ge(fK,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}})),aVe=[["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"}]],Gy=wt("outline","info-circle","InfoCircle",aVe),iVe=[["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"}]],lVe=wt("outline","target","Target",iVe),sVe=[["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"}]],gi=wt("outline","zoom-scan","ZoomScan",sVe),cVe=({node:e})=>y.jsxs(en,{className:nVe,gap:6,align:"baseline",wrap:"nowrap",children:[y.jsxs(at,{component:"div",fz:11,c:"dimmed",children:[e.kind,":"]}),y.jsx(at,{component:"div",fz:"sm",fw:"500",children:e.title})]}),dVe=({instance:e})=>{const r=Nt(),n=r.currentView.id,o=[...e.views()];return y.jsxs(en,{className:oVe,gap:4,children:[y.jsx($a,{color:"gray",variant:"transparent",size:"xs",flex:0,children:y.jsx(lVe,{stroke:1.2})}),y.jsx(at,{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(a=>y.jsx(tn.Item,{px:"xs",py:4,disabled:a.id===n,leftSection:y.jsx($a,{size:"sm",variant:"transparent",color:"gray",children:y.jsx(gi,{stroke:1.8,opacity:.65})}),styles:{itemSection:{marginInlineEnd:$e(8)}},onClick:i=>{i.stopPropagation(),r.navigateTo(a.id)},children:a.title},a.id))})]})]})]})},uVe=()=>{},pVe=S.memo(({elementFqn:e})=>{const r=Lo().element(e),n=[...r.deployments()],o=hy({multiple:!1});o.setHoveredNode=uVe;const a=S.useMemo(()=>{let i=[],l=new Map;for(const s of r.deployments()){let c={label:y.jsx(dVe,{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(cVe,{node:d}),value:d.id,type:"node",children:[c]},l.set(d.id,u),c=u,d=d.parent}!d&&!i.includes(c)&&i.push(c)}return i},[r]);return S.useEffect(()=>{o.expandAllNodes()},[a]),n.length===0?y.jsx(Yw,{variant:"light",color:"gray",icon:y.jsx(Gy,{}),children:"This element does not have any deployments"}):y.jsx(Pf,{levelOffset:"sm",allowRangeSelection:!1,classNames:{node:tVe,label:rVe},styles:{root:{position:"relative",width:"min-content",minWidth:300}},data:a,tree:o,renderNode:({node:i,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:i.label}):i.label})})}),hVe=()=>{},mK=(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]||Or(o,r[n])))return!1;return!0};function Ed(e,r,n,o){const a=wI();F4e(a?hVe:e,r,mK,o)}function fVe(){const e=typeof window<"u"&&typeof window.devicePixelRatio=="number"?window.devicePixelRatio:1;return Qa(Math.floor(e),{min:1,max:4})}let Z3;function Cd(e){return Z3??=fVe(),Z3<2?Math.round(e):Math.round(e*Z3)/Z3}function mVe(e){switch(e){case"dots":return Xi.Dots;case"lines":return Xi.Lines;case"cross":return Xi.Cross;default:Xo(e)}}const gVe=(e,r)=>typeof e.background=="string"&&typeof r.background=="string"?e.background===r.background:tt(e.background,r.background),gK=S.memo(({background:e})=>typeof e=="string"?y.jsx(vV,{variant:mVe(e),size:2,gap:20}):y.jsx(vV,{...e}),gVe);gK.displayName="Background";const yK=(e,r)=>(e.data.dimmed??!1)===r?e:{...e,data:{...e.data,dimmed:r}};function yVe(e,r){return r!==void 0?yK(e,r):n=>yK(n,e)}const vK=(e,r)=>(e.data.hovered??!1)===r?e:{...e,data:{...e.data,hovered:r}};function vVe(e,r){return r!==void 0?vK(e,r):n=>vK(n,e)}function bK(e,r){return BV(e.data,r)?e:{...e,data:{...e.data,...r}}}function bVe(e,r){return r!==void 0?bK(e,r):n=>bK(n,e)}const tr={setDimmed:yVe,setHovered:vVe,setData:bVe},oc={Compound:1,Edge:20,Element:20,Max:30},yi=.05,wC=3,K3={default:"16px",withControls:{top:"58px",left:"16px",right:"16px",bottom:"16px"}};function kC({nodes:e,edges:r,onEdgesChange:n,onNodesChange:o,className:a,pannable:i=!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:$,...z}){const j=S.useMemo(()=>({minZoom:yi,maxZoom:1,padding:f,includeHiddenNodes:!1}),[f]),A=d!=="transparent"&&d!=="solid",R=xFe(),T=hC(),{colorScheme:O}=nRe();return p||(p=O==="auto"?"system":O),y.jsxs(bSe,{colorMode:p,nodes:e,edges:r,className:Ge(d==="transparent"&&"bg-transparent",a),...R&&{"data-likec4-zoom-small":!0},zoomOnPinch:l,zoomOnScroll:!i&&l,...!l&&{zoomActivationKeyCode:null},zoomOnDoubleClick:v,maxZoom:l?wC:1,minZoom:l?yi:1,fitView:g,fitViewOptions:j,preventScrolling:l||i,defaultMarkerColor:"var(--xy-edge-stroke)",noDragClassName:"nodrag",noPanClassName:"nopan",noWheelClassName:"nowheel",panOnScroll:i,panOnDrag:i,...!i&&{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:it((P,{x:L,y:H,zoom:M})=>{const V=Cd(L),B=Cd(H);(L!==V||H!==B)&&T.setState({transform:[V,B,M]}),x?.(P,{x:V,y:B,zoom:M})}),onNodeMouseEnter:it((P,L)=>{if(k){k(P,L);return}o([{id:L.id,type:"replace",item:tr.setHovered(L,!0)}])}),onNodeMouseLeave:it((P,L)=>{if(C){C(P,L);return}o([{id:L.id,type:"replace",item:tr.setHovered(L,!1)}])}),onEdgeMouseEnter:it((P,L)=>{if(_){_(P,L);return}n([{id:L.id,type:"replace",item:tr.setHovered(L,!0)}])}),onEdgeMouseLeave:it((P,L)=>{if($){$(P,L);return}n([{id:L.id,type:"replace",item:tr.setHovered(L,!1)}])}),onNodeDoubleClick:nn,onEdgeDoubleClick:nn,...z,children:[A&&y.jsx(gK,{background:d}),w&&y.jsx(wVe,{onViewportResize:w}),u]})}const xVe=({width:e,height:r})=>(e||1)*(r||1),wVe=({onViewportResize:e})=>{const r=Dt(xVe);return Ed(e,[r]),null},xK=S.createContext(null);function wK(){return mt(S.useContext(xK),"No RelationshipsBrowserActorContext")}function Q3(e,r=Or){const n=wK();return pn(n,e,r)}function Yy(){const e=wK();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,kK;function SC(){if(kK)return _C;kK=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,a(this._preds[p],u),a(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],i(this._preds[p],u),i(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 a(d,u){d[u]?d[u]++:d[u]=1}function i(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 _K,SK;function kVe(){return SK||(SK=1,_K="2.2.4"),_K}var EK,CK;function _Ve(){return CK||(CK=1,EK={Graph:SC(),version:kVe()}),EK}var EC,$K;function SVe(){if($K)return EC;$K=1;var e=SC();EC={write:r,read:a};function r(i){var l={options:{directed:i.isDirected(),multigraph:i.isMultigraph(),compound:i.isCompound()},nodes:n(i),edges:o(i)};return i.graph()!==void 0&&(l.value=structuredClone(i.graph())),l}function n(i){return i.nodes().map(function(l){var s=i.node(l),c=i.parent(l),d={v:l};return s!==void 0&&(d.value=s),c!==void 0&&(d.parent=c),d})}function o(i){return i.edges().map(function(l){var s=i.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 a(i){var l=new e(i.options).setGraph(i.value);return i.nodes.forEach(function(s){l.setNode(s.v,s.value),s.parent&&l.setParent(s.v,s.parent)}),i.edges.forEach(function(s){l.setEdge({v:s.v,w:s.w,name:s.name},s.value)}),l}return EC}var CC,zK;function EVe(){if(zK)return CC;zK=1,CC=e;function e(r){var n={},o=[],a;function i(l){Object.hasOwn(n,l)||(n[l]=!0,a.push(l),r.successors(l).forEach(i),r.predecessors(l).forEach(i))}return r.nodes().forEach(function(l){a=[],i(l),a.length&&o.push(a)}),o}return CC}var $C,RK;function jK(){if(RK)return $C;RK=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 a=this._keyIndices;if(n=String(n),!Object.hasOwn(a,n)){var i=this._arr,l=i.length;return a[n]=l,i.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 a=this._keyIndices[n];if(o>this._arr[a].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[a].priority+" New: "+o);this._arr[a].priority=o,this._decrease(a)}_heapify(n){var o=this._arr,a=2*n,i=a+1,l=n;a>1,!(o[i].priority1;function n(a,i,l,s){return o(a,String(i),l||r,s||function(c){return a.outEdges(c)})}function o(a,i,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 zC}var RC,DK;function CVe(){if(DK)return RC;DK=1;var e=AK();RC=r;function r(n,o,a){return n.nodes().reduce(function(i,l){return i[l]=e(n,l,o,a),i},{})}return RC}var jC,MK;function NK(){if(MK)return jC;MK=1,jC=e;function e(r){var n=0,o=[],a={},i=[];function l(s){var c=a[s]={onStack:!0,lowlink:n,index:n++};if(o.push(s),r.successors(s).forEach(function(p){Object.hasOwn(a,p)?a[p].onStack&&(c.lowlink=Math.min(c.lowlink,a[p].index)):(l(p),c.lowlink=Math.min(c.lowlink,a[p].lowlink))}),c.lowlink===c.index){var d=[],u;do u=o.pop(),a[u].onStack=!1,d.push(u);while(s!==u);i.push(d)}}return r.nodes().forEach(function(s){Object.hasOwn(a,s)||l(s)}),i}return jC}var TC,PK;function $Ve(){if(PK)return TC;PK=1;var e=NK();TC=r;function r(n){return e(n).filter(function(o){return o.length>1||o.length===1&&n.hasEdge(o[0],o[0])})}return TC}var AC,BK;function zVe(){if(BK)return AC;BK=1,AC=r;var e=()=>1;function r(o,a,i){return n(o,a||e,i||function(l){return o.outEdges(l)})}function n(o,a,i){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})}),i(c).forEach(function(d){var u=d.v===c?d.w:d.v,p=a(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;xa.successors(p):p=>a.neighbors(p),c=l==="post"?r:n,d=[],u={};return i.forEach(p=>{if(!a.hasNode(p))throw new Error("Graph does not have node: "+p);c(p,s,u,d)}),d}function r(a,i,l,s){for(var c=[[a,!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(i(d[0]),u=>c.push([u,!1])))}}function n(a,i,l,s){for(var c=[a];c.length>0;){var d=c.pop();Object.hasOwn(l,d)||(l[d]=!0,s.push(d),o(i(d),u=>c.push(u)))}}function o(a,i){for(var l=a.length;l--;)i(a[l],l,a);return a}return NC}var PC,qK;function jVe(){if(qK)return PC;qK=1;var e=VK();PC=r;function r(n,o){return e(n,o,"post")}return PC}var BC,HK;function TVe(){if(HK)return BC;HK=1;var e=VK();BC=r;function r(n,o){return e(n,o,"pre")}return BC}var OC,UK;function AVe(){if(UK)return OC;UK=1;var e=SC(),r=jK();OC=n;function n(o,a){var i=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=a(p);v0;){if(c=s.removeMin(),Object.hasOwn(l,c))i.setEdge(c,l[c]);else{if(u)throw new Error("Input graph is not connected: "+o);u=!0}o.nodeEdges(c).forEach(d)}return i}return OC}var WK,GK;function DVe(){return GK||(GK=1,WK={components:EVe(),dijkstra:AK(),dijkstraAll:CVe(),findCycles:$Ve(),floydWarshall:zVe(),isAcyclic:RVe(),postorder:jVe(),preorder:TVe(),prim:AVe(),tarjan:NK(),topsort:IK()}),WK}var IC,YK;function ll(){if(YK)return IC;YK=1;var e=_Ve();return IC={Graph:e.Graph,json:SVe(),alg:DVe(),version:e.version},IC}var LC,XK;function MVe(){if(XK)return LC;XK=1;class e{constructor(){let a={};a._next=a._prev=a,this._sentinel=a}dequeue(){let a=this._sentinel,i=a._prev;if(i!==a)return r(i),i}enqueue(a){let i=this._sentinel;a._prev&&a._next&&r(a),a._next=i._next,i._next._prev=a,i._next=a,a._prev=i}toString(){let a=[],i=this._sentinel,l=i._prev;for(;l!==i;)a.push(JSON.stringify(l,n)),l=l._prev;return"["+a.join(", ")+"]"}}function r(o){o._prev._next=o._next,o._next._prev=o._prev,delete o._next,delete o._prev}function n(o,a){if(o!=="_next"&&o!=="_prev")return a}return LC=e,LC}var FC,ZK;function NVe(){if(ZK)return FC;ZK=1;let e=ll().Graph,r=MVe();FC=o;let n=()=>1;function o(d,u){if(d.nodeCount()<=1)return[];let p=l(d,u||n);return a(p.graph,p.buckets,p.zeroIdx).flatMap(f=>d.outEdges(f.v,f.w))}function a(d,u,p){let f=[],g=u[u.length-1],v=u[0],w;for(;d.nodeCount();){for(;w=v.dequeue();)i(d,u,p,w);for(;w=g.dequeue();)i(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(i(d,u,p,w,!0));break}}}return f}function i(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;pT.setNode(O,R.node(O))),R.edges().forEach(O=>{let P=T.edge(O.v,O.w)||{weight:0,minlen:1},L=R.edge(O);T.setEdge(O.v,O.w,{weight:P.weight+L.weight,minlen:Math.max(P.minlen,L.minlen)})}),T}function o(R){let T=new e({multigraph:R.isMultigraph()}).setGraph(R.graph());return R.nodes().forEach(O=>{R.children(O).length||T.setNode(O,R.node(O))}),R.edges().forEach(O=>{T.setEdge(O,R.edge(O))}),T}function a(R){let T=R.nodes().map(O=>{let P={};return R.outEdges(O).forEach(L=>{P[L.w]=(P[L.w]||0)+R.edge(L).weight}),P});return A(R.nodes(),T)}function i(R){let T=R.nodes().map(O=>{let P={};return R.inEdges(O).forEach(L=>{P[L.v]=(P[L.v]||0)+R.edge(L).weight}),P});return A(R.nodes(),T)}function l(R,T){let O=R.x,P=R.y,L=T.x-O,H=T.y-P,M=R.width/2,V=R.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:O+B,y:P+F}}function s(R){let T=$(v(R)+1).map(()=>[]);return R.nodes().forEach(O=>{let P=R.node(O),L=P.rank;L!==void 0&&(T[L][P.order]=O)}),T}function c(R){let T=R.nodes().map(P=>{let L=R.node(P).rank;return L===void 0?Number.MAX_VALUE:L}),O=g(Math.min,T);R.nodes().forEach(P=>{let L=R.node(P);Object.hasOwn(L,"rank")&&(L.rank-=O)})}function d(R){let T=R.nodes().map(M=>R.node(M).rank),O=g(Math.min,T),P=[];R.nodes().forEach(M=>{let V=R.node(M).rank-O;P[V]||(P[V]=[]),P[V].push(M)});let L=0,H=R.graph().nodeRankFactor;Array.from(P).forEach((M,V)=>{M===void 0&&V%H!==0?--L:M!==void 0&&L&&M.forEach(B=>R.node(B).rank+=L)})}function u(R,T,O,P){let L={width:0,height:0};return arguments.length>=4&&(L.rank=O,L.order=P),r(R,"border",L,T)}function p(R,T=f){const O=[];for(let P=0;Pf){const O=p(T);return R.apply(null,O.map(P=>R.apply(null,P)))}else return R.apply(null,T)}function v(R){const T=R.nodes().map(O=>{let P=R.node(O).rank;return P===void 0?Number.MIN_VALUE:P});return g(Math.max,T)}function w(R,T){let O={lhs:[],rhs:[]};return R.forEach(P=>{T(P)?O.lhs.push(P):O.rhs.push(P)}),O}function x(R,T){let O=Date.now();try{return T()}finally{console.log(R+" time: "+(Date.now()-O)+"ms")}}function k(R,T){return T()}let C=0;function _(R){var T=++C;return R+(""+T)}function $(R,T,O=1){T==null&&(T=R,R=0);let P=H=>HTP[T]),Object.entries(R).reduce((P,[L,H])=>(P[L]=O(H,L),P),{})}function A(R,T){return R.reduce((O,P,L)=>(O[P]=T[L],O),{})}return VC}var qC,QK;function PVe(){if(QK)return qC;QK=1;let e=NVe(),r=$n().uniqueId;qC={run:n,undo:a};function n(i){(i.graph().acyclicer==="greedy"?e(i,l(i)):o(i)).forEach(s=>{let c=i.edge(s);i.removeEdge(s),c.forwardName=s.name,c.reversed=!0,i.setEdge(s.w,s.v,c,r("rev"))});function l(s){return c=>s.edge(c).weight}}function o(i){let l=[],s={},c={};function d(u){Object.hasOwn(c,u)||(c[u]=!0,s[u]=!0,i.outEdges(u).forEach(p=>{Object.hasOwn(s,p.w)?l.push(p):d(p.w)}),delete s[u])}return i.nodes().forEach(d),l}function a(i){i.edges().forEach(l=>{let s=i.edge(l);if(s.reversed){i.removeEdge(l);let c=s.forwardName;delete s.reversed,delete s.forwardName,i.setEdge(l.w,l.v,s,c)}})}return qC}var HC,JK;function BVe(){if(JK)return HC;JK=1;let e=$n();HC={run:r,undo:o};function r(a){a.graph().dummyChains=[],a.edges().forEach(i=>n(a,i))}function n(a,i){let l=i.v,s=a.node(l).rank,c=i.w,d=a.node(c).rank,u=i.name,p=a.edge(i),f=p.labelRank;if(d===s+1)return;a.removeEdge(i);let g,v,w;for(w=0,++s;s{let l=a.node(i),s=l.edgeLabel,c;for(a.setEdge(l.edgeObj,s);l.dummy;)c=a.successors(i)[0],a.removeNode(i),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),i=c,l=a.node(i)})}return HC}var UC,eQ;function J3(){if(eQ)return UC;eQ=1;const{applyWithChunking:e}=$n();UC={longestPath:r,slack:n};function r(o){var a={};function i(l){var s=o.node(l);if(Object.hasOwn(a,l))return s.rank;a[l]=!0;let c=o.outEdges(l).map(u=>u==null?Number.POSITIVE_INFINITY:i(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(i)}function n(o,a){return o.node(a.w).rank-o.node(a.v).rank-o.edge(a).minlen}return UC}var WC,tQ;function rQ(){if(tQ)return WC;tQ=1;var e=ll().Graph,r=J3().slack;WC=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 a(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 WC}var GC,nQ;function OVe(){if(nQ)return GC;nQ=1;var e=rQ(),r=J3().slack,n=J3().longestPath,o=ll().alg.preorder,a=ll().alg.postorder,i=$n().simplify;GC=l,l.initLowLimValues=u,l.initCutValues=s,l.calcCutValue=d,l.leaveEdge=f,l.enterEdge=g,l.exchangeEdges=v;function l(C){C=i(C),n(C);var _=e(C);u(_),s(_,C);for(var $,z;$=f(_);)z=g(_,C,$),v(_,C,$,z)}function s(C,_){var $=a(C,C.nodes());$=$.slice(0,$.length-1),$.forEach(z=>c(C,_,z))}function c(C,_,$){var z=C.node($),j=z.parent;C.edge($,j).cutvalue=d(C,_,$)}function d(C,_,$){var z=C.node($),j=z.parent,A=!0,R=_.edge($,j),T=0;return R||(A=!1,R=_.edge(j,$)),T=R.weight,_.nodeEdges($).forEach(O=>{var P=O.v===$,L=P?O.w:O.v;if(L!==j){var H=P===A,M=_.edge(O).weight;if(T+=H?M:-M,x(C,$,L)){var V=C.edge($,L).cutvalue;T+=H?-V:V}}}),T}function u(C,_){arguments.length<2&&(_=C.nodes()[0]),p(C,{},1,_)}function p(C,_,$,z,j){var A=$,R=C.node(z);return _[z]=!0,C.neighbors(z).forEach(T=>{Object.hasOwn(_,T)||($=p(C,_,$,T,z))}),R.low=A,R.lim=$++,j?R.parent=j:delete R.parent,$}function f(C){return C.edges().find(_=>C.edge(_).cutvalue<0)}function g(C,_,$){var z=$.v,j=$.w;_.hasEdge(z,j)||(z=$.w,j=$.v);var A=C.node(z),R=C.node(j),T=A,O=!1;A.lim>R.lim&&(T=R,O=!0);var P=_.edges().filter(L=>O===k(C,C.node(L.v),T)&&O!==k(C,C.node(L.w),T));return P.reduce((L,H)=>r(_,H)!_.node(j).parent),z=o(C,$);z=z.slice(1),z.forEach(j=>{var A=C.node(j).parent,R=_.edge(j,A),T=!1;R||(R=_.edge(A,j),T=!0),_.node(j).rank=_.node(A).rank+(T?R.minlen:-R.minlen)})}function x(C,_,$){return C.hasEdge(_,$)}function k(C,_,$){return $.low<=_.lim&&_.lim<=$.lim}return GC}var YC,oQ;function IVe(){if(oQ)return YC;oQ=1;var e=J3(),r=e.longestPath,n=rQ(),o=OVe();YC=a;function a(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":i(c);break;case"none":break;default:s(c)}}var i=r;function l(c){r(c),n(c)}function s(c){o(c)}return YC}var XC,aQ;function LVe(){if(aQ)return XC;aQ=1,XC=e;function e(o){let a=n(o);o.graph().dummyChains.forEach(i=>{let l=o.node(i),s=l.edgeObj,c=r(o,a,s.v,s.w),d=c.path,u=c.lca,p=0,f=d[p],g=!0;for(;i!==s.w;){if(l=o.node(i),g){for(;(f=d[p])!==u&&o.node(f).maxRankd||u>a[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 a={},i=0;function l(s){let c=i;o.children(s).forEach(l),a[s]={low:c,lim:i++}}return o.children().forEach(l),a}return XC}var ZC,iQ;function FVe(){if(iQ)return ZC;iQ=1;let e=$n();ZC={run:r,cleanup:i};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=a(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,z=C.borderTop?d:2*d,j=_!==$?1:u-p[f]+1;l.setEdge(v,_,{weight:z,minlen:j,nestingEdge:!0}),l.setEdge($,w,{weight:z,minlen:j,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 a(l){return l.edges().reduce((s,c)=>s+l.edge(c).weight,0)}function i(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 ZC}var KC,lQ;function VVe(){if(lQ)return KC;lQ=1;let e=$n();KC=r;function r(o){function a(i){let l=o.children(i),s=o.node(i);if(l.length&&l.forEach(a),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 a(c){c.nodes().forEach(d=>i(c.node(d))),c.edges().forEach(d=>{let u=c.edge(d);u.points.forEach(i),Object.hasOwn(u,"y")&&i(u)})}function i(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 QC}var JC,cQ;function HVe(){if(cQ)return JC;cQ=1;let e=$n();JC=r;function r(n){let o={},a=n.nodes().filter(d=>!n.children(d).length),i=a.map(d=>n.node(d).rank),l=e.applyWithChunking(Math.max,i),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 a.sort((d,u)=>n.node(d).rank-n.node(u).rank).forEach(c),s}return JC}var e$,dQ;function UVe(){if(dQ)return e$;dQ=1;let e=$n().zipObject;e$=r;function r(o,a){let i=0;for(let l=1;lg)),s=a.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 e$}var t$,uQ;function WVe(){if(uQ)return t$;uQ=1,t$=e;function e(r,n=[]){return n.map(o=>{let a=r.inEdges(o);if(a.length){let i=a.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:i.sum/i.weight,weight:i.weight}}else return{v:o}})}return t$}var r$,pQ;function GVe(){if(pQ)return r$;pQ=1;let e=$n();r$=r;function r(a,i){let l={};a.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)}),i.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(a){let i=[];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&&a.push(d)}}for(;a.length;){let c=a.pop();i.push(c),c.in.reverse().forEach(l(c)),c.out.forEach(s(c))}return i.filter(c=>!c.merged).map(c=>e.pick(c,["vs","i","barycenter","weight"]))}function o(a,i){let l=0,s=0;a.weight&&(l+=a.barycenter*a.weight,s+=a.weight),i.weight&&(l+=i.barycenter*i.weight,s+=i.weight),a.vs=i.vs.concat(a.vs),a.barycenter=l/s,a.weight=s,a.i=Math.min(i.i,a.i),i.merged=!0}return r$}var n$,hQ;function YVe(){if(hQ)return n$;hQ=1;let e=$n();n$=r;function r(a,i){let l=e.partition(a,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(!!i)),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(a,i,l){let s;for(;i.length&&(s=i[i.length-1]).i<=l;)i.pop(),a.push(s.vs),l++;return l}function o(a){return(i,l)=>i.barycenterl.barycenter?1:a?l.i-i.i:i.i-l.i}return n$}var o$,fQ;function XVe(){if(fQ)return o$;fQ=1;let e=WVe(),r=GVe(),n=YVe();o$=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")&&i(C,_)}});let x=r(w,c);a(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 a(l,s){l.forEach(c=>{c.vs=c.vs.flatMap(d=>s[d]?s[d].vs:d)})}function i(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 o$}var a$,mQ;function ZVe(){if(mQ)return a$;mQ=1;let e=ll().Graph,r=$n();a$=n;function n(a,i,l,s){s||(s=a.nodes());let c=o(a),d=new e({compound:!0}).setGraph({root:c}).setDefaultNodeLabel(u=>a.node(u));return s.forEach(u=>{let p=a.node(u),f=a.parent(u);(p.rank===i||p.minRank<=i&&i<=p.maxRank)&&(d.setNode(u),d.setParent(u,f||c),a[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:a.edge(g).weight+x})}),Object.hasOwn(p,"minRank")&&d.setNode(u,{borderLeft:p.borderLeft[i],borderRight:p.borderRight[i]}))}),d}function o(a){for(var i;a.hasNode(i=r.uniqueId("_root")););return i}return a$}var i$,gQ;function KVe(){if(gQ)return i$;gQ=1,i$=e;function e(r,n,o){let a={},i;o.forEach(l=>{let s=r.parent(l),c,d;for(;s;){if(c=r.parent(s),c?(d=a[c],a[c]=s):(d=i,i=s),d&&d!==s){n.setEdge(d,s);return}s=c}})}return i$}var l$,yQ;function QVe(){if(yQ)return l$;yQ=1;let e=HVe(),r=UVe(),n=XVe(),o=ZVe(),a=KVe(),i=ll().Graph,l=$n();l$=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 z=r(p,x);z{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 i;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),a(v,g,x.vs)})}function u(p,f){Object.values(f).forEach(g=>g.forEach((v,w)=>p.node(v).order=w))}return l$}var s$,vQ;function JVe(){if(vQ)return s$;vQ=1;let e=ll().Graph,r=$n();s$={positionX:g,findType1Conflicts:n,findType2Conflicts:o,addConflict:i,hasConflict:l,verticalAlignment:s,horizontalCompaction:c,alignCoordinates:p,findSmallestWidthAlignment:u,balance:f};function n(x,k){let C={};function _($,z){let j=0,A=0,R=$.length,T=z[z.length-1];return z.forEach((O,P)=>{let L=a(x,O),H=L?x.node(L).order:R;(L||O===T)&&(z.slice(A,P+1).forEach(M=>{x.predecessors(M).forEach(V=>{let B=x.node(V),F=B.order;(F{O=z[P],x.node(O).dummy&&x.predecessors(O).forEach(L=>{let H=x.node(L);H.dummy&&(H.orderT)&&i(C,L,O)})})}function $(z,j){let A=-1,R,T=0;return j.forEach((O,P)=>{if(x.node(O).dummy==="border"){let L=x.predecessors(O);L.length&&(R=x.node(L[0]).order,_(j,T,P,A,R),T=P,A=R)}_(j,T,j.length,R,z.length)}),j}return k.length&&k.reduce($),C}function a(x,k){if(x.node(k).dummy)return x.predecessors(k).find(C=>x.node(C).dummy)}function i(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 $={},z={},j={};return k.forEach(A=>{A.forEach((R,T)=>{$[R]=R,z[R]=R,j[R]=T})}),k.forEach(A=>{let R=-1;A.forEach(T=>{let O=_(T);if(O.length){O=O.sort((L,H)=>j[L]-j[H]);let P=(O.length-1)/2;for(let L=Math.floor(P),H=Math.ceil(P);L<=H;++L){let M=O[L];z[T]===T&&RMath.max(L,z[H.v]+j.edge(H)),0)}function O(P){let L=j.outEdges(P).reduce((M,V)=>Math.min(M,z[V.w]-j.edge(V)),Number.POSITIVE_INFINITY),H=x.node(P);L!==Number.POSITIVE_INFINITY&&H.borderType!==A&&(z[P]=Math.max(z[P],L))}return R(T,j.predecessors.bind(j)),R(O,j.successors.bind(j)),Object.keys(_).forEach(P=>z[P]=z[C[P]]),z}function d(x,k,C,_){let $=new e,z=x.graph(),j=v(z.nodesep,z.edgesep,_);return k.forEach(A=>{let R;A.forEach(T=>{let O=C[T];if($.setNode(O),R){var P=C[R],L=$.edge(P,O);$.setEdge(P,O,Math.max(j(x,T,R),L||0))}R=T})}),$}function u(x,k){return Object.values(k).reduce((C,_)=>{let $=Number.NEGATIVE_INFINITY,z=Number.POSITIVE_INFINITY;Object.entries(_).forEach(([A,R])=>{let T=w(x,A)/2;$=Math.max(R+T,$),z=Math.min(R-T,z)});const j=$-z;return j{["l","r"].forEach(j=>{let A=z+j,R=x[A];if(R===k)return;let T=Object.values(R),O=_-r.applyWithChunking(Math.min,T);j!=="l"&&(O=$-r.applyWithChunking(Math.max,T)),O&&(x[A]=r.mapValues(R,P=>P+O))})})}function f(x,k){return r.mapValues(x.ul,(C,_)=>{if(k)return x[k.toLowerCase()][_];{let $=Object.values(x).map(z=>z[_]).sort((z,j)=>z-j);return($[1]+$[2])/2}})}function g(x){let k=r.buildLayerMatrix(x),C=Object.assign(n(x,k),o(x,k)),_={},$;["u","d"].forEach(j=>{$=j==="u"?k:Object.values(k).reverse(),["l","r"].forEach(A=>{A==="r"&&($=$.map(P=>Object.values(P).reverse()));let R=(j==="u"?x.predecessors:x.successors).bind(x),T=s(x,$,C,R),O=c(x,$,T.root,T.align,A==="r");A==="r"&&(O=r.mapValues(O,P=>-P)),_[j+A]=O})});let z=u(x,_);return p(_,z),f(_,x.graph().align)}function v(x,k,C){return(_,$,z)=>{let j=_.node($),A=_.node(z),R=0,T;if(R+=j.width/2,Object.hasOwn(j,"labelpos"))switch(j.labelpos.toLowerCase()){case"l":T=-j.width/2;break;case"r":T=j.width/2;break}if(T&&(R+=C?T:-T),T=0,R+=(j.dummy?k:x)/2,R+=(A.dummy?k:x)/2,R+=A.width/2,Object.hasOwn(A,"labelpos"))switch(A.labelpos.toLowerCase()){case"l":T=A.width/2;break;case"r":T=-A.width/2;break}return T&&(R+=C?T:-T),T=0,R}}function w(x,k){return x.node(k).width}return s$}var c$,bQ;function eqe(){if(bQ)return c$;bQ=1;let e=$n(),r=JVe().positionX;c$=n;function n(a){a=e.asNonCompoundGraph(a),o(a),Object.entries(r(a)).forEach(([i,l])=>a.node(i).x=l)}function o(a){let i=e.buildLayerMatrix(a),l=a.graph().ranksep,s=0;i.forEach(c=>{const d=c.reduce((u,p)=>{const f=a.node(p).height;return u>f?u:f},0);c.forEach(u=>a.node(u).y=s+d/2),s+=d+l})}return c$}var d$,xQ;function tqe(){if(xQ)return d$;xQ=1;let e=PVe(),r=BVe(),n=IVe(),o=$n().normalizeRanks,a=LVe(),i=$n().removeEmptyRanks,l=FVe(),s=VVe(),c=qVe(),d=QVe(),u=eqe(),p=$n(),f=ll().Graph;d$=g;function g(I,W){let K=W&&W.debugTiming?p.time:p.notime;K("layout",()=>{let Q=K(" buildLayoutGraph",()=>R(I));K(" runLayout",()=>v(Q,K,W)),K(" updateInputGraph",()=>w(I,Q))})}function v(I,W,K){W(" makeSpaceForEdgeLabels",()=>T(I)),W(" removeSelfEdges",()=>q(I)),W(" acyclic",()=>e.run(I)),W(" nestingGraph.run",()=>l.run(I)),W(" rank",()=>n(p.asNonCompoundGraph(I))),W(" injectEdgeLabelProxies",()=>O(I)),W(" removeEmptyRanks",()=>i(I)),W(" nestingGraph.cleanup",()=>l.cleanup(I)),W(" normalizeRanks",()=>o(I)),W(" assignRankMinMax",()=>P(I)),W(" removeEdgeLabelProxies",()=>L(I)),W(" normalize.run",()=>r.run(I)),W(" parentDummyChains",()=>a(I)),W(" addBorderSegments",()=>s(I)),W(" order",()=>d(I,K)),W(" insertSelfEdges",()=>G(I)),W(" adjustCoordinateSystem",()=>c.adjust(I)),W(" position",()=>u(I)),W(" positionSelfEdges",()=>U(I)),W(" removeBorderNodes",()=>F(I)),W(" normalize.undo",()=>r.undo(I)),W(" fixupEdgeLabelCoords",()=>V(I)),W(" undoCoordinateSystem",()=>c.undo(I)),W(" translateGraph",()=>H(I)),W(" assignNodeIntersects",()=>M(I)),W(" reversePoints",()=>B(I)),W(" acyclic.undo",()=>e.undo(I))}function w(I,W){I.nodes().forEach(K=>{let Q=I.node(K),ae=W.node(K);Q&&(Q.x=ae.x,Q.y=ae.y,Q.rank=ae.rank,W.children(K).length&&(Q.width=ae.width,Q.height=ae.height))}),I.edges().forEach(K=>{let Q=I.edge(K),ae=W.edge(K);Q.points=ae.points,Object.hasOwn(ae,"x")&&(Q.x=ae.x,Q.y=ae.y)}),I.graph().width=W.graph().width,I.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},z=["minlen","weight","width","height","labeloffset"],j={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},A=["labelpos"];function R(I){let W=new f({multigraph:!0,compound:!0}),K=Z(I.graph());return W.setGraph(Object.assign({},k,Y(K,x),p.pick(K,C))),I.nodes().forEach(Q=>{let ae=Z(I.node(Q));const te=Y(ae,_);Object.keys($).forEach(re=>{te[re]===void 0&&(te[re]=$[re])}),W.setNode(Q,te),W.setParent(Q,I.parent(Q))}),I.edges().forEach(Q=>{let ae=Z(I.edge(Q));W.setEdge(Q,Object.assign({},j,Y(ae,z),p.pick(ae,A)))}),W}function T(I){let W=I.graph();W.ranksep/=2,I.edges().forEach(K=>{let Q=I.edge(K);Q.minlen*=2,Q.labelpos.toLowerCase()!=="c"&&(W.rankdir==="TB"||W.rankdir==="BT"?Q.width+=Q.labeloffset:Q.height+=Q.labeloffset)})}function O(I){I.edges().forEach(W=>{let K=I.edge(W);if(K.width&&K.height){let Q=I.node(W.v),ae={rank:(I.node(W.w).rank-Q.rank)/2+Q.rank,e:W};p.addDummyNode(I,"edge-proxy",ae,"_ep")}})}function P(I){let W=0;I.nodes().forEach(K=>{let Q=I.node(K);Q.borderTop&&(Q.minRank=I.node(Q.borderTop).rank,Q.maxRank=I.node(Q.borderBottom).rank,W=Math.max(W,Q.maxRank))}),I.graph().maxRank=W}function L(I){I.nodes().forEach(W=>{let K=I.node(W);K.dummy==="edge-proxy"&&(I.edge(K.e).labelRank=K.rank,I.removeNode(W))})}function H(I){let W=Number.POSITIVE_INFINITY,K=0,Q=Number.POSITIVE_INFINITY,ae=0,te=I.graph(),re=te.marginx||0,ue=te.marginy||0;function _e(ce){let pe=ce.x,xe=ce.y,De=ce.width,Be=ce.height;W=Math.min(W,pe-De/2),K=Math.max(K,pe+De/2),Q=Math.min(Q,xe-Be/2),ae=Math.max(ae,xe+Be/2)}I.nodes().forEach(ce=>_e(I.node(ce))),I.edges().forEach(ce=>{let pe=I.edge(ce);Object.hasOwn(pe,"x")&&_e(pe)}),W-=re,Q-=ue,I.nodes().forEach(ce=>{let pe=I.node(ce);pe.x-=W,pe.y-=Q}),I.edges().forEach(ce=>{let pe=I.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=K-W+re,te.height=ae-Q+ue}function M(I){I.edges().forEach(W=>{let K=I.edge(W),Q=I.node(W.v),ae=I.node(W.w),te,re;K.points?(te=K.points[0],re=K.points[K.points.length-1]):(K.points=[],te=ae,re=Q),K.points.unshift(p.intersectRect(Q,te)),K.points.push(p.intersectRect(ae,re))})}function V(I){I.edges().forEach(W=>{let K=I.edge(W);if(Object.hasOwn(K,"x"))switch((K.labelpos==="l"||K.labelpos==="r")&&(K.width-=K.labeloffset),K.labelpos){case"l":K.x-=K.width/2+K.labeloffset;break;case"r":K.x+=K.width/2+K.labeloffset;break}})}function B(I){I.edges().forEach(W=>{let K=I.edge(W);K.reversed&&K.points.reverse()})}function F(I){I.nodes().forEach(W=>{if(I.children(W).length){let K=I.node(W),Q=I.node(K.borderTop),ae=I.node(K.borderBottom),te=I.node(K.borderLeft[K.borderLeft.length-1]),re=I.node(K.borderRight[K.borderRight.length-1]);K.width=Math.abs(re.x-te.x),K.height=Math.abs(ae.y-Q.y),K.x=te.x+K.width/2,K.y=Q.y+K.height/2}}),I.nodes().forEach(W=>{I.node(W).dummy==="border"&&I.removeNode(W)})}function q(I){I.edges().forEach(W=>{if(W.v===W.w){var K=I.node(W.v);K.selfEdges||(K.selfEdges=[]),K.selfEdges.push({e:W,label:I.edge(W)}),I.removeEdge(W)}})}function G(I){var W=p.buildLayerMatrix(I);W.forEach(K=>{var Q=0;K.forEach((ae,te)=>{var re=I.node(ae);re.order=te+Q,(re.selfEdges||[]).forEach(ue=>{p.addDummyNode(I,"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(I){I.nodes().forEach(W=>{var K=I.node(W);if(K.dummy==="selfedge"){var Q=I.node(K.e.v),ae=Q.x+Q.width/2,te=Q.y,re=K.x-ae,ue=Q.height/2;I.setEdge(K.e,K.label),I.removeNode(W),K.label.points=[{x:ae+2*re/3,y:te-ue},{x:ae+5*re/6,y:te-ue},{x:ae+re,y:te},{x:ae+5*re/6,y:te+ue},{x:ae+2*re/3,y:te+ue}],K.label.x=K.x,K.label.y=K.y}})}function Y(I,W){return p.mapValues(p.pick(I,W),Number)}function Z(I){var W={};return I&&Object.entries(I).forEach(([K,Q])=>{typeof K=="string"&&(K=K.toLowerCase()),W[K]=Q}),W}return d$}var u$,wQ;function rqe(){if(wQ)return u$;wQ=1;let e=$n(),r=ll().Graph;u$={debugOrdering:n};function n(o){let a=e.buildLayerMatrix(o),i=new r({compound:!0,multigraph:!0}).setGraph({});return o.nodes().forEach(l=>{i.setNode(l,{label:l}),i.setParent(l,"layer"+o.node(l).rank)}),o.edges().forEach(l=>i.setEdge(l.v,l.w,{},l.name)),a.forEach((l,s)=>{let c="layer"+s;i.setNode(c,{rank:"same"}),l.reduce((d,u)=>(i.setEdge(d,u,{style:"invis"}),u))}),i}return u$}var kQ,_Q;function nqe(){return _Q||(_Q=1,kQ="1.1.8"),kQ}var SQ,EQ;function oqe(){return EQ||(EQ=1,SQ={graphlib:ll(),layout:tqe(),debug:rqe(),util:{time:$n().time,notime:$n().notime},version:nqe()}),SQ}var aqe=oqe();const e2=s7(aqe),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 iqe(){const e=new e2.graphlib.Graph({directed:!0,compound:!0,multigraph:!0});return e.setGraph({...co.dagre,rankdir:"LR"}),e.setDefaultEdgeLabel(()=>({...co.edgeLabel})),e.setDefaultNodeLabel(()=>({})),e}const p$="-port";function h$(e,r,n){const o=new Ln(i=>({id:`${e}-${i}`,portId:`${e}-${i}`})),a=Xb(r);for(const i of a.sorted){const l=a.children(i).length>0,s=i.id,c=`${e}-${s}`,d=l?`${c}${p$}`:c;o.set(s,{id:c,portId:d}),n.setNode(c,{column:e,element:i,isCompound:l,portId:d,inPorts:[],outPorts:[],width:co.nodeWidth,height:co.nodeHeight}),l&&(n.setNode(d,{element:i,portId:d,isCompound:l,inPorts:[],outPorts:[],width:co.nodeWidth-co.dagre.ranksep,height:co.compound.labelHeight}),n.setParent(d,c));const u=a.parent(i);u&&n.setParent(c,`${e}-${u.id}`)}return{...a,byId:i=>{const l=a.byId(i),s=o.get(l.id);return{element:l,graph:s}},graphNodes:o}}function lqe(e){return e2.layout(e,{}),r=>{const n=e.node(r),{x:o,y:a,width:i,height:l}=n;return{position:{x:o-Math.round(i/2),y:a-Math.round(l/2)},width:i,height:l}}}var t2;(e=>{e.Empty="@empty"})(t2||(t2={}));function sqe(e,r){const n=iqe(),o=h$("incomers",e.incomers,n),a=h$("subjects",e.subjects,n),i=h$("outgoers",e.outgoers,n),l=[];Jr(PEe(Jr(m1(e.incoming),un($=>({id:$.source.id,sourceFqn:$.source.id,targetFqn:$.target.id,source:o.byId($.source.id).graph,target:a.byId($.target.id).graph,relation:$}))),Jr(m1(e.outgoing),un($=>({id:$.target.id,sourceFqn:$.source.id,targetFqn:$.target.id,source:a.byId($.source.id).graph,target:i.byId($.target.id).graph,relation:$})))),un($=>({...$,expr:`${$.source.id}->${$.target.id}`})),nCe(Yu("expr")),tCe($=>{const z=$[0].source,j=$[0].target,A=$[0].expr;n.node(z.id).outPorts.push(j.id),n.node(j.id).inPorts.push(z.id),n.setEdge(z.portId,j.portId,{...co.edgeLabel},A),l.push({name:A,sourceFqn:$[0].sourceFqn,targetFqn:$[0].targetFqn,source:z.id,sourceHandle:z.id+"_out"+(n.node(z.id).outPorts.length-1),target:j.id,targetHandle:j.id+"_in"+(n.node(j.id).inPorts.length-1),relations:un($,Yu("relation"))})}));for(const $ of a.graphNodes.values()){const z=$.id,j=n.node(z);if(j.isCompound)continue;const A=Math.max(n.inEdges(z)?.length??0,n.outEdges(z)?.length??0);A>2&&(j.height=j.height+(A-3)*14)}const s=[...o.graphNodes.values(),...a.graphNodes.values(),...i.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 z of a.graphNodes.values())n.setEdge($,z.portId);s.push({id:$,portId:$})}if(i.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 z of a.graphNodes.values())n.setEdge(z.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=lqe(n),u=Jr(s,Wu($=>$.id===$.portId),Yx($=>[$.id,d($.id)]));function p($){return u[$]??=Jr(n.children($)??[],Wu(z=>!z.endsWith(p$)),un(z=>p(z)),YV(z=>{He(z.length>0,`Node ${$} has no nested nodes`)}),Zx((z,j)=>({minY:Math.min(z.minY,j.position.y),maxY:Math.max(z.maxY,j.position.y+j.height)}),{minY:1/0,maxY:-1/0}),({minY:z,maxY:j})=>{const{position:{x:A},width:R}=d($);return z=z-co.compound.paddingTop,j=j+co.compound.paddingBottom,{position:{x:A,y:z},width:R,height:j-z}})}function f($){const z=n.parent($);return z?f(z)+1:0}function g($){const z=n.children($)??[];return z.length===0?0:1+Math.max(...z.map(g))}const v=($,z,j)=>Jr(j,un((A,R)=>({port:$+"_"+z+R,topY:p(A).position.y})),Kx(Yu("topY")),un(Yu("port")));let w=0,x=0;const[k]=[...a.root];He(k,"Subjects should not be empty");let C=p(a.graphNodes.get(k.id).id);const _=s.map(({id:$})=>{const{element:z,inPorts:j,outPorts:A,column:R}=n.node($);let{position:T,width:O,height:P}=p($);if(!z){if(P=Math.min(C.height,300),T.y=C.position.y+C.height/2-P/2,R==="incomers")O=C.position.x-co.emptyNodeOffset-T.x;else{const q=T.x+O;T.x=C.position.x+C.width+co.emptyNodeOffset,O=q-T.x}return{id:$,parent:null,x:T.x,y:T.y,title:"empty node",description:null,technology:null,tags:[],links:[],color:"muted",shape:"rectangle",style:{border:"dashed",opacity:50},kind:t2.Empty,level:0,labelBBox:{x:T.x,y:T.y,width:O,height:P},children:[],width:O,height:P,column:R,ports:{in:[],out:[]},existsInCurrentView:!1}}const L=n.parent($),H=(n.children($)??[]).filter(q=>!q.endsWith(p$));w=Math.min(w,T.x),x=Math.min(x,T.y);const M=r?f1(z.scopedViews(),q=>q.id!==r.id)?.id??null:null,V=r?.findNodeWithElement(z.id),B=r&&!V?f1(z.ancestors(),q=>!!r.findNodeWithElement(q.id))?.id:null,F=V??(B&&r?.findNodeWithElement(B));return{id:$,parent:L??null,x:T.x,y:T.y,title:z.title,description:Os(z.$element)??null,technology:z.technology,tags:[...z.tags],links:null,color:F?.color??z.color,shape:V?.shape??z.shape,icon:V?.icon??z.icon??"none",modelRef:z.id,kind:z.kind,level:f($),labelBBox:{x:T.x,y:T.y,width:O,height:P},style:nd({...(V??F)?.style,...z.$element.style},["color","shape","icon"]),navigateTo:M,...H.length>0&&{depth:g($)},children:H,width:O,height:P,column:R,ports:{in:v($,"in",j),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(($,z)=>{const j=n.edge(z),A=z.name;if(!A)return $;const{name:R,source:T,sourceFqn:O,target:P,targetFqn:L,relations:H,sourceHandle:M,targetHandle:V}=mt(F1(l,U=>U.name===A)),B=Xx(H),F=B?.title??"untitled",q=H.length>1,G=Xx(Qx(H.flatMap(U=>U.navigateTo?.id?U.navigateTo.id:[])));return $.push(p1({id:R,sourceFqn:O,source:T,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:j.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 cqe(e,r,n){const o=Lo();return S.useMemo(()=>{const a=r?o.findView(r):null,i=sqe(ZO(e,o,r,n),n==="view"?a:null);return a&&(n==="global"||!i.subjectExistsInScope)&&(i.edges=i.edges.map(l=>(l.existsInCurrentView=l.relations.every(s=>a.includesRelation(s)),l))),Object.assign(i,{subject:e})},[o,e,r,n,ZO])}const Xy=(e,r)=>gb(e.label,r.label);function f$(e){return{label:e.title,value:e.id,children:[...e.children()].map(f$).sort(Xy)}}function dqe(e){const r=Lo();return S.useMemo(()=>e?[...r.view(e).roots()].map(f$).sort(Xy):[...r.roots()].map(f$).sort(Xy),[r,e??null])}const uqe=fe({margin:"0"}),pqe=fe({_hover:{backgroundColor:"mantine.colors.gray[0]",_dark:{backgroundColor:"mantine.colors.defaultHover",color:"mantine.colors.white"}}}),CQ=fe({maxHeight:["70vh","calc(100cqh - 70px)"]}),hqe=Object.freeze(Object.defineProperty({__proto__:null,label:pqe,node:uqe,scrollArea:CQ},Symbol.toStringTag,{value:"Module"})),fqe=[["path",{d:"M8 9l4 -4l4 4",key:"svg-0"}],["path",{d:"M16 15l-4 4l-4 -4",key:"svg-1"}]],m$=wt("outline","selector","Selector",fqe),mqe=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}},gqe=()=>{},yqe=S.memo(()=>{const e=Yy(),{subjectId:r,viewId:n,scope:o,subjectExistsInScope:a,enableSelectSubject:i,enableChangeScope:l}=Q3(mqe),s=S.useRef(null),c=S.useRef(null),d=Lo().findElement(r),u=dqe(o==="view"&&n?n:void 0),p=hy({multiple:!1});return p.setHoveredNode=gqe,S.useEffect(()=>{ku(r).reverse().forEach(f=>{p.expand(f)}),p.select(r)},[r]),y.jsxs(en,{ref:s,gap:"xs",pos:"relative",children:[i&&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(hd,{children:y.jsx(Vn,{size:"xs",variant:"default",maw:250,rightSection:y.jsx(m$,{size:16}),children:y.jsx(at,{fz:"xs",fw:"500",truncate:!0,children:d?.title??"???"})})}),y.jsx(Xs,{p:0,miw:250,maw:400,children:y.jsx(ta,{scrollbars:"y",type:"never",viewportRef:c,className:CQ,children:y.jsx(Pf,{allowRangeSelection:!1,selectOnClick:!1,tree:p,data:u,classNames:hqe,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(Sd,{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(at,{fz:"sm",fw:g?"600":"400",truncate:"end",children:f.label})})]})})})})]})})]}),l&&y.jsxs(en,{gap:4,wrap:"nowrap",children:[i&&y.jsx(Se,{fz:"xs",fw:"500",...!a&&{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:a,portalProps:{target:s.current},children:y.jsx(Mf,{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:!a}]})})})]})]})}),r2=(e,r)=>Math.abs(e-r)<2.5,vqe=(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)&&r2(e.sourceX,r.sourceX)&&r2(e.sourceY,r.sourceY)&&tt(e.sourceHandleId??null,r.sourceHandleId??null)&&tt(e.sourcePosition,r.sourcePosition)&&tt(e.target,r.target)&&r2(e.targetY,r.targetY)&&r2(e.targetX,r.targetX)&&tt(e.targetHandleId??null,r.targetHandleId??null)&&tt(e.targetPosition,r.targetPosition)&&tt(e.data,r.data);function g$(e){const r=S.memo(e,vqe);return r.displayName=`MemoEdge(${e.displayName||e.name})`,r}function $Q(e,r){return P3(e,r)}const vi=$Q("button"),zr=$Q("div"),Zy=S.forwardRef(({edgeProps:{id:e,data:{label:r,technology:n,hovered:o=!1},selected:a=!1,selectable:i=!1},pointerEvents:l="all",className:s,style:c,children:d,...u},p)=>{const f=u1(e)?BO(e):null,g=Kn(r)||Kn(n);return y.jsxs(zr,{ref:p,className:Ge("likec4-edge-label",eFe({pointerEvents:l,isStepEdge:f!==null,cursor:i||f!==null?"pointer":"default"}),s),"data-edge-id":e,animate:{scale:o&&!a?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:[Kn(r)&&y.jsx(hr,{lineClamp:5,className:"likec4-edge-label__text",children:r}),Kn(n)&&y.jsx(hr,{className:"likec4-edge-label__technology",children:"[ "+n+" ]"}),d]})]})});Zy.displayName="EdgeLabel";function n2({icon:e,onClick:r}){return y.jsx(lr,{className:Ge("nodrag nopan",JLe()),onPointerDownCapture:nn,onClick:r,role:"button",onDoubleClick:nn,children:e??y.jsx(gi,{})})}function Ky({className:e,component:r="g",selectable:n=!1,selected:o=!1,data:{color:a="gray",hovered:i=!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":a,"data-edge-dir":c.dir??"forward","data-edge-active":l,"data-edge-animated":d||l,"data-likec4-hovered":i,...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 bqe=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"})}),xqe=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})}),wqe=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})}),kqe=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"})}),_qe=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"})}),Sqe=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"})}),Eqe=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})}),Cqe=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})}),zQ={Arrow:xqe,Crow:wqe,OArrow:kqe,Open:bqe,Diamond:_qe,ODiamond:Sqe,Dot:Eqe,ODot:Cqe};function RQ(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:Xo(e)}}const Qy=S.forwardRef(({edgeProps:{id:e,data:{line:r,dir:n,tail:o,head:a},selectable:i=!0,style:l,interactionWidth:s},isDragging:c=!1,onEdgePointerDown:d,strokeWidth:u,svgPath:p},f)=>{let g=RQ(o),v=RQ(a??"normal");n==="back"&&([g,v]=[v,g]);const w=g?zQ[g]:null,x=v?zQ[v]:null,k=r==="dotted",C=k||r==="dashed";let _;k?_="1,8":C&&(_="8,10");const $=iFe();return y.jsxs(y.Fragment,{children:[i&&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,i&&"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})]})]})});Qy.displayName="EdgePath";const jQ=e=>{if(e!==void 0)return LV(e)?`${Math.round(e)}px`:e};function o2({edgeProps:{id:e,selected:r=!1,data:{hovered:n=!1,active:o=!1,dimmed:a=!1,labelBBox:i,color:l="gray"},animated:s},labelPosition:c,className:d,style:u,children:p,...f}){let g=pC(S.useCallback(k=>k.edgeLookup.get(e)?.zIndex??oc.Edge,[e]));(n||o)&&(g+=100);let v=c?.x??i?.x,w=c?.y??i?.y;if(v===void 0||w===void 0)return null;const x=c?.translate??"";return y.jsx(gV,{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},...a!==!1&&{"data-likec4-dimmed":a},style:{...i&&{maxWidth:i.width+18},zIndex:g,...u,transform:`translate(${jQ(v)}, ${jQ(w)}) ${x}`},children:p},e)})}const $qe=g$(e=>{const r=Yy(),{enableNavigateTo:n}=sr(),{data:{navigateTo:o,relations:a,existsInCurrentView:i}}=e,[l,s,c]=Ax(e),d=Nt(),u=a.length>1||!i,p=u?{...e,data:{...e.data,line:"solid",color:"amber"}}:e;let f=y.jsx(Zy,{edgeProps:p,className:fe({transition:"fast"}),children:n&&o&&y.jsx(n2,{...e,onClick:g=>{g.stopPropagation(),d.navigateTo(o)}})});return i||(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(Ky,{...p,children:[y.jsx(Qy,{edgeProps:p,svgPath:l,...u&&{strokeWidth:5}}),y.jsx(o2,{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})]})}),zqe=fe({width:"100%",height:"100%",border:"3px dashed",borderColor:"mantine.colors.defaultBorder",borderRadius:"md",display:"flex",justifyContent:"center",alignItems:"center"});function Rqe({data:{column:e}}){return y.jsx(Se,{className:zqe,children:y.jsxs(at,{c:"dimmed",fz:"lg",fw:500,children:["No ",e==="incomers"?"incoming":"outgoing"]})})}const jqe=e=>e.context.view.id;function a2(){const e=Hf();return pn(e,jqe)}const Tqe=e=>e.context.view;function Aqe(){const e=Hf();return pn(e,Tqe,Or)}const Dqe=[["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"}]],Jy=wt("outline","transform","Transform",Dqe),Mqe=[["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"}]],am=wt("outline","file-symlink","FileSymlink",Mqe),Nqe=[["path",{d:"M13 3l0 7l6 0l-8 11l0 -7l-6 0l8 -11",key:"svg-0"}]],Pqe=wt("outline","bolt","Bolt",Nqe),Bqe=qn({position:"absolute",zIndex:1,justifyContent:"center",alignItems:"center",_smallZoom:{display:"none"}}),Oqe=qn({gap:"1.5",justifyContent:"center",alignItems:"center"});function i2({selected:e=!1,data:{hovered:r=!1},buttons:n}){const o=ti();return n.length?y.jsx(hr,{className:Bqe,style:{top:"calc(100% - 30px)",transform:"translateX(-50%)",left:"50%",width:"auto",minHeight:30},children:y.jsx(zr,{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",Oqe),children:n.map((a,i)=>y.jsx(lr,{component:vi,className:L3({}),initial:!1,whileTap:{scale:1},whileHover:{scale:1.3},onClick:a.onClick,onDoubleClick:nn,children:a.icon||y.jsx(Pqe,{})},`${o}-${a.key??i}`))})}):null}const Iqe=e=>e.context.subject,Lqe=e=>{const{enableNavigateTo:r,enableVscode:n}=sr(),o=Nt(),a=a2(),i=Yy(),l=Q3(Iqe),{navigateTo:s,fqn:c}=e.data,d=S.useMemo(()=>{const u=[];return s&&r&&a!==s&&u.push({key:"navigate",icon:y.jsx(gi,{}),onClick:p=>{p.stopPropagation(),o.navigateTo(s)}}),c!==l&&u.push({key:"relationships",icon:y.jsx(Jy,{}),onClick:p=>{p.stopPropagation(),i.navigateTo(c,e.id)}}),n&&u.push({key:"goToSource",icon:y.jsx(am,{}),onClick:p=>{p.stopPropagation(),o.openSource({element:c})}}),u},[s,r,a,c,l,n,o,i,e.id]);return y.jsx(i2,{buttons:d,...e})};function e0({nodeProps:{data:{hovered:e=!1,dimmed:r=!1,...n}},className:o,children:a,style:i,...l}){let s=Qa(n.style.opacity??100,{min:0,max:100});const c=s<99,d=65,u=d+Qa((100-d)*(s/100),{min:0,max:100-d}),p=QLe({isTransparent:c,inverseColor:s<60,borderStyle:n.style.border??(c?"dashed":"none")}),f=Qa(n.depth??1,{min:1,max:5});return y.jsx(zr,{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:{...i,"--_border-transparency":`${u}%`,"--_compound-transparency":`${s}%`},...l,children:a})}function t0({data:e}){const r=tx({element:e,className:"likec4-compound-icon"});return y.jsxs("div",{className:"likec4-compound-title-container",children:[r,y.jsx(at,{component:"h3",className:"likec4-compound-title",truncate:"end",children:e.title})]})}const TQ=b1({base:{transitionDuration:"normal"},variants:{delay:{true:{transitionDelay:{base:"0.2s",_hover:"0s"}}}}}),Fqe=[["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"}]],y$=wt("outline","id","Id",Fqe);function AQ({data:{hovered:e=!1},icon:r,onClick:n}){const o=R7(e,e?130:0)[0]&&e;return y.jsx(zr,{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",TQ({delay:e&&!o}),L3({variant:"transparent"})),onClick:n,onDoubleClick:nn,children:r??y.jsx(y$,{stroke:1.8,style:{width:"75%"}})})})}const Vqe=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"}}),im=S.forwardRef(({nodeProps:{selected:e=!1,selectable:r=!1,data:{hovered:n=!1,dimmed:o=!1,...a}},className:i,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}=mb(a.style??{});return y.jsx(zr,{ref:d,className:Ge(Vqe,"group","likec4-element-node",i),initial:!1,...r&&{animate:{scale:u},whileTap:{scale:.98}},"data-likec4-hovered":n,"data-likec4-color":a.color,"data-likec4-shape":a.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})});im.displayName="ElementNodeContainer";function DQ(e,r,n=.065){const o=Math.round(e/2),a=o,i=Cd(n*o),l=r-2*i;return{path:` M ${e},${i} +`).map(l=>l.trim()).filter(Boolean):[r],o=n.length>1,[a,i]=S.useState(!1);return y.jsxs(y.Fragment,{children:[o?y.jsx(pr,{onClick:()=>{i(!a)},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(Zs,{align:"center",gap:"xs",children:[y.jsxs(at,{component:"span",size:"xs",fw:700,children:[e,":"]}),y.jsx(at,{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}),a?y.jsx(xC,{size:12}):y.jsx(Sd,{size:12})]})}):y.jsxs(at,{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(JFe,{values:n,isExpanded:a}):y.jsx(Se,{className:fe({minHeight:"32px",display:"flex",alignItems:"center"}),children:y.jsx(hK,{value:n[0]||"",isExpanded:a})})})]})}const tVe=fe({"&[data-level='1']":{marginBottom:"sm"}}),rVe=fe({cursor:"default",marginTop:"0",marginBottom:"0"}),fK=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)"}}}),nVe=Ge(fK),oVe=Ge(fK,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}})),aVe=[["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"}]],Gy=wt("outline","info-circle","InfoCircle",aVe),iVe=[["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"}]],lVe=wt("outline","target","Target",iVe),sVe=[["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"}]],gi=wt("outline","zoom-scan","ZoomScan",sVe),cVe=({node:e})=>y.jsxs(en,{className:nVe,gap:6,align:"baseline",wrap:"nowrap",children:[y.jsxs(at,{component:"div",fz:11,c:"dimmed",children:[e.kind,":"]}),y.jsx(at,{component:"div",fz:"sm",fw:"500",children:e.title})]}),dVe=({instance:e})=>{const r=Nt(),n=r.currentView.id,o=[...e.views()];return y.jsxs(en,{className:oVe,gap:4,children:[y.jsx($a,{color:"gray",variant:"transparent",size:"xs",flex:0,children:y.jsx(lVe,{stroke:1.2})}),y.jsx(at,{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(a=>y.jsx(tn.Item,{px:"xs",py:4,disabled:a.id===n,leftSection:y.jsx($a,{size:"sm",variant:"transparent",color:"gray",children:y.jsx(gi,{stroke:1.8,opacity:.65})}),styles:{itemSection:{marginInlineEnd:$e(8)}},onClick:i=>{i.stopPropagation(),r.navigateTo(a.id)},children:a.title},a.id))})]})]})]})},uVe=()=>{},pVe=S.memo(({elementFqn:e})=>{const r=Lo().element(e),n=[...r.deployments()],o=hy({multiple:!1});o.setHoveredNode=uVe;const a=S.useMemo(()=>{let i=[],l=new Map;for(const s of r.deployments()){let c={label:y.jsx(dVe,{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(cVe,{node:d}),value:d.id,type:"node",children:[c]},l.set(d.id,u),c=u,d=d.parent}!d&&!i.includes(c)&&i.push(c)}return i},[r]);return S.useEffect(()=>{o.expandAllNodes()},[a]),n.length===0?y.jsx(Yw,{variant:"light",color:"gray",icon:y.jsx(Gy,{}),children:"This element does not have any deployments"}):y.jsx(Pf,{levelOffset:"sm",allowRangeSelection:!1,classNames:{node:tVe,label:rVe},styles:{root:{position:"relative",width:"min-content",minWidth:300}},data:a,tree:o,renderNode:({node:i,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:i.label}):i.label})})}),hVe=()=>{},mK=(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]||Or(o,r[n])))return!1;return!0};function Ed(e,r,n,o){const a=wI();Fke(a?hVe:e,r,mK,o)}function fVe(){const e=typeof window<"u"&&typeof window.devicePixelRatio=="number"?window.devicePixelRatio:1;return Qa(Math.floor(e),{min:1,max:4})}let Z3;function Cd(e){return Z3??=fVe(),Z3<2?Math.round(e):Math.round(e*Z3)/Z3}function mVe(e){switch(e){case"dots":return Xi.Dots;case"lines":return Xi.Lines;case"cross":return Xi.Cross;default:Xo(e)}}const gVe=(e,r)=>typeof e.background=="string"&&typeof r.background=="string"?e.background===r.background:tt(e.background,r.background),gK=S.memo(({background:e})=>typeof e=="string"?y.jsx(vV,{variant:mVe(e),size:2,gap:20}):y.jsx(vV,{...e}),gVe);gK.displayName="Background";const yK=(e,r)=>(e.data.dimmed??!1)===r?e:{...e,data:{...e.data,dimmed:r}};function yVe(e,r){return r!==void 0?yK(e,r):n=>yK(n,e)}const vK=(e,r)=>(e.data.hovered??!1)===r?e:{...e,data:{...e.data,hovered:r}};function vVe(e,r){return r!==void 0?vK(e,r):n=>vK(n,e)}function bK(e,r){return BV(e.data,r)?e:{...e,data:{...e.data,...r}}}function bVe(e,r){return r!==void 0?bK(e,r):n=>bK(n,e)}const tr={setDimmed:yVe,setHovered:vVe,setData:bVe},oc={Compound:1,Edge:20,Element:20,Max:30},yi=.05,wC=3,K3={default:"16px",withControls:{top:"58px",left:"16px",right:"16px",bottom:"16px"}};function kC({nodes:e,edges:r,onEdgesChange:n,onNodesChange:o,className:a,pannable:i=!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:$,...z}){const j=S.useMemo(()=>({minZoom:yi,maxZoom:1,padding:f,includeHiddenNodes:!1}),[f]),A=d!=="transparent"&&d!=="solid",R=xFe(),T=hC(),{colorScheme:O}=nRe();return p||(p=O==="auto"?"system":O),y.jsxs(bSe,{colorMode:p,nodes:e,edges:r,className:Ge(d==="transparent"&&"bg-transparent",a),...R&&{"data-likec4-zoom-small":!0},zoomOnPinch:l,zoomOnScroll:!i&&l,...!l&&{zoomActivationKeyCode:null},zoomOnDoubleClick:v,maxZoom:l?wC:1,minZoom:l?yi:1,fitView:g,fitViewOptions:j,preventScrolling:l||i,defaultMarkerColor:"var(--xy-edge-stroke)",noDragClassName:"nodrag",noPanClassName:"nopan",noWheelClassName:"nowheel",panOnScroll:i,panOnDrag:i,...!i&&{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:it((P,{x:L,y:H,zoom:M})=>{const V=Cd(L),B=Cd(H);(L!==V||H!==B)&&T.setState({transform:[V,B,M]}),x?.(P,{x:V,y:B,zoom:M})}),onNodeMouseEnter:it((P,L)=>{if(k){k(P,L);return}o([{id:L.id,type:"replace",item:tr.setHovered(L,!0)}])}),onNodeMouseLeave:it((P,L)=>{if(C){C(P,L);return}o([{id:L.id,type:"replace",item:tr.setHovered(L,!1)}])}),onEdgeMouseEnter:it((P,L)=>{if(_){_(P,L);return}n([{id:L.id,type:"replace",item:tr.setHovered(L,!0)}])}),onEdgeMouseLeave:it((P,L)=>{if($){$(P,L);return}n([{id:L.id,type:"replace",item:tr.setHovered(L,!1)}])}),onNodeDoubleClick:nn,onEdgeDoubleClick:nn,...z,children:[A&&y.jsx(gK,{background:d}),w&&y.jsx(wVe,{onViewportResize:w}),u]})}const xVe=({width:e,height:r})=>(e||1)*(r||1),wVe=({onViewportResize:e})=>{const r=Dt(xVe);return Ed(e,[r]),null},xK=S.createContext(null);function wK(){return mt(S.useContext(xK),"No RelationshipsBrowserActorContext")}function Q3(e,r=Or){const n=wK();return pn(n,e,r)}function Yy(){const e=wK();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,kK;function SC(){if(kK)return _C;kK=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,a(this._preds[p],u),a(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],i(this._preds[p],u),i(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 a(d,u){d[u]?d[u]++:d[u]=1}function i(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 _K,SK;function kVe(){return SK||(SK=1,_K="2.2.4"),_K}var EK,CK;function _Ve(){return CK||(CK=1,EK={Graph:SC(),version:kVe()}),EK}var EC,$K;function SVe(){if($K)return EC;$K=1;var e=SC();EC={write:r,read:a};function r(i){var l={options:{directed:i.isDirected(),multigraph:i.isMultigraph(),compound:i.isCompound()},nodes:n(i),edges:o(i)};return i.graph()!==void 0&&(l.value=structuredClone(i.graph())),l}function n(i){return i.nodes().map(function(l){var s=i.node(l),c=i.parent(l),d={v:l};return s!==void 0&&(d.value=s),c!==void 0&&(d.parent=c),d})}function o(i){return i.edges().map(function(l){var s=i.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 a(i){var l=new e(i.options).setGraph(i.value);return i.nodes.forEach(function(s){l.setNode(s.v,s.value),s.parent&&l.setParent(s.v,s.parent)}),i.edges.forEach(function(s){l.setEdge({v:s.v,w:s.w,name:s.name},s.value)}),l}return EC}var CC,zK;function EVe(){if(zK)return CC;zK=1,CC=e;function e(r){var n={},o=[],a;function i(l){Object.hasOwn(n,l)||(n[l]=!0,a.push(l),r.successors(l).forEach(i),r.predecessors(l).forEach(i))}return r.nodes().forEach(function(l){a=[],i(l),a.length&&o.push(a)}),o}return CC}var $C,RK;function jK(){if(RK)return $C;RK=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 a=this._keyIndices;if(n=String(n),!Object.hasOwn(a,n)){var i=this._arr,l=i.length;return a[n]=l,i.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 a=this._keyIndices[n];if(o>this._arr[a].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[a].priority+" New: "+o);this._arr[a].priority=o,this._decrease(a)}_heapify(n){var o=this._arr,a=2*n,i=a+1,l=n;a>1,!(o[i].priority1;function n(a,i,l,s){return o(a,String(i),l||r,s||function(c){return a.outEdges(c)})}function o(a,i,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 zC}var RC,DK;function CVe(){if(DK)return RC;DK=1;var e=AK();RC=r;function r(n,o,a){return n.nodes().reduce(function(i,l){return i[l]=e(n,l,o,a),i},{})}return RC}var jC,MK;function NK(){if(MK)return jC;MK=1,jC=e;function e(r){var n=0,o=[],a={},i=[];function l(s){var c=a[s]={onStack:!0,lowlink:n,index:n++};if(o.push(s),r.successors(s).forEach(function(p){Object.hasOwn(a,p)?a[p].onStack&&(c.lowlink=Math.min(c.lowlink,a[p].index)):(l(p),c.lowlink=Math.min(c.lowlink,a[p].lowlink))}),c.lowlink===c.index){var d=[],u;do u=o.pop(),a[u].onStack=!1,d.push(u);while(s!==u);i.push(d)}}return r.nodes().forEach(function(s){Object.hasOwn(a,s)||l(s)}),i}return jC}var TC,PK;function $Ve(){if(PK)return TC;PK=1;var e=NK();TC=r;function r(n){return e(n).filter(function(o){return o.length>1||o.length===1&&n.hasEdge(o[0],o[0])})}return TC}var AC,BK;function zVe(){if(BK)return AC;BK=1,AC=r;var e=()=>1;function r(o,a,i){return n(o,a||e,i||function(l){return o.outEdges(l)})}function n(o,a,i){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})}),i(c).forEach(function(d){var u=d.v===c?d.w:d.v,p=a(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;xa.successors(p):p=>a.neighbors(p),c=l==="post"?r:n,d=[],u={};return i.forEach(p=>{if(!a.hasNode(p))throw new Error("Graph does not have node: "+p);c(p,s,u,d)}),d}function r(a,i,l,s){for(var c=[[a,!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(i(d[0]),u=>c.push([u,!1])))}}function n(a,i,l,s){for(var c=[a];c.length>0;){var d=c.pop();Object.hasOwn(l,d)||(l[d]=!0,s.push(d),o(i(d),u=>c.push(u)))}}function o(a,i){for(var l=a.length;l--;)i(a[l],l,a);return a}return NC}var PC,qK;function jVe(){if(qK)return PC;qK=1;var e=VK();PC=r;function r(n,o){return e(n,o,"post")}return PC}var BC,HK;function TVe(){if(HK)return BC;HK=1;var e=VK();BC=r;function r(n,o){return e(n,o,"pre")}return BC}var OC,UK;function AVe(){if(UK)return OC;UK=1;var e=SC(),r=jK();OC=n;function n(o,a){var i=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=a(p);v0;){if(c=s.removeMin(),Object.hasOwn(l,c))i.setEdge(c,l[c]);else{if(u)throw new Error("Input graph is not connected: "+o);u=!0}o.nodeEdges(c).forEach(d)}return i}return OC}var WK,GK;function DVe(){return GK||(GK=1,WK={components:EVe(),dijkstra:AK(),dijkstraAll:CVe(),findCycles:$Ve(),floydWarshall:zVe(),isAcyclic:RVe(),postorder:jVe(),preorder:TVe(),prim:AVe(),tarjan:NK(),topsort:IK()}),WK}var IC,YK;function ll(){if(YK)return IC;YK=1;var e=_Ve();return IC={Graph:e.Graph,json:SVe(),alg:DVe(),version:e.version},IC}var LC,XK;function MVe(){if(XK)return LC;XK=1;class e{constructor(){let a={};a._next=a._prev=a,this._sentinel=a}dequeue(){let a=this._sentinel,i=a._prev;if(i!==a)return r(i),i}enqueue(a){let i=this._sentinel;a._prev&&a._next&&r(a),a._next=i._next,i._next._prev=a,i._next=a,a._prev=i}toString(){let a=[],i=this._sentinel,l=i._prev;for(;l!==i;)a.push(JSON.stringify(l,n)),l=l._prev;return"["+a.join(", ")+"]"}}function r(o){o._prev._next=o._next,o._next._prev=o._prev,delete o._next,delete o._prev}function n(o,a){if(o!=="_next"&&o!=="_prev")return a}return LC=e,LC}var FC,ZK;function NVe(){if(ZK)return FC;ZK=1;let e=ll().Graph,r=MVe();FC=o;let n=()=>1;function o(d,u){if(d.nodeCount()<=1)return[];let p=l(d,u||n);return a(p.graph,p.buckets,p.zeroIdx).flatMap(f=>d.outEdges(f.v,f.w))}function a(d,u,p){let f=[],g=u[u.length-1],v=u[0],w;for(;d.nodeCount();){for(;w=v.dequeue();)i(d,u,p,w);for(;w=g.dequeue();)i(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(i(d,u,p,w,!0));break}}}return f}function i(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;pT.setNode(O,R.node(O))),R.edges().forEach(O=>{let P=T.edge(O.v,O.w)||{weight:0,minlen:1},L=R.edge(O);T.setEdge(O.v,O.w,{weight:P.weight+L.weight,minlen:Math.max(P.minlen,L.minlen)})}),T}function o(R){let T=new e({multigraph:R.isMultigraph()}).setGraph(R.graph());return R.nodes().forEach(O=>{R.children(O).length||T.setNode(O,R.node(O))}),R.edges().forEach(O=>{T.setEdge(O,R.edge(O))}),T}function a(R){let T=R.nodes().map(O=>{let P={};return R.outEdges(O).forEach(L=>{P[L.w]=(P[L.w]||0)+R.edge(L).weight}),P});return A(R.nodes(),T)}function i(R){let T=R.nodes().map(O=>{let P={};return R.inEdges(O).forEach(L=>{P[L.v]=(P[L.v]||0)+R.edge(L).weight}),P});return A(R.nodes(),T)}function l(R,T){let O=R.x,P=R.y,L=T.x-O,H=T.y-P,M=R.width/2,V=R.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:O+B,y:P+F}}function s(R){let T=$(v(R)+1).map(()=>[]);return R.nodes().forEach(O=>{let P=R.node(O),L=P.rank;L!==void 0&&(T[L][P.order]=O)}),T}function c(R){let T=R.nodes().map(P=>{let L=R.node(P).rank;return L===void 0?Number.MAX_VALUE:L}),O=g(Math.min,T);R.nodes().forEach(P=>{let L=R.node(P);Object.hasOwn(L,"rank")&&(L.rank-=O)})}function d(R){let T=R.nodes().map(M=>R.node(M).rank),O=g(Math.min,T),P=[];R.nodes().forEach(M=>{let V=R.node(M).rank-O;P[V]||(P[V]=[]),P[V].push(M)});let L=0,H=R.graph().nodeRankFactor;Array.from(P).forEach((M,V)=>{M===void 0&&V%H!==0?--L:M!==void 0&&L&&M.forEach(B=>R.node(B).rank+=L)})}function u(R,T,O,P){let L={width:0,height:0};return arguments.length>=4&&(L.rank=O,L.order=P),r(R,"border",L,T)}function p(R,T=f){const O=[];for(let P=0;Pf){const O=p(T);return R.apply(null,O.map(P=>R.apply(null,P)))}else return R.apply(null,T)}function v(R){const T=R.nodes().map(O=>{let P=R.node(O).rank;return P===void 0?Number.MIN_VALUE:P});return g(Math.max,T)}function w(R,T){let O={lhs:[],rhs:[]};return R.forEach(P=>{T(P)?O.lhs.push(P):O.rhs.push(P)}),O}function x(R,T){let O=Date.now();try{return T()}finally{console.log(R+" time: "+(Date.now()-O)+"ms")}}function k(R,T){return T()}let C=0;function _(R){var T=++C;return R+(""+T)}function $(R,T,O=1){T==null&&(T=R,R=0);let P=H=>HTP[T]),Object.entries(R).reduce((P,[L,H])=>(P[L]=O(H,L),P),{})}function A(R,T){return R.reduce((O,P,L)=>(O[P]=T[L],O),{})}return VC}var qC,QK;function PVe(){if(QK)return qC;QK=1;let e=NVe(),r=$n().uniqueId;qC={run:n,undo:a};function n(i){(i.graph().acyclicer==="greedy"?e(i,l(i)):o(i)).forEach(s=>{let c=i.edge(s);i.removeEdge(s),c.forwardName=s.name,c.reversed=!0,i.setEdge(s.w,s.v,c,r("rev"))});function l(s){return c=>s.edge(c).weight}}function o(i){let l=[],s={},c={};function d(u){Object.hasOwn(c,u)||(c[u]=!0,s[u]=!0,i.outEdges(u).forEach(p=>{Object.hasOwn(s,p.w)?l.push(p):d(p.w)}),delete s[u])}return i.nodes().forEach(d),l}function a(i){i.edges().forEach(l=>{let s=i.edge(l);if(s.reversed){i.removeEdge(l);let c=s.forwardName;delete s.reversed,delete s.forwardName,i.setEdge(l.w,l.v,s,c)}})}return qC}var HC,JK;function BVe(){if(JK)return HC;JK=1;let e=$n();HC={run:r,undo:o};function r(a){a.graph().dummyChains=[],a.edges().forEach(i=>n(a,i))}function n(a,i){let l=i.v,s=a.node(l).rank,c=i.w,d=a.node(c).rank,u=i.name,p=a.edge(i),f=p.labelRank;if(d===s+1)return;a.removeEdge(i);let g,v,w;for(w=0,++s;s{let l=a.node(i),s=l.edgeLabel,c;for(a.setEdge(l.edgeObj,s);l.dummy;)c=a.successors(i)[0],a.removeNode(i),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),i=c,l=a.node(i)})}return HC}var UC,eQ;function J3(){if(eQ)return UC;eQ=1;const{applyWithChunking:e}=$n();UC={longestPath:r,slack:n};function r(o){var a={};function i(l){var s=o.node(l);if(Object.hasOwn(a,l))return s.rank;a[l]=!0;let c=o.outEdges(l).map(u=>u==null?Number.POSITIVE_INFINITY:i(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(i)}function n(o,a){return o.node(a.w).rank-o.node(a.v).rank-o.edge(a).minlen}return UC}var WC,tQ;function rQ(){if(tQ)return WC;tQ=1;var e=ll().Graph,r=J3().slack;WC=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 a(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 WC}var GC,nQ;function OVe(){if(nQ)return GC;nQ=1;var e=rQ(),r=J3().slack,n=J3().longestPath,o=ll().alg.preorder,a=ll().alg.postorder,i=$n().simplify;GC=l,l.initLowLimValues=u,l.initCutValues=s,l.calcCutValue=d,l.leaveEdge=f,l.enterEdge=g,l.exchangeEdges=v;function l(C){C=i(C),n(C);var _=e(C);u(_),s(_,C);for(var $,z;$=f(_);)z=g(_,C,$),v(_,C,$,z)}function s(C,_){var $=a(C,C.nodes());$=$.slice(0,$.length-1),$.forEach(z=>c(C,_,z))}function c(C,_,$){var z=C.node($),j=z.parent;C.edge($,j).cutvalue=d(C,_,$)}function d(C,_,$){var z=C.node($),j=z.parent,A=!0,R=_.edge($,j),T=0;return R||(A=!1,R=_.edge(j,$)),T=R.weight,_.nodeEdges($).forEach(O=>{var P=O.v===$,L=P?O.w:O.v;if(L!==j){var H=P===A,M=_.edge(O).weight;if(T+=H?M:-M,x(C,$,L)){var V=C.edge($,L).cutvalue;T+=H?-V:V}}}),T}function u(C,_){arguments.length<2&&(_=C.nodes()[0]),p(C,{},1,_)}function p(C,_,$,z,j){var A=$,R=C.node(z);return _[z]=!0,C.neighbors(z).forEach(T=>{Object.hasOwn(_,T)||($=p(C,_,$,T,z))}),R.low=A,R.lim=$++,j?R.parent=j:delete R.parent,$}function f(C){return C.edges().find(_=>C.edge(_).cutvalue<0)}function g(C,_,$){var z=$.v,j=$.w;_.hasEdge(z,j)||(z=$.w,j=$.v);var A=C.node(z),R=C.node(j),T=A,O=!1;A.lim>R.lim&&(T=R,O=!0);var P=_.edges().filter(L=>O===k(C,C.node(L.v),T)&&O!==k(C,C.node(L.w),T));return P.reduce((L,H)=>r(_,H)!_.node(j).parent),z=o(C,$);z=z.slice(1),z.forEach(j=>{var A=C.node(j).parent,R=_.edge(j,A),T=!1;R||(R=_.edge(A,j),T=!0),_.node(j).rank=_.node(A).rank+(T?R.minlen:-R.minlen)})}function x(C,_,$){return C.hasEdge(_,$)}function k(C,_,$){return $.low<=_.lim&&_.lim<=$.lim}return GC}var YC,oQ;function IVe(){if(oQ)return YC;oQ=1;var e=J3(),r=e.longestPath,n=rQ(),o=OVe();YC=a;function a(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":i(c);break;case"none":break;default:s(c)}}var i=r;function l(c){r(c),n(c)}function s(c){o(c)}return YC}var XC,aQ;function LVe(){if(aQ)return XC;aQ=1,XC=e;function e(o){let a=n(o);o.graph().dummyChains.forEach(i=>{let l=o.node(i),s=l.edgeObj,c=r(o,a,s.v,s.w),d=c.path,u=c.lca,p=0,f=d[p],g=!0;for(;i!==s.w;){if(l=o.node(i),g){for(;(f=d[p])!==u&&o.node(f).maxRankd||u>a[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 a={},i=0;function l(s){let c=i;o.children(s).forEach(l),a[s]={low:c,lim:i++}}return o.children().forEach(l),a}return XC}var ZC,iQ;function FVe(){if(iQ)return ZC;iQ=1;let e=$n();ZC={run:r,cleanup:i};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=a(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,z=C.borderTop?d:2*d,j=_!==$?1:u-p[f]+1;l.setEdge(v,_,{weight:z,minlen:j,nestingEdge:!0}),l.setEdge($,w,{weight:z,minlen:j,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 a(l){return l.edges().reduce((s,c)=>s+l.edge(c).weight,0)}function i(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 ZC}var KC,lQ;function VVe(){if(lQ)return KC;lQ=1;let e=$n();KC=r;function r(o){function a(i){let l=o.children(i),s=o.node(i);if(l.length&&l.forEach(a),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 a(c){c.nodes().forEach(d=>i(c.node(d))),c.edges().forEach(d=>{let u=c.edge(d);u.points.forEach(i),Object.hasOwn(u,"y")&&i(u)})}function i(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 QC}var JC,cQ;function HVe(){if(cQ)return JC;cQ=1;let e=$n();JC=r;function r(n){let o={},a=n.nodes().filter(d=>!n.children(d).length),i=a.map(d=>n.node(d).rank),l=e.applyWithChunking(Math.max,i),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 a.sort((d,u)=>n.node(d).rank-n.node(u).rank).forEach(c),s}return JC}var e$,dQ;function UVe(){if(dQ)return e$;dQ=1;let e=$n().zipObject;e$=r;function r(o,a){let i=0;for(let l=1;lg)),s=a.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 e$}var t$,uQ;function WVe(){if(uQ)return t$;uQ=1,t$=e;function e(r,n=[]){return n.map(o=>{let a=r.inEdges(o);if(a.length){let i=a.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:i.sum/i.weight,weight:i.weight}}else return{v:o}})}return t$}var r$,pQ;function GVe(){if(pQ)return r$;pQ=1;let e=$n();r$=r;function r(a,i){let l={};a.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)}),i.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(a){let i=[];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&&a.push(d)}}for(;a.length;){let c=a.pop();i.push(c),c.in.reverse().forEach(l(c)),c.out.forEach(s(c))}return i.filter(c=>!c.merged).map(c=>e.pick(c,["vs","i","barycenter","weight"]))}function o(a,i){let l=0,s=0;a.weight&&(l+=a.barycenter*a.weight,s+=a.weight),i.weight&&(l+=i.barycenter*i.weight,s+=i.weight),a.vs=i.vs.concat(a.vs),a.barycenter=l/s,a.weight=s,a.i=Math.min(i.i,a.i),i.merged=!0}return r$}var n$,hQ;function YVe(){if(hQ)return n$;hQ=1;let e=$n();n$=r;function r(a,i){let l=e.partition(a,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(!!i)),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(a,i,l){let s;for(;i.length&&(s=i[i.length-1]).i<=l;)i.pop(),a.push(s.vs),l++;return l}function o(a){return(i,l)=>i.barycenterl.barycenter?1:a?l.i-i.i:i.i-l.i}return n$}var o$,fQ;function XVe(){if(fQ)return o$;fQ=1;let e=WVe(),r=GVe(),n=YVe();o$=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")&&i(C,_)}});let x=r(w,c);a(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 a(l,s){l.forEach(c=>{c.vs=c.vs.flatMap(d=>s[d]?s[d].vs:d)})}function i(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 o$}var a$,mQ;function ZVe(){if(mQ)return a$;mQ=1;let e=ll().Graph,r=$n();a$=n;function n(a,i,l,s){s||(s=a.nodes());let c=o(a),d=new e({compound:!0}).setGraph({root:c}).setDefaultNodeLabel(u=>a.node(u));return s.forEach(u=>{let p=a.node(u),f=a.parent(u);(p.rank===i||p.minRank<=i&&i<=p.maxRank)&&(d.setNode(u),d.setParent(u,f||c),a[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:a.edge(g).weight+x})}),Object.hasOwn(p,"minRank")&&d.setNode(u,{borderLeft:p.borderLeft[i],borderRight:p.borderRight[i]}))}),d}function o(a){for(var i;a.hasNode(i=r.uniqueId("_root")););return i}return a$}var i$,gQ;function KVe(){if(gQ)return i$;gQ=1,i$=e;function e(r,n,o){let a={},i;o.forEach(l=>{let s=r.parent(l),c,d;for(;s;){if(c=r.parent(s),c?(d=a[c],a[c]=s):(d=i,i=s),d&&d!==s){n.setEdge(d,s);return}s=c}})}return i$}var l$,yQ;function QVe(){if(yQ)return l$;yQ=1;let e=HVe(),r=UVe(),n=XVe(),o=ZVe(),a=KVe(),i=ll().Graph,l=$n();l$=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 z=r(p,x);z{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 i;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),a(v,g,x.vs)})}function u(p,f){Object.values(f).forEach(g=>g.forEach((v,w)=>p.node(v).order=w))}return l$}var s$,vQ;function JVe(){if(vQ)return s$;vQ=1;let e=ll().Graph,r=$n();s$={positionX:g,findType1Conflicts:n,findType2Conflicts:o,addConflict:i,hasConflict:l,verticalAlignment:s,horizontalCompaction:c,alignCoordinates:p,findSmallestWidthAlignment:u,balance:f};function n(x,k){let C={};function _($,z){let j=0,A=0,R=$.length,T=z[z.length-1];return z.forEach((O,P)=>{let L=a(x,O),H=L?x.node(L).order:R;(L||O===T)&&(z.slice(A,P+1).forEach(M=>{x.predecessors(M).forEach(V=>{let B=x.node(V),F=B.order;(F{O=z[P],x.node(O).dummy&&x.predecessors(O).forEach(L=>{let H=x.node(L);H.dummy&&(H.orderT)&&i(C,L,O)})})}function $(z,j){let A=-1,R,T=0;return j.forEach((O,P)=>{if(x.node(O).dummy==="border"){let L=x.predecessors(O);L.length&&(R=x.node(L[0]).order,_(j,T,P,A,R),T=P,A=R)}_(j,T,j.length,R,z.length)}),j}return k.length&&k.reduce($),C}function a(x,k){if(x.node(k).dummy)return x.predecessors(k).find(C=>x.node(C).dummy)}function i(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 $={},z={},j={};return k.forEach(A=>{A.forEach((R,T)=>{$[R]=R,z[R]=R,j[R]=T})}),k.forEach(A=>{let R=-1;A.forEach(T=>{let O=_(T);if(O.length){O=O.sort((L,H)=>j[L]-j[H]);let P=(O.length-1)/2;for(let L=Math.floor(P),H=Math.ceil(P);L<=H;++L){let M=O[L];z[T]===T&&RMath.max(L,z[H.v]+j.edge(H)),0)}function O(P){let L=j.outEdges(P).reduce((M,V)=>Math.min(M,z[V.w]-j.edge(V)),Number.POSITIVE_INFINITY),H=x.node(P);L!==Number.POSITIVE_INFINITY&&H.borderType!==A&&(z[P]=Math.max(z[P],L))}return R(T,j.predecessors.bind(j)),R(O,j.successors.bind(j)),Object.keys(_).forEach(P=>z[P]=z[C[P]]),z}function d(x,k,C,_){let $=new e,z=x.graph(),j=v(z.nodesep,z.edgesep,_);return k.forEach(A=>{let R;A.forEach(T=>{let O=C[T];if($.setNode(O),R){var P=C[R],L=$.edge(P,O);$.setEdge(P,O,Math.max(j(x,T,R),L||0))}R=T})}),$}function u(x,k){return Object.values(k).reduce((C,_)=>{let $=Number.NEGATIVE_INFINITY,z=Number.POSITIVE_INFINITY;Object.entries(_).forEach(([A,R])=>{let T=w(x,A)/2;$=Math.max(R+T,$),z=Math.min(R-T,z)});const j=$-z;return j{["l","r"].forEach(j=>{let A=z+j,R=x[A];if(R===k)return;let T=Object.values(R),O=_-r.applyWithChunking(Math.min,T);j!=="l"&&(O=$-r.applyWithChunking(Math.max,T)),O&&(x[A]=r.mapValues(R,P=>P+O))})})}function f(x,k){return r.mapValues(x.ul,(C,_)=>{if(k)return x[k.toLowerCase()][_];{let $=Object.values(x).map(z=>z[_]).sort((z,j)=>z-j);return($[1]+$[2])/2}})}function g(x){let k=r.buildLayerMatrix(x),C=Object.assign(n(x,k),o(x,k)),_={},$;["u","d"].forEach(j=>{$=j==="u"?k:Object.values(k).reverse(),["l","r"].forEach(A=>{A==="r"&&($=$.map(P=>Object.values(P).reverse()));let R=(j==="u"?x.predecessors:x.successors).bind(x),T=s(x,$,C,R),O=c(x,$,T.root,T.align,A==="r");A==="r"&&(O=r.mapValues(O,P=>-P)),_[j+A]=O})});let z=u(x,_);return p(_,z),f(_,x.graph().align)}function v(x,k,C){return(_,$,z)=>{let j=_.node($),A=_.node(z),R=0,T;if(R+=j.width/2,Object.hasOwn(j,"labelpos"))switch(j.labelpos.toLowerCase()){case"l":T=-j.width/2;break;case"r":T=j.width/2;break}if(T&&(R+=C?T:-T),T=0,R+=(j.dummy?k:x)/2,R+=(A.dummy?k:x)/2,R+=A.width/2,Object.hasOwn(A,"labelpos"))switch(A.labelpos.toLowerCase()){case"l":T=A.width/2;break;case"r":T=-A.width/2;break}return T&&(R+=C?T:-T),T=0,R}}function w(x,k){return x.node(k).width}return s$}var c$,bQ;function eqe(){if(bQ)return c$;bQ=1;let e=$n(),r=JVe().positionX;c$=n;function n(a){a=e.asNonCompoundGraph(a),o(a),Object.entries(r(a)).forEach(([i,l])=>a.node(i).x=l)}function o(a){let i=e.buildLayerMatrix(a),l=a.graph().ranksep,s=0;i.forEach(c=>{const d=c.reduce((u,p)=>{const f=a.node(p).height;return u>f?u:f},0);c.forEach(u=>a.node(u).y=s+d/2),s+=d+l})}return c$}var d$,xQ;function tqe(){if(xQ)return d$;xQ=1;let e=PVe(),r=BVe(),n=IVe(),o=$n().normalizeRanks,a=LVe(),i=$n().removeEmptyRanks,l=FVe(),s=VVe(),c=qVe(),d=QVe(),u=eqe(),p=$n(),f=ll().Graph;d$=g;function g(I,W){let K=W&&W.debugTiming?p.time:p.notime;K("layout",()=>{let Q=K(" buildLayoutGraph",()=>R(I));K(" runLayout",()=>v(Q,K,W)),K(" updateInputGraph",()=>w(I,Q))})}function v(I,W,K){W(" makeSpaceForEdgeLabels",()=>T(I)),W(" removeSelfEdges",()=>q(I)),W(" acyclic",()=>e.run(I)),W(" nestingGraph.run",()=>l.run(I)),W(" rank",()=>n(p.asNonCompoundGraph(I))),W(" injectEdgeLabelProxies",()=>O(I)),W(" removeEmptyRanks",()=>i(I)),W(" nestingGraph.cleanup",()=>l.cleanup(I)),W(" normalizeRanks",()=>o(I)),W(" assignRankMinMax",()=>P(I)),W(" removeEdgeLabelProxies",()=>L(I)),W(" normalize.run",()=>r.run(I)),W(" parentDummyChains",()=>a(I)),W(" addBorderSegments",()=>s(I)),W(" order",()=>d(I,K)),W(" insertSelfEdges",()=>G(I)),W(" adjustCoordinateSystem",()=>c.adjust(I)),W(" position",()=>u(I)),W(" positionSelfEdges",()=>U(I)),W(" removeBorderNodes",()=>F(I)),W(" normalize.undo",()=>r.undo(I)),W(" fixupEdgeLabelCoords",()=>V(I)),W(" undoCoordinateSystem",()=>c.undo(I)),W(" translateGraph",()=>H(I)),W(" assignNodeIntersects",()=>M(I)),W(" reversePoints",()=>B(I)),W(" acyclic.undo",()=>e.undo(I))}function w(I,W){I.nodes().forEach(K=>{let Q=I.node(K),ae=W.node(K);Q&&(Q.x=ae.x,Q.y=ae.y,Q.rank=ae.rank,W.children(K).length&&(Q.width=ae.width,Q.height=ae.height))}),I.edges().forEach(K=>{let Q=I.edge(K),ae=W.edge(K);Q.points=ae.points,Object.hasOwn(ae,"x")&&(Q.x=ae.x,Q.y=ae.y)}),I.graph().width=W.graph().width,I.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},z=["minlen","weight","width","height","labeloffset"],j={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},A=["labelpos"];function R(I){let W=new f({multigraph:!0,compound:!0}),K=Z(I.graph());return W.setGraph(Object.assign({},k,Y(K,x),p.pick(K,C))),I.nodes().forEach(Q=>{let ae=Z(I.node(Q));const te=Y(ae,_);Object.keys($).forEach(re=>{te[re]===void 0&&(te[re]=$[re])}),W.setNode(Q,te),W.setParent(Q,I.parent(Q))}),I.edges().forEach(Q=>{let ae=Z(I.edge(Q));W.setEdge(Q,Object.assign({},j,Y(ae,z),p.pick(ae,A)))}),W}function T(I){let W=I.graph();W.ranksep/=2,I.edges().forEach(K=>{let Q=I.edge(K);Q.minlen*=2,Q.labelpos.toLowerCase()!=="c"&&(W.rankdir==="TB"||W.rankdir==="BT"?Q.width+=Q.labeloffset:Q.height+=Q.labeloffset)})}function O(I){I.edges().forEach(W=>{let K=I.edge(W);if(K.width&&K.height){let Q=I.node(W.v),ae={rank:(I.node(W.w).rank-Q.rank)/2+Q.rank,e:W};p.addDummyNode(I,"edge-proxy",ae,"_ep")}})}function P(I){let W=0;I.nodes().forEach(K=>{let Q=I.node(K);Q.borderTop&&(Q.minRank=I.node(Q.borderTop).rank,Q.maxRank=I.node(Q.borderBottom).rank,W=Math.max(W,Q.maxRank))}),I.graph().maxRank=W}function L(I){I.nodes().forEach(W=>{let K=I.node(W);K.dummy==="edge-proxy"&&(I.edge(K.e).labelRank=K.rank,I.removeNode(W))})}function H(I){let W=Number.POSITIVE_INFINITY,K=0,Q=Number.POSITIVE_INFINITY,ae=0,te=I.graph(),re=te.marginx||0,ue=te.marginy||0;function _e(ce){let pe=ce.x,xe=ce.y,De=ce.width,Be=ce.height;W=Math.min(W,pe-De/2),K=Math.max(K,pe+De/2),Q=Math.min(Q,xe-Be/2),ae=Math.max(ae,xe+Be/2)}I.nodes().forEach(ce=>_e(I.node(ce))),I.edges().forEach(ce=>{let pe=I.edge(ce);Object.hasOwn(pe,"x")&&_e(pe)}),W-=re,Q-=ue,I.nodes().forEach(ce=>{let pe=I.node(ce);pe.x-=W,pe.y-=Q}),I.edges().forEach(ce=>{let pe=I.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=K-W+re,te.height=ae-Q+ue}function M(I){I.edges().forEach(W=>{let K=I.edge(W),Q=I.node(W.v),ae=I.node(W.w),te,re;K.points?(te=K.points[0],re=K.points[K.points.length-1]):(K.points=[],te=ae,re=Q),K.points.unshift(p.intersectRect(Q,te)),K.points.push(p.intersectRect(ae,re))})}function V(I){I.edges().forEach(W=>{let K=I.edge(W);if(Object.hasOwn(K,"x"))switch((K.labelpos==="l"||K.labelpos==="r")&&(K.width-=K.labeloffset),K.labelpos){case"l":K.x-=K.width/2+K.labeloffset;break;case"r":K.x+=K.width/2+K.labeloffset;break}})}function B(I){I.edges().forEach(W=>{let K=I.edge(W);K.reversed&&K.points.reverse()})}function F(I){I.nodes().forEach(W=>{if(I.children(W).length){let K=I.node(W),Q=I.node(K.borderTop),ae=I.node(K.borderBottom),te=I.node(K.borderLeft[K.borderLeft.length-1]),re=I.node(K.borderRight[K.borderRight.length-1]);K.width=Math.abs(re.x-te.x),K.height=Math.abs(ae.y-Q.y),K.x=te.x+K.width/2,K.y=Q.y+K.height/2}}),I.nodes().forEach(W=>{I.node(W).dummy==="border"&&I.removeNode(W)})}function q(I){I.edges().forEach(W=>{if(W.v===W.w){var K=I.node(W.v);K.selfEdges||(K.selfEdges=[]),K.selfEdges.push({e:W,label:I.edge(W)}),I.removeEdge(W)}})}function G(I){var W=p.buildLayerMatrix(I);W.forEach(K=>{var Q=0;K.forEach((ae,te)=>{var re=I.node(ae);re.order=te+Q,(re.selfEdges||[]).forEach(ue=>{p.addDummyNode(I,"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(I){I.nodes().forEach(W=>{var K=I.node(W);if(K.dummy==="selfedge"){var Q=I.node(K.e.v),ae=Q.x+Q.width/2,te=Q.y,re=K.x-ae,ue=Q.height/2;I.setEdge(K.e,K.label),I.removeNode(W),K.label.points=[{x:ae+2*re/3,y:te-ue},{x:ae+5*re/6,y:te-ue},{x:ae+re,y:te},{x:ae+5*re/6,y:te+ue},{x:ae+2*re/3,y:te+ue}],K.label.x=K.x,K.label.y=K.y}})}function Y(I,W){return p.mapValues(p.pick(I,W),Number)}function Z(I){var W={};return I&&Object.entries(I).forEach(([K,Q])=>{typeof K=="string"&&(K=K.toLowerCase()),W[K]=Q}),W}return d$}var u$,wQ;function rqe(){if(wQ)return u$;wQ=1;let e=$n(),r=ll().Graph;u$={debugOrdering:n};function n(o){let a=e.buildLayerMatrix(o),i=new r({compound:!0,multigraph:!0}).setGraph({});return o.nodes().forEach(l=>{i.setNode(l,{label:l}),i.setParent(l,"layer"+o.node(l).rank)}),o.edges().forEach(l=>i.setEdge(l.v,l.w,{},l.name)),a.forEach((l,s)=>{let c="layer"+s;i.setNode(c,{rank:"same"}),l.reduce((d,u)=>(i.setEdge(d,u,{style:"invis"}),u))}),i}return u$}var kQ,_Q;function nqe(){return _Q||(_Q=1,kQ="1.1.8"),kQ}var SQ,EQ;function oqe(){return EQ||(EQ=1,SQ={graphlib:ll(),layout:tqe(),debug:rqe(),util:{time:$n().time,notime:$n().notime},version:nqe()}),SQ}var aqe=oqe();const e2=s7(aqe),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 iqe(){const e=new e2.graphlib.Graph({directed:!0,compound:!0,multigraph:!0});return e.setGraph({...co.dagre,rankdir:"LR"}),e.setDefaultEdgeLabel(()=>({...co.edgeLabel})),e.setDefaultNodeLabel(()=>({})),e}const p$="-port";function h$(e,r,n){const o=new Ln(i=>({id:`${e}-${i}`,portId:`${e}-${i}`})),a=Xb(r);for(const i of a.sorted){const l=a.children(i).length>0,s=i.id,c=`${e}-${s}`,d=l?`${c}${p$}`:c;o.set(s,{id:c,portId:d}),n.setNode(c,{column:e,element:i,isCompound:l,portId:d,inPorts:[],outPorts:[],width:co.nodeWidth,height:co.nodeHeight}),l&&(n.setNode(d,{element:i,portId:d,isCompound:l,inPorts:[],outPorts:[],width:co.nodeWidth-co.dagre.ranksep,height:co.compound.labelHeight}),n.setParent(d,c));const u=a.parent(i);u&&n.setParent(c,`${e}-${u.id}`)}return{...a,byId:i=>{const l=a.byId(i),s=o.get(l.id);return{element:l,graph:s}},graphNodes:o}}function lqe(e){return e2.layout(e,{}),r=>{const n=e.node(r),{x:o,y:a,width:i,height:l}=n;return{position:{x:o-Math.round(i/2),y:a-Math.round(l/2)},width:i,height:l}}}var t2;(e=>{e.Empty="@empty"})(t2||(t2={}));function sqe(e,r){const n=iqe(),o=h$("incomers",e.incomers,n),a=h$("subjects",e.subjects,n),i=h$("outgoers",e.outgoers,n),l=[];Jr(PEe(Jr(m1(e.incoming),un($=>({id:$.source.id,sourceFqn:$.source.id,targetFqn:$.target.id,source:o.byId($.source.id).graph,target:a.byId($.target.id).graph,relation:$}))),Jr(m1(e.outgoing),un($=>({id:$.target.id,sourceFqn:$.source.id,targetFqn:$.target.id,source:a.byId($.source.id).graph,target:i.byId($.target.id).graph,relation:$})))),un($=>({...$,expr:`${$.source.id}->${$.target.id}`})),nCe(Yu("expr")),tCe($=>{const z=$[0].source,j=$[0].target,A=$[0].expr;n.node(z.id).outPorts.push(j.id),n.node(j.id).inPorts.push(z.id),n.setEdge(z.portId,j.portId,{...co.edgeLabel},A),l.push({name:A,sourceFqn:$[0].sourceFqn,targetFqn:$[0].targetFqn,source:z.id,sourceHandle:z.id+"_out"+(n.node(z.id).outPorts.length-1),target:j.id,targetHandle:j.id+"_in"+(n.node(j.id).inPorts.length-1),relations:un($,Yu("relation"))})}));for(const $ of a.graphNodes.values()){const z=$.id,j=n.node(z);if(j.isCompound)continue;const A=Math.max(n.inEdges(z)?.length??0,n.outEdges(z)?.length??0);A>2&&(j.height=j.height+(A-3)*14)}const s=[...o.graphNodes.values(),...a.graphNodes.values(),...i.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 z of a.graphNodes.values())n.setEdge($,z.portId);s.push({id:$,portId:$})}if(i.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 z of a.graphNodes.values())n.setEdge(z.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=lqe(n),u=Jr(s,Wu($=>$.id===$.portId),Yx($=>[$.id,d($.id)]));function p($){return u[$]??=Jr(n.children($)??[],Wu(z=>!z.endsWith(p$)),un(z=>p(z)),YV(z=>{He(z.length>0,`Node ${$} has no nested nodes`)}),Zx((z,j)=>({minY:Math.min(z.minY,j.position.y),maxY:Math.max(z.maxY,j.position.y+j.height)}),{minY:1/0,maxY:-1/0}),({minY:z,maxY:j})=>{const{position:{x:A},width:R}=d($);return z=z-co.compound.paddingTop,j=j+co.compound.paddingBottom,{position:{x:A,y:z},width:R,height:j-z}})}function f($){const z=n.parent($);return z?f(z)+1:0}function g($){const z=n.children($)??[];return z.length===0?0:1+Math.max(...z.map(g))}const v=($,z,j)=>Jr(j,un((A,R)=>({port:$+"_"+z+R,topY:p(A).position.y})),Kx(Yu("topY")),un(Yu("port")));let w=0,x=0;const[k]=[...a.root];He(k,"Subjects should not be empty");let C=p(a.graphNodes.get(k.id).id);const _=s.map(({id:$})=>{const{element:z,inPorts:j,outPorts:A,column:R}=n.node($);let{position:T,width:O,height:P}=p($);if(!z){if(P=Math.min(C.height,300),T.y=C.position.y+C.height/2-P/2,R==="incomers")O=C.position.x-co.emptyNodeOffset-T.x;else{const q=T.x+O;T.x=C.position.x+C.width+co.emptyNodeOffset,O=q-T.x}return{id:$,parent:null,x:T.x,y:T.y,title:"empty node",description:null,technology:null,tags:[],links:[],color:"muted",shape:"rectangle",style:{border:"dashed",opacity:50},kind:t2.Empty,level:0,labelBBox:{x:T.x,y:T.y,width:O,height:P},children:[],width:O,height:P,column:R,ports:{in:[],out:[]},existsInCurrentView:!1}}const L=n.parent($),H=(n.children($)??[]).filter(q=>!q.endsWith(p$));w=Math.min(w,T.x),x=Math.min(x,T.y);const M=r?f1(z.scopedViews(),q=>q.id!==r.id)?.id??null:null,V=r?.findNodeWithElement(z.id),B=r&&!V?f1(z.ancestors(),q=>!!r.findNodeWithElement(q.id))?.id:null,F=V??(B&&r?.findNodeWithElement(B));return{id:$,parent:L??null,x:T.x,y:T.y,title:z.title,description:Os(z.$element)??null,technology:z.technology,tags:[...z.tags],links:null,color:F?.color??z.color,shape:V?.shape??z.shape,icon:V?.icon??z.icon??"none",modelRef:z.id,kind:z.kind,level:f($),labelBBox:{x:T.x,y:T.y,width:O,height:P},style:nd({...(V??F)?.style,...z.$element.style},["color","shape","icon"]),navigateTo:M,...H.length>0&&{depth:g($)},children:H,width:O,height:P,column:R,ports:{in:v($,"in",j),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(($,z)=>{const j=n.edge(z),A=z.name;if(!A)return $;const{name:R,source:T,sourceFqn:O,target:P,targetFqn:L,relations:H,sourceHandle:M,targetHandle:V}=mt(F1(l,U=>U.name===A)),B=Xx(H),F=B?.title??"untitled",q=H.length>1,G=Xx(Qx(H.flatMap(U=>U.navigateTo?.id?U.navigateTo.id:[])));return $.push(p1({id:R,sourceFqn:O,source:T,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:j.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 cqe(e,r,n){const o=Lo();return S.useMemo(()=>{const a=r?o.findView(r):null,i=sqe(ZO(e,o,r,n),n==="view"?a:null);return a&&(n==="global"||!i.subjectExistsInScope)&&(i.edges=i.edges.map(l=>(l.existsInCurrentView=l.relations.every(s=>a.includesRelation(s)),l))),Object.assign(i,{subject:e})},[o,e,r,n,ZO])}const Xy=(e,r)=>gb(e.label,r.label);function f$(e){return{label:e.title,value:e.id,children:[...e.children()].map(f$).sort(Xy)}}function dqe(e){const r=Lo();return S.useMemo(()=>e?[...r.view(e).roots()].map(f$).sort(Xy):[...r.roots()].map(f$).sort(Xy),[r,e??null])}const uqe=fe({margin:"0"}),pqe=fe({_hover:{backgroundColor:"mantine.colors.gray[0]",_dark:{backgroundColor:"mantine.colors.defaultHover",color:"mantine.colors.white"}}}),CQ=fe({maxHeight:["70vh","calc(100cqh - 70px)"]}),hqe=Object.freeze(Object.defineProperty({__proto__:null,label:pqe,node:uqe,scrollArea:CQ},Symbol.toStringTag,{value:"Module"})),fqe=[["path",{d:"M8 9l4 -4l4 4",key:"svg-0"}],["path",{d:"M16 15l-4 4l-4 -4",key:"svg-1"}]],m$=wt("outline","selector","Selector",fqe),mqe=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}},gqe=()=>{},yqe=S.memo(()=>{const e=Yy(),{subjectId:r,viewId:n,scope:o,subjectExistsInScope:a,enableSelectSubject:i,enableChangeScope:l}=Q3(mqe),s=S.useRef(null),c=S.useRef(null),d=Lo().findElement(r),u=dqe(o==="view"&&n?n:void 0),p=hy({multiple:!1});return p.setHoveredNode=gqe,S.useEffect(()=>{ku(r).reverse().forEach(f=>{p.expand(f)}),p.select(r)},[r]),y.jsxs(en,{ref:s,gap:"xs",pos:"relative",children:[i&&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(hd,{children:y.jsx(Vn,{size:"xs",variant:"default",maw:250,rightSection:y.jsx(m$,{size:16}),children:y.jsx(at,{fz:"xs",fw:"500",truncate:!0,children:d?.title??"???"})})}),y.jsx(Xs,{p:0,miw:250,maw:400,children:y.jsx(ta,{scrollbars:"y",type:"never",viewportRef:c,className:CQ,children:y.jsx(Pf,{allowRangeSelection:!1,selectOnClick:!1,tree:p,data:u,classNames:hqe,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(Sd,{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(at,{fz:"sm",fw:g?"600":"400",truncate:"end",children:f.label})})]})})})})]})})]}),l&&y.jsxs(en,{gap:4,wrap:"nowrap",children:[i&&y.jsx(Se,{fz:"xs",fw:"500",...!a&&{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:a,portalProps:{target:s.current},children:y.jsx(Mf,{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:!a}]})})})]})]})}),r2=(e,r)=>Math.abs(e-r)<2.5,vqe=(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)&&r2(e.sourceX,r.sourceX)&&r2(e.sourceY,r.sourceY)&&tt(e.sourceHandleId??null,r.sourceHandleId??null)&&tt(e.sourcePosition,r.sourcePosition)&&tt(e.target,r.target)&&r2(e.targetY,r.targetY)&&r2(e.targetX,r.targetX)&&tt(e.targetHandleId??null,r.targetHandleId??null)&&tt(e.targetPosition,r.targetPosition)&&tt(e.data,r.data);function g$(e){const r=S.memo(e,vqe);return r.displayName=`MemoEdge(${e.displayName||e.name})`,r}function $Q(e,r){return P3(e,r)}const vi=$Q("button"),zr=$Q("div"),Zy=S.forwardRef(({edgeProps:{id:e,data:{label:r,technology:n,hovered:o=!1},selected:a=!1,selectable:i=!1},pointerEvents:l="all",className:s,style:c,children:d,...u},p)=>{const f=u1(e)?BO(e):null,g=Kn(r)||Kn(n);return y.jsxs(zr,{ref:p,className:Ge("likec4-edge-label",eFe({pointerEvents:l,isStepEdge:f!==null,cursor:i||f!==null?"pointer":"default"}),s),"data-edge-id":e,animate:{scale:o&&!a?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:[Kn(r)&&y.jsx(hr,{lineClamp:5,className:"likec4-edge-label__text",children:r}),Kn(n)&&y.jsx(hr,{className:"likec4-edge-label__technology",children:"[ "+n+" ]"}),d]})]})});Zy.displayName="EdgeLabel";function n2({icon:e,onClick:r}){return y.jsx(lr,{className:Ge("nodrag nopan",JLe()),onPointerDownCapture:nn,onClick:r,role:"button",onDoubleClick:nn,children:e??y.jsx(gi,{})})}function Ky({className:e,component:r="g",selectable:n=!1,selected:o=!1,data:{color:a="gray",hovered:i=!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":a,"data-edge-dir":c.dir??"forward","data-edge-active":l,"data-edge-animated":d||l,"data-likec4-hovered":i,...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 bqe=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"})}),xqe=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})}),wqe=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})}),kqe=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"})}),_qe=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"})}),Sqe=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"})}),Eqe=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})}),Cqe=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})}),zQ={Arrow:xqe,Crow:wqe,OArrow:kqe,Open:bqe,Diamond:_qe,ODiamond:Sqe,Dot:Eqe,ODot:Cqe};function RQ(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:Xo(e)}}const Qy=S.forwardRef(({edgeProps:{id:e,data:{line:r,dir:n,tail:o,head:a},selectable:i=!0,style:l,interactionWidth:s},isDragging:c=!1,onEdgePointerDown:d,strokeWidth:u,svgPath:p},f)=>{let g=RQ(o),v=RQ(a??"normal");n==="back"&&([g,v]=[v,g]);const w=g?zQ[g]:null,x=v?zQ[v]:null,k=r==="dotted",C=k||r==="dashed";let _;k?_="1,8":C&&(_="8,10");const $=iFe();return y.jsxs(y.Fragment,{children:[i&&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,i&&"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})]})]})});Qy.displayName="EdgePath";const jQ=e=>{if(e!==void 0)return LV(e)?`${Math.round(e)}px`:e};function o2({edgeProps:{id:e,selected:r=!1,data:{hovered:n=!1,active:o=!1,dimmed:a=!1,labelBBox:i,color:l="gray"},animated:s},labelPosition:c,className:d,style:u,children:p,...f}){let g=pC(S.useCallback(k=>k.edgeLookup.get(e)?.zIndex??oc.Edge,[e]));(n||o)&&(g+=100);let v=c?.x??i?.x,w=c?.y??i?.y;if(v===void 0||w===void 0)return null;const x=c?.translate??"";return y.jsx(gV,{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},...a!==!1&&{"data-likec4-dimmed":a},style:{...i&&{maxWidth:i.width+18},zIndex:g,...u,transform:`translate(${jQ(v)}, ${jQ(w)}) ${x}`},children:p},e)})}const $qe=g$(e=>{const r=Yy(),{enableNavigateTo:n}=sr(),{data:{navigateTo:o,relations:a,existsInCurrentView:i}}=e,[l,s,c]=Ax(e),d=Nt(),u=a.length>1||!i,p=u?{...e,data:{...e.data,line:"solid",color:"amber"}}:e;let f=y.jsx(Zy,{edgeProps:p,className:fe({transition:"fast"}),children:n&&o&&y.jsx(n2,{...e,onClick:g=>{g.stopPropagation(),d.navigateTo(o)}})});return i||(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(Ky,{...p,children:[y.jsx(Qy,{edgeProps:p,svgPath:l,...u&&{strokeWidth:5}}),y.jsx(o2,{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})]})}),zqe=fe({width:"100%",height:"100%",border:"3px dashed",borderColor:"mantine.colors.defaultBorder",borderRadius:"md",display:"flex",justifyContent:"center",alignItems:"center"});function Rqe({data:{column:e}}){return y.jsx(Se,{className:zqe,children:y.jsxs(at,{c:"dimmed",fz:"lg",fw:500,children:["No ",e==="incomers"?"incoming":"outgoing"]})})}const jqe=e=>e.context.view.id;function a2(){const e=Hf();return pn(e,jqe)}const Tqe=e=>e.context.view;function Aqe(){const e=Hf();return pn(e,Tqe,Or)}const Dqe=[["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"}]],Jy=wt("outline","transform","Transform",Dqe),Mqe=[["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"}]],am=wt("outline","file-symlink","FileSymlink",Mqe),Nqe=[["path",{d:"M13 3l0 7l6 0l-8 11l0 -7l-6 0l8 -11",key:"svg-0"}]],Pqe=wt("outline","bolt","Bolt",Nqe),Bqe=qn({position:"absolute",zIndex:1,justifyContent:"center",alignItems:"center",_smallZoom:{display:"none"}}),Oqe=qn({gap:"1.5",justifyContent:"center",alignItems:"center"});function i2({selected:e=!1,data:{hovered:r=!1},buttons:n}){const o=ti();return n.length?y.jsx(hr,{className:Bqe,style:{top:"calc(100% - 30px)",transform:"translateX(-50%)",left:"50%",width:"auto",minHeight:30},children:y.jsx(zr,{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",Oqe),children:n.map((a,i)=>y.jsx(lr,{component:vi,className:L3({}),initial:!1,whileTap:{scale:1},whileHover:{scale:1.3},onClick:a.onClick,onDoubleClick:nn,children:a.icon||y.jsx(Pqe,{})},`${o}-${a.key??i}`))})}):null}const Iqe=e=>e.context.subject,Lqe=e=>{const{enableNavigateTo:r,enableVscode:n}=sr(),o=Nt(),a=a2(),i=Yy(),l=Q3(Iqe),{navigateTo:s,fqn:c}=e.data,d=S.useMemo(()=>{const u=[];return s&&r&&a!==s&&u.push({key:"navigate",icon:y.jsx(gi,{}),onClick:p=>{p.stopPropagation(),o.navigateTo(s)}}),c!==l&&u.push({key:"relationships",icon:y.jsx(Jy,{}),onClick:p=>{p.stopPropagation(),i.navigateTo(c,e.id)}}),n&&u.push({key:"goToSource",icon:y.jsx(am,{}),onClick:p=>{p.stopPropagation(),o.openSource({element:c})}}),u},[s,r,a,c,l,n,o,i,e.id]);return y.jsx(i2,{buttons:d,...e})};function e0({nodeProps:{data:{hovered:e=!1,dimmed:r=!1,...n}},className:o,children:a,style:i,...l}){let s=Qa(n.style.opacity??100,{min:0,max:100});const c=s<99,d=65,u=d+Qa((100-d)*(s/100),{min:0,max:100-d}),p=QLe({isTransparent:c,inverseColor:s<60,borderStyle:n.style.border??(c?"dashed":"none")}),f=Qa(n.depth??1,{min:1,max:5});return y.jsx(zr,{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:{...i,"--_border-transparency":`${u}%`,"--_compound-transparency":`${s}%`},...l,children:a})}function t0({data:e}){const r=tx({element:e,className:"likec4-compound-icon"});return y.jsxs("div",{className:"likec4-compound-title-container",children:[r,y.jsx(at,{component:"h3",className:"likec4-compound-title",truncate:"end",children:e.title})]})}const TQ=b1({base:{transitionDuration:"normal"},variants:{delay:{true:{transitionDelay:{base:"0.2s",_hover:"0s"}}}}}),Fqe=[["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"}]],y$=wt("outline","id","Id",Fqe);function AQ({data:{hovered:e=!1},icon:r,onClick:n}){const o=R7(e,e?130:0)[0]&&e;return y.jsx(zr,{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",TQ({delay:e&&!o}),L3({variant:"transparent"})),onClick:n,onDoubleClick:nn,children:r??y.jsx(y$,{stroke:1.8,style:{width:"75%"}})})})}const Vqe=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"}}),im=S.forwardRef(({nodeProps:{selected:e=!1,selectable:r=!1,data:{hovered:n=!1,dimmed:o=!1,...a}},className:i,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}=mb(a.style??{});return y.jsx(zr,{ref:d,className:Ge(Vqe,"group","likec4-element-node",i),initial:!1,...r&&{animate:{scale:u},whileTap:{scale:.98}},"data-likec4-hovered":n,"data-likec4-color":a.color,"data-likec4-shape":a.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})});im.displayName="ElementNodeContainer";function DQ(e,r,n=.065){const o=Math.round(e/2),a=o,i=Cd(n*o),l=r-2*i;return{path:` M ${e},${i} a ${a},${i} 0,0,0 ${-e} 0 l 0,${l} a ${a},${i} 0,0,0 ${e} 0 @@ -144,11 +144,11 @@ ${p.message}`)}if(u){a.push(...s.actions),i=s;break}}return i?[i]:void 0}get eve a ${i},${a} 0,0,0 0 ${o} l ${l},0 a ${i},${a} 0,0,0 0 ${-o} - z`.replace(/\s+/g," ").trim(),ry:a,rx:i}}const xp={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 NQ({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-xp.width-6,y:n-xp.height,width:xp.width,height:xp.height,viewBox:`0 0 ${xp.width} ${xp.height}`,"data-likec4-fill":"mix-stroke",children:y.jsx("path",{strokeWidth:0,d:xp.path})})]});case"queue":{const{path:o,rx:a,ry:i}=MQ(r,n);return y.jsxs(y.Fragment,{children:[y.jsx("path",{d:o,strokeWidth:2}),y.jsx("ellipse",{cx:a,cy:i,ry:i-.75,rx:a,"data-likec4-fill":"mix-stroke",strokeWidth:2})]})}case"storage":case"cylinder":{const{path:o,rx:a,ry:i}=DQ(r,n);return y.jsxs(y.Fragment,{children:[y.jsx("path",{d:o,strokeWidth:2}),y.jsx("ellipse",{cx:a,cy:i,ry:i,rx:a-.75,"data-likec4-fill":"mix-stroke",strokeWidth:2})]})}default:return Xo(e)}}function qqe({shape:e,w:r,h:n}){let o;switch(e){case"queue":o=y.jsx("path",{d:MQ(r,n).path});break;case"storage":case"cylinder":{o=y.jsx("path",{d:DQ(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 Hqe({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 lm({data:e,width:r,height:n,showSeletionOutline:o=!0}){let a=r&&r>10?r:e.width,i=n&&n>10?n:e.height;const l=e.style?.multiple??!1;if(e.shape==="rectangle")return y.jsx(Hqe,{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 ${a} ${i}`,children:y.jsx(NQ,{shape:e.shape,w:a,h:i})}),y.jsxs("svg",{className:s,viewBox:`0 0 ${a} ${i}`,children:[o&&y.jsx(qqe,{shape:e.shape,w:a,h:i}),y.jsx(NQ,{shape:e.shape,w:a,h:i})]})]})}const wp=S.forwardRef(({value:e,textScale:r=1,uselikec4palette:n=!1,hideIfEmpty:o=!1,emptyText:a="no content",className:i,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(at,{component:"span",fz:"xs",c:"dimmed",style:{userSelect:"none"},children:a})};return y.jsx(hr,{ref:d,...c,className:Ge(cFe({uselikec4palette:n,value:e.isMarkdown?"markdown":"plaintext"}),i),style:{...l,...s&&{"--text-fz":`var(--font-sizes-${s}, var(--font-sizes-md))`},...r!==1&&{"--mantine-scale":r}},...u})});wp.displayName="Markdown";const PQ=S.forwardRef(({className:e,...r},n)=>y.jsx("div",{...r,ref:n,className:Ge(e,lFe(),"likec4-element")})),BQ=({data:e,...r})=>y.jsx(tx,{element:e,...r}),OQ=S.forwardRef(({className:e,...r},n)=>y.jsx("div",{...r,className:Ge(e,"likec4-element-node-content"),ref:n})),IQ=S.forwardRef(({data:{title:e,style:r},className:n,...o},a)=>{const{size:i}=mb(r),l=i==="sm"||i==="xs";return y.jsx(at,{component:"div",...o,className:Ge(n,"likec4-element-title"),"data-likec4-node-title":"",lineClamp:l?2:3,ref:a,children:e})}),LQ=S.forwardRef(({data:e,children:r,className:n,...o},a)=>{const i=e?.technology??r;return Kn(i)?y.jsx(at,{component:"div",...o,className:Ge(n,"likec4-element-technology"),"data-likec4-node-technology":"",ref:a,children:i}):null}),FQ=S.forwardRef(({data:{description:e,style:r},className:n,...o},a)=>{if(!e)return null;const i=ur.from(e),{size:l}=mb(r);return y.jsx(wp,{...o,className:Ge(n,"likec4-element-description",fe({lineClamp:l==="sm"||l==="xs"?3:5})),"data-likec4-node-description":"",value:i,uselikec4palette:!0,hideIfEmpty:!0,style:{maxHeight:i.isMarkdown?"8rem":void 0},ref:a})});function sl({iconSize:e,data:r}){return y.jsxs(PQ,{style:LV(e)?{"--likec4-icon-size":`${e}px`}:void 0,children:[y.jsx(BQ,{data:r}),y.jsxs(OQ,{children:[y.jsx(IQ,{data:r}),y.jsx(LQ,{data:r}),y.jsx(FQ,{data:r})]})]})}sl.Root=PQ,sl.Icon=BQ,sl.Content=OQ,sl.Title=IQ,sl.Technology=LQ,sl.Description=FQ;const Uqe=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 v$({selected:e=!1,data:{hovered:r=!1},icon:n,onClick:o}){return y.jsx(hr,{className:Ge(Uqe,"details-button"),children:y.jsx(lr,{className:Ge("nodrag nopan",L3({variant:"transparent"})),component:vi,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(y$,{stroke:1.8,style:{width:"75%"}})})})}const Wqe=e=>{const r=Nt();return y.jsx(v$,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}})};function Gqe(e){const{enableElementTags:r}=sr();return y.jsxs(im,{layoutId:e.id,nodeProps:e,children:[y.jsx(lm,{...e}),y.jsx(sl,{...e}),r&&y.jsx(Wy,{...e}),y.jsx(Wqe,{...e}),y.jsx(Lqe,{...e}),y.jsx(Xqe,{...e})]},e.id)}function Yqe(e){const r=Nt();return y.jsxs(e0,{layoutId:e.id,nodeProps:e,children:[y.jsx(t0,{...e}),y.jsx(AQ,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}}),y.jsx(Zqe,{...e})]},e.id)}const Xqe=({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))]}),Zqe=({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))]}),Kqe=[["path",{d:"M15 6l-6 6l6 6",key:"svg-0"}]],VQ=wt("outline","chevron-left","ChevronLeft",Kqe),Qqe={element:Gqe,compound:Yqe,empty:Rqe},Jqe={relationship:$qe};function qQ({actorRef:e}){const r=S.useRef(null);return r.current==null&&(r.current={initialNodes:[],initialEdges:[]}),y.jsx(xK.Provider,{value:e,children:y.jsx(qx,{...r.current,children:y.jsx(rm,{id:e.sessionId,inherit:!1,children:y.jsx(Cn,{children:y.jsx(rHe,{})})})})})}const eHe=e=>({isActive:e.hasTag("active"),nodes:e.context.xynodes,edges:e.context.xyedges}),tHe=(e,r)=>e.isActive===r.isActive&&Or(e.nodes,r.nodes)&&Or(e.edges,r.edges),rHe=S.memo(()=>{const e=Yy(),{isActive:r,nodes:n,edges:o}=Q3(eHe,tHe);return y.jsx(kC,{id:e.rootElementId,nodes:n,edges:o,className:Ge(r?"initialized":"not-initialized","relationships-browser"),nodeTypes:Qqe,edgeTypes:Jqe,fitView:!1,onNodeClick:it((a,i)=>{a.stopPropagation(),e.send({type:"xyflow.nodeClick",node:i})}),onEdgeClick:it((a,i)=>{a.stopPropagation(),e.send({type:"xyflow.edgeClick",edge:i})}),onPaneClick:it(a=>{a.stopPropagation(),e.send({type:"xyflow.paneClick"})}),onDoubleClick:it(a=>{e.send({type:"xyflow.paneDblClick"})}),onViewportResize:it(()=>{e.send({type:"xyflow.resized"})}),onNodesChange:it(a=>{e.send({type:"xyflow.applyNodeChanges",changes:a})}),onEdgesChange:it(a=>{e.send({type:"xyflow.applyEdgeChanges",changes:a})}),onEdgeMouseEnter:it((a,i)=>{i.data.hovered||e.send({type:"xyflow.edgeMouseEnter",edge:i})}),onEdgeMouseLeave:it((a,i)=>{i.data.hovered&&e.send({type:"xyflow.edgeMouseLeave",edge:i})}),onSelectionChange:it(a=>{e.send({type:"xyflow.selectionChange",...a})}),nodesDraggable:!1,nodesSelectable:!0,pannable:!0,zoomable:!0,children:y.jsx(oHe,{})})}),nHe=e=>({subjectId:e.context.subject,viewId:e.context.viewId,scope:e.context.scope,closeable:e.context.closeable}),oHe=S.memo(()=>{const e=Yy(),{subjectId:r,viewId:n,scope:o,closeable:a}=Q3(nHe),i=vr(),l=cf();S.useEffect(()=>{l.viewportInitialized&&e.send({type:"xyflow.init",instance:l,store:i})},[i,l.viewportInitialized,e]);const s=cqe(r,n,o),[c,d,{history:u,current:p}]=jq(r);S.useEffect(()=>{c!==r&&d.set(r)},[r]),S.useEffect(()=>{c!==r&&e.navigateTo(c)},[c,e]),kI(()=>{e.updateView(s)},[s,e]);const f=p>0,g=p+1d.back(),onStepForward:()=>d.forward()}),a&&y.jsx(ed,{position:"top-right",children:y.jsx(lr,{variant:"default",color:"gray",onClick:v=>{v.stopPropagation(),e.close()},children:y.jsx(lp,{})})})]})}),aHe=({hasStepBack:e,hasStepForward:r,onStepBack:n,onStepForward:o})=>y.jsx(ed,{position:"top-left",children:y.jsxs(en,{gap:4,wrap:"nowrap",children:[y.jsxs(Cn,{mode:"popLayout",children:[e&&y.jsx(pi.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:a=>{a.stopPropagation(),n()},children:y.jsx(VQ,{})})},"back"),r&&y.jsx(pi.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:a=>{a.stopPropagation(),o()},children:y.jsx(Sd,{})})},"forward")]}),y.jsx(yqe,{})]})}),iHe=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)"}),lHe=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]"}}}),sHe=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 cHe=[["path",{d:"M5 12l14 0",key:"svg-0"}],["path",{d:"M13 18l6 -6",key:"svg-1"}],["path",{d:"M13 6l6 6",key:"svg-2"}]],sm=wt("outline","arrow-right","ArrowRight",cHe),dHe=[["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"}]],HQ=wt("outline","external-link","ExternalLink",dHe),uHe=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,withinPortal:!1});function pHe({node:e,element:r}){const n=Nt(),o=KLe(),a=pn(o,S.useCallback(u=>u.children[`${o.id}-relationships`],[o.id])),i=[...r.incoming()].map(u=>u.id),l=[...r.outgoing()].map(u=>u.id),s=e?Qx([...e.incoming()].flatMap(u=>u.$edge.relations)):[],c=e?Qx([...e.outgoing()].flatMap(u=>u.$edge.relations)):[],d=[...i,...l].filter(u=>!s.includes(u)&&!c.includes(u)).length;return y.jsxs(Io,{gap:"xs",pos:"relative",w:"100%",h:"100%",children:[i.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(UQ,{title:"incoming",total:i.length,included:s.length}),y.jsx($a,{size:"sm",variant:"transparent",c:"dimmed",children:y.jsx(sm,{style:{width:16}})}),y.jsx(at,{className:iHe,children:qg(r.id)}),y.jsx($a,{size:"sm",variant:"transparent",c:"dimmed",children:y.jsx(sm,{style:{width:16}})}),y.jsx(UQ,{title:"outgoing",total:l.length,included:c.length})]})}),d>0&&y.jsx(uHe,{label:"Current view does not include some relationships",children:y.jsxs(en,{mt:"xs",gap:6,c:"orange",style:{cursor:"pointer"},children:[y.jsx(Gy,{style:{width:14}}),y.jsxs(at,{fz:"sm",children:[d," relationship",d>1?"s are":" is"," hidden"]})]})})]}),y.jsx(Se,{className:sHe,children:a&&y.jsxs(y.Fragment,{children:[y.jsx(qQ,{actorRef:a}),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}=a.getSnapshot().context;n.overlays().send({type:"open.relationshipsBrowser",subject:p,scope:f,viewId:g})},children:y.jsx(HQ,{stroke:1.6,style:{width:"70%"}})})})]})})]})}function UQ({title:e,total:r,included:n}){return y.jsx($f,{withBorder:!0,shadow:"none",className:lHe,px:"md",py:"xs",radius:"md",mod:{zero:r===0,missing:r!==n},children:y.jsxs(Io,{gap:4,align:"flex-end",children:[y.jsx(at,{component:"div",c:r!==n?"orange":"dimmed",tt:"uppercase",fw:600,fz:10,lh:1,children:e}),y.jsx(at,{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 hHe=fe({marginTop:"sm",marginBottom:"sm"}),fHe=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)"}}}),b$=({element:e})=>y.jsx(Se,{className:fHe,children:y.jsx(at,{component:"div",fz:"sm",fw:"500",children:e.title})}),mHe=()=>{};function gHe({element:e}){const r=hy({multiple:!1});r.setHoveredNode=mHe;const n=S.useMemo(()=>{let o=1;const a=l=>({label:l,value:`msg${o++}`,type:"message",children:[]}),i={label:y.jsx(b$,{type:"current",element:e}),value:e.id,element:e,type:"current",children:[...e.children()].map(l=>({label:y.jsx(b$,{type:"descedant",element:l}),value:l.id,element:l,type:"descedant",children:[]}))};return i.children.length===0&&i.children.push(a(y.jsx(n3,{radius:"sm",children:"no nested"}))),[[...e.ancestors()].reduce((l,s)=>({label:y.jsx(b$,{type:"ancestor",element:s}),value:s.id,element:s,type:"ancestor",children:[l]}),i)]},[e]);return S.useEffect(()=>{r.expandAllNodes()},[n]),y.jsxs(y.Fragment,{children:[y.jsxs(Yw,{variant:"light",color:"orange",title:"In development",icon:y.jsx(Gy,{}),children:["We need your feedback. Share your thoughts and ideas -"," ",y.jsx(R9,{fz:"sm",fw:500,underline:"hover",c:"orange",href:"https://github.com/likec4/likec4/discussions/",target:"_blank",children:"GitHub discussions"})]}),y.jsx(Pf,{levelOffset:"xl",allowRangeSelection:!1,expandOnClick:!1,expandOnSpace:!1,classNames:{label:hHe},data:n,tree:r})]})}const yHe=[["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"}]],x$=wt("outline","stack-2","Stack2",yHe),WQ=tp.withProps({mb:8,labelPosition:"left",variant:"dashed"}),GQ=_n.withProps({color:"dark",fz:"xs",openDelay:400,closeDelay:150,label:"",children:null,offset:4}),YQ=at.withProps({component:"div",fz:11,fw:500,c:"dimmed",lh:1}),r0=at.withProps({component:"div",fz:"xs",c:"dimmed",className:XFe}),cm=24,vHe=["Properties","Relationships","Views","Structure","Deployments"];function bHe({viewId:e,fromNode:r,rectFromNode:n,fqn:o,onClose:a}){const[i,l]=S.useState(!1),s=tze(),c=s.width||window.innerWidth||1200,d=s.height||window.innerHeight||800,[u,p]=Z$e({key:"likec4:element-details:active-tab",defaultValue:"Properties"}),f=Nt(),g=PFe(),v=r?g.findNode(r):g.findNodeWithElement(o),w=g.$model.element(o),[x,k]=Jr([...w.views()],un(Z=>Z.$view),UV(Z=>Z._type==="element"&&Z.viewOf===o));let C=v?.navigateTo?.$view??w.defaultView?.$view??null;C?.id===e&&(C=null);const _=Xx(w.links),$=ZLe(),z=(v?.$node.children?.length??0)>0,j=Math.min(700,c-cm*2),A=Math.min(650,d-cm*2),R=n?{x:n.x+(z?n.width-j/2:n.width/2),y:n.y+(z?0:n.height/2)}:{x:c/2,y:d/2},T=n?Math.min(n.width/j,n.height/A,.9):1,O=Math.round(Qa(R.x-j/2,{min:cm,max:c-j-cm})),P=Math.round(Qa(R.y-(z?0:60),{min:cm,max:d-A-cm})),L=Qa((R.x-O)/j,{min:.1,max:.9}),H=Qa((R.y-P)/A,{min:.1,max:.9}),M=TZ(j),V=TZ(A);Ed(()=>{M.set(j),V.set(A)},[j,A]);const B=S.useCallback((Z,I)=>{M.set(Math.max(M.get()+I.delta.x,320)),V.set(Math.max(V.get()+I.delta.y,300))},[]),F=S.useRef(null),q=Yh(a),G=$8(()=>{q.current()},[],50),U=v?.$node.notation??null,Y=tx({element:{id:o,title:w.title,icon:v?.icon??w.icon},className:FFe});return nx(()=>{F.current?.open||F.current?.showModal()},20),nx(()=>{l(!0)},220),y.jsx(pi.dialog,{ref:F,className:Ge(BFe,W1.classNames.fullWidth),layout:!0,initial:{[W3]:"0px",[G3]:"5%"},animate:{[W3]:"3px",[G3]:"60%"},exit:{[W3]:"0px",[G3]:"0%",transition:{duration:.1}},onClick:Z=>{Z.stopPropagation(),Z.target?.nodeName?.toUpperCase()==="DIALOG"&&F.current?.close()},onDoubleClick:nn,onPointerDown:nn,onClose:Z=>{Z.stopPropagation(),G()},children:y.jsx(W1,{forwardProps:!0,removeScrollBar:!1,children:y.jsxs(pi.div,{layout:!0,layoutRoot:!0,drag:!0,dragControls:$,dragElastic:0,dragMomentum:!1,dragListener:!1,"data-likec4-color":v?.color??w.color,className:OFe,initial:{top:P,left:O,width:j,height:A,opacity:0,originX:L,originY:H,scale:Math.max(T,.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:IFe,onPointerDown:Z=>$.start(Z),children:[y.jsxs(Ir,{alignItems:"start",justify:"space-between",gap:"sm",mb:"sm",flexWrap:"nowrap",children:[y.jsxs(Ir,{alignItems:"start",gap:"sm",style:{cursor:"default"},flexWrap:"nowrap",children:[Y,y.jsxs("div",{children:[y.jsx(at,{component:"div",className:LFe,children:w.title}),U&&y.jsx(at,{component:"div",c:"dimmed",fz:"sm",fw:500,lh:1.3,lineClamp:1,children:U})]})]}),y.jsx(ep,{size:"lg",onClick:Z=>{Z.stopPropagation(),G()}})]}),y.jsxs(Ir,{alignItems:"baseline",gap:"sm",flexWrap:"nowrap",children:[y.jsxs("div",{children:[y.jsx(YQ,{children:"kind"}),y.jsx(Ks,{radius:"sm",size:"sm",fw:600,color:"gray",style:{cursor:"pointer"},onClick:Z=>{Z.stopPropagation(),f.openSearch(`kind:${w.kind}`)},children:w.kind})]}),y.jsxs("div",{style:{flex:1},children:[y.jsx(YQ,{children:"tags"}),y.jsxs(Zs,{gap:4,flex:1,mt:6,wrap:"wrap",children:[w.tags.map(Z=>y.jsx(U3,{tag:Z,cursor:"pointer",onClick:I=>{I.stopPropagation(),f.openSearch(`#${Z}`)}},Z)),w.tags.length===0&&y.jsx(Ks,{radius:"sm",size:"sm",fw:600,color:"gray",children:"—"})]})]}),y.jsxs(Vw,{style:{alignSelf:"flex-start"},children:[_&&y.jsx(lr,{component:"a",href:_.url,target:"_blank",size:"lg",variant:"default",radius:"sm",children:y.jsx(HQ,{stroke:1.6,style:{width:"65%"}})}),y.jsx(zMe,{feature:"Vscode",children:y.jsx(GQ,{label:"Open source",children:y.jsx(lr,{size:"lg",variant:"default",radius:"sm",onClick:Z=>{Z.stopPropagation(),f.openSource({element:w.id})},children:y.jsx(am,{stroke:1.8,style:{width:"62%"}})})})}),C&&y.jsx(GQ,{label:"Open default view",children:y.jsx(lr,{size:"lg",variant:"default",radius:"sm",onClick:Z=>{Z.stopPropagation(),f.navigateTo(C.id,r??void 0)},children:y.jsx(gi,{style:{width:"70%"}})})})]})]})]}),y.jsx(pK,{children:y.jsxs(op,{value:u,onChange:Z=>p(Z),variant:"none",classNames:{root:HFe,list:UFe,tab:WFe,panel:GFe},children:[y.jsx(py,{children:vHe.map(Z=>y.jsx(Nf,{value:Z,children:Z},Z))}),y.jsx(Js,{value:"Properties",children:y.jsx(Jl,{scrollbars:"y",type:"scroll",offsetScrollbars:!0,children:y.jsxs(Se,{className:YFe,pt:"xs",children:[w.hasSummary&&y.jsxs(y.Fragment,{children:[y.jsx(r0,{children:"summary"}),y.jsx(wp,{value:w.summary})]}),y.jsxs(y.Fragment,{children:[y.jsx(r0,{children:"description"}),y.jsx(wp,{value:w.description,emptyText:"no description"})]}),w.technology&&y.jsx(xHe,{title:"technology",children:w.technology}),w.links.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(r0,{children:"links"}),y.jsx(Ir,{gap:"xs",flexWrap:"wrap",children:w.links.map((Z,I)=>y.jsx(vC,{value:Z},I))})]}),w.$element.metadata&&y.jsx(wHe,{value:w.$element.metadata})]})})}),y.jsx(Js,{value:"Relationships",children:y.jsx(sp,{overrides:{enableRelationshipBrowser:!1,enableNavigateTo:!1},children:i&&u==="Relationships"&&y.jsx(pHe,{element:w,node:v??null})})}),y.jsx(Js,{value:"Views",children:y.jsx(Jl,{scrollbars:"y",type:"auto",children:y.jsxs(Io,{gap:"lg",children:[x.length>0&&y.jsxs(Se,{children:[y.jsx(WQ,{label:"views of the element (scoped)"}),y.jsx(Io,{gap:"sm",children:x.map(Z=>y.jsx(XQ,{view:Z,onNavigateTo:I=>f.navigateTo(I,r??void 0)},Z.id))})]}),k.length>0&&y.jsxs(Se,{children:[y.jsx(WQ,{label:"views including this element"}),y.jsx(Io,{gap:"sm",children:k.map(Z=>y.jsx(XQ,{view:Z,onNavigateTo:I=>f.navigateTo(I,r??void 0)},Z.id))})]})]})})}),y.jsx(Js,{value:"Structure",children:y.jsx(Jl,{scrollbars:"y",type:"auto",children:y.jsx(gHe,{element:w})})}),y.jsx(Js,{value:"Deployments",children:y.jsx(Jl,{scrollbars:"y",type:"auto",children:y.jsx(pVe,{elementFqn:w.id})})})]})}),y.jsx(pi.div,{className:ZFe,drag:!0,dragElastic:0,dragMomentum:!1,onDrag:B,dragConstraints:{top:0,left:0,right:0,bottom:0}})]})})})}const XQ=({view:e,onNavigateTo:r})=>y.jsx(pr,{className:VFe,onClick:n=>r(e.id,n),children:y.jsxs(en,{gap:6,align:"start",wrap:"nowrap",children:[y.jsx($a,{size:"sm",variant:"transparent",children:e._type==="deployment"?y.jsx(x$,{stroke:1.8}):y.jsx(gi,{stroke:1.8})}),y.jsx(Se,{children:y.jsx(at,{component:"div",className:qFe,lineClamp:1,children:e.title||"untitled"})})]})});function xHe({title:e,emptyValue:r="undefined",children:n,style:o,...a}){return y.jsxs(y.Fragment,{children:[y.jsx(r0,{children:e}),y.jsx(at,{component:"div",...H1(n)&&{c:"dimmed"},fz:"md",style:{whiteSpace:"preserve-breaks",userSelect:"all",...o},...a,children:n||r})]})}function wHe({value:e}){const r=Wx(e).sort(([n],[o])=>n.localeCompare(o));return y.jsx(pK,{children:y.jsxs(y.Fragment,{children:[y.jsx(r0,{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(eVe,{label:n,value:o},n))})]})})}const kHe=e=>({viewId:e.context.currentView.id,fromNode:e.context.initiatedFrom.node,rectFromNode:e.context.initiatedFrom.clientRect,fqn:e.context.subject});function _He({actorRef:e,onClose:r}){const n=pn(e,kHe,Or);return y.jsx(tC.Provider,{value:e,children:y.jsx(bHe,{onClose:r,...n})})}const l2="--_blur",s2="--_opacity",SHe="--_level",n0=S.forwardRef(({onClose:e,className:r,classes:n,overlayLevel:o=0,children:a,fullscreen:i=!1,withBackdrop:l=!0,backdrop:s,openDelay:c=130,...d},u)=>{const[p,f]=S.useState(c===0),g=wq(p),v=S.useRef(null),w=S.useRef(!1),x=AZ()!==!0,k=S.useRef(e);k.current=e;const C=$8(()=>{w.current||(w.current=!0,k.current())},[],50);S.useLayoutEffect(()=>{v.current?.open||v.current?.showModal()},[]),nx(()=>{f(!0)},c>0?c:void 0);const _=dFe({fullscreen:i,withBackdrop:l});let $=o>0?"50%":"60%";return s?.opacity!==void 0&&($=`${s.opacity*100}%`),y.jsx(pi.dialog,{ref:$r(v,g,u),className:Ge(n?.dialog,r,_,i&&W1.classNames.fullWidth),layout:!0,style:{[SHe]:o},...x?{initial:{[l2]:"0px",[s2]:"0%",scale:.85,opacity:0},animate:{[l2]:o>0?"4px":"8px",[s2]:$,scale:1,opacity:1,translateY:0},exit:{opacity:0,scale:.98,translateY:-20,[l2]:"0px",[s2]:"0%"}}:{initial:{[l2]:"8px",[s2]:$}},onClick:z=>{if(z.stopPropagation(),z.target?.nodeName?.toUpperCase()==="DIALOG"){v.current?.close();return}},onCancel:z=>{z.preventDefault(),z.stopPropagation(),C()},onDoubleClick:nn,onPointerDown:nn,onClose:z=>{z.stopPropagation(),C()},...d,children:y.jsx(W1,{forwardProps:!0,children:y.jsx("div",{className:Ge(n?.body,"likec4-overlay-body"),children:p&&y.jsx(y.Fragment,{children:a})})})})});n0.displayName="Overlay";const c2=(e,r)=>e.size>2&&r.size!==e.size?new Set(Wc([...Xb(e).flatten(),...r])):e.size>1?new Set(Wc([...e])):e;function EHe(e,r){const n=new Set,o=new Set,a=new Set,i={sources:new Set,targets:new Set},l=(s,c)=>{c==="source"?(n.add(s),i.sources.add(s)):(a.add(s),i.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;a.add(g)}}}}return{sources:c2(n,i.sources),targets:c2(a,i.targets),relationships:o}}function CHe({source:e,target:r}){const n=new Set,o=new Set,a=new Set,i={sources:new Set,targets:new Set},l=(c,d)=>{d==="source"?(n.add(c),i.sources.add(c)):(a.add(c),i.targets.add(c))};e&&l(e,"source"),r&&l(r,"target");const[s]=Ake.findConnection(e,r,"directed");if(!s)return{sources:n,targets:a,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;a.add(p)}}}return{sources:c2(n,i.sources),targets:c2(a,i.targets),relationships:o}}const ZQ=S.createContext(null);function w$(){return mt(S.useContext(ZQ),"No RelationshipDetailsActorContext")}function KQ(e,r=Or){const n=it(e),o=w$();return pn(o,n,r)}function k$(){const e=w$();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 cl={dagre:{ranksep:60,nodesep:35,edgesep:25},edgeLabel:{width:220,height:14},nodeWidth:330,nodeHeight:180,compound:{labelHeight:2,paddingTop:50,paddingBottom:32}};function $He(){const e=new e2.graphlib.Graph({directed:!0,compound:!0,multigraph:!0});return e.setGraph({...cl.dagre,rankdir:"LR"}),e.setDefaultEdgeLabel(()=>({...cl.edgeLabel})),e.setDefaultNodeLabel(()=>({})),e}const _$="-port";function QQ(e,r,n){const o=new Ln(i=>({id:`${e}-${i}`,portId:`${e}-${i}`})),a=Xb(r);for(const i of a.sorted){const l=a.children(i).length>0,s=i.id,c=`${e}-${s}`,d=l?`${c}${_$}`:c;o.set(s,{id:c,portId:d}),n.setNode(c,{column:e,element:i,isCompound:l,portId:d,inPorts:[],outPorts:[],width:cl.nodeWidth,height:cl.nodeHeight}),l&&(n.setNode(d,{element:i,portId:d,isCompound:l,inPorts:[],outPorts:[],width:cl.nodeWidth-cl.dagre.ranksep,height:cl.compound.labelHeight}),n.setParent(d,c));const u=a.parent(i);u&&n.setParent(c,`${e}-${u.id}`)}return{...a,byId:i=>{const l=a.byId(i),s=o.get(l.id);return{element:l,graph:s}},graphNodes:o}}function zHe(e){return e2.layout(e,{}),r=>{const n=e.node(r),{x:o,y:a,width:i,height:l}=n;return{position:{x:o-Math.round(i/2),y:a-Math.round(l/2)},width:i,height:l}}}function RHe(e,r){const n=$He(),o=QQ("sources",e.sources,n),a=QQ("targets",e.targets,n),i=Array.from(e.relationships).map(k=>{const C=o.byId(k.source.id).graph,_=a.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,{...cl.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(),...a.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,{...cl.edgeLabel,width:s>10?800:400});const c=zHe(n),d=Jr(l,Wu(k=>k.id===k.portId),Yx(k=>[k.id,c(k.id)]));function u(k){return d[k]??=Jr(n.children(k)??[],Wu(C=>!C.endsWith(_$)),un(C=>u(C)),YV(C=>{He(C.length>0,`Node ${k} has no nested nodes`)}),Zx((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:z}=c(k);return C=C-cl.compound.paddingTop,_=_+cl.compound.paddingBottom,{position:{x:$,y:C},width:z,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(($,z)=>({port:k+"_"+C+z,topY:u($).position.y})),Kx(Yu("topY")),un(Yu("port")));let v=0,w=0;const x=l.map(({id:k})=>{const{element:C,inPorts:_,outPorts:$,column:z}=n.node(k);let{position:j,width:A,height:R}=u(k);const T=n.parent(k),O=(n.children(k)??[]).filter(V=>!V.endsWith(_$));v=Math.min(v,j.x),w=Math.min(w,j.y);const P=r?f1(C.scopedViews(),V=>V.id!==r.id)?.id??null:null,L=r?.findNodeWithElement(C.id),H=r&&!L?f1(C.ancestors(),V=>!!r.findNodeWithElement(V.id))?.id:null,M=L??(H&&r?.findNodeWithElement(H));return p1({id:k,parent:T??null,x:j.x,y:j.y,title:C.title,description:Os(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:j.x,y:j.y,width:A,height:R},style:nd({...(L??M)?.style,...C.$element.style},["shape","color","icon"]),navigateTo:P,...O.length>0&&{depth:f(k)},children:O,width:A,height:R,column:z,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:z,source:j,target:A,relationship:R,sourceHandle:T,targetHandle:O}=F1(i,V=>V.name===$),P=R.title??"untitled",L=R.navigateTo?.id??null,H=Os(R.$relationship)??null,M=R.technology??null;return k.push({id:z,source:j,sourceHandle:T,target:A,targetHandle:O,label:P,color:R.color,description:H,...L&&{navigateTo:L},...M&&{technology:M},points:_.points.map(V=>[V.x,V.y]),line:R.line,relationId:R.id,parent:null}),k},[])}}const S$=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"}}),JQ=fe({paddingLeft:"1",gridColumn:1},S$),jHe=fe({gridColumn:2},S$),eJ=fe({gridColumn:3,paddingRight:"1"},S$),tJ="likec4-edge-label",THe=Ge(tJ,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"}})),AHe=fe({display:"contents",[`&:last-child .${tJ}`]:{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"}}),DHe=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 MHe=fe({maxHeight:["70vh","calc(100cqh - 70px)"]}),NHe=({edge:e,view:r})=>{const n=k$(),o=S.useRef(null),a=r.nodes.find(s=>s.id===e.source),i=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!a||!i||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(hd,{children:y.jsxs(Vn,{size:"xs",variant:"default",fw:"500",style:{padding:"0.25rem 0.75rem"},rightSection:y.jsx(m$,{size:16}),children:[y.jsx(Se,{className:JQ,maw:160,p:0,mod:{"likec4-color":a.color},children:y.jsx(at,{component:"span",truncate:!0,children:a.title})}),y.jsx($a,{color:"dark",variant:"transparent",size:"xs",children:y.jsx(sm,{style:{width:"80%"}})}),y.jsx(Se,{className:eJ,maw:160,p:0,mod:{"likec4-color":i.color},children:y.jsx(at,{component:"span",truncate:!0,children:i.title})})]})}),y.jsx(Xs,{p:0,miw:250,maw:400,children:y.jsx(ta,{className:MHe,scrollbars:"y",type:"never",viewportRef:o,children:y.jsx(Se,{className:DHe,p:"xs",maw:400,children:l.map(s=>y.jsxs("div",{className:AHe,"data-selected":s.id===e.id,onClick:c=>{c.stopPropagation(),n.navigateTo(s.id)},children:[y.jsx(Se,{className:JQ,mod:{"edge-id":s.id,"likec4-color":s.source.color},children:y.jsx(at,{component:"span",truncate:!0,children:s.source.title})}),y.jsx(Se,{className:jHe,children:y.jsx($a,{color:"dark",variant:"transparent",size:"xs",children:y.jsx(sm,{style:{width:"80%"}})})}),y.jsx(Se,{className:eJ,mod:{"likec4-color":s.target.color},children:y.jsx(at,{component:"span",truncate:!0,children:s.target.title})}),y.jsx(Se,{className:THe,children:y.jsx(at,{component:"span",truncate:!0,children:s.label||"untitled"})})]},s.id))})})})]})},PHe=g$(e=>{const{enableNavigateTo:r}=sr(),{data:{navigateTo:n}}=e,[o,a,i]=Ax(e),l=Nt();return y.jsxs(Ky,{...e,children:[y.jsx(Qy,{edgeProps:e,svgPath:o}),y.jsx(o2,{edgeProps:e,labelPosition:{x:a,y:i,translate:"translate(-50%, 0)"},style:{maxWidth:Math.abs(e.targetX-e.sourceX-100)},children:y.jsx(Zy,{edgeProps:e,children:r&&n&&y.jsx(n2,{...e,onClick:s=>{s.stopPropagation(),l.navigateTo(n)}})})})]})}),BHe=e=>{const{enableNavigateTo:r,enableVscode:n}=sr(),o=Nt(),a=a2(),i=[],{navigateTo:l,fqn:s}=e.data;return l&&r&&a!==l&&i.push({key:"navigate",icon:y.jsx(gi,{}),onClick:c=>{c.stopPropagation(),o.navigateTo(l)}}),s&&i.push({key:"relationships",icon:y.jsx(Jy,{}),onClick:c=>{c.stopPropagation(),o.openRelationshipsBrowser(s)}}),s&&n&&i.push({key:"goToSource",icon:y.jsx(am,{}),onClick:c=>{c.stopPropagation(),o.openSource({element:s})}}),y.jsx(i2,{buttons:i,...e})};function OHe(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 rJ=Symbol.for("isMemoized");function ac(e,r="Node"){if(e.hasOwnProperty(rJ))return e;const n=S.memo(e,OHe);return n.displayName=r,Object.defineProperty(n,rJ,{enumerable:!1,writable:!1,value:!0}),n}const nJ=e=>{const r=Nt();return y.jsx(v$,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}})},IHe=ac(e=>{const{enableElementTags:r}=sr();return y.jsxs(im,{nodeProps:e,children:[y.jsx(lm,{...e}),y.jsx(sl,{...e}),r&&y.jsx(Wy,{...e}),y.jsx(nJ,{...e}),y.jsx(BHe,{...e}),y.jsx(FHe,{...e})]})}),LHe=ac(e=>y.jsxs(e0,{nodeProps:e,children:[y.jsx(nJ,{...e}),y.jsx(t0,{...e}),y.jsx(VHe,{...e})]})),FHe=({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))]}),VHe=({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))]}),qHe={element:IHe,compound:LHe},HHe={relationship:PHe};function UHe({actorRef:e}){const r=S.useRef(null);return r.current==null&&(r.current={defaultNodes:[],defaultEdges:[]}),y.jsx(ZQ.Provider,{value:e,children:y.jsx(qx,{...r.current,children:y.jsx(rm,{id:e.sessionId,inherit:!1,children:y.jsxs(Cn,{children:[y.jsx(XHe,{},"xyflow"),y.jsx(GHe,{},"sync")]})})})})}const WHe=e=>({...e.context.subject,viewId:e.context.viewId}),GHe=S.memo(()=>{const e=w$(),r=pn(e,WHe,tt),n=Lo(),o=n.findView(r.viewId)??null,a=S.useMemo(()=>{let s;if("edgeId"in r&&Kn(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=EHe([c.id],o)}else if(r.source&&r.target)s=CHe({source:n.element(r.source),target:n.element(r.target)});else return null;return RHe(s,o)},[r,o,n]),i=vr(),l=cf();return S.useEffect(()=>{l.viewportInitialized&&e.send({type:"xyflow.init",instance:l,store:i})},[i,l.viewportInitialized,e]),S.useEffect(()=>{a!==null&&e.send({type:"update.layoutData",data:a})},[a,e]),null}),YHe=({context:e})=>({initialized:e.initialized.xydata&&e.initialized.xyflow,nodes:e.xynodes,edges:e.xyedges}),XHe=S.memo(()=>{const e=k$(),{initialized:r,nodes:n,edges:o}=KQ(YHe,tt);return y.jsxs(kC,{id:e.rootElementId,nodes:n,edges:o,className:Ge(r?"initialized":"not-initialized","likec4-relationship-details"),nodeTypes:qHe,edgeTypes:HHe,onNodesChange:Qn(a=>{e.send({type:"xyflow.applyNodeChanges",changes:a})}),onEdgesChange:Qn(a=>{e.send({type:"xyflow.applyEdgeChanges",changes:a})}),fitViewPadding:.05,onNodeClick:Qn((a,i)=>{a.stopPropagation(),e.send({type:"xyflow.nodeClick",node:i})}),onEdgeClick:Qn((a,i)=>{a.stopPropagation(),e.send({type:"xyflow.edgeClick",edge:i})}),onPaneClick:Qn(()=>{e.send({type:"xyflow.paneClick"})}),onDoubleClick:Qn(()=>{e.send({type:"xyflow.paneDblClick"})}),onViewportResize:Qn(()=>{e.send({type:"xyflow.resized"})}),onEdgeMouseEnter:Qn((a,i)=>{i.data.hovered||e.send({type:"xyflow.edgeMouseEnter",edge:i})}),onEdgeMouseLeave:Qn((a,i)=>{i.data.hovered&&e.send({type:"xyflow.edgeMouseLeave",edge:i})}),onSelectionChange:Qn(a=>{e.send({type:"xyflow.selectionChange",...a})}),nodesDraggable:!1,nodesSelectable:!0,fitView:!1,pannable:!0,zoomable:!0,children:[y.jsx(KHe,{}),y.jsx(ed,{position:"top-right",children:y.jsx(lr,{variant:"default",color:"gray",onClick:a=>{a.stopPropagation(),e.close()},children:y.jsx(lp,{})})})]})}),ZHe=({context:e})=>({subject:e.subject,viewId:e.viewId}),KHe=S.memo(()=>{const{subject:e,viewId:r}=KQ(ZHe,tt),n=Lo().findView(r);if(!n||!n.isDiagram())return null;const o=[...n.edges()];let a="edgeId"in e&&Kn(e.edgeId)?o.find(i=>i.id===e.edgeId):F1(o,i=>i.source.element?.id===e.source&&i.target.element?.id===e.target)||F1(o,i=>(i.source.element?.id===e.source||Yn(i.source.element?.id??"__",e.source??"__"))&&(i.target.element?.id===e.target||Yn(i.target.element?.id??"__",e.target??"__")));return a?y.jsx(QHe,{edge:a.$edge,view:n.$view}):null}),QHe=({edge:e,view:r})=>{const n=k$(),o=e.id,[a,i,{history:l,current:s}]=jq(e.id);S.useEffect(()=>{a!==o&&i.set(o)},[o]),S.useEffect(()=>{a!==o&&n.navigateTo(a)},[a]);const c=s>0,d=s+1{u.stopPropagation(),i.back()},children:y.jsx(VQ,{})})},"back"),d&&y.jsx(pi.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(),i.forward()},children:y.jsx(Sd,{})})},"forward"),y.jsx(en,{gap:"xs",wrap:"nowrap",ml:"sm",children:y.jsx(NHe,{edge:e,view:r})})]})})})},JHe=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:Xo(r)}}).filter(IV),eUe=(e,r)=>e.length===r.length&&e.every((n,o)=>n.actorRef===r[o].actorRef);function tUe({overlaysActorRef:e}){const r=Nt(),n=pn(e,JHe,eUe),o=AZ()??!1,a=n.some(s=>s.type==="elementDetails");Ed(()=>{const s=r.getContext().xystore.getState().domNode?.querySelector(".react-flow__renderer");if(!s||o)return;const c=NOe(s,{opacity:a?.7:1,filter:a?"grayscale(1)":"grayscale(0)",transform:a?"perspective(400px) translateZ(-12px) translateY(3px)":"translateY(0)"},{duration:a?.35:.17});let d=null;return a||(d=setTimeout(()=>{s.style.transform="",s.style.filter="",d=null},450)),()=>{d&&clearTimeout(d),c.stop()}},[a]);const i=s=>{e.send({type:"close",actorId:s.id})},l=n.map((s,c)=>{switch(s.type){case"relationshipsBrowser":return y.jsx(n0,{overlayLevel:c,onClose:()=>i(s.actorRef),children:y.jsx(qQ,{actorRef:s.actorRef})},s.actorRef.sessionId);case"relationshipDetails":return y.jsx(n0,{overlayLevel:c,onClose:()=>i(s.actorRef),children:y.jsx(UHe,{actorRef:s.actorRef})},s.actorRef.sessionId);case"elementDetails":return y.jsx(_He,{actorRef:s.actorRef,onClose:()=>i(s.actorRef)},s.actorRef.sessionId);default:Xo(s)}});return y.jsx(sp.Overlays,{children:y.jsx(pS,{onReset:()=>e.send({type:"close.all"}),children:y.jsx(rm,{children:y.jsx(Cn,{mode:"popLayout",children:l})})})})}const[rUe,$d]=ei("SearchActorContext"),nUe=e=>e.context.searchValue;function oUe(){const e=$d(),r=pn(e,nUe),n=S.useCallback(o=>{e.send({type:"change.search",search:o})},[e]);return[r,n]}const aUe=e=>{const r=e.context.searchValue.trim().toLowerCase();return r.length>1?r:""};function E$(){const e=$d();return S.useDeferredValue(pn(e,aUe))}function iUe(){const e=$d();return S.useCallback(r=>{e.send({type:"change.search",search:r})},[e])}const lUe=e=>e.context.pickViewFor;function sUe(){const e=$d();return pn(e,lUe)}const C$=fe.raw({outline:"none",background:"mantine.colors.primary[8]",borderColor:"mantine.colors.primary[9]"}),d2=".mantine-Tree-node:focus > .mantine-Tree-label &",cUe=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:{...C$,borderColor:"mantine.colors.primary[9]",background:"mantine.colors.primary[8]/60"},_focus:C$,[d2]:C$,_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]"}}}),u2="likec4-focusable",p2={ref:"var(--likec4-icon-size, 24px)"},dUe=fe.raw({color:{base:"mantine.colors.dimmed",_light:"mantine.colors.gray[5]",_groupHover:"mantine.colors.primary[0]",_groupFocus:"mantine.colors.primary[0]"},[d2]:{color:"mantine.colors.primary[0]"},flex:`0 0 ${p2.ref}`,height:p2.ref,width:p2.ref,display:"flex",alignItems:"center",justifyContent:"center",alignSelf:"flex-start","--ti-size":p2.ref,"& svg, & img":{width:"100%",height:"auto",maxHeight:"100%",pointerEvents:"none"},"& img":{objectFit:"contain"},"&.likec4-shape-icon svg":{strokeWidth:1.5}}),uUe=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"}},[d2]:{color:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"}}}),oJ=fe.raw({color:{base:"mantine.colors.dimmed",_groupHover:{base:"mantine.colors.primary[1]",_light:"mantine.colors.primary[0]"},_groupFocus:"mantine.colors.primary[0]"},[d2]:{color:"mantine.colors.primary[0]"}}),pUe=fe.raw(oJ,{marginTop:"1",fontSize:"12px",lineHeight:"1.4",":where([data-disabled]) &":{opacity:.85}}),hUe=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"}),aJ=k4e({slots:["root","icon","title","description","descriptionColor"],className:"search-button",base:{root:cUe,icon:dUe,title:uUe,description:pUe,descriptionColor:oJ}}),$$="@container likec4-tree (max-width: 450px)",fUe=fe({outline:"none",marginBottom:"2"}),mUe=fe(FW.raw({containerName:"likec4-tree"}),{containerType:"inline-size",height:"100%"}),gUe=fe({display:"flex",alignItems:"baseline",outline:"none !important",gap:"1"}),yUe=fe({marginTop:"2"}),vUe=fe({color:"mantine.colors.dimmed"}),bUe=fe({[$$]:{flexDirection:"column-reverse",alignItems:"flex-start",gap:"0.5"}}),xUe=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"}}),wUe=fe({"--likec4-icon-size":"24px",[$$]:{"--likec4-icon-size":"18px"}}),kUe=fe({flex:0,fontSize:"10px",fontWeight:500,whiteSpace:"nowrap",lineHeight:"1.1",[$$]:{display:"none"}});function bi(e){e.stopPropagation(),e.preventDefault()}function iJ(e){const r=e.getBoundingClientRect();return r.y+Math.floor(r.height/2)}function o0(e){if(!e){console.error("moveFocusToSearchInput: from is null or undefined");return}const r=e.getRootNode();if(!q1(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 h2(e){if(!e){console.error("focusToFirstFoundElement: from is null or undefined");return}const r=e.getRootNode();if(!q1(r.querySelector)){console.error("focusToFirstFoundElement: root.querySelector is not a function");return}r.querySelector(`[data-likec4-search] .${u2}`)?.focus()}function lJ(e,r,n=`.${u2}`){if(!e)return console.error("queryAllFocusable: from is null or undefined"),[];const o=e.getRootNode();return q1(o.querySelectorAll)?[...o.querySelectorAll(`[data-likec4-search-${r}] ${n}`)]:(console.error("queryAllFocusable: root.querySelectorAll is not a function"),[])}const _Ue="likec4-view-btn",SUe=Ge(fe({flexWrap:"nowrap",display:"flex","&[data-disabled] .mantine-ThemeIcon-root":{opacity:.45}}),_Ue);fe({marginTop:"1",fontSize:"13px",lineHeight:"1.4",":where(.likec4-view-btn[data-disabled]) &":{opacity:.85}});const sJ=()=>y.jsx(hr,{className:hUe,children:"Nothing found"}),EUe=S.memo(()=>{const e=S.useRef(null);let r=[...Lo().views()],n=E$();return n&&(n.startsWith("kind:")?r=[]:r=r.filter(o=>n.startsWith("#")?o.tags.some(a=>a.toLocaleLowerCase().includes(n.slice(1))):`${o.id} ${o.title} ${o.description.text}`.toLocaleLowerCase().includes(n))),y.jsxs(Io,{ref:e,renderRoot:o=>y.jsx(zr,{layout:!0,...o}),gap:8,"data-likec4-search-views":!0,onKeyDown:o=>{if(o.key==="ArrowLeft"||o.key==="ArrowRight"){const a=o.target.getBoundingClientRect().y,i=lJ(e.current,"elements",".likec4-element-button");let l=i.length>1?i.find((s,c,d)=>iJ(s)>a||c===d.length-1):null;l??=df(i),l&&(o.stopPropagation(),l.focus());return}},children:[r.length===0&&y.jsx(sJ,{}),r.length>0&&y.jsx(Ow,{children:y.jsx(pr,{"data-likec4-view":!0,tabIndex:-1,onFocus:o=>{o.stopPropagation(),o0(e.current)}})}),r.map((o,a)=>y.jsx(zr,{layoutId:`@view${o.id}`,children:y.jsx(z$,{view:o,search:n,tabIndex:a===0?0:-1})},o.id))]})}),f2=aJ();function z$({className:e,view:r,loop:n=!1,search:o,focusOnElement:a,...i}){const l=$d(),s=Nt(),c=a2(),d=r.id===c,u=()=>{l.send({type:"close"}),setTimeout(d&&a?()=>{s.focusOnElement(a)}:()=>{s.navigateTo(r.id,void 0,a)},100)};return y.jsxs(pr,{...i,className:Ge(f2.root,"group",u2,SUe,e),"data-likec4-view":r.id,...d&&!a&&{"data-disabled":!0},onClick:p=>{p.stopPropagation(),u()},onKeyDown:Y1({siblingSelector:"[data-likec4-view]",parentSelector:"[data-likec4-search-views]",activateOnFocus:!1,loop:n,orientation:"vertical",onKeyDown:p=>{p.nativeEvent.code==="Space"&&(p.stopPropagation(),u())}}),children:[y.jsx($a,{variant:"transparent",className:f2.icon,children:r.isDeploymentView()?y.jsx(x$,{stroke:1.8}):y.jsx(gi,{stroke:1.8})}),y.jsxs(hr,{style:{flexGrow:1},children:[y.jsxs(en,{gap:"xs",wrap:"nowrap",align:"center",children:[y.jsx(Qs,{component:"div",highlight:o,className:f2.title,children:r.title||"untitled"}),d&&y.jsx(Ks,{size:"xs",fz:9,radius:"sm",children:"current"})]}),y.jsx(Qs,{highlight:r.description.nonEmpty?o:"",component:"div",className:f2.description,lineClamp:1,children:r.description.text||"No description"})]})]})}const dm=aJ(),CUe=S.memo(()=>{const e=Lo(),r=E$(),n=S.useMemo(()=>{const a=r.split(".");let i;Gu(a)||a[0]==="kind:"?i=e.elements():i=Bs(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([...i],Wc,Zx((d,u)=>{const p={label:u.title,value:u.id,element:u,searchTerms:a,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(Xy)):d.roots.push(p),d.all.push(p),d},{all:[],roots:[]}));return{all:s,byid:l,roots:c.sort(Xy)}},[e,r]),o=cJ();return n.all.length===0?y.jsx(sJ,{}):y.jsx(zUe,{data:n,handleClick:o})}),$Ue=()=>{};function zUe({data:{all:e,byid:r,roots:n},handleClick:o}){const a=hy({multiple:!1});a.setHoveredNode=$Ue,S.useEffect(()=>{a.collapseAllNodes();for(const l of e)l.children.length>0&&a.expand(l.value)},[e]);const i=it(l=>{const s=l.target,c=s.getAttribute("data-value"),d=!!c&&r[c];if(d){if(l.key==="ArrowUp"){c===n[0]?.value&&(bi(l),o0(s));return}if(l.key==="ArrowRight"){if(d.children.length>0&&a.expandedState[c]===!1)return;const u=(l.target.querySelector(".mantine-Tree-label")??s).getBoundingClientRect().y,p=lJ(s,"views");let f=p.length>1?p.find((g,v,w)=>iJ(g)>u||v===w.length-1):null;f??=df(p),f&&(bi(l),f.focus());return}if(l.key===" "||l.key==="Enter"){bi(l),o(d.element);return}}});return y.jsx(Pf,{"data-likec4-search-elements":!0,allowRangeSelection:!1,clearSelectionOnOutsideClick:!0,selectOnClick:!1,tree:a,data:n,levelOffset:"lg",classNames:{root:mUe,node:Ge(u2,fUe),label:gUe,subtree:yUe},onKeyDownCapture:i,renderNode:RUe})}function RUe({node:e,elementProps:r,hasChildren:n,expanded:o}){const{element:a,searchTerms:i}=e,l=B4e({element:{id:a.id,title:a.title,shape:a.shape,icon:a.icon},className:Ge(dm.icon,wUe)}),s=[...a.views()],c=cJ(),d=`@tree.${e.value}`;return y.jsxs(zr,{layoutId:d,...r,children:[y.jsx(lr,{variant:"transparent",size:16,tabIndex:-1,className:Ge(vUe),style:{visibility:n?"visible":"hidden"},children:y.jsx(Sd,{stroke:3.5,style:{transition:"transform 150ms ease",transform:`rotate(${o?"90deg":"0"})`,width:"100%"}})}),y.jsxs(pr,{component:vi,layout:!0,tabIndex:-1,"data-value":a.id,className:Ge(dm.root,"group","likec4-element-button"),...s.length>0&&{onClick:u=>{(!n||o)&&(u.stopPropagation(),c(a))}},children:[l,y.jsxs(Se,{style:{flexGrow:1},children:[y.jsxs(en,{gap:"xs",wrap:"nowrap",align:"center",className:bUe,children:[y.jsx(Qs,{component:"div",highlight:i,className:dm.title,children:e.label}),y.jsx(_n,{label:a.id,withinPortal:!1,fz:"xs",disabled:!a.id.includes("."),children:y.jsx(Qs,{component:"div",highlight:i,className:Ge(xUe,dm.descriptionColor),children:qg(a.id)})})]}),y.jsx(Qs,{component:"div",highlight:i,className:dm.description,lineClamp:1,children:a.summary.text||"No description"})]}),y.jsx(at,{component:"div",className:Ge(kUe,dm.descriptionColor),fz:"xs",children:s.length===0?"No views":y.jsxs(y.Fragment,{children:[s.length," view",s.length>1?"s":""]})})]})]})}function cJ(){const e=Nt(),r=$d();return it(n=>{const o=[...n.views()];if(o.length===0)return;const a=Xx(o);if(a){r.send({type:"close"}),a.id===e.currentView.id?setTimeout(()=>{e.focusOnElement(n.id)},100):setTimeout(()=>{e.navigateTo(a.id,void 0,n.id)},100);return}r.send({type:"pickview.open",elementFqn:n.id})})}const jUe=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"}}}),TUe=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)]"}}),AUe=fe({position:"absolute",top:"[2rem]",left:"[50%]",width:"100%",maxWidth:"600px",minWidth:"200px",transform:"translateX(-50%)",zIndex:903}),dJ=fe({marginTop:"2","& + &":{marginTop:"[32px]"}});fe({height:["100%","100cqh"],"& .mantine-ScrollArea-viewport":{minHeight:"100%","& > div":{minHeight:"100%",height:"100%"}}});function DUe({elementFqn:e}){const r=$d(),n=Lo().element(e),o=[],a=[];for(const l of n.views())l.viewOf===n?o.push(l):a.push(l);const i=()=>{r.send({type:"pickview.close"})};return yf("keydown",l=>{try{l.key==="Escape"&&(l.stopPropagation(),l.preventDefault(),i())}catch(s){console.warn(s)}},{capture:!0}),y.jsxs(y.Fragment,{children:[y.jsx(zr,{className:TUe,onClick:l=>{l.stopPropagation(),i()}},"pickview-backdrop"),y.jsx(Fw,{children:y.jsxs(zr,{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:AUe,"data-likec4-search-views":!0,children:[y.jsxs(en,{px:"sm",py:"md",justify:"space-between",children:[y.jsx(ap,{order:2,lh:1,children:"Select view"}),y.jsx(lr,{size:"md",variant:"default",onClick:l=>{l.stopPropagation(),i()},children:y.jsx(lp,{})})]}),y.jsxs(ta,{mah:"calc(100vh - 110px)",type:"never",children:[o.length>0&&y.jsxs(Io,{gap:"sm",px:"sm",className:dJ,children:[y.jsx(ap,{order:6,c:"dimmed",children:"scoped views of the element"}),o.map((l,s)=>y.jsx(z$,{view:l,search:"",loop:!0,focusOnElement:e,mod:{autofocus:s===0}},l.id))]}),a.length>0&&y.jsxs(Io,{gap:"sm",px:"sm",className:dJ,children:[y.jsx(ap,{order:6,c:"dimmed",children:"views including this element"}),a.map((l,s)=>y.jsx(z$,{view:l,search:"",loop:!0,focusOnElement:e,mod:{autofocus:s===0&&o.length===0}},l.id))]})]})]},"pickview")})]})}function MUe(){const e=S.useRef(null);let r=Lo().tagsSortedByUsage,n=iUe(),o=E$(),a=r.length,i=!1;if(o.startsWith("#")){const l=o.slice(1);r=r.filter(({tag:s})=>s.toLocaleLowerCase().includes(l)),i=r.length!==a}return r.length===0?null:(r=r.slice(0,15),y.jsxs(Ir,{ref:e,css:{gap:"md",paddingLeft:"[48px]",flexWrap:"nowrap"},children:[y.jsx(Ir,{css:{gap:"1.5",flexWrap:"wrap",opacity:i?1:.3,grayscale:i?0:.9,filter:"auto",transition:"fast",_groupHover:{opacity:1,grayscale:0},_groupFocusWithin:{opacity:1,grayscale:0}},children:r.map(({tag:l})=>y.jsx(U3,{tag:l,className:fe({userSelect:"none",cursor:"pointer"}),onClick:s=>{s.stopPropagation(),n(`#${l}`),setTimeout(()=>{h2(e.current)},350)}},l))}),i&&y.jsx(Vn,{size:"compact-xs",variant:"light",onClick:l=>{l.stopPropagation(),n(""),o0(e.current)},rightSection:y.jsx(lp,{size:14}),children:"Clear"})]}))}const NUe=[["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"}]],R$=wt("outline","search","Search",NUe);function uJ(e){return e.match(/^(k|ki|kin|kind|kind:)$/)!=null}const PUe=["#","kind:"],BUe=S.memo(()=>{const e=$d(),r=Lo(),n=S.useRef(null),{ref:o,focused:a}=cze(),[i,l]=oUe(),s=IU({scrollBehavior:"smooth",loop:!1});yf("keydown",u=>{try{!a&&(u.key==="Backspace"||u.key.startsWith("Arrow")||u.key.match(new RegExp("^\\p{L}$","u")))&&o0(n.current)}catch(p){console.warn(p)}});let c=[],d=!1;switch(!0){case i.startsWith("#"):{const u=i.toLocaleLowerCase().slice(1),p=r.tags.filter(f=>f.toLocaleLowerCase().includes(u));p.length===0?(d=!1,c=[y.jsx(oy,{children:"No tags found"},"empty-tags")]):(d=r.tags.some(f=>f.toLocaleLowerCase()===u),c=p.map(f=>y.jsxs(ay,{value:`#${f}`,children:[y.jsx(at,{component:"span",opacity:.5,mr:1,fz:"sm",children:"#"}),f]},f)));break}case i.startsWith("kind:"):case uJ(i):{const u=i.length>5?i.slice(5).toLocaleLowerCase():"";let p=x7(r.specification.elements);u&&(p=p.filter(f=>f.toLocaleLowerCase().includes(u))),p.length===0?(d=!1,c=[y.jsx(oy,{children:"No kinds found"},"empty-kinds")]):(d=p.some(f=>f.toLocaleLowerCase()===u),c=p.map(f=>y.jsxs(ay,{value:`kind:${f}`,children:[y.jsx(at,{component:"span",opacity:.5,mr:1,fz:"sm",children:"kind:"}),f]},f)));break}}return y.jsxs(eo,{onOptionSubmit:u=>{l(u),s.resetSelectedOption(),PUe.includes(u)||(s.closeDropdown(),setTimeout(()=>{h2(n.current)},350))},width:"max-content",position:"bottom-start",shadow:"md",offset:{mainAxis:4,crossAxis:50},store:s,withinPortal:!1,children:[y.jsx(P9,{children:y.jsx(Ca,{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:jUe},size:"lg",value:i,leftSection:y.jsx(R$,{style:{width:$e(20)},stroke:2}),rightSection:y.jsx(Ca.ClearButton,{onClick:u=>{u.stopPropagation();const p=e.getSnapshot().context.openedWithSearch;i===""||i===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(),bi(u);case c.length===1:return s.selectFirstOption()&&s.clickSelectedOption(),bi(u);case uJ(i):return l("kind:"),bi(u)}return}if(u.key==="Backspace"&&s.dropdownOpened){if(i==="kind:")return l(""),s.resetSelectedOption(),bi(u);if(i.startsWith("kind:")&&d)return l("kind:"),s.resetSelectedOption(),bi(u);if(i.startsWith("#")&&d)return l("#"),s.resetSelectedOption(),bi(u)}if(u.key==="Escape"&&s.dropdownOpened&&c.length>0){bi(u),s.closeDropdown();return}if(u.key==="ArrowUp"&&s.dropdownOpened&&i===""&&s.getSelectedOptionIndex()===0){s.closeDropdown(),bi(u);return}if(u.key==="ArrowDown"&&(!s.dropdownOpened||c.length===0||d||i===""&&s.getSelectedOptionIndex()===c.length-1)){s.closeDropdown(),bi(u),h2(n.current);return}}})}),y.jsx(Xw,{hidden:c.length===0,style:{minWidth:300},children:y.jsx(Zw,{children:y.jsx(ta,{mah:"min(322px, calc(100cqh - 50px))",type:"scroll",children:c})})})]})}),OUe=fe({backgroundColor:"[rgb(34 34 34 / var(--_opacity, 95%))]",_light:{backgroundColor:"[rgb(250 250 250 / var(--_opacity, 95%))]"},backdropFilter:"auto",backdropBlur:"var(--_blur, 10px)"}),IUe=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]"}),LUe=e=>!e.matches("inactive");function FUe({searchActorRef:e}){const r=pn(e,LUe),n=()=>{e.send({type:"open"})},o=it(()=>{e.send({type:"close"})});return ize([["mod+k",n,{preventDefault:!0}],["mod+f",n,{preventDefault:!0}]]),y.jsx(rUe,{value:e,children:y.jsx(sp.Overlays,{children:y.jsx(UW,{FallbackComponent:WW,onReset:o,children:y.jsx(Cn,{children:r&&y.jsx(n0,{fullscreen:!0,withBackdrop:!1,backdrop:{opacity:.9},classes:{dialog:OUe,body:IUe},openDelay:0,onClose:o,"data-likec4-search":"true",children:y.jsx(VUe,{searchActorRef:e})})})})})})}const pJ=fe({height:["100%","100cqh"],"& .mantine-ScrollArea-viewport":{minHeight:"100%","& > div":{minHeight:"100%",height:"100%"}}}),VUe=({searchActorRef:e})=>{const r=S.useRef(null),n=sUe();return nx(()=>{Kn(e.getSnapshot().context.openedWithSearch)&&h2(r.current)},150),y.jsxs(hr,{ref:r,display:"contents",children:[y.jsx(en,{className:"group",wrap:"nowrap",onClick:o=>{o.stopPropagation(),o0(r.current)},children:y.jsxs(ip,{flex:1,px:"sm",children:[y.jsx(BUe,{}),y.jsx(MUe,{})]})}),y.jsxs(ly,{children:[y.jsx(rp,{span:6,children:y.jsx(ap,{component:"div",order:6,c:"dimmed",pl:"sm",children:"Elements"})}),y.jsx(rp,{span:6,children:y.jsx(ap,{component:"div",order:6,c:"dimmed",pl:"sm",children:"Views"})})]}),y.jsxs(ly,{className:fe({containerName:"likec4-search-elements",containerType:"size",overflow:"hidden",flexGrow:1}),children:[y.jsx(rp,{span:6,children:y.jsx(Jl,{type:"scroll",className:pJ,pr:"xs",scrollbars:"y",children:y.jsx(Cn,{children:y.jsx(rm,{id:"likec4-search-elements",children:y.jsx(CUe,{})})})})}),y.jsx(rp,{span:6,children:y.jsx(Jl,{type:"scroll",className:pJ,pr:"xs",scrollbars:"y",children:y.jsx(Cn,{children:y.jsx(rm,{id:"likec4-search-views",children:y.jsx(EUe,{})})})})})]}),n&&y.jsx(DUe,{elementFqn:n})]})};function qUe({children:e}){const r=S.useContext(iS);if(!r)throw new Error("PortalToContainer must be used within RootContainer");return y.jsx(ry,{target:r.ref.current??`#${r.id}`,children:e})}const hJ={onNavigateTo:null,onNodeClick:null,onNodeContextMenu:null,onCanvasContextMenu:null,onEdgeClick:null,onEdgeContextMenu:null,onCanvasClick:null,onCanvasDblClick:null,onBurgerMenuClick:null,onOpenSource:null,onInitialized:null,onLayoutTypeChange:null},j$=x7(hJ),fJ=S.createContext({...Yx(j$,e=>[e,null]),handlersRef:{current:hJ}});function HUe({handlers:e,children:r}){const n=Yh(e),o=j$.map(i=>q1(e[i])),a=S.useMemo(()=>({...Yx(j$,i=>n.current[i]?[i,(...l)=>n.current[i]?.(...l)]:[i,null]),handlersRef:n}),[n,...o]);return y.jsx(fJ.Provider,{value:a,children:r})}function um(){return S.useContext(fJ)}const mJ=(e,r)=>e.find(o=>"modelFqn"in o.data&&o.data.modelFqn===r)||null;function Rr(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}}}Rr.editorActor=({system:e})=>e.get("editor"),Rr.overlaysActor=({system:e})=>e.get("overlays"),Rr.diagramActor=({system:e})=>e.get("diagram"),Rr.searchActor=({system:e})=>e.get("search");function pm(e,r){return e.view.nodes.find(n=>n.id===r)??null}function T$(e,r){return e.view.edges.find(n=>n.id===r)??null}function UUe(e){const r=new Map,n=e.context.xynodes.reduce((o,a)=>{let i=a.position;if(a.parentId){const c=r.get(a.parentId)??{x:0,y:0};i={x:i.x+c.x,y:i.y+c.y}}if(r.set(a.id,i),a.hidden||a.data.dimmed)return o;const l=a.measured?.width??a.width??a.initialWidth,s=a.measured?.height??a.height??a.initialHeight;return o.minX=Math.min(o.minX,i.x),o.minY=Math.min(o.minY,i.y),o.maxX=Math.max(o.maxX,i.x+l),o.maxY=Math.max(o.maxY,i.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 WUe=32;function GUe(e){const r=mt(e.context.activeWalkthrough),n=mt(e.context.xyedges.find(c=>c.id===r.stepId)),o=e.context.xystore.getState(),a=mt(o.nodeLookup.get(n.source)),i=mt(o.nodeLookup.get(n.target)),l=SL([a,i],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??=YUe(n,o),s?s=ko.merge(s,l):s=l,{duration:350,bounds:ko.expand(s,WUe)}}function YUe(e,r){const n=r.nodeLookup.get(e.source),o=r.nodeLookup.get(e.target);if(!n||!o)return null;const a=UL({id:e.id,sourceNode:n,targetNode:o,sourceHandle:e.sourceHandle||null,targetHandle:e.targetHandle||null,connectionMode:r.connectionMode});return a?ko.fromPoints([[a.sourceX,a.sourceY],[a.targetX,a.targetY]]):null}function A$(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:Xo(e)}}function XUe(e,r){const n=e.lastOnNavigate?.fromNode,o=n&&e.xynodes.find(l=>l.id===n),a=o&&A$(o),i=a&&r.xynodes.find(l=>A$(l)===a);return{fromNode:o,toNode:i}}function ZUe(e,r){let{width:n,height:o,transform:a}=e.xystore.getState();const i=Math.max(a[2],1);return qs(r,n,o,yi,i,e.fitViewPadding)}const KUe=rs({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"}}}}}}}),QUe=KUe,gJ=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)"}}),JUe=fe({whiteSpaceCollapse:"preserve-breaks",fontSize:"sm",lineHeight:"sm",userSelect:"all"});function eWe(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 tWe=S.memo(()=>{const e=Lo(),r=AS(QUe),n=Nt(),{viewId:o,selected:a}=ci(eWe),i=pn(r,g=>g.hasTag("opened")?g.context.edgeId:null);za("navigateTo",()=>{r.send({type:"close"})}),za("edgeMouseEnter",({edge:g})=>{r.send({type:"xyedge.mouseEnter",edgeId:g.data.id})}),za("edgeMouseLeave",()=>{r.send({type:"xyedge.mouseLeave"})}),za("walkthroughStarted",()=>{r.send({type:"close"})}),S.useEffect(()=>{a?r.send({type:"xyedge.select",edgeId:a}):r.send({type:"xyedge.unselect"})},[a]);const l=S.useCallback(g=>{if(!i)return;r.send({type:"dropdown.mouseEnter"});const v=n.findEdge(i);v&&!v.data.hovered&&n.send({type:"xyflow.edgeMouseEnter",edge:v,event:g})},[r,n,i]),s=S.useCallback(g=>{if(!i)return;r.send({type:"dropdown.mouseLeave"});const v=n.findEdge(i);v?.data.hovered&&n.send({type:"xyflow.edgeMouseLeave",edge:v,event:g})},[r,n,i]),{diagramEdge:c,sourceNode:d,targetNode:u}=ci(g=>{const v=i?T$(g,i):null,w=v?pm(g,v.source):null,x=v?pm(g,v.target):null;return{diagramEdge:v,sourceNode:w,targetNode:x}},Or,[i]);if(!c||!d||!u||Gu(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}}),Wu(Kn),UV(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(qUe,{children:y.jsx(oWe,{viewId:o,direct:p,nested:f,diagramEdge:c,sourceNode:d,targetNode:u,onMouseEnter:l,onMouseLeave:s})})}),rWe=(e,r)=>r?.querySelector(`.likec4-edge-label[data-edge-id="${e}"]`)??r?.querySelector(`.likec4-edge-middle-point[data-edge-id="${e}"]`)??null,nWe=8,oWe=({viewId:e,diagramEdge:r,direct:n,nested:o,sourceNode:a,targetNode:i,onMouseEnter:l,onMouseLeave:s})=>{const c=S.useRef(null),{enableNavigateTo:d,enableVscode:u,enableCompareWithLatest:p}=sr(),{onOpenSource:f}=um(),g=QDe(),[v,w]=S.useState(null);S.useLayoutEffect(()=>{w(rWe(r.id,g.current))},[r]),S.useEffect(()=>{const C=v,_=c.current;if(!C||!_)return;let $=!1;const z=jw(C,_,()=>{zH(C,_,{placement:"bottom-start",middleware:[SH(4),Ije({crossAxis:!0,allowedPlacements:["bottom-start","bottom-end","left-start","top-start","top-end","right-start","right-end","left-end"]}),EH({apply({availableHeight:j,availableWidth:A,elements:R}){$||Object.assign(R.floating.style,{maxWidth:`${Qa(Cd(A),{min:220,max:400})}px`,maxHeight:`${Qa(Cd(j),{min:100,max:500})}px`})}}),CH({padding:nWe*2})]}).then(({x:j,y:A,middlewareData:R})=>{$||(_.style.transform=`translate(${Cd(j)}px, ${Cd(A)}px)`,_.style.visibility=R.hide?.referenceHidden?"hidden":"visible")})},{ancestorResize:!1,animationFrame:!0});return()=>{$=!0,z()}},[v]);const x=Nt(),k=S.useCallback((C,_)=>y.jsxs(S.Fragment,{children:[_>0&&y.jsx(tp,{}),y.jsx(iWe,{viewId:e,relationship:C,sourceNode:a,targetNode:i,onNavigateTo:d?$=>{x.navigateTo($)}:void 0,...f&&u&&{onOpenSource:()=>f({relation:C.id})}})]},C.id),[e,a,i,x,d,f,u]);return y.jsx(ta,{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(ip,{css:{gap:"3",padding:"4",paddingTop:"2"},children:[p&&y.jsx(aWe,{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(hm,{children:"DIRECT RELATIONSHIPS"}),n.map(k)]}),o.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(hm,{css:{mt:n.length>0?"2":"0"},children:"RESOLVED FROM NESTED"}),o.map(k)]})]})})},aWe=({diagramEdge:e})=>{const r=e.drifts;return!r||r.length===0?null:y.jsx(dy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"Changes:",children:r.map(n=>y.jsxs(at,{mt:2,size:"sm",lh:"xs",children:["- ",n]},n))})},iWe=S.forwardRef(({viewId:e,relationship:r,sourceNode:n,targetNode:o,onNavigateTo:a,onOpenSource:i},l)=>{const s=yJ(r,"source",n),c=yJ(r,"target",o),d=a&&r.navigateTo?.id!==e?r.navigateTo?.id:void 0,u=r.links,p=r.hasMetadata()?Wx(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(ip,{ref:l,className:HW({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(Ir,{gap:"0.5",children:y.jsxs(np,{openDelay:200,children:[y.jsx(a0,{label:s.full,offset:2,position:"top-start",children:y.jsx(at,{component:"div","data-likec4-color":n.color,className:gJ,children:s.short})}),y.jsx(sm,{stroke:2.5,size:"11px",opacity:.65}),y.jsx(a0,{label:c.full,offset:2,position:"top-start",children:y.jsx(at,{component:"div","data-likec4-color":o.color,className:gJ,children:c.short})}),d&&y.jsx(a0,{label:"Open dynamic view",children:y.jsx(lr,{size:"sm",radius:"sm",variant:"default",onClick:g=>{g.stopPropagation(),a?.(d)},style:{alignSelf:"flex-end"},role:"button",children:y.jsx(gi,{size:"80%",stroke:2})})}),i&&y.jsx(a0,{label:"Open source",children:y.jsx(lr,{size:"sm",radius:"sm",variant:"default",onClick:g=>{g.stopPropagation(),i()},role:"button",children:y.jsx(am,{size:"80%",stroke:2})})})]})}),y.jsxs(Ir,{gap:"xs",alignItems:"center",children:[y.jsx(hr,{className:JUe,children:r.title||"untitled"}),f&&y.jsx(a0,{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(Gy,{size:14,opacity:.5,style:{flexShrink:0,cursor:"help"}})})})]}),r.kind&&y.jsxs(Ir,{gap:"2",children:[y.jsx(hm,{children:"kind"}),y.jsx(at,{size:"xs",className:fe({userSelect:"all"}),children:r.kind})]}),r.technology&&y.jsxs(Ir,{gap:"2",children:[y.jsx(hm,{children:"technology"}),y.jsx(at,{size:"xs",className:fe({userSelect:"all"}),children:r.technology})]}),r.summary.nonEmpty&&y.jsxs(y.Fragment,{children:[y.jsx(hm,{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(wp,{value:r.summary,fontSize:"sm",textScale:.875})})]}),u.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(hm,{children:"links"}),y.jsx(Ir,{gap:"1",flexWrap:"wrap",children:u.map(g=>y.jsx(vC,{size:"sm",value:g},g.url))})]})]})}),hm=gd("div",{base:{display:"block",fontSize:"xxs",fontWeight:500,userSelect:"none",lineHeight:"sm",color:"mantine.colors.dimmed"}}),a0=_n.withProps({color:"dark",fz:"xs",label:"",children:null,offset:8,withinPortal:!1});function yJ(e,r,n){const o=e.isDeploymentRelation()?n.id:n.modelRef||"",a=e[r].id,i=qg(o)+a.slice(o.length);return{full:a,short:i}}function fm(){const e=JDe();return S.useMemo(()=>e?{portalProps:{target:e},withinPortal:!0}:{withinPortal:!1},[e])}const lWe=rs({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":RS(({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})=>!Gu(e.searchQuery),"search query is empty":({context:e})=>Gu(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",na({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"}}}}}}}),sWe=lWe,D$=S.createContext(null);D$.displayName="NavigationPanelActorSafeContext";const cWe=D$.Provider,M$=()=>{const e=S.useContext(D$);if(e===null)throw new Error("NavigationPanelActorRef is not found in the context");return e};function N$(e,r=Or){const n=M$();return pn(n,e,r)}function dWe(e,r=Or){return N$(n=>e(n.context),r)}function i0(){const e=M$();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 vJ=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,withinPortal:!1}),bJ=()=>y.jsx($a,{component:zr,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(Sd,{})});Kw.withProps({separator:y.jsx(bJ,{}),separatorMargin:4});const ic=S.forwardRef(({variant:e="default",className:r,disabled:n=!1,type:o,...a},i)=>y.jsx(lr,{size:"md",variant:"transparent",radius:"sm",component:vi,...!n&&{whileHover:{scale:1.085},whileTap:{scale:1,translateY:1}},disabled:n,...a,className:Ge(r,eK({variant:e,type:o})),ref:i})),m2=b1({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"}}}}}),uWe=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"})]})),pWe=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"})})),hWe=()=>{const e=i0(),{onBurgerMenuClick:r}=um();return y.jsx(zr,{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(uWe,{className:fe({display:{base:"none","@/md":"block"}})}),y.jsx(pWe,{className:fe({display:{base:"block","@/md":"none"}})})]})})},fWe=[["path",{d:"M5 12l14 0",key:"svg-0"}],["path",{d:"M5 12l6 6",key:"svg-1"}],["path",{d:"M5 12l6 -6",key:"svg-2"}]],mWe=wt("outline","arrow-left","ArrowLeft",fWe),gWe=()=>{const e=Nt(),{hasStepBack:r,hasStepForward:n}=ci(o=>({hasStepBack:o.navigationHistory.currentIndex>0,hasStepForward:o.navigationHistory.currentIndex{o.stopPropagation(),e.navigate("back")},children:y.jsx(mWe,{size:14})}),y.jsx(ic,{disabled:!n,onClick:o=>{o.stopPropagation(),e.navigate("forward")},children:y.jsx(sm,{size:14})})]})},yWe=[["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"}]],vWe=wt("outline","link","Link",yWe),bWe=({context:e})=>{const r=e.view;return{id:r.id,title:e.viewModel?.title??(r.title&&y8(r.title))??"Untitled View",description:e.viewModel?.description??ur.from(r.description),tags:r.tags??[],links:r.links??[]}},xWe=e=>{const[r,n]=S.useState(!1),o=N$(bWe,tt),a=fm();return y.jsxs(br,{position:"bottom-end",shadow:"xl",clickOutsideEvents:["pointerdown","mousedown","click"],offset:{mainAxis:4},opened:r,onChange:n,...a,...e,children:[y.jsx(wWe,{linksCount:o.links.length,onOpen:()=>n(!0)}),r&&y.jsx(kWe,{data:o,onClose:()=>n(!1)})]})},wWe=({linksCount:e,onOpen:r})=>y.jsx(br.Target,{children:y.jsxs(pr,{component:vi,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(y$,{size:16,stroke:1.8}),e>0&&y.jsxs(Ir,{gap:"[1px]",children:[y.jsx(vWe,{size:14,stroke:2}),y.jsx(hr,{css:{fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8},children:e})]})]})}),xJ=gd("div",{base:{fontSize:"xs",color:"mantine.colors.dimmed",fontWeight:500,userSelect:"none",mb:"xxs"}}),kWe=({data:{id:e,title:r,description:n,tags:o,links:a},onClose:i})=>{const l=Nt();return za("paneClick",i),za("nodeClick",i),y.jsxs(br.Dropdown,{className:Ge("nowheel nopan nodrag",my({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(at,{component:"div",fw:500,size:"xl",lh:"sm",children:r}),y.jsxs(Ir,{alignItems:"flex-start",mt:"1",children:[y.jsx(_We,{label:"id",value:e}),y.jsx(Ir,{gap:"xs",flexWrap:"wrap",children:o.map(s=>y.jsx(U3,{tag:s,cursor:"pointer",onClick:c=>{c.stopPropagation(),l.openSearch(`#${s}`)}},s))})]})]}),a.length>0&&y.jsxs("section",{className:qn({alignItems:"baseline"}),children:[y.jsx(xJ,{children:"Links"}),y.jsx(Ir,{gap:"xs",flexWrap:"wrap",children:a.map((s,c)=>y.jsx(vC,{value:s},`${c}-${s.url}`))})]}),n.isEmpty&&y.jsx(at,{component:"div",fw:500,size:"xs",c:"dimmed",style:{userSelect:"none"},children:"No description"}),n.nonEmpty&&y.jsxs("section",{children:[y.jsx(xJ,{children:"Description"}),y.jsx(wp,{value:n,fontSize:"sm",emptyText:"No description",className:fe({userSelect:"all"})})]})]})},_We=({label:e,value:r})=>y.jsxs(Ir,{gap:"0.5",children:[y.jsx(SWe,{children:e}),y.jsx(Ks,{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})]}),SWe=gd("div",{base:{color:"mantine.colors.dimmed",fontWeight:500,fontSize:"xxs",userSelect:"none"}}),EWe=()=>{const e=a2(),{enableVscode:r}=sr(),{onOpenSource:n}=um();return r?y.jsx(vJ,{label:"Open View Source",children:y.jsx(ic,{onClick:o=>{o.stopPropagation(),n?.({view:e})},children:y.jsx(am,{style:{width:"60%",height:"60%"}})})}):null};function wJ(e,r){if(e._type==="dynamic")try{if(r??=e.variant,r==="sequence")return e.sequenceLayout.bounds}catch{}return e.bounds}function CWe({points:e,controlPoints:r,labelBBox:n}){let o=1/0,a=1/0,i=-1/0,l=-1/0;if(r)for(const s of r)o=Math.min(o,s.x),a=Math.min(a,s.y),i=Math.max(i,s.x),l=Math.max(l,s.y);else for(const[s,c]of e)o=Math.min(o,s),a=Math.min(a,c),i=Math.max(i,s),l=Math.max(l,c);return n&&(o=Math.min(o,n.x),a=Math.min(a,n.y),i=Math.max(i,n.x+n.width),l=Math.max(l,n.y+n.height)),{x:o,y:a,width:i-o,height:l-a}}function $We({nodes:e,edges:r}){return ko.expand(ko.merge(...e,...r.map(CWe)),10)}function kJ(e){const{view:{drifts:r,_layout:n,...o},xynodes:a,xystore:i}=e,{nodeLookup:l,edgeLookup:s}=i.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=a.find(k=>k.id===p.id)?.data??f.data,v=f.internals.positionAbsolute,{width:w,height:x}=_o(f);return(!H3(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=q3(g.points));const x={...nd(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:$We({nodes:d,edges:u}),nodes:d,edges:u}}}const zWe=function(e){return e.get("diagram")},_J=function(e){return e.get("diagram").getSnapshot().context},SJ=()=>zn.raise({type:"sync"},{delay:200,id:"sync"}),mm=()=>zn.cancel("sync"),EJ=(e=50)=>zn.raise(({event:r})=>r,{delay:e}),CJ=e=>e.op==="reset-manual-layout"||e.op==="save-view-snapshot",$J=Wu(uCe(CJ)),zJ=()=>zn.assign(({system:e})=>{const r=_J(e);return{beforeEditing:{xynodes:r.xynodes.map(({measured:n,...o})=>({...nd(o,["selected","dragging","resizing"]),data:nd(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=>({...nd(n,["selected"]),data:nd(n.data,["active","dimmed","hovered"])})),change:kJ(r),view:r.view,synched:!1}}}),RWe=()=>zn.enqueueActions(({enqueue:e,event:r})=>{e(zJ()),r.type==="edit.start"&&e.assign({editing:r.subject})}),jWe=()=>zn.stopChild("hotkey"),P$=()=>zn.enqueueActions(({check:e,enqueue:r,self:n})=>{const o=e("can undo"),a=n.getSnapshot().children.hotkey;if(!o&&a){r.stopChild(a);return}o&&!a&&r.spawnChild("hotkey",{id:"hotkey"})}),RJ=()=>zn.assign(({context:e})=>{const r=e.beforeEditing;return r?{beforeEditing:null,editing:null,history:[...e.history,r]}:{editing:null}}),B$=()=>zn.enqueueActions(({event:e,enqueue:r})=>{if(e.type==="edit.finish"&&e.wasChanged){r(RJ()),r(SJ());return}r.assign({beforeEditing:null,editing:null})}),TWe=()=>zn.assign(({context:e})=>({beforeEditing:e.beforeEditing&&e.beforeEditing.synched===!1?{...e.beforeEditing,synched:!0}:e.beforeEditing,history:e.history.map(r=>({...r,synched:!0}))})),AWe=()=>zn.assign(({context:e})=>e.history.length<=1?{history:[]}:{history:e.history.slice(0,e.history.length-1)}),DWe=()=>zn.enqueueActions(({context:e,enqueue:r,system:n})=>{const o=rd(e.history);if(!o)return;r(mm()),r(AWe()),r(P$());const a=zWe(n);r.sendTo(a,{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(SJ())}),O$=()=>zn.assign(({context:e,system:r})=>{const n=_J(r),o=kJ(n);return{pendingChanges:[...$J(e.pendingChanges),o]}}),MWe=y3(({sendBack:e})=>{const r=lw([["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})}}),NWe=by(()=>{throw new Error("Not implemented")}),PWe=by(()=>{throw new Error("Not implemented")}),jJ=function(e){return e.system.get("diagram")},zn=rs({delays:{"350ms":350,waitBeforeSync:2e3},actors:{applyLatest:NWe,executeChange:PWe,hotkey:MWe},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"}},BWe=zn.createStateConfig({id:"idle",on:{sync:{...Hn.pending},"edit.start":{...Hn.editing}}}),OWe=zn.createStateConfig({id:"editing",tags:"pending",entry:[RWe(),mm()],on:{change:{actions:B$(),...Hn.executeChanges},"edit.finish":{actions:B$(),...Hn.afterEdit},undo:{actions:B$(),...Hn.idle}}}),IWe=zn.createStateConfig({id:"pending",tags:["pending"],entry:P$(),on:{sync:{reenter:!0,...Hn.pending},"edit.start":{actions:[O$()],...Hn.editing}},after:{waitBeforeSync:{actions:[O$()],...Hn.executeChanges}}}),LWe=zn.createStateConfig({id:"afterEdit",always:[{guard:"has pending",...Hn.pending},{...Hn.idle}]}),FWe=zn.createStateConfig({id:"applyLatestToManual",entry:[mm(),zJ()],initial:"call",on:{"*":{actions:[TS(({event:e})=>`applyLatestToManual received unexpected event: ${e.type}`),EJ(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:wy(jJ,({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:RJ(),after:{"350ms":{actions:[O$(),P$()],...Hn.executeChanges}}}}}),VWe=zn.createStateConfig({id:"executeChanges",entry:[Bt(({event:e,context:r})=>{if(e.type==="change"){if(CJ(e.change))return{pendingChanges:[...$J(r.pendingChanges),e.change]};if(!r.pendingChanges.includes(e.change))return{pendingChanges:[...r.pendingChanges,e.change]}}return{}}),mm()],invoke:{src:"executeChange",input:({context:e})=>({changes:e.pendingChanges,viewId:e.viewId}),onDone:{actions:ts(({context:e,enqueue:r})=>{const n=F1(e.pendingChanges,o=>o.op==="save-view-snapshot");n&&r.sendTo(jJ,{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:EJ()}}}),qWe=zn.createMachine({id:"editor",context:({input:e})=>({viewId:e.viewId,beforeEditing:null,editing:null,pendingChanges:[],history:[]}),initial:"idle",states:{idle:BWe,editing:OWe,pending:IWe,afterEdit:LWe,applyLatestToManual:FWe,executeChanges:VWe},on:{cancel:{actions:[mm(),Bt({editing:null,beforeEditing:null,pendingChanges:[]})],...Hn.idle},synced:{actions:TWe()},undo:{guard:"can undo",actions:DWe(),...Hn.idle},change:{...Hn.executeChanges},applyLatestToManual:{...Hn.applyLatestToManual},reset:{actions:[mm(),Bt({history:[],editing:null,beforeEditing:null,pendingChanges:[]}),jWe()],...Hn.idle}}}),TJ=qWe,AJ={};function DJ(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 a=tt(o.data,n.data),i=a?o.data:n.data;return a&&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??AJ,n.style??AJ)?o:{...U1(o,Ja),...U1(n,Ja),data:i}}),FV(e,r)?e:r)}function I$(e,r){return Ja(r)?DJ(e,r):(r=e,n=>DJ(n,r))}const g2={};function MJ(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 a=BV(o.data,n.data);let i=a?o.data:n.data;a||(Ja(o.data.hovered)&&!Ja(n.data.hovered)&&(i={...i,hovered:o.data.hovered}),Ja(o.data.dimmed)&&!Ja(n.data.dimmed)&&(i={...i,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(a&&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??g2,n.domAttributes??g2)&&tt(o.style??g2,n.style??g2))return o;const u=c&&d?o.handles:n.handles;return{...U1(o,(p,f)=>Ja(p)&&f!=="parentId"),..."measured"in o&&{measured:{width:n.width??n.initialWidth,height:n.height??n.initialHeight}},...U1(n,Ja),width:n.width??n.initialWidth,height:n.height??n.initialHeight,...u&&{handles:u},data:i}}),FV(e,r)?e:r)}function y2(e,r){return Ja(r)?MJ(e,r):(r=e,n=>MJ(n,r))}const L$={top:"40px",bottom:"22px",left:"22px",right:"22px"};function NJ(e){const r=[],n=[],o=new Map,a=I_.from(e.nodes.reduce((s,c)=>(o.set(c.id,c),c.parent||s.push({node:c,parent:null}),s),[])),i=s=>mt(o.get(s),`Node not found: ${s}`);let l;for(;l=a.dequeue();){const{node:s,parent:c}=l,d=xn(s.children,1)||s.kind==d1;if(d)for(const w of s.children)a.enqueue({node:i(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?oc.Compound:oc.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===t2.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 PJ=e=>e.find(r=>r.data.column==="subjects"&&H1(r.parentId)),HWe=by(async({input:e,self:r,signal:n})=>{const{subjectId:o,navigateFromNode:a,xyflow:i,xystore:l,update:s}=e;let{nodes:c,width:d,height:u}=l.getState();const p=NJ(s),f=()=>{const{nodes:T,edges:O}=l.getState();return{xynodes:y2(T,p.xynodes),xyedges:I$(O,p.xyedges)}},g=mt(r._parent);let v=i.getZoom();const w=Math.max(v,1),x=qs(s.bounds,d,u,yi,w,L$),k=p.xynodes.find(T=>T.type!=="empty"&&T.data.column==="subjects"&&T.data.fqn===o)??PJ(p.xynodes),C=PJ(c),_=a?c.find(T=>T.id===a):c.find(T=>T.type!=="empty"&&T.data.column!=="subjects"&&T.data.fqn===o);if(!k||!_||k.type==="empty"||!C||k.data.fqn===C.data.fqn)return await i.setViewport(x),f();const $={x:k.position.x+(k.initialWidth??0)/2,y:k.position.y+(k.initialHeight??0)/2},z=i.getInternalNode(C.id),j=yC(z),A=new Set;if(c.forEach(T=>{if(T.id!==_.id){if(T.data.column==="subjects"){A.add(T.id);return}T.parentId&&(T.parentId===_.id||A.has(T.parentId))&&A.add(T.id)}}),c=y2(c,c.flatMap(T=>A.has(T.id)?[]:T.id!==_.id?{...T,data:{...T.data,dimmed:T.data.column==="subjects"?"immediate":!0}}:{...nd(T,["parentId"]),position:{x:j.x-T.initialWidth/2,y:j.y-T.initialHeight/2},zIndex:oc.Max,hidden:!1,data:{...T.data,dimmed:!1}})),g.send({type:"update.xydata",xynodes:c,xyedges:[]}),await YO(120),p.xynodes=p.xynodes.map(tr.setDimmed(!1)),n.aborted)return f();const R=300;return i.setCenter(j.x,j.y,{zoom:v,duration:R,interpolate:"smooth"}),await YO(R),await i.setCenter($.x,$.y,{zoom:v}),f()}),lc=rs({actors:{layouter:HWe},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}}),BJ=()=>lc.assign(({event:e})=>(ht(e,"xyflow.init"),{xyflow:e.instance,xystore:e.store})),OJ=()=>lc.assign(({event:e})=>(ht(e,"update.view"),{layouted:e.layouted,...NJ(e.layouted)})),UWe=()=>lc.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 a=new Map,i=r.querySelectorAll(".react-flow__node");for(const l of i){const s=l.getAttribute("data-id");s&&o.has(s)&&a.set(s,{id:s,nodeElement:l,force:!0})}n(a,{triggerFitView:!1})}),F$=e=>lc.createAction(({context:r,event:n})=>{e??=n.type==="fitDiagram"?n:{};let{duration:o,bounds:a}=e??{};o??=450;const{xyflow:i,xystore:l}=r;He(i,"xyflow is not initialized"),He(l,"xystore is not initialized"),a??=r.layouted?.bounds;const s=Math.max(i.getZoom(),1);if(a){const{width:c,height:d}=l.getState(),u=qs(a,c,d,yi,s,L$);i.setViewport(u,o>0?{duration:o,interpolate:"smooth"}:void 0).catch(console.error)}else i.fitView({minZoom:yi,maxZoom:s,padding:L$,...o>0&&{duration:o,interpolate:"smooth"}}).catch(console.error)}),WWe=()=>lc.assign(({context:e,event:r})=>(ht(r,"xyflow.applyNodeChanges"),{xynodes:Ox(r.changes,e.xynodes)})),GWe=()=>lc.assign(({context:e,event:r})=>(ht(r,"xyflow.applyEdgeChanges"),{xyedges:Ix(r.changes,e.xyedges)})),IJ=()=>lc.enqueueActions(({system:e,event:r})=>{if(r.type!=="xyflow.edgeClick")return;const n=Rr(e).diagramActorRef,o=r.edge.data.relations;xn(o,1)&&n.send({type:"open.source",relation:o[0]})}),LJ=()=>lc.assign({xyflow:null,layouted:null,xystore:null,xyedges:[],xynodes:[]}),YWe=lc.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:WWe()},"xyflow.applyEdgeChanges":{actions:GWe()}},states:{initializing:{on:{"xyflow.init":{actions:BJ(),target:"isReady"},"update.view":{actions:OJ(),target:"isReady"},stop:"closed",close:"closed"}},isReady:{always:[{guard:"isReady",actions:[F$({duration:0}),na({type:"xyflow.updateNodeInternals"},{delay:150})],target:"active"},{target:"initializing"}]},active:{initial:"idle",tags:["active"],on:{"xyflow.nodeClick":{actions:ts(({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:ts(({event:e,context:r,system:n,enqueue:o})=>{e.edge.selected||e.edge.data.relations.length>1?o.sendTo(Rr(n).overlaysActorRef,{type:"open.relationshipDetails",viewId:r.viewId,source:e.edge.data.sourceFqn,target:e.edge.data.targetFqn}):o(IJ())})},{actions:IJ()}],"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:F$()},"update.view":{actions:OJ(),target:".layouting"},"change.scope":{actions:Bt({scope:({event:e})=>e.scope})},"xyflow.updateNodeInternals":{actions:UWe()},fitDiagram:{actions:F$()},"xyflow.resized":{actions:[si("fitDiagram"),na({type:"fitDiagram"},{id:"fitDiagram",delay:300})]},"xyflow.init":{actions:BJ()},"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)}}),si("undim.edges"),si("dim.nonhovered.edges"),na({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)}),si("dim.nonhovered.edges"),na({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:ts(({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:ts(({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:LJ()}},exit:LJ()}),FJ=YWe,XWe=rs({actors:{relationshipsBrowserLogic:FJ}}).createMachine({id:"element-details",context:({input:e})=>({...e,initiatedFrom:{node:e.initiatedFrom?.node??null,clientRect:e.initiatedFrom?.clientRect??null}}),initial:"active",states:{active:{entry:d3("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:[wy(({self:e})=>`${e.id}-relationships`,{type:"close"}),yy(({self:e})=>`${e.id}-relationships`)],on:{"change.subject":{actions:Bt({subject:({event:e})=>e.subject})},close:"closed"}},closed:{id:"closed",type:"final"}}}),ZWe=XWe;function KWe(e){const r=[],n=[],o=new Map,a=I_.from(e.nodes.reduce((s,c)=>(o.set(c.id,c),c.parent||s.push({node:c,parent:null}),s),[])),i=s=>mt(o.get(s),`Node not found: ${s}`);let l;for(;l=a.dequeue();){const{node:s,parent:c}=l,d=xn(s.children,1);if(d)for(const w of s.children)a.enqueue({node:i(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?oc.Compound:oc.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 VJ(e){return"edgeId"in e?(He(Gx(e.edgeId),"edgeId is required"),{edgeId:e.edgeId}):{source:e.source,target:e.target}}const qJ={x:"22px",y:"22px"},QWe=rs({actions:{"xyflow:fitDiagram":({context:e},r)=>{let{duration:n,bounds:o}=r??{};n??=450;const{xyflow:a,xystore:i}=e;He(a,"xyflow is not initialized"),He(i,"xystore is not initialized"),o??=e.bounds;const l=Math.max(a.getZoom(),1);if(o){const{width:s,height:c}=i.getState(),d=qs(o,s,c,yi,l,qJ);a.setViewport(d,n>0?{duration:n}:void 0).catch(console.error)}else a.fitView({minZoom:yi,maxZoom:l,padding:qJ,...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(i=>[i.source,i.target]));if(o.size===0||!r)return;const a=new Map;for(const i of o){const l=r.querySelector(`.react-flow__node[data-id="${i}"]`);l&&a.set(i,{id:i,nodeElement:l,force:!0})}n(a,{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:a}=KWe(r.data);let i=e.initialized;return i.xydata||(i={...i,xydata:!0}),{initialized:i,xynodes:y2(e.xynodes,n),xyedges:I$(e.xyedges,o),bounds:Or(e.bounds,a)?e.bounds:a}}),"open relationship source":ts(({system:e,event:r})=>{if(r.type!=="xyflow.edgeClick")return;const n=Rr(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:VJ(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}},na({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)}}),si("undim.edges"),si("dim.nonhovered.edges"),na({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)}),si("dim.nonhovered.edges"),na({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:ts(({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",si("fitDiagram"),na({type:"fitDiagram",duration:0},{id:"fitDiagram",delay:50}),na({type:"xyflow.updateNodeInternals"},{delay:75})]},"xyflow.init":{actions:"updateXYFlow"},"xyflow.applyNodeChanges":{actions:Bt({xynodes:({context:e,event:r})=>Ox(r.changes,e.xynodes)})},"xyflow.applyEdgeChanges":{actions:Bt({xyedges:({context:e,event:r})=>Ix(r.changes,e.xyedges)})},"xyflow.paneDblClick":{actions:"xyflow:fitDiagram"},"xyflow.edgeClick":{actions:"open relationship source"},"navigate.to":{actions:Bt({subject:({event:e})=>VJ(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:Yu("event")}},"xyflow.resized":{actions:[si("fitDiagram"),na({type:"fitDiagram"},{id:"fitDiagram",delay:200})]},"xyflow.updateNodeInternals":{actions:"xyflow:updateNodeInternals"}}}),JWe=QWe;var zd={},ft={},HJ=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},gm={},UJ;function V$(){if(UJ)return gm;UJ=1,Object.defineProperty(gm,"__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 HJ<"u")return HJ}function r(){const a=e();if(a.__xstate__)return a.__xstate__}function n(a){if(typeof window>"u")return;const i=r();i&&i.register(a)}const o=a=>{if(typeof window>"u")return;const i=r();i&&i.register(a)};return gm.devToolsAdapter=o,gm.getGlobal=e,gm.registerService=n,gm}var WJ;function v2(){if(WJ)return ft;WJ=1;var e=V$();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="",a="",i="#",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),ie=_(ee);return typeof ie=="string"?typeof oe=="string"?ie===oe:!1:typeof oe=="string"?oe in ie:Object.keys(oe).every(le=>le in ie?k(oe[le],ie[le]):!1)}function C(J){if(T(J))return J;const ee=[];let oe="";for(let ie=0;ietypeof 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 ie=typeof J=="object",le=ie?J:void 0;return{next:(ie?J.next:J)?.bind(le),error:(ie?J.error:ee)?.bind(le),complete:(ie?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[,ie,le]=oe,ve=J.getStateNodeById(le).config.invoke;return(Array.isArray(ve)?ve[ie]: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,ie=new Map,le=new WeakMap,ve=new Set,Ae={},{clock:Fe,logger:rt}=ee,lt={schedule:(Ke,pt,vt,Lt,No=Math.random().toString(36).slice(2))=>{const dh={source:Ke,target:pt,event:vt,delay:Lt,id:No,startedAt:Date.now()},Ia=F(Ke,No);Ze._snapshot._scheduledEvents[Ia]=dh;const Kd=Fe.setTimeout(()=>{delete Ae[Ia],delete Ze._snapshot._scheduledEvents[Ia],Ze._relay(Ke,pt,vt)},Lt);Ae[Ia]=Kd},cancel:(Ke,pt)=>{const vt=F(Ke,pt),Lt=Ae[vt];delete Ae[vt],delete Ze._snapshot._scheduledEvents[vt],Lt!==void 0&&Fe.clearTimeout(Lt)},cancelAll:Ke=>{for(const pt in Ze._snapshot._scheduledEvents){const vt=Ze._snapshot._scheduledEvents[pt];vt.source===Ke&<.cancel(Ke,vt.id)}}},It=Ke=>{if(!ve.size)return;const pt={...Ke,rootId:J.sessionId};ve.forEach(vt=>vt.next?.(pt))},Ze={_snapshot:{_scheduledEvents:(ee?.snapshot&&ee.snapshot.scheduler)??{}},_bookId:()=>`x:${q++}`,_register:(Ke,pt)=>(oe.set(Ke,pt),Ke),_unregister:Ke=>{oe.delete(Ke.sessionId);const pt=le.get(Ke);pt!==void 0&&(ie.delete(pt),le.delete(Ke))},get:Ke=>ie.get(Ke),getAll:()=>Object.fromEntries(ie.entries()),_set:(Ke,pt)=>{const vt=ie.get(Ke);if(vt&&vt!==pt)throw new Error(`Actor with system ID '${Ke}' already exists.`);ie.set(Ke,pt),le.set(pt,Ke)},inspect:Ke=>{const pt=H(Ke);return ve.add(pt),{unsubscribe(){ve.delete(pt)}}},_sendInspectionEvent:It,_relay:(Ke,pt,vt)=>{Ze._sendInspectionEvent({type:"@xstate.event",sourceRef:Ke,actorRef:pt,event:vt}),pt._send(vt)},scheduler:lt,getSnapshot:()=>({_scheduledEvents:{...Ze._snapshot._scheduledEvents}}),start:()=>{const Ke=Ze._snapshot._scheduledEvents;Ze._snapshot._scheduledEvents={};for(const pt in Ke){const{source:vt,target:Lt,event:No,delay:dh,id:Ia}=Ke[pt];lt.schedule(vt,Lt,No,dh,Ia)}},_clock:Fe,_logger:rt};return Ze}let U=!1;const Y=1;let Z=(function(J){return J[J.NotStarted=0]="NotStarted",J[J.Running=1]="Running",J[J.Stopped=2]="Stopped",J})({});const I={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=Z.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 ie={...I,...oe},{clock:le,logger:ve,parent:Ae,syncSnapshot:Fe,id:rt,systemId:lt,inspect:It}=ie;this.system=Ae?Ae.system:G(this,{clock:le,logger:ve}),It&&!Ae&&this.system.inspect(H(It)),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=Ae,this._syncSnapshot=Fe,this.options=ie,this.src=ie.src??ee,this.ref=this,this._actorScope={self:this,id:this.id,sessionId:this.sessionId,logger:this.logger,defer:Ze=>{this._deferred.push(Ze)},system:this.system,stopChild:Ze=>{if(Ze._parent!==this)throw new Error(`Cannot stop child actor ${Ze.id} of ${this.id} because it is not a child`);Ze._stop()},emit:Ze=>{const Ke=this.eventListeners.get(Ze.type),pt=this.eventListeners.get("*");if(!Ke&&!pt)return;const vt=[...Ke?Ke.values():[],...pt?pt.values():[]];for(const Lt of vt)try{Lt(Ze)}catch(No){w(No)}},actionExecutor:Ze=>{const Ke=()=>{if(this._actorScope.system._sendInspectionEvent({type:"@xstate.action",actorRef:this,action:{type:Ze.type,params:Ze.params}}),!Ze.exec)return;const pt=U;try{U=!0,Ze.exec(Ze.info,Ze.params)}finally{U=pt}};this._processingStatus===Z.Running?Ke():this._deferred.push(Ke)}},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 ie;for(;ie=this._deferred.shift();)try{ie()}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,ie){const le=H(ee,oe,ie);if(this._processingStatus!==Z.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(Ae){w(Ae)}break}}return{unsubscribe:()=>{this.observers.delete(le)}}}on(ee,oe){let ie=this.eventListeners.get(ee);ie||(ie=new Set,this.eventListeners.set(ee,ie));const le=oe.bind(void 0);return ie.add(le),{unsubscribe:()=>{ie.delete(le)}}}start(){if(this._processingStatus===Z.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=Z.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,ie;try{oe=this.logic.transition(this._snapshot,ee,this._actorScope)}catch(le){ie={err:le}}if(ie){const{err:le}=ie;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===Z.Stopped?this:(this.mailbox.clear(),this._processingStatus===Z.NotStarted?(this._processingStatus=Z.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 ie of this.observers){const le=ie.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!==Z.Running?this:(this.system.scheduler.cancelAll(this),this.mailbox.clear(),this.mailbox=new r(this._process.bind(this)),this._processingStatus=Z.Stopped,this.system._unregister(this),this)}_send(ee){this._processingStatus!==Z.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 K(J,...[ee]){return new W(J,ee)}const Q=K;function ae(J,ee,oe,ie,{sendId:le}){const ve=typeof le=="function"?le(oe,ie):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,ie){}return ee.type="xstate.cancel",ee.sendId=J,ee.resolve=ae,ee.execute=te,ee}function ue(J,ee,oe,ie,{id:le,systemId:ve,src:Ae,input:Fe,syncSnapshot:rt}){const lt=typeof Ae=="string"?V(ee.machine,Ae):Ae,It=typeof le=="function"?le(oe):le;let Ze,Ke;return lt&&(Ke=typeof Fe=="function"?Fe({context:ee.context,event:oe.event,self:J.self}):Fe,Ze=K(lt,{id:It,src:Ae,parent:J.self,syncSnapshot:rt,systemId:ve,input:Ke})),[Gr(ee,{children:{...ee.children,[It]:Ze}}),{id:le,systemId:ve,actorRef:Ze,src:Ae,input:Ke},void 0]}function _e(J,{actorRef:ee}){ee&&J.defer(()=>{ee._processingStatus!==Z.Stopped&&ee.start()})}function ce(...[J,{id:ee,systemId:oe,input:ie,syncSnapshot:le=!1}={}]){function ve(Ae,Fe){}return ve.type="xstate.spawnChild",ve.id=ee,ve.systemId=oe,ve.src=J,ve.input=ie,ve.syncSnapshot=le,ve.resolve=ue,ve.execute=_e,ve}function pe(J,ee,oe,ie,{actorRef:le}){const ve=typeof le=="function"?le(oe,ie):le,Ae=typeof ve=="string"?ee.children[ve]:ve;let Fe=ee.children;return Ae&&(Fe={...Fe},delete Fe[Ae.id]),[Gr(ee,{children:Fe}),Ae,void 0]}function xe(J,ee){if(ee){if(J.system._unregister(ee),ee._processingStatus!==Z.Running){J.stopChild(ee);return}J.defer(()=>{J.stopChild(ee)})}}function De(J){function ee(oe,ie){}return ee.type="xstate.stopChild",ee.actorRef=J,ee.resolve=pe,ee.execute=xe,ee}const Be=De;function Je(J,ee,{stateValue:oe}){if(typeof oe=="string"&&Ht(oe)){const ie=J.machine.getStateNodeById(oe);return J._nodes.some(le=>le===ie)}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:ie}){return!Et(ie[0],ee,oe,J)}function St(J){function ee(oe,ie){return!1}return ee.check=Le,ee.guards=[J],ee}function Ve(J,{context:ee,event:oe},{guards:ie}){return ie.every(le=>Et(le,ee,oe,J))}function qe(J){function ee(oe,ie){return!1}return ee.check=Ve,ee.guards=J,ee}function Xe(J,{context:ee,event:oe},{guards:ie}){return ie.some(le=>Et(le,ee,oe,J))}function Ot(J){function ee(oe,ie){return!1}return ee.check=Xe,ee.guards=J,ee}function Et(J,ee,oe,ie){const{machine:le}=ie,ve=typeof J=="function",Ae=ve?J:le.implementations.guards[typeof J=="string"?J:J.type];if(!ve&&!Ae)throw new Error(`Guard '${typeof J=="string"?J:J.type}' is not implemented.'.`);if(typeof Ae!="function")return Et(Ae,ee,oe,ie);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 Ae?Ae.check(ie,Fe,Ae):Ae(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 ie=J.parent;for(;ie&&ie!==ee;)oe.push(ie),ie=ie.parent;return oe}function yt(J){const ee=new Set(J),oe=jr(ee);for(const ie of ee)if(ie.type==="compound"&&(!oe.get(ie)||!oe.get(ie).length))sa(ie).forEach(le=>ee.add(le));else if(ie.type==="parallel"){for(const le of ke(ie))if(le.type!=="history"&&!ee.has(le)){const ve=sa(le);for(const Ae of ve)ee.add(Ae)}}for(const ie of ee){let le=ie.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 ie={};for(const le of oe)ie[le.key]=xt(le,ee);return ie}function jr(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,jr(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]===i;function Zr(J,ee){return J.transitions.get(ee)||[...J.transitions.keys()].filter(oe=>{if(oe===l)return!0;if(!oe.endsWith(".*"))return!1;const ie=oe.split("."),le=ee.split(".");for(let ve=0;veie.length-oe.length).flatMap(oe=>J.transitions.get(oe))}function Gt(J){const ee=J.config.after;if(!ee)return[];const oe=ie=>{const le=u(ie,J.id),ve=le.type;return J.entry.push(Zd(le,{id:ve,delay:ie})),J.exit.push(re(ve)),ve};return Object.keys(ee).flatMap(ie=>{const le=ee[ie],ve=typeof le=="string"?{target:le}:le,Ae=Number.isNaN(+ie)?ie:+ie,Fe=oe(Ae);return A(ve).map(rt=>({...rt,event:Fe,delay:Ae}))}).map(ie=>{const{delay:le}=ie;return{...ln(J,ie.event,ie),delay:le}})}function ln(J,ee,oe){const ie=L(oe.target),le=oe.reenter??!1,ve=oo(J,ie),Ae={...oe,actions:A(oe.actions),guard:oe.guard,target:ve,source:J,reenter:le,eventType:ee,toJSON:()=>({...Ae,source:`#${J.id}`,target:ve?ve.map(Fe=>`#${Fe.id}`):void 0})};return Ae}function Wn(J){const ee=new Map;if(J.config.on)for(const oe of Object.keys(J.config.on)){if(oe===a)throw new Error('Null events ("") cannot be specified as a transition key. Use `always: { ... }` instead.');const ie=J.config.on[oe];ee.set(oe,P(ie).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(ie=>ln(J,oe,ie)))}for(const oe of J.invoke){if(oe.onDone){const ie=`xstate.done.actor.${oe.id}`;ee.set(ie,P(oe.onDone).map(le=>ln(J,ie,le)))}if(oe.onError){const ie=`xstate.error.actor.${oe.id}`;ee.set(ie,P(oe.onError).map(le=>ln(J,ie,le)))}if(oe.onSnapshot){const ie=`xstate.snapshot.${oe.id}`;ee.set(ie,P(oe.onSnapshot).map(le=>ln(J,ie,le)))}}for(const oe of J.after){let ie=ee.get(oe.eventType);ie||(ie=[],ee.set(oe.eventType,ie)),ie.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 ie={source:J,actions:!ee||typeof ee=="string"?[]:A(ee.actions),eventType:null,reenter:!1,target:oe?[oe]:[],toJSON:()=>({...ie,source:`#${J.id}`,target:oe?[`#${oe.id}`]:[]})};return ie}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 ie=oe[0]===n;if(ie&&!J.parent)return bs(J,oe.slice(1));const le=ie?J.key+oe:oe;if(J.parent)try{return bs(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 Uo(J){const ee=L(J.config.target);return ee?{target:ee.map(oe=>typeof oe=="string"?bs(J.parent,oe):oe)}:J.parent.initial}function To(J){return J.type==="history"}function sa(J){const ee=Al(J);for(const oe of ee)for(const ie of Ye(oe,J))ee.add(ie);return ee}function Al(J){const ee=new Set;function oe(ie){if(!ee.has(ie)){if(ee.add(ie),ie.type==="compound")oe(ie.initial.target[0]);else if(ie.type==="parallel")for(const le of ke(ie))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 bs(J,ee){if(typeof ee=="string"&&Ht(ee))try{return J.machine.getStateNodeById(ee)}catch{}const oe=C(ee).slice();let ie=J;for(;oe.length;){const le=oe.shift();if(!le.length)break;ie=Ao(ie,le)}return ie}function xs(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),ie=oe.map(le=>Ao(J,le)).filter(Boolean);return[J.machine.root,J].concat(ie,oe.reduce((le,ve)=>{const Ae=Ao(J,ve);if(!Ae)return le;const Fe=xs(Ae,ee[ve]);return le.concat(Fe)},[]))}function kc(J,ee,oe,ie){const le=Ao(J,ee).next(oe,ie);return!le||!le.length?J.next(oe,ie):le}function Dl(J,ee,oe,ie){const le=Object.keys(ee),ve=Ao(J,le[0]),Ae=ws(ve,ee[le[0]],oe,ie);return!Ae||!Ae.length?J.next(oe,ie):Ae}function ih(J,ee,oe,ie){const le=[];for(const ve of Object.keys(ee)){const Ae=ee[ve];if(!Ae)continue;const Fe=Ao(J,ve),rt=ws(Fe,Ae,oe,ie);rt&&le.push(...rt)}return le.length?le:J.next(oe,ie)}function ws(J,ee,oe,ie){return typeof ee=="string"?kc(J,ee,oe,ie):Object.keys(ee).length===1?Dl(J,ee,oe,ie):ih(J,ee,oe,ie)}function Hd(J){return Object.keys(J.states).map(ee=>J.states[ee]).filter(ee=>ee.type==="history")}function Wo(J,ee){let oe=J;for(;oe.parent&&oe.parent!==ee;)oe=oe.parent;return oe.parent===ee}function _c(J,ee){const oe=new Set(J),ie=new Set(ee);for(const le of oe)if(ie.has(le))return!0;for(const le of ie)if(oe.has(le))return!0;return!1}function ks(J,ee,oe){const ie=new Set;for(const le of J){let ve=!1;const Ae=new Set;for(const Fe of ie)if(_c(Nr([le],ee,oe),Nr([Fe],ee,oe)))if(Wo(le.source,Fe.source))Ae.add(Fe);else{ve=!0;break}if(!ve){for(const Fe of Ae)ie.delete(Fe);ie.add(le)}}return Array.from(ie)}function Ud(J){const[ee,...oe]=J;for(const ie of Ye(ee,void 0))if(oe.every(le=>Wo(le,ie)))return ie}function _s(J,ee){if(!J.target)return[];const oe=new Set;for(const ie of J.target)if(To(ie))if(ee[ie.id])for(const le of ee[ie.id])oe.add(le);else for(const le of _s(Uo(ie),ee))oe.add(le);else oe.add(ie);return[...oe]}function Go(J,ee){const oe=_s(J,ee);if(!oe)return;if(!J.reenter&&oe.every(le=>le===J.source||Wo(le,J.source)))return J.source;const ie=Ud(oe.concat(J.source));if(ie)return ie;if(!J.reenter)return J.source.machine.root}function Nr(J,ee,oe){const ie=new Set;for(const le of J)if(le.target?.length){const ve=Go(le,oe);le.reenter&&le.source===ve&&ie.add(ve);for(const Ae of ee)Wo(Ae,ve)&&ie.add(Ae)}return[...ie]}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,ie,le,ve){if(!J.length)return ee;const Ae=new Set(ee._nodes);let Fe=ee.historyValue;const rt=ks(J,Ae,Fe);let lt=ee;le||([lt,Fe]=Ci(lt,ie,oe,rt,Ae,Fe,ve,oe.actionExecutor)),lt=ho(lt,ie,oe,rt.flatMap(Ze=>Ze.actions),ve,void 0),lt=Sc(lt,ie,oe,rt,Ae,ve,Fe,le);const It=[...Ae];lt.status==="done"&&(lt=ho(lt,ie,oe,It.sort((Ze,Ke)=>Ke.order-Ze.order).flatMap(Ze=>Ze.exit),ve,void 0));try{return Fe===ee.historyValue&&Mn(ee._nodes,Ae)?lt:Gr(lt,{_nodes:It,historyValue:Fe})}catch(Ze){throw Ze}}function Ml(J,ee,oe,ie,le){if(ie.output===void 0)return;const ve=p(le.id,le.output!==void 0&&le.parent?R(le.output,J.context,ee,oe.self):void 0);return R(ie.output,J.context,ve,oe.self)}function Sc(J,ee,oe,ie,le,ve,Ae,Fe){let rt=J;const lt=new Set,It=new Set;lh(ie,Ae,It,lt),Fe&&It.add(J.machine.root);const Ze=new Set;for(const Ke of[...lt].sort((pt,vt)=>pt.order-vt.order)){le.add(Ke);const pt=[];pt.push(...Ke.entry);for(const vt of Ke.invoke)pt.push(ce(vt.src,{...vt,syncSnapshot:!!vt.onSnapshot}));if(It.has(Ke)){const vt=Ke.initial.actions;pt.push(...vt)}if(rt=ho(rt,ee,oe,pt,ve,Ke.invoke.map(vt=>vt.id)),Ke.type==="final"){const vt=Ke.parent;let Lt=vt?.type==="parallel"?vt:vt?.parent,No=Lt||Ke;for(vt?.type==="compound"&&ve.push(p(vt.id,Ke.output!==void 0?R(Ke.output,rt.context,ee,oe.self):void 0));Lt?.type==="parallel"&&!Ze.has(Lt)&&qt(le,Lt);)Ze.add(Lt),ve.push(p(Lt.id)),No=Lt,Lt=Lt.parent;if(Lt)continue;rt=Gr(rt,{status:"done",output:Ml(rt,ee,oe,rt.machine.root,No)})}}return rt}function lh(J,ee,oe,ie){for(const le of J){const ve=Go(le,ee);for(const Fe of le.target||[])!To(Fe)&&(le.source!==Fe||le.source!==ve||le.reenter)&&(ie.add(Fe),oe.add(Fe)),Ba(Fe,ee,oe,ie);const Ae=_s(le,ee);for(const Fe of Ae){const rt=Ye(Fe,ve);ve?.type==="parallel"&&rt.push(ve),Ei(ie,ee,oe,rt,!le.source.parent&&le.reenter?void 0:ve)}}}function Ba(J,ee,oe,ie){if(To(J))if(ee[J.id]){const le=ee[J.id];for(const ve of le)ie.add(ve),Ba(ve,ee,oe,ie);for(const ve of le)Nl(ve,J.parent,ie,ee,oe)}else{const le=Uo(J);for(const ve of le.target)ie.add(ve),le===J.parent?.initial&&oe.add(J.parent),Ba(ve,ee,oe,ie);for(const ve of le.target)Nl(ve,J.parent,ie,ee,oe)}else if(J.type==="compound"){const[le]=J.initial.target;To(le)||(ie.add(le),oe.add(le)),Ba(le,ee,oe,ie),Nl(le,J,ie,ee,oe)}else if(J.type==="parallel")for(const le of ke(J).filter(ve=>!To(ve)))[...ie].some(ve=>Wo(ve,le))||(To(le)||(ie.add(le),oe.add(le)),Ba(le,ee,oe,ie))}function Ei(J,ee,oe,ie,le){for(const ve of ie)if((!le||Wo(ve,le))&&J.add(ve),ve.type==="parallel")for(const Ae of ke(ve).filter(Fe=>!To(Fe)))[...J].some(Fe=>Wo(Fe,Ae))||(J.add(Ae),Ba(Ae,ee,oe,J))}function Nl(J,ee,oe,ie,le){Ei(oe,ie,le,Ye(J,ee))}function Ci(J,ee,oe,ie,le,ve,Ae,Fe){let rt=J;const lt=Nr(ie,le,ve);lt.sort((Ze,Ke)=>Ke.order-Ze.order);let It;for(const Ze of lt)for(const Ke of Hd(Ze)){let pt;Ke.history==="deep"?pt=vt=>be(vt)&&Wo(vt,Ze):pt=vt=>vt.parent===Ze,It??={...ve},It[Ke.id]=Array.from(le).filter(pt)}for(const Ze of lt)rt=ho(rt,ee,oe,[...Ze.exit,...Ze.invoke.map(Ke=>De(Ke.id))],Ae,void 0),le.delete(Ze);return[rt,It||ve]}function $i(J,ee){return J.implementations.actions[ee]}function ca(J,ee,oe,ie,le,ve){const{machine:Ae}=J;let Fe=J;for(const rt of ie){const lt=typeof rt=="function",It=lt?rt:$i(Ae,typeof rt=="string"?rt:rt.type),Ze={context:Fe.context,event:ee,self:oe.self,system:oe.system},Ke=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(!It||!("resolve"in It)){oe.actionExecutor({type:typeof rt=="string"?rt:typeof rt=="object"?rt.type:rt.name||"(anonymous)",info:Ze,params:Ke,exec:It});continue}const pt=It,[vt,Lt,No]=pt.resolve(oe,Fe,Ze,Ke,It,le);Fe=vt,"retryResolve"in pt&&ve?.push([pt,Lt]),"execute"in pt&&oe.actionExecutor({type:pt.type,info:Ze,params:Lt,exec:pt.execute.bind(null,oe,Lt)}),No&&(Fe=ca(Fe,ee,oe,No,le,ve))}return Fe}function ho(J,ee,oe,ie,le,ve){const Ae=ve?[]:void 0,Fe=ca(J,ee,oe,ie,{internalQueue:le,deferredActorIds:ve},Ae);return Ae?.forEach(([rt,lt])=>{rt.retryResolve(oe,Fe,lt)}),Fe}function Wr(J,ee,oe,ie){let le=J;const ve=[];function Ae(lt,It,Ze){oe.system._sendInspectionEvent({type:"@xstate.microstep",actorRef:oe.self,event:It,snapshot:lt,_transitions:Ze}),ve.push(lt)}if(ee.type===d)return le=Gr(Ec(le,ee,oe),{status:"stopped"}),Ae(le,ee,[]),{snapshot:le,microstates:ve};let Fe=ee;if(Fe.type!==s){const lt=Fe,It=O(lt),Ze=Cc(lt,le);if(It&&!Ze.length)return le=Gr(J,{status:"error",error:lt.error}),Ae(le,lt,[]),{snapshot:le,microstates:ve};le=Do(Ze,J,oe,Fe,!1,ie),Ae(le,lt,Ze)}let rt=!0;for(;le.status==="active";){let lt=rt?Oa(le,Fe):[];const It=lt.length?le:void 0;if(!lt.length){if(!ie.length)break;Fe=ie.shift(),lt=Cc(Fe,le)}le=Do(lt,le,oe,Fe,!1,ie),rt=le!==It,Ae(le,Fe,lt)}return le.status!=="active"&&Ec(le,Fe,oe),{snapshot:le,microstates:ve}}function Ec(J,ee,oe){return ho(J,ee,oe,Object.values(J.children).map(ie=>De(ie)),[],void 0)}function Cc(J,ee){return ee.machine.getTransitionData(ee,J)}function Oa(J,ee){const oe=new Set,ie=J._nodes.filter(be);for(const le of ie)e:for(const ve of[le].concat(Ye(le,void 0)))if(ve.always){for(const Ae of ve.always)if(Ae.guard===void 0||Et(Ae.guard,J.context,ee,J)){oe.add(Ae);break e}}return ks(Array.from(oe),new Set(J._nodes),J.historyValue)}function zi(J,ee){const oe=yt(xs(J,ee));return er(J,[...oe])}function Wd(J){return!!J&&typeof J=="object"&&"machine"in J&&"value"in J}const Ss=function(J){return k(J,this.value)},Gd=function(J){return this.tags.has(J)},sh=function(J){const ee=this.machine.getTransitionData(this,J);return!!ee?.length&&ee.some(oe=>oe.target!==void 0||oe.actions.length)},Es=function(){const{_nodes:J,tags:ee,machine:oe,getMeta:ie,toJSON:le,can:ve,hasTag:Ae,matches:Fe,...rt}=this;return{...rt,tags:Array.from(ee)}},Cs=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:Ss,hasTag:Gd,can:sh,getMeta:Cs,toJSON:Es}}function Gr(J,ee={}){return Mo({...J,...ee},J.machine)}function Yd(J){if(typeof J!="object"||J===null)return{};const ee={};for(const oe in J){const ie=J[oe];Array.isArray(ie)&&(ee[oe]=ie.map(le=>({id:le.id})))}return ee}function ch(J,ee){const{_nodes:oe,tags:ie,machine:le,children:ve,context:Ae,can:Fe,hasTag:rt,matches:lt,getMeta:It,toJSON:Ze,...Ke}=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{...Ke,context:Ri(Ae),children:pt,historyValue:Yd(Ke.historyValue)}}function Ri(J){let ee;for(const oe in J){const ie=J[oe];if(ie&&typeof ie=="object")if("sessionId"in ie&&"send"in ie&&"ref"in ie)ee??=Array.isArray(J)?J.slice():{...J},ee[oe]={xstate$$type:Y,id:ie.id};else{const le=Ri(ie);le!==ie&&(ee??=Array.isArray(J)?J.slice():{...J},ee[oe]=le)}}return ee??J}function Xd(J,ee,oe,ie,{event:le,id:ve,delay:Ae},{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,ie):le;let It;if(typeof Ae=="string"){const Ze=rt&&rt[Ae];It=typeof Ze=="function"?Ze(oe,ie):Ze}else It=typeof Ae=="function"?Ae(oe,ie):Ae;return typeof It!="number"&&Fe.push(lt),[ee,{event:lt,id:ve,delay:It},void 0]}function ji(J,ee){const{event:oe,delay:ie,id:le}=ee;if(typeof ie=="number"){J.defer(()=>{const ve=J.self;J.system.scheduler.schedule(ve,ve,oe,ie,le)});return}}function Zd(J,ee){function oe(ie,le){}return oe.type="xstate.raise",oe.event=J,oe.id=ee?.id,oe.delay=ee?.delay,oe.resolve=Xd,oe.execute=ji,oe}return ft.$$ACTOR_TYPE=Y,ft.Actor=W,ft.NULL_EVENT=a,ft.ProcessingStatus=Z,ft.STATE_DELIMITER=n,ft.XSTATE_ERROR=c,ft.XSTATE_STOP=d,ft.and=qe,ft.cancel=re,ft.cloneMachineSnapshot=Gr,ft.createActor=K,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=Zr,ft.getDelayedTransitions=Gt,ft.getInitialStateNodes=Al,ft.getPersistedSnapshot=ch,ft.getStateNodeByPath=bs,ft.getStateNodes=xs,ft.interpret=Q,ft.isInFinalState=qt,ft.isMachineSnapshot=Wd,ft.isStateId=Ht,ft.macrostep=Wr,ft.mapValues=z,ft.matchesState=k,ft.microstep=Do,ft.not=St,ft.or=Ot,ft.pathToStateValue=$,ft.raise=Zd,ft.resolveActionsAndContext=ho,ft.resolveReferencedActor=V,ft.resolveStateValue=zi,ft.spawnChild=ce,ft.stateIn=st,ft.stop=Be,ft.stopChild=De,ft.toArray=A,ft.toObserver=H,ft.toStatePath=C,ft.toTransitionConfigArray=P,ft.transitionNode=ws,ft}var GJ;function eGe(){if(GJ)return zd;GJ=1,Object.defineProperty(zd,"__esModule",{value:!0});var e=v2();return V$(),zd.and=e.and,zd.evaluateGuard=e.evaluateGuard,zd.not=e.not,zd.or=e.or,zd.stateIn=e.stateIn,zd}var Rd=eGe();const tGe=y3(({sendBack:e})=>{const r=lw([["Escape",n=>{n.stopPropagation(),e({type:"close"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r,{capture:!0}),()=>{document.body.removeEventListener("keydown",r,{capture:!0})}}),dl=rs({actors:{relationshipDetails:JWe,elementDetails:ZWe,relationshipsBrowser:FJ,hotkey:tGe},guards:{"has overlays?":({context:e})=>e.overlays.length>0,"close specific overlay?":({context:e,event:r})=>(ht(r,"close"),Gx(r.actorId)&&e.overlays.some(n=>n.id===r.actorId)),"last: is relationshipDetails?":({context:e})=>rd(e.overlays)?.type==="relationshipDetails","last: is relationshipsBrowser?":({context:e})=>rd(e.overlays)?.type==="relationshipsBrowser"}}),rGe=()=>dl.enqueueActions(({context:e,enqueue:r})=>{if(e.overlays.length===0)return;const n=rd(e.overlays)?.id;n&&(r.sendTo(n,{type:"close"}),r.stopChild(n),r.assign({overlays:e.overlays.filter(o=>o.id!==n)}))}),nGe=()=>dl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"close");const o=n.actorId;if(!Gx(o))return;const a=e.overlays.find(i=>i.id===o)?.id;a&&(r.sendTo(a,{type:"close"}),r.stopChild(a),r.assign({overlays:e.overlays.filter(i=>i.id!==a)}))}),YJ=()=>dl.enqueueActions(({context:e,enqueue:r})=>{for(const{id:n}of ACe(e.overlays))r.sendTo(n,{type:"close"}),r.stopChild(n);r.assign({overlays:[]})}),oGe=()=>dl.enqueueActions(({context:e,enqueue:r,event:n})=>{if(ht(n,"open.elementDetails"),e.overlays.some(a=>a.type==="elementDetails"&&a.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}]})}),aGe=()=>dl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"open.relationshipDetails");const o=rd(e.overlays);if(o?.type==="relationshipDetails"){r.sendTo(o.id,{...n,type:"navigate.to"});return}const a=`relationshipDetails-${e.seq}`;r.spawnChild("relationshipDetails",{id:a,input:n,syncSnapshot:!0}),r.assign({seq:e.seq+1,overlays:[...e.overlays,{id:a,type:"relationshipDetails"}]})}),iGe=()=>dl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"open.relationshipsBrowser");const o=rd(e.overlays);if(o?.type==="relationshipsBrowser"){r.sendTo(o.id,{type:"navigate.to",subject:n.subject,viewId:n.viewId});return}const a=`relationshipsBrowser-${e.seq}`;r.spawnChild("relationshipsBrowser",{id:a,input:n,syncSnapshot:!0}),r.assign({seq:e.seq+1,overlays:[...e.overlays,{id:a,type:"relationshipsBrowser",subject:n.subject}]})}),XJ=()=>dl.enqueueActions(({enqueue:e,event:r})=>{switch(console.log("openOverlay event",r),ht(r,["open.elementDetails","open.relationshipDetails","open.relationshipsBrowser"]),r.type){case"open.elementDetails":e(oGe());break;case"open.relationshipDetails":e(aGe());break;case"open.relationshipsBrowser":e(iGe());break}}),lGe=()=>dl.spawnChild("hotkey",{id:"hotkey"}),ZJ=()=>dl.stopChild("hotkey"),KJ=()=>dl.enqueueActions(({enqueue:e,context:r})=>{r.overlays.length===0&&(console.log("No overlays left, raising close event"),e.raise({type:"close"}))}),sGe=dl.createMachine({id:"overlays",context:()=>({seq:1,overlays:[]}),initial:"idle",states:{idle:{on:{"open.*":{actions:XJ(),target:"active"}}},active:{entry:[lGe()],exit:[ZJ()],on:{"open.*":{actions:XJ()},close:[{guard:Rd.not("has overlays?"),target:"idle"},{guard:"close specific overlay?",actions:[nGe(),KJ()]},{actions:[rGe(),KJ()]}],"close.all":{actions:[YJ()],target:"idle"}}},final:{entry:[YJ(),ZJ()],type:"final"}}}),cGe=sGe,dGe=rs({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"}}}}}),uGe=dGe,pGe=y3(({sendBack:e})=>{const r=lw([["Escape",o=>{o.stopPropagation(),e({type:"key.esc"})},{preventDefault:!0}]]),n=lw([["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})}}),hGe=y3(({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)}}),b2=e=>{let r=e.toggledFeatures;const n=Kn(e.activeWalkthrough),o=e.features.enableCompareWithLatest&&(r.enableCompareWithLatest??!1)&&Kn(e.view._layout)&&!n,a=e.features.enableReadOnly||(r.enableReadOnly??!1)||n||e.dynamicViewVariant==="sequence"&&e.view._type==="dynamic"||o&&e.view._layout==="auto";return{enableCompareWithLatest:o,enableReadOnly:a}},q$=e=>b2(e).enableReadOnly,Qe=rs({actors:{hotkeyActorLogic:pGe,overlaysActorLogic:cGe,searchActorLogic:uGe,mediaPrintActorLogic:hGe,editorActor:TJ},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&&q$(e),"enabled: Readonly":({context:e})=>q$(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})=>!q$(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;Xo(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;Xo(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)}}),Rn={idle:"#idle",focused:"#focused",walkthrough:"#walkthrough",printing:"#printing",navigating:"#navigating"},fGe=[["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"}]],QJ=wt("outline","lock-open-2","LockOpen2",fGe),mGe=[["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"}]],gGe=wt("outline","lock","Lock",mGe),yGe=e=>{const r=b2(e).enableCompareWithLatest&&!!e.view.drifts&&e.view._layout==="auto",n=e.view._type==="dynamic"&&e.dynamicViewVariant==="sequence",o=!Kn(e.activeWalkthrough);return{visible:e.features.enableEditor&&o,disabled:r||n,isReadOnly:e.toggledFeatures.enableReadOnly??!1}},vGe=()=>{const{visible:e,disabled:r,isReadOnly:n}=ci(yGe),o=Nt();return y.jsx(Cn,{mode:"popLayout",children:e&&y.jsxs(pr,{component:vi,layout:"position",layoutDependency:n,disabled:r,onClick:a=>{a.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(QJ,{size:14,stroke:2,style:{display:n?"none":void 0}}),y.jsx(gGe,{size:14,stroke:2,style:{display:n?void 0:"none"}}),y.jsx(zr,{className:fe({fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8}),style:{display:n?"block":"none"},children:"Edit"})]})})},bGe=[["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"}]],xGe=wt("filled","player-play-filled","PlayerPlayFilled",bGe),JJ=S.forwardRef((e,r)=>y.jsx(Vn,{variant:"filled",size:"xs",fw:"500",...e,ref:r,component:vi,whileTap:{scale:.95},layout:"position",layoutId:"trigger-dynamic-walkthrough",className:fe({flexShrink:0})}));function wGe(){const{enableReadOnly:e,enableCompareWithLatest:r}=sr(),n=Nt(),o=i0();let a="Start Dynamic View Walkthrough";switch(!0){case!e:a="Walkthrough not available in Edit mode";break;case r:a="Walkthrough not available when Compare is active";break}return y.jsx(vJ,{label:a,children:y.jsx(JJ,{onClick:i=>{i.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(xGe,{size:10}),children:"Start"})})}const kGe=S.forwardRef(({value:e,onChange:r},n)=>y.jsx(zr,{ref:n,layout:"position",children:y.jsx(Mf,{size:"xs",value:e,component:zr,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 _Ge(){const e=ci(n=>n.dynamicViewVariant),r=Nt();return y.jsxs(Cn,{children:[y.jsx(kGe,{value:e,onChange:n=>{r.switchDynamicViewVariant(n)}}),y.jsx(wGe,{},"trigger-dynamic-walkthrough")]})}const eee=S.memo(()=>{const{enableSearch:e,enableCompareWithLatest:r}=sr(),n=Nt(),o=nf();return y.jsx(Cn,{children:e&&!r&&y.jsxs(pr,{component:vi,layout:"position",onClick:a=>{a.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(R$,{size:14,stroke:2.5}),y.jsx(hr,{css:{fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8,whiteSpace:"nowrap"},children:o?"⌘ + K":"Ctrl + K"})]})})});eee.displayName="SearchControl";const SGe=({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}=b2(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 H$(){const e=Hf(),r=pn(e,SGe,Or),n=it(l=>{if(!r.isEnabled){console.warn("Compare with latest feature is not enabled");return}e.send({type:"emit.onLayoutTypeChange",layoutType:l})}),o=it(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})}),a=it(()=>{if(!r.isEnabled){console.warn("Compare with latest feature is not enabled");return}e.send({type:"layout.resetManualLayout"})}),i=it(()=>{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:a,applyLatestToManual:i}]}const EGe=[["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"}]],tee=wt("outline","alert-triangle","AlertTriangle",EGe),ree=S.memo(()=>{const[e,{toggleCompare:r}]=H$(),n=fm(),{drifts:o,isActive:a,isEnabled:i}=e;return y.jsx(Cn,{propagate:!0,children:i&&!a&&y.jsxs(Af,{position:"bottom-start",openDelay:600,closeDelay:200,floatingStrategy:"absolute",offset:{mainAxis:4,crossAxis:-22},...n,children:[y.jsx(W9,{children:y.jsx(pr,{component:vi,layout:"position",onClick:l=>{l.stopPropagation(),r()},whileTap:{scale:.95,translateY:1},className:Ge("group",eK({variant:"filled",type:"warning"}),qn({gap:"xxs",padding:"1.5",rounded:"sm",userSelect:"none",cursor:"pointer",fontSize:"xs",fontWeight:600})),children:a?y.jsx(y.Fragment,{children:"Stop Compare"}):y.jsx(tee,{size:18})})}),y.jsx(H9,{p:"0",children:y.jsxs(dy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"View is out of sync",children:[y.jsx(at,{mt:2,size:"sm",lh:"xs",children:"Model has changed since this view was last updated."}),y.jsxs(at,{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"})]})})]})})});ree.displayName="ManualLayoutWarning";const CGe=({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&&y8(r.title))??"Untitled View",isDynamicView:(e.viewModel?._type??r._type)==="dynamic"}},nee=S.memo(()=>{const e=i0(),{enableNavigationButtons:r,enableDynamicViewWalkthrough:n}=sr(),{folders:o,viewTitle:a,isDynamicView:i}=pn(e.actorRef,CGe,tt),l=o.flatMap(({folderPath:c,title:d},u)=>[y.jsx(pr,{component:vi,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(bJ,{},`separator-${u}`)]),s=y.jsx(pr,{component:vi,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:Ge("mantine-active",m2({truncate:!0}),fe({userSelect:"none"})),title:a,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:a},"view-title");return y.jsxs(Cn,{propagate:!0,mode:"popLayout",children:[y.jsx(hWe,{},"burger-button"),r&&y.jsx(gWe,{},"nav-buttons"),y.jsxs(zr,{layout:"position",className:qn({gap:"1",flexShrink:1,flexGrow:1,overflow:"hidden"}),children:[l,s]},"breadcrumbs"),y.jsxs(zr,{layout:"position",className:qn({gap:"0.5",flexGrow:0,_empty:{display:"none"}}),children:[y.jsx(xWe,{onOpen:()=>e.closeDropdown()}),y.jsx(EWe,{}),y.jsx(vGe,{})]},"actions"),n&&i&&y.jsx(_Ge,{},"dynamic-view-controls"),y.jsx(eee,{},"search-control"),y.jsx(ree,{},"outdated-manual-layout-warning")]})});nee.displayName="NavigationPanelControls";const U$=S.forwardRef(({className:e,truncateLabel:r=!0,...n},o)=>y.jsx(Q9,{...n,component:"button",classNames:gFe({truncateLabel:r}),className:Ge("group","mantine-active",e),ref:o}));U$.displayName="NavigationLink";const $Ge=S.createContext(null),zGe=[],RGe=()=>{},jGe={projects:zGe,onProjectChange:RGe};function TGe(){return S.useContext($Ge)??jGe}function AGe(){const e=S.useContext(fy);if(!e)throw new Error("No LikeC4ModelProvider found");return e.projectId}const DGe=S.memo(e=>{const{projects:r,onProjectChange:n}=TGe(),o=AGe();return r.length<=1?null:y.jsxs(Ir,{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(t3,{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(xC,{opacity:.5,size:12,stroke:1.5}),children:o})}),y.jsx(sy,{children:r.map(({id:a,title:i})=>y.jsx(cy,{onClick:l=>{if(o===a){l.stopPropagation();return}n(a)},children:i??a},a))})]})]})}),MGe=[["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"}]],NGe=wt("filled","direction-sign-filled","DirectionSignFilled",MGe),PGe=[["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"}]],BGe=wt("filled","star-filled","StarFilled",PGe),OGe=[["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"}]],IGe=wt("filled","folder-filled","FolderFilled",OGe),oee=Y1({siblingSelector:"[data-likec4-focusable]",parentSelector:"[data-likec4-breadcrumbs-dropdown]",activateOnFocus:!1,loop:!0,orientation:"vertical"});function LGe(e){return e.context.searchQuery.trim().length>=2}const aee=S.memo(()=>{const e=i0(),r=N$(LGe);za("paneClick",()=>{e.closeDropdown()}),za("nodeClick",()=>{e.closeDropdown()}),za("edgeClick",()=>{e.closeDropdown()});const n=pze(o=>{e.send({type:"searchQuery.change",value:o})},250);return y.jsxs(Xs,{className:Ge("nowheel",my({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(DGe,{}),y.jsx(Ir,{gap:"xs",children:y.jsx(QGe,{defaultValue:e.actorRef.getSnapshot().context.searchQuery,onChange:n})}),y.jsx(ta,{scrollbars:"x",type:"auto",offsetScrollbars:"present",classNames:{root:fe({maxWidth:["calc(100vw - 50px)","calc(100cqw - 50px)"]})},styles:{viewport:{overscrollBehavior:"none"}},children:r?y.jsx(qGe,{}):y.jsx(XGe,{})})]})});aee.displayName="NavigationPanelDropdown";function FGe(e){return Qb(e.context.searchQuery)}const VGe=nP(xa),qGe=S.memo(()=>{const e=Lo(),r=i0(),n=pn(r.actorRef,FGe),o=S.useDeferredValue(n),a=o.includes(xa),i=a?o.split(xa):o,[l,s]=S.useState([]);return S.useEffect(()=>{s(c=>{const d=Jr(e.views(),Bs(u=>a&&u.$view.title?Qb(u.$view.title).toLowerCase().includes(o):u.id.toLowerCase().includes(o)||!!u.title?.toLowerCase().includes(o)),wke(20),m1(),MCe((u,p)=>VGe(u.folder.path,p.folder.path)));return Or(d,c)?c:d})},[e,o,a]),l.length===0?y.jsx("div",{children:"no results"}):y.jsx(ta,{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(ip,{gap:"0.5",children:l.map(c=>y.jsx(UGe,{view:c,highlight:i,onClick:d=>{d.stopPropagation(),r.selectView(c.id)},"data-likec4-focusable":!0,onKeyDown:oee},c.id))})})}),HGe=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!"}}),iee=fe({_groupFocus:{color:"[inherit!]",transition:"none"}});function UGe({view:e,highlight:r,...n}){const o=e.folder,a=see[e.id==="index"?"index":e._type],i=y.jsx(Qs,{component:"div",className:Ge(iee,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",HGe);if(o.isRoot)return y.jsxs(pr,{...n,className:l,children:[a,i]});const s=o.breadcrumbs.map(c=>y.jsx(Qs,{component:"div",className:Ge(fe({_groupHover:{color:"mantine.colors.dimmed"}}),iee,m2({dimmed:!0,truncate:!0})),maw:170,highlight:v7(r)?r:[],children:c.title},c.path));return s.push(y.jsxs(Ir,{gap:"[4px]",children:[a,i]})),y.jsxs(pr,{...n,className:l,children:[lee,y.jsx(Kw,{separator:y.jsx(Sd,{size:12,stroke:1.5}),separatorMargin:3,children:s})]})}const WGe=y.jsx(Sd,{size:12,stroke:1.5,className:"mantine-rotate-rtl"}),lee=y.jsx(IGe,{size:16,className:fe({opacity:{base:.3,_groupHover:.5,_groupActive:.5,_groupFocus:.5}})}),x2=fe({opacity:{base:.3,_dark:.5,_groupHover:.8,_groupActive:.8,_groupFocus:.8}}),see={index:y.jsx(BGe,{size:16,className:x2}),element:y.jsx(gi,{size:18,stroke:2,className:x2}),deployment:y.jsx(x$,{size:16,stroke:1.5,className:x2}),dynamic:y.jsx(NGe,{size:18,className:x2})},GGe=ta.withProps({scrollbars:"y",className:fe({maxHeight:["calc(100vh - 160px)","calc(100cqh - 160px)"]})});function cee(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 YGe=e=>{const r=e.viewModel;if(!r)return[];const n=r.$model,o=[cee(n.rootViewFolder,e)],a=n.viewFolder(e.selectedFolder);if(!a.isRoot)for(const i of a.breadcrumbs)o.push(cee(i,e));return o},XGe=S.memo(()=>{const e=dWe(YGe,tt);return y.jsx(Ir,{gap:"xs",alignItems:"stretch",children:e.flatMap((r,n)=>[n>0&&y.jsx(tp,{orientation:"vertical"},"divider"+n),y.jsx(ZGe,{data:r,isLast:n>0&&n==e.length-1},r.folderPath)])})});function ZGe({data:e,isLast:r}){const n=S.useRef(null),o=M$(),a=i=>l=>{l.stopPropagation(),i.type==="folder"?o.send({type:"select.folder",folderPath:i.folderPath}):o.send({type:"select.view",viewId:i.viewId})};return V4e(()=>{r&&n.current&&n.current.scrollIntoView({block:"nearest",inline:"nearest",behavior:"smooth"})}),y.jsx(hr,{mb:"1",ref:n,children:y.jsx(GGe,{children:y.jsx(ip,{gap:"0.5",children:e.items.map((i,l)=>y.jsx(KGe,{columnItem:i,onClick:a(i)},`${e.folderPath}/${i.type}/${l}`))})})})}function KGe({columnItem:e,...r}){switch(e.type){case"folder":return y.jsx(U$,{variant:"light",active:e.selected,label:e.title,leftSection:lee,rightSection:WGe,maw:"300px",miw:"200px",...r},e.folderPath);case"view":return y.jsx(U$,{variant:"filled",active:e.selected,label:e.title,description:e.description,leftSection:see[e.viewType],maw:"300px",miw:"200px",...r},e.viewId);default:Xo(e)}}function QGe(e){const[r,n]=Us({...e,finalValue:""});return y.jsx(Ca,{size:"xs",placeholder:"Search by title or id",variant:"unstyled",height:$e(26),value:r,onKeyDown:oee,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(R$,{size:14}),rightSectionPointerEvents:"all",rightSectionWidth:"min-content",rightSection:!e.value||Gu(e.value)?null:y.jsx(Vn,{variant:"subtle",h:"100%",size:"compact-xs",color:"gray",onClick:o=>{o.stopPropagation(),n("")},children:"clear"})})}const JGe=gd("div",{base:{fontSize:"xs",color:"mantine.colors.dimmed",fontWeight:500,userSelect:"none",mb:"xxs"}});function eYe(e){const r=dCe(e.activeWalkthrough),n=r?e.xyedges.findIndex(o=>o.id===e.activeWalkthrough?.stepId):-1;return{isActive:r,isParallel:r&&Kn(e.activeWalkthrough?.parallelPrefix),hasNext:r&&n0,notes:r?e.xyedges[n]?.data?.notes??null:null}}const tYe=S.memo(()=>{const{isActive:e,notes:r}=ci(eYe),n=r?ur.from(r):ur.EMPTY;return y.jsx(Cn,{children:e&&!n.isEmpty&&y.jsx(pi.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(ta,{className:my({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(JGe,{children:"Notes"}),y.jsx(wp,{value:n,fontSize:"sm",emptyText:"No description",className:fe({userSelect:"all"})})]})})})});function rYe({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(xC,{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(Gy,{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 nYe({value:e,onChange:r}){const n=S.useMemo(()=>[{value:"manual",label:"Saved manual"},{value:"auto",label:"Latest auto"}],[]);return y.jsx(zr,{layout:"position",children:y.jsx(Mf,{size:"xs",color:e==="manual"?"orange":"green",value:e,component:zr,onChange:o=>{He(o==="manual"||o==="auto","Invalid layout type"),r(o)},classNames:{label:fe({fontSize:"xxs",fontWeight:"medium"})},data:n})})}const dee=tp.withProps({mx:2,size:"xs",orientation:"vertical"});function oYe(){const[e,{toggleCompare:r,switchLayout:n,resetManualLayout:o,applyLatestToManual:a}]=H$();return y.jsxs(y.Fragment,{children:[y.jsx(hr,{css:{textStyle:"xs",color:"likec4.panel.text",userSelect:"none"},children:"Compare"}),y.jsx(nYe,{value:e.layout,onChange:n}),e.hasEditor&&y.jsxs(Ir,{gap:"1",children:[y.jsx(dee,{}),y.jsx(rYe,{disabled:e.layout==="auto",onResetManualLayout:o,onApplyLatestToManual:e.canApplyLatest?a:void 0}),y.jsx(dee,{})]}),y.jsx(ic,{size:"sm",onClick:i=>{i.stopPropagation(),r()},children:y.jsx(lp,{})})]})}const uee=S.memo(()=>{const{enableCompareWithLatest:e}=sr();return y.jsx(Cn,{children:e&&y.jsx(zr,{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(oYe,{})})})});uee.displayName="ComparePanel";const l0=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,position:"right"}),aYe=[["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"}]],iYe=wt("outline","focus-centered","FocusCentered",aYe),lYe=()=>{const e=Nt();return y.jsx(l0,{label:"Center camera",children:y.jsx(ic,{onClick:()=>e.fitDiagram(),children:y.jsx(iYe,{})})})};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 w2=fe({flex:"1 1 40%",textAlign:"center",fontWeight:500,padding:"[4px 6px]",fontSize:"11px",zIndex:1}),sYe=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]"}}),cYe=fe({position:"relative",borderRadius:"sm",background:"mantine.colors.gray[3]",boxShadow:"inset 1px 1px 3px 0px #00000024",_dark:{background:"mantine.colors.dark[7]"}}),dYe=fe({position:"absolute",width:8,height:8,border:"2px solid",borderColor:"mantine.colors.gray[5]",borderRadius:3,transform:"translate(-50%, -50%)"}),uYe=[["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"}]],pYe=wt("outline","layout-dashboard","LayoutDashboard",uYe),hYe=e=>({viewId:e.view.id,isManualLayout:e.view._layout==="manual",autoLayout:e.view.autoLayout}),fYe=()=>{const e=Nt(),[r,n]=S.useState(null),[o,a]=S.useState({}),{autoLayout:i,viewId:l,isManualLayout:s}=ci(hYe),{ref:c,hovered:d}=A7(),u=g=>v=>{o[g]=v,a(o)},p=g=>v=>{v.stopPropagation(),e.fitDiagram(),e.triggerChange({op:"change-autolayout",layout:{...i,direction:g}})},f=(g,v)=>{e.fitDiagram(),e.triggerChange({op:"change-autolayout",layout:{...i,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(hd,{children:y.jsx(l0,{label:"Change Auto Layout",children:y.jsx(ic,{children:y.jsx(pYe,{})})})}),y.jsx(Xs,{className:"likec4-top-left-panel",p:8,pt:6,opacity:d?.6:1,children:y.jsxs(Se,{pos:"relative",ref:n,children:[y.jsx(Gw,{target:o[i.direction],parent:r,className:sYe}),y.jsx(Se,{mb:10,children:y.jsx(at,{inline:!0,fz:"xs",c:"dimmed",fw:500,children:"Auto layout:"})}),y.jsxs(Zs,{gap:2,wrap:"wrap",justify:"stretch",maw:160,children:[y.jsx(pr,{className:w2,ref:u("TB"),onClick:p("TB"),children:"Top-Bottom"}),y.jsx(pr,{className:w2,ref:u("BT"),onClick:p("BT"),children:"Bottom-Top"}),y.jsx(pr,{className:w2,ref:u("LR"),onClick:p("LR"),children:"Left-Right"}),y.jsx(pr,{className:w2,ref:u("RL"),onClick:p("RL"),children:"Right-Left"})]}),y.jsx(Se,{my:10,children:y.jsx(at,{inline:!0,fz:"xs",c:"dimmed",fw:500,children:"Spacing:"})}),y.jsx(mYe,{ref:c,isVertical:i.direction==="TB"||i.direction==="BT",nodeSep:i.nodeSep,rankSep:i.rankSep,onChange:f},l)]})})]})},ym=400,mYe=S.forwardRef(({isVertical:e,nodeSep:r,rankSep:n,onChange:o},a)=>{e||([r,n]=[n,r]);const i=$8(({x:f,y:g})=>{e||([f,g]=[g,f]),o(Math.round(f*ym),Math.round(g*ym))},[o,e],250,2e3),[l,s]=Us({defaultValue:K$e({x:(r??100)/ym,y:(n??120)/ym}),onChange:i}),{ref:c}=Sq(s);let d=Math.round(l.x*ym),u=Math.round(l.y*ym);e||([d,u]=[u,d]);const p=$r(c,a);return y.jsxs(Se,{ref:p,className:cYe,pt:"100%",children:[y.jsx(Se,{className:dYe,style:{left:`${l.x*100}%`,top:`${l.y*100}%`}}),y.jsx(Se,{pos:"absolute",left:2,bottom:2,children:y.jsxs(at,{component:"div",fz:8,c:"dimmed",fw:500,children:[u,", ",d]})})]})}),gYe=[["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"}]],yYe=wt("outline","layout-collage","LayoutCollage",gYe),vYe=[["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"}]],pee=wt("outline","layout-board-split","LayoutBoardSplit",vYe),bYe=[["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"}]],xYe=wt("outline","layout-align-left","LayoutAlignLeft",bYe),wYe=[["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"}]],kYe=wt("outline","layout-align-center","LayoutAlignCenter",wYe),_Ye=[["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"}]],SYe=wt("outline","layout-align-right","LayoutAlignRight",_Ye),EYe=[["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"}]],CYe=wt("outline","layout-align-top","LayoutAlignTop",EYe),$Ye=[["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"}]],zYe=wt("outline","layout-align-middle","LayoutAlignMiddle",$Ye),RYe=[["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"}]],jYe=wt("outline","layout-align-bottom","LayoutAlignBottom",RYe),TYe=[["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"}]],AYe=wt("outline","route-off","RouteOff",TYe),sc=({label:e,icon:r,onClick:n})=>y.jsx(l0,{label:e,withinPortal:!1,position:"top",children:y.jsx(ic,{classNames:{root:"action-icon",icon:fe({"& > svg":{width:"70%",height:"70%"}})},onClick:n,children:r})}),hee=S.memo(()=>{const e=Nt(),r=fm();return y.jsxs(br,{position:"right",offset:{mainAxis:12},clickOutsideEvents:["pointerdown"],...r,children:[y.jsx(hd,{children:y.jsx(l0,{label:"Manual layouting tools",children:y.jsx(ic,{children:y.jsx(yYe,{})})})}),y.jsx(Xs,{className:qn({gap:"0.5",layerStyle:"likec4.panel",padding:"1",pointerEvents:"all"}),children:y.jsxs(np,{children:[y.jsx(sc,{label:"Align in columns",icon:y.jsx(pee,{}),onClick:n=>{n.stopPropagation(),e.align("Column")}}),y.jsx(sc,{label:"Align left",icon:y.jsx(xYe,{}),onClick:n=>{n.stopPropagation(),e.align("Left")}}),y.jsx(sc,{label:"Align center",icon:y.jsx(kYe,{}),onClick:n=>{n.stopPropagation(),e.align("Center")}}),y.jsx(sc,{label:"Align right",icon:y.jsx(SYe,{}),onClick:n=>{n.stopPropagation(),e.align("Right")}}),y.jsx(sc,{label:"Align in rows",icon:y.jsx(pee,{style:{transform:"rotate(90deg)"}}),onClick:n=>{n.stopPropagation(),e.align("Row")}}),y.jsx(sc,{label:"Align top",icon:y.jsx(CYe,{}),onClick:n=>{n.stopPropagation(),e.align("Top")}}),y.jsx(sc,{label:"Align middle",icon:y.jsx(zYe,{}),onClick:n=>{n.stopPropagation(),e.align("Middle")}}),y.jsx(sc,{label:"Align bottom",icon:y.jsx(jYe,{}),onClick:n=>{n.stopPropagation(),e.align("Bottom")}}),y.jsx(sc,{label:"Reset all control points",icon:y.jsx(AYe,{}),onClick:n=>{n.stopPropagation(),e.resetEdgeControlPoints()}})]})})]})});hee.displayName="ManualLayoutToolsButton";const DYe=()=>{const e=Nt();return y.jsx(l0,{label:"Switch to Read-only",children:y.jsx(ic,{onClick:()=>e.toggleFeature("ReadOnly"),children:y.jsx(QJ,{size:14,stroke:2})})})};function MYe(){const{enableReadOnly:e}=sr();return y.jsx(Cn,{children:!e&&y.jsx(zr,{layout:"position",className:my({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(np,{openDelay:600,closeDelay:120,children:[y.jsx(fYe,{}),y.jsx(hee,{}),y.jsx(lYe,{}),y.jsx(DYe,{})]})})})}const NYe=[["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"}]],PYe=wt("filled","player-stop-filled","PlayerStopFilled",NYe),BYe=[["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"}]],OYe=wt("filled","player-skip-back-filled","PlayerSkipBackFilled",BYe),IYe=[["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"}]],LYe=wt("filled","player-skip-forward-filled","PlayerSkipForwardFilled",IYe),fee=Vn.withProps({component:vi,layout:"position",whileTap:{scale:.95},variant:"light",size:"xs",fw:"500"}),FYe=()=>{const{portalProps:e}=fm();return y.jsx(ry,{...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 VYe(){const e=Nt(),{isParallel:r,hasNext:n,hasPrevious:o,currentStep:a,totalSteps:i}=ci(l=>{const s=l.xyedges.findIndex(c=>c.id===l.activeWalkthrough?.stepId);return{isParallel:Kn(l.activeWalkthrough?.parallelPrefix),hasNext:s0,currentStep:s+1,totalSteps:l.xyedges.length}});return y.jsxs(Cn,{propagate:!0,mode:"popLayout",children:[y.jsx(JJ,{variant:"light",size:"xs",color:"orange",mr:"sm",onClick:l=>{l.stopPropagation(),e.stopWalkthrough()},rightSection:y.jsx(PYe,{size:10}),children:"Stop"},"stop-walkthrough"),y.jsx(fee,{disabled:!o,onClick:()=>e.walkthroughStep("previous"),leftSection:y.jsx(OYe,{size:10}),children:"Previous"},"prev"),y.jsxs(Ks,{component:zr,layout:"position",size:"md",radius:"sm",variant:r?"gradient":"transparent",gradient:{from:"red",to:"orange",deg:90},rightSection:y.jsx(zr,{className:fe({fontSize:"xxs",display:r?"block":"none"}),children:"parallel"}),className:fe({alignItems:"baseline"}),children:[a," / ",i]},"step-badge"),y.jsx(fee,{disabled:!n,onClick:()=>e.walkthroughStep("next"),rightSection:y.jsx(LYe,{size:10}),children:"Next"},"next"),r&&y.jsx(FYe,{},"parallel-frame")]})}const mee=S.memo(()=>{const e=Nt(),r=Aqe(),n=NFe(),o=AS(sWe,{input:{view:r,viewModel:n}});return S.useEffect(()=>{const a=o.on("navigateTo",i=>{e.navigateTo(i.viewId)});return()=>a.unsubscribe()},[o,e]),S.useEffect(()=>{o.send({type:"update.inputs",inputs:{viewModel:n,view:r}})},[n,r]),y.jsx(ip,{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(cWe,{value:o,children:[y.jsx(qYe,{actor:o}),y.jsx(uee,{}),y.jsx(tYe,{}),y.jsx(MYe,{})]})})});mee.displayName="NavigationPanel";const qYe=({actor:e})=>{const r=pn(e,o=>o.hasTag("active")),n=fm();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(HYe,{actor:e}),r&&y.jsx(aee,{})]})},HYe=({actor:e})=>{const r=ci(n=>n.activeWalkthrough!==null);return y.jsx(rm,{children:y.jsx(hd,{children:y.jsx(zr,{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(VYe,{}):y.jsx(nee,{})})})})})},W$=fe({position:"absolute",bottom:"0",right:"0",padding:"2",margin:"0",width:"min-content",height:"min-content",_print:{display:"none"}}),UYe=fe({"--ai-radius":"0px",_noReduceGraphics:{"--ai-radius":"{radii.md}"}}),WYe=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"}}),GYe=fe({padding:"xxs"}),YYe=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:a,rx:i}}const xp={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 NQ({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-xp.width-6,y:n-xp.height,width:xp.width,height:xp.height,viewBox:`0 0 ${xp.width} ${xp.height}`,"data-likec4-fill":"mix-stroke",children:y.jsx("path",{strokeWidth:0,d:xp.path})})]});case"queue":{const{path:o,rx:a,ry:i}=MQ(r,n);return y.jsxs(y.Fragment,{children:[y.jsx("path",{d:o,strokeWidth:2}),y.jsx("ellipse",{cx:a,cy:i,ry:i-.75,rx:a,"data-likec4-fill":"mix-stroke",strokeWidth:2})]})}case"storage":case"cylinder":{const{path:o,rx:a,ry:i}=DQ(r,n);return y.jsxs(y.Fragment,{children:[y.jsx("path",{d:o,strokeWidth:2}),y.jsx("ellipse",{cx:a,cy:i,ry:i,rx:a-.75,"data-likec4-fill":"mix-stroke",strokeWidth:2})]})}default:return Xo(e)}}function qqe({shape:e,w:r,h:n}){let o;switch(e){case"queue":o=y.jsx("path",{d:MQ(r,n).path});break;case"storage":case"cylinder":{o=y.jsx("path",{d:DQ(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 Hqe({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 lm({data:e,width:r,height:n,showSeletionOutline:o=!0}){let a=r&&r>10?r:e.width,i=n&&n>10?n:e.height;const l=e.style?.multiple??!1;if(e.shape==="rectangle")return y.jsx(Hqe,{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 ${a} ${i}`,children:y.jsx(NQ,{shape:e.shape,w:a,h:i})}),y.jsxs("svg",{className:s,viewBox:`0 0 ${a} ${i}`,children:[o&&y.jsx(qqe,{shape:e.shape,w:a,h:i}),y.jsx(NQ,{shape:e.shape,w:a,h:i})]})]})}const wp=S.forwardRef(({value:e,textScale:r=1,uselikec4palette:n=!1,hideIfEmpty:o=!1,emptyText:a="no content",className:i,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(at,{component:"span",fz:"xs",c:"dimmed",style:{userSelect:"none"},children:a})};return y.jsx(hr,{ref:d,...c,className:Ge(cFe({uselikec4palette:n,value:e.isMarkdown?"markdown":"plaintext"}),i),style:{...l,...s&&{"--text-fz":`var(--font-sizes-${s}, var(--font-sizes-md))`},...r!==1&&{"--mantine-scale":r}},...u})});wp.displayName="Markdown";const PQ=S.forwardRef(({className:e,...r},n)=>y.jsx("div",{...r,ref:n,className:Ge(e,lFe(),"likec4-element")})),BQ=({data:e,...r})=>y.jsx(tx,{element:e,...r}),OQ=S.forwardRef(({className:e,...r},n)=>y.jsx("div",{...r,className:Ge(e,"likec4-element-node-content"),ref:n})),IQ=S.forwardRef(({data:{title:e,style:r},className:n,...o},a)=>{const{size:i}=mb(r),l=i==="sm"||i==="xs";return y.jsx(at,{component:"div",...o,className:Ge(n,"likec4-element-title"),"data-likec4-node-title":"",lineClamp:l?2:3,ref:a,children:e})}),LQ=S.forwardRef(({data:e,children:r,className:n,...o},a)=>{const i=e?.technology??r;return Kn(i)?y.jsx(at,{component:"div",...o,className:Ge(n,"likec4-element-technology"),"data-likec4-node-technology":"",ref:a,children:i}):null}),FQ=S.forwardRef(({data:{description:e,style:r},className:n,...o},a)=>{if(!e)return null;const i=ur.from(e),{size:l}=mb(r);return y.jsx(wp,{...o,className:Ge(n,"likec4-element-description",fe({lineClamp:l==="sm"||l==="xs"?3:5})),"data-likec4-node-description":"",value:i,uselikec4palette:!0,hideIfEmpty:!0,style:{maxHeight:i.isMarkdown?"8rem":void 0},ref:a})});function sl({iconSize:e,data:r}){return y.jsxs(PQ,{style:LV(e)?{"--likec4-icon-size":`${e}px`}:void 0,children:[y.jsx(BQ,{data:r}),y.jsxs(OQ,{children:[y.jsx(IQ,{data:r}),y.jsx(LQ,{data:r}),y.jsx(FQ,{data:r})]})]})}sl.Root=PQ,sl.Icon=BQ,sl.Content=OQ,sl.Title=IQ,sl.Technology=LQ,sl.Description=FQ;const Uqe=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 v$({selected:e=!1,data:{hovered:r=!1},icon:n,onClick:o}){return y.jsx(hr,{className:Ge(Uqe,"details-button"),children:y.jsx(lr,{className:Ge("nodrag nopan",L3({variant:"transparent"})),component:vi,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(y$,{stroke:1.8,style:{width:"75%"}})})})}const Wqe=e=>{const r=Nt();return y.jsx(v$,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}})};function Gqe(e){const{enableElementTags:r}=sr();return y.jsxs(im,{layoutId:e.id,nodeProps:e,children:[y.jsx(lm,{...e}),y.jsx(sl,{...e}),r&&y.jsx(Wy,{...e}),y.jsx(Wqe,{...e}),y.jsx(Lqe,{...e}),y.jsx(Xqe,{...e})]},e.id)}function Yqe(e){const r=Nt();return y.jsxs(e0,{layoutId:e.id,nodeProps:e,children:[y.jsx(t0,{...e}),y.jsx(AQ,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}}),y.jsx(Zqe,{...e})]},e.id)}const Xqe=({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))]}),Zqe=({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))]}),Kqe=[["path",{d:"M15 6l-6 6l6 6",key:"svg-0"}]],VQ=wt("outline","chevron-left","ChevronLeft",Kqe),Qqe={element:Gqe,compound:Yqe,empty:Rqe},Jqe={relationship:$qe};function qQ({actorRef:e}){const r=S.useRef(null);return r.current==null&&(r.current={initialNodes:[],initialEdges:[]}),y.jsx(xK.Provider,{value:e,children:y.jsx(qx,{...r.current,children:y.jsx(rm,{id:e.sessionId,inherit:!1,children:y.jsx(Cn,{children:y.jsx(rHe,{})})})})})}const eHe=e=>({isActive:e.hasTag("active"),nodes:e.context.xynodes,edges:e.context.xyedges}),tHe=(e,r)=>e.isActive===r.isActive&&Or(e.nodes,r.nodes)&&Or(e.edges,r.edges),rHe=S.memo(()=>{const e=Yy(),{isActive:r,nodes:n,edges:o}=Q3(eHe,tHe);return y.jsx(kC,{id:e.rootElementId,nodes:n,edges:o,className:Ge(r?"initialized":"not-initialized","relationships-browser"),nodeTypes:Qqe,edgeTypes:Jqe,fitView:!1,onNodeClick:it((a,i)=>{a.stopPropagation(),e.send({type:"xyflow.nodeClick",node:i})}),onEdgeClick:it((a,i)=>{a.stopPropagation(),e.send({type:"xyflow.edgeClick",edge:i})}),onPaneClick:it(a=>{a.stopPropagation(),e.send({type:"xyflow.paneClick"})}),onDoubleClick:it(a=>{e.send({type:"xyflow.paneDblClick"})}),onViewportResize:it(()=>{e.send({type:"xyflow.resized"})}),onNodesChange:it(a=>{e.send({type:"xyflow.applyNodeChanges",changes:a})}),onEdgesChange:it(a=>{e.send({type:"xyflow.applyEdgeChanges",changes:a})}),onEdgeMouseEnter:it((a,i)=>{i.data.hovered||e.send({type:"xyflow.edgeMouseEnter",edge:i})}),onEdgeMouseLeave:it((a,i)=>{i.data.hovered&&e.send({type:"xyflow.edgeMouseLeave",edge:i})}),onSelectionChange:it(a=>{e.send({type:"xyflow.selectionChange",...a})}),nodesDraggable:!1,nodesSelectable:!0,pannable:!0,zoomable:!0,children:y.jsx(oHe,{})})}),nHe=e=>({subjectId:e.context.subject,viewId:e.context.viewId,scope:e.context.scope,closeable:e.context.closeable}),oHe=S.memo(()=>{const e=Yy(),{subjectId:r,viewId:n,scope:o,closeable:a}=Q3(nHe),i=vr(),l=cf();S.useEffect(()=>{l.viewportInitialized&&e.send({type:"xyflow.init",instance:l,store:i})},[i,l.viewportInitialized,e]);const s=cqe(r,n,o),[c,d,{history:u,current:p}]=jq(r);S.useEffect(()=>{c!==r&&d.set(r)},[r]),S.useEffect(()=>{c!==r&&e.navigateTo(c)},[c,e]),kI(()=>{e.updateView(s)},[s,e]);const f=p>0,g=p+1d.back(),onStepForward:()=>d.forward()}),a&&y.jsx(ed,{position:"top-right",children:y.jsx(lr,{variant:"default",color:"gray",onClick:v=>{v.stopPropagation(),e.close()},children:y.jsx(lp,{})})})]})}),aHe=({hasStepBack:e,hasStepForward:r,onStepBack:n,onStepForward:o})=>y.jsx(ed,{position:"top-left",children:y.jsxs(en,{gap:4,wrap:"nowrap",children:[y.jsxs(Cn,{mode:"popLayout",children:[e&&y.jsx(pi.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:a=>{a.stopPropagation(),n()},children:y.jsx(VQ,{})})},"back"),r&&y.jsx(pi.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:a=>{a.stopPropagation(),o()},children:y.jsx(Sd,{})})},"forward")]}),y.jsx(yqe,{})]})}),iHe=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)"}),lHe=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]"}}}),sHe=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 cHe=[["path",{d:"M5 12l14 0",key:"svg-0"}],["path",{d:"M13 18l6 -6",key:"svg-1"}],["path",{d:"M13 6l6 6",key:"svg-2"}]],sm=wt("outline","arrow-right","ArrowRight",cHe),dHe=[["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"}]],HQ=wt("outline","external-link","ExternalLink",dHe),uHe=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,withinPortal:!1});function pHe({node:e,element:r}){const n=Nt(),o=KLe(),a=pn(o,S.useCallback(u=>u.children[`${o.id}-relationships`],[o.id])),i=[...r.incoming()].map(u=>u.id),l=[...r.outgoing()].map(u=>u.id),s=e?Qx([...e.incoming()].flatMap(u=>u.$edge.relations)):[],c=e?Qx([...e.outgoing()].flatMap(u=>u.$edge.relations)):[],d=[...i,...l].filter(u=>!s.includes(u)&&!c.includes(u)).length;return y.jsxs(Io,{gap:"xs",pos:"relative",w:"100%",h:"100%",children:[i.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(UQ,{title:"incoming",total:i.length,included:s.length}),y.jsx($a,{size:"sm",variant:"transparent",c:"dimmed",children:y.jsx(sm,{style:{width:16}})}),y.jsx(at,{className:iHe,children:qg(r.id)}),y.jsx($a,{size:"sm",variant:"transparent",c:"dimmed",children:y.jsx(sm,{style:{width:16}})}),y.jsx(UQ,{title:"outgoing",total:l.length,included:c.length})]})}),d>0&&y.jsx(uHe,{label:"Current view does not include some relationships",children:y.jsxs(en,{mt:"xs",gap:6,c:"orange",style:{cursor:"pointer"},children:[y.jsx(Gy,{style:{width:14}}),y.jsxs(at,{fz:"sm",children:[d," relationship",d>1?"s are":" is"," hidden"]})]})})]}),y.jsx(Se,{className:sHe,children:a&&y.jsxs(y.Fragment,{children:[y.jsx(qQ,{actorRef:a}),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}=a.getSnapshot().context;n.overlays().send({type:"open.relationshipsBrowser",subject:p,scope:f,viewId:g})},children:y.jsx(HQ,{stroke:1.6,style:{width:"70%"}})})})]})})]})}function UQ({title:e,total:r,included:n}){return y.jsx($f,{withBorder:!0,shadow:"none",className:lHe,px:"md",py:"xs",radius:"md",mod:{zero:r===0,missing:r!==n},children:y.jsxs(Io,{gap:4,align:"flex-end",children:[y.jsx(at,{component:"div",c:r!==n?"orange":"dimmed",tt:"uppercase",fw:600,fz:10,lh:1,children:e}),y.jsx(at,{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 hHe=fe({marginTop:"sm",marginBottom:"sm"}),fHe=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)"}}}),b$=({element:e})=>y.jsx(Se,{className:fHe,children:y.jsx(at,{component:"div",fz:"sm",fw:"500",children:e.title})}),mHe=()=>{};function gHe({element:e}){const r=hy({multiple:!1});r.setHoveredNode=mHe;const n=S.useMemo(()=>{let o=1;const a=l=>({label:l,value:`msg${o++}`,type:"message",children:[]}),i={label:y.jsx(b$,{type:"current",element:e}),value:e.id,element:e,type:"current",children:[...e.children()].map(l=>({label:y.jsx(b$,{type:"descedant",element:l}),value:l.id,element:l,type:"descedant",children:[]}))};return i.children.length===0&&i.children.push(a(y.jsx(n3,{radius:"sm",children:"no nested"}))),[[...e.ancestors()].reduce((l,s)=>({label:y.jsx(b$,{type:"ancestor",element:s}),value:s.id,element:s,type:"ancestor",children:[l]}),i)]},[e]);return S.useEffect(()=>{r.expandAllNodes()},[n]),y.jsxs(y.Fragment,{children:[y.jsxs(Yw,{variant:"light",color:"orange",title:"In development",icon:y.jsx(Gy,{}),children:["We need your feedback. Share your thoughts and ideas -"," ",y.jsx(R9,{fz:"sm",fw:500,underline:"hover",c:"orange",href:"https://github.com/likec4/likec4/discussions/",target:"_blank",children:"GitHub discussions"})]}),y.jsx(Pf,{levelOffset:"xl",allowRangeSelection:!1,expandOnClick:!1,expandOnSpace:!1,classNames:{label:hHe},data:n,tree:r})]})}const yHe=[["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"}]],x$=wt("outline","stack-2","Stack2",yHe),WQ=tp.withProps({mb:8,labelPosition:"left",variant:"dashed"}),GQ=_n.withProps({color:"dark",fz:"xs",openDelay:400,closeDelay:150,label:"",children:null,offset:4}),YQ=at.withProps({component:"div",fz:11,fw:500,c:"dimmed",lh:1}),r0=at.withProps({component:"div",fz:"xs",c:"dimmed",className:XFe}),cm=24,vHe=["Properties","Relationships","Views","Structure","Deployments"];function bHe({viewId:e,fromNode:r,rectFromNode:n,fqn:o,onClose:a}){const[i,l]=S.useState(!1),s=tze(),c=s.width||window.innerWidth||1200,d=s.height||window.innerHeight||800,[u,p]=Z$e({key:"likec4:element-details:active-tab",defaultValue:"Properties"}),f=Nt(),g=PFe(),v=r?g.findNode(r):g.findNodeWithElement(o),w=g.$model.element(o),[x,k]=Jr([...w.views()],un(Z=>Z.$view),UV(Z=>Z._type==="element"&&Z.viewOf===o));let C=v?.navigateTo?.$view??w.defaultView?.$view??null;C?.id===e&&(C=null);const _=Xx(w.links),$=ZLe(),z=(v?.$node.children?.length??0)>0,j=Math.min(700,c-cm*2),A=Math.min(650,d-cm*2),R=n?{x:n.x+(z?n.width-j/2:n.width/2),y:n.y+(z?0:n.height/2)}:{x:c/2,y:d/2},T=n?Math.min(n.width/j,n.height/A,.9):1,O=Math.round(Qa(R.x-j/2,{min:cm,max:c-j-cm})),P=Math.round(Qa(R.y-(z?0:60),{min:cm,max:d-A-cm})),L=Qa((R.x-O)/j,{min:.1,max:.9}),H=Qa((R.y-P)/A,{min:.1,max:.9}),M=TZ(j),V=TZ(A);Ed(()=>{M.set(j),V.set(A)},[j,A]);const B=S.useCallback((Z,I)=>{M.set(Math.max(M.get()+I.delta.x,320)),V.set(Math.max(V.get()+I.delta.y,300))},[]),F=S.useRef(null),q=Yh(a),G=$8(()=>{q.current()},[],50),U=v?.$node.notation??null,Y=tx({element:{id:o,title:w.title,icon:v?.icon??w.icon},className:FFe});return nx(()=>{F.current?.open||F.current?.showModal()},20),nx(()=>{l(!0)},220),y.jsx(pi.dialog,{ref:F,className:Ge(BFe,W1.classNames.fullWidth),layout:!0,initial:{[W3]:"0px",[G3]:"5%"},animate:{[W3]:"3px",[G3]:"60%"},exit:{[W3]:"0px",[G3]:"0%",transition:{duration:.1}},onClick:Z=>{Z.stopPropagation(),Z.target?.nodeName?.toUpperCase()==="DIALOG"&&F.current?.close()},onDoubleClick:nn,onPointerDown:nn,onClose:Z=>{Z.stopPropagation(),G()},children:y.jsx(W1,{forwardProps:!0,removeScrollBar:!1,children:y.jsxs(pi.div,{layout:!0,layoutRoot:!0,drag:!0,dragControls:$,dragElastic:0,dragMomentum:!1,dragListener:!1,"data-likec4-color":v?.color??w.color,className:OFe,initial:{top:P,left:O,width:j,height:A,opacity:0,originX:L,originY:H,scale:Math.max(T,.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:IFe,onPointerDown:Z=>$.start(Z),children:[y.jsxs(Ir,{alignItems:"start",justify:"space-between",gap:"sm",mb:"sm",flexWrap:"nowrap",children:[y.jsxs(Ir,{alignItems:"start",gap:"sm",style:{cursor:"default"},flexWrap:"nowrap",children:[Y,y.jsxs("div",{children:[y.jsx(at,{component:"div",className:LFe,children:w.title}),U&&y.jsx(at,{component:"div",c:"dimmed",fz:"sm",fw:500,lh:1.3,lineClamp:1,children:U})]})]}),y.jsx(ep,{size:"lg",onClick:Z=>{Z.stopPropagation(),G()}})]}),y.jsxs(Ir,{alignItems:"baseline",gap:"sm",flexWrap:"nowrap",children:[y.jsxs("div",{children:[y.jsx(YQ,{children:"kind"}),y.jsx(Ks,{radius:"sm",size:"sm",fw:600,color:"gray",style:{cursor:"pointer"},onClick:Z=>{Z.stopPropagation(),f.openSearch(`kind:${w.kind}`)},children:w.kind})]}),y.jsxs("div",{style:{flex:1},children:[y.jsx(YQ,{children:"tags"}),y.jsxs(Zs,{gap:4,flex:1,mt:6,wrap:"wrap",children:[w.tags.map(Z=>y.jsx(U3,{tag:Z,cursor:"pointer",onClick:I=>{I.stopPropagation(),f.openSearch(`#${Z}`)}},Z)),w.tags.length===0&&y.jsx(Ks,{radius:"sm",size:"sm",fw:600,color:"gray",children:"—"})]})]}),y.jsxs(Vw,{style:{alignSelf:"flex-start"},children:[_&&y.jsx(lr,{component:"a",href:_.url,target:"_blank",size:"lg",variant:"default",radius:"sm",children:y.jsx(HQ,{stroke:1.6,style:{width:"65%"}})}),y.jsx(zMe,{feature:"Vscode",children:y.jsx(GQ,{label:"Open source",children:y.jsx(lr,{size:"lg",variant:"default",radius:"sm",onClick:Z=>{Z.stopPropagation(),f.openSource({element:w.id})},children:y.jsx(am,{stroke:1.8,style:{width:"62%"}})})})}),C&&y.jsx(GQ,{label:"Open default view",children:y.jsx(lr,{size:"lg",variant:"default",radius:"sm",onClick:Z=>{Z.stopPropagation(),f.navigateTo(C.id,r??void 0)},children:y.jsx(gi,{style:{width:"70%"}})})})]})]})]}),y.jsx(pK,{children:y.jsxs(op,{value:u,onChange:Z=>p(Z),variant:"none",classNames:{root:HFe,list:UFe,tab:WFe,panel:GFe},children:[y.jsx(py,{children:vHe.map(Z=>y.jsx(Nf,{value:Z,children:Z},Z))}),y.jsx(Js,{value:"Properties",children:y.jsx(Jl,{scrollbars:"y",type:"scroll",offsetScrollbars:!0,children:y.jsxs(Se,{className:YFe,pt:"xs",children:[w.hasSummary&&y.jsxs(y.Fragment,{children:[y.jsx(r0,{children:"summary"}),y.jsx(wp,{value:w.summary})]}),y.jsxs(y.Fragment,{children:[y.jsx(r0,{children:"description"}),y.jsx(wp,{value:w.description,emptyText:"no description"})]}),w.technology&&y.jsx(xHe,{title:"technology",children:w.technology}),w.links.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(r0,{children:"links"}),y.jsx(Ir,{gap:"xs",flexWrap:"wrap",children:w.links.map((Z,I)=>y.jsx(vC,{value:Z},I))})]}),w.$element.metadata&&y.jsx(wHe,{value:w.$element.metadata})]})})}),y.jsx(Js,{value:"Relationships",children:y.jsx(sp,{overrides:{enableRelationshipBrowser:!1,enableNavigateTo:!1},children:i&&u==="Relationships"&&y.jsx(pHe,{element:w,node:v??null})})}),y.jsx(Js,{value:"Views",children:y.jsx(Jl,{scrollbars:"y",type:"auto",children:y.jsxs(Io,{gap:"lg",children:[x.length>0&&y.jsxs(Se,{children:[y.jsx(WQ,{label:"views of the element (scoped)"}),y.jsx(Io,{gap:"sm",children:x.map(Z=>y.jsx(XQ,{view:Z,onNavigateTo:I=>f.navigateTo(I,r??void 0)},Z.id))})]}),k.length>0&&y.jsxs(Se,{children:[y.jsx(WQ,{label:"views including this element"}),y.jsx(Io,{gap:"sm",children:k.map(Z=>y.jsx(XQ,{view:Z,onNavigateTo:I=>f.navigateTo(I,r??void 0)},Z.id))})]})]})})}),y.jsx(Js,{value:"Structure",children:y.jsx(Jl,{scrollbars:"y",type:"auto",children:y.jsx(gHe,{element:w})})}),y.jsx(Js,{value:"Deployments",children:y.jsx(Jl,{scrollbars:"y",type:"auto",children:y.jsx(pVe,{elementFqn:w.id})})})]})}),y.jsx(pi.div,{className:ZFe,drag:!0,dragElastic:0,dragMomentum:!1,onDrag:B,dragConstraints:{top:0,left:0,right:0,bottom:0}})]})})})}const XQ=({view:e,onNavigateTo:r})=>y.jsx(pr,{className:VFe,onClick:n=>r(e.id,n),children:y.jsxs(en,{gap:6,align:"start",wrap:"nowrap",children:[y.jsx($a,{size:"sm",variant:"transparent",children:e._type==="deployment"?y.jsx(x$,{stroke:1.8}):y.jsx(gi,{stroke:1.8})}),y.jsx(Se,{children:y.jsx(at,{component:"div",className:qFe,lineClamp:1,children:e.title||"untitled"})})]})});function xHe({title:e,emptyValue:r="undefined",children:n,style:o,...a}){return y.jsxs(y.Fragment,{children:[y.jsx(r0,{children:e}),y.jsx(at,{component:"div",...H1(n)&&{c:"dimmed"},fz:"md",style:{whiteSpace:"preserve-breaks",userSelect:"all",...o},...a,children:n||r})]})}function wHe({value:e}){const r=Wx(e).sort(([n],[o])=>n.localeCompare(o));return y.jsx(pK,{children:y.jsxs(y.Fragment,{children:[y.jsx(r0,{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(eVe,{label:n,value:o},n))})]})})}const kHe=e=>({viewId:e.context.currentView.id,fromNode:e.context.initiatedFrom.node,rectFromNode:e.context.initiatedFrom.clientRect,fqn:e.context.subject});function _He({actorRef:e,onClose:r}){const n=pn(e,kHe,Or);return y.jsx(tC.Provider,{value:e,children:y.jsx(bHe,{onClose:r,...n})})}const l2="--_blur",s2="--_opacity",SHe="--_level",n0=S.forwardRef(({onClose:e,className:r,classes:n,overlayLevel:o=0,children:a,fullscreen:i=!1,withBackdrop:l=!0,backdrop:s,openDelay:c=130,...d},u)=>{const[p,f]=S.useState(c===0),g=wq(p),v=S.useRef(null),w=S.useRef(!1),x=AZ()!==!0,k=S.useRef(e);k.current=e;const C=$8(()=>{w.current||(w.current=!0,k.current())},[],50);S.useLayoutEffect(()=>{v.current?.open||v.current?.showModal()},[]),nx(()=>{f(!0)},c>0?c:void 0);const _=dFe({fullscreen:i,withBackdrop:l});let $=o>0?"50%":"60%";return s?.opacity!==void 0&&($=`${s.opacity*100}%`),y.jsx(pi.dialog,{ref:$r(v,g,u),className:Ge(n?.dialog,r,_,i&&W1.classNames.fullWidth),layout:!0,style:{[SHe]:o},...x?{initial:{[l2]:"0px",[s2]:"0%",scale:.85,opacity:0},animate:{[l2]:o>0?"4px":"8px",[s2]:$,scale:1,opacity:1,translateY:0},exit:{opacity:0,scale:.98,translateY:-20,[l2]:"0px",[s2]:"0%"}}:{initial:{[l2]:"8px",[s2]:$}},onClick:z=>{if(z.stopPropagation(),z.target?.nodeName?.toUpperCase()==="DIALOG"){v.current?.close();return}},onCancel:z=>{z.preventDefault(),z.stopPropagation(),C()},onDoubleClick:nn,onPointerDown:nn,onClose:z=>{z.stopPropagation(),C()},...d,children:y.jsx(W1,{forwardProps:!0,children:y.jsx("div",{className:Ge(n?.body,"likec4-overlay-body"),children:p&&y.jsx(y.Fragment,{children:a})})})})});n0.displayName="Overlay";const c2=(e,r)=>e.size>2&&r.size!==e.size?new Set(Wc([...Xb(e).flatten(),...r])):e.size>1?new Set(Wc([...e])):e;function EHe(e,r){const n=new Set,o=new Set,a=new Set,i={sources:new Set,targets:new Set},l=(s,c)=>{c==="source"?(n.add(s),i.sources.add(s)):(a.add(s),i.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;a.add(g)}}}}return{sources:c2(n,i.sources),targets:c2(a,i.targets),relationships:o}}function CHe({source:e,target:r}){const n=new Set,o=new Set,a=new Set,i={sources:new Set,targets:new Set},l=(c,d)=>{d==="source"?(n.add(c),i.sources.add(c)):(a.add(c),i.targets.add(c))};e&&l(e,"source"),r&&l(r,"target");const[s]=A4e.findConnection(e,r,"directed");if(!s)return{sources:n,targets:a,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;a.add(p)}}}return{sources:c2(n,i.sources),targets:c2(a,i.targets),relationships:o}}const ZQ=S.createContext(null);function w$(){return mt(S.useContext(ZQ),"No RelationshipDetailsActorContext")}function KQ(e,r=Or){const n=it(e),o=w$();return pn(o,n,r)}function k$(){const e=w$();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 cl={dagre:{ranksep:60,nodesep:35,edgesep:25},edgeLabel:{width:220,height:14},nodeWidth:330,nodeHeight:180,compound:{labelHeight:2,paddingTop:50,paddingBottom:32}};function $He(){const e=new e2.graphlib.Graph({directed:!0,compound:!0,multigraph:!0});return e.setGraph({...cl.dagre,rankdir:"LR"}),e.setDefaultEdgeLabel(()=>({...cl.edgeLabel})),e.setDefaultNodeLabel(()=>({})),e}const _$="-port";function QQ(e,r,n){const o=new Ln(i=>({id:`${e}-${i}`,portId:`${e}-${i}`})),a=Xb(r);for(const i of a.sorted){const l=a.children(i).length>0,s=i.id,c=`${e}-${s}`,d=l?`${c}${_$}`:c;o.set(s,{id:c,portId:d}),n.setNode(c,{column:e,element:i,isCompound:l,portId:d,inPorts:[],outPorts:[],width:cl.nodeWidth,height:cl.nodeHeight}),l&&(n.setNode(d,{element:i,portId:d,isCompound:l,inPorts:[],outPorts:[],width:cl.nodeWidth-cl.dagre.ranksep,height:cl.compound.labelHeight}),n.setParent(d,c));const u=a.parent(i);u&&n.setParent(c,`${e}-${u.id}`)}return{...a,byId:i=>{const l=a.byId(i),s=o.get(l.id);return{element:l,graph:s}},graphNodes:o}}function zHe(e){return e2.layout(e,{}),r=>{const n=e.node(r),{x:o,y:a,width:i,height:l}=n;return{position:{x:o-Math.round(i/2),y:a-Math.round(l/2)},width:i,height:l}}}function RHe(e,r){const n=$He(),o=QQ("sources",e.sources,n),a=QQ("targets",e.targets,n),i=Array.from(e.relationships).map(k=>{const C=o.byId(k.source.id).graph,_=a.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,{...cl.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(),...a.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,{...cl.edgeLabel,width:s>10?800:400});const c=zHe(n),d=Jr(l,Wu(k=>k.id===k.portId),Yx(k=>[k.id,c(k.id)]));function u(k){return d[k]??=Jr(n.children(k)??[],Wu(C=>!C.endsWith(_$)),un(C=>u(C)),YV(C=>{He(C.length>0,`Node ${k} has no nested nodes`)}),Zx((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:z}=c(k);return C=C-cl.compound.paddingTop,_=_+cl.compound.paddingBottom,{position:{x:$,y:C},width:z,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(($,z)=>({port:k+"_"+C+z,topY:u($).position.y})),Kx(Yu("topY")),un(Yu("port")));let v=0,w=0;const x=l.map(({id:k})=>{const{element:C,inPorts:_,outPorts:$,column:z}=n.node(k);let{position:j,width:A,height:R}=u(k);const T=n.parent(k),O=(n.children(k)??[]).filter(V=>!V.endsWith(_$));v=Math.min(v,j.x),w=Math.min(w,j.y);const P=r?f1(C.scopedViews(),V=>V.id!==r.id)?.id??null:null,L=r?.findNodeWithElement(C.id),H=r&&!L?f1(C.ancestors(),V=>!!r.findNodeWithElement(V.id))?.id:null,M=L??(H&&r?.findNodeWithElement(H));return p1({id:k,parent:T??null,x:j.x,y:j.y,title:C.title,description:Os(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:j.x,y:j.y,width:A,height:R},style:nd({...(L??M)?.style,...C.$element.style},["shape","color","icon"]),navigateTo:P,...O.length>0&&{depth:f(k)},children:O,width:A,height:R,column:z,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:z,source:j,target:A,relationship:R,sourceHandle:T,targetHandle:O}=F1(i,V=>V.name===$),P=R.title??"untitled",L=R.navigateTo?.id??null,H=Os(R.$relationship)??null,M=R.technology??null;return k.push({id:z,source:j,sourceHandle:T,target:A,targetHandle:O,label:P,color:R.color,description:H,...L&&{navigateTo:L},...M&&{technology:M},points:_.points.map(V=>[V.x,V.y]),line:R.line,relationId:R.id,parent:null}),k},[])}}const S$=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"}}),JQ=fe({paddingLeft:"1",gridColumn:1},S$),jHe=fe({gridColumn:2},S$),eJ=fe({gridColumn:3,paddingRight:"1"},S$),tJ="likec4-edge-label",THe=Ge(tJ,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"}})),AHe=fe({display:"contents",[`&:last-child .${tJ}`]:{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"}}),DHe=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 MHe=fe({maxHeight:["70vh","calc(100cqh - 70px)"]}),NHe=({edge:e,view:r})=>{const n=k$(),o=S.useRef(null),a=r.nodes.find(s=>s.id===e.source),i=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!a||!i||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(hd,{children:y.jsxs(Vn,{size:"xs",variant:"default",fw:"500",style:{padding:"0.25rem 0.75rem"},rightSection:y.jsx(m$,{size:16}),children:[y.jsx(Se,{className:JQ,maw:160,p:0,mod:{"likec4-color":a.color},children:y.jsx(at,{component:"span",truncate:!0,children:a.title})}),y.jsx($a,{color:"dark",variant:"transparent",size:"xs",children:y.jsx(sm,{style:{width:"80%"}})}),y.jsx(Se,{className:eJ,maw:160,p:0,mod:{"likec4-color":i.color},children:y.jsx(at,{component:"span",truncate:!0,children:i.title})})]})}),y.jsx(Xs,{p:0,miw:250,maw:400,children:y.jsx(ta,{className:MHe,scrollbars:"y",type:"never",viewportRef:o,children:y.jsx(Se,{className:DHe,p:"xs",maw:400,children:l.map(s=>y.jsxs("div",{className:AHe,"data-selected":s.id===e.id,onClick:c=>{c.stopPropagation(),n.navigateTo(s.id)},children:[y.jsx(Se,{className:JQ,mod:{"edge-id":s.id,"likec4-color":s.source.color},children:y.jsx(at,{component:"span",truncate:!0,children:s.source.title})}),y.jsx(Se,{className:jHe,children:y.jsx($a,{color:"dark",variant:"transparent",size:"xs",children:y.jsx(sm,{style:{width:"80%"}})})}),y.jsx(Se,{className:eJ,mod:{"likec4-color":s.target.color},children:y.jsx(at,{component:"span",truncate:!0,children:s.target.title})}),y.jsx(Se,{className:THe,children:y.jsx(at,{component:"span",truncate:!0,children:s.label||"untitled"})})]},s.id))})})})]})},PHe=g$(e=>{const{enableNavigateTo:r}=sr(),{data:{navigateTo:n}}=e,[o,a,i]=Ax(e),l=Nt();return y.jsxs(Ky,{...e,children:[y.jsx(Qy,{edgeProps:e,svgPath:o}),y.jsx(o2,{edgeProps:e,labelPosition:{x:a,y:i,translate:"translate(-50%, 0)"},style:{maxWidth:Math.abs(e.targetX-e.sourceX-100)},children:y.jsx(Zy,{edgeProps:e,children:r&&n&&y.jsx(n2,{...e,onClick:s=>{s.stopPropagation(),l.navigateTo(n)}})})})]})}),BHe=e=>{const{enableNavigateTo:r,enableVscode:n}=sr(),o=Nt(),a=a2(),i=[],{navigateTo:l,fqn:s}=e.data;return l&&r&&a!==l&&i.push({key:"navigate",icon:y.jsx(gi,{}),onClick:c=>{c.stopPropagation(),o.navigateTo(l)}}),s&&i.push({key:"relationships",icon:y.jsx(Jy,{}),onClick:c=>{c.stopPropagation(),o.openRelationshipsBrowser(s)}}),s&&n&&i.push({key:"goToSource",icon:y.jsx(am,{}),onClick:c=>{c.stopPropagation(),o.openSource({element:s})}}),y.jsx(i2,{buttons:i,...e})};function OHe(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 rJ=Symbol.for("isMemoized");function ac(e,r="Node"){if(e.hasOwnProperty(rJ))return e;const n=S.memo(e,OHe);return n.displayName=r,Object.defineProperty(n,rJ,{enumerable:!1,writable:!1,value:!0}),n}const nJ=e=>{const r=Nt();return y.jsx(v$,{...e,onClick:n=>{n.stopPropagation(),r.openElementDetails(e.data.fqn)}})},IHe=ac(e=>{const{enableElementTags:r}=sr();return y.jsxs(im,{nodeProps:e,children:[y.jsx(lm,{...e}),y.jsx(sl,{...e}),r&&y.jsx(Wy,{...e}),y.jsx(nJ,{...e}),y.jsx(BHe,{...e}),y.jsx(FHe,{...e})]})}),LHe=ac(e=>y.jsxs(e0,{nodeProps:e,children:[y.jsx(nJ,{...e}),y.jsx(t0,{...e}),y.jsx(VHe,{...e})]})),FHe=({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))]}),VHe=({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))]}),qHe={element:IHe,compound:LHe},HHe={relationship:PHe};function UHe({actorRef:e}){const r=S.useRef(null);return r.current==null&&(r.current={defaultNodes:[],defaultEdges:[]}),y.jsx(ZQ.Provider,{value:e,children:y.jsx(qx,{...r.current,children:y.jsx(rm,{id:e.sessionId,inherit:!1,children:y.jsxs(Cn,{children:[y.jsx(XHe,{},"xyflow"),y.jsx(GHe,{},"sync")]})})})})}const WHe=e=>({...e.context.subject,viewId:e.context.viewId}),GHe=S.memo(()=>{const e=w$(),r=pn(e,WHe,tt),n=Lo(),o=n.findView(r.viewId)??null,a=S.useMemo(()=>{let s;if("edgeId"in r&&Kn(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=EHe([c.id],o)}else if(r.source&&r.target)s=CHe({source:n.element(r.source),target:n.element(r.target)});else return null;return RHe(s,o)},[r,o,n]),i=vr(),l=cf();return S.useEffect(()=>{l.viewportInitialized&&e.send({type:"xyflow.init",instance:l,store:i})},[i,l.viewportInitialized,e]),S.useEffect(()=>{a!==null&&e.send({type:"update.layoutData",data:a})},[a,e]),null}),YHe=({context:e})=>({initialized:e.initialized.xydata&&e.initialized.xyflow,nodes:e.xynodes,edges:e.xyedges}),XHe=S.memo(()=>{const e=k$(),{initialized:r,nodes:n,edges:o}=KQ(YHe,tt);return y.jsxs(kC,{id:e.rootElementId,nodes:n,edges:o,className:Ge(r?"initialized":"not-initialized","likec4-relationship-details"),nodeTypes:qHe,edgeTypes:HHe,onNodesChange:Qn(a=>{e.send({type:"xyflow.applyNodeChanges",changes:a})}),onEdgesChange:Qn(a=>{e.send({type:"xyflow.applyEdgeChanges",changes:a})}),fitViewPadding:.05,onNodeClick:Qn((a,i)=>{a.stopPropagation(),e.send({type:"xyflow.nodeClick",node:i})}),onEdgeClick:Qn((a,i)=>{a.stopPropagation(),e.send({type:"xyflow.edgeClick",edge:i})}),onPaneClick:Qn(()=>{e.send({type:"xyflow.paneClick"})}),onDoubleClick:Qn(()=>{e.send({type:"xyflow.paneDblClick"})}),onViewportResize:Qn(()=>{e.send({type:"xyflow.resized"})}),onEdgeMouseEnter:Qn((a,i)=>{i.data.hovered||e.send({type:"xyflow.edgeMouseEnter",edge:i})}),onEdgeMouseLeave:Qn((a,i)=>{i.data.hovered&&e.send({type:"xyflow.edgeMouseLeave",edge:i})}),onSelectionChange:Qn(a=>{e.send({type:"xyflow.selectionChange",...a})}),nodesDraggable:!1,nodesSelectable:!0,fitView:!1,pannable:!0,zoomable:!0,children:[y.jsx(KHe,{}),y.jsx(ed,{position:"top-right",children:y.jsx(lr,{variant:"default",color:"gray",onClick:a=>{a.stopPropagation(),e.close()},children:y.jsx(lp,{})})})]})}),ZHe=({context:e})=>({subject:e.subject,viewId:e.viewId}),KHe=S.memo(()=>{const{subject:e,viewId:r}=KQ(ZHe,tt),n=Lo().findView(r);if(!n||!n.isDiagram())return null;const o=[...n.edges()];let a="edgeId"in e&&Kn(e.edgeId)?o.find(i=>i.id===e.edgeId):F1(o,i=>i.source.element?.id===e.source&&i.target.element?.id===e.target)||F1(o,i=>(i.source.element?.id===e.source||Yn(i.source.element?.id??"__",e.source??"__"))&&(i.target.element?.id===e.target||Yn(i.target.element?.id??"__",e.target??"__")));return a?y.jsx(QHe,{edge:a.$edge,view:n.$view}):null}),QHe=({edge:e,view:r})=>{const n=k$(),o=e.id,[a,i,{history:l,current:s}]=jq(e.id);S.useEffect(()=>{a!==o&&i.set(o)},[o]),S.useEffect(()=>{a!==o&&n.navigateTo(a)},[a]);const c=s>0,d=s+1{u.stopPropagation(),i.back()},children:y.jsx(VQ,{})})},"back"),d&&y.jsx(pi.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(),i.forward()},children:y.jsx(Sd,{})})},"forward"),y.jsx(en,{gap:"xs",wrap:"nowrap",ml:"sm",children:y.jsx(NHe,{edge:e,view:r})})]})})})},JHe=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:Xo(r)}}).filter(IV),eUe=(e,r)=>e.length===r.length&&e.every((n,o)=>n.actorRef===r[o].actorRef);function tUe({overlaysActorRef:e}){const r=Nt(),n=pn(e,JHe,eUe),o=AZ()??!1,a=n.some(s=>s.type==="elementDetails");Ed(()=>{const s=r.getContext().xystore.getState().domNode?.querySelector(".react-flow__renderer");if(!s||o)return;const c=NOe(s,{opacity:a?.7:1,filter:a?"grayscale(1)":"grayscale(0)",transform:a?"perspective(400px) translateZ(-12px) translateY(3px)":"translateY(0)"},{duration:a?.35:.17});let d=null;return a||(d=setTimeout(()=>{s.style.transform="",s.style.filter="",d=null},450)),()=>{d&&clearTimeout(d),c.stop()}},[a]);const i=s=>{e.send({type:"close",actorId:s.id})},l=n.map((s,c)=>{switch(s.type){case"relationshipsBrowser":return y.jsx(n0,{overlayLevel:c,onClose:()=>i(s.actorRef),children:y.jsx(qQ,{actorRef:s.actorRef})},s.actorRef.sessionId);case"relationshipDetails":return y.jsx(n0,{overlayLevel:c,onClose:()=>i(s.actorRef),children:y.jsx(UHe,{actorRef:s.actorRef})},s.actorRef.sessionId);case"elementDetails":return y.jsx(_He,{actorRef:s.actorRef,onClose:()=>i(s.actorRef)},s.actorRef.sessionId);default:Xo(s)}});return y.jsx(sp.Overlays,{children:y.jsx(pS,{onReset:()=>e.send({type:"close.all"}),children:y.jsx(rm,{children:y.jsx(Cn,{mode:"popLayout",children:l})})})})}const[rUe,$d]=ei("SearchActorContext"),nUe=e=>e.context.searchValue;function oUe(){const e=$d(),r=pn(e,nUe),n=S.useCallback(o=>{e.send({type:"change.search",search:o})},[e]);return[r,n]}const aUe=e=>{const r=e.context.searchValue.trim().toLowerCase();return r.length>1?r:""};function E$(){const e=$d();return S.useDeferredValue(pn(e,aUe))}function iUe(){const e=$d();return S.useCallback(r=>{e.send({type:"change.search",search:r})},[e])}const lUe=e=>e.context.pickViewFor;function sUe(){const e=$d();return pn(e,lUe)}const C$=fe.raw({outline:"none",background:"mantine.colors.primary[8]",borderColor:"mantine.colors.primary[9]"}),d2=".mantine-Tree-node:focus > .mantine-Tree-label &",cUe=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:{...C$,borderColor:"mantine.colors.primary[9]",background:"mantine.colors.primary[8]/60"},_focus:C$,[d2]:C$,_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]"}}}),u2="likec4-focusable",p2={ref:"var(--likec4-icon-size, 24px)"},dUe=fe.raw({color:{base:"mantine.colors.dimmed",_light:"mantine.colors.gray[5]",_groupHover:"mantine.colors.primary[0]",_groupFocus:"mantine.colors.primary[0]"},[d2]:{color:"mantine.colors.primary[0]"},flex:`0 0 ${p2.ref}`,height:p2.ref,width:p2.ref,display:"flex",alignItems:"center",justifyContent:"center",alignSelf:"flex-start","--ti-size":p2.ref,"& svg, & img":{width:"100%",height:"auto",maxHeight:"100%",pointerEvents:"none"},"& img":{objectFit:"contain"},"&.likec4-shape-icon svg":{strokeWidth:1.5}}),uUe=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"}},[d2]:{color:{base:"mantine.colors.primary[1]",_light:"mantine.colors.white"}}}),oJ=fe.raw({color:{base:"mantine.colors.dimmed",_groupHover:{base:"mantine.colors.primary[1]",_light:"mantine.colors.primary[0]"},_groupFocus:"mantine.colors.primary[0]"},[d2]:{color:"mantine.colors.primary[0]"}}),pUe=fe.raw(oJ,{marginTop:"1",fontSize:"12px",lineHeight:"1.4",":where([data-disabled]) &":{opacity:.85}}),hUe=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"}),aJ=kke({slots:["root","icon","title","description","descriptionColor"],className:"search-button",base:{root:cUe,icon:dUe,title:uUe,description:pUe,descriptionColor:oJ}}),$$="@container likec4-tree (max-width: 450px)",fUe=fe({outline:"none",marginBottom:"2"}),mUe=fe(FW.raw({containerName:"likec4-tree"}),{containerType:"inline-size",height:"100%"}),gUe=fe({display:"flex",alignItems:"baseline",outline:"none !important",gap:"1"}),yUe=fe({marginTop:"2"}),vUe=fe({color:"mantine.colors.dimmed"}),bUe=fe({[$$]:{flexDirection:"column-reverse",alignItems:"flex-start",gap:"0.5"}}),xUe=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"}}),wUe=fe({"--likec4-icon-size":"24px",[$$]:{"--likec4-icon-size":"18px"}}),kUe=fe({flex:0,fontSize:"10px",fontWeight:500,whiteSpace:"nowrap",lineHeight:"1.1",[$$]:{display:"none"}});function bi(e){e.stopPropagation(),e.preventDefault()}function iJ(e){const r=e.getBoundingClientRect();return r.y+Math.floor(r.height/2)}function o0(e){if(!e){console.error("moveFocusToSearchInput: from is null or undefined");return}const r=e.getRootNode();if(!q1(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 h2(e){if(!e){console.error("focusToFirstFoundElement: from is null or undefined");return}const r=e.getRootNode();if(!q1(r.querySelector)){console.error("focusToFirstFoundElement: root.querySelector is not a function");return}r.querySelector(`[data-likec4-search] .${u2}`)?.focus()}function lJ(e,r,n=`.${u2}`){if(!e)return console.error("queryAllFocusable: from is null or undefined"),[];const o=e.getRootNode();return q1(o.querySelectorAll)?[...o.querySelectorAll(`[data-likec4-search-${r}] ${n}`)]:(console.error("queryAllFocusable: root.querySelectorAll is not a function"),[])}const _Ue="likec4-view-btn",SUe=Ge(fe({flexWrap:"nowrap",display:"flex","&[data-disabled] .mantine-ThemeIcon-root":{opacity:.45}}),_Ue);fe({marginTop:"1",fontSize:"13px",lineHeight:"1.4",":where(.likec4-view-btn[data-disabled]) &":{opacity:.85}});const sJ=()=>y.jsx(hr,{className:hUe,children:"Nothing found"}),EUe=S.memo(()=>{const e=S.useRef(null);let r=[...Lo().views()],n=E$();return n&&(n.startsWith("kind:")?r=[]:r=r.filter(o=>n.startsWith("#")?o.tags.some(a=>a.toLocaleLowerCase().includes(n.slice(1))):`${o.id} ${o.title} ${o.description.text}`.toLocaleLowerCase().includes(n))),y.jsxs(Io,{ref:e,renderRoot:o=>y.jsx(zr,{layout:!0,...o}),gap:8,"data-likec4-search-views":!0,onKeyDown:o=>{if(o.key==="ArrowLeft"||o.key==="ArrowRight"){const a=o.target.getBoundingClientRect().y,i=lJ(e.current,"elements",".likec4-element-button");let l=i.length>1?i.find((s,c,d)=>iJ(s)>a||c===d.length-1):null;l??=df(i),l&&(o.stopPropagation(),l.focus());return}},children:[r.length===0&&y.jsx(sJ,{}),r.length>0&&y.jsx(Ow,{children:y.jsx(pr,{"data-likec4-view":!0,tabIndex:-1,onFocus:o=>{o.stopPropagation(),o0(e.current)}})}),r.map((o,a)=>y.jsx(zr,{layoutId:`@view${o.id}`,children:y.jsx(z$,{view:o,search:n,tabIndex:a===0?0:-1})},o.id))]})}),f2=aJ();function z$({className:e,view:r,loop:n=!1,search:o,focusOnElement:a,...i}){const l=$d(),s=Nt(),c=a2(),d=r.id===c,u=()=>{l.send({type:"close"}),setTimeout(d&&a?()=>{s.focusOnElement(a)}:()=>{s.navigateTo(r.id,void 0,a)},100)};return y.jsxs(pr,{...i,className:Ge(f2.root,"group",u2,SUe,e),"data-likec4-view":r.id,...d&&!a&&{"data-disabled":!0},onClick:p=>{p.stopPropagation(),u()},onKeyDown:Y1({siblingSelector:"[data-likec4-view]",parentSelector:"[data-likec4-search-views]",activateOnFocus:!1,loop:n,orientation:"vertical",onKeyDown:p=>{p.nativeEvent.code==="Space"&&(p.stopPropagation(),u())}}),children:[y.jsx($a,{variant:"transparent",className:f2.icon,children:r.isDeploymentView()?y.jsx(x$,{stroke:1.8}):y.jsx(gi,{stroke:1.8})}),y.jsxs(hr,{style:{flexGrow:1},children:[y.jsxs(en,{gap:"xs",wrap:"nowrap",align:"center",children:[y.jsx(Qs,{component:"div",highlight:o,className:f2.title,children:r.title||"untitled"}),d&&y.jsx(Ks,{size:"xs",fz:9,radius:"sm",children:"current"})]}),y.jsx(Qs,{highlight:r.description.nonEmpty?o:"",component:"div",className:f2.description,lineClamp:1,children:r.description.text||"No description"})]})]})}const dm=aJ(),CUe=S.memo(()=>{const e=Lo(),r=E$(),n=S.useMemo(()=>{const a=r.split(".");let i;Gu(a)||a[0]==="kind:"?i=e.elements():i=Bs(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([...i],Wc,Zx((d,u)=>{const p={label:u.title,value:u.id,element:u,searchTerms:a,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(Xy)):d.roots.push(p),d.all.push(p),d},{all:[],roots:[]}));return{all:s,byid:l,roots:c.sort(Xy)}},[e,r]),o=cJ();return n.all.length===0?y.jsx(sJ,{}):y.jsx(zUe,{data:n,handleClick:o})}),$Ue=()=>{};function zUe({data:{all:e,byid:r,roots:n},handleClick:o}){const a=hy({multiple:!1});a.setHoveredNode=$Ue,S.useEffect(()=>{a.collapseAllNodes();for(const l of e)l.children.length>0&&a.expand(l.value)},[e]);const i=it(l=>{const s=l.target,c=s.getAttribute("data-value"),d=!!c&&r[c];if(d){if(l.key==="ArrowUp"){c===n[0]?.value&&(bi(l),o0(s));return}if(l.key==="ArrowRight"){if(d.children.length>0&&a.expandedState[c]===!1)return;const u=(l.target.querySelector(".mantine-Tree-label")??s).getBoundingClientRect().y,p=lJ(s,"views");let f=p.length>1?p.find((g,v,w)=>iJ(g)>u||v===w.length-1):null;f??=df(p),f&&(bi(l),f.focus());return}if(l.key===" "||l.key==="Enter"){bi(l),o(d.element);return}}});return y.jsx(Pf,{"data-likec4-search-elements":!0,allowRangeSelection:!1,clearSelectionOnOutsideClick:!0,selectOnClick:!1,tree:a,data:n,levelOffset:"lg",classNames:{root:mUe,node:Ge(u2,fUe),label:gUe,subtree:yUe},onKeyDownCapture:i,renderNode:RUe})}function RUe({node:e,elementProps:r,hasChildren:n,expanded:o}){const{element:a,searchTerms:i}=e,l=Bke({element:{id:a.id,title:a.title,shape:a.shape,icon:a.icon},className:Ge(dm.icon,wUe)}),s=[...a.views()],c=cJ(),d=`@tree.${e.value}`;return y.jsxs(zr,{layoutId:d,...r,children:[y.jsx(lr,{variant:"transparent",size:16,tabIndex:-1,className:Ge(vUe),style:{visibility:n?"visible":"hidden"},children:y.jsx(Sd,{stroke:3.5,style:{transition:"transform 150ms ease",transform:`rotate(${o?"90deg":"0"})`,width:"100%"}})}),y.jsxs(pr,{component:vi,layout:!0,tabIndex:-1,"data-value":a.id,className:Ge(dm.root,"group","likec4-element-button"),...s.length>0&&{onClick:u=>{(!n||o)&&(u.stopPropagation(),c(a))}},children:[l,y.jsxs(Se,{style:{flexGrow:1},children:[y.jsxs(en,{gap:"xs",wrap:"nowrap",align:"center",className:bUe,children:[y.jsx(Qs,{component:"div",highlight:i,className:dm.title,children:e.label}),y.jsx(_n,{label:a.id,withinPortal:!1,fz:"xs",disabled:!a.id.includes("."),children:y.jsx(Qs,{component:"div",highlight:i,className:Ge(xUe,dm.descriptionColor),children:qg(a.id)})})]}),y.jsx(Qs,{component:"div",highlight:i,className:dm.description,lineClamp:1,children:a.summary.text||"No description"})]}),y.jsx(at,{component:"div",className:Ge(kUe,dm.descriptionColor),fz:"xs",children:s.length===0?"No views":y.jsxs(y.Fragment,{children:[s.length," view",s.length>1?"s":""]})})]})]})}function cJ(){const e=Nt(),r=$d();return it(n=>{const o=[...n.views()];if(o.length===0)return;const a=Xx(o);if(a){r.send({type:"close"}),a.id===e.currentView.id?setTimeout(()=>{e.focusOnElement(n.id)},100):setTimeout(()=>{e.navigateTo(a.id,void 0,n.id)},100);return}r.send({type:"pickview.open",elementFqn:n.id})})}const jUe=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"}}}),TUe=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)]"}}),AUe=fe({position:"absolute",top:"[2rem]",left:"[50%]",width:"100%",maxWidth:"600px",minWidth:"200px",transform:"translateX(-50%)",zIndex:903}),dJ=fe({marginTop:"2","& + &":{marginTop:"[32px]"}});fe({height:["100%","100cqh"],"& .mantine-ScrollArea-viewport":{minHeight:"100%","& > div":{minHeight:"100%",height:"100%"}}});function DUe({elementFqn:e}){const r=$d(),n=Lo().element(e),o=[],a=[];for(const l of n.views())l.viewOf===n?o.push(l):a.push(l);const i=()=>{r.send({type:"pickview.close"})};return yf("keydown",l=>{try{l.key==="Escape"&&(l.stopPropagation(),l.preventDefault(),i())}catch(s){console.warn(s)}},{capture:!0}),y.jsxs(y.Fragment,{children:[y.jsx(zr,{className:TUe,onClick:l=>{l.stopPropagation(),i()}},"pickview-backdrop"),y.jsx(Fw,{children:y.jsxs(zr,{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:AUe,"data-likec4-search-views":!0,children:[y.jsxs(en,{px:"sm",py:"md",justify:"space-between",children:[y.jsx(ap,{order:2,lh:1,children:"Select view"}),y.jsx(lr,{size:"md",variant:"default",onClick:l=>{l.stopPropagation(),i()},children:y.jsx(lp,{})})]}),y.jsxs(ta,{mah:"calc(100vh - 110px)",type:"never",children:[o.length>0&&y.jsxs(Io,{gap:"sm",px:"sm",className:dJ,children:[y.jsx(ap,{order:6,c:"dimmed",children:"scoped views of the element"}),o.map((l,s)=>y.jsx(z$,{view:l,search:"",loop:!0,focusOnElement:e,mod:{autofocus:s===0}},l.id))]}),a.length>0&&y.jsxs(Io,{gap:"sm",px:"sm",className:dJ,children:[y.jsx(ap,{order:6,c:"dimmed",children:"views including this element"}),a.map((l,s)=>y.jsx(z$,{view:l,search:"",loop:!0,focusOnElement:e,mod:{autofocus:s===0&&o.length===0}},l.id))]})]})]},"pickview")})]})}function MUe(){const e=S.useRef(null);let r=Lo().tagsSortedByUsage,n=iUe(),o=E$(),a=r.length,i=!1;if(o.startsWith("#")){const l=o.slice(1);r=r.filter(({tag:s})=>s.toLocaleLowerCase().includes(l)),i=r.length!==a}return r.length===0?null:(r=r.slice(0,15),y.jsxs(Ir,{ref:e,css:{gap:"md",paddingLeft:"[48px]",flexWrap:"nowrap"},children:[y.jsx(Ir,{css:{gap:"1.5",flexWrap:"wrap",opacity:i?1:.3,grayscale:i?0:.9,filter:"auto",transition:"fast",_groupHover:{opacity:1,grayscale:0},_groupFocusWithin:{opacity:1,grayscale:0}},children:r.map(({tag:l})=>y.jsx(U3,{tag:l,className:fe({userSelect:"none",cursor:"pointer"}),onClick:s=>{s.stopPropagation(),n(`#${l}`),setTimeout(()=>{h2(e.current)},350)}},l))}),i&&y.jsx(Vn,{size:"compact-xs",variant:"light",onClick:l=>{l.stopPropagation(),n(""),o0(e.current)},rightSection:y.jsx(lp,{size:14}),children:"Clear"})]}))}const NUe=[["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"}]],R$=wt("outline","search","Search",NUe);function uJ(e){return e.match(/^(k|ki|kin|kind|kind:)$/)!=null}const PUe=["#","kind:"],BUe=S.memo(()=>{const e=$d(),r=Lo(),n=S.useRef(null),{ref:o,focused:a}=cze(),[i,l]=oUe(),s=IU({scrollBehavior:"smooth",loop:!1});yf("keydown",u=>{try{!a&&(u.key==="Backspace"||u.key.startsWith("Arrow")||u.key.match(new RegExp("^\\p{L}$","u")))&&o0(n.current)}catch(p){console.warn(p)}});let c=[],d=!1;switch(!0){case i.startsWith("#"):{const u=i.toLocaleLowerCase().slice(1),p=r.tags.filter(f=>f.toLocaleLowerCase().includes(u));p.length===0?(d=!1,c=[y.jsx(oy,{children:"No tags found"},"empty-tags")]):(d=r.tags.some(f=>f.toLocaleLowerCase()===u),c=p.map(f=>y.jsxs(ay,{value:`#${f}`,children:[y.jsx(at,{component:"span",opacity:.5,mr:1,fz:"sm",children:"#"}),f]},f)));break}case i.startsWith("kind:"):case uJ(i):{const u=i.length>5?i.slice(5).toLocaleLowerCase():"";let p=x7(r.specification.elements);u&&(p=p.filter(f=>f.toLocaleLowerCase().includes(u))),p.length===0?(d=!1,c=[y.jsx(oy,{children:"No kinds found"},"empty-kinds")]):(d=p.some(f=>f.toLocaleLowerCase()===u),c=p.map(f=>y.jsxs(ay,{value:`kind:${f}`,children:[y.jsx(at,{component:"span",opacity:.5,mr:1,fz:"sm",children:"kind:"}),f]},f)));break}}return y.jsxs(eo,{onOptionSubmit:u=>{l(u),s.resetSelectedOption(),PUe.includes(u)||(s.closeDropdown(),setTimeout(()=>{h2(n.current)},350))},width:"max-content",position:"bottom-start",shadow:"md",offset:{mainAxis:4,crossAxis:50},store:s,withinPortal:!1,children:[y.jsx(P9,{children:y.jsx(Ca,{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:jUe},size:"lg",value:i,leftSection:y.jsx(R$,{style:{width:$e(20)},stroke:2}),rightSection:y.jsx(Ca.ClearButton,{onClick:u=>{u.stopPropagation();const p=e.getSnapshot().context.openedWithSearch;i===""||i===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(),bi(u);case c.length===1:return s.selectFirstOption()&&s.clickSelectedOption(),bi(u);case uJ(i):return l("kind:"),bi(u)}return}if(u.key==="Backspace"&&s.dropdownOpened){if(i==="kind:")return l(""),s.resetSelectedOption(),bi(u);if(i.startsWith("kind:")&&d)return l("kind:"),s.resetSelectedOption(),bi(u);if(i.startsWith("#")&&d)return l("#"),s.resetSelectedOption(),bi(u)}if(u.key==="Escape"&&s.dropdownOpened&&c.length>0){bi(u),s.closeDropdown();return}if(u.key==="ArrowUp"&&s.dropdownOpened&&i===""&&s.getSelectedOptionIndex()===0){s.closeDropdown(),bi(u);return}if(u.key==="ArrowDown"&&(!s.dropdownOpened||c.length===0||d||i===""&&s.getSelectedOptionIndex()===c.length-1)){s.closeDropdown(),bi(u),h2(n.current);return}}})}),y.jsx(Xw,{hidden:c.length===0,style:{minWidth:300},children:y.jsx(Zw,{children:y.jsx(ta,{mah:"min(322px, calc(100cqh - 50px))",type:"scroll",children:c})})})]})}),OUe=fe({backgroundColor:"[rgb(34 34 34 / var(--_opacity, 95%))]",_light:{backgroundColor:"[rgb(250 250 250 / var(--_opacity, 95%))]"},backdropFilter:"auto",backdropBlur:"var(--_blur, 10px)"}),IUe=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]"}),LUe=e=>!e.matches("inactive");function FUe({searchActorRef:e}){const r=pn(e,LUe),n=()=>{e.send({type:"open"})},o=it(()=>{e.send({type:"close"})});return ize([["mod+k",n,{preventDefault:!0}],["mod+f",n,{preventDefault:!0}]]),y.jsx(rUe,{value:e,children:y.jsx(sp.Overlays,{children:y.jsx(UW,{FallbackComponent:WW,onReset:o,children:y.jsx(Cn,{children:r&&y.jsx(n0,{fullscreen:!0,withBackdrop:!1,backdrop:{opacity:.9},classes:{dialog:OUe,body:IUe},openDelay:0,onClose:o,"data-likec4-search":"true",children:y.jsx(VUe,{searchActorRef:e})})})})})})}const pJ=fe({height:["100%","100cqh"],"& .mantine-ScrollArea-viewport":{minHeight:"100%","& > div":{minHeight:"100%",height:"100%"}}}),VUe=({searchActorRef:e})=>{const r=S.useRef(null),n=sUe();return nx(()=>{Kn(e.getSnapshot().context.openedWithSearch)&&h2(r.current)},150),y.jsxs(hr,{ref:r,display:"contents",children:[y.jsx(en,{className:"group",wrap:"nowrap",onClick:o=>{o.stopPropagation(),o0(r.current)},children:y.jsxs(ip,{flex:1,px:"sm",children:[y.jsx(BUe,{}),y.jsx(MUe,{})]})}),y.jsxs(ly,{children:[y.jsx(rp,{span:6,children:y.jsx(ap,{component:"div",order:6,c:"dimmed",pl:"sm",children:"Elements"})}),y.jsx(rp,{span:6,children:y.jsx(ap,{component:"div",order:6,c:"dimmed",pl:"sm",children:"Views"})})]}),y.jsxs(ly,{className:fe({containerName:"likec4-search-elements",containerType:"size",overflow:"hidden",flexGrow:1}),children:[y.jsx(rp,{span:6,children:y.jsx(Jl,{type:"scroll",className:pJ,pr:"xs",scrollbars:"y",children:y.jsx(Cn,{children:y.jsx(rm,{id:"likec4-search-elements",children:y.jsx(CUe,{})})})})}),y.jsx(rp,{span:6,children:y.jsx(Jl,{type:"scroll",className:pJ,pr:"xs",scrollbars:"y",children:y.jsx(Cn,{children:y.jsx(rm,{id:"likec4-search-views",children:y.jsx(EUe,{})})})})})]}),n&&y.jsx(DUe,{elementFqn:n})]})};function qUe({children:e}){const r=S.useContext(iS);if(!r)throw new Error("PortalToContainer must be used within RootContainer");return y.jsx(ry,{target:r.ref.current??`#${r.id}`,children:e})}const hJ={onNavigateTo:null,onNodeClick:null,onNodeContextMenu:null,onCanvasContextMenu:null,onEdgeClick:null,onEdgeContextMenu:null,onCanvasClick:null,onCanvasDblClick:null,onBurgerMenuClick:null,onOpenSource:null,onInitialized:null,onLayoutTypeChange:null},j$=x7(hJ),fJ=S.createContext({...Yx(j$,e=>[e,null]),handlersRef:{current:hJ}});function HUe({handlers:e,children:r}){const n=Yh(e),o=j$.map(i=>q1(e[i])),a=S.useMemo(()=>({...Yx(j$,i=>n.current[i]?[i,(...l)=>n.current[i]?.(...l)]:[i,null]),handlersRef:n}),[n,...o]);return y.jsx(fJ.Provider,{value:a,children:r})}function um(){return S.useContext(fJ)}const mJ=(e,r)=>e.find(o=>"modelFqn"in o.data&&o.data.modelFqn===r)||null;function Rr(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}}}Rr.editorActor=({system:e})=>e.get("editor"),Rr.overlaysActor=({system:e})=>e.get("overlays"),Rr.diagramActor=({system:e})=>e.get("diagram"),Rr.searchActor=({system:e})=>e.get("search");function pm(e,r){return e.view.nodes.find(n=>n.id===r)??null}function T$(e,r){return e.view.edges.find(n=>n.id===r)??null}function UUe(e){const r=new Map,n=e.context.xynodes.reduce((o,a)=>{let i=a.position;if(a.parentId){const c=r.get(a.parentId)??{x:0,y:0};i={x:i.x+c.x,y:i.y+c.y}}if(r.set(a.id,i),a.hidden||a.data.dimmed)return o;const l=a.measured?.width??a.width??a.initialWidth,s=a.measured?.height??a.height??a.initialHeight;return o.minX=Math.min(o.minX,i.x),o.minY=Math.min(o.minY,i.y),o.maxX=Math.max(o.maxX,i.x+l),o.maxY=Math.max(o.maxY,i.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 WUe=32;function GUe(e){const r=mt(e.context.activeWalkthrough),n=mt(e.context.xyedges.find(c=>c.id===r.stepId)),o=e.context.xystore.getState(),a=mt(o.nodeLookup.get(n.source)),i=mt(o.nodeLookup.get(n.target)),l=SL([a,i],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??=YUe(n,o),s?s=ko.merge(s,l):s=l,{duration:350,bounds:ko.expand(s,WUe)}}function YUe(e,r){const n=r.nodeLookup.get(e.source),o=r.nodeLookup.get(e.target);if(!n||!o)return null;const a=UL({id:e.id,sourceNode:n,targetNode:o,sourceHandle:e.sourceHandle||null,targetHandle:e.targetHandle||null,connectionMode:r.connectionMode});return a?ko.fromPoints([[a.sourceX,a.sourceY],[a.targetX,a.targetY]]):null}function A$(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:Xo(e)}}function XUe(e,r){const n=e.lastOnNavigate?.fromNode,o=n&&e.xynodes.find(l=>l.id===n),a=o&&A$(o),i=a&&r.xynodes.find(l=>A$(l)===a);return{fromNode:o,toNode:i}}function ZUe(e,r){let{width:n,height:o,transform:a}=e.xystore.getState();const i=Math.max(a[2],1);return qs(r,n,o,yi,i,e.fitViewPadding)}const KUe=rs({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"}}}}}}}),QUe=KUe,gJ=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)"}}),JUe=fe({whiteSpaceCollapse:"preserve-breaks",fontSize:"sm",lineHeight:"sm",userSelect:"all"});function eWe(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 tWe=S.memo(()=>{const e=Lo(),r=AS(QUe),n=Nt(),{viewId:o,selected:a}=ci(eWe),i=pn(r,g=>g.hasTag("opened")?g.context.edgeId:null);za("navigateTo",()=>{r.send({type:"close"})}),za("edgeMouseEnter",({edge:g})=>{r.send({type:"xyedge.mouseEnter",edgeId:g.data.id})}),za("edgeMouseLeave",()=>{r.send({type:"xyedge.mouseLeave"})}),za("walkthroughStarted",()=>{r.send({type:"close"})}),S.useEffect(()=>{a?r.send({type:"xyedge.select",edgeId:a}):r.send({type:"xyedge.unselect"})},[a]);const l=S.useCallback(g=>{if(!i)return;r.send({type:"dropdown.mouseEnter"});const v=n.findEdge(i);v&&!v.data.hovered&&n.send({type:"xyflow.edgeMouseEnter",edge:v,event:g})},[r,n,i]),s=S.useCallback(g=>{if(!i)return;r.send({type:"dropdown.mouseLeave"});const v=n.findEdge(i);v?.data.hovered&&n.send({type:"xyflow.edgeMouseLeave",edge:v,event:g})},[r,n,i]),{diagramEdge:c,sourceNode:d,targetNode:u}=ci(g=>{const v=i?T$(g,i):null,w=v?pm(g,v.source):null,x=v?pm(g,v.target):null;return{diagramEdge:v,sourceNode:w,targetNode:x}},Or,[i]);if(!c||!d||!u||Gu(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}}),Wu(Kn),UV(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(qUe,{children:y.jsx(oWe,{viewId:o,direct:p,nested:f,diagramEdge:c,sourceNode:d,targetNode:u,onMouseEnter:l,onMouseLeave:s})})}),rWe=(e,r)=>r?.querySelector(`.likec4-edge-label[data-edge-id="${e}"]`)??r?.querySelector(`.likec4-edge-middle-point[data-edge-id="${e}"]`)??null,nWe=8,oWe=({viewId:e,diagramEdge:r,direct:n,nested:o,sourceNode:a,targetNode:i,onMouseEnter:l,onMouseLeave:s})=>{const c=S.useRef(null),{enableNavigateTo:d,enableVscode:u,enableCompareWithLatest:p}=sr(),{onOpenSource:f}=um(),g=QDe(),[v,w]=S.useState(null);S.useLayoutEffect(()=>{w(rWe(r.id,g.current))},[r]),S.useEffect(()=>{const C=v,_=c.current;if(!C||!_)return;let $=!1;const z=jw(C,_,()=>{zH(C,_,{placement:"bottom-start",middleware:[SH(4),Ije({crossAxis:!0,allowedPlacements:["bottom-start","bottom-end","left-start","top-start","top-end","right-start","right-end","left-end"]}),EH({apply({availableHeight:j,availableWidth:A,elements:R}){$||Object.assign(R.floating.style,{maxWidth:`${Qa(Cd(A),{min:220,max:400})}px`,maxHeight:`${Qa(Cd(j),{min:100,max:500})}px`})}}),CH({padding:nWe*2})]}).then(({x:j,y:A,middlewareData:R})=>{$||(_.style.transform=`translate(${Cd(j)}px, ${Cd(A)}px)`,_.style.visibility=R.hide?.referenceHidden?"hidden":"visible")})},{ancestorResize:!1,animationFrame:!0});return()=>{$=!0,z()}},[v]);const x=Nt(),k=S.useCallback((C,_)=>y.jsxs(S.Fragment,{children:[_>0&&y.jsx(tp,{}),y.jsx(iWe,{viewId:e,relationship:C,sourceNode:a,targetNode:i,onNavigateTo:d?$=>{x.navigateTo($)}:void 0,...f&&u&&{onOpenSource:()=>f({relation:C.id})}})]},C.id),[e,a,i,x,d,f,u]);return y.jsx(ta,{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(ip,{css:{gap:"3",padding:"4",paddingTop:"2"},children:[p&&y.jsx(aWe,{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(hm,{children:"DIRECT RELATIONSHIPS"}),n.map(k)]}),o.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(hm,{css:{mt:n.length>0?"2":"0"},children:"RESOLVED FROM NESTED"}),o.map(k)]})]})})},aWe=({diagramEdge:e})=>{const r=e.drifts;return!r||r.length===0?null:y.jsx(dy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"Changes:",children:r.map(n=>y.jsxs(at,{mt:2,size:"sm",lh:"xs",children:["- ",n]},n))})},iWe=S.forwardRef(({viewId:e,relationship:r,sourceNode:n,targetNode:o,onNavigateTo:a,onOpenSource:i},l)=>{const s=yJ(r,"source",n),c=yJ(r,"target",o),d=a&&r.navigateTo?.id!==e?r.navigateTo?.id:void 0,u=r.links,p=r.hasMetadata()?Wx(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(ip,{ref:l,className:HW({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(Ir,{gap:"0.5",children:y.jsxs(np,{openDelay:200,children:[y.jsx(a0,{label:s.full,offset:2,position:"top-start",children:y.jsx(at,{component:"div","data-likec4-color":n.color,className:gJ,children:s.short})}),y.jsx(sm,{stroke:2.5,size:"11px",opacity:.65}),y.jsx(a0,{label:c.full,offset:2,position:"top-start",children:y.jsx(at,{component:"div","data-likec4-color":o.color,className:gJ,children:c.short})}),d&&y.jsx(a0,{label:"Open dynamic view",children:y.jsx(lr,{size:"sm",radius:"sm",variant:"default",onClick:g=>{g.stopPropagation(),a?.(d)},style:{alignSelf:"flex-end"},role:"button",children:y.jsx(gi,{size:"80%",stroke:2})})}),i&&y.jsx(a0,{label:"Open source",children:y.jsx(lr,{size:"sm",radius:"sm",variant:"default",onClick:g=>{g.stopPropagation(),i()},role:"button",children:y.jsx(am,{size:"80%",stroke:2})})})]})}),y.jsxs(Ir,{gap:"xs",alignItems:"center",children:[y.jsx(hr,{className:JUe,children:r.title||"untitled"}),f&&y.jsx(a0,{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(Gy,{size:14,opacity:.5,style:{flexShrink:0,cursor:"help"}})})})]}),r.kind&&y.jsxs(Ir,{gap:"2",children:[y.jsx(hm,{children:"kind"}),y.jsx(at,{size:"xs",className:fe({userSelect:"all"}),children:r.kind})]}),r.technology&&y.jsxs(Ir,{gap:"2",children:[y.jsx(hm,{children:"technology"}),y.jsx(at,{size:"xs",className:fe({userSelect:"all"}),children:r.technology})]}),r.summary.nonEmpty&&y.jsxs(y.Fragment,{children:[y.jsx(hm,{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(wp,{value:r.summary,fontSize:"sm",textScale:.875})})]}),u.length>0&&y.jsxs(y.Fragment,{children:[y.jsx(hm,{children:"links"}),y.jsx(Ir,{gap:"1",flexWrap:"wrap",children:u.map(g=>y.jsx(vC,{size:"sm",value:g},g.url))})]})]})}),hm=gd("div",{base:{display:"block",fontSize:"xxs",fontWeight:500,userSelect:"none",lineHeight:"sm",color:"mantine.colors.dimmed"}}),a0=_n.withProps({color:"dark",fz:"xs",label:"",children:null,offset:8,withinPortal:!1});function yJ(e,r,n){const o=e.isDeploymentRelation()?n.id:n.modelRef||"",a=e[r].id,i=qg(o)+a.slice(o.length);return{full:a,short:i}}function fm(){const e=JDe();return S.useMemo(()=>e?{portalProps:{target:e},withinPortal:!0}:{withinPortal:!1},[e])}const lWe=rs({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":RS(({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})=>!Gu(e.searchQuery),"search query is empty":({context:e})=>Gu(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",na({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"}}}}}}}),sWe=lWe,D$=S.createContext(null);D$.displayName="NavigationPanelActorSafeContext";const cWe=D$.Provider,M$=()=>{const e=S.useContext(D$);if(e===null)throw new Error("NavigationPanelActorRef is not found in the context");return e};function N$(e,r=Or){const n=M$();return pn(n,e,r)}function dWe(e,r=Or){return N$(n=>e(n.context),r)}function i0(){const e=M$();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 vJ=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,withinPortal:!1}),bJ=()=>y.jsx($a,{component:zr,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(Sd,{})});Kw.withProps({separator:y.jsx(bJ,{}),separatorMargin:4});const ic=S.forwardRef(({variant:e="default",className:r,disabled:n=!1,type:o,...a},i)=>y.jsx(lr,{size:"md",variant:"transparent",radius:"sm",component:vi,...!n&&{whileHover:{scale:1.085},whileTap:{scale:1,translateY:1}},disabled:n,...a,className:Ge(r,eK({variant:e,type:o})),ref:i})),m2=b1({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"}}}}}),uWe=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"})]})),pWe=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"})})),hWe=()=>{const e=i0(),{onBurgerMenuClick:r}=um();return y.jsx(zr,{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(uWe,{className:fe({display:{base:"none","@/md":"block"}})}),y.jsx(pWe,{className:fe({display:{base:"block","@/md":"none"}})})]})})},fWe=[["path",{d:"M5 12l14 0",key:"svg-0"}],["path",{d:"M5 12l6 6",key:"svg-1"}],["path",{d:"M5 12l6 -6",key:"svg-2"}]],mWe=wt("outline","arrow-left","ArrowLeft",fWe),gWe=()=>{const e=Nt(),{hasStepBack:r,hasStepForward:n}=ci(o=>({hasStepBack:o.navigationHistory.currentIndex>0,hasStepForward:o.navigationHistory.currentIndex{o.stopPropagation(),e.navigate("back")},children:y.jsx(mWe,{size:14})}),y.jsx(ic,{disabled:!n,onClick:o=>{o.stopPropagation(),e.navigate("forward")},children:y.jsx(sm,{size:14})})]})},yWe=[["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"}]],vWe=wt("outline","link","Link",yWe),bWe=({context:e})=>{const r=e.view;return{id:r.id,title:e.viewModel?.title??(r.title&&y8(r.title))??"Untitled View",description:e.viewModel?.description??ur.from(r.description),tags:r.tags??[],links:r.links??[]}},xWe=e=>{const[r,n]=S.useState(!1),o=N$(bWe,tt),a=fm();return y.jsxs(br,{position:"bottom-end",shadow:"xl",clickOutsideEvents:["pointerdown","mousedown","click"],offset:{mainAxis:4},opened:r,onChange:n,...a,...e,children:[y.jsx(wWe,{linksCount:o.links.length,onOpen:()=>n(!0)}),r&&y.jsx(kWe,{data:o,onClose:()=>n(!1)})]})},wWe=({linksCount:e,onOpen:r})=>y.jsx(br.Target,{children:y.jsxs(pr,{component:vi,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(y$,{size:16,stroke:1.8}),e>0&&y.jsxs(Ir,{gap:"[1px]",children:[y.jsx(vWe,{size:14,stroke:2}),y.jsx(hr,{css:{fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8},children:e})]})]})}),xJ=gd("div",{base:{fontSize:"xs",color:"mantine.colors.dimmed",fontWeight:500,userSelect:"none",mb:"xxs"}}),kWe=({data:{id:e,title:r,description:n,tags:o,links:a},onClose:i})=>{const l=Nt();return za("paneClick",i),za("nodeClick",i),y.jsxs(br.Dropdown,{className:Ge("nowheel nopan nodrag",my({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(at,{component:"div",fw:500,size:"xl",lh:"sm",children:r}),y.jsxs(Ir,{alignItems:"flex-start",mt:"1",children:[y.jsx(_We,{label:"id",value:e}),y.jsx(Ir,{gap:"xs",flexWrap:"wrap",children:o.map(s=>y.jsx(U3,{tag:s,cursor:"pointer",onClick:c=>{c.stopPropagation(),l.openSearch(`#${s}`)}},s))})]})]}),a.length>0&&y.jsxs("section",{className:qn({alignItems:"baseline"}),children:[y.jsx(xJ,{children:"Links"}),y.jsx(Ir,{gap:"xs",flexWrap:"wrap",children:a.map((s,c)=>y.jsx(vC,{value:s},`${c}-${s.url}`))})]}),n.isEmpty&&y.jsx(at,{component:"div",fw:500,size:"xs",c:"dimmed",style:{userSelect:"none"},children:"No description"}),n.nonEmpty&&y.jsxs("section",{children:[y.jsx(xJ,{children:"Description"}),y.jsx(wp,{value:n,fontSize:"sm",emptyText:"No description",className:fe({userSelect:"all"})})]})]})},_We=({label:e,value:r})=>y.jsxs(Ir,{gap:"0.5",children:[y.jsx(SWe,{children:e}),y.jsx(Ks,{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})]}),SWe=gd("div",{base:{color:"mantine.colors.dimmed",fontWeight:500,fontSize:"xxs",userSelect:"none"}}),EWe=()=>{const e=a2(),{enableVscode:r}=sr(),{onOpenSource:n}=um();return r?y.jsx(vJ,{label:"Open View Source",children:y.jsx(ic,{onClick:o=>{o.stopPropagation(),n?.({view:e})},children:y.jsx(am,{style:{width:"60%",height:"60%"}})})}):null};function wJ(e,r){if(e._type==="dynamic")try{if(r??=e.variant,r==="sequence")return e.sequenceLayout.bounds}catch{}return e.bounds}function CWe({points:e,controlPoints:r,labelBBox:n}){let o=1/0,a=1/0,i=-1/0,l=-1/0;if(r)for(const s of r)o=Math.min(o,s.x),a=Math.min(a,s.y),i=Math.max(i,s.x),l=Math.max(l,s.y);else for(const[s,c]of e)o=Math.min(o,s),a=Math.min(a,c),i=Math.max(i,s),l=Math.max(l,c);return n&&(o=Math.min(o,n.x),a=Math.min(a,n.y),i=Math.max(i,n.x+n.width),l=Math.max(l,n.y+n.height)),{x:o,y:a,width:i-o,height:l-a}}function $We({nodes:e,edges:r}){return ko.expand(ko.merge(...e,...r.map(CWe)),10)}function kJ(e){const{view:{drifts:r,_layout:n,...o},xynodes:a,xystore:i}=e,{nodeLookup:l,edgeLookup:s}=i.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=a.find(k=>k.id===p.id)?.data??f.data,v=f.internals.positionAbsolute,{width:w,height:x}=_o(f);return(!H3(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=q3(g.points));const x={...nd(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:$We({nodes:d,edges:u}),nodes:d,edges:u}}}const zWe=function(e){return e.get("diagram")},_J=function(e){return e.get("diagram").getSnapshot().context},SJ=()=>zn.raise({type:"sync"},{delay:200,id:"sync"}),mm=()=>zn.cancel("sync"),EJ=(e=50)=>zn.raise(({event:r})=>r,{delay:e}),CJ=e=>e.op==="reset-manual-layout"||e.op==="save-view-snapshot",$J=Wu(uCe(CJ)),zJ=()=>zn.assign(({system:e})=>{const r=_J(e);return{beforeEditing:{xynodes:r.xynodes.map(({measured:n,...o})=>({...nd(o,["selected","dragging","resizing"]),data:nd(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=>({...nd(n,["selected"]),data:nd(n.data,["active","dimmed","hovered"])})),change:kJ(r),view:r.view,synched:!1}}}),RWe=()=>zn.enqueueActions(({enqueue:e,event:r})=>{e(zJ()),r.type==="edit.start"&&e.assign({editing:r.subject})}),jWe=()=>zn.stopChild("hotkey"),P$=()=>zn.enqueueActions(({check:e,enqueue:r,self:n})=>{const o=e("can undo"),a=n.getSnapshot().children.hotkey;if(!o&&a){r.stopChild(a);return}o&&!a&&r.spawnChild("hotkey",{id:"hotkey"})}),RJ=()=>zn.assign(({context:e})=>{const r=e.beforeEditing;return r?{beforeEditing:null,editing:null,history:[...e.history,r]}:{editing:null}}),B$=()=>zn.enqueueActions(({event:e,enqueue:r})=>{if(e.type==="edit.finish"&&e.wasChanged){r(RJ()),r(SJ());return}r.assign({beforeEditing:null,editing:null})}),TWe=()=>zn.assign(({context:e})=>({beforeEditing:e.beforeEditing&&e.beforeEditing.synched===!1?{...e.beforeEditing,synched:!0}:e.beforeEditing,history:e.history.map(r=>({...r,synched:!0}))})),AWe=()=>zn.assign(({context:e})=>e.history.length<=1?{history:[]}:{history:e.history.slice(0,e.history.length-1)}),DWe=()=>zn.enqueueActions(({context:e,enqueue:r,system:n})=>{const o=rd(e.history);if(!o)return;r(mm()),r(AWe()),r(P$());const a=zWe(n);r.sendTo(a,{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(SJ())}),O$=()=>zn.assign(({context:e,system:r})=>{const n=_J(r),o=kJ(n);return{pendingChanges:[...$J(e.pendingChanges),o]}}),MWe=y3(({sendBack:e})=>{const r=lw([["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})}}),NWe=by(()=>{throw new Error("Not implemented")}),PWe=by(()=>{throw new Error("Not implemented")}),jJ=function(e){return e.system.get("diagram")},zn=rs({delays:{"350ms":350,waitBeforeSync:2e3},actors:{applyLatest:NWe,executeChange:PWe,hotkey:MWe},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"}},BWe=zn.createStateConfig({id:"idle",on:{sync:{...Hn.pending},"edit.start":{...Hn.editing}}}),OWe=zn.createStateConfig({id:"editing",tags:"pending",entry:[RWe(),mm()],on:{change:{actions:B$(),...Hn.executeChanges},"edit.finish":{actions:B$(),...Hn.afterEdit},undo:{actions:B$(),...Hn.idle}}}),IWe=zn.createStateConfig({id:"pending",tags:["pending"],entry:P$(),on:{sync:{reenter:!0,...Hn.pending},"edit.start":{actions:[O$()],...Hn.editing}},after:{waitBeforeSync:{actions:[O$()],...Hn.executeChanges}}}),LWe=zn.createStateConfig({id:"afterEdit",always:[{guard:"has pending",...Hn.pending},{...Hn.idle}]}),FWe=zn.createStateConfig({id:"applyLatestToManual",entry:[mm(),zJ()],initial:"call",on:{"*":{actions:[TS(({event:e})=>`applyLatestToManual received unexpected event: ${e.type}`),EJ(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:wy(jJ,({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:RJ(),after:{"350ms":{actions:[O$(),P$()],...Hn.executeChanges}}}}}),VWe=zn.createStateConfig({id:"executeChanges",entry:[Bt(({event:e,context:r})=>{if(e.type==="change"){if(CJ(e.change))return{pendingChanges:[...$J(r.pendingChanges),e.change]};if(!r.pendingChanges.includes(e.change))return{pendingChanges:[...r.pendingChanges,e.change]}}return{}}),mm()],invoke:{src:"executeChange",input:({context:e})=>({changes:e.pendingChanges,viewId:e.viewId}),onDone:{actions:ts(({context:e,enqueue:r})=>{const n=F1(e.pendingChanges,o=>o.op==="save-view-snapshot");n&&r.sendTo(jJ,{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:EJ()}}}),qWe=zn.createMachine({id:"editor",context:({input:e})=>({viewId:e.viewId,beforeEditing:null,editing:null,pendingChanges:[],history:[]}),initial:"idle",states:{idle:BWe,editing:OWe,pending:IWe,afterEdit:LWe,applyLatestToManual:FWe,executeChanges:VWe},on:{cancel:{actions:[mm(),Bt({editing:null,beforeEditing:null,pendingChanges:[]})],...Hn.idle},synced:{actions:TWe()},undo:{guard:"can undo",actions:DWe(),...Hn.idle},change:{...Hn.executeChanges},applyLatestToManual:{...Hn.applyLatestToManual},reset:{actions:[mm(),Bt({history:[],editing:null,beforeEditing:null,pendingChanges:[]}),jWe()],...Hn.idle}}}),TJ=qWe,AJ={};function DJ(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 a=tt(o.data,n.data),i=a?o.data:n.data;return a&&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??AJ,n.style??AJ)?o:{...U1(o,Ja),...U1(n,Ja),data:i}}),FV(e,r)?e:r)}function I$(e,r){return Ja(r)?DJ(e,r):(r=e,n=>DJ(n,r))}const g2={};function MJ(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 a=BV(o.data,n.data);let i=a?o.data:n.data;a||(Ja(o.data.hovered)&&!Ja(n.data.hovered)&&(i={...i,hovered:o.data.hovered}),Ja(o.data.dimmed)&&!Ja(n.data.dimmed)&&(i={...i,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(a&&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??g2,n.domAttributes??g2)&&tt(o.style??g2,n.style??g2))return o;const u=c&&d?o.handles:n.handles;return{...U1(o,(p,f)=>Ja(p)&&f!=="parentId"),..."measured"in o&&{measured:{width:n.width??n.initialWidth,height:n.height??n.initialHeight}},...U1(n,Ja),width:n.width??n.initialWidth,height:n.height??n.initialHeight,...u&&{handles:u},data:i}}),FV(e,r)?e:r)}function y2(e,r){return Ja(r)?MJ(e,r):(r=e,n=>MJ(n,r))}const L$={top:"40px",bottom:"22px",left:"22px",right:"22px"};function NJ(e){const r=[],n=[],o=new Map,a=I_.from(e.nodes.reduce((s,c)=>(o.set(c.id,c),c.parent||s.push({node:c,parent:null}),s),[])),i=s=>mt(o.get(s),`Node not found: ${s}`);let l;for(;l=a.dequeue();){const{node:s,parent:c}=l,d=xn(s.children,1)||s.kind==d1;if(d)for(const w of s.children)a.enqueue({node:i(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?oc.Compound:oc.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===t2.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 PJ=e=>e.find(r=>r.data.column==="subjects"&&H1(r.parentId)),HWe=by(async({input:e,self:r,signal:n})=>{const{subjectId:o,navigateFromNode:a,xyflow:i,xystore:l,update:s}=e;let{nodes:c,width:d,height:u}=l.getState();const p=NJ(s),f=()=>{const{nodes:T,edges:O}=l.getState();return{xynodes:y2(T,p.xynodes),xyedges:I$(O,p.xyedges)}},g=mt(r._parent);let v=i.getZoom();const w=Math.max(v,1),x=qs(s.bounds,d,u,yi,w,L$),k=p.xynodes.find(T=>T.type!=="empty"&&T.data.column==="subjects"&&T.data.fqn===o)??PJ(p.xynodes),C=PJ(c),_=a?c.find(T=>T.id===a):c.find(T=>T.type!=="empty"&&T.data.column!=="subjects"&&T.data.fqn===o);if(!k||!_||k.type==="empty"||!C||k.data.fqn===C.data.fqn)return await i.setViewport(x),f();const $={x:k.position.x+(k.initialWidth??0)/2,y:k.position.y+(k.initialHeight??0)/2},z=i.getInternalNode(C.id),j=yC(z),A=new Set;if(c.forEach(T=>{if(T.id!==_.id){if(T.data.column==="subjects"){A.add(T.id);return}T.parentId&&(T.parentId===_.id||A.has(T.parentId))&&A.add(T.id)}}),c=y2(c,c.flatMap(T=>A.has(T.id)?[]:T.id!==_.id?{...T,data:{...T.data,dimmed:T.data.column==="subjects"?"immediate":!0}}:{...nd(T,["parentId"]),position:{x:j.x-T.initialWidth/2,y:j.y-T.initialHeight/2},zIndex:oc.Max,hidden:!1,data:{...T.data,dimmed:!1}})),g.send({type:"update.xydata",xynodes:c,xyedges:[]}),await YO(120),p.xynodes=p.xynodes.map(tr.setDimmed(!1)),n.aborted)return f();const R=300;return i.setCenter(j.x,j.y,{zoom:v,duration:R,interpolate:"smooth"}),await YO(R),await i.setCenter($.x,$.y,{zoom:v}),f()}),lc=rs({actors:{layouter:HWe},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}}),BJ=()=>lc.assign(({event:e})=>(ht(e,"xyflow.init"),{xyflow:e.instance,xystore:e.store})),OJ=()=>lc.assign(({event:e})=>(ht(e,"update.view"),{layouted:e.layouted,...NJ(e.layouted)})),UWe=()=>lc.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 a=new Map,i=r.querySelectorAll(".react-flow__node");for(const l of i){const s=l.getAttribute("data-id");s&&o.has(s)&&a.set(s,{id:s,nodeElement:l,force:!0})}n(a,{triggerFitView:!1})}),F$=e=>lc.createAction(({context:r,event:n})=>{e??=n.type==="fitDiagram"?n:{};let{duration:o,bounds:a}=e??{};o??=450;const{xyflow:i,xystore:l}=r;He(i,"xyflow is not initialized"),He(l,"xystore is not initialized"),a??=r.layouted?.bounds;const s=Math.max(i.getZoom(),1);if(a){const{width:c,height:d}=l.getState(),u=qs(a,c,d,yi,s,L$);i.setViewport(u,o>0?{duration:o,interpolate:"smooth"}:void 0).catch(console.error)}else i.fitView({minZoom:yi,maxZoom:s,padding:L$,...o>0&&{duration:o,interpolate:"smooth"}}).catch(console.error)}),WWe=()=>lc.assign(({context:e,event:r})=>(ht(r,"xyflow.applyNodeChanges"),{xynodes:Ox(r.changes,e.xynodes)})),GWe=()=>lc.assign(({context:e,event:r})=>(ht(r,"xyflow.applyEdgeChanges"),{xyedges:Ix(r.changes,e.xyedges)})),IJ=()=>lc.enqueueActions(({system:e,event:r})=>{if(r.type!=="xyflow.edgeClick")return;const n=Rr(e).diagramActorRef,o=r.edge.data.relations;xn(o,1)&&n.send({type:"open.source",relation:o[0]})}),LJ=()=>lc.assign({xyflow:null,layouted:null,xystore:null,xyedges:[],xynodes:[]}),YWe=lc.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:WWe()},"xyflow.applyEdgeChanges":{actions:GWe()}},states:{initializing:{on:{"xyflow.init":{actions:BJ(),target:"isReady"},"update.view":{actions:OJ(),target:"isReady"},stop:"closed",close:"closed"}},isReady:{always:[{guard:"isReady",actions:[F$({duration:0}),na({type:"xyflow.updateNodeInternals"},{delay:150})],target:"active"},{target:"initializing"}]},active:{initial:"idle",tags:["active"],on:{"xyflow.nodeClick":{actions:ts(({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:ts(({event:e,context:r,system:n,enqueue:o})=>{e.edge.selected||e.edge.data.relations.length>1?o.sendTo(Rr(n).overlaysActorRef,{type:"open.relationshipDetails",viewId:r.viewId,source:e.edge.data.sourceFqn,target:e.edge.data.targetFqn}):o(IJ())})},{actions:IJ()}],"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:F$()},"update.view":{actions:OJ(),target:".layouting"},"change.scope":{actions:Bt({scope:({event:e})=>e.scope})},"xyflow.updateNodeInternals":{actions:UWe()},fitDiagram:{actions:F$()},"xyflow.resized":{actions:[si("fitDiagram"),na({type:"fitDiagram"},{id:"fitDiagram",delay:300})]},"xyflow.init":{actions:BJ()},"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)}}),si("undim.edges"),si("dim.nonhovered.edges"),na({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)}),si("dim.nonhovered.edges"),na({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:ts(({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:ts(({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:LJ()}},exit:LJ()}),FJ=YWe,XWe=rs({actors:{relationshipsBrowserLogic:FJ}}).createMachine({id:"element-details",context:({input:e})=>({...e,initiatedFrom:{node:e.initiatedFrom?.node??null,clientRect:e.initiatedFrom?.clientRect??null}}),initial:"active",states:{active:{entry:d3("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:[wy(({self:e})=>`${e.id}-relationships`,{type:"close"}),yy(({self:e})=>`${e.id}-relationships`)],on:{"change.subject":{actions:Bt({subject:({event:e})=>e.subject})},close:"closed"}},closed:{id:"closed",type:"final"}}}),ZWe=XWe;function KWe(e){const r=[],n=[],o=new Map,a=I_.from(e.nodes.reduce((s,c)=>(o.set(c.id,c),c.parent||s.push({node:c,parent:null}),s),[])),i=s=>mt(o.get(s),`Node not found: ${s}`);let l;for(;l=a.dequeue();){const{node:s,parent:c}=l,d=xn(s.children,1);if(d)for(const w of s.children)a.enqueue({node:i(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?oc.Compound:oc.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 VJ(e){return"edgeId"in e?(He(Gx(e.edgeId),"edgeId is required"),{edgeId:e.edgeId}):{source:e.source,target:e.target}}const qJ={x:"22px",y:"22px"},QWe=rs({actions:{"xyflow:fitDiagram":({context:e},r)=>{let{duration:n,bounds:o}=r??{};n??=450;const{xyflow:a,xystore:i}=e;He(a,"xyflow is not initialized"),He(i,"xystore is not initialized"),o??=e.bounds;const l=Math.max(a.getZoom(),1);if(o){const{width:s,height:c}=i.getState(),d=qs(o,s,c,yi,l,qJ);a.setViewport(d,n>0?{duration:n}:void 0).catch(console.error)}else a.fitView({minZoom:yi,maxZoom:l,padding:qJ,...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(i=>[i.source,i.target]));if(o.size===0||!r)return;const a=new Map;for(const i of o){const l=r.querySelector(`.react-flow__node[data-id="${i}"]`);l&&a.set(i,{id:i,nodeElement:l,force:!0})}n(a,{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:a}=KWe(r.data);let i=e.initialized;return i.xydata||(i={...i,xydata:!0}),{initialized:i,xynodes:y2(e.xynodes,n),xyedges:I$(e.xyedges,o),bounds:Or(e.bounds,a)?e.bounds:a}}),"open relationship source":ts(({system:e,event:r})=>{if(r.type!=="xyflow.edgeClick")return;const n=Rr(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:VJ(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}},na({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)}}),si("undim.edges"),si("dim.nonhovered.edges"),na({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)}),si("dim.nonhovered.edges"),na({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:ts(({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",si("fitDiagram"),na({type:"fitDiagram",duration:0},{id:"fitDiagram",delay:50}),na({type:"xyflow.updateNodeInternals"},{delay:75})]},"xyflow.init":{actions:"updateXYFlow"},"xyflow.applyNodeChanges":{actions:Bt({xynodes:({context:e,event:r})=>Ox(r.changes,e.xynodes)})},"xyflow.applyEdgeChanges":{actions:Bt({xyedges:({context:e,event:r})=>Ix(r.changes,e.xyedges)})},"xyflow.paneDblClick":{actions:"xyflow:fitDiagram"},"xyflow.edgeClick":{actions:"open relationship source"},"navigate.to":{actions:Bt({subject:({event:e})=>VJ(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:Yu("event")}},"xyflow.resized":{actions:[si("fitDiagram"),na({type:"fitDiagram"},{id:"fitDiagram",delay:200})]},"xyflow.updateNodeInternals":{actions:"xyflow:updateNodeInternals"}}}),JWe=QWe;var zd={},ft={},HJ=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},gm={},UJ;function V$(){if(UJ)return gm;UJ=1,Object.defineProperty(gm,"__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 HJ<"u")return HJ}function r(){const a=e();if(a.__xstate__)return a.__xstate__}function n(a){if(typeof window>"u")return;const i=r();i&&i.register(a)}const o=a=>{if(typeof window>"u")return;const i=r();i&&i.register(a)};return gm.devToolsAdapter=o,gm.getGlobal=e,gm.registerService=n,gm}var WJ;function v2(){if(WJ)return ft;WJ=1;var e=V$();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="",a="",i="#",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),ie=_(ee);return typeof ie=="string"?typeof oe=="string"?ie===oe:!1:typeof oe=="string"?oe in ie:Object.keys(oe).every(le=>le in ie?k(oe[le],ie[le]):!1)}function C(J){if(T(J))return J;const ee=[];let oe="";for(let ie=0;ietypeof 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 ie=typeof J=="object",le=ie?J:void 0;return{next:(ie?J.next:J)?.bind(le),error:(ie?J.error:ee)?.bind(le),complete:(ie?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[,ie,le]=oe,ve=J.getStateNodeById(le).config.invoke;return(Array.isArray(ve)?ve[ie]: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,ie=new Map,le=new WeakMap,ve=new Set,Ae={},{clock:Fe,logger:rt}=ee,lt={schedule:(Ke,pt,vt,Lt,No=Math.random().toString(36).slice(2))=>{const dh={source:Ke,target:pt,event:vt,delay:Lt,id:No,startedAt:Date.now()},Ia=F(Ke,No);Ze._snapshot._scheduledEvents[Ia]=dh;const Kd=Fe.setTimeout(()=>{delete Ae[Ia],delete Ze._snapshot._scheduledEvents[Ia],Ze._relay(Ke,pt,vt)},Lt);Ae[Ia]=Kd},cancel:(Ke,pt)=>{const vt=F(Ke,pt),Lt=Ae[vt];delete Ae[vt],delete Ze._snapshot._scheduledEvents[vt],Lt!==void 0&&Fe.clearTimeout(Lt)},cancelAll:Ke=>{for(const pt in Ze._snapshot._scheduledEvents){const vt=Ze._snapshot._scheduledEvents[pt];vt.source===Ke&<.cancel(Ke,vt.id)}}},It=Ke=>{if(!ve.size)return;const pt={...Ke,rootId:J.sessionId};ve.forEach(vt=>vt.next?.(pt))},Ze={_snapshot:{_scheduledEvents:(ee?.snapshot&&ee.snapshot.scheduler)??{}},_bookId:()=>`x:${q++}`,_register:(Ke,pt)=>(oe.set(Ke,pt),Ke),_unregister:Ke=>{oe.delete(Ke.sessionId);const pt=le.get(Ke);pt!==void 0&&(ie.delete(pt),le.delete(Ke))},get:Ke=>ie.get(Ke),getAll:()=>Object.fromEntries(ie.entries()),_set:(Ke,pt)=>{const vt=ie.get(Ke);if(vt&&vt!==pt)throw new Error(`Actor with system ID '${Ke}' already exists.`);ie.set(Ke,pt),le.set(pt,Ke)},inspect:Ke=>{const pt=H(Ke);return ve.add(pt),{unsubscribe(){ve.delete(pt)}}},_sendInspectionEvent:It,_relay:(Ke,pt,vt)=>{Ze._sendInspectionEvent({type:"@xstate.event",sourceRef:Ke,actorRef:pt,event:vt}),pt._send(vt)},scheduler:lt,getSnapshot:()=>({_scheduledEvents:{...Ze._snapshot._scheduledEvents}}),start:()=>{const Ke=Ze._snapshot._scheduledEvents;Ze._snapshot._scheduledEvents={};for(const pt in Ke){const{source:vt,target:Lt,event:No,delay:dh,id:Ia}=Ke[pt];lt.schedule(vt,Lt,No,dh,Ia)}},_clock:Fe,_logger:rt};return Ze}let U=!1;const Y=1;let Z=(function(J){return J[J.NotStarted=0]="NotStarted",J[J.Running=1]="Running",J[J.Stopped=2]="Stopped",J})({});const I={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=Z.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 ie={...I,...oe},{clock:le,logger:ve,parent:Ae,syncSnapshot:Fe,id:rt,systemId:lt,inspect:It}=ie;this.system=Ae?Ae.system:G(this,{clock:le,logger:ve}),It&&!Ae&&this.system.inspect(H(It)),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=Ae,this._syncSnapshot=Fe,this.options=ie,this.src=ie.src??ee,this.ref=this,this._actorScope={self:this,id:this.id,sessionId:this.sessionId,logger:this.logger,defer:Ze=>{this._deferred.push(Ze)},system:this.system,stopChild:Ze=>{if(Ze._parent!==this)throw new Error(`Cannot stop child actor ${Ze.id} of ${this.id} because it is not a child`);Ze._stop()},emit:Ze=>{const Ke=this.eventListeners.get(Ze.type),pt=this.eventListeners.get("*");if(!Ke&&!pt)return;const vt=[...Ke?Ke.values():[],...pt?pt.values():[]];for(const Lt of vt)try{Lt(Ze)}catch(No){w(No)}},actionExecutor:Ze=>{const Ke=()=>{if(this._actorScope.system._sendInspectionEvent({type:"@xstate.action",actorRef:this,action:{type:Ze.type,params:Ze.params}}),!Ze.exec)return;const pt=U;try{U=!0,Ze.exec(Ze.info,Ze.params)}finally{U=pt}};this._processingStatus===Z.Running?Ke():this._deferred.push(Ke)}},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 ie;for(;ie=this._deferred.shift();)try{ie()}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,ie){const le=H(ee,oe,ie);if(this._processingStatus!==Z.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(Ae){w(Ae)}break}}return{unsubscribe:()=>{this.observers.delete(le)}}}on(ee,oe){let ie=this.eventListeners.get(ee);ie||(ie=new Set,this.eventListeners.set(ee,ie));const le=oe.bind(void 0);return ie.add(le),{unsubscribe:()=>{ie.delete(le)}}}start(){if(this._processingStatus===Z.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=Z.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,ie;try{oe=this.logic.transition(this._snapshot,ee,this._actorScope)}catch(le){ie={err:le}}if(ie){const{err:le}=ie;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===Z.Stopped?this:(this.mailbox.clear(),this._processingStatus===Z.NotStarted?(this._processingStatus=Z.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 ie of this.observers){const le=ie.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!==Z.Running?this:(this.system.scheduler.cancelAll(this),this.mailbox.clear(),this.mailbox=new r(this._process.bind(this)),this._processingStatus=Z.Stopped,this.system._unregister(this),this)}_send(ee){this._processingStatus!==Z.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 K(J,...[ee]){return new W(J,ee)}const Q=K;function ae(J,ee,oe,ie,{sendId:le}){const ve=typeof le=="function"?le(oe,ie):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,ie){}return ee.type="xstate.cancel",ee.sendId=J,ee.resolve=ae,ee.execute=te,ee}function ue(J,ee,oe,ie,{id:le,systemId:ve,src:Ae,input:Fe,syncSnapshot:rt}){const lt=typeof Ae=="string"?V(ee.machine,Ae):Ae,It=typeof le=="function"?le(oe):le;let Ze,Ke;return lt&&(Ke=typeof Fe=="function"?Fe({context:ee.context,event:oe.event,self:J.self}):Fe,Ze=K(lt,{id:It,src:Ae,parent:J.self,syncSnapshot:rt,systemId:ve,input:Ke})),[Gr(ee,{children:{...ee.children,[It]:Ze}}),{id:le,systemId:ve,actorRef:Ze,src:Ae,input:Ke},void 0]}function _e(J,{actorRef:ee}){ee&&J.defer(()=>{ee._processingStatus!==Z.Stopped&&ee.start()})}function ce(...[J,{id:ee,systemId:oe,input:ie,syncSnapshot:le=!1}={}]){function ve(Ae,Fe){}return ve.type="xstate.spawnChild",ve.id=ee,ve.systemId=oe,ve.src=J,ve.input=ie,ve.syncSnapshot=le,ve.resolve=ue,ve.execute=_e,ve}function pe(J,ee,oe,ie,{actorRef:le}){const ve=typeof le=="function"?le(oe,ie):le,Ae=typeof ve=="string"?ee.children[ve]:ve;let Fe=ee.children;return Ae&&(Fe={...Fe},delete Fe[Ae.id]),[Gr(ee,{children:Fe}),Ae,void 0]}function xe(J,ee){if(ee){if(J.system._unregister(ee),ee._processingStatus!==Z.Running){J.stopChild(ee);return}J.defer(()=>{J.stopChild(ee)})}}function De(J){function ee(oe,ie){}return ee.type="xstate.stopChild",ee.actorRef=J,ee.resolve=pe,ee.execute=xe,ee}const Be=De;function Je(J,ee,{stateValue:oe}){if(typeof oe=="string"&&Ht(oe)){const ie=J.machine.getStateNodeById(oe);return J._nodes.some(le=>le===ie)}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:ie}){return!Et(ie[0],ee,oe,J)}function St(J){function ee(oe,ie){return!1}return ee.check=Le,ee.guards=[J],ee}function Ve(J,{context:ee,event:oe},{guards:ie}){return ie.every(le=>Et(le,ee,oe,J))}function qe(J){function ee(oe,ie){return!1}return ee.check=Ve,ee.guards=J,ee}function Xe(J,{context:ee,event:oe},{guards:ie}){return ie.some(le=>Et(le,ee,oe,J))}function Ot(J){function ee(oe,ie){return!1}return ee.check=Xe,ee.guards=J,ee}function Et(J,ee,oe,ie){const{machine:le}=ie,ve=typeof J=="function",Ae=ve?J:le.implementations.guards[typeof J=="string"?J:J.type];if(!ve&&!Ae)throw new Error(`Guard '${typeof J=="string"?J:J.type}' is not implemented.'.`);if(typeof Ae!="function")return Et(Ae,ee,oe,ie);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 Ae?Ae.check(ie,Fe,Ae):Ae(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 ie=J.parent;for(;ie&&ie!==ee;)oe.push(ie),ie=ie.parent;return oe}function yt(J){const ee=new Set(J),oe=jr(ee);for(const ie of ee)if(ie.type==="compound"&&(!oe.get(ie)||!oe.get(ie).length))sa(ie).forEach(le=>ee.add(le));else if(ie.type==="parallel"){for(const le of ke(ie))if(le.type!=="history"&&!ee.has(le)){const ve=sa(le);for(const Ae of ve)ee.add(Ae)}}for(const ie of ee){let le=ie.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 ie={};for(const le of oe)ie[le.key]=xt(le,ee);return ie}function jr(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,jr(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]===i;function Zr(J,ee){return J.transitions.get(ee)||[...J.transitions.keys()].filter(oe=>{if(oe===l)return!0;if(!oe.endsWith(".*"))return!1;const ie=oe.split("."),le=ee.split(".");for(let ve=0;veie.length-oe.length).flatMap(oe=>J.transitions.get(oe))}function Gt(J){const ee=J.config.after;if(!ee)return[];const oe=ie=>{const le=u(ie,J.id),ve=le.type;return J.entry.push(Zd(le,{id:ve,delay:ie})),J.exit.push(re(ve)),ve};return Object.keys(ee).flatMap(ie=>{const le=ee[ie],ve=typeof le=="string"?{target:le}:le,Ae=Number.isNaN(+ie)?ie:+ie,Fe=oe(Ae);return A(ve).map(rt=>({...rt,event:Fe,delay:Ae}))}).map(ie=>{const{delay:le}=ie;return{...ln(J,ie.event,ie),delay:le}})}function ln(J,ee,oe){const ie=L(oe.target),le=oe.reenter??!1,ve=oo(J,ie),Ae={...oe,actions:A(oe.actions),guard:oe.guard,target:ve,source:J,reenter:le,eventType:ee,toJSON:()=>({...Ae,source:`#${J.id}`,target:ve?ve.map(Fe=>`#${Fe.id}`):void 0})};return Ae}function Wn(J){const ee=new Map;if(J.config.on)for(const oe of Object.keys(J.config.on)){if(oe===a)throw new Error('Null events ("") cannot be specified as a transition key. Use `always: { ... }` instead.');const ie=J.config.on[oe];ee.set(oe,P(ie).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(ie=>ln(J,oe,ie)))}for(const oe of J.invoke){if(oe.onDone){const ie=`xstate.done.actor.${oe.id}`;ee.set(ie,P(oe.onDone).map(le=>ln(J,ie,le)))}if(oe.onError){const ie=`xstate.error.actor.${oe.id}`;ee.set(ie,P(oe.onError).map(le=>ln(J,ie,le)))}if(oe.onSnapshot){const ie=`xstate.snapshot.${oe.id}`;ee.set(ie,P(oe.onSnapshot).map(le=>ln(J,ie,le)))}}for(const oe of J.after){let ie=ee.get(oe.eventType);ie||(ie=[],ee.set(oe.eventType,ie)),ie.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 ie={source:J,actions:!ee||typeof ee=="string"?[]:A(ee.actions),eventType:null,reenter:!1,target:oe?[oe]:[],toJSON:()=>({...ie,source:`#${J.id}`,target:oe?[`#${oe.id}`]:[]})};return ie}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 ie=oe[0]===n;if(ie&&!J.parent)return bs(J,oe.slice(1));const le=ie?J.key+oe:oe;if(J.parent)try{return bs(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 Uo(J){const ee=L(J.config.target);return ee?{target:ee.map(oe=>typeof oe=="string"?bs(J.parent,oe):oe)}:J.parent.initial}function To(J){return J.type==="history"}function sa(J){const ee=Al(J);for(const oe of ee)for(const ie of Ye(oe,J))ee.add(ie);return ee}function Al(J){const ee=new Set;function oe(ie){if(!ee.has(ie)){if(ee.add(ie),ie.type==="compound")oe(ie.initial.target[0]);else if(ie.type==="parallel")for(const le of ke(ie))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 bs(J,ee){if(typeof ee=="string"&&Ht(ee))try{return J.machine.getStateNodeById(ee)}catch{}const oe=C(ee).slice();let ie=J;for(;oe.length;){const le=oe.shift();if(!le.length)break;ie=Ao(ie,le)}return ie}function xs(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),ie=oe.map(le=>Ao(J,le)).filter(Boolean);return[J.machine.root,J].concat(ie,oe.reduce((le,ve)=>{const Ae=Ao(J,ve);if(!Ae)return le;const Fe=xs(Ae,ee[ve]);return le.concat(Fe)},[]))}function kc(J,ee,oe,ie){const le=Ao(J,ee).next(oe,ie);return!le||!le.length?J.next(oe,ie):le}function Dl(J,ee,oe,ie){const le=Object.keys(ee),ve=Ao(J,le[0]),Ae=ws(ve,ee[le[0]],oe,ie);return!Ae||!Ae.length?J.next(oe,ie):Ae}function ih(J,ee,oe,ie){const le=[];for(const ve of Object.keys(ee)){const Ae=ee[ve];if(!Ae)continue;const Fe=Ao(J,ve),rt=ws(Fe,Ae,oe,ie);rt&&le.push(...rt)}return le.length?le:J.next(oe,ie)}function ws(J,ee,oe,ie){return typeof ee=="string"?kc(J,ee,oe,ie):Object.keys(ee).length===1?Dl(J,ee,oe,ie):ih(J,ee,oe,ie)}function Hd(J){return Object.keys(J.states).map(ee=>J.states[ee]).filter(ee=>ee.type==="history")}function Wo(J,ee){let oe=J;for(;oe.parent&&oe.parent!==ee;)oe=oe.parent;return oe.parent===ee}function _c(J,ee){const oe=new Set(J),ie=new Set(ee);for(const le of oe)if(ie.has(le))return!0;for(const le of ie)if(oe.has(le))return!0;return!1}function ks(J,ee,oe){const ie=new Set;for(const le of J){let ve=!1;const Ae=new Set;for(const Fe of ie)if(_c(Nr([le],ee,oe),Nr([Fe],ee,oe)))if(Wo(le.source,Fe.source))Ae.add(Fe);else{ve=!0;break}if(!ve){for(const Fe of Ae)ie.delete(Fe);ie.add(le)}}return Array.from(ie)}function Ud(J){const[ee,...oe]=J;for(const ie of Ye(ee,void 0))if(oe.every(le=>Wo(le,ie)))return ie}function _s(J,ee){if(!J.target)return[];const oe=new Set;for(const ie of J.target)if(To(ie))if(ee[ie.id])for(const le of ee[ie.id])oe.add(le);else for(const le of _s(Uo(ie),ee))oe.add(le);else oe.add(ie);return[...oe]}function Go(J,ee){const oe=_s(J,ee);if(!oe)return;if(!J.reenter&&oe.every(le=>le===J.source||Wo(le,J.source)))return J.source;const ie=Ud(oe.concat(J.source));if(ie)return ie;if(!J.reenter)return J.source.machine.root}function Nr(J,ee,oe){const ie=new Set;for(const le of J)if(le.target?.length){const ve=Go(le,oe);le.reenter&&le.source===ve&&ie.add(ve);for(const Ae of ee)Wo(Ae,ve)&&ie.add(Ae)}return[...ie]}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,ie,le,ve){if(!J.length)return ee;const Ae=new Set(ee._nodes);let Fe=ee.historyValue;const rt=ks(J,Ae,Fe);let lt=ee;le||([lt,Fe]=Ci(lt,ie,oe,rt,Ae,Fe,ve,oe.actionExecutor)),lt=ho(lt,ie,oe,rt.flatMap(Ze=>Ze.actions),ve,void 0),lt=Sc(lt,ie,oe,rt,Ae,ve,Fe,le);const It=[...Ae];lt.status==="done"&&(lt=ho(lt,ie,oe,It.sort((Ze,Ke)=>Ke.order-Ze.order).flatMap(Ze=>Ze.exit),ve,void 0));try{return Fe===ee.historyValue&&Mn(ee._nodes,Ae)?lt:Gr(lt,{_nodes:It,historyValue:Fe})}catch(Ze){throw Ze}}function Ml(J,ee,oe,ie,le){if(ie.output===void 0)return;const ve=p(le.id,le.output!==void 0&&le.parent?R(le.output,J.context,ee,oe.self):void 0);return R(ie.output,J.context,ve,oe.self)}function Sc(J,ee,oe,ie,le,ve,Ae,Fe){let rt=J;const lt=new Set,It=new Set;lh(ie,Ae,It,lt),Fe&&It.add(J.machine.root);const Ze=new Set;for(const Ke of[...lt].sort((pt,vt)=>pt.order-vt.order)){le.add(Ke);const pt=[];pt.push(...Ke.entry);for(const vt of Ke.invoke)pt.push(ce(vt.src,{...vt,syncSnapshot:!!vt.onSnapshot}));if(It.has(Ke)){const vt=Ke.initial.actions;pt.push(...vt)}if(rt=ho(rt,ee,oe,pt,ve,Ke.invoke.map(vt=>vt.id)),Ke.type==="final"){const vt=Ke.parent;let Lt=vt?.type==="parallel"?vt:vt?.parent,No=Lt||Ke;for(vt?.type==="compound"&&ve.push(p(vt.id,Ke.output!==void 0?R(Ke.output,rt.context,ee,oe.self):void 0));Lt?.type==="parallel"&&!Ze.has(Lt)&&qt(le,Lt);)Ze.add(Lt),ve.push(p(Lt.id)),No=Lt,Lt=Lt.parent;if(Lt)continue;rt=Gr(rt,{status:"done",output:Ml(rt,ee,oe,rt.machine.root,No)})}}return rt}function lh(J,ee,oe,ie){for(const le of J){const ve=Go(le,ee);for(const Fe of le.target||[])!To(Fe)&&(le.source!==Fe||le.source!==ve||le.reenter)&&(ie.add(Fe),oe.add(Fe)),Ba(Fe,ee,oe,ie);const Ae=_s(le,ee);for(const Fe of Ae){const rt=Ye(Fe,ve);ve?.type==="parallel"&&rt.push(ve),Ei(ie,ee,oe,rt,!le.source.parent&&le.reenter?void 0:ve)}}}function Ba(J,ee,oe,ie){if(To(J))if(ee[J.id]){const le=ee[J.id];for(const ve of le)ie.add(ve),Ba(ve,ee,oe,ie);for(const ve of le)Nl(ve,J.parent,ie,ee,oe)}else{const le=Uo(J);for(const ve of le.target)ie.add(ve),le===J.parent?.initial&&oe.add(J.parent),Ba(ve,ee,oe,ie);for(const ve of le.target)Nl(ve,J.parent,ie,ee,oe)}else if(J.type==="compound"){const[le]=J.initial.target;To(le)||(ie.add(le),oe.add(le)),Ba(le,ee,oe,ie),Nl(le,J,ie,ee,oe)}else if(J.type==="parallel")for(const le of ke(J).filter(ve=>!To(ve)))[...ie].some(ve=>Wo(ve,le))||(To(le)||(ie.add(le),oe.add(le)),Ba(le,ee,oe,ie))}function Ei(J,ee,oe,ie,le){for(const ve of ie)if((!le||Wo(ve,le))&&J.add(ve),ve.type==="parallel")for(const Ae of ke(ve).filter(Fe=>!To(Fe)))[...J].some(Fe=>Wo(Fe,Ae))||(J.add(Ae),Ba(Ae,ee,oe,J))}function Nl(J,ee,oe,ie,le){Ei(oe,ie,le,Ye(J,ee))}function Ci(J,ee,oe,ie,le,ve,Ae,Fe){let rt=J;const lt=Nr(ie,le,ve);lt.sort((Ze,Ke)=>Ke.order-Ze.order);let It;for(const Ze of lt)for(const Ke of Hd(Ze)){let pt;Ke.history==="deep"?pt=vt=>be(vt)&&Wo(vt,Ze):pt=vt=>vt.parent===Ze,It??={...ve},It[Ke.id]=Array.from(le).filter(pt)}for(const Ze of lt)rt=ho(rt,ee,oe,[...Ze.exit,...Ze.invoke.map(Ke=>De(Ke.id))],Ae,void 0),le.delete(Ze);return[rt,It||ve]}function $i(J,ee){return J.implementations.actions[ee]}function ca(J,ee,oe,ie,le,ve){const{machine:Ae}=J;let Fe=J;for(const rt of ie){const lt=typeof rt=="function",It=lt?rt:$i(Ae,typeof rt=="string"?rt:rt.type),Ze={context:Fe.context,event:ee,self:oe.self,system:oe.system},Ke=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(!It||!("resolve"in It)){oe.actionExecutor({type:typeof rt=="string"?rt:typeof rt=="object"?rt.type:rt.name||"(anonymous)",info:Ze,params:Ke,exec:It});continue}const pt=It,[vt,Lt,No]=pt.resolve(oe,Fe,Ze,Ke,It,le);Fe=vt,"retryResolve"in pt&&ve?.push([pt,Lt]),"execute"in pt&&oe.actionExecutor({type:pt.type,info:Ze,params:Lt,exec:pt.execute.bind(null,oe,Lt)}),No&&(Fe=ca(Fe,ee,oe,No,le,ve))}return Fe}function ho(J,ee,oe,ie,le,ve){const Ae=ve?[]:void 0,Fe=ca(J,ee,oe,ie,{internalQueue:le,deferredActorIds:ve},Ae);return Ae?.forEach(([rt,lt])=>{rt.retryResolve(oe,Fe,lt)}),Fe}function Wr(J,ee,oe,ie){let le=J;const ve=[];function Ae(lt,It,Ze){oe.system._sendInspectionEvent({type:"@xstate.microstep",actorRef:oe.self,event:It,snapshot:lt,_transitions:Ze}),ve.push(lt)}if(ee.type===d)return le=Gr(Ec(le,ee,oe),{status:"stopped"}),Ae(le,ee,[]),{snapshot:le,microstates:ve};let Fe=ee;if(Fe.type!==s){const lt=Fe,It=O(lt),Ze=Cc(lt,le);if(It&&!Ze.length)return le=Gr(J,{status:"error",error:lt.error}),Ae(le,lt,[]),{snapshot:le,microstates:ve};le=Do(Ze,J,oe,Fe,!1,ie),Ae(le,lt,Ze)}let rt=!0;for(;le.status==="active";){let lt=rt?Oa(le,Fe):[];const It=lt.length?le:void 0;if(!lt.length){if(!ie.length)break;Fe=ie.shift(),lt=Cc(Fe,le)}le=Do(lt,le,oe,Fe,!1,ie),rt=le!==It,Ae(le,Fe,lt)}return le.status!=="active"&&Ec(le,Fe,oe),{snapshot:le,microstates:ve}}function Ec(J,ee,oe){return ho(J,ee,oe,Object.values(J.children).map(ie=>De(ie)),[],void 0)}function Cc(J,ee){return ee.machine.getTransitionData(ee,J)}function Oa(J,ee){const oe=new Set,ie=J._nodes.filter(be);for(const le of ie)e:for(const ve of[le].concat(Ye(le,void 0)))if(ve.always){for(const Ae of ve.always)if(Ae.guard===void 0||Et(Ae.guard,J.context,ee,J)){oe.add(Ae);break e}}return ks(Array.from(oe),new Set(J._nodes),J.historyValue)}function zi(J,ee){const oe=yt(xs(J,ee));return er(J,[...oe])}function Wd(J){return!!J&&typeof J=="object"&&"machine"in J&&"value"in J}const Ss=function(J){return k(J,this.value)},Gd=function(J){return this.tags.has(J)},sh=function(J){const ee=this.machine.getTransitionData(this,J);return!!ee?.length&&ee.some(oe=>oe.target!==void 0||oe.actions.length)},Es=function(){const{_nodes:J,tags:ee,machine:oe,getMeta:ie,toJSON:le,can:ve,hasTag:Ae,matches:Fe,...rt}=this;return{...rt,tags:Array.from(ee)}},Cs=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:Ss,hasTag:Gd,can:sh,getMeta:Cs,toJSON:Es}}function Gr(J,ee={}){return Mo({...J,...ee},J.machine)}function Yd(J){if(typeof J!="object"||J===null)return{};const ee={};for(const oe in J){const ie=J[oe];Array.isArray(ie)&&(ee[oe]=ie.map(le=>({id:le.id})))}return ee}function ch(J,ee){const{_nodes:oe,tags:ie,machine:le,children:ve,context:Ae,can:Fe,hasTag:rt,matches:lt,getMeta:It,toJSON:Ze,...Ke}=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{...Ke,context:Ri(Ae),children:pt,historyValue:Yd(Ke.historyValue)}}function Ri(J){let ee;for(const oe in J){const ie=J[oe];if(ie&&typeof ie=="object")if("sessionId"in ie&&"send"in ie&&"ref"in ie)ee??=Array.isArray(J)?J.slice():{...J},ee[oe]={xstate$$type:Y,id:ie.id};else{const le=Ri(ie);le!==ie&&(ee??=Array.isArray(J)?J.slice():{...J},ee[oe]=le)}}return ee??J}function Xd(J,ee,oe,ie,{event:le,id:ve,delay:Ae},{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,ie):le;let It;if(typeof Ae=="string"){const Ze=rt&&rt[Ae];It=typeof Ze=="function"?Ze(oe,ie):Ze}else It=typeof Ae=="function"?Ae(oe,ie):Ae;return typeof It!="number"&&Fe.push(lt),[ee,{event:lt,id:ve,delay:It},void 0]}function ji(J,ee){const{event:oe,delay:ie,id:le}=ee;if(typeof ie=="number"){J.defer(()=>{const ve=J.self;J.system.scheduler.schedule(ve,ve,oe,ie,le)});return}}function Zd(J,ee){function oe(ie,le){}return oe.type="xstate.raise",oe.event=J,oe.id=ee?.id,oe.delay=ee?.delay,oe.resolve=Xd,oe.execute=ji,oe}return ft.$$ACTOR_TYPE=Y,ft.Actor=W,ft.NULL_EVENT=a,ft.ProcessingStatus=Z,ft.STATE_DELIMITER=n,ft.XSTATE_ERROR=c,ft.XSTATE_STOP=d,ft.and=qe,ft.cancel=re,ft.cloneMachineSnapshot=Gr,ft.createActor=K,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=Zr,ft.getDelayedTransitions=Gt,ft.getInitialStateNodes=Al,ft.getPersistedSnapshot=ch,ft.getStateNodeByPath=bs,ft.getStateNodes=xs,ft.interpret=Q,ft.isInFinalState=qt,ft.isMachineSnapshot=Wd,ft.isStateId=Ht,ft.macrostep=Wr,ft.mapValues=z,ft.matchesState=k,ft.microstep=Do,ft.not=St,ft.or=Ot,ft.pathToStateValue=$,ft.raise=Zd,ft.resolveActionsAndContext=ho,ft.resolveReferencedActor=V,ft.resolveStateValue=zi,ft.spawnChild=ce,ft.stateIn=st,ft.stop=Be,ft.stopChild=De,ft.toArray=A,ft.toObserver=H,ft.toStatePath=C,ft.toTransitionConfigArray=P,ft.transitionNode=ws,ft}var GJ;function eGe(){if(GJ)return zd;GJ=1,Object.defineProperty(zd,"__esModule",{value:!0});var e=v2();return V$(),zd.and=e.and,zd.evaluateGuard=e.evaluateGuard,zd.not=e.not,zd.or=e.or,zd.stateIn=e.stateIn,zd}var Rd=eGe();const tGe=y3(({sendBack:e})=>{const r=lw([["Escape",n=>{n.stopPropagation(),e({type:"close"})},{preventDefault:!0}]]);return document.body.addEventListener("keydown",r,{capture:!0}),()=>{document.body.removeEventListener("keydown",r,{capture:!0})}}),dl=rs({actors:{relationshipDetails:JWe,elementDetails:ZWe,relationshipsBrowser:FJ,hotkey:tGe},guards:{"has overlays?":({context:e})=>e.overlays.length>0,"close specific overlay?":({context:e,event:r})=>(ht(r,"close"),Gx(r.actorId)&&e.overlays.some(n=>n.id===r.actorId)),"last: is relationshipDetails?":({context:e})=>rd(e.overlays)?.type==="relationshipDetails","last: is relationshipsBrowser?":({context:e})=>rd(e.overlays)?.type==="relationshipsBrowser"}}),rGe=()=>dl.enqueueActions(({context:e,enqueue:r})=>{if(e.overlays.length===0)return;const n=rd(e.overlays)?.id;n&&(r.sendTo(n,{type:"close"}),r.stopChild(n),r.assign({overlays:e.overlays.filter(o=>o.id!==n)}))}),nGe=()=>dl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"close");const o=n.actorId;if(!Gx(o))return;const a=e.overlays.find(i=>i.id===o)?.id;a&&(r.sendTo(a,{type:"close"}),r.stopChild(a),r.assign({overlays:e.overlays.filter(i=>i.id!==a)}))}),YJ=()=>dl.enqueueActions(({context:e,enqueue:r})=>{for(const{id:n}of ACe(e.overlays))r.sendTo(n,{type:"close"}),r.stopChild(n);r.assign({overlays:[]})}),oGe=()=>dl.enqueueActions(({context:e,enqueue:r,event:n})=>{if(ht(n,"open.elementDetails"),e.overlays.some(a=>a.type==="elementDetails"&&a.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}]})}),aGe=()=>dl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"open.relationshipDetails");const o=rd(e.overlays);if(o?.type==="relationshipDetails"){r.sendTo(o.id,{...n,type:"navigate.to"});return}const a=`relationshipDetails-${e.seq}`;r.spawnChild("relationshipDetails",{id:a,input:n,syncSnapshot:!0}),r.assign({seq:e.seq+1,overlays:[...e.overlays,{id:a,type:"relationshipDetails"}]})}),iGe=()=>dl.enqueueActions(({context:e,enqueue:r,event:n})=>{ht(n,"open.relationshipsBrowser");const o=rd(e.overlays);if(o?.type==="relationshipsBrowser"){r.sendTo(o.id,{type:"navigate.to",subject:n.subject,viewId:n.viewId});return}const a=`relationshipsBrowser-${e.seq}`;r.spawnChild("relationshipsBrowser",{id:a,input:n,syncSnapshot:!0}),r.assign({seq:e.seq+1,overlays:[...e.overlays,{id:a,type:"relationshipsBrowser",subject:n.subject}]})}),XJ=()=>dl.enqueueActions(({enqueue:e,event:r})=>{switch(console.log("openOverlay event",r),ht(r,["open.elementDetails","open.relationshipDetails","open.relationshipsBrowser"]),r.type){case"open.elementDetails":e(oGe());break;case"open.relationshipDetails":e(aGe());break;case"open.relationshipsBrowser":e(iGe());break}}),lGe=()=>dl.spawnChild("hotkey",{id:"hotkey"}),ZJ=()=>dl.stopChild("hotkey"),KJ=()=>dl.enqueueActions(({enqueue:e,context:r})=>{r.overlays.length===0&&(console.log("No overlays left, raising close event"),e.raise({type:"close"}))}),sGe=dl.createMachine({id:"overlays",context:()=>({seq:1,overlays:[]}),initial:"idle",states:{idle:{on:{"open.*":{actions:XJ(),target:"active"}}},active:{entry:[lGe()],exit:[ZJ()],on:{"open.*":{actions:XJ()},close:[{guard:Rd.not("has overlays?"),target:"idle"},{guard:"close specific overlay?",actions:[nGe(),KJ()]},{actions:[rGe(),KJ()]}],"close.all":{actions:[YJ()],target:"idle"}}},final:{entry:[YJ(),ZJ()],type:"final"}}}),cGe=sGe,dGe=rs({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"}}}}}),uGe=dGe,pGe=y3(({sendBack:e})=>{const r=lw([["Escape",o=>{o.stopPropagation(),e({type:"key.esc"})},{preventDefault:!0}]]),n=lw([["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})}}),hGe=y3(({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)}}),b2=e=>{let r=e.toggledFeatures;const n=Kn(e.activeWalkthrough),o=e.features.enableCompareWithLatest&&(r.enableCompareWithLatest??!1)&&Kn(e.view._layout)&&!n,a=e.features.enableReadOnly||(r.enableReadOnly??!1)||n||e.dynamicViewVariant==="sequence"&&e.view._type==="dynamic"||o&&e.view._layout==="auto";return{enableCompareWithLatest:o,enableReadOnly:a}},q$=e=>b2(e).enableReadOnly,Qe=rs({actors:{hotkeyActorLogic:pGe,overlaysActorLogic:cGe,searchActorLogic:uGe,mediaPrintActorLogic:hGe,editorActor:TJ},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&&q$(e),"enabled: Readonly":({context:e})=>q$(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})=>!q$(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;Xo(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;Xo(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)}}),Rn={idle:"#idle",focused:"#focused",walkthrough:"#walkthrough",printing:"#printing",navigating:"#navigating"},fGe=[["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"}]],QJ=wt("outline","lock-open-2","LockOpen2",fGe),mGe=[["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"}]],gGe=wt("outline","lock","Lock",mGe),yGe=e=>{const r=b2(e).enableCompareWithLatest&&!!e.view.drifts&&e.view._layout==="auto",n=e.view._type==="dynamic"&&e.dynamicViewVariant==="sequence",o=!Kn(e.activeWalkthrough);return{visible:e.features.enableEditor&&o,disabled:r||n,isReadOnly:e.toggledFeatures.enableReadOnly??!1}},vGe=()=>{const{visible:e,disabled:r,isReadOnly:n}=ci(yGe),o=Nt();return y.jsx(Cn,{mode:"popLayout",children:e&&y.jsxs(pr,{component:vi,layout:"position",layoutDependency:n,disabled:r,onClick:a=>{a.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(QJ,{size:14,stroke:2,style:{display:n?"none":void 0}}),y.jsx(gGe,{size:14,stroke:2,style:{display:n?void 0:"none"}}),y.jsx(zr,{className:fe({fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8}),style:{display:n?"block":"none"},children:"Edit"})]})})},bGe=[["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"}]],xGe=wt("filled","player-play-filled","PlayerPlayFilled",bGe),JJ=S.forwardRef((e,r)=>y.jsx(Vn,{variant:"filled",size:"xs",fw:"500",...e,ref:r,component:vi,whileTap:{scale:.95},layout:"position",layoutId:"trigger-dynamic-walkthrough",className:fe({flexShrink:0})}));function wGe(){const{enableReadOnly:e,enableCompareWithLatest:r}=sr(),n=Nt(),o=i0();let a="Start Dynamic View Walkthrough";switch(!0){case!e:a="Walkthrough not available in Edit mode";break;case r:a="Walkthrough not available when Compare is active";break}return y.jsx(vJ,{label:a,children:y.jsx(JJ,{onClick:i=>{i.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(xGe,{size:10}),children:"Start"})})}const kGe=S.forwardRef(({value:e,onChange:r},n)=>y.jsx(zr,{ref:n,layout:"position",children:y.jsx(Mf,{size:"xs",value:e,component:zr,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 _Ge(){const e=ci(n=>n.dynamicViewVariant),r=Nt();return y.jsxs(Cn,{children:[y.jsx(kGe,{value:e,onChange:n=>{r.switchDynamicViewVariant(n)}}),y.jsx(wGe,{},"trigger-dynamic-walkthrough")]})}const eee=S.memo(()=>{const{enableSearch:e,enableCompareWithLatest:r}=sr(),n=Nt(),o=nf();return y.jsx(Cn,{children:e&&!r&&y.jsxs(pr,{component:vi,layout:"position",onClick:a=>{a.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(R$,{size:14,stroke:2.5}),y.jsx(hr,{css:{fontSize:"11px",fontWeight:600,lineHeight:1,opacity:.8,whiteSpace:"nowrap"},children:o?"⌘ + K":"Ctrl + K"})]})})});eee.displayName="SearchControl";const SGe=({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}=b2(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 H$(){const e=Hf(),r=pn(e,SGe,Or),n=it(l=>{if(!r.isEnabled){console.warn("Compare with latest feature is not enabled");return}e.send({type:"emit.onLayoutTypeChange",layoutType:l})}),o=it(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})}),a=it(()=>{if(!r.isEnabled){console.warn("Compare with latest feature is not enabled");return}e.send({type:"layout.resetManualLayout"})}),i=it(()=>{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:a,applyLatestToManual:i}]}const EGe=[["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"}]],tee=wt("outline","alert-triangle","AlertTriangle",EGe),ree=S.memo(()=>{const[e,{toggleCompare:r}]=H$(),n=fm(),{drifts:o,isActive:a,isEnabled:i}=e;return y.jsx(Cn,{propagate:!0,children:i&&!a&&y.jsxs(Af,{position:"bottom-start",openDelay:600,closeDelay:200,floatingStrategy:"absolute",offset:{mainAxis:4,crossAxis:-22},...n,children:[y.jsx(W9,{children:y.jsx(pr,{component:vi,layout:"position",onClick:l=>{l.stopPropagation(),r()},whileTap:{scale:.95,translateY:1},className:Ge("group",eK({variant:"filled",type:"warning"}),qn({gap:"xxs",padding:"1.5",rounded:"sm",userSelect:"none",cursor:"pointer",fontSize:"xs",fontWeight:600})),children:a?y.jsx(y.Fragment,{children:"Stop Compare"}):y.jsx(tee,{size:18})})}),y.jsx(H9,{p:"0",children:y.jsxs(dy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"View is out of sync",children:[y.jsx(at,{mt:2,size:"sm",lh:"xs",children:"Model has changed since this view was last updated."}),y.jsxs(at,{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"})]})})]})})});ree.displayName="ManualLayoutWarning";const CGe=({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&&y8(r.title))??"Untitled View",isDynamicView:(e.viewModel?._type??r._type)==="dynamic"}},nee=S.memo(()=>{const e=i0(),{enableNavigationButtons:r,enableDynamicViewWalkthrough:n}=sr(),{folders:o,viewTitle:a,isDynamicView:i}=pn(e.actorRef,CGe,tt),l=o.flatMap(({folderPath:c,title:d},u)=>[y.jsx(pr,{component:vi,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(bJ,{},`separator-${u}`)]),s=y.jsx(pr,{component:vi,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:Ge("mantine-active",m2({truncate:!0}),fe({userSelect:"none"})),title:a,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:a},"view-title");return y.jsxs(Cn,{propagate:!0,mode:"popLayout",children:[y.jsx(hWe,{},"burger-button"),r&&y.jsx(gWe,{},"nav-buttons"),y.jsxs(zr,{layout:"position",className:qn({gap:"1",flexShrink:1,flexGrow:1,overflow:"hidden"}),children:[l,s]},"breadcrumbs"),y.jsxs(zr,{layout:"position",className:qn({gap:"0.5",flexGrow:0,_empty:{display:"none"}}),children:[y.jsx(xWe,{onOpen:()=>e.closeDropdown()}),y.jsx(EWe,{}),y.jsx(vGe,{})]},"actions"),n&&i&&y.jsx(_Ge,{},"dynamic-view-controls"),y.jsx(eee,{},"search-control"),y.jsx(ree,{},"outdated-manual-layout-warning")]})});nee.displayName="NavigationPanelControls";const U$=S.forwardRef(({className:e,truncateLabel:r=!0,...n},o)=>y.jsx(Q9,{...n,component:"button",classNames:gFe({truncateLabel:r}),className:Ge("group","mantine-active",e),ref:o}));U$.displayName="NavigationLink";const $Ge=S.createContext(null),zGe=[],RGe=()=>{},jGe={projects:zGe,onProjectChange:RGe};function TGe(){return S.useContext($Ge)??jGe}function AGe(){const e=S.useContext(fy);if(!e)throw new Error("No LikeC4ModelProvider found");return e.projectId}const DGe=S.memo(e=>{const{projects:r,onProjectChange:n}=TGe(),o=AGe();return r.length<=1?null:y.jsxs(Ir,{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(t3,{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(xC,{opacity:.5,size:12,stroke:1.5}),children:o})}),y.jsx(sy,{children:r.map(({id:a,title:i})=>y.jsx(cy,{onClick:l=>{if(o===a){l.stopPropagation();return}n(a)},children:i??a},a))})]})]})}),MGe=[["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"}]],NGe=wt("filled","direction-sign-filled","DirectionSignFilled",MGe),PGe=[["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"}]],BGe=wt("filled","star-filled","StarFilled",PGe),OGe=[["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"}]],IGe=wt("filled","folder-filled","FolderFilled",OGe),oee=Y1({siblingSelector:"[data-likec4-focusable]",parentSelector:"[data-likec4-breadcrumbs-dropdown]",activateOnFocus:!1,loop:!0,orientation:"vertical"});function LGe(e){return e.context.searchQuery.trim().length>=2}const aee=S.memo(()=>{const e=i0(),r=N$(LGe);za("paneClick",()=>{e.closeDropdown()}),za("nodeClick",()=>{e.closeDropdown()}),za("edgeClick",()=>{e.closeDropdown()});const n=pze(o=>{e.send({type:"searchQuery.change",value:o})},250);return y.jsxs(Xs,{className:Ge("nowheel",my({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(DGe,{}),y.jsx(Ir,{gap:"xs",children:y.jsx(QGe,{defaultValue:e.actorRef.getSnapshot().context.searchQuery,onChange:n})}),y.jsx(ta,{scrollbars:"x",type:"auto",offsetScrollbars:"present",classNames:{root:fe({maxWidth:["calc(100vw - 50px)","calc(100cqw - 50px)"]})},styles:{viewport:{overscrollBehavior:"none"}},children:r?y.jsx(qGe,{}):y.jsx(XGe,{})})]})});aee.displayName="NavigationPanelDropdown";function FGe(e){return Qb(e.context.searchQuery)}const VGe=nP(xa),qGe=S.memo(()=>{const e=Lo(),r=i0(),n=pn(r.actorRef,FGe),o=S.useDeferredValue(n),a=o.includes(xa),i=a?o.split(xa):o,[l,s]=S.useState([]);return S.useEffect(()=>{s(c=>{const d=Jr(e.views(),Bs(u=>a&&u.$view.title?Qb(u.$view.title).toLowerCase().includes(o):u.id.toLowerCase().includes(o)||!!u.title?.toLowerCase().includes(o)),w4e(20),m1(),MCe((u,p)=>VGe(u.folder.path,p.folder.path)));return Or(d,c)?c:d})},[e,o,a]),l.length===0?y.jsx("div",{children:"no results"}):y.jsx(ta,{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(ip,{gap:"0.5",children:l.map(c=>y.jsx(UGe,{view:c,highlight:i,onClick:d=>{d.stopPropagation(),r.selectView(c.id)},"data-likec4-focusable":!0,onKeyDown:oee},c.id))})})}),HGe=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!"}}),iee=fe({_groupFocus:{color:"[inherit!]",transition:"none"}});function UGe({view:e,highlight:r,...n}){const o=e.folder,a=see[e.id==="index"?"index":e._type],i=y.jsx(Qs,{component:"div",className:Ge(iee,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",HGe);if(o.isRoot)return y.jsxs(pr,{...n,className:l,children:[a,i]});const s=o.breadcrumbs.map(c=>y.jsx(Qs,{component:"div",className:Ge(fe({_groupHover:{color:"mantine.colors.dimmed"}}),iee,m2({dimmed:!0,truncate:!0})),maw:170,highlight:v7(r)?r:[],children:c.title},c.path));return s.push(y.jsxs(Ir,{gap:"[4px]",children:[a,i]})),y.jsxs(pr,{...n,className:l,children:[lee,y.jsx(Kw,{separator:y.jsx(Sd,{size:12,stroke:1.5}),separatorMargin:3,children:s})]})}const WGe=y.jsx(Sd,{size:12,stroke:1.5,className:"mantine-rotate-rtl"}),lee=y.jsx(IGe,{size:16,className:fe({opacity:{base:.3,_groupHover:.5,_groupActive:.5,_groupFocus:.5}})}),x2=fe({opacity:{base:.3,_dark:.5,_groupHover:.8,_groupActive:.8,_groupFocus:.8}}),see={index:y.jsx(BGe,{size:16,className:x2}),element:y.jsx(gi,{size:18,stroke:2,className:x2}),deployment:y.jsx(x$,{size:16,stroke:1.5,className:x2}),dynamic:y.jsx(NGe,{size:18,className:x2})},GGe=ta.withProps({scrollbars:"y",className:fe({maxHeight:["calc(100vh - 160px)","calc(100cqh - 160px)"]})});function cee(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 YGe=e=>{const r=e.viewModel;if(!r)return[];const n=r.$model,o=[cee(n.rootViewFolder,e)],a=n.viewFolder(e.selectedFolder);if(!a.isRoot)for(const i of a.breadcrumbs)o.push(cee(i,e));return o},XGe=S.memo(()=>{const e=dWe(YGe,tt);return y.jsx(Ir,{gap:"xs",alignItems:"stretch",children:e.flatMap((r,n)=>[n>0&&y.jsx(tp,{orientation:"vertical"},"divider"+n),y.jsx(ZGe,{data:r,isLast:n>0&&n==e.length-1},r.folderPath)])})});function ZGe({data:e,isLast:r}){const n=S.useRef(null),o=M$(),a=i=>l=>{l.stopPropagation(),i.type==="folder"?o.send({type:"select.folder",folderPath:i.folderPath}):o.send({type:"select.view",viewId:i.viewId})};return Vke(()=>{r&&n.current&&n.current.scrollIntoView({block:"nearest",inline:"nearest",behavior:"smooth"})}),y.jsx(hr,{mb:"1",ref:n,children:y.jsx(GGe,{children:y.jsx(ip,{gap:"0.5",children:e.items.map((i,l)=>y.jsx(KGe,{columnItem:i,onClick:a(i)},`${e.folderPath}/${i.type}/${l}`))})})})}function KGe({columnItem:e,...r}){switch(e.type){case"folder":return y.jsx(U$,{variant:"light",active:e.selected,label:e.title,leftSection:lee,rightSection:WGe,maw:"300px",miw:"200px",...r},e.folderPath);case"view":return y.jsx(U$,{variant:"filled",active:e.selected,label:e.title,description:e.description,leftSection:see[e.viewType],maw:"300px",miw:"200px",...r},e.viewId);default:Xo(e)}}function QGe(e){const[r,n]=Us({...e,finalValue:""});return y.jsx(Ca,{size:"xs",placeholder:"Search by title or id",variant:"unstyled",height:$e(26),value:r,onKeyDown:oee,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(R$,{size:14}),rightSectionPointerEvents:"all",rightSectionWidth:"min-content",rightSection:!e.value||Gu(e.value)?null:y.jsx(Vn,{variant:"subtle",h:"100%",size:"compact-xs",color:"gray",onClick:o=>{o.stopPropagation(),n("")},children:"clear"})})}const JGe=gd("div",{base:{fontSize:"xs",color:"mantine.colors.dimmed",fontWeight:500,userSelect:"none",mb:"xxs"}});function eYe(e){const r=dCe(e.activeWalkthrough),n=r?e.xyedges.findIndex(o=>o.id===e.activeWalkthrough?.stepId):-1;return{isActive:r,isParallel:r&&Kn(e.activeWalkthrough?.parallelPrefix),hasNext:r&&n0,notes:r?e.xyedges[n]?.data?.notes??null:null}}const tYe=S.memo(()=>{const{isActive:e,notes:r}=ci(eYe),n=r?ur.from(r):ur.EMPTY;return y.jsx(Cn,{children:e&&!n.isEmpty&&y.jsx(pi.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(ta,{className:my({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(JGe,{children:"Notes"}),y.jsx(wp,{value:n,fontSize:"sm",emptyText:"No description",className:fe({userSelect:"all"})})]})})})});function rYe({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(xC,{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(Gy,{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 nYe({value:e,onChange:r}){const n=S.useMemo(()=>[{value:"manual",label:"Saved manual"},{value:"auto",label:"Latest auto"}],[]);return y.jsx(zr,{layout:"position",children:y.jsx(Mf,{size:"xs",color:e==="manual"?"orange":"green",value:e,component:zr,onChange:o=>{He(o==="manual"||o==="auto","Invalid layout type"),r(o)},classNames:{label:fe({fontSize:"xxs",fontWeight:"medium"})},data:n})})}const dee=tp.withProps({mx:2,size:"xs",orientation:"vertical"});function oYe(){const[e,{toggleCompare:r,switchLayout:n,resetManualLayout:o,applyLatestToManual:a}]=H$();return y.jsxs(y.Fragment,{children:[y.jsx(hr,{css:{textStyle:"xs",color:"likec4.panel.text",userSelect:"none"},children:"Compare"}),y.jsx(nYe,{value:e.layout,onChange:n}),e.hasEditor&&y.jsxs(Ir,{gap:"1",children:[y.jsx(dee,{}),y.jsx(rYe,{disabled:e.layout==="auto",onResetManualLayout:o,onApplyLatestToManual:e.canApplyLatest?a:void 0}),y.jsx(dee,{})]}),y.jsx(ic,{size:"sm",onClick:i=>{i.stopPropagation(),r()},children:y.jsx(lp,{})})]})}const uee=S.memo(()=>{const{enableCompareWithLatest:e}=sr();return y.jsx(Cn,{children:e&&y.jsx(zr,{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(oYe,{})})})});uee.displayName="ComparePanel";const l0=_n.withProps({color:"dark",fz:"xs",openDelay:600,closeDelay:120,label:"",children:null,offset:8,position:"right"}),aYe=[["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"}]],iYe=wt("outline","focus-centered","FocusCentered",aYe),lYe=()=>{const e=Nt();return y.jsx(l0,{label:"Center camera",children:y.jsx(ic,{onClick:()=>e.fitDiagram(),children:y.jsx(iYe,{})})})};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 w2=fe({flex:"1 1 40%",textAlign:"center",fontWeight:500,padding:"[4px 6px]",fontSize:"11px",zIndex:1}),sYe=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]"}}),cYe=fe({position:"relative",borderRadius:"sm",background:"mantine.colors.gray[3]",boxShadow:"inset 1px 1px 3px 0px #00000024",_dark:{background:"mantine.colors.dark[7]"}}),dYe=fe({position:"absolute",width:8,height:8,border:"2px solid",borderColor:"mantine.colors.gray[5]",borderRadius:3,transform:"translate(-50%, -50%)"}),uYe=[["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"}]],pYe=wt("outline","layout-dashboard","LayoutDashboard",uYe),hYe=e=>({viewId:e.view.id,isManualLayout:e.view._layout==="manual",autoLayout:e.view.autoLayout}),fYe=()=>{const e=Nt(),[r,n]=S.useState(null),[o,a]=S.useState({}),{autoLayout:i,viewId:l,isManualLayout:s}=ci(hYe),{ref:c,hovered:d}=A7(),u=g=>v=>{o[g]=v,a(o)},p=g=>v=>{v.stopPropagation(),e.fitDiagram(),e.triggerChange({op:"change-autolayout",layout:{...i,direction:g}})},f=(g,v)=>{e.fitDiagram(),e.triggerChange({op:"change-autolayout",layout:{...i,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(hd,{children:y.jsx(l0,{label:"Change Auto Layout",children:y.jsx(ic,{children:y.jsx(pYe,{})})})}),y.jsx(Xs,{className:"likec4-top-left-panel",p:8,pt:6,opacity:d?.6:1,children:y.jsxs(Se,{pos:"relative",ref:n,children:[y.jsx(Gw,{target:o[i.direction],parent:r,className:sYe}),y.jsx(Se,{mb:10,children:y.jsx(at,{inline:!0,fz:"xs",c:"dimmed",fw:500,children:"Auto layout:"})}),y.jsxs(Zs,{gap:2,wrap:"wrap",justify:"stretch",maw:160,children:[y.jsx(pr,{className:w2,ref:u("TB"),onClick:p("TB"),children:"Top-Bottom"}),y.jsx(pr,{className:w2,ref:u("BT"),onClick:p("BT"),children:"Bottom-Top"}),y.jsx(pr,{className:w2,ref:u("LR"),onClick:p("LR"),children:"Left-Right"}),y.jsx(pr,{className:w2,ref:u("RL"),onClick:p("RL"),children:"Right-Left"})]}),y.jsx(Se,{my:10,children:y.jsx(at,{inline:!0,fz:"xs",c:"dimmed",fw:500,children:"Spacing:"})}),y.jsx(mYe,{ref:c,isVertical:i.direction==="TB"||i.direction==="BT",nodeSep:i.nodeSep,rankSep:i.rankSep,onChange:f},l)]})})]})},ym=400,mYe=S.forwardRef(({isVertical:e,nodeSep:r,rankSep:n,onChange:o},a)=>{e||([r,n]=[n,r]);const i=$8(({x:f,y:g})=>{e||([f,g]=[g,f]),o(Math.round(f*ym),Math.round(g*ym))},[o,e],250,2e3),[l,s]=Us({defaultValue:K$e({x:(r??100)/ym,y:(n??120)/ym}),onChange:i}),{ref:c}=Sq(s);let d=Math.round(l.x*ym),u=Math.round(l.y*ym);e||([d,u]=[u,d]);const p=$r(c,a);return y.jsxs(Se,{ref:p,className:cYe,pt:"100%",children:[y.jsx(Se,{className:dYe,style:{left:`${l.x*100}%`,top:`${l.y*100}%`}}),y.jsx(Se,{pos:"absolute",left:2,bottom:2,children:y.jsxs(at,{component:"div",fz:8,c:"dimmed",fw:500,children:[u,", ",d]})})]})}),gYe=[["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"}]],yYe=wt("outline","layout-collage","LayoutCollage",gYe),vYe=[["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"}]],pee=wt("outline","layout-board-split","LayoutBoardSplit",vYe),bYe=[["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"}]],xYe=wt("outline","layout-align-left","LayoutAlignLeft",bYe),wYe=[["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"}]],kYe=wt("outline","layout-align-center","LayoutAlignCenter",wYe),_Ye=[["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"}]],SYe=wt("outline","layout-align-right","LayoutAlignRight",_Ye),EYe=[["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"}]],CYe=wt("outline","layout-align-top","LayoutAlignTop",EYe),$Ye=[["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"}]],zYe=wt("outline","layout-align-middle","LayoutAlignMiddle",$Ye),RYe=[["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"}]],jYe=wt("outline","layout-align-bottom","LayoutAlignBottom",RYe),TYe=[["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"}]],AYe=wt("outline","route-off","RouteOff",TYe),sc=({label:e,icon:r,onClick:n})=>y.jsx(l0,{label:e,withinPortal:!1,position:"top",children:y.jsx(ic,{classNames:{root:"action-icon",icon:fe({"& > svg":{width:"70%",height:"70%"}})},onClick:n,children:r})}),hee=S.memo(()=>{const e=Nt(),r=fm();return y.jsxs(br,{position:"right",offset:{mainAxis:12},clickOutsideEvents:["pointerdown"],...r,children:[y.jsx(hd,{children:y.jsx(l0,{label:"Manual layouting tools",children:y.jsx(ic,{children:y.jsx(yYe,{})})})}),y.jsx(Xs,{className:qn({gap:"0.5",layerStyle:"likec4.panel",padding:"1",pointerEvents:"all"}),children:y.jsxs(np,{children:[y.jsx(sc,{label:"Align in columns",icon:y.jsx(pee,{}),onClick:n=>{n.stopPropagation(),e.align("Column")}}),y.jsx(sc,{label:"Align left",icon:y.jsx(xYe,{}),onClick:n=>{n.stopPropagation(),e.align("Left")}}),y.jsx(sc,{label:"Align center",icon:y.jsx(kYe,{}),onClick:n=>{n.stopPropagation(),e.align("Center")}}),y.jsx(sc,{label:"Align right",icon:y.jsx(SYe,{}),onClick:n=>{n.stopPropagation(),e.align("Right")}}),y.jsx(sc,{label:"Align in rows",icon:y.jsx(pee,{style:{transform:"rotate(90deg)"}}),onClick:n=>{n.stopPropagation(),e.align("Row")}}),y.jsx(sc,{label:"Align top",icon:y.jsx(CYe,{}),onClick:n=>{n.stopPropagation(),e.align("Top")}}),y.jsx(sc,{label:"Align middle",icon:y.jsx(zYe,{}),onClick:n=>{n.stopPropagation(),e.align("Middle")}}),y.jsx(sc,{label:"Align bottom",icon:y.jsx(jYe,{}),onClick:n=>{n.stopPropagation(),e.align("Bottom")}}),y.jsx(sc,{label:"Reset all control points",icon:y.jsx(AYe,{}),onClick:n=>{n.stopPropagation(),e.resetEdgeControlPoints()}})]})})]})});hee.displayName="ManualLayoutToolsButton";const DYe=()=>{const e=Nt();return y.jsx(l0,{label:"Switch to Read-only",children:y.jsx(ic,{onClick:()=>e.toggleFeature("ReadOnly"),children:y.jsx(QJ,{size:14,stroke:2})})})};function MYe(){const{enableReadOnly:e}=sr();return y.jsx(Cn,{children:!e&&y.jsx(zr,{layout:"position",className:my({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(np,{openDelay:600,closeDelay:120,children:[y.jsx(fYe,{}),y.jsx(hee,{}),y.jsx(lYe,{}),y.jsx(DYe,{})]})})})}const NYe=[["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"}]],PYe=wt("filled","player-stop-filled","PlayerStopFilled",NYe),BYe=[["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"}]],OYe=wt("filled","player-skip-back-filled","PlayerSkipBackFilled",BYe),IYe=[["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"}]],LYe=wt("filled","player-skip-forward-filled","PlayerSkipForwardFilled",IYe),fee=Vn.withProps({component:vi,layout:"position",whileTap:{scale:.95},variant:"light",size:"xs",fw:"500"}),FYe=()=>{const{portalProps:e}=fm();return y.jsx(ry,{...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 VYe(){const e=Nt(),{isParallel:r,hasNext:n,hasPrevious:o,currentStep:a,totalSteps:i}=ci(l=>{const s=l.xyedges.findIndex(c=>c.id===l.activeWalkthrough?.stepId);return{isParallel:Kn(l.activeWalkthrough?.parallelPrefix),hasNext:s0,currentStep:s+1,totalSteps:l.xyedges.length}});return y.jsxs(Cn,{propagate:!0,mode:"popLayout",children:[y.jsx(JJ,{variant:"light",size:"xs",color:"orange",mr:"sm",onClick:l=>{l.stopPropagation(),e.stopWalkthrough()},rightSection:y.jsx(PYe,{size:10}),children:"Stop"},"stop-walkthrough"),y.jsx(fee,{disabled:!o,onClick:()=>e.walkthroughStep("previous"),leftSection:y.jsx(OYe,{size:10}),children:"Previous"},"prev"),y.jsxs(Ks,{component:zr,layout:"position",size:"md",radius:"sm",variant:r?"gradient":"transparent",gradient:{from:"red",to:"orange",deg:90},rightSection:y.jsx(zr,{className:fe({fontSize:"xxs",display:r?"block":"none"}),children:"parallel"}),className:fe({alignItems:"baseline"}),children:[a," / ",i]},"step-badge"),y.jsx(fee,{disabled:!n,onClick:()=>e.walkthroughStep("next"),rightSection:y.jsx(LYe,{size:10}),children:"Next"},"next"),r&&y.jsx(FYe,{},"parallel-frame")]})}const mee=S.memo(()=>{const e=Nt(),r=Aqe(),n=NFe(),o=AS(sWe,{input:{view:r,viewModel:n}});return S.useEffect(()=>{const a=o.on("navigateTo",i=>{e.navigateTo(i.viewId)});return()=>a.unsubscribe()},[o,e]),S.useEffect(()=>{o.send({type:"update.inputs",inputs:{viewModel:n,view:r}})},[n,r]),y.jsx(ip,{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(cWe,{value:o,children:[y.jsx(qYe,{actor:o}),y.jsx(uee,{}),y.jsx(tYe,{}),y.jsx(MYe,{})]})})});mee.displayName="NavigationPanel";const qYe=({actor:e})=>{const r=pn(e,o=>o.hasTag("active")),n=fm();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(HYe,{actor:e}),r&&y.jsx(aee,{})]})},HYe=({actor:e})=>{const r=ci(n=>n.activeWalkthrough!==null);return y.jsx(rm,{children:y.jsx(hd,{children:y.jsx(zr,{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(VYe,{}):y.jsx(nee,{})})})})})},W$=fe({position:"absolute",bottom:"0",right:"0",padding:"2",margin:"0",width:"min-content",height:"min-content",_print:{display:"none"}}),UYe=fe({"--ai-radius":"0px",_noReduceGraphics:{"--ai-radius":"{radii.md}"}}),WYe=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"}}),GYe=fe({padding:"xxs"}),YYe=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 XYe=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)"}),ZYe=[["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"}]],KYe=wt("outline","help-circle","HelpCircle",ZYe),QYe=[["path",{d:"M7 7l10 10",key:"svg-0"}],["path",{d:"M17 8l0 9l-9 0",key:"svg-1"}]],JYe=wt("outline","arrow-down-right","ArrowDownRight",QYe),eXe=({value:e})=>{const{title:r,color:n="primary",shape:o="rectangle"}=e,[a,i]=S.useState(null),l=Nt(),s=300,c=200;return y.jsx(Jw,{shadow:"none",px:"xs",py:"sm",className:Ge(YYe),"data-likec4-color":n,onMouseEnter:()=>{i(null),l.highlightNotation(e)},onMouseLeave:()=>{i(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:MEe(70*(c/s),0)},children:y.jsx(lm,{data:{shape:o,width:s,height:c}})}),y.jsxs(Io,{gap:4,flex:1,children:[y.jsx(en,{gap:4,flex:"0 0 auto",children:e.kinds.map(d=>y.jsx(Ks,{className:Ge(XYe),onMouseEnter:()=>{i(d),l.highlightNotation(e,d)},onMouseLeave:()=>{i(null),l.highlightNotation(e)},opacity:IV(a)&&a!==d?.25:1,children:d},d))}),y.jsx(at,{component:"div",fz:"sm",fw:500,lh:"1.25",style:{textWrap:"pretty"},children:r})]})]})})},tXe=e=>({id:e.view.id,notations:e.view.notation?.nodes??[]}),rXe=S.memo(()=>{const e=pC(s=>s.height),{id:r,notations:n}=ci(tXe),[o,a]=X$e({key:"notation-webview-collapsed",defaultValue:!0}),i=n.length>0,l=fm();return y.jsxs(Cn,{children:[!i&&y.jsx(pi.div,{initial:{opacity:.75,translateX:"50%"},animate:{opacity:1,translateX:0},exit:{translateX:"100%",opacity:.6},className:W$,children:y.jsx(_n,{label:"View has no notations",color:"orange",...l,children:y.jsx($a,{size:"lg",variant:"light",color:"orange",radius:"md",children:y.jsx(tee,{})})})},"empty"),i&&o&&y.jsx(pi.div,{initial:{opacity:.75,translateX:"50%"},animate:{opacity:1,translateX:0},exit:{translateX:"100%",opacity:.6},className:W$,children:y.jsx(_n,{label:"Show notation",color:"dark",fz:"xs",...l,children:y.jsx(lr,{size:"lg",variant:"default",color:"gray",className:UYe,onClick:()=>a(!1),children:y.jsx(KYe,{stroke:1.5})})})},"collapsed"),i&&!o&&y.jsx(pi.div,{initial:{opacity:.75,scale:.2},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.25},className:Ge("react-flow__panel",W$),style:{transformOrigin:"bottom right"},children:y.jsx($f,{radius:"sm",withBorder:!0,shadow:"lg",className:WYe,children:y.jsxs(op,{defaultValue:"first",radius:"xs",children:[y.jsxs(py,{children:[y.jsx(lr,{size:"md",variant:"subtle",color:"gray",ml:2,style:{alignSelf:"center"},onClick:()=>a(!0),children:y.jsx(JYe,{stroke:2})}),y.jsx(Nf,{value:"first",fz:"xs",children:"Elements"}),y.jsx(Nf,{value:"second",fz:"xs",disabled:!0,children:"Relationships"})]}),y.jsx(Js,{value:"first",className:GYe,hidden:o,children:y.jsx(ta,{viewportProps:{style:{maxHeight:`min(40vh, ${Math.max(e-60,50)}px)`}},children:y.jsx(Io,{gap:0,children:n.map((s,c)=>y.jsx(eXe,{value:s},c))})})})]})})},r)]})}),nXe=S.memo(()=>{const[{layout:e,isActive:r},{toggleCompare:n}]=H$(),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(oXe,{style:{backgroundColor:o},onClick:a=>{a.stopPropagation(),n()},children:"Close compare"})})}),oXe=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)"}})}),gee=S.memo(()=>{const{enableControls:e,enableNotations:r,enableSearch:n,enableRelationshipDetails:o,enableReadOnly:a,enableCompareWithLatest:i}=sr(),l=H4e(),s=WNe(),c=YNe(),d=S.useCallback(()=>{console.warn("DiagramUI: resetting error boundary and rerendering..."),l()},[]);return y.jsxs(pS,{onReset:d,children:[e&&y.jsx(mee,{}),s&&y.jsx(tUe,{overlaysActorRef:s}),r&&y.jsx(rXe,{}),n&&c&&y.jsx(FUe,{searchActorRef:c}),o&&a&&y.jsx(tWe,{}),i&&y.jsx(nXe,{})]})});gee.displayName="DiagramUI";function yee({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 aXe=fe({overflow:"visible",position:"absolute",pointerEvents:"none",top:"0",left:"0",mixBlendMode:{_dark:"screen",_light:"multiply"}}),iXe=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 lXe({sourceX:e,sourceY:r,targetX:n,targetY:o,data:a}){const[i,l]=S.useState(()=>a.controlPoints??q3(a.points));Ed(()=>{const c=a.controlPoints??q3(a.points);l(d=>tt(d,c)?d:c)},[a.controlPoints?.map(c=>`${Math.round(c.x)},${Math.round(c.y)}`).join("|")??"",a.points.map(c=>`${Math.round(c[0])},${Math.round(c[1])}`).join("|")]);const s=it(({x:c,y:d})=>{const u=Qr(e,r),p=Qr(n,o),f=[a.dir==="back"?p:u,...i.map(Qr)||[],a.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 bee;const n=10**r;return function(o){this._+=o[0];for(let a=1,i=o.length;akp)if(!(Math.abs(p*c-d*u)>kp)||!i)this._append`L${this._x1=r},${this._y1=n}`;else{let g=o-l,v=a-s,w=c*c+d*d,x=g*g+v*v,k=Math.sqrt(w),C=Math.sqrt(f),_=i*Math.tan((G$-Math.acos((w+f-x)/(2*k*C)))/2),$=_/C,z=_/k;Math.abs($-1)>kp&&this._append`L${r+$*u},${n+$*p}`,this._append`A${i},${i},0,0,${+(p*g>u*v)},${this._x1=r+z*c},${this._y1=n+z*d}`}}arc(r,n,o,a,i,l){if(r=+r,n=+n,o=+o,l=!!l,o<0)throw new Error(`negative radius: ${o}`);let s=o*Math.cos(a),c=o*Math.sin(a),d=r+s,u=n+c,p=1^l,f=l?a-i:i-a;this._x1===null?this._append`M${d},${u}`:(Math.abs(this._x1-d)>kp||Math.abs(this._y1-u)>kp)&&this._append`L${d},${u}`,o&&(f<0&&(f=f%Y$+Y$),f>sXe?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>kp&&this._append`A${o},${o},0,${+(f>=G$)},${p},${this._x1=r+o*Math.cos(i)},${this._y1=n+o*Math.sin(i)}`)}rect(r,n,o,a){this._append`M${this._x0=this._x1=+r},${this._y0=this._y1=+n}h${o=+o}v${+a}h${-o}Z`}toString(){return this._}}function uXe(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 dXe(r)}function pXe(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function xee(e){this._context=e}xee.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 hXe(e){return new xee(e)}function fXe(e){return e[0]}function mXe(e){return e[1]}function gXe(e,r){var n=vm(!0),o=null,a=hXe,i=null,l=uXe(s);e=typeof e=="function"?e:e===void 0?fXe:vm(e),r=typeof r=="function"?r:r===void 0?mXe:vm(r);function s(c){var d,u=(c=pXe(c)).length,p,f=!1,g;for(o==null&&(i=a(g=l())),d=0;d<=u;++d)!(dvee){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,a=(a*s-e._y0*e._l12_2a+e._y2*e._l01_2a)/c}if(e._l23_a>vee){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);i=(i*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,a,i,l,e._x2,e._y2)}function kee(e,r){this._context=e,this._alpha=r}kee.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:wee(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 kee(o,r):new Z$(o,0)}return n.alpha=function(o){return e(+o)},n})(.5);function _ee(e,r){this._context=e,this._alpha=r}_ee.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:wee(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 yXe=(function e(r){function n(o){return r?new _ee(o,r):new K$(o,0)}return n.alpha=function(o){return e(+o)},n})(.5),vXe=gXe().curve(yXe.alpha(.7)).x(e=>Math.round(e.x)).y(e=>Math.round(e.y)),bXe=(e,r)=>cK(e.sourceNode,r.sourceNode)&&cK(e.targetNode,r.targetNode);function xXe({props:{sourceX:e,sourceY:r,source:n,target:o,targetX:a,targetY:i,data:l},controlPoints:s,isControlPointDragging:c}){const{sourceNode:d,targetNode:u}=pC(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:gC(f),targetNode:gC(g)}},[n,o]),bXe);if(Kn(l.controlPoints)||c){const p={x:e,y:r},f={x:a,y:i},g=6,v=l.dir==="back"?[f,V3(u,df(s)??p,g),...s,V3(d,rd(s)??f,g),p]:[p,V3(d,df(s)??f,g),...s,V3(u,rd(s)??p,g),f];return mt(vXe(v))}return RFe(l.points)}const See=e=>{const r=e.getPointAtLength(e.getTotalLength()*.5);return{x:Math.round(r.x),y:Math.round(r.y)}},Eee=g$(e=>{const[r,n]=S.useState(!1),o=S.useRef(r);o.current=r;const a=aK(),i=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}=lXe(e);let _=xXe({props:e,controlPoints:x,isControlPointDragging:r}),$=f?.x??0,z=f?.y??0;const[j,A]=S.useState({x:g?.x??$,y:g?.y??z});Ed(()=>{if(o.current)return;const V={x:$,y:z};A(B=>H3(B,V)?B:V)},[$,z]);const R=S.useRef(null);S.useEffect(()=>{const V=R.current;if(!V||!r)return;const B=See(V);A(F=>H3(F,B)?F:B)},[_,r]);const T=it(V=>{const B=R.current?See(R.current):null;f&&B?i.updateEdgeData(u,{controlPoints:V,labelBBox:{...f,...B}}):i.updateEdgeData(u,{controlPoints:V}),i.stopEditing(!0),n(!1)}),O=it(()=>{i.startEditing("edge"),n(!0)}),P=it(()=>{i.stopEditing(),n(!1)}),L=it(V=>{k(V),requestAnimationFrame(()=>{T(V)})}),H=it(V=>{i.startEditing("edge"),n(!0),k(V),requestAnimationFrame(()=>{T(V)})}),M=it(V=>{if(V.pointerType!=="mouse"||V.button!==2&&!p)return;V.stopPropagation(),V.preventDefault(),i.startEditing("edge");const B=C(a.screenToFlowPosition({x:V.clientX,y:V.clientY},{snapToGrid:!1}));i.updateEdgeData(u,{controlPoints:B}),i.stopEditing(!0)});return r&&!e.data.hovered&&(e={...e,data:{...e.data,hovered:!0}}),y.jsxs(y.Fragment,{children:[y.jsxs(Ky,{...e,className:fe({"& .react-flow__edge-interaction":{cursor:d&&p?"copy":void 0}}),children:[y.jsx(Qy,{edgeProps:e,svgPath:_,ref:R,isDragging:r,...d&&{onEdgePointerDown:M}}),c&&y.jsx(yee,{edgeProps:e,svgPath:_}),f&&y.jsx(o2,{edgeProps:e,labelPosition:r?j:{x:$,y:z},children:y.jsx(Zy,{pointerEvents:d?"none":"all",edgeProps:e,children:w&&y.jsx(n2,{onClick:V=>{V.stopPropagation(),i.navigateTo(w)}})})})]}),d&&x.length>0&&y.jsx(wXe,{isControlPointDragging:r,edgeProps:e,controlPoints:x,onMove:k,onStartMove:O,onCancelMove:P,onFinishMove:L,onDelete:H,zIndex:9999})]})});Eee.displayName="RelationshipEdge";function wXe({isControlPointDragging:e,edgeProps:r,controlPoints:n,onMove:o,onStartMove:a,onCancelMove:i,onFinishMove:l,onDelete:s,zIndex:c}){const d=hC(),u=aK(),p=r.data.id,f=(x,k,C)=>{let _=!1,$={x:k.clientX,y:k.clientY},z=null,j=n;const A=T=>{const O={x:T.clientX,y:T.clientY};H3($,O)||(_||(_=!0,a()),$=O,z??=requestAnimationFrame(()=>{z=null,j=j.slice();const{x:P,y:L}=u.screenToFlowPosition($,{snapToGrid:!1});j[x]={x:Math.round(P),y:Math.round(L)},o(j)})),T.stopPropagation()},R=T=>{T.stopPropagation(),C.removeEventListener("pointermove",A,{capture:!0}),C.removeEventListener("click",Q$,{capture:!0}),_?l(j):i()};C.addEventListener("pointermove",A,{capture:!0}),C.addEventListener("pointerup",R,{once:!0,capture:!0}),C.addEventListener("click",Q$,{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=it(x=>{const{domNode:k,addSelectedEdges:C,edges:_,unselectNodesAndEdges:$}=d.getState();if(!k||x.pointerType!=="mouse")return;const z=parseFloat(x.currentTarget.getAttribute("data-control-point-index")||"");if(isNaN(z))throw new Error("data-control-point-index is not a number");switch(x.button){case 0:{x.stopPropagation(),$({edges:_.filter(j=>j.selected&&j.id!==p)}),C([p]),f(z,x,k);break}case 2:g(z,x);break}}),w=it(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(gV,{children:y.jsx(Ky,{component:"svg",className:aXe,...r,style:{...r.style,zIndex:c},children:y.jsx("g",{"data-active":e?!0:void 0,className:"group",onContextMenu:Q$,children:n.map((x,k)=>y.jsx("circle",{"data-control-point-index":k,onPointerDownCapture:v,onDoubleClick:w,className:Ge("nodrag nopan",iXe),cx:x.x,cy:x.y},"controlPoints"+p+"#"+k))})})})}const Q$=e=>{e.stopPropagation(),e.preventDefault()},k2=16;function kXe(e){const{enableNavigateTo:r,enableCompareWithLatest:n}=sr(),o=Nt(),{navigateTo:a}=e.data,i=e.source===e.target,l=e.sourceX>e.targetX,[s]=Dx({sourceX:e.sourceX,sourceY:e.sourceY,sourcePosition:e.sourcePosition,targetX:e.targetX,targetY:e.targetY,targetPosition:e.targetPosition,...i&&{offset:30,borderRadius:16}});let c=e.sourceX;switch(!0){case i:c=e.sourceX+24+k2;break;case l:c=e.sourceX-k2;break;default:c=e.sourceX+k2;break}return y.jsxs(Ky,{...e,children:[y.jsx(Qy,{edgeProps:e,svgPath:s}),n&&y.jsx(yee,{edgeProps:e,svgPath:s}),y.jsx(o2,{edgeProps:e,labelPosition:{x:c,y:e.sourceY+(i?0:k2),translate:l?"translate(-100%, 0)":void 0},children:y.jsx(Zy,{edgeProps:e,children:r&&a&&y.jsx(n2,{onClick:d=>{d.stopPropagation(),o.navigateTo(a)}})})})]})}const _Xe=(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||Or(e.extraButtons,r.extraButtons)),Cee=S.memo(({extraButtons:e,...r})=>{const{enableNavigateTo:n,enableRelationshipBrowser:o}=sr(),a=Nt(),{id:i,navigateTo:l,modelFqn:s}=r.data;let c=S.useMemo(()=>{const d=[];return l&&n&&d.push({key:"navigate",icon:y.jsx(gi,{}),onClick:u=>{u.stopPropagation(),a.navigateTo(l,i)}}),o&&d.push({key:"relationships",icon:y.jsx(Jy,{}),onClick:u=>{u.stopPropagation(),a.openRelationshipsBrowser(s)}}),d},[n,o,s,l,i,a]);return e&&xn(e,1)&&(c=[...c,...e]),y.jsx(i2,{...r,buttons:c})},_Xe),SXe=({extraButtons:e,...r})=>{const{enableNavigateTo:n,enableRelationshipBrowser:o}=sr(),a=Nt(),{id:i,navigateTo:l,modelFqn:s}=r.data;let c=S.useMemo(()=>{const d=[];return l&&n&&d.push({key:"navigate",icon:y.jsx(gi,{}),onClick:u=>{u.stopPropagation(),a.navigateTo(l,i)}}),o&&s&&d.push({key:"relationships",icon:y.jsx(Jy,{}),onClick:u=>{u.stopPropagation(),a.openRelationshipsBrowser(s)}}),d},[n,o,s,l,i]);return e&&xn(e,1)&&(c=[...c,...e]),y.jsx(i2,{...r,buttons:c})};function bm({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(g7,{isVisible:e.hovered===!0,align:"start",position:o,children:y.jsx(dy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"Changes:",children:n.map(a=>y.jsxs(at,{mt:2,size:"sm",lh:"xs",children:["- ",a]},a))})})})}function EXe({data:{hovered:e=!1},icon:r,onClick:n}){const o=R7(e,e?130:0)[0]&&e;return y.jsx(zr,{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",TQ({delay:e&&!o}),L3({variant:"transparent"})),onClick:n,onDoubleClick:nn,children:r??y.jsx(gi,{stroke:2})})})}const $ee=e=>{const{enableNavigateTo:r}=sr(),n=Nt(),{navigateTo:o}=e.data;return o&&r?y.jsx(EXe,{onClick:a=>{a.stopPropagation(),n.navigateTo(o,e.id)},...e}):null},zee=_n.withProps({color:"dark",fz:"xs",openDelay:400,closeDelay:150,label:"",children:null,offset:4,withinPortal:!1});function _2({fqn:e}){const r=Nt();return y.jsx(zee,{label:"Browse relationships",children:y.jsx(lr,{size:"sm",variant:"subtle",color:"gray",onClick:n=>{n.stopPropagation(),r.openRelationshipsBrowser(e)},children:y.jsx(Jy,{stroke:2,style:{width:"72%",height:"72%"}})})})}function S2(e){const{onOpenSource:r}=um();return r?y.jsx(zee,{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(am,{stroke:1.8,style:{width:"70%"}})})}):null}function Ree(){const e=S.useContext(fy);e||console.error("No LikeC4ModelContext found");const r=e?.$styles??JN.DEFAULT,[n,o]=S.useState(r);return S.useEffect(()=>{o(a=>a.equals(r)?a:r)},[r]),n}const jee=["primary","secondary","muted"];function E2({elementColor:e,elementOpacity:r,onColorPreview:n,isOpacityEditable:o=!1,onChange:a,...i}){const{theme:l}=Ree();return y.jsxs(br,{clickOutsideEvents:["pointerdown","mousedown","click"],position:"right-end",offset:2,withinPortal:!1,...i,children:[y.jsx(hd,{children:y.jsx(Vn,{variant:"subtle",color:"gray",size:"compact-xs",px:3,children:y.jsx(iy,{color:l.colors[e].elements.fill,size:14,withShadow:!0,style:{color:"#fff",cursor:"pointer"}})})}),y.jsxs(Xs,{p:"xs",children:[y.jsx(CXe,{theme:l,elementColor:e,onColorPreview:n,onChange:s=>a({color:s})}),o&&y.jsxs(y.Fragment,{children:[y.jsx(nS,{h:"xs"}),y.jsx(tp,{label:"opacity",labelPosition:"left"}),y.jsx(nS,{h:"xs"}),y.jsx($Xe,{elementOpacity:r,onOpacityChange:s=>{a({opacity:s})}})]})]})]})}function CXe({theme:e,elementColor:r,onColorPreview:n,onChange:o}){const a=l=>s=>{s.stopPropagation(),n(null),r!==l&&o(l)},i=x7(e.colors).filter(l=>!jee.includes(l));return y.jsx(Io,{gap:2,onMouseLeave:()=>n(null),children:y.jsxs(np,{openDelay:1e3,closeDelay:300,children:[y.jsx(Zs,{maw:120,gap:"6",justify:"flex-start",align:"flex-start",direction:"row",wrap:"wrap",children:jee.map(l=>y.jsx(_n,{label:l,fz:"xs",color:"dark",offset:2,withinPortal:!1,transitionProps:{duration:140,transition:"slide-up"},children:y.jsx(iy,{color:e.colors[l].elements.fill,size:18,withShadow:!0,onMouseEnter:()=>n(l),onClick:a(l),style:{color:"#fff",cursor:"pointer"},children:r===l&&y.jsx(LU,{style:{width:$e(10),height:$e(10)}})})},l))}),y.jsx(Zs,{mt:"sm",maw:110,gap:"6",justify:"flex-start",align:"flex-start",direction:"row",wrap:"wrap",children:i.map(l=>y.jsx(_n,{label:l,fz:"xs",color:"dark",offset:2,transitionProps:{duration:140,transition:"slide-up"},children:y.jsx(iy,{color:e.colors[l].elements.fill,size:18,onMouseEnter:()=>n(l),onClick:a(l),style:{color:"#fff",cursor:"pointer"},children:r===l&&y.jsx(LU,{style:{width:$e(10),height:$e(10)}})})},l))})]})})}function $Xe({elementOpacity:e=100,onOpacityChange:r}){const[n,o]=S.useState(e);return U4e(()=>{o(e)},[e]),y.jsx(rS,{size:"sm",color:"dark",value:n,onChange:o,onChangeEnd:r})}const zXe=fe({color:"mantine.colors.dimmed",fontSize:"10px",fontWeight:600,maxWidth:"220px",cursor:"default",userSelect:"all",textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap"}),RXe=()=>ci(e=>e.xynodes.filter(r=>r.selected).length);function C2({title:e,children:r,nodeProps:n,...o}){const a=RXe(),{selected:i=!1,dragging:l=!1,data:{hovered:s=!1}}=n,c=s&&a===0||i&&a===1;let d=150;c?i?d=100:d=1e3:a>0&&(d=50);const[u]=R7(c,d);return u?y.jsx(g7,{isVisible:!l,offset:4,...o,children:y.jsx($f,{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(Io,{gap:"6px",children:[y.jsx(Se,{px:"4px",children:y.jsx(at,{className:zXe,children:e})}),y.jsx(en,{gap:4,children:r})]})})}):null}function $2(e,r){const n=Nt(),[o,a]=S.useState(null),i=it(s=>{if(s===null){if(!o)return;a(null),n.updateNodeData(r.data.id,{color:o});return}a(c=>c??r.data.color),n.updateNodeData(r.data.id,{color:s})}),l=it(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:i,onChange:l}}function jXe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{style:o,modelFqn:a}}=e,{elementColor:i,onColorPreview:l,onChange:s}=$2(a,e),c=o?.opacity??100;return y.jsxs(C2,{nodeProps:e,title:a,align:"start",children:[y.jsx(E2,{elementColor:i,onColorPreview:l,isOpacityEditable:!0,elementOpacity:c,onChange:s,position:"left-start"}),y.jsx(Tee,{elementBorderStyle:o?.border??(c<99?"dashed":"none"),onChange:s}),r&&y.jsx(S2,{elementId:a}),n&&y.jsx(_2,{fqn:a})]})}function TXe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{deploymentFqn:o,style:a,modelFqn:i}}=e,{elementColor:l,onColorPreview:s,onChange:c}=$2(o,e);return y.jsxs(C2,{nodeProps:e,title:o,align:"start",children:[y.jsx(E2,{elementColor:l,onColorPreview:s,isOpacityEditable:!0,elementOpacity:a?.opacity,onChange:c,position:"left-start"}),y.jsx(Tee,{elementBorderStyle:a?.border,onChange:c}),r&&y.jsx(S2,{deploymentId:o}),n&&i&&y.jsx(_2,{fqn:i})]})}function Tee({elementBorderStyle:e="dashed",onChange:r}){const[n,o]=S.useState(e);return S.useEffect(()=>{o(e)},[e]),y.jsx(Se,{children:y.jsx(Mf,{size:"xs",fullWidth:!0,withItemsBorders:!1,value:n,onChange:a=>{const i=a;o(i),r({border:i})},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 AXe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{shape:o,modelFqn:a}}=e,{elementColor:i,onColorPreview:l,onChange:s}=$2(a,e);return y.jsxs(C2,{nodeProps:e,title:a,align:"start",children:[y.jsx(Aee,{elementShape:o,onChange:s}),y.jsx(E2,{elementColor:i,onColorPreview:l,onChange:s,position:"right-end"}),r&&y.jsx(S2,{elementId:a}),n&&y.jsx(_2,{fqn:a})]})}function DXe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{shape:o,deploymentFqn:a,modelFqn:i}}=e,{elementColor:l,onColorPreview:s,onChange:c}=$2(a,e);return y.jsxs(C2,{nodeProps:e,title:a,align:"start",children:[y.jsx(Aee,{elementShape:o,onChange:c}),y.jsx(E2,{elementColor:l,onColorPreview:s,onChange:c,position:"right-end"}),r&&y.jsx(S2,{deploymentId:a}),n&&i&&y.jsx(_2,{fqn:i})]})}function Aee({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(t3,{children:y.jsx(Vn,{variant:"light",color:"gray",size:"compact-xs",rightSection:y.jsx(m$,{size:12}),children:e})}),y.jsx(sy,{onDoubleClick:nn,onClick:nn,children:K1e.map(n=>y.jsx(cy,{fz:12,fw:500,value:n,rightSection:e===n?y.jsx(dK,{size:12}):void 0,onClick:o=>{o.stopPropagation(),r({shape:n})},children:n},n))})]})}const MXe=[Ue.Top,Ue.Right,Ue.Bottom,Ue.Left],s0=S.memo(()=>y.jsx(y.Fragment,{children:MXe.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 J$(e){const r=Nt(),n=e.data.modelFqn;return n?y.jsx(v$,{...e,onClick:o=>{o.stopPropagation(),r.openElementDetails(n,e.id)}}):null}function Dee(e){const r=Nt(),n=e.data.modelFqn;return n?y.jsx(AQ,{...e,onClick:o=>{o.stopPropagation(),r.openElementDetails(n,e.id)}}):null}function NXe(e){const{enableElementTags:r,enableElementDetails:n,enableReadOnly:o,enableCompareWithLatest:a}=sr();return y.jsxs(im,{nodeProps:e,children:[a&&y.jsx(bm,{nodeProps:e}),y.jsx(lm,{...e}),y.jsx(sl,{...e}),r&&y.jsx(Wy,{...e}),y.jsx(Cee,{...e}),n&&y.jsx(J$,{...e}),!o&&y.jsx(AXe,{...e}),y.jsx(s0,{})]})}function PXe(e){const{enableElementTags:r,enableElementDetails:n,enableReadOnly:o,enableCompareWithLatest:a}=sr();return y.jsxs(im,{nodeProps:e,children:[a&&y.jsx(bm,{nodeProps:e}),y.jsx(lm,{...e}),y.jsx(sl,{...e}),r&&y.jsx(Wy,{...e}),y.jsx(SXe,{...e}),n&&y.jsx(J$,{...e}),!o&&y.jsx(DXe,{...e}),y.jsx(s0,{})]})}const ez=fe({outlineColor:"likec4.compare.manual.outline",outlineWidth:"4px",outlineStyle:"dashed",outlineOffset:"1.5"}),tz=e=>e.data.drifts&&e.data.drifts.length>0;function BXe(e){const{enableElementDetails:r,enableReadOnly:n,enableCompareWithLatest:o}=sr(),a=o&&tz(e);return y.jsxs(e0,{className:a?ez:void 0,nodeProps:e,children:[o&&y.jsx(bm,{nodeProps:e}),y.jsx(t0,{...e}),y.jsx($ee,{...e}),r&&y.jsx(Dee,{...e}),!n&&y.jsx(jXe,{...e}),y.jsx(s0,{})]})}function OXe(e){const{enableElementDetails:r,enableReadOnly:n,enableCompareWithLatest:o}=sr(),a=o&&tz(e);return y.jsxs(e0,{className:a?ez:void 0,nodeProps:e,children:[o&&y.jsx(bm,{nodeProps:e}),y.jsx(t0,{...e}),y.jsx($ee,{...e}),r&&y.jsx(Dee,{...e}),!n&&y.jsx(TXe,{...e}),y.jsx(s0,{})]})}function IXe(e){const{enableCompareWithLatest:r}=sr(),n=r&&tz(e);return y.jsxs(e0,{className:n?ez:void 0,nodeProps:e,children:[r&&y.jsx(bm,{nodeProps:e}),y.jsx(t0,{...e}),y.jsx(s0,{})]})}const LXe={left:Ue.Left,right:Ue.Right,top:Ue.Top,bottom:Ue.Bottom},FXe=({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:LXe[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)"}})]}),VXe=e=>Kn(e.modelFqn);function qXe(e){const{enableElementDetails:r,enableCompareWithLatest:n}=sr(),o=e.data,{id:a,positionAbsoluteY:i,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-i,zIndex:-1,pointerEvents:"none"}}),y.jsxs(im,{nodeProps:e,children:[n&&y.jsx(bm,{nodeProps:e}),y.jsx(lm,{...e}),y.jsx(sl,{...e}),VXe(o)&&y.jsxs(y.Fragment,{children:[y.jsx(Cee,{...e,data:o}),r&&y.jsx(J$,{id:a,data:o})]})]}),c.map(d=>y.jsx(FXe,{port:d,data:e.data},d.id))]})}function HXe(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 _p={ElementNode:NXe,DeploymentNode:PXe,CompoundElementNode:BXe,CompoundDeploymentNode:OXe,ViewGroupNode:IXe,SequenceActorNode:qXe,SequenceParallelArea:HXe},Mee={RelationshipEdge:Eee,SequenceStepEdge:kXe};var Nee=Symbol.for("immer-nothing"),Pee=Symbol.for("immer-draftable"),Ra=Symbol.for("immer-state");function ul(e,...r){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var c0=Object.getPrototypeOf;function xm(e){return!!e&&!!e[Ra]}function Sp(e){return e?Oee(e)||Array.isArray(e)||!!e[Pee]||!!e.constructor?.[Pee]||d0(e)||j2(e):!1}var UXe=Object.prototype.constructor.toString(),Bee=new WeakMap;function Oee(e){if(!e||typeof e!="object")return!1;const r=Object.getPrototypeOf(e);if(r===null||r===Object.prototype)return!0;const n=Object.hasOwnProperty.call(r,"constructor")&&r.constructor;if(n===Object)return!0;if(typeof n!="function")return!1;let o=Bee.get(n);return o===void 0&&(o=Function.toString.call(n),Bee.set(n,o)),o===UXe}function z2(e,r,n=!0){R2(e)===0?(n?Reflect.ownKeys(e):Object.keys(e)).forEach(o=>{r(o,e[o],e)}):e.forEach((o,a)=>r(a,o,e))}function R2(e){const r=e[Ra];return r?r.type_:Array.isArray(e)?1:d0(e)?2:j2(e)?3:0}function rz(e,r){return R2(e)===2?e.has(r):Object.prototype.hasOwnProperty.call(e,r)}function Iee(e,r,n){const o=R2(e);o===2?e.set(r,n):o===3?e.add(n):e[r]=n}function WXe(e,r){return e===r?e!==0||1/e===1/r:e!==e&&r!==r}function d0(e){return e instanceof Map}function j2(e){return e instanceof Set}function Ep(e){return e.copy_||e.base_}function nz(e,r){if(d0(e))return new Map(e);if(j2(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const n=Oee(e);if(r===!0||r==="class_only"&&!n){const o=Object.getOwnPropertyDescriptors(e);delete o[Ra];let a=Reflect.ownKeys(o);for(let i=0;i1&&Object.defineProperties(e,{set:T2,add:T2,clear:T2,delete:T2}),Object.freeze(e),r&&Object.values(e).forEach(n=>oz(n,!0))),e}function GXe(){ul(2)}var T2={value:GXe};function A2(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var YXe={};function Cp(e){const r=YXe[e];return r||ul(0,e),r}var u0;function Lee(){return u0}function XXe(e,r){return{drafts_:[],parent_:e,immer_:r,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function Fee(e,r){r&&(Cp("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=r)}function az(e){iz(e),e.drafts_.forEach(ZXe),e.drafts_=null}function iz(e){e===u0&&(u0=e.parent_)}function Vee(e){return u0=XXe(u0,e)}function ZXe(e){const r=e[Ra];r.type_===0||r.type_===1?r.revoke_():r.revoked_=!0}function qee(e,r){r.unfinalizedDrafts_=r.drafts_.length;const n=r.drafts_[0];return e!==void 0&&e!==n?(n[Ra].modified_&&(az(r),ul(4)),Sp(e)&&(e=D2(r,e),r.parent_||M2(r,e)),r.patches_&&Cp("Patches").generateReplacementPatches_(n[Ra].base_,e,r.patches_,r.inversePatches_)):e=D2(r,n,[]),az(r),r.patches_&&r.patchListener_(r.patches_,r.inversePatches_),e!==Nee?e:void 0}function D2(e,r,n){if(A2(r))return r;const o=e.immer_.shouldUseStrictIteration(),a=r[Ra];if(!a)return z2(r,(i,l)=>Hee(e,a,r,i,l,n),o),r;if(a.scope_!==e)return r;if(!a.modified_)return M2(e,a.base_,!0),a.base_;if(!a.finalized_){a.finalized_=!0,a.scope_.unfinalizedDrafts_--;const i=a.copy_;let l=i,s=!1;a.type_===3&&(l=new Set(i),i.clear(),s=!0),z2(l,(c,d)=>Hee(e,a,i,c,d,n,s),o),M2(e,i,!1),n&&e.patches_&&Cp("Patches").generatePatches_(a,n,e.patches_,e.inversePatches_)}return a.copy_}function Hee(e,r,n,o,a,i,l){if(a==null||typeof a!="object"&&!l)return;const s=A2(a);if(!(s&&!l)){if(xm(a)){const c=i&&r&&r.type_!==3&&!rz(r.assigned_,o)?i.concat(o):void 0,d=D2(e,a,c);if(Iee(n,o,d),xm(d))e.canAutoFreeze_=!1;else return}else l&&n.add(a);if(Sp(a)&&!s){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||r&&r.base_&&r.base_[o]===a&&s)return;D2(e,a),(!r||!r.scope_.parent_)&&typeof o!="symbol"&&(d0(n)?n.has(o):Object.prototype.propertyIsEnumerable.call(n,o))&&M2(e,a)}}}function M2(e,r,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&oz(r,n)}function KXe(e,r){const n=Array.isArray(e),o={type_:n?1:0,scope_:r?r.scope_:Lee(),modified_:!1,finalized_:!1,assigned_:{},parent_:r,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let a=o,i=lz;n&&(a=[o],i=p0);const{revoke:l,proxy:s}=Proxy.revocable(a,i);return o.draft_=s,o.revoke_=l,s}var lz={get(e,r){if(r===Ra)return e;const n=Ep(e);if(!rz(n,r))return QXe(e,n,r);const o=n[r];return e.finalized_||!Sp(o)?o:o===sz(e.base_,r)?(dz(e),e.copy_[r]=uz(o,e)):o},has(e,r){return r in Ep(e)},ownKeys(e){return Reflect.ownKeys(Ep(e))},set(e,r,n){const o=Uee(Ep(e),r);if(o?.set)return o.set.call(e.draft_,n),!0;if(!e.modified_){const a=sz(Ep(e),r),i=a?.[Ra];if(i&&i.base_===n)return e.copy_[r]=n,e.assigned_[r]=!1,!0;if(WXe(n,a)&&(n!==void 0||rz(e.base_,r)))return!0;dz(e),cz(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_[r]=!0),!0},deleteProperty(e,r){return sz(e.base_,r)!==void 0||r in e.base_?(e.assigned_[r]=!1,dz(e),cz(e)):delete e.assigned_[r],e.copy_&&delete e.copy_[r],!0},getOwnPropertyDescriptor(e,r){const n=Ep(e),o=Reflect.getOwnPropertyDescriptor(n,r);return o&&{writable:!0,configurable:e.type_!==1||r!=="length",enumerable:o.enumerable,value:n[r]}},defineProperty(){ul(11)},getPrototypeOf(e){return c0(e.base_)},setPrototypeOf(){ul(12)}},p0={};z2(lz,(e,r)=>{p0[e]=function(){return arguments[0]=arguments[0][0],r.apply(this,arguments)}}),p0.deleteProperty=function(e,r){return p0.set.call(this,e,r,void 0)},p0.set=function(e,r,n){return lz.set.call(this,e[0],r,n,e[0])};function sz(e,r){const n=e[Ra];return(n?Ep(n):e)[r]}function QXe(e,r,n){const o=Uee(r,n);return o?"value"in o?o.value:o.get?.call(e.draft_):void 0}function Uee(e,r){if(!(r in e))return;let n=c0(e);for(;n;){const o=Object.getOwnPropertyDescriptor(n,r);if(o)return o;n=c0(n)}}function cz(e){e.modified_||(e.modified_=!0,e.parent_&&cz(e.parent_))}function dz(e){e.copy_||(e.copy_=nz(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var JXe=class{constructor(r){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(n,o,a)=>{if(typeof n=="function"&&typeof o!="function"){const l=o;o=n;const s=this;return function(c=l,...d){return s.produce(c,u=>o.call(this,u,...d))}}typeof o!="function"&&ul(6),a!==void 0&&typeof a!="function"&&ul(7);let i;if(Sp(n)){const l=Vee(this),s=uz(n,void 0);let c=!0;try{i=o(s),c=!1}finally{c?az(l):iz(l)}return Fee(l,a),qee(i,l)}else if(!n||typeof n!="object"){if(i=o(n),i===void 0&&(i=n),i===Nee&&(i=void 0),this.autoFreeze_&&oz(i,!0),a){const l=[],s=[];Cp("Patches").generateReplacementPatches_(n,i,l,s),a(l,s)}return i}else ul(1,n)},this.produceWithPatches=(n,o)=>{if(typeof n=="function")return(l,...s)=>this.produceWithPatches(l,c=>n(c,...s));let a,i;return[this.produce(n,o,(l,s)=>{a=l,i=s}),a,i]},typeof r?.autoFreeze=="boolean"&&this.setAutoFreeze(r.autoFreeze),typeof r?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(r.useStrictShallowCopy),typeof r?.useStrictIteration=="boolean"&&this.setUseStrictIteration(r.useStrictIteration)}createDraft(r){Sp(r)||ul(8),xm(r)&&(r=eZe(r));const n=Vee(this),o=uz(r,void 0);return o[Ra].isManual_=!0,iz(n),o}finishDraft(r,n){const o=r&&r[Ra];(!o||!o.isManual_)&&ul(9);const{scope_:a}=o;return Fee(a,n),qee(void 0,a)}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 i=n[o];if(i.path.length===0&&i.op==="replace"){r=i.value;break}}o>-1&&(n=n.slice(o+1));const a=Cp("Patches").applyPatches_;return xm(r)?a(r,n):this.produce(r,i=>a(i,n))}};function uz(e,r){const n=d0(e)?Cp("MapSet").proxyMap_(e,r):j2(e)?Cp("MapSet").proxySet_(e,r):KXe(e,r);return(r?r.scope_:Lee()).drafts_.push(n),n}function eZe(e){return xm(e)||ul(10,e),Wee(e)}function Wee(e){if(!Sp(e)||A2(e))return e;const r=e[Ra];let n,o=!0;if(r){if(!r.modified_)return r.base_;r.finalized_=!0,n=nz(e,r.scope_.immer_.useStrictShallowCopy_),o=r.scope_.immer_.shouldUseStrictIteration()}else n=nz(e,!0);return z2(n,(a,i)=>{Iee(n,a,Wee(i))},o),r&&(r.finalized_=!1),n}var pz=new JXe,as=pz.produce,Gee=pz.setAutoFreeze.bind(pz);class wm{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:a}=_o(r);this.maxX=this.minX+Math.ceil(o),this.maxY=this.minY+Math.ceil(a),this.initialX=this.positionAbsolute.x,this.initialY=this.positionAbsolute.y,n&&n.children.push(this)}}class hz extends wm{constructor(r,n=null){super(r,n),this.parent=n}children=[]}class tZe extends wm{constructor(r,n=null){super(r,n),this.parent=n}}function rZe(e,r){const n=e.data.controlPoints??null;return o=>{const a=mt(o.get(e.id),`Edge ${e.id} not found`),{x:i,y:l}=r.diff;return i===0&&l===0?{id:e.id,type:"replace",item:as(a,s=>{s.data.points=e.data.points,s.data.controlPoints=n,s.data.labelBBox=e.data.labelBBox})}:{id:e.id,type:"replace",item:as(a,s=>{s.data.points=un(e.data.points,c=>[c[0]+i,c[1]+l]),n&&(s.data.controlPoints=n.map(c=>({x:c.x+i,y:c.y+l}))),e.data.labelBBox&&(s.data.labelBBox={x:e.data.labelBBox.x+i,y:e.data.labelBBox.y+l,width:e.data.labelBBox.width,height:e.data.labelBBox.height})})}}}function nZe(e,r,n,o){const a=e.data.controlPoints??q3(e.data.points),i=Qr(ko.center(n)),l=Qr(ko.center(o)),s=i.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=Qa(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=a.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 Yee(e,r){const{parentLookup:n,nodeLookup:o,edges:a}=e.getState(),i=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 z=new Set;for(const j of $.values()){z.add(j.id);for(const A of s.get(j.id))z.add(A)}return z});if(xn(r,2)){const _=Jr(r,PV($=>[...s.get($)]),Qx(),$=>FEe(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 z=new hz(_,$);i.set(_.id,z),n.get(_.id)?.forEach(j=>{d.push({xynode:j,parent:z})});continue}i.set(_.id,new tZe(_,$))}const u=[...i.values()],p=new Map,f=_=>i.get(_)??l.get(_).map($=>i.get($)).find($=>!!$)??null,g=new Set(r.flatMap(_=>[_,...s.get(_)]));for(const _ of a){const $=g.has(_.source),z=g.has(_.target);if($&&z){let j=i.get(_.source)??i.get(_.target)??f(_.source)??f(_.target);j&&p.set(_,rZe(_,j));continue}if($!==z){const j=f($?_.source:_.target);if(!j)continue;const[A,R]=Jr([_.source,_.target],un(P=>mt(o.get(P),`Node ${P} not found`)),un(gC)),[T,O]=$?[A,R]:[R,A];p.set(_,nZe(_,j,T,O));continue}}function v(_){for(const $ of _){if(!($ instanceof hz))continue;v($.children);const z={minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};for(const j of $.children)z.minX=Math.min(z.minX,j.minX),z.minY=Math.min(z.minY,j.minY),z.maxX=Math.max(z.maxX,j.maxX),z.maxY=Math.max(z.maxY,j.maxY);$.minX=z.minX-wm.LeftPadding,$.minY=z.minY-wm.TopPadding,$.maxX=z.maxX+wm.RightPadding,$.maxY=z.maxY+wm.BottomPadding}}const w=[...p.values()];function x(){v(u);const _=u.reduce((R,T)=>(R.push({id:T.id,type:"position",dragging:!1,position:T.position,positionAbsolute:T.positionAbsolute}),T instanceof hz&&R.push({id:T.id,type:"dimensions",setAttributes:!0,dimensions:T.dimensions}),R),[]),{edgeLookup:$,triggerNodeChanges:z,triggerEdgeChanges:j}=e.getState();z(_);const A=w.map(R=>R($));A.length>0&&j(A)}let k=null;function C(){u.length!==0&&(k??=requestAnimationFrame(()=>{k=null;for(const _ of r){const $=i.get(_);if(!$){console.warn(`Rect not found for id ${_}`);continue}const z=o.get(_);if(!z){console.warn(`Node not found for id ${_}`);continue}$.positionAbsolute=z.internals.positionAbsolute}x()}))}return{rects:i,onMove:C,updateXYFlow:x}}function oZe(){const e=hC(),r=Nt(),n=S.useRef(void 0);return S.useMemo(()=>({onNodeDragStart:(o,a)=>{r.startEditing("node");const{nodeLookup:i}=e.getState(),l=Jr(Array.from(i.values()),Wu(s=>s.dragging===!0||s.id===a.id||s.selected===!0),un(s=>s.id));xn(l,1)&&(n.current=Yee(e,l))},onNodeDrag:o=>{n.current?.onMove()},onNodeDragStop:o=>{const a=n.current?GO(n.current.rects.values(),i=>i.isMoved):!1;r.stopEditing(a),n.current=void 0}}),[e,r])}const aZe={relationship:Mee.RelationshipEdge,"seq-step":Mee.SequenceStepEdge},jd={element:ac(_p.ElementNode),deployment:ac(_p.DeploymentNode),"compound-element":ac(_p.CompoundElementNode),"compound-deployment":ac(_p.CompoundDeploymentNode),"view-group":ac(_p.ViewGroupNode),"seq-actor":ac(_p.SequenceActorNode),"seq-parallel":ac(_p.SequenceParallelArea)};function iZe(e){return!e||Gu(e)?jd:{element:e.element??jd.element,deployment:e.deployment??jd.deployment,"compound-element":e.compoundElement??jd["compound-element"],"compound-deployment":e.compoundDeployment??jd["compound-deployment"],"view-group":e.viewGroup??jd["view-group"],"seq-actor":e.seqActor??jd["seq-actor"],"seq-parallel":e.seqParallel??jd["seq-parallel"]}}const lZe=({context:e,children:r})=>{const{enableReadOnly:n}=b2(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}}}},sZe=(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&&Or(e.fitViewPadding,r.fitViewPadding)&&Or(e.nodes,r.nodes)&&Or(e.edges,r.edges)&&Or(e.viewport??null,r.viewport??null);function cZe({background:e="dots",reactFlowProps:r={},children:n,renderNodes:o}){const a=Nt();let{enableReadOnly:i,initialized:l,nodes:s,edges:c,enableFitView:d,nodesDraggable:u,nodesSelectable:p,...f}=NS(lZe,sZe);const{onNodeContextMenu:g,onCanvasContextMenu:v,onEdgeContextMenu:w,onNodeClick:x,onEdgeClick:k,onCanvasClick:C,onCanvasDblClick:_}=um(),$=eMe(),z=oZe(),j=rMe(),A=zq(()=>{j.set(!0)},$?120:400),R=gf(()=>{A.clear(),j.set(!1)},$?350:200),T=it(H=>{H&&(j.get()||A.start(),R())}),O=it((H,M)=>{A.clear(),a.send({type:"xyflow.viewportMoved",viewport:M,manually:!!H})}),P=it(()=>{a.send({type:"xyflow.resized"})}),L=_I(()=>iZe(o),[o],mK);return Ed(()=>{console.warn("renderNodes changed - this might degrade performance")},[L]),y.jsx(kC,{nodes:s,edges:c,className:Ge(l?"initialized":"not-initialized"),nodeTypes:L,edgeTypes:aZe,onNodesChange:it(H=>{a.send({type:"xyflow.applyNodeChanges",changes:H})}),onEdgesChange:it(H=>{a.send({type:"xyflow.applyEdgeChanges",changes:H})}),background:l?e:"transparent",fitView:!1,onNodeClick:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.nodeClick",node:M}),x?.(a.findDiagramNode(M.id),H)}),onEdgeClick:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.edgeClick",edge:M}),k?.(a.findDiagramEdge(M.id),H)}),onEdgeDoubleClick:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.edgeDoubleClick",edge:M})}),onPaneClick:it(H=>{H.stopPropagation(),a.send({type:"xyflow.paneClick"}),C?.(H)}),onDoubleClick:it(H=>{H.stopPropagation(),H.preventDefault(),a.send({type:"xyflow.paneDblClick"}),_?.(H)}),onNodeMouseEnter:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.nodeMouseEnter",node:M})}),onNodeMouseLeave:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.nodeMouseLeave",node:M})}),onEdgeMouseEnter:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.edgeMouseEnter",edge:M,event:H})}),onEdgeMouseLeave:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.edgeMouseLeave",edge:M,event:H})}),onMove:T,onMoveEnd:O,onInit:it(H=>{a.send({type:"xyflow.init",instance:H})}),onNodeContextMenu:it((H,M)=>{const V=mt(a.findDiagramNode(M.id),`diagramNode ${M.id} not found`);g?.(V,H)}),onEdgeContextMenu:it((H,M)=>{const V=mt(a.findDiagramEdge(M.id),`diagramEdge ${M.id} not found`);w?.(V,H)}),...v&&{onPaneContextMenu:v},...d&&{onViewportResize:P},nodesDraggable:u,nodesSelectable:p,elevateEdgesOnSelect:!i,...u&&z,...f,...r,children:n})}function dZe(e,r){try{return Gee(!1),uZe(e,r)}finally{Gee(!0)}}const Xee=e=>H1(e.parent);function uZe(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,a=u=>!n.has(typeof u=="string"?u:u.id),i=u=>o.has(u.source)&&o.has(u.target)&&a(u.source)&&a(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,hZe({latest:u,manual:p})]:(o.add(u.id),[u.id,fz(u)])}));if(o.size===l.size)return as(r,u=>{u._layout="manual",u.nodes=[...l.values()],u.edges=r.edges.map(fz),delete u.drifts});n.size>0&&pZe(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 fZe({latest:u,manual:g});if(i(u))return fz(u);const v=l.get(u.source),w=l.get(u.target);return mZe(u,v,w)}),d=ko.merge(...s.filter(Xee));return as(r,u=>{u._layout="manual",u.nodes=s,u.edges=c,u.bounds=d,delete u.drifts})}const km={Left:42,Right:42,Top:60,Bottom:42};function pZe(e){function r(n){const o=mt(e.get(n),`Node ${n} not found`);if(o.children.length===0)return o;const a=[];for(const l of o.children)a.push(r(l));const i=ko.merge(...a);return o.x=i.x-km.Left,o.y=i.y-km.Top,o.width=i.width+km.Left+km.Right,o.height=i.height+km.Top+km.Bottom,o}for(const n of e.values())!Xee(n)||n.children.length===0||r(n.id)}function hZe({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 fZe(e){const{manual:r,latest:n}=e;return as(n,o=>{r.controlPoints?o.controlPoints=r.controlPoints:delete o.controlPoints,o.points=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 fz(e){if("drifts"in e&&e.drifts!==null){const r={...e};return r.drifts=null,r}return e}function mZe(e,r,n){const o=gZe(r,n),a=o[0];return as(e,i=>{i.controlPoints=o,e.labelBBox&&(i.labelBBox.x=a.x,i.labelBBox.y=a.y),delete i.drifts})}function Zee(e,r,n){const o=e.width/2/n.x,a=e.height/2/n.y,i=Math.min(Math.abs(o),Math.abs(a));return Qr(n).multiply(i).add(r)}function gZe(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 a=o.subtract(n),i=Zee(e,n,a),l=Zee(r,o,a.multiply(-1)).subtract(i);return[i.add(l.multiply(.4)).round().toObject(),i.add(l.multiply(.6)).round().toObject()]}const yZe=S.createContext(null);function Kee(){return S.useContext(yZe)}function vZe(e){const r=Kee(),n=it(async({input:{viewId:a,current:i}})=>{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([i??Promise.resolve().then(()=>r.fetchView(a,"manual")),Promise.resolve().then(()=>r.fetchView(a,"auto"))]).catch(c=>(console.error("Failed to fetch views for applying latest to manual layout",c),Promise.reject(c)));return{updated:dZe(l,s)}}),o=it(async({input:a})=>{if(!r)return console.error("No editor port available for executing change"),Promise.reject(new Error("No editor port"));for(const i of a.changes)await Promise.resolve().then(()=>r.handleChange(e,i)).catch(l=>(console.error("Failed to execute change",{change:i,err:l}),Promise.reject(l)));return{}});return TJ.provide({actors:{applyLatest:by(n),executeChange:by(o)}})}function Qee(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=Rr(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=Rr(e.current.system).editorActorRef;He(n,"No editor actor found in diagram actor system"),n.send({type:"edit.finish",wasChanged:r})},undoEditing:()=>{const r=Rr(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=mJ(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=>pm(e.current.getSnapshot().context,r),findEdge:r=>e.current.getSnapshot().context.xyedges.find(n=>n.data.id===r)??null,findDiagramEdge:r=>T$(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 mz(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 a=y2(e.xynodes,r.xynodes),i=o?I$(e.xyedges,r.xyedges):r.xyedges;return{xynodes:a,xyedges:i,view:n}}function bZe(e){const{xynodes:r,xyedges:n,focusedNode:o}=e;if(!o)return null;const a=new Set([o]),i=n.map(l=>l.source===o||l.target===o?(a.add(l.source),a.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,!a.has(l.id))),xyedges:i}}function xZe({context:e,event:r}){return ht(r,"update.nodeData"),{xynodes:e.xynodes.map(n=>{if(n.id!==r.nodeId)return n;const o=qV(n.data,r.data);return tt(o,n.data)?n:{...n,data:o}})}}function wZe({context:e,event:r}){return ht(r,"update.edgeData"),{xyedges:e.xyedges.map(n=>{if(n.id!==r.edgeId)return n;const o=qV(n.data,r.data);return tt(o,n.data)?n:{...n,data:o}})}}function Jee(e,r,n){const o=_o(e),a=o.width/2/n.x,i=o.height/2/n.y,l=Math.min(Math.abs(a),Math.abs(i));return Qr(n).multiply(l).add(r)}function ete(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`),a=Qr(yC(n)),i=Qr(yC(o));if(n===o){const d=Qr(0,n.height||0).multiply(-.5).add(a);return[d.add(Qr(-32,-80)).round().toObject(),d.add(Qr(32,-80)).round().toObject()]}const l=i.subtract(a),s=Jee(n,a,l),c=Jee(o,i,l.multiply(-1)).subtract(s);return[s.add(c.multiply(.4)).round().toObject(),s.add(c.multiply(.6)).round().toObject()]}function kZe(e){const{view:r}=e,n=[],o=[],a=new Map,i=I_.from(r.nodes.reduce((u,p)=>(a.set(p.id,p),p.parent||u.push({node:p,parent:null}),u),[]));let l=u=>!0;if(e.where)try{const u=zu(e.where);l=p=>u({...WV(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(a.get(u),`Node not found: ${u}`);let d;for(;d=i.dequeue();){const{node:u,parent:p}=d,f=xn(u.children,1)||u.kind==d1;if(f)for(const $ of u.children)i.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?oc.Compound:oc.Element,style:{width:u.width,height:u.height},initialWidth:u.width,initialHeight:u.height,hidden:u.kind!==d1&&!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===d1){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:oc.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 tte={parallel:1,actor:10},N2={default:"gray",active:"amber"};function _Ze(e){const{actors:r,steps:n,compounds:o,parallelAreas:a,bounds:i}=e.sequenceLayout,l=[],s=[],c=d=>mt(e.nodes.find(u=>u.id===d));for(const d of o)l.push(SZe(d,c(d.origin),e));for(const d of a)l.push(EZe(d,e));for(const d of r)l.push(CZe(d,c(d.id),i,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($Ze(d,u))}return{bounds:i,xynodes:l,xyedges:s}}function SZe({id:e,x:r,y:n,width:o,height:a,depth:i},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:i,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:a,initialHeight:a}}function EZe({parallelPrefix:e,x:r,y:n,width:o,height:a},i){return{id:`seq-parallel-${e}`,type:"seq-parallel",data:{id:`seq-parallel-${e}`,title:"PARALLEL",technology:null,color:N2.default,shape:"rectangle",style:{},tags:[],x:r,y:n,level:0,icon:null,width:o,height:a,description:null,viewId:i.id,parallelPrefix:e,drifts:null},zIndex:tte.parallel,position:{x:r,y:n},draggable:!1,deletable:!1,selectable:!1,focusable:!1,style:{pointerEvents:"none"},width:o,initialWidth:o,height:a,initialHeight:a}}function CZe({id:e,x:r,y:n,width:o,height:a,ports:i},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:a,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:i,drifts:l.drifts??null},deletable:!1,selectable:!0,zIndex:tte.actor,position:{x:r,y:n},width:o,initialWidth:o,height:a,initialHeight:a}}function $Ze({id:e,labelBBox:r,sourceHandle:n,targetHandle:o},a){return{id:e,type:"seq-step",data:{id:e,label:a.label,technology:a.technology,notes:a.notes??null,navigateTo:a.navigateTo,controlPoints:null,labelBBox:{x:0,y:0,width:r?.width??a.labelBBox?.width??32,height:r?.height??a.labelBBox?.height??32},labelXY:null,points:a.points,color:a.color,line:a.line,dir:"forward",head:a.head??"normal",tail:a.tail??"none",astPath:a.astPath,drifts:a.drifts??null},selectable:!0,focusable:!1,zIndex:20,interactionWidth:40,source:a.source,sourceHandle:n,target:a.target,targetHandle:o}}function rte({dynamicViewVariant:e,...r}){const n=r.view,o=n._type==="dynamic",{bounds:a,xynodes:i,xyedges:l}=o&&e==="sequence"?_Ze(n):kZe(r);return o&&n.variant!==e?{view:{...n,bounds:a,variant:e},xynodes:i,xyedges:l}:{view:a===n.bounds?n:{...n,bounds:a},xynodes:i,xyedges:l}}class nte{}class _m extends nte{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 zZe extends nte{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,Kx(i=>i[this.primaryAxisCoord])),o=this.getLayoutRect(n),a=this.getLayers(n);this.layout=this.buildLayout(a,o,n)}getLayoutRect(r){const n=Math.min(...r.map(l=>l.x)),o=Math.min(...r.map(l=>l.y)),a=Math.max(...r.map(l=>l.x+l.width)),i=Math.max(...r.map(l=>l.y+l.height));return{x:n,y:o,width:a-n,height:i-o}}getLayers(r){const n=[];let o=0,a=null;for(let i of r)if(a&&i[this.primaryAxisCoord]i.nodes.sort((l,s)=>l[this.secondaryAxisCoord]-s[this.secondaryAxisCoord])),n}buildLayout(r,n,o){const a=new Map(o.map(v=>[v.id,v])),i=[],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,a,null);d.layout=p,i.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,a,g),i.push(...w.layout.nodePositions),g=w.layout.refLayer??w}return new Map(i)}buildLayerLayout(r,n,o,a,i){let l=this.scoreLayout(this.spaceAround(r,n,o),a);if(r.nodes.length!=1){const s=this.scoreLayout(this.spaceBetween(r,n,o),a);l=s[0]=r.nodes.length){const s=this.scoreLayout(this.placeInGaps(r,o,i),a);l=s[0]=r.nodes.length){const s=this.scoreLayout(this.placeInCells(r,o,i),a);l=s[0]c[this.secondaryAxisCoord]))l.set(s.id,{[this.secondaryAxisCoord]:i,[this.primaryAxisCoord]:o}),i+=s[this.secondaryAxisDimension]+a;return{nodePositions:l,refLayer:null}}placeInGaps(r,n,o){const a=new Map,i=r.nodes,l=this.getGapsPositions(o);let s=0;for(let c=0,d=i[c];c{const i=n.get(o);return He(i,`Could not find original rect for node ${o}`),[WV(i,["x","y"]),a]}),un(([o,a])=>Math.abs(o[this.secondaryAxisCoord]-a[this.secondaryAxisCoord])),Zx((o,a)=>o+a,0)),r]}getGapsPositions(r){const n=[],{layout:o,nodes:a}=r;He(o,"Layout of the layer must be computed before calling getGapsPositions");for(let i=1;iMath.min(...r.map(n=>n.x)),(r,n)=>Math.floor(r),"x");case"Top":return new _m(r=>Math.min(...r.map(n=>n.y)),(r,n)=>Math.floor(r),"y");case"Right":return new _m(r=>Math.max(...r.map(n=>n.x+n.width)),(r,n)=>Math.floor(r-n.width),"x");case"Bottom":return new _m(r=>Math.max(...r.map(n=>n.y+n.height)),(r,n)=>Math.floor(r-n.height),"y");case"Center":return new _m(r=>Math.min(...r.map(n=>n.x+n.width/2)),(r,n)=>Math.floor(r-n.width/2),"x");case"Middle":return new _m(r=>Math.min(...r.map(n=>n.y+n.height/2)),(r,n)=>Math.floor(r-n.height/2),"y")}}function ote(e){const{width:r,height:n}=_o(e);return{...e.internals.positionAbsolute,id:e.id,width:r,height:n}}function jZe(e){switch(e){case"Left":case"Right":case"Top":case"Bottom":case"Center":case"Middle":return RZe(e);case"Column":case"Row":return new zZe(e);default:Xo(e)}}const h0=e=>Qe.createAction(({context:r,event:n})=>{let o,a;e?(o=e.viewport,a=e.duration):(ht(n,"xyflow.setViewport"),o=n.viewport,a=n.duration),a=a??400;const{panZoom:i}=mt(r.xystore).getState(),l=a>0?{duration:a,interpolate:"smooth"}:void 0;i?.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})})}),P2=e=>Qe.enqueueActions(({context:r,event:n,enqueue:o})=>{let a=r.view.bounds,i;e?(a=e.bounds??r.view.bounds,i=e.duration):n.type==="xyflow.fitDiagram"&&(a=n.bounds??r.view.bounds,i=n.duration,o.assign({viewportChangedManually:!1})),i??=450;const{width:l,height:s,panZoom:c,transform:d}=mt(r.xystore).getState(),u=Math.max(1,d[2]),p=qs(a,l,s,yi,u,r.fitViewPadding);p.x=Math.round(p.x),p.y=Math.round(p.y);const f=i>0?{duration:i,interpolate:"smooth"}:void 0;c?.setViewport(p,f).catch(g=>{console.error("Error during fitDiagram panZoom setViewport",{err:g})})}),f0=()=>Qe.createAction(({context:e})=>{const r=!!e.activeWalkthrough&&e.dynamicViewVariant==="sequence",{bounds:n,duration:o=450}=r?GUe({context:e}):UUe({context:e}),{width:a,height:i,panZoom:l,transform:s}=mt(e.xystore).getState(),c=Math.max(1,s[2]),d=qs(n,a,i,yi,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})})}),gz=30,ate=e=>{const{delay:r=gz,...n}=e??{};return Qe.raise({type:"xyflow.setViewport",...n},{id:"fitDiagram",delay:r})},cc=()=>Qe.cancel("fitDiagram"),B2=e=>{const{delay:r=gz,...n}=e??{};return Qe.raise({type:"xyflow.fitDiagram",...n},{id:"fitDiagram",delay:r})},TZe=e=>Qe.raise(({context:r})=>({type:"update.view",view:r.view}),{delay:gz}),yz=e=>Qe.assign(({context:r})=>({viewportBefore:{wasChangedManually:r.viewportChangedManually,value:{...r.viewport}}})),vz=e=>Qe.enqueueActions(({enqueue:r,context:{viewportBefore:n}})=>{r(cc()),n?(r.assign({viewportChangedManually:n.wasChangedManually,viewportBefore:null}),e&&e.delay===0?r(h0({viewport:n.value,...e})):r(ate({viewport:n.value,...e}))):e&&e.delay===0?r(P2({...e})):r(B2({...e}))}),ite=()=>Qe.assign(({context:e})=>({toggledFeatures:{...e.toggledFeatures,enableCompareWithLatest:!1},viewportOnAutoLayout:null,viewportOnManualLayout:null})),AZe=()=>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 a=ete(n,o),i=a[0];return{...o,data:{...o.data,controlPoints:a,labelBBox:o.data.labelBBox?{...o.data.labelBBox,...i}:null,labelXY:null}}}return o})}}),$p=()=>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()}}}),O2=()=>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}}),Sm=()=>Qe.assign(()=>({lastClickedNode:null})),lte=()=>Qe.assign(({event:e})=>(ht(e,"update.features"),{features:{...e.features}})),DZe=()=>Qe.assign(({event:e})=>(ht(e,"update.inputs"),{...e.inputs})),ste=e=>Qe.assign(({context:r,event:n})=>{let o;ht(n,"update.view"),o="xynodes"in n?n:rte({dynamicViewVariant:r.dynamicViewVariant,view:n.view,where:r.where});const a=mz(r,o);let{lastClickedNode:i,focusedNode:l,activeWalkthrough:s}=r;if(i||l||s){const c=new Set(a.xynodes.map(u=>u.id));i&&!c.has(i.id)&&(i=null),l&&!c.has(l)&&(l=null);const d=s?.stepId;return d&&!a.xyedges.some(u=>u.id===d)&&(s=null),{...a,lastClickedNode:i,focusedNode:l,activeWalkthrough:s}}return a}),m0=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const n=bZe(e);n?r.assign(n):r.raise({type:"key.esc"})}),I2=()=>Qe.assign(({context:e})=>({xynodes:e.xynodes.map(tr.setDimmed(!1)),xyedges:e.xyedges.map(tr.setData({dimmed:!1,active:!1}))})),MZe=()=>Qe.assign(({event:e})=>(ht(e,"switch.dynamicViewVariant"),{dynamicViewVariant:e.variant})),NZe=e=>Qe.assign(({context:r,event:n})=>{let o=e?.node;return o||(ht(n,"xyflow.nodeMouseEnter"),o=n.node),{xynodes:r.xynodes.map(a=>a.id===o.id?tr.setHovered(a,!0):a)}}),PZe=e=>Qe.assign(({context:r,event:n})=>{let o=e?.node;return o||(ht(n,"xyflow.nodeMouseLeave"),o=n.node),{xynodes:r.xynodes.map(a=>a.id===o.id?tr.setHovered(a,!1):a)}}),bz=()=>Qe.emit(()=>({type:"paneClick"})),cte=e=>Qe.emit(({event:r})=>e?{type:"openSource",params:e}:(ht(r,"open.source"),{type:"openSource",params:r})),BZe=()=>Qe.emit(({context:e})=>(He(e.xyflow,"XYFlow instance not found"),{type:"initialized",instance:e.xyflow})),zp=()=>Qe.emit(({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),{type:"nodeClick",node:mt(pm(e,r.node.id),`Node ${r.node.id} not found in diagram`),xynode:r.node})),xz=e=>Qe.emit(({context:r})=>({type:"navigateTo",viewId:e?.viewId??mt(r.lastOnNavigate,"Invalid state, lastOnNavigate is null").toView})),wz=()=>Qe.emit(({context:e,event:r})=>(ht(r,"xyflow.edgeClick"),{type:"edgeClick",edge:mt(T$(e,r.edge.id),`Edge ${r.edge.id} not found in diagram`),xyedge:r.edge})),dte=e=>Qe.enqueueActions(({event:r,enqueue:n})=>{let o=e;o||(ht(r,"trigger.change"),o=r.change),n.assign({viewportChangedManually:!0}),n.sendTo(Rr.editorActor,{type:"change",change:o})}),OZe=()=>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 a=n.view._layout;let i=a==="auto"?"manual":"auto";if(e.type==="emit.onLayoutTypeChange"&&(i=e.layoutType),a===i){console.warn("Ignoring layout type change event, layout type is already",a);return}if(n.toggledFeatures.enableCompareWithLatest===!0){a==="manual"&&i==="auto"&&Rr(r).editorActorRef?.send({type:"cancel"});const l=n.viewport;a==="auto"&&o.assign({viewportOnAutoLayout:l}),a==="manual"&&o.assign({viewportOnManualLayout:l})}o.emit({type:"onLayoutTypeChange",layoutType:i})}),IZe=e=>Qe.createAction(({context:r,event:n})=>{let o;ht(n,"layout.align"),o=n.mode;const a=mt(r.xystore,"xystore is not initialized"),{nodeLookup:i,parentLookup:l}=a.getState(),s=[...new Set(i.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=Yee(a,s),d=jZe(o),u=s.map(p=>({node:mt(i.get(p)),rect:mt(c.rects.get(p))}));d.computeLayout(u.map(({node:p})=>ote(p)));for(const{rect:p,node:f}of u)p.positionAbsolute={...p.positionAbsolute,...d.applyPosition(ote(f))};c.updateXYFlow()}),LZe=()=>Qe.assign(({context:e})=>{const{nodeLookup:r}=e.xystore.getState();return{xyedges:e.xyedges.map(n=>{if(!n.data.controlPoints)return n;const o=ete(r,n),a=o[0];return{...n,data:{...n.data,controlPoints:o,labelBBox:n.data.labelBBox?{...n.data.labelBBox,x:a.x,y:a.y}:null,labelXY:n.data.labelXY?a:null}}})}}),FZe=()=>Qe.assign(({context:e,event:r})=>{ht(r,"notations.highlight");const{notation:n,kind:o}=r,a=o?[o]:n.kinds,i=c=>c.notation===n.title&&c.shape===n.shape&&c.color===n.color&&a.includes(c.kind),l=e.xynodes.map(c=>{const d=pm(e,c.id),u=d&&i(d);return tr.setDimmed(c,u?!1:"immediate")}),s=e.xyedges.map(c=>tr.setDimmed(c,!0));return{xynodes:l,xyedges:s}}),VZe=()=>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))})),qZe=()=>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}}}),HZe=()=>Qe.sendTo(Rr.searchActor,{type:"close"}),UZe=()=>Qe.sendTo(Rr.overlaysActor,{type:"close.all"}),ute=()=>Qe.enqueueActions(({enqueue:e,system:r})=>{const n=Rr(r).editorActorRef;n&&e.stopChild(n)}),kz=()=>Qe.enqueueActions(({enqueue:e,context:r,system:n,check:o})=>{const a=o("enabled: Editor"),i=Rr(n).editorActorRef;if(!a&&i){e.stopChild(i);return}a&&!i&&e.spawnChild("editorActor",{id:"editor",systemId:"editor",input:{viewId:r.view.id},syncSnapshot:!0})}),_z=(e="node")=>Qe.sendTo(Rr.editorActor,{type:"edit.start",subject:e}),WZe=()=>Qe.sendTo(Rr.editorActor,{type:"synced"}),Sz=(e=!0)=>Qe.sendTo(Rr.editorActor,{type:"edit.finish",wasChanged:e}),pte=()=>Qe.sendTo(Rr.editorActor,{type:"cancel"}),hte=e=>"modelFqn"in e.data&&Kn(e.data.modelFqn),Ez=e=>Qe.enqueueActions(({context:r,event:n,enqueue:o})=>{let a=null,i,l;switch(!0){case n.type==="xyflow.nodeClick":{if(!hte(n.node)){console.warn("No modelFqn in clicked node data");return}l=n.node.data.modelFqn,i=n.node.data.id;break}case n.type==="open.elementDetails":{l=n.fqn,i=n.fromNode;break}default:{if(!r.lastClickedNode){console.warn("No last clicked node");return}i=r.lastClickedNode.id;const c=r.xynodes.find(d=>d.id===i);if(!c||!hte(c)){console.warn("No modelFqn in last clicked node");return}l=c.data.modelFqn;break}}const s=i?r.xystore.getState().nodeLookup.get(i):null;if(i&&s){const c=Vu(s),d=r.xyflow.getZoom(),u={...r.xyflow.flowToScreenPosition(c),width:c.width*d,height:c.height*d};a={node:i,clientRect:u}}o.sendTo(Rr.overlaysActor,{type:"open.elementDetails",subject:l,currentView:r.view,...a&&{initiatedFrom:a}})}),Cz=()=>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(Ez()):console.warn("ElementDetails feature is disabled");break}case"open.relationshipsBrowser":{n.sendTo(Rr.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(Rr.overlaysActor,{type:"open.relationshipDetails",viewId:e.view.id,...r.params});break}default:Xo(r)}}),L2=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const n=e.focusedNode??e.lastClickedNode?.id;if(!n||!e.features.enableVscode)return;const o=pm(e,n);o&&(o.deploymentRef?r.raise({type:"open.source",deployment:o.deploymentRef}):o.modelRef&&r.raise({type:"open.source",element:o.modelRef}))}),fte=()=>Qe.enqueueActions(({enqueue:e,check:r,system:n})=>{const o=r("enabled: Overlays"),a=Rr(n).overlaysActorRef;if(o&&!a){e.spawnChild("overlaysActorLogic",{id:"overlays",systemId:"overlays"});return}!o&&a&&(e.sendTo(a,{type:"close.all"}),e.stopChild("overlays"))}),mte=()=>Qe.enqueueActions(({enqueue:e,context:{features:{enableSearch:r}},system:n})=>{const o=Rr(n).searchActorRef;if(r&&!o){e.spawnChild("searchActorLogic",{id:"search",systemId:"search"});return}!r&&o&&(e.sendTo(o,{type:"close"}),e.stopChild("search"))}),GZe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,"xyflow.edgeMouseEnter");let o=n.edge;e.assign({xyedges:r.xyedges.map(a=>a.id===n.edge.id?(o=tr.setHovered(a,!0),o):a)}),e.emit({type:"edgeMouseEnter",edge:o,event:n.event})}),YZe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,"xyflow.edgeMouseLeave");let o=n.edge;e.assign({xyedges:r.xyedges.map(a=>a.id===n.edge.id?(o=tr.setHovered(a,!1),o):a)}),e.emit({type:"edgeMouseLeave",edge:o,event:n.event})}),gte=()=>Qe.spawnChild("hotkeyActorLogic",{id:"hotkey"}),yte=()=>Qe.stopChild("hotkey"),vte=3e3,XZe=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{e.autoUnfocusTimer&&vte>0&&r.raise({type:"focus.autoUnfocus"},{delay:vte,id:"autoUnfocusTimer"})}),ZZe=()=>Qe.cancel("autoUnfocusTimer"),KZe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,["navigate.to","navigate.back","navigate.forward"]);const{view:o,focusedNode:a,activeWalkthrough:i,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=a,o._type==="dynamic"?(v.activeWalkthrough=i?.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(xz());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(xz({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(ste()),r.source==="editor")return;e(WZe());let a=!n.viewportChangedManually&&!n.focusedNode&&!n.activeWalkthrough;if(n.toggledFeatures.enableCompareWithLatest===!0&&n.view._layout!==o._layout){if(o._layout==="auto"&&n.viewportOnAutoLayout){e(h0({viewport:n.viewportOnAutoLayout,duration:0}));return}if(o._layout==="manual"&&n.viewportOnManualLayout){e(h0({viewport:n.viewportOnManualLayout,duration:0}));return}}a=a||o._type==="dynamic"&&n.view._type==="dynamic"&&o.variant!==n.view.variant,a=a||n.toggledFeatures.enableCompareWithLatest===!0&&!!o._layout&&n.view._layout!==o._layout,a&&(e(cc()),e(B2({bounds:r.view.bounds})))});var Vo={},zz={},bte;function xte(){if(bte)return zz;bte=1;var e=v2();function r(a,{machine:i,context:l},s,c){const d=(u,p)=>{if(typeof u=="string"){const f=e.resolveReferencedActor(i,u);if(!f)throw new Error(`Actor logic '${u}' not implemented in machine '${i.id}'`);const g=e.createActor(f,{id:p?.id,parent:a.self,syncSnapshot:p?.syncSnapshot,input:typeof p?.input=="function"?p.input({context:l,event:s,self:a.self}):p?.input,src:u,systemId:p?.systemId});return c[g.id]=g,g}else return e.createActor(u,{id:p?.id,parent:a.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,a.defer(()=>{f._processingStatus!==e.ProcessingStatus.Stopped&&f.start()}),f}}function n(a,i,l,s,{assignment:c}){if(!i.context)throw new Error("Cannot assign to undefined `context`. Ensure that `context` is defined in the machine config.");const d={},u={context:i.context,event:l.event,spawn:r(a,i,l.event,d),self:a.self,system:a.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({},i.context,p);return[e.cloneMachineSnapshot(i,{context:f,children:Object.keys(d).length?{...i.children,...d}:i.children}),void 0,void 0]}function o(a){function i(l,s){}return i.type="xstate.assign",i.assignment=a,i.resolve=n,i}return zz.assign=o,zz}var dc={},wte;function QZe(){if(wte)return dc;wte=1;var e=v2(),r=xte();function n(k,C,_,$,{event:z}){const j=typeof z=="function"?z(_,$):z;return[C,{event:j},void 0]}function o(k,{event:C}){k.defer(()=>k.emit(C))}function a(k){function C(_,$){}return C.type="xstate.emit",C.event=k,C.resolve=n,C.execute=o,C}let i=(function(k){return k.Parent="#_parent",k.Internal="#_internal",k})({});function l(k,C,_,$,{to:z,event:j,id:A,delay:R},T){const O=C.machine.implementations.delays;if(typeof j=="string")throw new Error(`Only event objects may be used with sendTo; use sendTo({ type: "${j}" }) instead`);const P=typeof j=="function"?j(_,$):j;let L;if(typeof R=="string"){const V=O&&O[R];L=typeof V=="function"?V(_,$):V}else L=typeof R=="function"?R(_,$):R;const H=typeof z=="function"?z(_,$):z;let M;if(typeof H=="string"){if(H===i.Parent?M=k.self._parent:H===i.Internal?M=k.self:H.startsWith("#_")?M=C.children[H.slice(2)]:M=T.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:z,id:j}=C;if(typeof z=="number"){k.system.scheduler.schedule(k.self,_,$,z,j);return}k.system._relay(k.self,_,$.type===e.XSTATE_ERROR?e.createErrorActorEvent(k.self.id,$.data):$)})}function d(k,C,_){function $(z,j){}return $.type="xstate.sendTo",$.to=k,$.event=C,$.id=_?.id,$.delay=_?.delay,$.resolve=l,$.retryResolve=s,$.execute=c,$}function u(k,C){return d(i.Parent,k,C)}function p(k,C){return d(k,({event:_})=>_,C)}function f(k,C,_,$,{collect:z}){const j=[],A=function(R){j.push(R)};return A.assign=(...R)=>{j.push(r.assign(...R))},A.cancel=(...R)=>{j.push(e.cancel(...R))},A.raise=(...R)=>{j.push(e.raise(...R))},A.sendTo=(...R)=>{j.push(d(...R))},A.sendParent=(...R)=>{j.push(u(...R))},A.spawnChild=(...R)=>{j.push(e.spawnChild(...R))},A.stopChild=(...R)=>{j.push(e.stopChild(...R))},A.emit=(...R)=>{j.push(a(...R))},z({context:_.context,event:_.event,enqueue:A,check:R=>e.evaluateGuard(R,C.context,_.event,C),self:k.self,system:k.system},$),[C,void 0,j]}function g(k){function C(_,$){}return C.type="xstate.enqueueActions",C.collect=k,C.resolve=f,C}function v(k,C,_,$,{value:z,label:j}){return[C,{value:typeof z=="function"?z(_,$):z,label:j},void 0]}function w({logger:k},{value:C,label:_}){_?k(_,C):k(C)}function x(k=({context:_,event:$})=>({context:_,event:$}),C){function _($,z){}return _.type="xstate.log",_.value=k,_.label=C,_.resolve=v,_.execute=w,_}return dc.SpecialTargets=i,dc.emit=a,dc.enqueueActions=g,dc.forwardTo=p,dc.log=x,dc.sendParent=u,dc.sendTo=d,dc}var kte;function JZe(){if(kte)return Vo;kte=1,Object.defineProperty(Vo,"__esModule",{value:!0});var e=xte(),r=v2(),n=QZe();return V$(),Vo.assign=e.assign,Vo.cancel=r.cancel,Vo.raise=r.raise,Vo.spawnChild=r.spawnChild,Vo.stop=r.stop,Vo.stopChild=r.stopChild,Vo.emit=n.emit,Vo.enqueueActions=n.enqueueActions,Vo.forwardTo=n.forwardTo,Vo.log=n.log,Vo.sendParent=n.sendParent,Vo.sendTo=n.sendTo,Vo}var fr=JZe();const eKe=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:[ste(),fr.assign(({context:e})=>({initialized:{...e.initialized,xydata:!0}}))],target:"isReady"}}}),tKe=Qe.createStateConfig({always:[{guard:"isReady",actions:[P2({duration:0}),fr.assign(({context:e})=>({navigationHistory:{currentIndex:0,history:[{viewId:e.view.id,viewport:{...e.xyflow.getViewport()},viewportChangedManually:!1}]}})),BZe()],target:"ready"},{target:"initializing"}]}),rKe=()=>Qe.assign(({context:e,event:r})=>{ht(r,"update.view");let{lastOnNavigate:n,navigationHistory:{currentIndex:o,history:a}}=e;const i=a[o];if(!i||i.viewId===r.view.id||n)return{};const l=o>0?mt(a[o-1]):null;if(l&&l.viewId===r.view.id)return{navigationHistory:{currentIndex:o-1,history:a},lastOnNavigate:null};const s=oA$(u)===c);if(d)return{lastOnNavigate:{fromView:e.view.id,toView:r.view.id,fromNode:d.id}}}return{}}),nKe=Qe.createStateConfig({id:Rn.navigating.slice(1),always:{target:Rn.idle,actions:[cc(),rKe(),ite(),ts(({enqueue:e,context:r,event:n})=>{ht(n,"update.view");const{xyflow:o,xystore:a,navigationHistory:{currentIndex:i,history:l}}=r,s="xynodes"in n?n:{...n,...rte({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})),zp()]}],"focus.node":{actions:[O2(),m0(),L2(),f0()]},"key.esc":{target:Rn.idle},"xyflow.paneClick":{actions:[Sm(),bz()],target:Rn.idle},"notations.unhighlight":{actions:m0()},"tag.unhighlight":{actions:m0()},"update.view":{guard:"is same view",actions:[$z(),m0()]}}}),aKe=Qe.createStateConfig({id:Rn.idle.slice(1),on:{"xyflow.nodeClick":[{guard:Rd.and(["enabled: Readonly","enabled: FocusMode","click: node has connections",Rd.or(["click: same node","click: selected node"])]),actions:[$p(),O2(),zp()],target:Rn.focused},{guard:Rd.and(["enabled: Readonly","enabled: ElementDetails","click: node has modelFqn",Rd.or(["click: same node","click: selected node"])]),actions:[$p(),L2(),Ez(),zp()]},{actions:[$p(),L2(),zp()]}],"xyflow.paneClick":{actions:[Sm(),bz()]},"xyflow.paneDblClick":{actions:[Sm(),fr.enqueueActions(({context:e,enqueue:r,check:n})=>{n("enabled: FitView")&&r(P2()),r(cte({view:e.view.id}))})]},"focus.node":[{guard:"focus.node: autoUnfocus",actions:O2(),target:Rn.focused},{guard:"enabled: FocusMode",actions:O2(),target:Rn.focused}],"xyflow.edgeClick":{guard:Rd.and(["enabled: Readonly","is dynamic view","enabled: DynamicViewWalkthrough","click: selected edge"]),actions:[Sm(),fr.raise(({event:e})=>({type:"walkthrough.start",stepId:e.edge.id})),wz()]}}}),iKe=Qe.createStateConfig({id:Rn.printing.slice(1),entry:[cc(),yz(),ts(({enqueue:e,context:r})=>{const n=r.view.bounds,o=16;e(h0({viewport:{x:n.x+o,y:n.y+o,zoom:1},duration:0}))})],exit:[vz({delay:0,duration:0})],on:{"media.print.off":{target:Rn.idle},"*":{actions:[TS(({event:e})=>`Printing state - ignoring event: ${e.type}`)]}}}),Em=()=>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:a}=n,i=e.xyedges.find(l=>l.id===o);if(!i){console.warn("Invalid walkthrough stepId:",o),r.raise({type:"walkthrough.end"});return}r.assign({xyedges:e.xyedges.map(l=>{const s=o===l.id||!!a&&l.id.startsWith(a);return tr.setData(l,{active:s,dimmed:o!==l.id})}),xynodes:e.xynodes.map(l=>{const s=i.source!==l.id&&i.target!==l.id;return l.type==="seq-parallel"?tr.setData(l,{color:a===l.data.parallelPrefix?N2.active:N2.default,dimmed:s}):tr.setDimmed(l,s)})})}),lKe=()=>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}}),sKe=()=>Qe.emit(()=>({type:"walkthroughStopped"})),_te=()=>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}}),cKe=Qe.createStateConfig({id:Rn.walkthrough.slice(1),entry:[gte(),pte(),cc(),yz(),fr.assign({activeWalkthrough:({context:e,event:r})=>{ht(r,"walkthrough.start");const n=r.stepId??df(e.xyedges).id;return{stepId:n,parallelPrefix:u8(n)}}}),Em(),f0(),lKe()],exit:[yte(),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:N2.default}):n)})}),I2(),vz(),sKe()],on:{"key.esc":{target:Rn.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),a=Qa(r.direction==="next"?o+1:o-1,{min:0,max:e.xyedges.length-1});if(a===o)return{};const i=e.xyedges[a].id;return{activeWalkthrough:{stepId:i,parallelPrefix:u8(i)}}}),Em(),f0(),_te()]},"xyflow.edgeClick":{actions:[fr.assign(({event:e,context:r})=>!u1(e.edge.id)||e.edge.id===r.activeWalkthrough?.stepId?{}:{activeWalkthrough:{stepId:e.edge.id,parallelPrefix:u8(e.edge.id)}}),Em(),f0(),wz(),_te()]},"notations.unhighlight":{actions:Em()},"tag.unhighlight":{actions:Em()},"update.view":{guard:"is same view",actions:[$z(),Em()]},"walkthrough.end":{target:Rn.idle},"xyflow.paneDblClick":{target:Rn.idle}}}),dKe=Qe.createStateConfig({initial:"idle",entry:[fr.spawnChild("mediaPrintActorLogic",{id:"mediaPrint"}),kz(),fte(),mte()],exit:[cc(),fr.stopChild("mediaPrint"),UZe(),HZe(),ute()],states:{idle:aKe,focused:oKe,walkthrough:cKe,printing:iKe},on:{"navigate.*":{actions:KZe()},"layout.align":{guard:"not readonly",actions:[_z("node"),IZe(),Sz(!0)]},"layout.resetEdgeControlPoints":{guard:"not readonly",actions:[_z("edge"),LZe(),Sz(!0)]},"layout.resetManualLayout":{guard:"not readonly",actions:[pte(),ite(),dte({op:"reset-manual-layout"})]},"xyflow.resized":{guard:({context:e})=>e.features.enableFitView&&!e.viewportChangedManually,actions:[cc(),B2({delay:200})]},"open.elementDetails":{actions:Cz()},"open.relationshipsBrowser":{actions:Cz()},"open.relationshipDetails":{actions:Cz()},"open.source":{guard:"enabled: OpenSource",actions:cte()},"walkthrough.start":{guard:"is dynamic view",target:Rn.walkthrough},"toggle.feature":{actions:[qZe(),kz()]},"update.features":{actions:[lte(),fte(),mte(),kz()]},"xyflow.nodeMouseEnter":{actions:NZe()},"xyflow.nodeMouseLeave":{actions:PZe()},"xyflow.edgeMouseEnter":{actions:GZe()},"xyflow.edgeMouseLeave":{actions:YZe()},"xyflow.edgeDoubleClick":{guard:Rd.and(["not readonly",({event:e})=>!!e.edge.data.controlPoints&&e.edge.data.controlPoints.length>0]),actions:[_z("edge"),AZe(),Sz(!0)]},"notations.highlight":{actions:FZe()},"notations.unhighlight":{actions:I2()},"tag.highlight":{actions:VZe()},"tag.unhighlight":{actions:I2()},"open.search":{guard:"enabled: Search",actions:fr.sendTo(({system:e})=>Rr(e).searchActorRef,({event:e})=>({type:"open",search:e.search}))},"xyflow.paneClick":{actions:[Sm(),bz()]},"xyflow.nodeClick":{actions:[$p(),zp()]},"xyflow.edgeClick":{actions:[Sm(),wz()]},"xyflow.fitDiagram":{guard:"enabled: FitView",actions:P2()},"xyflow.setViewport":{actions:h0()},"update.view":[{guard:"is another view",target:Rn.navigating},{actions:$z()}],"media.print.on":{target:Rn.printing}}}),Rz="likec4:diagram:toggledFeatures",Ste={read(){try{let e=sessionStorage.getItem(Rz);return e?JSON.parse(e):null}catch(e){return console.error(`Error reading fromStorage ${Rz}:`,e),null}},write(e){return sessionStorage.setItem(Rz,JSON.stringify(U1(e,OV))),e}},uKe=Qe.createMachine({initial:"initializing",context:({input:e})=>({...e,xyedges:[],xynodes:[],features:{...GW},toggledFeatures:Ste.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:eKe,isReady:tKe,ready:dKe,navigating:nKe,final:{type:"final",entry:[ute(),cc(),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(xZe)},"update.edgeData":{actions:fr.assign(wZe)},"switch.dynamicViewVariant":{guard:({context:e,event:r})=>e.dynamicViewVariant!==r.variant,actions:[MZe(),TZe()]},"update.inputs":{actions:DZe()},"update.view-bounds":{actions:fr.assign(({context:e,event:r})=>({view:{...e.view,bounds:r.bounds}}))},"update.features":{actions:lte()},"trigger.change":{actions:dte()},"emit.onLayoutTypeChange":{actions:OZe()},"xyflow.applyNodeChanges":{actions:fr.assign({xynodes:({context:e,event:r})=>Ox(r.changes,e.xynodes)})},"xyflow.applyEdgeChanges":{actions:fr.assign({xyedges:({context:e,event:r})=>Ix(r.changes,e.xyedges)})},"xyflow.viewportMoved":{actions:fr.assign(({event:e,context:r})=>({viewportChangedManually:r.viewportChangedManually||e.manually,viewport:e.viewport}))},destroy:{target:".final"}}}),pKe=uKe;function hKe({view:e,zoomable:r,pannable:n,nodesDraggable:o,nodesSelectable:a,fitViewPadding:i,where:l,children:s,dynamicViewVariant:c}){const d=vr(),u=vZe(e.id),p=AS(pKe.provide({actors:{editorActor:u}}),{id:"diagram",systemId:"diagram",input:{xystore:d,view:e,zoomable:r,pannable:n,fitViewPadding:i,nodesDraggable:o,nodesSelectable:a,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(()=>Qee(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"),Qee(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:i,nodesDraggable:o,nodesSelectable:a}}),[r,l,n,i,p,o,a]),Ed(()=>{c&&p.send({type:"switch.dynamicViewVariant",variant:c})},[c,p]),kI(()=>p.send({type:"update.view",view:e,source:"external"}),[p,e]),y.jsx(qNe,{value:p,children:y.jsxs(HNe,{value:g,children:[y.jsx(pS,{children:y.jsx(gKe,{actorRef:p,children:s})}),y.jsx(yKe,{})]})})}const fKe=({context:e})=>{let r=e.toggledFeatures;const n=e.view.drifts!=null&&e.view.drifts.length>0,o=e.features.enableCompareWithLatest&&(r.enableCompareWithLatest??!1)&&H1(e.activeWalkthrough)&&n,a=e.features.enableReadOnly||r.enableReadOnly||!!e.activeWalkthrough||e.dynamicViewVariant==="sequence"&&e.view._type==="dynamic"||o&&e.view._layout==="auto";return(r.enableReadOnly!==a||r.enableCompareWithLatest!==o)&&(r={...r,enableCompareWithLatest:o,enableReadOnly:a}),{toggledFeatures:r,viewId:e.view.id}},mKe=(e,r)=>e.viewId===r.viewId&&Or(e.toggledFeatures,r.toggledFeatures);function gKe({children:e,actorRef:r}){const{viewId:n,toggledFeatures:o}=pn(r,fKe,mKe),a=Lo().findView(n);return y.jsx(lS.Provider,{value:a,children:y.jsx(sp,{overrides:o,children:e})})}const yKe=S.memo(()=>{const e=Nt(),{onNavigateTo:r,onOpenSource:n,onLayoutTypeChange:o,handlersRef:a}=um();za("openSource",({params:l})=>n?.(l)),za("navigateTo",({viewId:l})=>r?.(l)),za("onLayoutTypeChange",({layoutType:l})=>{o?.(l)}),za("initialized",({instance:l})=>{try{a.current.onInitialized?.({diagram:e,xyflow:l})}catch(s){console.error(s)}},{once:!0});const i=ci(l=>l.toggledFeatures,Or);return Ed(()=>{Ste.write(_Ce(i,H1))},[i]),null}),F2={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 a=n<.5?n*(1+r):n+r-n*r,i=2*n-a;switch(o){case"r":return F2.hue2rgb(i,a,e+1/3)*255;case"g":return F2.hue2rgb(i,a,e)*255;case"b":return F2.hue2rgb(i,a,e-1/3)*255}},rgb2hsl:({r:e,g:r,b:n},o)=>{e/=255,r/=255,n/=255;const a=Math.max(e,r,n),i=Math.min(e,r,n),l=(a+i)/2;if(o==="l")return l*100;if(a===i)return 0;const s=a-i,c=l>.5?s/(2-a-i):s/(a+i);if(o==="s")return c*100;switch(a){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},bKe={dec2hex:e=>{const r=Math.round(e).toString(16);return r.length>1?r:`0${r}`}},jt={channel:F2,lang:vKe,unit:bKe},Td={};for(let e=0;e<=255;e++)Td[e]=jt.unit.dec2hex(e);const $o={ALL:0,RGB:1,HSL:2};class xKe{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 wKe{constructor(r,n){this.color=n,this.changed=!1,this.data=r,this.type=new xKe}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:a}=r;n===void 0&&(r.h=jt.channel.rgb2hsl(r,"h")),o===void 0&&(r.s=jt.channel.rgb2hsl(r,"s")),a===void 0&&(r.l=jt.channel.rgb2hsl(r,"l"))}_ensureRGB(){const r=this.data,{r:n,g:o,b:a}=r;n===void 0&&(r.r=jt.channel.hsl2rgb(r,"r")),o===void 0&&(r.g=jt.channel.hsl2rgb(r,"g")),a===void 0&&(r.b=jt.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(),jt.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(),jt.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(),jt.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(),jt.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(),jt.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(),jt.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 V2=new wKe({r:0,g:0,b:0,a:0},"transparent"),Cm={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:e=>{if(e.charCodeAt(0)!==35)return;const r=e.match(Cm.re);if(!r)return;const n=r[1],o=parseInt(n,16),a=n.length,i=a%4===0,l=a>4,s=l?1:17,c=l?8:4,d=i?0:-1,u=l?255:15;return V2.set({r:(o>>c*(d+3)&u)*s,g:(o>>c*(d+2)&u)*s,b:(o>>c*(d+1)&u)*s,a:i?(o&u)*s/255:1},e)},stringify:e=>{const{r,g:n,b:o,a}=e;return a<1?`#${Td[Math.round(r)]}${Td[Math.round(n)]}${Td[Math.round(o)]}${Td[Math.round(a*255)]}`:`#${Td[Math.round(r)]}${Td[Math.round(n)]}${Td[Math.round(o)]}`}},Rp={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(Rp.hueRe);if(r){const[,n,o]=r;switch(o){case"grad":return jt.channel.clamp.h(parseFloat(n)*.9);case"rad":return jt.channel.clamp.h(parseFloat(n)*180/Math.PI);case"turn":return jt.channel.clamp.h(parseFloat(n)*360)}}return jt.channel.clamp.h(parseFloat(e))},parse:e=>{const r=e.charCodeAt(0);if(r!==104&&r!==72)return;const n=e.match(Rp.re);if(!n)return;const[,o,a,i,l,s]=n;return V2.set({h:Rp._hue2deg(o),s:jt.channel.clamp.s(parseFloat(a)),l:jt.channel.clamp.l(parseFloat(i)),a:l?jt.channel.clamp.a(s?parseFloat(l)/100:parseFloat(l)):1},e)},stringify:e=>{const{h:r,s:n,l:o,a}=e;return a<1?`hsla(${jt.lang.round(r)}, ${jt.lang.round(n)}%, ${jt.lang.round(o)}%, ${a})`:`hsl(${jt.lang.round(r)}, ${jt.lang.round(n)}%, ${jt.lang.round(o)}%)`}},g0={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=g0.colors[e];if(r)return Cm.parse(r)},stringify:e=>{const r=Cm.stringify(e);for(const n in g0.colors)if(g0.colors[n]===r)return n}},y0={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(y0.re);if(!n)return;const[,o,a,i,l,s,c,d,u]=n;return V2.set({r:jt.channel.clamp.r(a?parseFloat(o)*2.55:parseFloat(o)),g:jt.channel.clamp.g(l?parseFloat(i)*2.55:parseFloat(i)),b:jt.channel.clamp.b(c?parseFloat(s)*2.55:parseFloat(s)),a:d?jt.channel.clamp.a(u?parseFloat(d)/100:parseFloat(d)):1},e)},stringify:e=>{const{r,g:n,b:o,a}=e;return a<1?`rgba(${jt.lang.round(r)}, ${jt.lang.round(n)}, ${jt.lang.round(o)}, ${jt.lang.round(a)})`:`rgb(${jt.lang.round(r)}, ${jt.lang.round(n)}, ${jt.lang.round(o)})`}},pl={format:{keyword:g0,hex:Cm,rgb:y0,rgba:y0,hsl:Rp,hsla:Rp},parse:e=>{if(typeof e!="string")return e;const r=Cm.parse(e)||y0.parse(e)||Rp.parse(e)||g0.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?Rp.stringify(e):e.a<1||!Number.isInteger(e.r)||!Number.isInteger(e.g)||!Number.isInteger(e.b)?y0.stringify(e):Cm.stringify(e)},Ete=(e,r)=>{const n=pl.parse(e);for(const o in r)n[o]=jt.channel.clamp[o](r[o]);return pl.stringify(n)},kKe=(e,r,n=0,o=1)=>{if(typeof e!="number")return Ete(e,{a:r});const a=V2.set({r:jt.channel.clamp.r(e),g:jt.channel.clamp.g(r),b:jt.channel.clamp.b(n),a:jt.channel.clamp.a(o)});return pl.stringify(a)},Cte=e=>pl.format.hex.stringify(pl.parse(e)),$te=e=>pl.format.rgba.stringify(pl.parse(e)),_Ke=(e,r)=>{const n=pl.parse(e),o={};for(const a in r)r[a]&&(o[a]=n[a]+r[a]);return Ete(e,o)},zte=(e,r,n=50)=>{const{r:o,g:a,b:i,a:l}=pl.parse(e),{r:s,g:c,b:d,a:u}=pl.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=a*v+c*w,C=i*v+d*w,_=l*p+u*(1-p);return kKe(x,k,C,_)},Rte=(e,r)=>{const n=pl.parse(e),o={},a=(i,l,s)=>l>0?(s-i)*l/100:i*l/100;for(const i in r)o[i]=a(n[i],r[i],jt.channel.max[i]);return _Ke(e,o)},SKe=e=>`[data-mantine-color-scheme="${e}"]`,jte=SKe("dark"),EKe=5,CKe=(e,r,n,o)=>{const a=s=>Cte(Rte(s,{l:-22-5*o,s:-10-6*o})),i=s=>Cte(Rte(s,{l:-20-3*o,s:-3-6*o})),l=`:where(${e} [data-likec4-color="${r}"][data-compound-depth="${o}"])`;return` + `});const XYe=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)"}),ZYe=[["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"}]],KYe=wt("outline","help-circle","HelpCircle",ZYe),QYe=[["path",{d:"M7 7l10 10",key:"svg-0"}],["path",{d:"M17 8l0 9l-9 0",key:"svg-1"}]],JYe=wt("outline","arrow-down-right","ArrowDownRight",QYe),eXe=({value:e})=>{const{title:r,color:n="primary",shape:o="rectangle"}=e,[a,i]=S.useState(null),l=Nt(),s=300,c=200;return y.jsx(Jw,{shadow:"none",px:"xs",py:"sm",className:Ge(YYe),"data-likec4-color":n,onMouseEnter:()=>{i(null),l.highlightNotation(e)},onMouseLeave:()=>{i(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:MEe(70*(c/s),0)},children:y.jsx(lm,{data:{shape:o,width:s,height:c}})}),y.jsxs(Io,{gap:4,flex:1,children:[y.jsx(en,{gap:4,flex:"0 0 auto",children:e.kinds.map(d=>y.jsx(Ks,{className:Ge(XYe),onMouseEnter:()=>{i(d),l.highlightNotation(e,d)},onMouseLeave:()=>{i(null),l.highlightNotation(e)},opacity:IV(a)&&a!==d?.25:1,children:d},d))}),y.jsx(at,{component:"div",fz:"sm",fw:500,lh:"1.25",style:{textWrap:"pretty"},children:r})]})]})})},tXe=e=>({id:e.view.id,notations:e.view.notation?.nodes??[]}),rXe=S.memo(()=>{const e=pC(s=>s.height),{id:r,notations:n}=ci(tXe),[o,a]=X$e({key:"notation-webview-collapsed",defaultValue:!0}),i=n.length>0,l=fm();return y.jsxs(Cn,{children:[!i&&y.jsx(pi.div,{initial:{opacity:.75,translateX:"50%"},animate:{opacity:1,translateX:0},exit:{translateX:"100%",opacity:.6},className:W$,children:y.jsx(_n,{label:"View has no notations",color:"orange",...l,children:y.jsx($a,{size:"lg",variant:"light",color:"orange",radius:"md",children:y.jsx(tee,{})})})},"empty"),i&&o&&y.jsx(pi.div,{initial:{opacity:.75,translateX:"50%"},animate:{opacity:1,translateX:0},exit:{translateX:"100%",opacity:.6},className:W$,children:y.jsx(_n,{label:"Show notation",color:"dark",fz:"xs",...l,children:y.jsx(lr,{size:"lg",variant:"default",color:"gray",className:UYe,onClick:()=>a(!1),children:y.jsx(KYe,{stroke:1.5})})})},"collapsed"),i&&!o&&y.jsx(pi.div,{initial:{opacity:.75,scale:.2},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.25},className:Ge("react-flow__panel",W$),style:{transformOrigin:"bottom right"},children:y.jsx($f,{radius:"sm",withBorder:!0,shadow:"lg",className:WYe,children:y.jsxs(op,{defaultValue:"first",radius:"xs",children:[y.jsxs(py,{children:[y.jsx(lr,{size:"md",variant:"subtle",color:"gray",ml:2,style:{alignSelf:"center"},onClick:()=>a(!0),children:y.jsx(JYe,{stroke:2})}),y.jsx(Nf,{value:"first",fz:"xs",children:"Elements"}),y.jsx(Nf,{value:"second",fz:"xs",disabled:!0,children:"Relationships"})]}),y.jsx(Js,{value:"first",className:GYe,hidden:o,children:y.jsx(ta,{viewportProps:{style:{maxHeight:`min(40vh, ${Math.max(e-60,50)}px)`}},children:y.jsx(Io,{gap:0,children:n.map((s,c)=>y.jsx(eXe,{value:s},c))})})})]})})},r)]})}),nXe=S.memo(()=>{const[{layout:e,isActive:r},{toggleCompare:n}]=H$(),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(oXe,{style:{backgroundColor:o},onClick:a=>{a.stopPropagation(),n()},children:"Close compare"})})}),oXe=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)"}})}),gee=S.memo(()=>{const{enableControls:e,enableNotations:r,enableSearch:n,enableRelationshipDetails:o,enableReadOnly:a,enableCompareWithLatest:i}=sr(),l=Hke(),s=WNe(),c=YNe(),d=S.useCallback(()=>{console.warn("DiagramUI: resetting error boundary and rerendering..."),l()},[]);return y.jsxs(pS,{onReset:d,children:[e&&y.jsx(mee,{}),s&&y.jsx(tUe,{overlaysActorRef:s}),r&&y.jsx(rXe,{}),n&&c&&y.jsx(FUe,{searchActorRef:c}),o&&a&&y.jsx(tWe,{}),i&&y.jsx(nXe,{})]})});gee.displayName="DiagramUI";function yee({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 aXe=fe({overflow:"visible",position:"absolute",pointerEvents:"none",top:"0",left:"0",mixBlendMode:{_dark:"screen",_light:"multiply"}}),iXe=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 lXe({sourceX:e,sourceY:r,targetX:n,targetY:o,data:a}){const[i,l]=S.useState(()=>a.controlPoints??q3(a.points));Ed(()=>{const c=a.controlPoints??q3(a.points);l(d=>tt(d,c)?d:c)},[a.controlPoints?.map(c=>`${Math.round(c.x)},${Math.round(c.y)}`).join("|")??"",a.points.map(c=>`${Math.round(c[0])},${Math.round(c[1])}`).join("|")]);const s=it(({x:c,y:d})=>{const u=Qr(e,r),p=Qr(n,o),f=[a.dir==="back"?p:u,...i.map(Qr)||[],a.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 bee;const n=10**r;return function(o){this._+=o[0];for(let a=1,i=o.length;akp)if(!(Math.abs(p*c-d*u)>kp)||!i)this._append`L${this._x1=r},${this._y1=n}`;else{let g=o-l,v=a-s,w=c*c+d*d,x=g*g+v*v,k=Math.sqrt(w),C=Math.sqrt(f),_=i*Math.tan((G$-Math.acos((w+f-x)/(2*k*C)))/2),$=_/C,z=_/k;Math.abs($-1)>kp&&this._append`L${r+$*u},${n+$*p}`,this._append`A${i},${i},0,0,${+(p*g>u*v)},${this._x1=r+z*c},${this._y1=n+z*d}`}}arc(r,n,o,a,i,l){if(r=+r,n=+n,o=+o,l=!!l,o<0)throw new Error(`negative radius: ${o}`);let s=o*Math.cos(a),c=o*Math.sin(a),d=r+s,u=n+c,p=1^l,f=l?a-i:i-a;this._x1===null?this._append`M${d},${u}`:(Math.abs(this._x1-d)>kp||Math.abs(this._y1-u)>kp)&&this._append`L${d},${u}`,o&&(f<0&&(f=f%Y$+Y$),f>sXe?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>kp&&this._append`A${o},${o},0,${+(f>=G$)},${p},${this._x1=r+o*Math.cos(i)},${this._y1=n+o*Math.sin(i)}`)}rect(r,n,o,a){this._append`M${this._x0=this._x1=+r},${this._y0=this._y1=+n}h${o=+o}v${+a}h${-o}Z`}toString(){return this._}}function uXe(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 dXe(r)}function pXe(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function xee(e){this._context=e}xee.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 hXe(e){return new xee(e)}function fXe(e){return e[0]}function mXe(e){return e[1]}function gXe(e,r){var n=vm(!0),o=null,a=hXe,i=null,l=uXe(s);e=typeof e=="function"?e:e===void 0?fXe:vm(e),r=typeof r=="function"?r:r===void 0?mXe:vm(r);function s(c){var d,u=(c=pXe(c)).length,p,f=!1,g;for(o==null&&(i=a(g=l())),d=0;d<=u;++d)!(dvee){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,a=(a*s-e._y0*e._l12_2a+e._y2*e._l01_2a)/c}if(e._l23_a>vee){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);i=(i*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,a,i,l,e._x2,e._y2)}function kee(e,r){this._context=e,this._alpha=r}kee.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:wee(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 kee(o,r):new Z$(o,0)}return n.alpha=function(o){return e(+o)},n})(.5);function _ee(e,r){this._context=e,this._alpha=r}_ee.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:wee(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 yXe=(function e(r){function n(o){return r?new _ee(o,r):new K$(o,0)}return n.alpha=function(o){return e(+o)},n})(.5),vXe=gXe().curve(yXe.alpha(.7)).x(e=>Math.round(e.x)).y(e=>Math.round(e.y)),bXe=(e,r)=>cK(e.sourceNode,r.sourceNode)&&cK(e.targetNode,r.targetNode);function xXe({props:{sourceX:e,sourceY:r,source:n,target:o,targetX:a,targetY:i,data:l},controlPoints:s,isControlPointDragging:c}){const{sourceNode:d,targetNode:u}=pC(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:gC(f),targetNode:gC(g)}},[n,o]),bXe);if(Kn(l.controlPoints)||c){const p={x:e,y:r},f={x:a,y:i},g=6,v=l.dir==="back"?[f,V3(u,df(s)??p,g),...s,V3(d,rd(s)??f,g),p]:[p,V3(d,df(s)??f,g),...s,V3(u,rd(s)??p,g),f];return mt(vXe(v))}return RFe(l.points)}const See=e=>{const r=e.getPointAtLength(e.getTotalLength()*.5);return{x:Math.round(r.x),y:Math.round(r.y)}},Eee=g$(e=>{const[r,n]=S.useState(!1),o=S.useRef(r);o.current=r;const a=aK(),i=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}=lXe(e);let _=xXe({props:e,controlPoints:x,isControlPointDragging:r}),$=f?.x??0,z=f?.y??0;const[j,A]=S.useState({x:g?.x??$,y:g?.y??z});Ed(()=>{if(o.current)return;const V={x:$,y:z};A(B=>H3(B,V)?B:V)},[$,z]);const R=S.useRef(null);S.useEffect(()=>{const V=R.current;if(!V||!r)return;const B=See(V);A(F=>H3(F,B)?F:B)},[_,r]);const T=it(V=>{const B=R.current?See(R.current):null;f&&B?i.updateEdgeData(u,{controlPoints:V,labelBBox:{...f,...B}}):i.updateEdgeData(u,{controlPoints:V}),i.stopEditing(!0),n(!1)}),O=it(()=>{i.startEditing("edge"),n(!0)}),P=it(()=>{i.stopEditing(),n(!1)}),L=it(V=>{k(V),requestAnimationFrame(()=>{T(V)})}),H=it(V=>{i.startEditing("edge"),n(!0),k(V),requestAnimationFrame(()=>{T(V)})}),M=it(V=>{if(V.pointerType!=="mouse"||V.button!==2&&!p)return;V.stopPropagation(),V.preventDefault(),i.startEditing("edge");const B=C(a.screenToFlowPosition({x:V.clientX,y:V.clientY},{snapToGrid:!1}));i.updateEdgeData(u,{controlPoints:B}),i.stopEditing(!0)});return r&&!e.data.hovered&&(e={...e,data:{...e.data,hovered:!0}}),y.jsxs(y.Fragment,{children:[y.jsxs(Ky,{...e,className:fe({"& .react-flow__edge-interaction":{cursor:d&&p?"copy":void 0}}),children:[y.jsx(Qy,{edgeProps:e,svgPath:_,ref:R,isDragging:r,...d&&{onEdgePointerDown:M}}),c&&y.jsx(yee,{edgeProps:e,svgPath:_}),f&&y.jsx(o2,{edgeProps:e,labelPosition:r?j:{x:$,y:z},children:y.jsx(Zy,{pointerEvents:d?"none":"all",edgeProps:e,children:w&&y.jsx(n2,{onClick:V=>{V.stopPropagation(),i.navigateTo(w)}})})})]}),d&&x.length>0&&y.jsx(wXe,{isControlPointDragging:r,edgeProps:e,controlPoints:x,onMove:k,onStartMove:O,onCancelMove:P,onFinishMove:L,onDelete:H,zIndex:9999})]})});Eee.displayName="RelationshipEdge";function wXe({isControlPointDragging:e,edgeProps:r,controlPoints:n,onMove:o,onStartMove:a,onCancelMove:i,onFinishMove:l,onDelete:s,zIndex:c}){const d=hC(),u=aK(),p=r.data.id,f=(x,k,C)=>{let _=!1,$={x:k.clientX,y:k.clientY},z=null,j=n;const A=T=>{const O={x:T.clientX,y:T.clientY};H3($,O)||(_||(_=!0,a()),$=O,z??=requestAnimationFrame(()=>{z=null,j=j.slice();const{x:P,y:L}=u.screenToFlowPosition($,{snapToGrid:!1});j[x]={x:Math.round(P),y:Math.round(L)},o(j)})),T.stopPropagation()},R=T=>{T.stopPropagation(),C.removeEventListener("pointermove",A,{capture:!0}),C.removeEventListener("click",Q$,{capture:!0}),_?l(j):i()};C.addEventListener("pointermove",A,{capture:!0}),C.addEventListener("pointerup",R,{once:!0,capture:!0}),C.addEventListener("click",Q$,{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=it(x=>{const{domNode:k,addSelectedEdges:C,edges:_,unselectNodesAndEdges:$}=d.getState();if(!k||x.pointerType!=="mouse")return;const z=parseFloat(x.currentTarget.getAttribute("data-control-point-index")||"");if(isNaN(z))throw new Error("data-control-point-index is not a number");switch(x.button){case 0:{x.stopPropagation(),$({edges:_.filter(j=>j.selected&&j.id!==p)}),C([p]),f(z,x,k);break}case 2:g(z,x);break}}),w=it(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(gV,{children:y.jsx(Ky,{component:"svg",className:aXe,...r,style:{...r.style,zIndex:c},children:y.jsx("g",{"data-active":e?!0:void 0,className:"group",onContextMenu:Q$,children:n.map((x,k)=>y.jsx("circle",{"data-control-point-index":k,onPointerDownCapture:v,onDoubleClick:w,className:Ge("nodrag nopan",iXe),cx:x.x,cy:x.y},"controlPoints"+p+"#"+k))})})})}const Q$=e=>{e.stopPropagation(),e.preventDefault()},k2=16;function kXe(e){const{enableNavigateTo:r,enableCompareWithLatest:n}=sr(),o=Nt(),{navigateTo:a}=e.data,i=e.source===e.target,l=e.sourceX>e.targetX,[s]=Dx({sourceX:e.sourceX,sourceY:e.sourceY,sourcePosition:e.sourcePosition,targetX:e.targetX,targetY:e.targetY,targetPosition:e.targetPosition,...i&&{offset:30,borderRadius:16}});let c=e.sourceX;switch(!0){case i:c=e.sourceX+24+k2;break;case l:c=e.sourceX-k2;break;default:c=e.sourceX+k2;break}return y.jsxs(Ky,{...e,children:[y.jsx(Qy,{edgeProps:e,svgPath:s}),n&&y.jsx(yee,{edgeProps:e,svgPath:s}),y.jsx(o2,{edgeProps:e,labelPosition:{x:c,y:e.sourceY+(i?0:k2),translate:l?"translate(-100%, 0)":void 0},children:y.jsx(Zy,{edgeProps:e,children:r&&a&&y.jsx(n2,{onClick:d=>{d.stopPropagation(),o.navigateTo(a)}})})})]})}const _Xe=(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||Or(e.extraButtons,r.extraButtons)),Cee=S.memo(({extraButtons:e,...r})=>{const{enableNavigateTo:n,enableRelationshipBrowser:o}=sr(),a=Nt(),{id:i,navigateTo:l,modelFqn:s}=r.data;let c=S.useMemo(()=>{const d=[];return l&&n&&d.push({key:"navigate",icon:y.jsx(gi,{}),onClick:u=>{u.stopPropagation(),a.navigateTo(l,i)}}),o&&d.push({key:"relationships",icon:y.jsx(Jy,{}),onClick:u=>{u.stopPropagation(),a.openRelationshipsBrowser(s)}}),d},[n,o,s,l,i,a]);return e&&xn(e,1)&&(c=[...c,...e]),y.jsx(i2,{...r,buttons:c})},_Xe),SXe=({extraButtons:e,...r})=>{const{enableNavigateTo:n,enableRelationshipBrowser:o}=sr(),a=Nt(),{id:i,navigateTo:l,modelFqn:s}=r.data;let c=S.useMemo(()=>{const d=[];return l&&n&&d.push({key:"navigate",icon:y.jsx(gi,{}),onClick:u=>{u.stopPropagation(),a.navigateTo(l,i)}}),o&&s&&d.push({key:"relationships",icon:y.jsx(Jy,{}),onClick:u=>{u.stopPropagation(),a.openRelationshipsBrowser(s)}}),d},[n,o,s,l,i]);return e&&xn(e,1)&&(c=[...c,...e]),y.jsx(i2,{...r,buttons:c})};function bm({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(g7,{isVisible:e.hovered===!0,align:"start",position:o,children:y.jsx(dy,{color:"orange",withBorder:!1,withCloseButton:!1,title:"Changes:",children:n.map(a=>y.jsxs(at,{mt:2,size:"sm",lh:"xs",children:["- ",a]},a))})})})}function EXe({data:{hovered:e=!1},icon:r,onClick:n}){const o=R7(e,e?130:0)[0]&&e;return y.jsx(zr,{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",TQ({delay:e&&!o}),L3({variant:"transparent"})),onClick:n,onDoubleClick:nn,children:r??y.jsx(gi,{stroke:2})})})}const $ee=e=>{const{enableNavigateTo:r}=sr(),n=Nt(),{navigateTo:o}=e.data;return o&&r?y.jsx(EXe,{onClick:a=>{a.stopPropagation(),n.navigateTo(o,e.id)},...e}):null},zee=_n.withProps({color:"dark",fz:"xs",openDelay:400,closeDelay:150,label:"",children:null,offset:4,withinPortal:!1});function _2({fqn:e}){const r=Nt();return y.jsx(zee,{label:"Browse relationships",children:y.jsx(lr,{size:"sm",variant:"subtle",color:"gray",onClick:n=>{n.stopPropagation(),r.openRelationshipsBrowser(e)},children:y.jsx(Jy,{stroke:2,style:{width:"72%",height:"72%"}})})})}function S2(e){const{onOpenSource:r}=um();return r?y.jsx(zee,{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(am,{stroke:1.8,style:{width:"70%"}})})}):null}function Ree(){const e=S.useContext(fy);e||console.error("No LikeC4ModelContext found");const r=e?.$styles??JN.DEFAULT,[n,o]=S.useState(r);return S.useEffect(()=>{o(a=>a.equals(r)?a:r)},[r]),n}const jee=["primary","secondary","muted"];function E2({elementColor:e,elementOpacity:r,onColorPreview:n,isOpacityEditable:o=!1,onChange:a,...i}){const{theme:l}=Ree();return y.jsxs(br,{clickOutsideEvents:["pointerdown","mousedown","click"],position:"right-end",offset:2,withinPortal:!1,...i,children:[y.jsx(hd,{children:y.jsx(Vn,{variant:"subtle",color:"gray",size:"compact-xs",px:3,children:y.jsx(iy,{color:l.colors[e].elements.fill,size:14,withShadow:!0,style:{color:"#fff",cursor:"pointer"}})})}),y.jsxs(Xs,{p:"xs",children:[y.jsx(CXe,{theme:l,elementColor:e,onColorPreview:n,onChange:s=>a({color:s})}),o&&y.jsxs(y.Fragment,{children:[y.jsx(nS,{h:"xs"}),y.jsx(tp,{label:"opacity",labelPosition:"left"}),y.jsx(nS,{h:"xs"}),y.jsx($Xe,{elementOpacity:r,onOpacityChange:s=>{a({opacity:s})}})]})]})]})}function CXe({theme:e,elementColor:r,onColorPreview:n,onChange:o}){const a=l=>s=>{s.stopPropagation(),n(null),r!==l&&o(l)},i=x7(e.colors).filter(l=>!jee.includes(l));return y.jsx(Io,{gap:2,onMouseLeave:()=>n(null),children:y.jsxs(np,{openDelay:1e3,closeDelay:300,children:[y.jsx(Zs,{maw:120,gap:"6",justify:"flex-start",align:"flex-start",direction:"row",wrap:"wrap",children:jee.map(l=>y.jsx(_n,{label:l,fz:"xs",color:"dark",offset:2,withinPortal:!1,transitionProps:{duration:140,transition:"slide-up"},children:y.jsx(iy,{color:e.colors[l].elements.fill,size:18,withShadow:!0,onMouseEnter:()=>n(l),onClick:a(l),style:{color:"#fff",cursor:"pointer"},children:r===l&&y.jsx(LU,{style:{width:$e(10),height:$e(10)}})})},l))}),y.jsx(Zs,{mt:"sm",maw:110,gap:"6",justify:"flex-start",align:"flex-start",direction:"row",wrap:"wrap",children:i.map(l=>y.jsx(_n,{label:l,fz:"xs",color:"dark",offset:2,transitionProps:{duration:140,transition:"slide-up"},children:y.jsx(iy,{color:e.colors[l].elements.fill,size:18,onMouseEnter:()=>n(l),onClick:a(l),style:{color:"#fff",cursor:"pointer"},children:r===l&&y.jsx(LU,{style:{width:$e(10),height:$e(10)}})})},l))})]})})}function $Xe({elementOpacity:e=100,onOpacityChange:r}){const[n,o]=S.useState(e);return Uke(()=>{o(e)},[e]),y.jsx(rS,{size:"sm",color:"dark",value:n,onChange:o,onChangeEnd:r})}const zXe=fe({color:"mantine.colors.dimmed",fontSize:"10px",fontWeight:600,maxWidth:"220px",cursor:"default",userSelect:"all",textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap"}),RXe=()=>ci(e=>e.xynodes.filter(r=>r.selected).length);function C2({title:e,children:r,nodeProps:n,...o}){const a=RXe(),{selected:i=!1,dragging:l=!1,data:{hovered:s=!1}}=n,c=s&&a===0||i&&a===1;let d=150;c?i?d=100:d=1e3:a>0&&(d=50);const[u]=R7(c,d);return u?y.jsx(g7,{isVisible:!l,offset:4,...o,children:y.jsx($f,{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(Io,{gap:"6px",children:[y.jsx(Se,{px:"4px",children:y.jsx(at,{className:zXe,children:e})}),y.jsx(en,{gap:4,children:r})]})})}):null}function $2(e,r){const n=Nt(),[o,a]=S.useState(null),i=it(s=>{if(s===null){if(!o)return;a(null),n.updateNodeData(r.data.id,{color:o});return}a(c=>c??r.data.color),n.updateNodeData(r.data.id,{color:s})}),l=it(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:i,onChange:l}}function jXe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{style:o,modelFqn:a}}=e,{elementColor:i,onColorPreview:l,onChange:s}=$2(a,e),c=o?.opacity??100;return y.jsxs(C2,{nodeProps:e,title:a,align:"start",children:[y.jsx(E2,{elementColor:i,onColorPreview:l,isOpacityEditable:!0,elementOpacity:c,onChange:s,position:"left-start"}),y.jsx(Tee,{elementBorderStyle:o?.border??(c<99?"dashed":"none"),onChange:s}),r&&y.jsx(S2,{elementId:a}),n&&y.jsx(_2,{fqn:a})]})}function TXe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{deploymentFqn:o,style:a,modelFqn:i}}=e,{elementColor:l,onColorPreview:s,onChange:c}=$2(o,e);return y.jsxs(C2,{nodeProps:e,title:o,align:"start",children:[y.jsx(E2,{elementColor:l,onColorPreview:s,isOpacityEditable:!0,elementOpacity:a?.opacity,onChange:c,position:"left-start"}),y.jsx(Tee,{elementBorderStyle:a?.border,onChange:c}),r&&y.jsx(S2,{deploymentId:o}),n&&i&&y.jsx(_2,{fqn:i})]})}function Tee({elementBorderStyle:e="dashed",onChange:r}){const[n,o]=S.useState(e);return S.useEffect(()=>{o(e)},[e]),y.jsx(Se,{children:y.jsx(Mf,{size:"xs",fullWidth:!0,withItemsBorders:!1,value:n,onChange:a=>{const i=a;o(i),r({border:i})},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 AXe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{shape:o,modelFqn:a}}=e,{elementColor:i,onColorPreview:l,onChange:s}=$2(a,e);return y.jsxs(C2,{nodeProps:e,title:a,align:"start",children:[y.jsx(Aee,{elementShape:o,onChange:s}),y.jsx(E2,{elementColor:i,onColorPreview:l,onChange:s,position:"right-end"}),r&&y.jsx(S2,{elementId:a}),n&&y.jsx(_2,{fqn:a})]})}function DXe(e){const{enableVscode:r,enableRelationshipBrowser:n}=sr(),{data:{shape:o,deploymentFqn:a,modelFqn:i}}=e,{elementColor:l,onColorPreview:s,onChange:c}=$2(a,e);return y.jsxs(C2,{nodeProps:e,title:a,align:"start",children:[y.jsx(Aee,{elementShape:o,onChange:c}),y.jsx(E2,{elementColor:l,onColorPreview:s,onChange:c,position:"right-end"}),r&&y.jsx(S2,{deploymentId:a}),n&&i&&y.jsx(_2,{fqn:i})]})}function Aee({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(t3,{children:y.jsx(Vn,{variant:"light",color:"gray",size:"compact-xs",rightSection:y.jsx(m$,{size:12}),children:e})}),y.jsx(sy,{onDoubleClick:nn,onClick:nn,children:K1e.map(n=>y.jsx(cy,{fz:12,fw:500,value:n,rightSection:e===n?y.jsx(dK,{size:12}):void 0,onClick:o=>{o.stopPropagation(),r({shape:n})},children:n},n))})]})}const MXe=[Ue.Top,Ue.Right,Ue.Bottom,Ue.Left],s0=S.memo(()=>y.jsx(y.Fragment,{children:MXe.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 J$(e){const r=Nt(),n=e.data.modelFqn;return n?y.jsx(v$,{...e,onClick:o=>{o.stopPropagation(),r.openElementDetails(n,e.id)}}):null}function Dee(e){const r=Nt(),n=e.data.modelFqn;return n?y.jsx(AQ,{...e,onClick:o=>{o.stopPropagation(),r.openElementDetails(n,e.id)}}):null}function NXe(e){const{enableElementTags:r,enableElementDetails:n,enableReadOnly:o,enableCompareWithLatest:a}=sr();return y.jsxs(im,{nodeProps:e,children:[a&&y.jsx(bm,{nodeProps:e}),y.jsx(lm,{...e}),y.jsx(sl,{...e}),r&&y.jsx(Wy,{...e}),y.jsx(Cee,{...e}),n&&y.jsx(J$,{...e}),!o&&y.jsx(AXe,{...e}),y.jsx(s0,{})]})}function PXe(e){const{enableElementTags:r,enableElementDetails:n,enableReadOnly:o,enableCompareWithLatest:a}=sr();return y.jsxs(im,{nodeProps:e,children:[a&&y.jsx(bm,{nodeProps:e}),y.jsx(lm,{...e}),y.jsx(sl,{...e}),r&&y.jsx(Wy,{...e}),y.jsx(SXe,{...e}),n&&y.jsx(J$,{...e}),!o&&y.jsx(DXe,{...e}),y.jsx(s0,{})]})}const ez=fe({outlineColor:"likec4.compare.manual.outline",outlineWidth:"4px",outlineStyle:"dashed",outlineOffset:"1.5"}),tz=e=>e.data.drifts&&e.data.drifts.length>0;function BXe(e){const{enableElementDetails:r,enableReadOnly:n,enableCompareWithLatest:o}=sr(),a=o&&tz(e);return y.jsxs(e0,{className:a?ez:void 0,nodeProps:e,children:[o&&y.jsx(bm,{nodeProps:e}),y.jsx(t0,{...e}),y.jsx($ee,{...e}),r&&y.jsx(Dee,{...e}),!n&&y.jsx(jXe,{...e}),y.jsx(s0,{})]})}function OXe(e){const{enableElementDetails:r,enableReadOnly:n,enableCompareWithLatest:o}=sr(),a=o&&tz(e);return y.jsxs(e0,{className:a?ez:void 0,nodeProps:e,children:[o&&y.jsx(bm,{nodeProps:e}),y.jsx(t0,{...e}),y.jsx($ee,{...e}),r&&y.jsx(Dee,{...e}),!n&&y.jsx(TXe,{...e}),y.jsx(s0,{})]})}function IXe(e){const{enableCompareWithLatest:r}=sr(),n=r&&tz(e);return y.jsxs(e0,{className:n?ez:void 0,nodeProps:e,children:[r&&y.jsx(bm,{nodeProps:e}),y.jsx(t0,{...e}),y.jsx(s0,{})]})}const LXe={left:Ue.Left,right:Ue.Right,top:Ue.Top,bottom:Ue.Bottom},FXe=({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:LXe[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)"}})]}),VXe=e=>Kn(e.modelFqn);function qXe(e){const{enableElementDetails:r,enableCompareWithLatest:n}=sr(),o=e.data,{id:a,positionAbsoluteY:i,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-i,zIndex:-1,pointerEvents:"none"}}),y.jsxs(im,{nodeProps:e,children:[n&&y.jsx(bm,{nodeProps:e}),y.jsx(lm,{...e}),y.jsx(sl,{...e}),VXe(o)&&y.jsxs(y.Fragment,{children:[y.jsx(Cee,{...e,data:o}),r&&y.jsx(J$,{id:a,data:o})]})]}),c.map(d=>y.jsx(FXe,{port:d,data:e.data},d.id))]})}function HXe(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 _p={ElementNode:NXe,DeploymentNode:PXe,CompoundElementNode:BXe,CompoundDeploymentNode:OXe,ViewGroupNode:IXe,SequenceActorNode:qXe,SequenceParallelArea:HXe},Mee={RelationshipEdge:Eee,SequenceStepEdge:kXe};var Nee=Symbol.for("immer-nothing"),Pee=Symbol.for("immer-draftable"),Ra=Symbol.for("immer-state");function ul(e,...r){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var c0=Object.getPrototypeOf;function xm(e){return!!e&&!!e[Ra]}function Sp(e){return e?Oee(e)||Array.isArray(e)||!!e[Pee]||!!e.constructor?.[Pee]||d0(e)||j2(e):!1}var UXe=Object.prototype.constructor.toString(),Bee=new WeakMap;function Oee(e){if(!e||typeof e!="object")return!1;const r=Object.getPrototypeOf(e);if(r===null||r===Object.prototype)return!0;const n=Object.hasOwnProperty.call(r,"constructor")&&r.constructor;if(n===Object)return!0;if(typeof n!="function")return!1;let o=Bee.get(n);return o===void 0&&(o=Function.toString.call(n),Bee.set(n,o)),o===UXe}function z2(e,r,n=!0){R2(e)===0?(n?Reflect.ownKeys(e):Object.keys(e)).forEach(o=>{r(o,e[o],e)}):e.forEach((o,a)=>r(a,o,e))}function R2(e){const r=e[Ra];return r?r.type_:Array.isArray(e)?1:d0(e)?2:j2(e)?3:0}function rz(e,r){return R2(e)===2?e.has(r):Object.prototype.hasOwnProperty.call(e,r)}function Iee(e,r,n){const o=R2(e);o===2?e.set(r,n):o===3?e.add(n):e[r]=n}function WXe(e,r){return e===r?e!==0||1/e===1/r:e!==e&&r!==r}function d0(e){return e instanceof Map}function j2(e){return e instanceof Set}function Ep(e){return e.copy_||e.base_}function nz(e,r){if(d0(e))return new Map(e);if(j2(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const n=Oee(e);if(r===!0||r==="class_only"&&!n){const o=Object.getOwnPropertyDescriptors(e);delete o[Ra];let a=Reflect.ownKeys(o);for(let i=0;i1&&Object.defineProperties(e,{set:T2,add:T2,clear:T2,delete:T2}),Object.freeze(e),r&&Object.values(e).forEach(n=>oz(n,!0))),e}function GXe(){ul(2)}var T2={value:GXe};function A2(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var YXe={};function Cp(e){const r=YXe[e];return r||ul(0,e),r}var u0;function Lee(){return u0}function XXe(e,r){return{drafts_:[],parent_:e,immer_:r,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function Fee(e,r){r&&(Cp("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=r)}function az(e){iz(e),e.drafts_.forEach(ZXe),e.drafts_=null}function iz(e){e===u0&&(u0=e.parent_)}function Vee(e){return u0=XXe(u0,e)}function ZXe(e){const r=e[Ra];r.type_===0||r.type_===1?r.revoke_():r.revoked_=!0}function qee(e,r){r.unfinalizedDrafts_=r.drafts_.length;const n=r.drafts_[0];return e!==void 0&&e!==n?(n[Ra].modified_&&(az(r),ul(4)),Sp(e)&&(e=D2(r,e),r.parent_||M2(r,e)),r.patches_&&Cp("Patches").generateReplacementPatches_(n[Ra].base_,e,r.patches_,r.inversePatches_)):e=D2(r,n,[]),az(r),r.patches_&&r.patchListener_(r.patches_,r.inversePatches_),e!==Nee?e:void 0}function D2(e,r,n){if(A2(r))return r;const o=e.immer_.shouldUseStrictIteration(),a=r[Ra];if(!a)return z2(r,(i,l)=>Hee(e,a,r,i,l,n),o),r;if(a.scope_!==e)return r;if(!a.modified_)return M2(e,a.base_,!0),a.base_;if(!a.finalized_){a.finalized_=!0,a.scope_.unfinalizedDrafts_--;const i=a.copy_;let l=i,s=!1;a.type_===3&&(l=new Set(i),i.clear(),s=!0),z2(l,(c,d)=>Hee(e,a,i,c,d,n,s),o),M2(e,i,!1),n&&e.patches_&&Cp("Patches").generatePatches_(a,n,e.patches_,e.inversePatches_)}return a.copy_}function Hee(e,r,n,o,a,i,l){if(a==null||typeof a!="object"&&!l)return;const s=A2(a);if(!(s&&!l)){if(xm(a)){const c=i&&r&&r.type_!==3&&!rz(r.assigned_,o)?i.concat(o):void 0,d=D2(e,a,c);if(Iee(n,o,d),xm(d))e.canAutoFreeze_=!1;else return}else l&&n.add(a);if(Sp(a)&&!s){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||r&&r.base_&&r.base_[o]===a&&s)return;D2(e,a),(!r||!r.scope_.parent_)&&typeof o!="symbol"&&(d0(n)?n.has(o):Object.prototype.propertyIsEnumerable.call(n,o))&&M2(e,a)}}}function M2(e,r,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&oz(r,n)}function KXe(e,r){const n=Array.isArray(e),o={type_:n?1:0,scope_:r?r.scope_:Lee(),modified_:!1,finalized_:!1,assigned_:{},parent_:r,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let a=o,i=lz;n&&(a=[o],i=p0);const{revoke:l,proxy:s}=Proxy.revocable(a,i);return o.draft_=s,o.revoke_=l,s}var lz={get(e,r){if(r===Ra)return e;const n=Ep(e);if(!rz(n,r))return QXe(e,n,r);const o=n[r];return e.finalized_||!Sp(o)?o:o===sz(e.base_,r)?(dz(e),e.copy_[r]=uz(o,e)):o},has(e,r){return r in Ep(e)},ownKeys(e){return Reflect.ownKeys(Ep(e))},set(e,r,n){const o=Uee(Ep(e),r);if(o?.set)return o.set.call(e.draft_,n),!0;if(!e.modified_){const a=sz(Ep(e),r),i=a?.[Ra];if(i&&i.base_===n)return e.copy_[r]=n,e.assigned_[r]=!1,!0;if(WXe(n,a)&&(n!==void 0||rz(e.base_,r)))return!0;dz(e),cz(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_[r]=!0),!0},deleteProperty(e,r){return sz(e.base_,r)!==void 0||r in e.base_?(e.assigned_[r]=!1,dz(e),cz(e)):delete e.assigned_[r],e.copy_&&delete e.copy_[r],!0},getOwnPropertyDescriptor(e,r){const n=Ep(e),o=Reflect.getOwnPropertyDescriptor(n,r);return o&&{writable:!0,configurable:e.type_!==1||r!=="length",enumerable:o.enumerable,value:n[r]}},defineProperty(){ul(11)},getPrototypeOf(e){return c0(e.base_)},setPrototypeOf(){ul(12)}},p0={};z2(lz,(e,r)=>{p0[e]=function(){return arguments[0]=arguments[0][0],r.apply(this,arguments)}}),p0.deleteProperty=function(e,r){return p0.set.call(this,e,r,void 0)},p0.set=function(e,r,n){return lz.set.call(this,e[0],r,n,e[0])};function sz(e,r){const n=e[Ra];return(n?Ep(n):e)[r]}function QXe(e,r,n){const o=Uee(r,n);return o?"value"in o?o.value:o.get?.call(e.draft_):void 0}function Uee(e,r){if(!(r in e))return;let n=c0(e);for(;n;){const o=Object.getOwnPropertyDescriptor(n,r);if(o)return o;n=c0(n)}}function cz(e){e.modified_||(e.modified_=!0,e.parent_&&cz(e.parent_))}function dz(e){e.copy_||(e.copy_=nz(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var JXe=class{constructor(r){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(n,o,a)=>{if(typeof n=="function"&&typeof o!="function"){const l=o;o=n;const s=this;return function(c=l,...d){return s.produce(c,u=>o.call(this,u,...d))}}typeof o!="function"&&ul(6),a!==void 0&&typeof a!="function"&&ul(7);let i;if(Sp(n)){const l=Vee(this),s=uz(n,void 0);let c=!0;try{i=o(s),c=!1}finally{c?az(l):iz(l)}return Fee(l,a),qee(i,l)}else if(!n||typeof n!="object"){if(i=o(n),i===void 0&&(i=n),i===Nee&&(i=void 0),this.autoFreeze_&&oz(i,!0),a){const l=[],s=[];Cp("Patches").generateReplacementPatches_(n,i,l,s),a(l,s)}return i}else ul(1,n)},this.produceWithPatches=(n,o)=>{if(typeof n=="function")return(l,...s)=>this.produceWithPatches(l,c=>n(c,...s));let a,i;return[this.produce(n,o,(l,s)=>{a=l,i=s}),a,i]},typeof r?.autoFreeze=="boolean"&&this.setAutoFreeze(r.autoFreeze),typeof r?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(r.useStrictShallowCopy),typeof r?.useStrictIteration=="boolean"&&this.setUseStrictIteration(r.useStrictIteration)}createDraft(r){Sp(r)||ul(8),xm(r)&&(r=eZe(r));const n=Vee(this),o=uz(r,void 0);return o[Ra].isManual_=!0,iz(n),o}finishDraft(r,n){const o=r&&r[Ra];(!o||!o.isManual_)&&ul(9);const{scope_:a}=o;return Fee(a,n),qee(void 0,a)}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 i=n[o];if(i.path.length===0&&i.op==="replace"){r=i.value;break}}o>-1&&(n=n.slice(o+1));const a=Cp("Patches").applyPatches_;return xm(r)?a(r,n):this.produce(r,i=>a(i,n))}};function uz(e,r){const n=d0(e)?Cp("MapSet").proxyMap_(e,r):j2(e)?Cp("MapSet").proxySet_(e,r):KXe(e,r);return(r?r.scope_:Lee()).drafts_.push(n),n}function eZe(e){return xm(e)||ul(10,e),Wee(e)}function Wee(e){if(!Sp(e)||A2(e))return e;const r=e[Ra];let n,o=!0;if(r){if(!r.modified_)return r.base_;r.finalized_=!0,n=nz(e,r.scope_.immer_.useStrictShallowCopy_),o=r.scope_.immer_.shouldUseStrictIteration()}else n=nz(e,!0);return z2(n,(a,i)=>{Iee(n,a,Wee(i))},o),r&&(r.finalized_=!1),n}var pz=new JXe,as=pz.produce,Gee=pz.setAutoFreeze.bind(pz);class wm{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:a}=_o(r);this.maxX=this.minX+Math.ceil(o),this.maxY=this.minY+Math.ceil(a),this.initialX=this.positionAbsolute.x,this.initialY=this.positionAbsolute.y,n&&n.children.push(this)}}class hz extends wm{constructor(r,n=null){super(r,n),this.parent=n}children=[]}class tZe extends wm{constructor(r,n=null){super(r,n),this.parent=n}}function rZe(e,r){const n=e.data.controlPoints??null;return o=>{const a=mt(o.get(e.id),`Edge ${e.id} not found`),{x:i,y:l}=r.diff;return i===0&&l===0?{id:e.id,type:"replace",item:as(a,s=>{s.data.points=e.data.points,s.data.controlPoints=n,s.data.labelBBox=e.data.labelBBox})}:{id:e.id,type:"replace",item:as(a,s=>{s.data.points=un(e.data.points,c=>[c[0]+i,c[1]+l]),n&&(s.data.controlPoints=n.map(c=>({x:c.x+i,y:c.y+l}))),e.data.labelBBox&&(s.data.labelBBox={x:e.data.labelBBox.x+i,y:e.data.labelBBox.y+l,width:e.data.labelBBox.width,height:e.data.labelBBox.height})})}}}function nZe(e,r,n,o){const a=e.data.controlPoints??q3(e.data.points),i=Qr(ko.center(n)),l=Qr(ko.center(o)),s=i.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=Qa(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=a.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 Yee(e,r){const{parentLookup:n,nodeLookup:o,edges:a}=e.getState(),i=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 z=new Set;for(const j of $.values()){z.add(j.id);for(const A of s.get(j.id))z.add(A)}return z});if(xn(r,2)){const _=Jr(r,PV($=>[...s.get($)]),Qx(),$=>FEe(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 z=new hz(_,$);i.set(_.id,z),n.get(_.id)?.forEach(j=>{d.push({xynode:j,parent:z})});continue}i.set(_.id,new tZe(_,$))}const u=[...i.values()],p=new Map,f=_=>i.get(_)??l.get(_).map($=>i.get($)).find($=>!!$)??null,g=new Set(r.flatMap(_=>[_,...s.get(_)]));for(const _ of a){const $=g.has(_.source),z=g.has(_.target);if($&&z){let j=i.get(_.source)??i.get(_.target)??f(_.source)??f(_.target);j&&p.set(_,rZe(_,j));continue}if($!==z){const j=f($?_.source:_.target);if(!j)continue;const[A,R]=Jr([_.source,_.target],un(P=>mt(o.get(P),`Node ${P} not found`)),un(gC)),[T,O]=$?[A,R]:[R,A];p.set(_,nZe(_,j,T,O));continue}}function v(_){for(const $ of _){if(!($ instanceof hz))continue;v($.children);const z={minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};for(const j of $.children)z.minX=Math.min(z.minX,j.minX),z.minY=Math.min(z.minY,j.minY),z.maxX=Math.max(z.maxX,j.maxX),z.maxY=Math.max(z.maxY,j.maxY);$.minX=z.minX-wm.LeftPadding,$.minY=z.minY-wm.TopPadding,$.maxX=z.maxX+wm.RightPadding,$.maxY=z.maxY+wm.BottomPadding}}const w=[...p.values()];function x(){v(u);const _=u.reduce((R,T)=>(R.push({id:T.id,type:"position",dragging:!1,position:T.position,positionAbsolute:T.positionAbsolute}),T instanceof hz&&R.push({id:T.id,type:"dimensions",setAttributes:!0,dimensions:T.dimensions}),R),[]),{edgeLookup:$,triggerNodeChanges:z,triggerEdgeChanges:j}=e.getState();z(_);const A=w.map(R=>R($));A.length>0&&j(A)}let k=null;function C(){u.length!==0&&(k??=requestAnimationFrame(()=>{k=null;for(const _ of r){const $=i.get(_);if(!$){console.warn(`Rect not found for id ${_}`);continue}const z=o.get(_);if(!z){console.warn(`Node not found for id ${_}`);continue}$.positionAbsolute=z.internals.positionAbsolute}x()}))}return{rects:i,onMove:C,updateXYFlow:x}}function oZe(){const e=hC(),r=Nt(),n=S.useRef(void 0);return S.useMemo(()=>({onNodeDragStart:(o,a)=>{r.startEditing("node");const{nodeLookup:i}=e.getState(),l=Jr(Array.from(i.values()),Wu(s=>s.dragging===!0||s.id===a.id||s.selected===!0),un(s=>s.id));xn(l,1)&&(n.current=Yee(e,l))},onNodeDrag:o=>{n.current?.onMove()},onNodeDragStop:o=>{const a=n.current?GO(n.current.rects.values(),i=>i.isMoved):!1;r.stopEditing(a),n.current=void 0}}),[e,r])}const aZe={relationship:Mee.RelationshipEdge,"seq-step":Mee.SequenceStepEdge},jd={element:ac(_p.ElementNode),deployment:ac(_p.DeploymentNode),"compound-element":ac(_p.CompoundElementNode),"compound-deployment":ac(_p.CompoundDeploymentNode),"view-group":ac(_p.ViewGroupNode),"seq-actor":ac(_p.SequenceActorNode),"seq-parallel":ac(_p.SequenceParallelArea)};function iZe(e){return!e||Gu(e)?jd:{element:e.element??jd.element,deployment:e.deployment??jd.deployment,"compound-element":e.compoundElement??jd["compound-element"],"compound-deployment":e.compoundDeployment??jd["compound-deployment"],"view-group":e.viewGroup??jd["view-group"],"seq-actor":e.seqActor??jd["seq-actor"],"seq-parallel":e.seqParallel??jd["seq-parallel"]}}const lZe=({context:e,children:r})=>{const{enableReadOnly:n}=b2(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}}}},sZe=(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&&Or(e.fitViewPadding,r.fitViewPadding)&&Or(e.nodes,r.nodes)&&Or(e.edges,r.edges)&&Or(e.viewport??null,r.viewport??null);function cZe({background:e="dots",reactFlowProps:r={},children:n,renderNodes:o}){const a=Nt();let{enableReadOnly:i,initialized:l,nodes:s,edges:c,enableFitView:d,nodesDraggable:u,nodesSelectable:p,...f}=NS(lZe,sZe);const{onNodeContextMenu:g,onCanvasContextMenu:v,onEdgeContextMenu:w,onNodeClick:x,onEdgeClick:k,onCanvasClick:C,onCanvasDblClick:_}=um(),$=eMe(),z=oZe(),j=rMe(),A=zq(()=>{j.set(!0)},$?120:400),R=gf(()=>{A.clear(),j.set(!1)},$?350:200),T=it(H=>{H&&(j.get()||A.start(),R())}),O=it((H,M)=>{A.clear(),a.send({type:"xyflow.viewportMoved",viewport:M,manually:!!H})}),P=it(()=>{a.send({type:"xyflow.resized"})}),L=_I(()=>iZe(o),[o],mK);return Ed(()=>{console.warn("renderNodes changed - this might degrade performance")},[L]),y.jsx(kC,{nodes:s,edges:c,className:Ge(l?"initialized":"not-initialized"),nodeTypes:L,edgeTypes:aZe,onNodesChange:it(H=>{a.send({type:"xyflow.applyNodeChanges",changes:H})}),onEdgesChange:it(H=>{a.send({type:"xyflow.applyEdgeChanges",changes:H})}),background:l?e:"transparent",fitView:!1,onNodeClick:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.nodeClick",node:M}),x?.(a.findDiagramNode(M.id),H)}),onEdgeClick:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.edgeClick",edge:M}),k?.(a.findDiagramEdge(M.id),H)}),onEdgeDoubleClick:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.edgeDoubleClick",edge:M})}),onPaneClick:it(H=>{H.stopPropagation(),a.send({type:"xyflow.paneClick"}),C?.(H)}),onDoubleClick:it(H=>{H.stopPropagation(),H.preventDefault(),a.send({type:"xyflow.paneDblClick"}),_?.(H)}),onNodeMouseEnter:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.nodeMouseEnter",node:M})}),onNodeMouseLeave:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.nodeMouseLeave",node:M})}),onEdgeMouseEnter:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.edgeMouseEnter",edge:M,event:H})}),onEdgeMouseLeave:it((H,M)=>{H.stopPropagation(),a.send({type:"xyflow.edgeMouseLeave",edge:M,event:H})}),onMove:T,onMoveEnd:O,onInit:it(H=>{a.send({type:"xyflow.init",instance:H})}),onNodeContextMenu:it((H,M)=>{const V=mt(a.findDiagramNode(M.id),`diagramNode ${M.id} not found`);g?.(V,H)}),onEdgeContextMenu:it((H,M)=>{const V=mt(a.findDiagramEdge(M.id),`diagramEdge ${M.id} not found`);w?.(V,H)}),...v&&{onPaneContextMenu:v},...d&&{onViewportResize:P},nodesDraggable:u,nodesSelectable:p,elevateEdgesOnSelect:!i,...u&&z,...f,...r,children:n})}function dZe(e,r){try{return Gee(!1),uZe(e,r)}finally{Gee(!0)}}const Xee=e=>H1(e.parent);function uZe(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,a=u=>!n.has(typeof u=="string"?u:u.id),i=u=>o.has(u.source)&&o.has(u.target)&&a(u.source)&&a(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,hZe({latest:u,manual:p})]:(o.add(u.id),[u.id,fz(u)])}));if(o.size===l.size)return as(r,u=>{u._layout="manual",u.nodes=[...l.values()],u.edges=r.edges.map(fz),delete u.drifts});n.size>0&&pZe(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 fZe({latest:u,manual:g});if(i(u))return fz(u);const v=l.get(u.source),w=l.get(u.target);return mZe(u,v,w)}),d=ko.merge(...s.filter(Xee));return as(r,u=>{u._layout="manual",u.nodes=s,u.edges=c,u.bounds=d,delete u.drifts})}const km={Left:42,Right:42,Top:60,Bottom:42};function pZe(e){function r(n){const o=mt(e.get(n),`Node ${n} not found`);if(o.children.length===0)return o;const a=[];for(const l of o.children)a.push(r(l));const i=ko.merge(...a);return o.x=i.x-km.Left,o.y=i.y-km.Top,o.width=i.width+km.Left+km.Right,o.height=i.height+km.Top+km.Bottom,o}for(const n of e.values())!Xee(n)||n.children.length===0||r(n.id)}function hZe({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 fZe(e){const{manual:r,latest:n}=e;return as(n,o=>{r.controlPoints?o.controlPoints=r.controlPoints:delete o.controlPoints,o.points=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 fz(e){if("drifts"in e&&e.drifts!==null){const r={...e};return r.drifts=null,r}return e}function mZe(e,r,n){const o=gZe(r,n),a=o[0];return as(e,i=>{i.controlPoints=o,e.labelBBox&&(i.labelBBox.x=a.x,i.labelBBox.y=a.y),delete i.drifts})}function Zee(e,r,n){const o=e.width/2/n.x,a=e.height/2/n.y,i=Math.min(Math.abs(o),Math.abs(a));return Qr(n).multiply(i).add(r)}function gZe(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 a=o.subtract(n),i=Zee(e,n,a),l=Zee(r,o,a.multiply(-1)).subtract(i);return[i.add(l.multiply(.4)).round().toObject(),i.add(l.multiply(.6)).round().toObject()]}const yZe=S.createContext(null);function Kee(){return S.useContext(yZe)}function vZe(e){const r=Kee(),n=it(async({input:{viewId:a,current:i}})=>{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([i??Promise.resolve().then(()=>r.fetchView(a,"manual")),Promise.resolve().then(()=>r.fetchView(a,"auto"))]).catch(c=>(console.error("Failed to fetch views for applying latest to manual layout",c),Promise.reject(c)));return{updated:dZe(l,s)}}),o=it(async({input:a})=>{if(!r)return console.error("No editor port available for executing change"),Promise.reject(new Error("No editor port"));for(const i of a.changes)await Promise.resolve().then(()=>r.handleChange(e,i)).catch(l=>(console.error("Failed to execute change",{change:i,err:l}),Promise.reject(l)));return{}});return TJ.provide({actors:{applyLatest:by(n),executeChange:by(o)}})}function Qee(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=Rr(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=Rr(e.current.system).editorActorRef;He(n,"No editor actor found in diagram actor system"),n.send({type:"edit.finish",wasChanged:r})},undoEditing:()=>{const r=Rr(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=mJ(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=>pm(e.current.getSnapshot().context,r),findEdge:r=>e.current.getSnapshot().context.xyedges.find(n=>n.data.id===r)??null,findDiagramEdge:r=>T$(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 mz(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 a=y2(e.xynodes,r.xynodes),i=o?I$(e.xyedges,r.xyedges):r.xyedges;return{xynodes:a,xyedges:i,view:n}}function bZe(e){const{xynodes:r,xyedges:n,focusedNode:o}=e;if(!o)return null;const a=new Set([o]),i=n.map(l=>l.source===o||l.target===o?(a.add(l.source),a.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,!a.has(l.id))),xyedges:i}}function xZe({context:e,event:r}){return ht(r,"update.nodeData"),{xynodes:e.xynodes.map(n=>{if(n.id!==r.nodeId)return n;const o=qV(n.data,r.data);return tt(o,n.data)?n:{...n,data:o}})}}function wZe({context:e,event:r}){return ht(r,"update.edgeData"),{xyedges:e.xyedges.map(n=>{if(n.id!==r.edgeId)return n;const o=qV(n.data,r.data);return tt(o,n.data)?n:{...n,data:o}})}}function Jee(e,r,n){const o=_o(e),a=o.width/2/n.x,i=o.height/2/n.y,l=Math.min(Math.abs(a),Math.abs(i));return Qr(n).multiply(l).add(r)}function ete(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`),a=Qr(yC(n)),i=Qr(yC(o));if(n===o){const d=Qr(0,n.height||0).multiply(-.5).add(a);return[d.add(Qr(-32,-80)).round().toObject(),d.add(Qr(32,-80)).round().toObject()]}const l=i.subtract(a),s=Jee(n,a,l),c=Jee(o,i,l.multiply(-1)).subtract(s);return[s.add(c.multiply(.4)).round().toObject(),s.add(c.multiply(.6)).round().toObject()]}function kZe(e){const{view:r}=e,n=[],o=[],a=new Map,i=I_.from(r.nodes.reduce((u,p)=>(a.set(p.id,p),p.parent||u.push({node:p,parent:null}),u),[]));let l=u=>!0;if(e.where)try{const u=zu(e.where);l=p=>u({...WV(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(a.get(u),`Node not found: ${u}`);let d;for(;d=i.dequeue();){const{node:u,parent:p}=d,f=xn(u.children,1)||u.kind==d1;if(f)for(const $ of u.children)i.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?oc.Compound:oc.Element,style:{width:u.width,height:u.height},initialWidth:u.width,initialHeight:u.height,hidden:u.kind!==d1&&!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===d1){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:oc.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 tte={parallel:1,actor:10},N2={default:"gray",active:"amber"};function _Ze(e){const{actors:r,steps:n,compounds:o,parallelAreas:a,bounds:i}=e.sequenceLayout,l=[],s=[],c=d=>mt(e.nodes.find(u=>u.id===d));for(const d of o)l.push(SZe(d,c(d.origin),e));for(const d of a)l.push(EZe(d,e));for(const d of r)l.push(CZe(d,c(d.id),i,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($Ze(d,u))}return{bounds:i,xynodes:l,xyedges:s}}function SZe({id:e,x:r,y:n,width:o,height:a,depth:i},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:i,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:a,initialHeight:a}}function EZe({parallelPrefix:e,x:r,y:n,width:o,height:a},i){return{id:`seq-parallel-${e}`,type:"seq-parallel",data:{id:`seq-parallel-${e}`,title:"PARALLEL",technology:null,color:N2.default,shape:"rectangle",style:{},tags:[],x:r,y:n,level:0,icon:null,width:o,height:a,description:null,viewId:i.id,parallelPrefix:e,drifts:null},zIndex:tte.parallel,position:{x:r,y:n},draggable:!1,deletable:!1,selectable:!1,focusable:!1,style:{pointerEvents:"none"},width:o,initialWidth:o,height:a,initialHeight:a}}function CZe({id:e,x:r,y:n,width:o,height:a,ports:i},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:a,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:i,drifts:l.drifts??null},deletable:!1,selectable:!0,zIndex:tte.actor,position:{x:r,y:n},width:o,initialWidth:o,height:a,initialHeight:a}}function $Ze({id:e,labelBBox:r,sourceHandle:n,targetHandle:o},a){return{id:e,type:"seq-step",data:{id:e,label:a.label,technology:a.technology,notes:a.notes??null,navigateTo:a.navigateTo,controlPoints:null,labelBBox:{x:0,y:0,width:r?.width??a.labelBBox?.width??32,height:r?.height??a.labelBBox?.height??32},labelXY:null,points:a.points,color:a.color,line:a.line,dir:"forward",head:a.head??"normal",tail:a.tail??"none",astPath:a.astPath,drifts:a.drifts??null},selectable:!0,focusable:!1,zIndex:20,interactionWidth:40,source:a.source,sourceHandle:n,target:a.target,targetHandle:o}}function rte({dynamicViewVariant:e,...r}){const n=r.view,o=n._type==="dynamic",{bounds:a,xynodes:i,xyedges:l}=o&&e==="sequence"?_Ze(n):kZe(r);return o&&n.variant!==e?{view:{...n,bounds:a,variant:e},xynodes:i,xyedges:l}:{view:a===n.bounds?n:{...n,bounds:a},xynodes:i,xyedges:l}}class nte{}class _m extends nte{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 zZe extends nte{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,Kx(i=>i[this.primaryAxisCoord])),o=this.getLayoutRect(n),a=this.getLayers(n);this.layout=this.buildLayout(a,o,n)}getLayoutRect(r){const n=Math.min(...r.map(l=>l.x)),o=Math.min(...r.map(l=>l.y)),a=Math.max(...r.map(l=>l.x+l.width)),i=Math.max(...r.map(l=>l.y+l.height));return{x:n,y:o,width:a-n,height:i-o}}getLayers(r){const n=[];let o=0,a=null;for(let i of r)if(a&&i[this.primaryAxisCoord]i.nodes.sort((l,s)=>l[this.secondaryAxisCoord]-s[this.secondaryAxisCoord])),n}buildLayout(r,n,o){const a=new Map(o.map(v=>[v.id,v])),i=[],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,a,null);d.layout=p,i.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,a,g),i.push(...w.layout.nodePositions),g=w.layout.refLayer??w}return new Map(i)}buildLayerLayout(r,n,o,a,i){let l=this.scoreLayout(this.spaceAround(r,n,o),a);if(r.nodes.length!=1){const s=this.scoreLayout(this.spaceBetween(r,n,o),a);l=s[0]=r.nodes.length){const s=this.scoreLayout(this.placeInGaps(r,o,i),a);l=s[0]=r.nodes.length){const s=this.scoreLayout(this.placeInCells(r,o,i),a);l=s[0]c[this.secondaryAxisCoord]))l.set(s.id,{[this.secondaryAxisCoord]:i,[this.primaryAxisCoord]:o}),i+=s[this.secondaryAxisDimension]+a;return{nodePositions:l,refLayer:null}}placeInGaps(r,n,o){const a=new Map,i=r.nodes,l=this.getGapsPositions(o);let s=0;for(let c=0,d=i[c];c{const i=n.get(o);return He(i,`Could not find original rect for node ${o}`),[WV(i,["x","y"]),a]}),un(([o,a])=>Math.abs(o[this.secondaryAxisCoord]-a[this.secondaryAxisCoord])),Zx((o,a)=>o+a,0)),r]}getGapsPositions(r){const n=[],{layout:o,nodes:a}=r;He(o,"Layout of the layer must be computed before calling getGapsPositions");for(let i=1;iMath.min(...r.map(n=>n.x)),(r,n)=>Math.floor(r),"x");case"Top":return new _m(r=>Math.min(...r.map(n=>n.y)),(r,n)=>Math.floor(r),"y");case"Right":return new _m(r=>Math.max(...r.map(n=>n.x+n.width)),(r,n)=>Math.floor(r-n.width),"x");case"Bottom":return new _m(r=>Math.max(...r.map(n=>n.y+n.height)),(r,n)=>Math.floor(r-n.height),"y");case"Center":return new _m(r=>Math.min(...r.map(n=>n.x+n.width/2)),(r,n)=>Math.floor(r-n.width/2),"x");case"Middle":return new _m(r=>Math.min(...r.map(n=>n.y+n.height/2)),(r,n)=>Math.floor(r-n.height/2),"y")}}function ote(e){const{width:r,height:n}=_o(e);return{...e.internals.positionAbsolute,id:e.id,width:r,height:n}}function jZe(e){switch(e){case"Left":case"Right":case"Top":case"Bottom":case"Center":case"Middle":return RZe(e);case"Column":case"Row":return new zZe(e);default:Xo(e)}}const h0=e=>Qe.createAction(({context:r,event:n})=>{let o,a;e?(o=e.viewport,a=e.duration):(ht(n,"xyflow.setViewport"),o=n.viewport,a=n.duration),a=a??400;const{panZoom:i}=mt(r.xystore).getState(),l=a>0?{duration:a,interpolate:"smooth"}:void 0;i?.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})})}),P2=e=>Qe.enqueueActions(({context:r,event:n,enqueue:o})=>{let a=r.view.bounds,i;e?(a=e.bounds??r.view.bounds,i=e.duration):n.type==="xyflow.fitDiagram"&&(a=n.bounds??r.view.bounds,i=n.duration,o.assign({viewportChangedManually:!1})),i??=450;const{width:l,height:s,panZoom:c,transform:d}=mt(r.xystore).getState(),u=Math.max(1,d[2]),p=qs(a,l,s,yi,u,r.fitViewPadding);p.x=Math.round(p.x),p.y=Math.round(p.y);const f=i>0?{duration:i,interpolate:"smooth"}:void 0;c?.setViewport(p,f).catch(g=>{console.error("Error during fitDiagram panZoom setViewport",{err:g})})}),f0=()=>Qe.createAction(({context:e})=>{const r=!!e.activeWalkthrough&&e.dynamicViewVariant==="sequence",{bounds:n,duration:o=450}=r?GUe({context:e}):UUe({context:e}),{width:a,height:i,panZoom:l,transform:s}=mt(e.xystore).getState(),c=Math.max(1,s[2]),d=qs(n,a,i,yi,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})})}),gz=30,ate=e=>{const{delay:r=gz,...n}=e??{};return Qe.raise({type:"xyflow.setViewport",...n},{id:"fitDiagram",delay:r})},cc=()=>Qe.cancel("fitDiagram"),B2=e=>{const{delay:r=gz,...n}=e??{};return Qe.raise({type:"xyflow.fitDiagram",...n},{id:"fitDiagram",delay:r})},TZe=e=>Qe.raise(({context:r})=>({type:"update.view",view:r.view}),{delay:gz}),yz=e=>Qe.assign(({context:r})=>({viewportBefore:{wasChangedManually:r.viewportChangedManually,value:{...r.viewport}}})),vz=e=>Qe.enqueueActions(({enqueue:r,context:{viewportBefore:n}})=>{r(cc()),n?(r.assign({viewportChangedManually:n.wasChangedManually,viewportBefore:null}),e&&e.delay===0?r(h0({viewport:n.value,...e})):r(ate({viewport:n.value,...e}))):e&&e.delay===0?r(P2({...e})):r(B2({...e}))}),ite=()=>Qe.assign(({context:e})=>({toggledFeatures:{...e.toggledFeatures,enableCompareWithLatest:!1},viewportOnAutoLayout:null,viewportOnManualLayout:null})),AZe=()=>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 a=ete(n,o),i=a[0];return{...o,data:{...o.data,controlPoints:a,labelBBox:o.data.labelBBox?{...o.data.labelBBox,...i}:null,labelXY:null}}}return o})}}),$p=()=>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()}}}),O2=()=>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}}),Sm=()=>Qe.assign(()=>({lastClickedNode:null})),lte=()=>Qe.assign(({event:e})=>(ht(e,"update.features"),{features:{...e.features}})),DZe=()=>Qe.assign(({event:e})=>(ht(e,"update.inputs"),{...e.inputs})),ste=e=>Qe.assign(({context:r,event:n})=>{let o;ht(n,"update.view"),o="xynodes"in n?n:rte({dynamicViewVariant:r.dynamicViewVariant,view:n.view,where:r.where});const a=mz(r,o);let{lastClickedNode:i,focusedNode:l,activeWalkthrough:s}=r;if(i||l||s){const c=new Set(a.xynodes.map(u=>u.id));i&&!c.has(i.id)&&(i=null),l&&!c.has(l)&&(l=null);const d=s?.stepId;return d&&!a.xyedges.some(u=>u.id===d)&&(s=null),{...a,lastClickedNode:i,focusedNode:l,activeWalkthrough:s}}return a}),m0=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const n=bZe(e);n?r.assign(n):r.raise({type:"key.esc"})}),I2=()=>Qe.assign(({context:e})=>({xynodes:e.xynodes.map(tr.setDimmed(!1)),xyedges:e.xyedges.map(tr.setData({dimmed:!1,active:!1}))})),MZe=()=>Qe.assign(({event:e})=>(ht(e,"switch.dynamicViewVariant"),{dynamicViewVariant:e.variant})),NZe=e=>Qe.assign(({context:r,event:n})=>{let o=e?.node;return o||(ht(n,"xyflow.nodeMouseEnter"),o=n.node),{xynodes:r.xynodes.map(a=>a.id===o.id?tr.setHovered(a,!0):a)}}),PZe=e=>Qe.assign(({context:r,event:n})=>{let o=e?.node;return o||(ht(n,"xyflow.nodeMouseLeave"),o=n.node),{xynodes:r.xynodes.map(a=>a.id===o.id?tr.setHovered(a,!1):a)}}),bz=()=>Qe.emit(()=>({type:"paneClick"})),cte=e=>Qe.emit(({event:r})=>e?{type:"openSource",params:e}:(ht(r,"open.source"),{type:"openSource",params:r})),BZe=()=>Qe.emit(({context:e})=>(He(e.xyflow,"XYFlow instance not found"),{type:"initialized",instance:e.xyflow})),zp=()=>Qe.emit(({context:e,event:r})=>(ht(r,"xyflow.nodeClick"),{type:"nodeClick",node:mt(pm(e,r.node.id),`Node ${r.node.id} not found in diagram`),xynode:r.node})),xz=e=>Qe.emit(({context:r})=>({type:"navigateTo",viewId:e?.viewId??mt(r.lastOnNavigate,"Invalid state, lastOnNavigate is null").toView})),wz=()=>Qe.emit(({context:e,event:r})=>(ht(r,"xyflow.edgeClick"),{type:"edgeClick",edge:mt(T$(e,r.edge.id),`Edge ${r.edge.id} not found in diagram`),xyedge:r.edge})),dte=e=>Qe.enqueueActions(({event:r,enqueue:n})=>{let o=e;o||(ht(r,"trigger.change"),o=r.change),n.assign({viewportChangedManually:!0}),n.sendTo(Rr.editorActor,{type:"change",change:o})}),OZe=()=>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 a=n.view._layout;let i=a==="auto"?"manual":"auto";if(e.type==="emit.onLayoutTypeChange"&&(i=e.layoutType),a===i){console.warn("Ignoring layout type change event, layout type is already",a);return}if(n.toggledFeatures.enableCompareWithLatest===!0){a==="manual"&&i==="auto"&&Rr(r).editorActorRef?.send({type:"cancel"});const l=n.viewport;a==="auto"&&o.assign({viewportOnAutoLayout:l}),a==="manual"&&o.assign({viewportOnManualLayout:l})}o.emit({type:"onLayoutTypeChange",layoutType:i})}),IZe=e=>Qe.createAction(({context:r,event:n})=>{let o;ht(n,"layout.align"),o=n.mode;const a=mt(r.xystore,"xystore is not initialized"),{nodeLookup:i,parentLookup:l}=a.getState(),s=[...new Set(i.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=Yee(a,s),d=jZe(o),u=s.map(p=>({node:mt(i.get(p)),rect:mt(c.rects.get(p))}));d.computeLayout(u.map(({node:p})=>ote(p)));for(const{rect:p,node:f}of u)p.positionAbsolute={...p.positionAbsolute,...d.applyPosition(ote(f))};c.updateXYFlow()}),LZe=()=>Qe.assign(({context:e})=>{const{nodeLookup:r}=e.xystore.getState();return{xyedges:e.xyedges.map(n=>{if(!n.data.controlPoints)return n;const o=ete(r,n),a=o[0];return{...n,data:{...n.data,controlPoints:o,labelBBox:n.data.labelBBox?{...n.data.labelBBox,x:a.x,y:a.y}:null,labelXY:n.data.labelXY?a:null}}})}}),FZe=()=>Qe.assign(({context:e,event:r})=>{ht(r,"notations.highlight");const{notation:n,kind:o}=r,a=o?[o]:n.kinds,i=c=>c.notation===n.title&&c.shape===n.shape&&c.color===n.color&&a.includes(c.kind),l=e.xynodes.map(c=>{const d=pm(e,c.id),u=d&&i(d);return tr.setDimmed(c,u?!1:"immediate")}),s=e.xyedges.map(c=>tr.setDimmed(c,!0));return{xynodes:l,xyedges:s}}),VZe=()=>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))})),qZe=()=>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}}}),HZe=()=>Qe.sendTo(Rr.searchActor,{type:"close"}),UZe=()=>Qe.sendTo(Rr.overlaysActor,{type:"close.all"}),ute=()=>Qe.enqueueActions(({enqueue:e,system:r})=>{const n=Rr(r).editorActorRef;n&&e.stopChild(n)}),kz=()=>Qe.enqueueActions(({enqueue:e,context:r,system:n,check:o})=>{const a=o("enabled: Editor"),i=Rr(n).editorActorRef;if(!a&&i){e.stopChild(i);return}a&&!i&&e.spawnChild("editorActor",{id:"editor",systemId:"editor",input:{viewId:r.view.id},syncSnapshot:!0})}),_z=(e="node")=>Qe.sendTo(Rr.editorActor,{type:"edit.start",subject:e}),WZe=()=>Qe.sendTo(Rr.editorActor,{type:"synced"}),Sz=(e=!0)=>Qe.sendTo(Rr.editorActor,{type:"edit.finish",wasChanged:e}),pte=()=>Qe.sendTo(Rr.editorActor,{type:"cancel"}),hte=e=>"modelFqn"in e.data&&Kn(e.data.modelFqn),Ez=e=>Qe.enqueueActions(({context:r,event:n,enqueue:o})=>{let a=null,i,l;switch(!0){case n.type==="xyflow.nodeClick":{if(!hte(n.node)){console.warn("No modelFqn in clicked node data");return}l=n.node.data.modelFqn,i=n.node.data.id;break}case n.type==="open.elementDetails":{l=n.fqn,i=n.fromNode;break}default:{if(!r.lastClickedNode){console.warn("No last clicked node");return}i=r.lastClickedNode.id;const c=r.xynodes.find(d=>d.id===i);if(!c||!hte(c)){console.warn("No modelFqn in last clicked node");return}l=c.data.modelFqn;break}}const s=i?r.xystore.getState().nodeLookup.get(i):null;if(i&&s){const c=Vu(s),d=r.xyflow.getZoom(),u={...r.xyflow.flowToScreenPosition(c),width:c.width*d,height:c.height*d};a={node:i,clientRect:u}}o.sendTo(Rr.overlaysActor,{type:"open.elementDetails",subject:l,currentView:r.view,...a&&{initiatedFrom:a}})}),Cz=()=>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(Ez()):console.warn("ElementDetails feature is disabled");break}case"open.relationshipsBrowser":{n.sendTo(Rr.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(Rr.overlaysActor,{type:"open.relationshipDetails",viewId:e.view.id,...r.params});break}default:Xo(r)}}),L2=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{const n=e.focusedNode??e.lastClickedNode?.id;if(!n||!e.features.enableVscode)return;const o=pm(e,n);o&&(o.deploymentRef?r.raise({type:"open.source",deployment:o.deploymentRef}):o.modelRef&&r.raise({type:"open.source",element:o.modelRef}))}),fte=()=>Qe.enqueueActions(({enqueue:e,check:r,system:n})=>{const o=r("enabled: Overlays"),a=Rr(n).overlaysActorRef;if(o&&!a){e.spawnChild("overlaysActorLogic",{id:"overlays",systemId:"overlays"});return}!o&&a&&(e.sendTo(a,{type:"close.all"}),e.stopChild("overlays"))}),mte=()=>Qe.enqueueActions(({enqueue:e,context:{features:{enableSearch:r}},system:n})=>{const o=Rr(n).searchActorRef;if(r&&!o){e.spawnChild("searchActorLogic",{id:"search",systemId:"search"});return}!r&&o&&(e.sendTo(o,{type:"close"}),e.stopChild("search"))}),GZe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,"xyflow.edgeMouseEnter");let o=n.edge;e.assign({xyedges:r.xyedges.map(a=>a.id===n.edge.id?(o=tr.setHovered(a,!0),o):a)}),e.emit({type:"edgeMouseEnter",edge:o,event:n.event})}),YZe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,"xyflow.edgeMouseLeave");let o=n.edge;e.assign({xyedges:r.xyedges.map(a=>a.id===n.edge.id?(o=tr.setHovered(a,!1),o):a)}),e.emit({type:"edgeMouseLeave",edge:o,event:n.event})}),gte=()=>Qe.spawnChild("hotkeyActorLogic",{id:"hotkey"}),yte=()=>Qe.stopChild("hotkey"),vte=3e3,XZe=()=>Qe.enqueueActions(({context:e,enqueue:r})=>{e.autoUnfocusTimer&&vte>0&&r.raise({type:"focus.autoUnfocus"},{delay:vte,id:"autoUnfocusTimer"})}),ZZe=()=>Qe.cancel("autoUnfocusTimer"),KZe=()=>Qe.enqueueActions(({enqueue:e,context:r,event:n})=>{ht(n,["navigate.to","navigate.back","navigate.forward"]);const{view:o,focusedNode:a,activeWalkthrough:i,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=a,o._type==="dynamic"?(v.activeWalkthrough=i?.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(xz());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(xz({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(ste()),r.source==="editor")return;e(WZe());let a=!n.viewportChangedManually&&!n.focusedNode&&!n.activeWalkthrough;if(n.toggledFeatures.enableCompareWithLatest===!0&&n.view._layout!==o._layout){if(o._layout==="auto"&&n.viewportOnAutoLayout){e(h0({viewport:n.viewportOnAutoLayout,duration:0}));return}if(o._layout==="manual"&&n.viewportOnManualLayout){e(h0({viewport:n.viewportOnManualLayout,duration:0}));return}}a=a||o._type==="dynamic"&&n.view._type==="dynamic"&&o.variant!==n.view.variant,a=a||n.toggledFeatures.enableCompareWithLatest===!0&&!!o._layout&&n.view._layout!==o._layout,a&&(e(cc()),e(B2({bounds:r.view.bounds})))});var Vo={},zz={},bte;function xte(){if(bte)return zz;bte=1;var e=v2();function r(a,{machine:i,context:l},s,c){const d=(u,p)=>{if(typeof u=="string"){const f=e.resolveReferencedActor(i,u);if(!f)throw new Error(`Actor logic '${u}' not implemented in machine '${i.id}'`);const g=e.createActor(f,{id:p?.id,parent:a.self,syncSnapshot:p?.syncSnapshot,input:typeof p?.input=="function"?p.input({context:l,event:s,self:a.self}):p?.input,src:u,systemId:p?.systemId});return c[g.id]=g,g}else return e.createActor(u,{id:p?.id,parent:a.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,a.defer(()=>{f._processingStatus!==e.ProcessingStatus.Stopped&&f.start()}),f}}function n(a,i,l,s,{assignment:c}){if(!i.context)throw new Error("Cannot assign to undefined `context`. Ensure that `context` is defined in the machine config.");const d={},u={context:i.context,event:l.event,spawn:r(a,i,l.event,d),self:a.self,system:a.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({},i.context,p);return[e.cloneMachineSnapshot(i,{context:f,children:Object.keys(d).length?{...i.children,...d}:i.children}),void 0,void 0]}function o(a){function i(l,s){}return i.type="xstate.assign",i.assignment=a,i.resolve=n,i}return zz.assign=o,zz}var dc={},wte;function QZe(){if(wte)return dc;wte=1;var e=v2(),r=xte();function n(k,C,_,$,{event:z}){const j=typeof z=="function"?z(_,$):z;return[C,{event:j},void 0]}function o(k,{event:C}){k.defer(()=>k.emit(C))}function a(k){function C(_,$){}return C.type="xstate.emit",C.event=k,C.resolve=n,C.execute=o,C}let i=(function(k){return k.Parent="#_parent",k.Internal="#_internal",k})({});function l(k,C,_,$,{to:z,event:j,id:A,delay:R},T){const O=C.machine.implementations.delays;if(typeof j=="string")throw new Error(`Only event objects may be used with sendTo; use sendTo({ type: "${j}" }) instead`);const P=typeof j=="function"?j(_,$):j;let L;if(typeof R=="string"){const V=O&&O[R];L=typeof V=="function"?V(_,$):V}else L=typeof R=="function"?R(_,$):R;const H=typeof z=="function"?z(_,$):z;let M;if(typeof H=="string"){if(H===i.Parent?M=k.self._parent:H===i.Internal?M=k.self:H.startsWith("#_")?M=C.children[H.slice(2)]:M=T.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:z,id:j}=C;if(typeof z=="number"){k.system.scheduler.schedule(k.self,_,$,z,j);return}k.system._relay(k.self,_,$.type===e.XSTATE_ERROR?e.createErrorActorEvent(k.self.id,$.data):$)})}function d(k,C,_){function $(z,j){}return $.type="xstate.sendTo",$.to=k,$.event=C,$.id=_?.id,$.delay=_?.delay,$.resolve=l,$.retryResolve=s,$.execute=c,$}function u(k,C){return d(i.Parent,k,C)}function p(k,C){return d(k,({event:_})=>_,C)}function f(k,C,_,$,{collect:z}){const j=[],A=function(R){j.push(R)};return A.assign=(...R)=>{j.push(r.assign(...R))},A.cancel=(...R)=>{j.push(e.cancel(...R))},A.raise=(...R)=>{j.push(e.raise(...R))},A.sendTo=(...R)=>{j.push(d(...R))},A.sendParent=(...R)=>{j.push(u(...R))},A.spawnChild=(...R)=>{j.push(e.spawnChild(...R))},A.stopChild=(...R)=>{j.push(e.stopChild(...R))},A.emit=(...R)=>{j.push(a(...R))},z({context:_.context,event:_.event,enqueue:A,check:R=>e.evaluateGuard(R,C.context,_.event,C),self:k.self,system:k.system},$),[C,void 0,j]}function g(k){function C(_,$){}return C.type="xstate.enqueueActions",C.collect=k,C.resolve=f,C}function v(k,C,_,$,{value:z,label:j}){return[C,{value:typeof z=="function"?z(_,$):z,label:j},void 0]}function w({logger:k},{value:C,label:_}){_?k(_,C):k(C)}function x(k=({context:_,event:$})=>({context:_,event:$}),C){function _($,z){}return _.type="xstate.log",_.value=k,_.label=C,_.resolve=v,_.execute=w,_}return dc.SpecialTargets=i,dc.emit=a,dc.enqueueActions=g,dc.forwardTo=p,dc.log=x,dc.sendParent=u,dc.sendTo=d,dc}var kte;function JZe(){if(kte)return Vo;kte=1,Object.defineProperty(Vo,"__esModule",{value:!0});var e=xte(),r=v2(),n=QZe();return V$(),Vo.assign=e.assign,Vo.cancel=r.cancel,Vo.raise=r.raise,Vo.spawnChild=r.spawnChild,Vo.stop=r.stop,Vo.stopChild=r.stopChild,Vo.emit=n.emit,Vo.enqueueActions=n.enqueueActions,Vo.forwardTo=n.forwardTo,Vo.log=n.log,Vo.sendParent=n.sendParent,Vo.sendTo=n.sendTo,Vo}var fr=JZe();const eKe=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:[ste(),fr.assign(({context:e})=>({initialized:{...e.initialized,xydata:!0}}))],target:"isReady"}}}),tKe=Qe.createStateConfig({always:[{guard:"isReady",actions:[P2({duration:0}),fr.assign(({context:e})=>({navigationHistory:{currentIndex:0,history:[{viewId:e.view.id,viewport:{...e.xyflow.getViewport()},viewportChangedManually:!1}]}})),BZe()],target:"ready"},{target:"initializing"}]}),rKe=()=>Qe.assign(({context:e,event:r})=>{ht(r,"update.view");let{lastOnNavigate:n,navigationHistory:{currentIndex:o,history:a}}=e;const i=a[o];if(!i||i.viewId===r.view.id||n)return{};const l=o>0?mt(a[o-1]):null;if(l&&l.viewId===r.view.id)return{navigationHistory:{currentIndex:o-1,history:a},lastOnNavigate:null};const s=oA$(u)===c);if(d)return{lastOnNavigate:{fromView:e.view.id,toView:r.view.id,fromNode:d.id}}}return{}}),nKe=Qe.createStateConfig({id:Rn.navigating.slice(1),always:{target:Rn.idle,actions:[cc(),rKe(),ite(),ts(({enqueue:e,context:r,event:n})=>{ht(n,"update.view");const{xyflow:o,xystore:a,navigationHistory:{currentIndex:i,history:l}}=r,s="xynodes"in n?n:{...n,...rte({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})),zp()]}],"focus.node":{actions:[O2(),m0(),L2(),f0()]},"key.esc":{target:Rn.idle},"xyflow.paneClick":{actions:[Sm(),bz()],target:Rn.idle},"notations.unhighlight":{actions:m0()},"tag.unhighlight":{actions:m0()},"update.view":{guard:"is same view",actions:[$z(),m0()]}}}),aKe=Qe.createStateConfig({id:Rn.idle.slice(1),on:{"xyflow.nodeClick":[{guard:Rd.and(["enabled: Readonly","enabled: FocusMode","click: node has connections",Rd.or(["click: same node","click: selected node"])]),actions:[$p(),O2(),zp()],target:Rn.focused},{guard:Rd.and(["enabled: Readonly","enabled: ElementDetails","click: node has modelFqn",Rd.or(["click: same node","click: selected node"])]),actions:[$p(),L2(),Ez(),zp()]},{actions:[$p(),L2(),zp()]}],"xyflow.paneClick":{actions:[Sm(),bz()]},"xyflow.paneDblClick":{actions:[Sm(),fr.enqueueActions(({context:e,enqueue:r,check:n})=>{n("enabled: FitView")&&r(P2()),r(cte({view:e.view.id}))})]},"focus.node":[{guard:"focus.node: autoUnfocus",actions:O2(),target:Rn.focused},{guard:"enabled: FocusMode",actions:O2(),target:Rn.focused}],"xyflow.edgeClick":{guard:Rd.and(["enabled: Readonly","is dynamic view","enabled: DynamicViewWalkthrough","click: selected edge"]),actions:[Sm(),fr.raise(({event:e})=>({type:"walkthrough.start",stepId:e.edge.id})),wz()]}}}),iKe=Qe.createStateConfig({id:Rn.printing.slice(1),entry:[cc(),yz(),ts(({enqueue:e,context:r})=>{const n=r.view.bounds,o=16;e(h0({viewport:{x:n.x+o,y:n.y+o,zoom:1},duration:0}))})],exit:[vz({delay:0,duration:0})],on:{"media.print.off":{target:Rn.idle},"*":{actions:[TS(({event:e})=>`Printing state - ignoring event: ${e.type}`)]}}}),Em=()=>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:a}=n,i=e.xyedges.find(l=>l.id===o);if(!i){console.warn("Invalid walkthrough stepId:",o),r.raise({type:"walkthrough.end"});return}r.assign({xyedges:e.xyedges.map(l=>{const s=o===l.id||!!a&&l.id.startsWith(a);return tr.setData(l,{active:s,dimmed:o!==l.id})}),xynodes:e.xynodes.map(l=>{const s=i.source!==l.id&&i.target!==l.id;return l.type==="seq-parallel"?tr.setData(l,{color:a===l.data.parallelPrefix?N2.active:N2.default,dimmed:s}):tr.setDimmed(l,s)})})}),lKe=()=>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}}),sKe=()=>Qe.emit(()=>({type:"walkthroughStopped"})),_te=()=>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}}),cKe=Qe.createStateConfig({id:Rn.walkthrough.slice(1),entry:[gte(),pte(),cc(),yz(),fr.assign({activeWalkthrough:({context:e,event:r})=>{ht(r,"walkthrough.start");const n=r.stepId??df(e.xyedges).id;return{stepId:n,parallelPrefix:u8(n)}}}),Em(),f0(),lKe()],exit:[yte(),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:N2.default}):n)})}),I2(),vz(),sKe()],on:{"key.esc":{target:Rn.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),a=Qa(r.direction==="next"?o+1:o-1,{min:0,max:e.xyedges.length-1});if(a===o)return{};const i=e.xyedges[a].id;return{activeWalkthrough:{stepId:i,parallelPrefix:u8(i)}}}),Em(),f0(),_te()]},"xyflow.edgeClick":{actions:[fr.assign(({event:e,context:r})=>!u1(e.edge.id)||e.edge.id===r.activeWalkthrough?.stepId?{}:{activeWalkthrough:{stepId:e.edge.id,parallelPrefix:u8(e.edge.id)}}),Em(),f0(),wz(),_te()]},"notations.unhighlight":{actions:Em()},"tag.unhighlight":{actions:Em()},"update.view":{guard:"is same view",actions:[$z(),Em()]},"walkthrough.end":{target:Rn.idle},"xyflow.paneDblClick":{target:Rn.idle}}}),dKe=Qe.createStateConfig({initial:"idle",entry:[fr.spawnChild("mediaPrintActorLogic",{id:"mediaPrint"}),kz(),fte(),mte()],exit:[cc(),fr.stopChild("mediaPrint"),UZe(),HZe(),ute()],states:{idle:aKe,focused:oKe,walkthrough:cKe,printing:iKe},on:{"navigate.*":{actions:KZe()},"layout.align":{guard:"not readonly",actions:[_z("node"),IZe(),Sz(!0)]},"layout.resetEdgeControlPoints":{guard:"not readonly",actions:[_z("edge"),LZe(),Sz(!0)]},"layout.resetManualLayout":{guard:"not readonly",actions:[pte(),ite(),dte({op:"reset-manual-layout"})]},"xyflow.resized":{guard:({context:e})=>e.features.enableFitView&&!e.viewportChangedManually,actions:[cc(),B2({delay:200})]},"open.elementDetails":{actions:Cz()},"open.relationshipsBrowser":{actions:Cz()},"open.relationshipDetails":{actions:Cz()},"open.source":{guard:"enabled: OpenSource",actions:cte()},"walkthrough.start":{guard:"is dynamic view",target:Rn.walkthrough},"toggle.feature":{actions:[qZe(),kz()]},"update.features":{actions:[lte(),fte(),mte(),kz()]},"xyflow.nodeMouseEnter":{actions:NZe()},"xyflow.nodeMouseLeave":{actions:PZe()},"xyflow.edgeMouseEnter":{actions:GZe()},"xyflow.edgeMouseLeave":{actions:YZe()},"xyflow.edgeDoubleClick":{guard:Rd.and(["not readonly",({event:e})=>!!e.edge.data.controlPoints&&e.edge.data.controlPoints.length>0]),actions:[_z("edge"),AZe(),Sz(!0)]},"notations.highlight":{actions:FZe()},"notations.unhighlight":{actions:I2()},"tag.highlight":{actions:VZe()},"tag.unhighlight":{actions:I2()},"open.search":{guard:"enabled: Search",actions:fr.sendTo(({system:e})=>Rr(e).searchActorRef,({event:e})=>({type:"open",search:e.search}))},"xyflow.paneClick":{actions:[Sm(),bz()]},"xyflow.nodeClick":{actions:[$p(),zp()]},"xyflow.edgeClick":{actions:[Sm(),wz()]},"xyflow.fitDiagram":{guard:"enabled: FitView",actions:P2()},"xyflow.setViewport":{actions:h0()},"update.view":[{guard:"is another view",target:Rn.navigating},{actions:$z()}],"media.print.on":{target:Rn.printing}}}),Rz="likec4:diagram:toggledFeatures",Ste={read(){try{let e=sessionStorage.getItem(Rz);return e?JSON.parse(e):null}catch(e){return console.error(`Error reading fromStorage ${Rz}:`,e),null}},write(e){return sessionStorage.setItem(Rz,JSON.stringify(U1(e,OV))),e}},uKe=Qe.createMachine({initial:"initializing",context:({input:e})=>({...e,xyedges:[],xynodes:[],features:{...GW},toggledFeatures:Ste.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:eKe,isReady:tKe,ready:dKe,navigating:nKe,final:{type:"final",entry:[ute(),cc(),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(xZe)},"update.edgeData":{actions:fr.assign(wZe)},"switch.dynamicViewVariant":{guard:({context:e,event:r})=>e.dynamicViewVariant!==r.variant,actions:[MZe(),TZe()]},"update.inputs":{actions:DZe()},"update.view-bounds":{actions:fr.assign(({context:e,event:r})=>({view:{...e.view,bounds:r.bounds}}))},"update.features":{actions:lte()},"trigger.change":{actions:dte()},"emit.onLayoutTypeChange":{actions:OZe()},"xyflow.applyNodeChanges":{actions:fr.assign({xynodes:({context:e,event:r})=>Ox(r.changes,e.xynodes)})},"xyflow.applyEdgeChanges":{actions:fr.assign({xyedges:({context:e,event:r})=>Ix(r.changes,e.xyedges)})},"xyflow.viewportMoved":{actions:fr.assign(({event:e,context:r})=>({viewportChangedManually:r.viewportChangedManually||e.manually,viewport:e.viewport}))},destroy:{target:".final"}}}),pKe=uKe;function hKe({view:e,zoomable:r,pannable:n,nodesDraggable:o,nodesSelectable:a,fitViewPadding:i,where:l,children:s,dynamicViewVariant:c}){const d=vr(),u=vZe(e.id),p=AS(pKe.provide({actors:{editorActor:u}}),{id:"diagram",systemId:"diagram",input:{xystore:d,view:e,zoomable:r,pannable:n,fitViewPadding:i,nodesDraggable:o,nodesSelectable:a,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(()=>Qee(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"),Qee(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:i,nodesDraggable:o,nodesSelectable:a}}),[r,l,n,i,p,o,a]),Ed(()=>{c&&p.send({type:"switch.dynamicViewVariant",variant:c})},[c,p]),kI(()=>p.send({type:"update.view",view:e,source:"external"}),[p,e]),y.jsx(qNe,{value:p,children:y.jsxs(HNe,{value:g,children:[y.jsx(pS,{children:y.jsx(gKe,{actorRef:p,children:s})}),y.jsx(yKe,{})]})})}const fKe=({context:e})=>{let r=e.toggledFeatures;const n=e.view.drifts!=null&&e.view.drifts.length>0,o=e.features.enableCompareWithLatest&&(r.enableCompareWithLatest??!1)&&H1(e.activeWalkthrough)&&n,a=e.features.enableReadOnly||r.enableReadOnly||!!e.activeWalkthrough||e.dynamicViewVariant==="sequence"&&e.view._type==="dynamic"||o&&e.view._layout==="auto";return(r.enableReadOnly!==a||r.enableCompareWithLatest!==o)&&(r={...r,enableCompareWithLatest:o,enableReadOnly:a}),{toggledFeatures:r,viewId:e.view.id}},mKe=(e,r)=>e.viewId===r.viewId&&Or(e.toggledFeatures,r.toggledFeatures);function gKe({children:e,actorRef:r}){const{viewId:n,toggledFeatures:o}=pn(r,fKe,mKe),a=Lo().findView(n);return y.jsx(lS.Provider,{value:a,children:y.jsx(sp,{overrides:o,children:e})})}const yKe=S.memo(()=>{const e=Nt(),{onNavigateTo:r,onOpenSource:n,onLayoutTypeChange:o,handlersRef:a}=um();za("openSource",({params:l})=>n?.(l)),za("navigateTo",({viewId:l})=>r?.(l)),za("onLayoutTypeChange",({layoutType:l})=>{o?.(l)}),za("initialized",({instance:l})=>{try{a.current.onInitialized?.({diagram:e,xyflow:l})}catch(s){console.error(s)}},{once:!0});const i=ci(l=>l.toggledFeatures,Or);return Ed(()=>{Ste.write(_Ce(i,H1))},[i]),null}),F2={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 a=n<.5?n*(1+r):n+r-n*r,i=2*n-a;switch(o){case"r":return F2.hue2rgb(i,a,e+1/3)*255;case"g":return F2.hue2rgb(i,a,e)*255;case"b":return F2.hue2rgb(i,a,e-1/3)*255}},rgb2hsl:({r:e,g:r,b:n},o)=>{e/=255,r/=255,n/=255;const a=Math.max(e,r,n),i=Math.min(e,r,n),l=(a+i)/2;if(o==="l")return l*100;if(a===i)return 0;const s=a-i,c=l>.5?s/(2-a-i):s/(a+i);if(o==="s")return c*100;switch(a){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},bKe={dec2hex:e=>{const r=Math.round(e).toString(16);return r.length>1?r:`0${r}`}},jt={channel:F2,lang:vKe,unit:bKe},Td={};for(let e=0;e<=255;e++)Td[e]=jt.unit.dec2hex(e);const $o={ALL:0,RGB:1,HSL:2};class xKe{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 wKe{constructor(r,n){this.color=n,this.changed=!1,this.data=r,this.type=new xKe}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:a}=r;n===void 0&&(r.h=jt.channel.rgb2hsl(r,"h")),o===void 0&&(r.s=jt.channel.rgb2hsl(r,"s")),a===void 0&&(r.l=jt.channel.rgb2hsl(r,"l"))}_ensureRGB(){const r=this.data,{r:n,g:o,b:a}=r;n===void 0&&(r.r=jt.channel.hsl2rgb(r,"r")),o===void 0&&(r.g=jt.channel.hsl2rgb(r,"g")),a===void 0&&(r.b=jt.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(),jt.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(),jt.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(),jt.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(),jt.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(),jt.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(),jt.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 V2=new wKe({r:0,g:0,b:0,a:0},"transparent"),Cm={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:e=>{if(e.charCodeAt(0)!==35)return;const r=e.match(Cm.re);if(!r)return;const n=r[1],o=parseInt(n,16),a=n.length,i=a%4===0,l=a>4,s=l?1:17,c=l?8:4,d=i?0:-1,u=l?255:15;return V2.set({r:(o>>c*(d+3)&u)*s,g:(o>>c*(d+2)&u)*s,b:(o>>c*(d+1)&u)*s,a:i?(o&u)*s/255:1},e)},stringify:e=>{const{r,g:n,b:o,a}=e;return a<1?`#${Td[Math.round(r)]}${Td[Math.round(n)]}${Td[Math.round(o)]}${Td[Math.round(a*255)]}`:`#${Td[Math.round(r)]}${Td[Math.round(n)]}${Td[Math.round(o)]}`}},Rp={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(Rp.hueRe);if(r){const[,n,o]=r;switch(o){case"grad":return jt.channel.clamp.h(parseFloat(n)*.9);case"rad":return jt.channel.clamp.h(parseFloat(n)*180/Math.PI);case"turn":return jt.channel.clamp.h(parseFloat(n)*360)}}return jt.channel.clamp.h(parseFloat(e))},parse:e=>{const r=e.charCodeAt(0);if(r!==104&&r!==72)return;const n=e.match(Rp.re);if(!n)return;const[,o,a,i,l,s]=n;return V2.set({h:Rp._hue2deg(o),s:jt.channel.clamp.s(parseFloat(a)),l:jt.channel.clamp.l(parseFloat(i)),a:l?jt.channel.clamp.a(s?parseFloat(l)/100:parseFloat(l)):1},e)},stringify:e=>{const{h:r,s:n,l:o,a}=e;return a<1?`hsla(${jt.lang.round(r)}, ${jt.lang.round(n)}%, ${jt.lang.round(o)}%, ${a})`:`hsl(${jt.lang.round(r)}, ${jt.lang.round(n)}%, ${jt.lang.round(o)}%)`}},g0={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=g0.colors[e];if(r)return Cm.parse(r)},stringify:e=>{const r=Cm.stringify(e);for(const n in g0.colors)if(g0.colors[n]===r)return n}},y0={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(y0.re);if(!n)return;const[,o,a,i,l,s,c,d,u]=n;return V2.set({r:jt.channel.clamp.r(a?parseFloat(o)*2.55:parseFloat(o)),g:jt.channel.clamp.g(l?parseFloat(i)*2.55:parseFloat(i)),b:jt.channel.clamp.b(c?parseFloat(s)*2.55:parseFloat(s)),a:d?jt.channel.clamp.a(u?parseFloat(d)/100:parseFloat(d)):1},e)},stringify:e=>{const{r,g:n,b:o,a}=e;return a<1?`rgba(${jt.lang.round(r)}, ${jt.lang.round(n)}, ${jt.lang.round(o)}, ${jt.lang.round(a)})`:`rgb(${jt.lang.round(r)}, ${jt.lang.round(n)}, ${jt.lang.round(o)})`}},pl={format:{keyword:g0,hex:Cm,rgb:y0,rgba:y0,hsl:Rp,hsla:Rp},parse:e=>{if(typeof e!="string")return e;const r=Cm.parse(e)||y0.parse(e)||Rp.parse(e)||g0.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?Rp.stringify(e):e.a<1||!Number.isInteger(e.r)||!Number.isInteger(e.g)||!Number.isInteger(e.b)?y0.stringify(e):Cm.stringify(e)},Ete=(e,r)=>{const n=pl.parse(e);for(const o in r)n[o]=jt.channel.clamp[o](r[o]);return pl.stringify(n)},kKe=(e,r,n=0,o=1)=>{if(typeof e!="number")return Ete(e,{a:r});const a=V2.set({r:jt.channel.clamp.r(e),g:jt.channel.clamp.g(r),b:jt.channel.clamp.b(n),a:jt.channel.clamp.a(o)});return pl.stringify(a)},Cte=e=>pl.format.hex.stringify(pl.parse(e)),$te=e=>pl.format.rgba.stringify(pl.parse(e)),_Ke=(e,r)=>{const n=pl.parse(e),o={};for(const a in r)r[a]&&(o[a]=n[a]+r[a]);return Ete(e,o)},zte=(e,r,n=50)=>{const{r:o,g:a,b:i,a:l}=pl.parse(e),{r:s,g:c,b:d,a:u}=pl.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=a*v+c*w,C=i*v+d*w,_=l*p+u*(1-p);return kKe(x,k,C,_)},Rte=(e,r)=>{const n=pl.parse(e),o={},a=(i,l,s)=>l>0?(s-i)*l/100:i*l/100;for(const i in r)o[i]=a(n[i],r[i],jt.channel.max[i]);return _Ke(e,o)},SKe=e=>`[data-mantine-color-scheme="${e}"]`,jte=SKe("dark"),EKe=5,CKe=(e,r,n,o)=>{const a=s=>Cte(Rte(s,{l:-22-5*o,s:-10-6*o})),i=s=>Cte(Rte(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: ${i(n.elements.fill)}; --likec4-palette-stroke: ${i(n.elements.stroke)}; @@ -174,7 +174,7 @@ ${jte} ${i} { `.trim(),...RCe(1,EKe+1).map(l=>CKe(e,r,n,l))].join(` `)}function zKe(e,r){return Jr(r.colors,Wx(),un(([n,o])=>$Ke(e,n,o)),VV(` -`))}const RKe=S.memo(({id:e})=>{const r=`#${e}`,n=Zu()?.(),{theme:o}=Ree(),a=zKe(r,o);return y.jsx("style",{type:"text/css","data-likec4-colors":e,dangerouslySetInnerHTML:{__html:a},nonce:n})}),jKe='@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}',Tte=`@layer reset,base,mantine,xyflow,tokens,recipes,utilities;@layer mantine{:root{color-scheme:var(--mantine-color-scheme)}*,*:before,*:after{box-sizing:border-box}input,button,textarea,select{font:inherit}button,select{text-transform:none}body{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{-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{--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]{--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]{--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,.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-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_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)}.bg-c_mantine\\.colors\\.body{background-color:var(--colors-mantine-colors-body)}.bg-i_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\\){background-image: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)}.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%))}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[6\\]{background-color:var(--colors-mantine-colors-dark\\[6\\])}.\\[\\&_\\.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\\: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}}}`,Ate={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:ry.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 TKe(e,r){const[n,o]=S.useState([]);return z8(()=>{if(e&&!document.querySelector("style[data-likec4-font]")){const a=document.createElement("style");a.setAttribute("type","text/css"),a.setAttribute("data-likec4-font",""),Gx(r)&&a.setAttribute("nonce",r),q1(r)&&a.setAttribute("nonce",r()),a.appendChild(document.createTextNode(jKe)),document.head.appendChild(a)}},[e]),z8(()=>{const a=new CSSStyleSheet;return a.replaceSync(Tte.replaceAll(":where(:root,:host)",".likec4-shadow-root").replaceAll(":root",".likec4-shadow-root").replaceAll(new RegExp("(?{a.replaceSync("")}},[Tte]),n}const Dte=()=>{try{const e=window.getComputedStyle(document.documentElement).colorScheme??"",r=df(e.split(" "));if(r==="light"||r==="dark")return r}catch{}return null};function AKe(e){const r=yq(),[n,o]=S.useState(Dte);return Rq(gf(()=>o(Dte),100),{attributes:!0,childList:!1,subtree:!1},()=>document.documentElement),e??n??r}function Mte({children:e}){const r=S.useContext(pw);return S.useEffect(()=>{r||console.warn("LikeC4Diagram must be a child of MantineProvider")},[]),r?y.jsx(y.Fragment,{children:e}):y.jsx(q7,{defaultColorScheme:"auto",theme:Ate,children:e})}Mte.displayName="EnsureMantine";const jz=({reducedMotion:e="user",children:r})=>{const n=Zu()?.();return y.jsx(ZOe,{features:WLe,strict:!0,children:y.jsx(JOe,{reducedMotion:e,...n&&{nonce:n},children:r})})};function Nte({onCanvasClick:e,onCanvasContextMenu:r,onCanvasDblClick:n,onEdgeClick:o,onEdgeContextMenu:a,onNavigateTo:i,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?K3.withControls:K3.default,pannable:k=!0,zoomable:C=!0,background:_="dots",enableElementTags:$=!1,enableFocusMode:z=!1,enableElementDetails:j=!1,enableRelationshipDetails:A=!1,enableRelationshipBrowser:R=!1,enableCompareWithLatest:T=!!u,nodesSelectable:O,enableNotations:P=!1,showNavigationButtons:L=!!i,enableDynamicViewWalkthrough:H=!1,dynamicViewVariant:M,enableSearch:V=!1,initialWidth:B,initialHeight:F,reduceGraphics:q="auto",renderIcon:G,where:U,reactFlowProps:Y,renderNodes:Z,children:I}){const W=MW(),K=S.useRef(null),Q=!!Kee(),ae=!Q;O??=Q||z||!!i||!!l;const te=wJ(f,M),re=DKe(x);K.current==null&&(K.current={defaultEdges:[],defaultNodes:[],initialWidth:B??te.width,initialHeight:F??te.height,initialFitViewOptions:{maxZoom:wC,minZoom:yi,padding:re},initialMaxZoom:wC,initialMinZoom:yi});const ue=q==="auto"?k&&(te.width??1)*(te.height??1)>6e6&&f.nodes.some(_e=>_e.children?.length>0):q;return y.jsx(Mte,{children:y.jsx(jz,{...ue&&{reducedMotion:"always"},children:y.jsx(N4e,{value:G??null,children:y.jsx(sp,{features:{enableFitView:w,enableEditor:Q,enableReadOnly:ae,enableFocusMode:z,enableNavigateTo:!!i,enableElementDetails:j,enableRelationshipDetails:A,enableRelationshipBrowser:R,enableSearch:V,enableNavigationButtons:L&&!!i,enableDynamicViewWalkthrough:f._type==="dynamic"&&H,enableNotations:P,enableVscode:!!c,enableControls:v,enableElementTags:$,enableCompareWithLatest:T&&!!u},children:y.jsxs(HUe,{handlers:{onCanvasClick:e,onCanvasContextMenu:r,onCanvasDblClick:n,onEdgeClick:o,onEdgeContextMenu:a,onNavigateTo:i,onNodeClick:l,onNodeContextMenu:s,onOpenSource:c,onBurgerMenuClick:d,onInitialized:p,onLayoutTypeChange:u},children:[y.jsx(RKe,{id:W}),y.jsx(cMe,{rootSelector:`#${W}`,children:y.jsx(nMe,{id:W,className:g,reduceGraphics:ue,children:y.jsx(qx,{fitView:w,...K.current,children:y.jsxs(hKe,{view:f,zoomable:C,pannable:k,fitViewPadding:re,nodesDraggable:Q,nodesSelectable:O,where:U??null,dynamicViewVariant:M,children:[y.jsx(cZe,{background:_,reactFlowProps:Y,renderNodes:Z,children:I}),y.jsx(gee,{})]})})})})]})})})})})}const Pte=e=>typeof e=="number"?`${e}px`:e;function DKe(e){return _I(()=>{if(b7(e))return xCe(e,Pte);const r=Pte(e);return{x:r,y:r}},[e],tt)}function MKe({children:e,likec4model:r}){return y.jsx(fy.Provider,{value:r,children:e})}const Tz=({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})}),NKe=({viewId:e})=>y.jsxs(Tz,{children:["View ",y.jsx("code",{children:e})," not found"]}),PKe=e=>{throw new Error("LikeC4View is not available SSR")};var Bte={exports:{}},Az,Ote;function BKe(){if(Ote)return Az;Ote=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Az=e,Az}var Dz,Ite;function OKe(){if(Ite)return Dz;Ite=1;var e=BKe();function r(){}function n(){}return n.resetWarningCache=r,Dz=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 a(){return o}var i={array:o,bigint:o,bool:o,func:o,number:o,object:o,string:o,symbol:o,any:o,arrayOf:a,element:o,elementType:o,instanceOf:a,node:o,objectOf:a,oneOf:a,oneOfType:a,shape:a,exact:a,checkPropTypes:n,resetWarningCache:r};return i.PropTypes=i,i},Dz}var Lte;function IKe(){return Lte||(Lte=1,Bte.exports=OKe()()),Bte.exports}var LKe=IKe();const hl=s7(LKe);var FKe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Fte(e,r){return e(r={exports:{}},r.exports),r.exports}var VKe=Fte((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,z=0;if(d(k))for(_=[],z=k.length;$e.length)&&(r=e.length);for(var n=0,o=new Array(r);n{const r=`#${e}`,n=Zu()?.(),{theme:o}=Ree(),a=zKe(r,o);return y.jsx("style",{type:"text/css","data-likec4-colors":e,dangerouslySetInnerHTML:{__html:a},nonce:n})}),jKe='@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}',Tte=`@layer reset,base,mantine,xyflow,tokens,recipes,utilities;@layer mantine{:root{color-scheme:var(--mantine-color-scheme)}*,*:before,*:after{box-sizing:border-box}input,button,textarea,select{font:inherit}button,select{text-transform:none}body{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{-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{--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]{--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]{--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,.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-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_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)}.bg-c_mantine\\.colors\\.body{background-color:var(--colors-mantine-colors-body)}.bg-i_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\\){background-image: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)}.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%))}[data-mantine-color-scheme=dark] .dark\\:bg-c_mantine\\.colors\\.dark\\[6\\]{background-color:var(--colors-mantine-colors-dark\\[6\\])}.\\[\\&_\\.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\\: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}}}`,Ate={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:ry.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 TKe(e,r){const[n,o]=S.useState([]);return z8(()=>{if(e&&!document.querySelector("style[data-likec4-font]")){const a=document.createElement("style");a.setAttribute("type","text/css"),a.setAttribute("data-likec4-font",""),Gx(r)&&a.setAttribute("nonce",r),q1(r)&&a.setAttribute("nonce",r()),a.appendChild(document.createTextNode(jKe)),document.head.appendChild(a)}},[e]),z8(()=>{const a=new CSSStyleSheet;return a.replaceSync(Tte.replaceAll(":where(:root,:host)",".likec4-shadow-root").replaceAll(":root",".likec4-shadow-root").replaceAll(new RegExp("(?{a.replaceSync("")}},[Tte]),n}const Dte=()=>{try{const e=window.getComputedStyle(document.documentElement).colorScheme??"",r=df(e.split(" "));if(r==="light"||r==="dark")return r}catch{}return null};function AKe(e){const r=yq(),[n,o]=S.useState(Dte);return Rq(gf(()=>o(Dte),100),{attributes:!0,childList:!1,subtree:!1},()=>document.documentElement),e??n??r}function Mte({children:e}){const r=S.useContext(pw);return S.useEffect(()=>{r||console.warn("LikeC4Diagram must be a child of MantineProvider")},[]),r?y.jsx(y.Fragment,{children:e}):y.jsx(q7,{defaultColorScheme:"auto",theme:Ate,children:e})}Mte.displayName="EnsureMantine";const jz=({reducedMotion:e="user",children:r})=>{const n=Zu()?.();return y.jsx(ZOe,{features:WLe,strict:!0,children:y.jsx(JOe,{reducedMotion:e,...n&&{nonce:n},children:r})})};function Nte({onCanvasClick:e,onCanvasContextMenu:r,onCanvasDblClick:n,onEdgeClick:o,onEdgeContextMenu:a,onNavigateTo:i,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?K3.withControls:K3.default,pannable:k=!0,zoomable:C=!0,background:_="dots",enableElementTags:$=!1,enableFocusMode:z=!1,enableElementDetails:j=!1,enableRelationshipDetails:A=!1,enableRelationshipBrowser:R=!1,enableCompareWithLatest:T=!!u,nodesSelectable:O,enableNotations:P=!1,showNavigationButtons:L=!!i,enableDynamicViewWalkthrough:H=!1,dynamicViewVariant:M,enableSearch:V=!1,initialWidth:B,initialHeight:F,reduceGraphics:q="auto",renderIcon:G,where:U,reactFlowProps:Y,renderNodes:Z,children:I}){const W=MW(),K=S.useRef(null),Q=!!Kee(),ae=!Q;O??=Q||z||!!i||!!l;const te=wJ(f,M),re=DKe(x);K.current==null&&(K.current={defaultEdges:[],defaultNodes:[],initialWidth:B??te.width,initialHeight:F??te.height,initialFitViewOptions:{maxZoom:wC,minZoom:yi,padding:re},initialMaxZoom:wC,initialMinZoom:yi});const ue=q==="auto"?k&&(te.width??1)*(te.height??1)>6e6&&f.nodes.some(_e=>_e.children?.length>0):q;return y.jsx(Mte,{children:y.jsx(jz,{...ue&&{reducedMotion:"always"},children:y.jsx(Nke,{value:G??null,children:y.jsx(sp,{features:{enableFitView:w,enableEditor:Q,enableReadOnly:ae,enableFocusMode:z,enableNavigateTo:!!i,enableElementDetails:j,enableRelationshipDetails:A,enableRelationshipBrowser:R,enableSearch:V,enableNavigationButtons:L&&!!i,enableDynamicViewWalkthrough:f._type==="dynamic"&&H,enableNotations:P,enableVscode:!!c,enableControls:v,enableElementTags:$,enableCompareWithLatest:T&&!!u},children:y.jsxs(HUe,{handlers:{onCanvasClick:e,onCanvasContextMenu:r,onCanvasDblClick:n,onEdgeClick:o,onEdgeContextMenu:a,onNavigateTo:i,onNodeClick:l,onNodeContextMenu:s,onOpenSource:c,onBurgerMenuClick:d,onInitialized:p,onLayoutTypeChange:u},children:[y.jsx(RKe,{id:W}),y.jsx(cMe,{rootSelector:`#${W}`,children:y.jsx(nMe,{id:W,className:g,reduceGraphics:ue,children:y.jsx(qx,{fitView:w,...K.current,children:y.jsxs(hKe,{view:f,zoomable:C,pannable:k,fitViewPadding:re,nodesDraggable:Q,nodesSelectable:O,where:U??null,dynamicViewVariant:M,children:[y.jsx(cZe,{background:_,reactFlowProps:Y,renderNodes:Z,children:I}),y.jsx(gee,{})]})})})})]})})})})})}const Pte=e=>typeof e=="number"?`${e}px`:e;function DKe(e){return _I(()=>{if(b7(e))return xCe(e,Pte);const r=Pte(e);return{x:r,y:r}},[e],tt)}function MKe({children:e,likec4model:r}){return y.jsx(fy.Provider,{value:r,children:e})}const Tz=({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})}),NKe=({viewId:e})=>y.jsxs(Tz,{children:["View ",y.jsx("code",{children:e})," not found"]}),PKe=e=>{throw new Error("LikeC4View is not available SSR")};var Bte={exports:{}},Az,Ote;function BKe(){if(Ote)return Az;Ote=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Az=e,Az}var Dz,Ite;function OKe(){if(Ite)return Dz;Ite=1;var e=BKe();function r(){}function n(){}return n.resetWarningCache=r,Dz=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 a(){return o}var i={array:o,bigint:o,bool:o,func:o,number:o,object:o,string:o,symbol:o,any:o,arrayOf:a,element:o,elementType:o,instanceOf:a,node:o,objectOf:a,oneOf:a,oneOfType:a,shape:a,exact:a,checkPropTypes:n,resetWarningCache:r};return i.PropTypes=i,i},Dz}var Lte;function IKe(){return Lte||(Lte=1,Bte.exports=OKe()()),Bte.exports}var LKe=IKe();const hl=s7(LKe);var FKe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Fte(e,r){return e(r={exports:{}},r.exports),r.exports}var VKe=Fte((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,z=0;if(d(k))for(_=[],z=k.length;$e.length)&&(r=e.length);for(var n=0,o=new Array(r);n=0||(a[n]=e[n]);return a},Hte=function(e,r){if(e==null)return{};var n,o,a=YKe(e,r);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a},XKe=S.createContext(null);function Ute(e){var r=e.children,n=r===void 0?"":r,o=Hte(e,["children"]);return typeof n!="string"&&(n=PKe()),Kr.createElement("template",qte({},o,{dangerouslySetInnerHTML:{__html:n}}))}function Wte(e){var r=e.root,n=e.children;return Ii.createPortal(n===void 0?null:n,r)}function ZKe(e){var r=S.forwardRef((function(n,o){var a,i,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=Hte(n,["mode","delegatesFocus","styleSheets","ssr","children"]),x=(i=S.useRef((a=o)&&a.current),S.useEffect((function(){a&&(a.current=i.current)}),[a]),i),k=S.useState(null),C=GKe(k,2),_=C[0],$=C[1],z="node_".concat(s).concat(d);return S.useLayoutEffect((function(){if(x.current)try{if(typeof o=="function"&&o(x.current),g){var j=x.current.shadowRoot;return void $(j)}var A=x.current.attachShadow({mode:s,delegatesFocus:d});p.length>0&&(A.adoptedStyleSheets=p),$(A)}catch(R){(function(T){var O=T.error,P=T.styleSheets,L=T.root;switch(O.name){case"NotSupportedError":P.length>0&&(L.adoptedStyleSheets=P);break;default:throw O}})({error:R,styleSheets:p,root:_})}}),[o,x,p]),Kr.createElement(Kr.Fragment,null,Kr.createElement(e.tag,qte({key:z,ref:x},w),(_||g)&&Kr.createElement(XKe.Provider,{value:_},g?Kr.createElement(Ute,{shadowroot:s,shadowrootmode:s},e.render({root:_,ssr:g,children:v})):Kr.createElement(Wte,{root:_},e.render({root:_,ssr:g,children:v})))))}));return r.propTypes={mode:hl.oneOf(["open","closed"]),delegatesFocus:hl.bool,styleSheets:hl.arrayOf(hl.instanceOf(globalThis.CSSStyleSheet)),ssr:hl.bool,children:hl.node},r}Ute.propTypes={children:hl.oneOfType([hl.string,hl.node])},Wte.propTypes={root:hl.object.isRequired,children:hl.node};var Mz=new Map;function KKe(){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,a){var i=VKe(a,{separator:"-"}),l="".concat(r,"-").concat(i);return Mz.has(l)||Mz.set(l,ZKe({tag:i,render:n})),Mz.get(l)}})}var QKe=KKe();const JKe=QKe.div;function eQe(e,r=!1){if(r===!1)return` :where([data-likec4-instance="${e}"]) { display: block; @@ -216,16 +216,16 @@ and correctness.`},title:"PostgreSQL",kind:"container",id:"postgres"},redis:{sty 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"},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"},"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 development",source:{model:"developer"},target:{model:"localbox"},id:"5hkplj"},"1pp73vj":{title:"outer loop development",source:{model:"developer"},target:{model:"edp"},id:"1pp73vj"},yk9zv2:{title:"manages project",source:{model:"developer"},target:{model:"edp.ui"},id:"yk9zv2"},"12036hb":{title:"manages code",source:{model:"developer"},target:{model:"edp.forgejo"},id:"12036hb"},jpl8ll:{title:"authenticates",source:{model:"developer"},target:{model:"edp.keycloak"},id:"jpl8ll"},"1ghp31l":{title:"manages deployments",source:{model:"developer"},target:{model:"edp.argoCD"},id:"1ghp31l"},"1xiorre":{title:"monitors",source:{model:"developer"},target:{model:"edp.grafana"},id:"1xiorre"},"1woleh6":{title:"create and maintain apps",source:{model:"developer"},target:{model:"edp.ui.backstage"},id:"1woleh6"},"177bm2y":{title:"pushes and pull images",source:{model:"developer"},target:{model:"edp.imageregistry"},id:"177bm2y"},"1l9a3pd":{title:"uses API",source:{model:"developer"},target:{model:"edp.api"},id:"1l9a3pd"},"1uzzn9j":{title:"uses git",source:{model:"developer"},target:{model:"edp.forgejogit"},id:"1uzzn9j"},lb4xas:{title:"act according to responibility",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:"deploys and observes",source:{model:"edp"},target:{model:"cloud"},id:"gerdx4"},wvo8i:{title:"",source:{model:"edp"},target:{model:"localbox"},id:"wvo8i"},"1mp9fps":{title:"inner-outer-loop synchronization",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:"6d8d09edc6680144412e69672560195ee9c68fc2",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",description:{txt:"edp.buildth.ing"},tags:[],style:{opacity:15,size:"md"},navigateTo:"forgejo",x:528,y:694,width:365,height:180,labelBBox:{x:46,y:63,width:304,height:48}},{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:"b04b332e17910fc2f4f7b56048c7814a216b321b",bounds:{x:0,y:0,width:13818,height:1769},nodes:[{id:"local",parent:null,level:0,children:["local.ingressNginx","local.velero","local.crossplane","local.externalSecrets","local.monitoring","local.backstage","local.argocd","local.gitea","local.keycloak","local.openbao","local.fibonacci","local.mailhog","local.minio","local.spark.sparkoperator"],inEdges:[],outEdges:[],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:3332,y:8,width:10478,height:1449,labelBBox:{x:6,y:0,width:127,height:15}},{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:"otc-edpFoundry",parent:null,level:0,children:["otc-edpFoundry.forgejoRunnerInfrastructure","otc-edpFoundry.cce","otc-edpFoundry.workflowSetupEDPInfrastructure","otc-edpFoundry.workflowSetupArgoCDInfrastructure"],inEdges:[],outEdges:["r3wxut","1sng0q0","e3benz"],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"},"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"},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"},"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 development",source:{model:"developer"},target:{model:"localbox"},id:"5hkplj"},"1pp73vj":{title:"outer loop development",source:{model:"developer"},target:{model:"edp"},id:"1pp73vj"},yk9zv2:{title:"manages project",source:{model:"developer"},target:{model:"edp.ui"},id:"yk9zv2"},"12036hb":{title:"manages code",source:{model:"developer"},target:{model:"edp.forgejo"},id:"12036hb"},jpl8ll:{title:"authenticates",source:{model:"developer"},target:{model:"edp.keycloak"},id:"jpl8ll"},"1ghp31l":{title:"manages deployments",source:{model:"developer"},target:{model:"edp.argoCD"},id:"1ghp31l"},"1xiorre":{title:"monitors",source:{model:"developer"},target:{model:"edp.grafana"},id:"1xiorre"},"1woleh6":{title:"create and maintain apps",source:{model:"developer"},target:{model:"edp.ui.backstage"},id:"1woleh6"},"177bm2y":{title:"pushes and pull images",source:{model:"developer"},target:{model:"edp.imageregistry"},id:"177bm2y"},"1l9a3pd":{title:"uses API",source:{model:"developer"},target:{model:"edp.api"},id:"1l9a3pd"},"1uzzn9j":{title:"uses git",source:{model:"developer"},target:{model:"edp.forgejogit"},id:"1uzzn9j"},lb4xas:{title:"act according to responibility",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:"deploys and observes",source:{model:"edp"},target:{model:"cloud"},id:"gerdx4"},wvo8i:{title:"",source:{model:"edp"},target:{model:"localbox"},id:"wvo8i"},"1mp9fps":{title:"inner-outer-loop synchronization",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:"6d8d09edc6680144412e69672560195ee9c68fc2",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",description:{txt:"edp.buildth.ing"},tags:[],style:{opacity:15,size:"md"},navigateTo:"forgejo",x:528,y:694,width:365,height:180,labelBBox:{x:46,y:63,width:304,height:48}},{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:"c1b910c294a71e9dd99959cc58b7e2ca493b1aac",bounds:{x:0,y:0,width:17416,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:5361,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:1920,y:79,width:870,height:995,labelBBox:{x:6,y:0,width:280,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",icon:"tech:nginx",tags:[],style:{opacity:15,size:"md"},depth:1,x:6035,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:9320,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:[],outEdges:["109g3jm"],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"},x:1981,y:150,width:342,height:180,labelBBox:{x:18,y:54,width:306,height:66}},{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:9320,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:9370,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:9820,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:10270,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:10720,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:11170,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:11620,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:12040,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:12090,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:12540,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:12990,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:3852,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:3902,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:4352,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:4802,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:6067,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:9352,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:1988,y:497,width:327,height:180,labelBBox:{x:46,y:54,width:266,height:67}},{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:6106,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:6576,y:773,width:1770,height:634,labelBBox:{x:6,y:0,width:53,height:15}},{id:"local.gitea",parent:"local",level:1,children:["local.gitea.forgejo"],inEdges:["o229dq"],outEdges:[],deploymentRef:"local.gitea",title:"gitea",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:8396,y:791,width:404,height:265,labelBBox:{x:6,y:0,width:38,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:3382,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:8850,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",icon:"tech:go",tags:[],style:{opacity:15,size:"md"},depth:1,x:5222,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",icon:"tech:go",tags:[],style:{opacity:15,size:"md"},depth:1,x:5672,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:"storage",modelRef:"edp.minio.minio",tags:[],style:{opacity:15,size:"md"},depth:1,x:9320,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"],outEdges:["r3wxut","e3benz"],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:1970,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"],outEdges:["1sng0q0"],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:2420,y:844,width:320,height:180,labelBBox:{x:55,y:63,width:210,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:6156,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:6626,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:7076,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:7526,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:7976,y:844,width:320,height:180,labelBBox:{x:90,y:74,width:140,height:24}},{id:"local.gitea.forgejo",parent:"local.gitea",level:2,children:[],inEdges:["o229dq"],outEdges:[],kind:"instance",title:"Forgejo",description:{txt:`Fully managed DevOps Platform +Optionally we will have a WebUI/API/CLI`},tags:[],style:{opacity:15,size:"md"},depth:1,x:3513,y:79,width:870,height:995,labelBBox:{x:6,y:0,width:280,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:6444,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",icon:"tech:nginx",tags:[],style:{opacity:15,size:"md"},depth:1,x:10407,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:11994,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:667,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"},x:3991,y:150,width:342,height:180,labelBBox:{x:18,y:54,width:306,height:66}},{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:12918,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:12968,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:13418,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:13868,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:14318,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:14768,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:15218,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:15638,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:15688,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:16138,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:16588,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:6964,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:7014,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:7464,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:7914,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:10439,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:12026,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:1059,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:589,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:3998,y:497,width:327,height:180,labelBBox:{x:46,y:54,width:266,height:67}},{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:8334,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:8804,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:10624,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:6494,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",icon:"tech:go",tags:[],style:{opacity:15,size:"md"},depth:1,x:11094,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",icon:"tech:go",tags:[],style:{opacity:15,size:"md"},depth:1,x:11544,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:"storage",modelRef:"edp.minio.minio",tags:[],style:{opacity:15,size:"md"},depth:1,x:11994,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:1117,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:639,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:3563,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:4013,y:844,width:320,height:180,labelBBox:{x:55,y:63,width:210,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:8384,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:8854,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:9304,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:9754,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:10204,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:10674,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:7464,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:7914,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:6544,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:6544,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:11126,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:11576,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:12026,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",description:{txt:"edp.buildth.ing"},tags:[],style:{opacity:15,size:"md"},navigateTo:"forgejo",x:1109,y:844,width:365,height:180,labelBBox:{x:46,y:63,width:304,height:48}},{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:639,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. + + This is kubernetes clusters and other infrastructure like nodes and vms, and platform services. All is set up by IaC-pipelines in the Foundry.`},tags:[],style:{opacity:15,size:"md"},depth:1,x:2849,y:79,width:442,height:1704,labelBBox:{x:6,y:0,width:181,height:15}},{id:"local.backstage.database",parent:"local.backstage",level:2,children:[],inEdges:["19kg5y"],outEdges:[],kind:"instance",title:"Database",technology:"Postgresql",tags:[],icon:"tech:postgresql",color:"primary",shape:"storage",style:{opacity:15,size:"md"},deploymentRef:"local.backstage.database",modelRef:"edp.ui.database",x:8384,y:1177,width:320,height:180,labelBBox:{x:101,y:64,width:148,height:46}},{id:"local.argocd.argocdRedis",parent:"local.argocd",level:2,children:[],inEdges:["1gfgfhk","qfu5xm","g7xnzs","fon3rk"],outEdges:[],kind:"instance",title:"Redis",technology:"Redis",tags:[],icon:"tech:redis",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.argocd.argocdRedis",modelRef:"edp.argoCD.argocdRedis",x:9979,y:1177,width:320,height:180,labelBBox:{x:119,y:64,width:113,height:46}},{id:"local.keycloak.keycloakDB",parent:"local.keycloak",level:2,children:[],inEdges:["4zwy1m"],outEdges:[],kind:"instance",title:"Database",technology:"Postgresql",tags:[],icon:"tech:postgresql",color:"primary",shape:"storage",style:{opacity:15,size:"md"},deploymentRef:"local.keycloak.keycloakDB",modelRef:"edp.keycloak.keycloakDB",x:10674,y:1177,width:320,height:180,labelBBox:{x:101,y:64,width:148,height:46}},{id:"local.monitoring.distributor",parent:"local.monitoring",level:2,children:[],inEdges:["sb2j38"],outEdges:[],kind:"instance",title:"Distributor",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.monitoring.distributor",modelRef:"edp.monitoring.loki.distributor",x:7464,y:1177,width:320,height:180,labelBBox:{x:112,y:74,width:95,height:24}},{id:"otc-edp-per-tenant.forgejoRunnerInfrastructure",parent:"otc-edp-per-tenant",level:1,children:[],inEdges:["126mt75"],outEdges:["fkkf8y","1mbuxdd"],deploymentRef:"otc-edp-per-tenant.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"},x:2899,y:150,width:342,height:180,labelBBox:{x:18,y:54,width:306,height:66}},{id:"otc-edp-per-tenant.cce",parent:"otc-edp-per-tenant",level:1,children:[],inEdges:["fkkf8y","r3wxut","1sng0q0","p2umm7"],outEdges:["pit45i","b27cdb"],deploymentRef:"otc-edp-per-tenant.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:2913,y:1177,width:327,height:180,labelBBox:{x:46,y:53,width:266,height:68}},{id:"otc-edp-per-tenant.cloudServices",parent:"otc-edp-per-tenant",level:1,children:[],inEdges:["pit45i","e3benz"],outEdges:[],deploymentRef:"otc-edp-per-tenant.cloudServices",title:"EDP Cloud Services",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",description:{txt:"EDP Cloud Services"},tags:[],style:{opacity:15,size:"md"},x:2899,y:1553,width:320,height:180,labelBBox:{x:67,y:53,width:185,height:67}},{id:"otcKubernetes",parent:null,level:0,children:["otcKubernetes.edpCluster"],inEdges:["1ogkmfn","b27cdb","1mbuxdd","9r557q","rivecr","1lrp92n","se5brg"],outEdges:["i6v3n","p2umm7","126mt75","c2grk6","1ean8sr","l1c2z3","1m1lj8s"],deploymentRef:"otcKubernetes",title:"OTC Kubernetes",kind:"environment",technology:"Kubernetes",color:"primary",shape:"rectangle",icon:"tech:kubernetes",description:{txt:"OTC Container Cluster Engine hosting EDP platform"},tags:[],style:{opacity:15,size:"md"},depth:1,x:4160,y:1500,width:384,height:265,labelBBox:{x:6,y:0,width:106,height:15}},{id:"otcKubernetes.edpCluster",parent:"otcKubernetes",level:1,children:[],inEdges:["1ogkmfn","b27cdb","1mbuxdd","9r557q","rivecr","1lrp92n","se5brg"],outEdges:["i6v3n","p2umm7","126mt75","c2grk6","1ean8sr","l1c2z3","1m1lj8s"],deploymentRef:"otcKubernetes.edpCluster",title:"EDP Cluster",kind:"cluster",color:"primary",shape:"rectangle",description:{txt:"EDP platform cluster"},tags:[],style:{opacity:15,size:"md"},x:4192,y:1553,width:320,height:180,labelBBox:{x:89,y:63,width:142,height:48}},{id:"local.gitea",parent:"local",level:1,children:["local.gitea.forgejo","local.gitea.forgejoRunner"],inEdges:["1m1lj8s","o229dq"],outEdges:["se5brg"],deploymentRef:"local.gitea",title:"gitea",kind:"namespace",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:12428,y:79,width:440,height:995,labelBBox:{x:6,y:0,width:38,height:15}},{id:"local.gitea.forgejo",parent:"local.gitea",level:2,children:[],inEdges:["o229dq"],outEdges:[],kind:"instance",title:"Forgejo",description:{txt:`Fully managed DevOps Platform offering capabilities like code version controling collaboration and ticketing -and security scanning`},technology:"Golang",tags:[],icon:"tech:go",color:"primary",shape:"rectangle",style:{opacity:20,size:"md"},deploymentRef:"local.gitea.forgejo",modelRef:"edp.forgejo",navigateTo:"forgejo",x:8428,y:844,width:340,height:180,labelBBox:{x:46,y:18,width:278,height:139}},{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:3432,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:4802,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:4352,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:8900,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:8900,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:5254,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:5704,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:9352,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",description:{txt:"edp.buildth.ing"},tags:[],style:{opacity:15,size:"md"},navigateTo:"forgejo",x:1173,y:844,width:365,height:180,labelBBox:{x:46,y:63,width:304,height:48}},{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","e3benz"],outEdges:[],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. - - This is kubernetes clusters and other infrastructure like nodes and vms, and platform services. All is set up by IaC-pipelines in the Foundry.`},tags:[],style:{opacity:15,size:"md"},depth:1,x:2840,y:79,width:442,height:1682,labelBBox:{x:6,y:0,width:181,height:15}},{id:"local.backstage.database",parent:"local.backstage",level:2,children:[],inEdges:["19kg5y"],outEdges:[],kind:"instance",title:"Database",technology:"Postgresql",tags:[],icon:"tech:postgresql",color:"primary",shape:"storage",style:{opacity:15,size:"md"},deploymentRef:"local.backstage.database",modelRef:"edp.ui.database",x:6156,y:1177,width:320,height:180,labelBBox:{x:101,y:64,width:148,height:46}},{id:"local.argocd.argocdRedis",parent:"local.argocd",level:2,children:[],inEdges:["1gfgfhk","qfu5xm","g7xnzs","fon3rk"],outEdges:[],kind:"instance",title:"Redis",technology:"Redis",tags:[],icon:"tech:redis",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.argocd.argocdRedis",modelRef:"edp.argoCD.argocdRedis",x:7751,y:1177,width:320,height:180,labelBBox:{x:119,y:64,width:113,height:46}},{id:"local.keycloak.keycloakDB",parent:"local.keycloak",level:2,children:[],inEdges:["4zwy1m"],outEdges:[],kind:"instance",title:"Database",technology:"Postgresql",tags:[],icon:"tech:postgresql",color:"primary",shape:"storage",style:{opacity:15,size:"md"},deploymentRef:"local.keycloak.keycloakDB",modelRef:"edp.keycloak.keycloakDB",x:3432,y:1177,width:320,height:180,labelBBox:{x:101,y:64,width:148,height:46}},{id:"local.monitoring.distributor",parent:"local.monitoring",level:2,children:[],inEdges:["sb2j38"],outEdges:[],kind:"instance",title:"Distributor",tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.monitoring.distributor",modelRef:"edp.monitoring.loki.distributor",x:4802,y:1177,width:320,height:180,labelBBox:{x:112,y:74,width:95,height:24}},{id:"otc-edp-per-tenant.forgejoRunnerInfrastructure",parent:"otc-edp-per-tenant",level:1,children:[],inEdges:[],outEdges:["fkkf8y"],deploymentRef:"otc-edp-per-tenant.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"},x:2890,y:150,width:342,height:180,labelBBox:{x:18,y:54,width:306,height:66}},{id:"otc-edp-per-tenant.cce",parent:"otc-edp-per-tenant",level:1,children:[],inEdges:["fkkf8y","r3wxut","1sng0q0"],outEdges:["pit45i"],deploymentRef:"otc-edp-per-tenant.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:2893,y:1177,width:327,height:180,labelBBox:{x:46,y:53,width:266,height:68}},{id:"otc-edp-per-tenant.cloudServices",parent:"otc-edp-per-tenant",level:1,children:[],inEdges:["pit45i","e3benz"],outEdges:[],deploymentRef:"otc-edp-per-tenant.cloudServices",title:"EDP Cloud Services",kind:"paas",technology:"Cloud Services",color:"primary",shape:"rectangle",description:{txt:"EDP Cloud Services"},tags:[],style:{opacity:15,size:"md"},x:2897,y:1531,width:320,height:180,labelBBox:{x:67,y:53,width:185,height:68}},{id:"local.spark.sparkoperator",parent:"local",level:1,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Spark Operator",technology:"Spark",tags:[],icon:"tech:spark",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.spark.sparkoperator",modelRef:"edp.spark.sparkoperator",x:13440,y:150,width:320,height:180,labelBBox:{x:76,y:65,width:198,height:45}}],edges:[{id:"1xqlhup",source:"edgeProvider",target:"edgeSdk",label:"built using",points:[[1035,330],[1021,352],[1007,374],[995,395],[977,425],[959,458],[943,489]],labelBBox:{x:996,y:395,width:67,height:18},parent:null,relations:["1wlvsb5"],color:"gray",line:"dashed",head:"normal"},{id:"u9omtf",source:"edgeProvider",target:"edgeProviderHost.edp",label:"hosted on",points:[[1264,255],[1378,274],[1522,320],[1596,426],[1668,529],[1646,594],[1596,709],[1574,759],[1536,803],[1496,838]],labelBBox:{x:1643,y:576,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:[[1160,330],[1197,379],[1244,439],[1282,489]],labelBBox:{x:1225,y:395,width:80,height:18},parent:null,relations:["1mpjz5d"],color:"gray",line:"dashed",head:"normal"},{id:"14pfq5a",source:"edgeSdk",target:"edgeProviderHost.edp",label:"hosted on",points:[[1011,677],[1077,727],[1160,788],[1228,838]],labelBBox:{x:1125,y:742,width:66,height:18},parent:null,relations:["1sm6ifh"],color:"gray",line:"dashed",head:"normal"},{id:"lw6otg",source:"edgeSdk",target:"edgeCloud.edgeApi",label:"calls",points:[[884,677],[880,725],[875,785],[871,834]],labelBBox:{x:879,y:742,width:32,height:18},parent:null,relations:["vfhcba"],color:"gray",line:"dashed",head:"normal"},{id:"pit45i",source:"otc-edp-per-tenant.cce",target:"otc-edp-per-tenant.cloudServices",label:null,points:[[3057,1357],[3057,1407],[3057,1469],[3057,1521]],labelBBox:null,parent:"otc-edp-per-tenant",relations:["1fzhjm9","15njmlz","hks76r","1w18ve8"],color:"gray",line:"dashed",head:"normal"},{id:"fkkf8y",source:"otc-edp-per-tenant.forgejoRunnerInfrastructure",target:"otc-edp-per-tenant.cce",label:"registers",points:[[3061,330],[3060,521],[3058,968],[3057,1167]],labelBBox:{x:3060,y:742,width:58,height:18},parent:"otc-edp-per-tenant",relations:["g9oj4f"],color:"gray",line:"dashed",head:"normal"},{id:"r3wxut",source:"otc-edpFoundry.workflowSetupEDPInfrastructure",target:"otc-edp-per-tenant.cce",label:"deploys edp to otc.cce",points:[[2260,1024],[2290,1043],[2323,1060],[2355,1074],[2528,1150],[2738,1202],[2883,1233]],labelBBox:{x:2448,y:1089,width:143,height:18},parent:null,relations:["uk77s5"],color:"gray",line:"dashed",head:"normal"},{id:"1sng0q0",source:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",target:"otc-edp-per-tenant.cce",label:null,points:[[2708,1024],[2774,1070],[2854,1125],[2921,1172]],labelBBox:null,parent:null,relations:["jde35l"],color:"gray",line:"dashed",head:"normal"},{id:"e3benz",source:"otc-edpFoundry.workflowSetupEDPInfrastructure",target:"otc-edp-per-tenant.cloudServices",label:"deploys edp to otc.paas",points:[[2204,1024],[2302,1137],[2485,1332],[2674,1457],[2740,1500],[2819,1536],[2888,1563]],labelBBox:{x:2675,y:1255,width:152,height:18},parent:null,relations:["1pfc6bl"],color:"gray",line:"dashed",head:"normal"},{id:"llfvob",source:"otc-edpFoundry.cce",target:"otc-edpFoundry.workflowSetupEDPInfrastructure",label:"invokes",points:[[2146,677],[2143,725],[2140,785],[2136,834]],labelBBox:{x:2143,y:742,width:51,height:18},parent:"otc-edpFoundry",relations:["dola40"],color:"gray",line:"dashed",head:"normal"},{id:"fil3na",source:"otc-edpFoundry.cce",target:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",label:"invokes",points:[[2262,677],[2323,727],[2399,788],[2462,838]],labelBBox:{x:2367,y:742,width:51,height:18},parent:"otc-edpFoundry",relations:["1f5y9gc"],color:"gray",line:"dashed",head:"normal"},{id:"109g3jm",source:"otc-edpFoundry.forgejoRunnerInfrastructure",target:"otc-edpFoundry.cce",label:"registers",points:[[2152,330],[2152,378],[2152,438],[2152,487]],labelBBox:{x:2153,y:395,width:58,height:18},parent:"otc-edpFoundry",relations:["1umzqdy"],color:"gray",line:"dashed",head:"normal"},{id:"c8rye7",source:"edgeProviderHost.terralist",target:"edgeProviderHost.edp",label:"authenticates via",points:[[1356,677],[1356,725],[1356,785],[1356,834]],labelBBox:{x:1357,y:742,width:109,height:18},parent:"edgeProviderHost",relations:["1q6ftvm"],color:"gray",line:"dashed",head:"normal"},{id:"1toht4t",source:"edgeCloud.edgeApi",target:"edgeCloud.edgeResources",label:"creates/destroys",points:[[863,1024],[863,1068],[863,1121],[863,1167]],labelBBox:{x:864,y:1089,width:107,height:18},parent:"edgeCloud",relations:["rr0lcz"],color:"gray",line:"dashed",head:"normal"},{id:"19kg5y",source:"local.backstage.backstage",target:"local.backstage.database",label:"reads/writes",points:[[6316,1024],[6316,1068],[6316,1121],[6316,1166]],labelBBox:{x:6317,y:1089,width:79,height:18},parent:"local.backstage",relations:["c23sak"],color:"gray",line:"dashed",head:"normal"},{id:"1gfgfhk",source:"local.argocd.argocdAppController",target:"local.argocd.argocdRedis",label:"read/write",points:[[6913,1024],[6944,1043],[6978,1061],[7011,1074],[7255,1172],[7556,1223],[7741,1248]],labelBBox:{x:7105,y:1089,width:65,height:18},parent:"local.argocd",relations:["10vkxaf"],color:"gray",line:"dashed",head:"normal"},{id:"qfu5xm",source:"local.argocd.argocdAppSetController",target:"local.argocd.argocdRedis",label:"read/write",points:[[7373,1024],[7401,1042],[7432,1059],[7461,1074],[7552,1121],[7656,1166],[7742,1201]],labelBBox:{x:7534,y:1089,width:65,height:18},parent:"local.argocd",relations:["i8z0mi"],color:"gray",line:"dashed",head:"normal"},{id:"g7xnzs",source:"local.argocd.argocdRepoServer",target:"local.argocd.argocdRedis",label:"read/write",points:[[7746,1024],[7777,1069],[7814,1123],[7845,1169]],labelBBox:{x:7806,y:1089,width:65,height:18},parent:"local.argocd",relations:["iullhy"],color:"gray",line:"dashed",head:"normal"},{id:"fon3rk",source:"local.argocd.argocdServer",target:"local.argocd.argocdRedis",label:"read/write",points:[[8076,1024],[8045,1069],[8008,1123],[7977,1169]],labelBBox:{x:8031,y:1089,width:65,height:18},parent:"local.argocd",relations:["yfhhi5"],color:"gray",line:"dashed",head:"normal"},{id:"4zwy1m",source:"local.keycloak.keycloak",target:"local.keycloak.keycloakDB",label:"reads/writes",points:[[3592,1024],[3592,1068],[3592,1121],[3592,1166]],labelBBox:{x:3593,y:1089,width:79,height:18},parent:"local.keycloak",relations:["18zxrhs"],color:"gray",line:"dashed",head:"normal"},{id:"sb2j38",source:"local.monitoring.alloy",target:"local.monitoring.distributor",label:"pushes logs",points:[[4962,1024],[4962,1068],[4962,1121],[4962,1167]],labelBBox:{x:4963,y:1089,width:79,height:18},parent:"local.monitoring",relations:["11ollyi"],color:"gray",line:"dashed",head:"normal"},{id:"15juth8",source:"local.ingressNginx.ingressNginx",target:"local.backstage.backstage",label:"https",points:[[6250,677],[6262,725],[6278,785],[6291,834]],labelBBox:{x:6273,y:742,width:34,height:18},parent:"local",relations:["v8c8aq"],color:"gray",line:"dashed",head:"normal"},{id:"p2br4p",source:"local.ingressNginx.ingressNginx",target:"local.argocd.argocdServer",label:"https",points:[[6387,596],[6751,614],[7634,668],[7911,773],[7952,789],[7992,813],[8026,838]],labelBBox:{x:7865,y:742,width:34,height:18},parent:"local",relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"o229dq",source:"local.ingressNginx.ingressNginx",target:"local.gitea.forgejo",label:"https",points:[[6387,591],[6821,600],[8013,637],[8378,773],[8418,788],[8458,813],[8492,838]],labelBBox:{x:8351,y:742,width:34,height:18},parent:"local",relations:["123efwn"],color:"gray",line:"dashed",head:"normal"},{id:"2vnvvg",source:"local.ingressNginx.ingressNginx",target:"local.keycloak.keycloak",label:"https",points:[[6125,677],[6105,690],[6084,702],[6063,709],[5963,746],[5693,735],[5587,742],[5447,752],[5412,760],[5272,765],[5252,766],[3839,767],[3820,773],[3777,787],[3735,812],[3699,838]],labelBBox:{x:5588,y:742,width:34,height:18},parent:"local",relations:["h3rut2"],color:"gray",line:"dashed",head:"normal"},{id:"3znaik",source:"local.velero.velero",target:"local.minio.minio",label:"store backups",points:[[9512,677],[9512,725],[9512,784],[9512,833]],labelBBox:{x:9513,y:742,width:91,height:18},parent:"local",relations:["1mazt1x"],color:"gray",line:"dashed",head:"normal"},{id:"4ix58c",source:"local.ingressNginx.ingressNginx",target:"local.minio.minio",label:"https",points:[[6387,593],[6979,609],[9028,671],[9302,773],[9341,788],[9379,812],[9411,837]],labelBBox:{x:9253,y:742,width:34,height:18},parent:"local",relations:["fe65w2"],color:"gray",line:"dashed",head:"normal"},{id:"1hr2s5j",source:"local.ingressNginx.ingressNginx",target:"local.monitoring.alloy",label:"https",points:[[6122,677],[6103,690],[6083,701],[6063,709],[5893,778],[5838,751],[5655,765],[5629,767],[5215,765],[5190,773],[5147,787],[5105,812],[5069,839]],labelBBox:{x:5958,y:742,width:34,height:18},parent:"local",relations:["1jvab2g"],color:"gray",line:"dashed",head:"normal"},{id:"1nksp5g",source:"local.ingressNginx.ingressNginx",target:"local.monitoring.queryFrontend",label:"https",points:[[6124,677],[6105,690],[6084,701],[6063,709],[6032,721],[5503,763],[5470,765],[5429,767],[4776,761],[4737,773],[4695,787],[4653,812],[4618,838]],labelBBox:{x:5752,y:742,width:34,height:18},parent:"local",relations:["fs60l7"],color:"gray",line:"dashed",head:"normal"},{id:"m2japo",source:"local.ingressNginx.ingressNginx",target:"local.openbao.openbao",label:"https",points:[[6387,589],[6881,591],[8378,612],[8832,773],[8874,788],[8915,813],[8951,839]],labelBBox:{x:8798,y:742,width:34,height:18},parent:"local",relations:["1p30hav"],color:"gray",line:"dashed",head:"normal"},{id:"4drflo",source:"local.ingressNginx.ingressNginx",target:"local.fibonacci.fibonacci",label:"https",points:[[6119,677],[6101,689],[6082,701],[6063,709],[5968,754],[5937,751],[5833,765],[5791,771],[5681,759],[5640,773],[5598,788],[5557,812],[5521,838]],labelBBox:{x:5976,y:742,width:34,height:18},parent:"local",relations:["1i5f8um"],color:"gray",line:"dashed",head:"normal"},{id:"ihlgsc",source:"local.ingressNginx.ingressNginx",target:"local.mailhog.mailhog",label:"https",points:[[6134,677],[6082,726],[6018,787],[5965,838]],labelBBox:{x:6057,y:742,width:34,height:18},parent:"local",relations:["ofdedh"],color:"gray",line:"dashed",head:"normal"}]},"edp-per-tenant":{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/otc/edp.c4",description:null,title:"EDP per tenant",id:"edp-per-tenant",autoLayout:{direction:"TB"},hash:"1767a1203e463aa5c6283c309b8414cd4b5d1b8f",bounds:{x:0,y:0,width:2010,height:1175},nodes:[{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:[],outEdges:[],deploymentRef:"otc-edp-per-tenant",title:"OTC EDP per tenant cluster",kind:"cloud",technology:"OTC",color:"slate",shape:"rectangle",description:{txt:`OTC environment for EDP. EDP is the environment a customer gets from us. +and security scanning`},technology:"Golang",tags:[],icon:"tech:go",color:"primary",shape:"rectangle",style:{opacity:20,size:"md"},deploymentRef:"local.gitea.forgejo",modelRef:"edp.forgejo",navigateTo:"forgejo",x:12478,y:844,width:340,height:180,labelBBox:{x:46,y:18,width:278,height:139}},{id:"local.gitea.forgejoRunner",parent:"local.gitea",level:2,children:[],inEdges:["1m1lj8s"],outEdges:["se5brg"],kind:"instance",title:"Forgejo Runner",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:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.gitea.forgejoRunner",modelRef:"forgejoRunner",x:12478,y:150,width:320,height:180,labelBBox:{x:23,y:36,width:274,height:102}},{id:"local.spark.sparkoperator",parent:"local",level:1,children:[],inEdges:[],outEdges:[],kind:"instance",title:"Spark Operator",technology:"Spark",tags:[],icon:"tech:spark",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"local.spark.sparkoperator",modelRef:"edp.spark.sparkoperator",x:17038,y:150,width:320,height:180,labelBBox:{x:76,y:65,width:198,height:45}}],edges:[{id:"1xqlhup",source:"edgeProvider",target:"edgeSdk",label:"built using",points:[[1024,330],[986,379],[940,439],[902,489]],labelBBox:{x:968,y:395,width:67,height:18},parent:null,relations:["1wlvsb5"],color:"gray",line:"dashed",head:"normal"},{id:"u9omtf",source:"edgeProvider",target:"edgeProviderHost.edp",label:"hosted on",points:[[1264,266],[1360,290],[1472,337],[1532,426],[1602,531],[1582,594],[1532,709],[1510,759],[1472,803],[1432,838]],labelBBox:{x:1578,y:576,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:[[1144,330],[1172,379],[1207,439],[1235,489]],labelBBox:{x:1193,y:395,width:80,height:18},parent:null,relations:["1mpjz5d"],color:"gray",line:"dashed",head:"normal"},{id:"14pfq5a",source:"edgeSdk",target:"edgeProviderHost.edp",label:"hosted on",points:[[947,677],[1013,727],[1096,788],[1164,838]],labelBBox:{x:1061,y:742,width:66,height:18},parent:null,relations:["1sm6ifh"],color:"gray",line:"dashed",head:"normal"},{id:"lw6otg",source:"edgeSdk",target:"edgeCloud.edgeApi",label:"calls",points:[[820,677],[816,725],[811,785],[807,834]],labelBBox:{x:815,y:742,width:32,height:18},parent:null,relations:["vfhcba"],color:"gray",line:"dashed",head:"normal"},{id:"1ogkmfn",source:"edgeConnectEnv",target:"otcKubernetes.edpCluster",label:"[...]",points:[[5612,330],[5661,397],[5715,491],[5715,586],[5715,586],[5715,586],[5715,1268],[5715,1420],[5593,1426],[5454,1488],[5291,1561],[4789,1609],[4522,1630]],labelBBox:{x:5716,y:922,width:25,height:18},parent:null,relations:["18dtot7","1k6h7jf"],color:"gray",line:"dashed",head:"normal"},{id:"i6v3n",source:"otcKubernetes.edpCluster",target:"edgeConnectEnv",label:"runs workflows",points:[[4512,1629],[4678,1611],[4940,1565],[5141,1457],[5253,1397],[5356,1395],[5356,1268],[5356,586],[5356,586],[5356,586],[5356,495],[5406,404],[5453,338]],labelBBox:{x:5357,y:923,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"pit45i",source:"otc-edp-per-tenant.cce",target:"otc-edp-per-tenant.cloudServices",label:null,points:[[3070,1357],[3068,1391],[3066,1430],[3064,1465],[3063,1490],[3062,1518],[3061,1543]],labelBBox:null,parent:"otc-edp-per-tenant",relations:["1fzhjm9","15njmlz","hks76r","1w18ve8"],color:"gray",line:"dashed",head:"normal"},{id:"b27cdb",source:"otc-edp-per-tenant.cce",target:"otcKubernetes.edpCluster",label:"register",points:[[3091,1357],[3103,1404],[3126,1457],[3168,1488],[3182,1498],[3306,1498],[3323,1500],[3627,1532],[3979,1584],[4182,1615]],labelBBox:{x:3169,y:1465,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"fkkf8y",source:"otc-edp-per-tenant.forgejoRunnerInfrastructure",target:"otc-edp-per-tenant.cce",label:"registers",points:[[3071,330],[3072,521],[3075,968],[3076,1167]],labelBBox:{x:3075,y:742,width:58,height:18},parent:"otc-edp-per-tenant",relations:["g9oj4f"],color:"gray",line:"dashed",head:"normal"},{id:"r3wxut",source:"otc-edpFoundry.workflowSetupEDPInfrastructure",target:"otc-edp-per-tenant.cce",label:"deploys edp to otc.cce",points:[[3563,990],[3444,1031],[3299,1082],[3286,1089],[3247,1112],[3208,1142],[3175,1170]],labelBBox:{x:3287,y:1089,width:143,height:18},parent:null,relations:["uk77s5"],color:"gray",line:"dashed",head:"normal"},{id:"1sng0q0",source:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",target:"otc-edp-per-tenant.cce",label:null,points:[[4048,1024],[4017,1043],[3982,1062],[3948,1074],[3691,1171],[3605,1110],[3339,1177],[3310,1184],[3280,1193],[3251,1203]],labelBBox:null,parent:null,relations:["jde35l"],color:"gray",line:"dashed",head:"normal"},{id:"p2umm7",source:"otcKubernetes.edpCluster",target:"otc-edp-per-tenant.cce",label:"runs workflows",points:[[4192,1627],[3950,1603],[3503,1552],[3356,1488],[3289,1459],[3223,1409],[3173,1364]],labelBBox:{x:3357,y:1465,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"e3benz",source:"otc-edpFoundry.workflowSetupEDPInfrastructure",target:"otc-edp-per-tenant.cloudServices",label:"deploys edp to otc.paas",points:[[3563,949],[3302,976],[2801,1043],[2694,1177],[2617,1275],[2629,1351],[2694,1457],[2737,1527],[2816,1572],[2889,1599]],labelBBox:{x:2695,y:1255,width:152,height:18},parent:null,relations:["1pfc6bl"],color:"gray",line:"dashed",head:"normal"},{id:"1mbuxdd",source:"otc-edp-per-tenant.forgejoRunnerInfrastructure",target:"otcKubernetes.edpCluster",label:"register",points:[[2899,245],[2718,254],[2429,287],[2205,395],[2090,451],[1990,459],[1990,586],[1990,586],[1990,586],[1990,1268],[1990,1395],[2088,1408],[2205,1457],[2310,1501],[3269,1496],[3323,1500],[3627,1523],[3979,1578],[4182,1612]],labelBBox:{x:1991,y:923,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"126mt75",source:"otcKubernetes.edpCluster",target:"otc-edp-per-tenant.forgejoRunnerInfrastructure",label:"runs workflows",points:[[4192,1616],[3990,1584],[3632,1530],[3323,1500],[3230,1491],[3206,1493],[3113,1488],[3001,1481],[2710,1507],[2609,1457],[2422,1365],[2303,1310],[2303,1102],[2303,586],[2303,586],[2303,586],[2303,331],[2662,263],[2888,246]],labelBBox:{x:2304,y:923,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"llfvob",source:"otc-edpFoundry.cce",target:"otc-edpFoundry.workflowSetupEDPInfrastructure",label:"invokes",points:[[4049,677],[3986,727],[3908,788],[3844,838]],labelBBox:{x:3957,y:742,width:51,height:18},parent:"otc-edpFoundry",relations:["dola40"],color:"gray",line:"dashed",head:"normal"},{id:"fil3na",source:"otc-edpFoundry.cce",target:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",label:"invokes",points:[[4165,677],[4166,725],[4168,785],[4170,834]],labelBBox:{x:4169,y:742,width:51,height:18},parent:"otc-edpFoundry",relations:["1f5y9gc"],color:"gray",line:"dashed",head:"normal"},{id:"109g3jm",source:"otc-edpFoundry.forgejoRunnerInfrastructure",target:"otc-edpFoundry.cce",label:"registers",points:[[4162,330],[4162,378],[4162,438],[4162,487]],labelBBox:{x:4163,y:395,width:58,height:18},parent:"otc-edpFoundry",relations:["1umzqdy"],color:"gray",line:"dashed",head:"normal"},{id:"9r557q",source:"otc-edpFoundry.workflowSetupEDPInfrastructure",target:"otcKubernetes.edpCluster",label:"register",points:[[3661,1024],[3592,1136],[3501,1330],[3599,1457],[3670,1548],[3982,1600],[4182,1625]],labelBBox:{x:3600,y:1255,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"c2grk6",source:"otcKubernetes.edpCluster",target:"otc-edpFoundry.workflowSetupEDPInfrastructure",label:"runs workflows",points:[[4192,1580],[4129,1550],[4060,1509],[4007,1457],[3884,1335],[3800,1148],[3757,1034]],labelBBox:{x:4008,y:1255,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"rivecr",source:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",target:"otcKubernetes.edpCluster",label:"register",points:[[4234,1024],[4247,1045],[4260,1068],[4271,1089],[4344,1235],[4356,1428],[4356,1543]],labelBBox:{x:4355,y:1255,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"1ean8sr",source:"otcKubernetes.edpCluster",target:"otc-edpFoundry.workflowSetupArgoCDInfrastructure",label:"runs workflows",points:[[4243,1553],[4217,1526],[4192,1493],[4177,1457],[4122,1319],[4136,1143],[4153,1034]],labelBBox:{x:4178,y:1255,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"1lrp92n",source:"otc-edpFoundry.forgejoRunnerInfrastructure",target:"otcKubernetes.edpCluster",label:"register",points:[[4333,272],[4589,324],[5043,436],[5043,586],[5043,586],[5043,586],[5043,1268],[5043,1504],[4727,1592],[4522,1624]],labelBBox:{x:5044,y:923,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"},{id:"l1c2z3",source:"otcKubernetes.edpCluster",target:"otc-edpFoundry.forgejoRunnerInfrastructure",label:"runs workflows",points:[[4422,1553],[4434,1533],[4445,1510],[4452,1488],[4455,1478],[4452,1475],[4452,1465],[4441,1003],[4603,837],[4391,426],[4373,392],[4347,362],[4317,337]],labelBBox:{x:4502,y:923,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"c8rye7",source:"edgeProviderHost.terralist",target:"edgeProviderHost.edp",label:"authenticates via",points:[[1292,677],[1292,725],[1292,785],[1292,834]],labelBBox:{x:1293,y:742,width:109,height:18},parent:"edgeProviderHost",relations:["1q6ftvm"],color:"gray",line:"dashed",head:"normal"},{id:"1toht4t",source:"edgeCloud.edgeApi",target:"edgeCloud.edgeResources",label:"creates/destroys",points:[[799,1024],[799,1068],[799,1121],[799,1167]],labelBBox:{x:800,y:1089,width:107,height:18},parent:"edgeCloud",relations:["rr0lcz"],color:"gray",line:"dashed",head:"normal"},{id:"1m1lj8s",source:"otcKubernetes.edpCluster",target:"local.gitea.forgejoRunner",label:"runs workflows",points:[[4512,1640],[4926,1629],[6002,1572],[6002,1268],[6002,586],[6002,586],[6002,586],[6002,443],[6127,441],[6263,395],[6317,377],[8259,382],[8316,380],[9932,349],[11888,272],[12468,248]],labelBBox:{x:6003,y:923,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"19kg5y",source:"local.backstage.backstage",target:"local.backstage.database",label:"reads/writes",points:[[8544,1024],[8544,1068],[8544,1121],[8544,1166]],labelBBox:{x:8545,y:1089,width:79,height:18},parent:"local.backstage",relations:["c23sak"],color:"gray",line:"dashed",head:"normal"},{id:"1gfgfhk",source:"local.argocd.argocdAppController",target:"local.argocd.argocdRedis",label:"read/write",points:[[9141,1024],[9172,1043],[9206,1061],[9239,1074],[9483,1172],[9784,1223],[9969,1248]],labelBBox:{x:9333,y:1089,width:65,height:18},parent:"local.argocd",relations:["10vkxaf"],color:"gray",line:"dashed",head:"normal"},{id:"qfu5xm",source:"local.argocd.argocdAppSetController",target:"local.argocd.argocdRedis",label:"read/write",points:[[9601,1024],[9629,1042],[9660,1059],[9689,1074],[9780,1121],[9884,1166],[9970,1201]],labelBBox:{x:9762,y:1089,width:65,height:18},parent:"local.argocd",relations:["i8z0mi"],color:"gray",line:"dashed",head:"normal"},{id:"g7xnzs",source:"local.argocd.argocdRepoServer",target:"local.argocd.argocdRedis",label:"read/write",points:[[9974,1024],[10005,1069],[10042,1123],[10073,1169]],labelBBox:{x:10034,y:1089,width:65,height:18},parent:"local.argocd",relations:["iullhy"],color:"gray",line:"dashed",head:"normal"},{id:"fon3rk",source:"local.argocd.argocdServer",target:"local.argocd.argocdRedis",label:"read/write",points:[[10304,1024],[10273,1069],[10236,1123],[10205,1169]],labelBBox:{x:10259,y:1089,width:65,height:18},parent:"local.argocd",relations:["yfhhi5"],color:"gray",line:"dashed",head:"normal"},{id:"4zwy1m",source:"local.keycloak.keycloak",target:"local.keycloak.keycloakDB",label:"reads/writes",points:[[10834,1024],[10834,1068],[10834,1121],[10834,1166]],labelBBox:{x:10835,y:1089,width:79,height:18},parent:"local.keycloak",relations:["18zxrhs"],color:"gray",line:"dashed",head:"normal"},{id:"sb2j38",source:"local.monitoring.alloy",target:"local.monitoring.distributor",label:"pushes logs",points:[[7624,1024],[7624,1068],[7624,1121],[7624,1167]],labelBBox:{x:7625,y:1089,width:79,height:18},parent:"local.monitoring",relations:["11ollyi"],color:"gray",line:"dashed",head:"normal"},{id:"15juth8",source:"local.ingressNginx.ingressNginx",target:"local.backstage.backstage",label:"https",points:[[10498,677],[10478,690],[10457,702],[10435,709],[10168,804],[9443,756],[9160,765],[9138,766],[8793,766],[8772,773],[8729,787],[8687,812],[8651,838]],labelBBox:{x:10276,y:742,width:34,height:18},parent:"local",relations:["v8c8aq"],color:"gray",line:"dashed",head:"normal"},{id:"p2br4p",source:"local.ingressNginx.ingressNginx",target:"local.argocd.argocdServer",label:"https",points:[[10539,677],[10505,726],[10464,786],[10430,836]],labelBBox:{x:10490,y:742,width:34,height:18},parent:"local",relations:["1yssos5"],color:"gray",line:"dashed",head:"normal"},{id:"o229dq",source:"local.ingressNginx.ingressNginx",target:"local.gitea.forgejo",label:"https",points:[[10759,595],[11143,612],[12108,664],[12410,773],[12453,789],[12495,813],[12532,839]],labelBBox:{x:12387,y:742,width:34,height:18},parent:"local",relations:["123efwn"],color:"gray",line:"dashed",head:"normal"},{id:"2vnvvg",source:"local.ingressNginx.ingressNginx",target:"local.keycloak.keycloak",label:"https",points:[[10660,677],[10693,726],[10734,786],[10768,836]],labelBBox:{x:10718,y:742,width:34,height:18},parent:"local",relations:["h3rut2"],color:"gray",line:"dashed",head:"normal"},{id:"3znaik",source:"local.velero.velero",target:"local.minio.minio",label:"store backups",points:[[12186,677],[12186,725],[12186,784],[12186,833]],labelBBox:{x:12187,y:742,width:91,height:18},parent:"local",relations:["1mazt1x"],color:"gray",line:"dashed",head:"normal"},{id:"4ix58c",source:"local.ingressNginx.ingressNginx",target:"local.minio.minio",label:"https",points:[[10759,600],[11070,626],[11744,688],[11960,773],[12e3,789],[12040,814],[12075,839]],labelBBox:{x:11923,y:742,width:34,height:18},parent:"local",relations:["fe65w2"],color:"gray",line:"dashed",head:"normal"},{id:"1hr2s5j",source:"local.ingressNginx.ingressNginx",target:"local.monitoring.alloy",label:"https",points:[[10498,677],[10478,690],[10457,702],[10435,709],[10427,712],[7858,770],[7849,773],[7807,787],[7766,812],[7730,838]],labelBBox:{x:9066,y:742,width:34,height:18},parent:"local",relations:["1jvab2g"],color:"gray",line:"dashed",head:"normal"},{id:"1nksp5g",source:"local.ingressNginx.ingressNginx",target:"local.monitoring.queryFrontend",label:"https",points:[[10498,677],[10478,690],[10457,702],[10435,709],[10407,719],[8330,764],[8302,773],[8259,787],[8218,812],[8182,839]],labelBBox:{x:9306,y:742,width:34,height:18},parent:"local",relations:["fs60l7"],color:"gray",line:"dashed",head:"normal"},{id:"m2japo",source:"local.ingressNginx.ingressNginx",target:"local.openbao.openbao",label:"https",points:[[10498,677],[10478,690],[10457,702],[10435,709],[10251,772],[7117,713],[6932,773],[6889,787],[6847,812],[6811,839]],labelBBox:{x:8193,y:742,width:34,height:18},parent:"local",relations:["1p30hav"],color:"gray",line:"dashed",head:"normal"},{id:"4drflo",source:"local.ingressNginx.ingressNginx",target:"local.fibonacci.fibonacci",label:"https",points:[[10759,634],[10855,666],[10977,713],[11076,773],[11108,793],[11140,816],[11170,838]],labelBBox:{x:11053,y:742,width:34,height:18},parent:"local",relations:["1i5f8um"],color:"gray",line:"dashed",head:"normal"},{id:"ihlgsc",source:"local.ingressNginx.ingressNginx",target:"local.mailhog.mailhog",label:"https",points:[[10759,598],[10946,614],[11263,658],[11510,773],[11547,791],[11585,815],[11619,838]],labelBBox:{x:11488,y:742,width:34,height:18},parent:"local",relations:["ofdedh"],color:"gray",line:"dashed",head:"normal"},{id:"se5brg",source:"local.gitea.forgejoRunner",target:"otcKubernetes.edpCluster",label:"register",points:[[12478,246],[11500,274],[6361,428],[6361,586],[6361,586],[6361,586],[6361,1268],[6361,1411],[6233,1404],[6100,1457],[5816,1571],[4904,1620],[4522,1636]],labelBBox:{x:6362,y:923,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"}]},"edp-per-tenant":{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/deployment/otc/edp.c4",description:null,title:"EDP per tenant",id:"edp-per-tenant",autoLayout:{direction:"TB"},hash:"1767a1203e463aa5c6283c309b8414cd4b5d1b8f",bounds:{x:0,y:0,width:2010,height:1175},nodes:[{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:[],outEdges:[],deploymentRef:"otc-edp-per-tenant",title:"OTC EDP per tenant cluster",kind:"cloud",technology:"OTC",color:"slate",shape:"rectangle",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.`},tags:[],style:{opacity:15,size:"md"},depth:3,x:8,y:8,width:1994,height:1159,labelBBox:{x:6,y:0,width:181,height:15}},{id:"otc-edp-per-tenant.forgejoRunnerInfrastructure",parent:"otc-edp-per-tenant",level:1,children:["otc-edp-per-tenant.forgejoRunnerInfrastructure.forgejoRunner"],inEdges:[],outEdges:["1dcszi5"],deploymentRef:"otc-edp-per-tenant.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"},depth:1,x:321,y:150,width:384,height:266,labelBBox:{x:6,y:0,width:235,height:15}},{id:"otc-edp-per-tenant.cce",parent:"otc-edp-per-tenant",level:1,children:["otc-edp-per-tenant.cce.edp"],inEdges:["1dcszi5"],outEdges:["8msu1q","120qe5o","ealiax","1trj5u6"],deploymentRef:"otc-edp-per-tenant.cce",title:"OTC CCE",kind:"kubernetes",technology:"Kubernetes",color:"red",shape:"rectangle",icon:"tech:kubernetes",description:{txt:"OTC Container Cluster Engine"},tags:[],style:{opacity:15,size:"md"},depth:2,x:755,y:79,width:954,height:719,labelBBox:{x:6,y:0,width:54,height:15}},{id:"otc-edp-per-tenant.cce.edp",parent:"otc-edp-per-tenant.cce",level:2,children:["otc-edp-per-tenant.cce.edp.externalSecrets","otc-edp-per-tenant.cce.edp.ingressNginx","otc-edp-per-tenant.cce.edp.argoCD","otc-edp-per-tenant.cce.edp.forgejo"],inEdges:["1dcszi5"],outEdges:["8msu1q","120qe5o","ealiax","1trj5u6"],deploymentRef:"otc-edp-per-tenant.cce.edp",title:"EDP",kind:"cluster",color:"primary",shape:"rectangle",tags:[],style:{opacity:15,size:"md"},depth:1,x:787,y:132,width:890,height:634,labelBBox:{x:6,y:0,width:27,height:15}},{id:"otc-edp-per-tenant.cce.edp.externalSecrets",parent:"otc-edp-per-tenant.cce.edp",level:3,children:[],inEdges:[],outEdges:[],kind:"instance",title:"external-secrets",description:{txt:"Provider to access externally stored Kubernetes secrets"},tags:["internal"],color:"primary",shape:"rectangle",style:{opacity:20,size:"md"},deploymentRef:"otc-edp-per-tenant.cce.edp.externalSecrets",modelRef:"edp.externalSecrets",navigateTo:"externalSecrets",x:837,y:204,width:320,height:180,labelBBox:{x:39,y:54,width:242,height:65}},{id:"otc-edp-per-tenant.forgejoRunnerInfrastructure.forgejoRunner",parent:"otc-edp-per-tenant.forgejoRunnerInfrastructure",level:2,children:[],inEdges:[],outEdges:["1dcszi5"],kind:"instance",title:"Forgejo Runner",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:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"otc-edp-per-tenant.forgejoRunnerInfrastructure.forgejoRunner",modelRef:"forgejoRunner",x:353,y:204,width:320,height:180,labelBBox:{x:23,y:36,width:274,height:101}},{id:"otc-edp-per-tenant.cce.edp.ingressNginx",parent:"otc-edp-per-tenant.cce.edp",level:3,children:[],inEdges:[],outEdges:["1ir70dd","1kr1wg1"],kind:"instance",title:"Ingress",description:{txt:"Ingress Controller for incoming http(s) traffic"},tags:["internal"],color:"primary",shape:"rectangle",style:{opacity:20,size:"md"},deploymentRef:"otc-edp-per-tenant.cce.edp.ingressNginx",modelRef:"edp.ingressNginx",navigateTo:"ingressNginx",x:1287,y:204,width:320,height:180,labelBBox:{x:33,y:54,width:255,height:65}},{id:"otc-edp-per-tenant.cce.edp.argoCD",parent:"otc-edp-per-tenant.cce.edp",level:3,children:[],inEdges:["1ir70dd"],outEdges:[],kind:"instance",title:"ArgoCD",description:{txt:"GitOps Service"},tags:[],color:"primary",shape:"rectangle",style:{opacity:20,size:"md"},deploymentRef:"otc-edp-per-tenant.cce.edp.argoCD",modelRef:"edp.argoCD",navigateTo:"argoCD",x:1307,y:536,width:320,height:180,labelBBox:{x:108,y:63,width:105,height:48}},{id:"otc-edp-per-tenant.cce.edp.forgejo",parent:"otc-edp-per-tenant.cce.edp",level:3,children:[],inEdges:["1kr1wg1","1dcszi5"],outEdges:["8msu1q","120qe5o","ealiax","1trj5u6"],kind:"instance",title:"Forgejo",description:{txt:`Fully managed DevOps Platform offering capabilities like @@ -265,7 +265,7 @@ discover the expected and uncover the unexpected.`},technology:"Elasticsearch",t offering capabilities like code version controling collaboration and ticketing -and security scanning`},tags:[],technology:"Golang",kind:"container",isCustomized:!0,navigateTo:"forgejo",x:48,y:553,width:340,height:180,labelBBox:{x:46,y:17,width:279,height:139}},{id:"edp.garm",parent:"edp",level:1,children:["edp.garm.garm","edp.garm.providerEdgeConnect"],inEdges:["step-01","step-06","step-08","step-16"],outEdges:["step-03","step-04","step-07","step-09","step-18","step-19"],title:"Garm Image",modelRef:"edp.garm",shape:"rectangle",color:"primary",icon:"tech:docker",style:{opacity:20,size:"md"},tags:[],kind:"container",depth:1,x:709,y:142,width:1090,height:404,labelBBox:{x:6,y:0,width:77,height:15}},{id:"edp.garm.garm",parent:"edp.garm",level:2,children:[],inEdges:["step-01","step-06","step-08","step-16"],outEdges:["step-02","step-07","step-09","step-17"],title:"Garm",modelRef:"edp.garm.garm",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Provisions runners for Forgejo"},tags:[],kind:"component",x:749,y:316,width:325,height:180,labelBBox:{x:47,y:63,width:262,height:47}},{id:"edp.garm.providerEdgeConnect",parent:"edp.garm",level:2,children:[],inEdges:["step-02","step-17"],outEdges:["step-03","step-04","step-18","step-19"],title:"Garm Provider for EdgeConnect",modelRef:"edp.garm.providerEdgeConnect",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Acts as abstraction layer for EdgeConnect"},tags:[],kind:"component",x:1349,y:203,width:409,height:180,labelBBox:{x:47,y:54,width:347,height:65}},{id:"edgeConnect",parent:null,level:0,children:[],inEdges:["step-03","step-04","step-18","step-19"],outEdges:["step-05"],title:"Edge Connect",modelRef:"edgeConnect",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Provides an API to run applications on the edge"},tags:[],kind:"component",x:2135,y:169,width:320,height:180,labelBBox:{x:18,y:54,width:283,height:65}},{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["step-05","step-09","step-12","step-15"],outEdges:["step-06","step-10","step-11","step-12","step-13","step-15"],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:2665,y:810,width:320,height:180,labelBBox:{x:23,y:36,width:274,height:101}}],edges:[{id:"step-01",source:"edp.forgejo",target:"edp.garm.garm",label:"(Webhook) A new job is pending",points:[[389,687],[482,703],[596,707],[689,664],[761,631],[818,563],[857,504]],labelBBox:{x:458,y:632,width:228,height:19},parent:"edp",relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@0"},{id:"step-02",source:"edp.garm.garm",target:"edp.garm.providerEdgeConnect",label:"Create new runner",points:[[1074,428],[1142,433],[1220,433],[1289,417],[1321,410],[1352,399],[1383,387]],labelBBox:{x:1144,y:385,width:141,height:19},parent:"edp.garm",relations:["1olxwwi"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@1"},{id:"step-03",source:"edp.garm.providerEdgeConnect",target:"edgeConnect",label:"Create App (Runner)",points:[[1639,203],[1692,152],[1767,92],[1847,65],[1943,32],[1980,29],[2075,65],[2128,85],[2176,124],[2214,162]],labelBBox:{x:1886,y:7,width:156,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@2"},{id:"step-04",source:"edp.garm.providerEdgeConnect",target:"edgeConnect",label:"Create AppInstance (Runner)",points:[[1759,234],[1788,228],[1818,222],[1847,219],[1948,206],[1974,210],[2075,219],[2091,220],[2108,222],[2125,225]],labelBBox:{x:1859,y:178,width:209,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@3"},{id:"step-05",source:"edgeConnect",target:"forgejoRunner",label:"Deploys",points:[[2448,349],[2502,386],[2560,432],[2605,484],[2687,579],[2750,711],[2787,800]],labelBBox:{x:2524,y:372,width:77,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@4"},{id:"step-06",source:"forgejoRunner",target:"edp.garm.garm",label:"Get runner registration token",points:[[1084,448],[1101,452],[1118,455],[1134,459],[1784,591],[2007,420],[2605,706],[2657,731],[2706,772],[2745,810]],labelBBox:{x:1862,y:491,width:204,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@5"},{id:"step-07",source:"edp.garm.garm",target:"edp.forgejo",label:"Get runner registration token",points:[[399,600],[488,577],[595,546],[689,510],[709,503],[730,495],[750,486]],labelBBox:{x:470,y:478,width:204,height:19},dir:"back",parent:"edp",relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@6"},{id:"step-08",source:"edp.forgejo",target:"edp.garm.garm",label:"Token",points:[[300,553],[341,514],[393,472],[449,449],[540,410],[650,399],[739,397]],labelBBox:{x:539,y:368,width:65,height:19},parent:"edp",relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@7"},{id:"step-09",source:"edp.garm.garm",target:"forgejoRunner",label:"Token",points:[[1074,487],[1094,496],[1115,504],[1134,511],[1676,699],[2346,822],[2654,873]],labelBBox:{x:1931,y:682,width:65,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@8"},{id:"step-10",source:"forgejoRunner",target:"edp.forgejo",label:"Register runner",points:[[399,713],[415,718],[432,722],[449,726],[1184,886],[1385,807],[2135,865],[2304,878],[2346,883],[2515,892],[2564,894],[2617,896],[2665,897]],labelBBox:{x:1492,y:803,width:129,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@9"},{id:"step-11",source:"forgejoRunner",target:"edp.forgejo",label:"Fetch job",points:[[272,741],[371,914],[606,1253],[911,1253],[911,1253],[911,1253],[2296,1253],[2485,1253],[2658,1094],[2751,990]],labelBBox:{x:1511,y:1220,width:92,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@10"},{id:"step-12",source:"forgejoRunner",target:"forgejoRunner",label:"Work on job",points:[[2802,810],[2796,753],[2804,700],[2825,700],[2845,700],[2852,747],[2849,799]],labelBBox:{x:2773,y:667,width:109,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@11"},{id:"step-13",source:"forgejoRunner",target:"edp.forgejo",label:"Send result",points:[[240,743],[268,866],[332,1075],[449,1217],[604,1404],[667,1512],[911,1512],[911,1512],[911,1512],[2296,1512],[2568,1512],[2731,1160],[2794,990]],labelBBox:{x:1505,y:1479,width:104,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@12"},{id:"step-14",source:"edp.forgejo",target:"edp.forgejo",label:"Deregister Runner",points:[[157,553],[142,496],[163,443],[218,443],[271,443],[292,490],[282,542]],labelBBox:{x:147,y:410,width:148,height:19},parent:"edp",relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@13"},{id:"step-15",source:"forgejoRunner",target:"forgejoRunner",label:"Terminate",points:[[2788,810],[2763,708],[2775,590],[2825,590],[2873,590],[2886,700],[2864,800]],labelBBox:{x:2779,y:557,width:97,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@14"},{id:"step-16",source:"edp.forgejo",target:"edp.garm.garm",label:"(Webhook) A job finished",points:[[258,553],[295,479],[358,379],[449,334],[538,289],[649,304],[740,332]],labelBBox:{x:477,y:273,width:189,height:19},parent:"edp",relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@15"},{id:"step-17",source:"edp.garm.garm",target:"edp.garm.providerEdgeConnect",label:"Delete runner",points:[[1074,368],[1094,363],[1115,359],[1134,356],[1201,343],[1274,332],[1340,322]],labelBBox:{x:1155,y:298,width:119,height:19},parent:"edp.garm",relations:["1olxwwi"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@16"},{id:"step-18",source:"edp.garm.providerEdgeConnect",target:"edgeConnect",label:"Delete AppInstance (Runner)",points:[[1759,294],[1855,294],[1971,291],[2075,284],[2091,283],[2108,282],[2125,280]],labelBBox:{x:1856,y:252,width:215,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@17"},{id:"step-19",source:"edp.garm.providerEdgeConnect",target:"edgeConnect",label:"Delete App (Runner)",points:[[1759,350],[1856,369],[1972,381],[2075,358],[2092,355],[2109,350],[2126,344]],labelBBox:{x:1883,y:326,width:161,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@18"}]},"view_gitops-inner-outer-loop_15":{_type:"dynamic",tags:null,links:null,_stage:"layouted",sourcePath:"views/dynamic/cicd/gitops-inner-outer-loop.c4",description:null,title:"outer-ci-loop",id:"view_gitops-inner-outer-loop_15",variant:"diagram",autoLayout:{direction:"LR"},hash:"d85bdffdca5f49220457db75761ae8ba47744c16",sequenceLayout:{actors:[{id:"localbox.git",x:32,y:52,width:320,height:180,ports:[{id:"step-01_source",cx:160,cy:338,height:40,type:"source",position:"right"}]},{id:"edp.forgejogit",x:448,y:52,width:320,height:180,ports:[{id:"step-01_target",cx:160,cy:338,height:24,type:"target",position:"left"},{id:"step-02_source",cx:160,cy:360,height:40,type:"source",position:"right"},{id:"step-04_target",cx:160,cy:475,height:24,type:"target",position:"right"},{id:"step-05_source",cx:160,cy:568,height:40,type:"source",position:"right"}]},{id:"forgejoRunner",x:832,y:52,width:320,height:180,ports:[{id:"step-02_target",cx:160,cy:360,height:24,type:"target",position:"left"},{id:"step-03_source",cx:160,cy:382,height:40,type:"source",position:"right"},{id:"step-04_source",cx:160,cy:475,height:40,type:"source",position:"left"}]},{id:"edp.imageregistry",x:1216,y:52,width:373,height:180,ports:[{id:"step-03_target",cx:187,cy:382,height:24,type:"target",position:"left"},{id:"step-07_target",cx:187,cy:683,height:24,type:"target",position:"right"}]},{id:"edp.argoCD",x:1649,y:52,width:320,height:180,ports:[{id:"step-05_target",cx:160,cy:568,height:24,type:"target",position:"left"},{id:"step-06_source",cx:160,cy:590,height:40,type:"source",position:"right"}]},{id:"cloud",x:2033,y:52,width:320,height:180,ports:[{id:"step-06_target",cx:160,cy:590,height:24,type:"target",position:"left"},{id:"step-07_source",cx:160,cy:683,height:40,type:"source",position:"left"}]}],compounds:[{depth:0,x:0,y:0,width:384,height:527,id:"localbox",origin:"localbox"},{depth:0,x:416,y:0,width:384,height:735,id:"edp-1",origin:"edp"},{depth:0,x:1184,y:0,width:817,height:828,id:"edp-2",origin:"edp"}],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:92,height:27}},{id:"step-03",sourceHandle:"step-03_source",targetHandle:"step-03_target",labelBBox:{width:159,height:27}},{id:"step-04",sourceHandle:"step-04_source",targetHandle:"step-04_target",labelBBox:{width:174,height:27}},{id:"step-05",sourceHandle:"step-05_source",targetHandle:"step-05_target",labelBBox:{width:164,height:27}},{id:"step-06",sourceHandle:"step-06_source",targetHandle:"step-06_target",labelBBox:{width:161,height:27}},{id:"step-07",sourceHandle:"step-07_source",targetHandle:"step-07_target",labelBBox:{width:113,height:27}}],parallelAreas:[],bounds:{x:0,y:0,width:2353,height:828}},bounds:{x:0,y:0,width:2150,height:1243},nodes:[{id:"localbox",parent:null,level:0,children:["localbox.git"],inEdges:[],outEdges:["step-01"],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:8,y:306,width:384,height:265,labelBBox:{x:6,y:0,width:66,height:15}},{id:"localbox.git",parent:"localbox",level:1,children:[],inEdges:[],outEdges:["step-01"],title:"git",modelRef:"localbox.git",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:15,size:"md"},description:{txt:"local git"},tags:[],technology:"Git",kind:"component",x:40,y:359,width:320,height:180,labelBBox:{x:119,y:53,width:113,height:67}},{id:"edp",parent:null,level:0,children:["edp.forgejogit","edp.imageregistry","edp.argoCD","edp.forgejo"],inEdges:["step-01","step-03","step-04","step-07"],outEdges:["step-02","step-06"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"secondary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",depth:1,navigateTo:"edp",x:528,y:8,width:1064,height:861,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edp.forgejogit",parent:"edp",level:1,children:[],inEdges:["step-01","step-04"],outEdges:["step-02","step-05"],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"secondary",icon:"tech:git",style:{opacity:15,size:"md"},tags:[],kind:"component",x:595,y:359,width:320,height:180,labelBBox:{x:97,y:74,width:155,height:24}},{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["step-02"],outEdges:["step-03","step-04"],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:1232,y:909,width:320,height:180,labelBBox:{x:23,y:36,width:274,height:102}},{id:"edp.imageregistry",parent:"edp",level:1,children:[],inEdges:["step-03","step-07"],outEdges:[],title:"Forgejo OCI Image Registry",modelRef:"edp.imageregistry",shape:"rectangle",color:"secondary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Container Image Registry"},tags:[],technology:"Golang",kind:"component",x:568,y:649,width:373,height:180,labelBBox:{x:46,y:53,width:311,height:67}},{id:"edp.argoCD",parent:"edp",level:1,children:[],inEdges:["step-05"],outEdges:["step-06"],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"secondary",style:{opacity:20,size:"md"},description:{txt:"GitOps Service"},tags:[],kind:"container",navigateTo:"argoCD",x:1232,y:495,width:320,height:180,labelBBox:{x:107,y:63,width:105,height:48}},{id:"cloud",parent:null,level:0,children:[],inEdges:["step-06"],outEdges:["step-07"],title:"Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",x:1830,y:1063,width:320,height:180,labelBBox:{x:91,y:53,width:137,height:67}},{id:"edp.forgejo",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"gray",icon:"tech:go",style:{opacity:20,size:"md"},description:{txt:`Fully managed DevOps Platform +and security scanning`},tags:[],technology:"Golang",kind:"container",isCustomized:!0,navigateTo:"forgejo",x:48,y:553,width:340,height:180,labelBBox:{x:46,y:17,width:279,height:139}},{id:"edp.garm",parent:"edp",level:1,children:["edp.garm.garm","edp.garm.providerEdgeConnect"],inEdges:["step-01","step-06","step-08","step-16"],outEdges:["step-03","step-04","step-07","step-09","step-18","step-19"],title:"Garm Image",modelRef:"edp.garm",shape:"rectangle",color:"primary",icon:"tech:docker",style:{opacity:20,size:"md"},tags:[],kind:"container",depth:1,x:709,y:142,width:1090,height:404,labelBBox:{x:6,y:0,width:77,height:15}},{id:"edp.garm.garm",parent:"edp.garm",level:2,children:[],inEdges:["step-01","step-06","step-08","step-16"],outEdges:["step-02","step-07","step-09","step-17"],title:"Garm",modelRef:"edp.garm.garm",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Provisions runners for Forgejo"},tags:[],kind:"component",x:749,y:316,width:325,height:180,labelBBox:{x:47,y:63,width:262,height:47}},{id:"edp.garm.providerEdgeConnect",parent:"edp.garm",level:2,children:[],inEdges:["step-02","step-17"],outEdges:["step-03","step-04","step-18","step-19"],title:"Garm Provider for EdgeConnect",modelRef:"edp.garm.providerEdgeConnect",shape:"rectangle",color:"primary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Acts as abstraction layer for EdgeConnect"},tags:[],kind:"component",x:1349,y:203,width:409,height:180,labelBBox:{x:47,y:54,width:347,height:65}},{id:"edgeConnect",parent:null,level:0,children:[],inEdges:["step-03","step-04","step-18","step-19"],outEdges:["step-05"],title:"Edge Connect",modelRef:"edgeConnect",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Provides an API to run applications on the edge"},tags:[],kind:"component",x:2135,y:169,width:320,height:180,labelBBox:{x:18,y:54,width:283,height:65}},{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["step-05","step-09","step-12","step-15"],outEdges:["step-06","step-10","step-11","step-12","step-13","step-15"],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:2665,y:810,width:320,height:180,labelBBox:{x:23,y:36,width:274,height:101}}],edges:[{id:"step-01",source:"edp.forgejo",target:"edp.garm.garm",label:"(Webhook) A new job is pending",points:[[389,687],[482,703],[596,707],[689,664],[761,631],[818,563],[857,504]],labelBBox:{x:458,y:632,width:228,height:19},parent:"edp",relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@0"},{id:"step-02",source:"edp.garm.garm",target:"edp.garm.providerEdgeConnect",label:"Create new runner",points:[[1074,428],[1142,433],[1220,433],[1289,417],[1321,410],[1352,399],[1383,387]],labelBBox:{x:1144,y:385,width:141,height:19},parent:"edp.garm",relations:["1olxwwi"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@1"},{id:"step-03",source:"edp.garm.providerEdgeConnect",target:"edgeConnect",label:"Create App (Runner)",points:[[1639,203],[1692,152],[1767,92],[1847,65],[1943,32],[1980,29],[2075,65],[2128,85],[2176,124],[2214,162]],labelBBox:{x:1886,y:7,width:156,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@2"},{id:"step-04",source:"edp.garm.providerEdgeConnect",target:"edgeConnect",label:"Create AppInstance (Runner)",points:[[1759,234],[1788,228],[1818,222],[1847,219],[1948,206],[1974,210],[2075,219],[2091,220],[2108,222],[2125,225]],labelBBox:{x:1859,y:178,width:209,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@3"},{id:"step-05",source:"edgeConnect",target:"forgejoRunner",label:"Deploys",points:[[2448,349],[2502,386],[2560,432],[2605,484],[2687,579],[2750,711],[2787,800]],labelBBox:{x:2524,y:372,width:77,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@4"},{id:"step-06",source:"forgejoRunner",target:"edp.garm.garm",label:"Get runner registration token",points:[[1084,448],[1101,452],[1118,455],[1134,459],[1784,591],[2007,420],[2605,706],[2657,731],[2706,772],[2745,810]],labelBBox:{x:1862,y:491,width:204,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@5"},{id:"step-07",source:"edp.garm.garm",target:"edp.forgejo",label:"Get runner registration token",points:[[399,600],[488,577],[595,546],[689,510],[709,503],[730,495],[750,486]],labelBBox:{x:470,y:478,width:204,height:19},dir:"back",parent:"edp",relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@6"},{id:"step-08",source:"edp.forgejo",target:"edp.garm.garm",label:"Token",points:[[300,553],[341,514],[393,472],[449,449],[540,410],[650,399],[739,397]],labelBBox:{x:539,y:368,width:65,height:19},parent:"edp",relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@7"},{id:"step-09",source:"edp.garm.garm",target:"forgejoRunner",label:"Token",points:[[1074,487],[1094,496],[1115,504],[1134,511],[1676,699],[2346,822],[2654,873]],labelBBox:{x:1931,y:682,width:65,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@8"},{id:"step-10",source:"forgejoRunner",target:"edp.forgejo",label:"Register runner",points:[[399,713],[415,718],[432,722],[449,726],[1184,886],[1385,807],[2135,865],[2304,878],[2346,883],[2515,892],[2564,894],[2617,896],[2665,897]],labelBBox:{x:1492,y:803,width:129,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@9"},{id:"step-11",source:"forgejoRunner",target:"edp.forgejo",label:"Fetch job",points:[[272,741],[371,914],[606,1253],[911,1253],[911,1253],[911,1253],[2296,1253],[2485,1253],[2658,1094],[2751,990]],labelBBox:{x:1511,y:1220,width:92,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@10"},{id:"step-12",source:"forgejoRunner",target:"forgejoRunner",label:"Work on job",points:[[2802,810],[2796,753],[2804,700],[2825,700],[2845,700],[2852,747],[2849,799]],labelBBox:{x:2773,y:667,width:109,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@11"},{id:"step-13",source:"forgejoRunner",target:"edp.forgejo",label:"Send result",points:[[240,743],[268,866],[332,1075],[449,1217],[604,1404],[667,1512],[911,1512],[911,1512],[911,1512],[2296,1512],[2568,1512],[2731,1160],[2794,990]],labelBBox:{x:1505,y:1479,width:104,height:19},dir:"back",parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@12"},{id:"step-14",source:"edp.forgejo",target:"edp.forgejo",label:"Deregister Runner",points:[[157,553],[142,496],[163,443],[218,443],[271,443],[292,490],[282,542]],labelBBox:{x:147,y:410,width:148,height:19},parent:"edp",relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@13"},{id:"step-15",source:"forgejoRunner",target:"forgejoRunner",label:"Terminate",points:[[2788,810],[2763,708],[2775,590],[2825,590],[2873,590],[2886,700],[2864,800]],labelBBox:{x:2779,y:557,width:97,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@14"},{id:"step-16",source:"edp.forgejo",target:"edp.garm.garm",label:"(Webhook) A job finished",points:[[258,553],[295,479],[358,379],[449,334],[538,289],[649,304],[740,332]],labelBBox:{x:477,y:273,width:189,height:19},parent:"edp",relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@15"},{id:"step-17",source:"edp.garm.garm",target:"edp.garm.providerEdgeConnect",label:"Delete runner",points:[[1074,368],[1094,363],[1115,359],[1134,356],[1201,343],[1274,332],[1340,322]],labelBBox:{x:1155,y:298,width:119,height:19},parent:"edp.garm",relations:["1olxwwi"],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@16"},{id:"step-18",source:"edp.garm.providerEdgeConnect",target:"edgeConnect",label:"Delete AppInstance (Runner)",points:[[1759,294],[1855,294],[1971,291],[2075,284],[2091,283],[2108,282],[2125,280]],labelBBox:{x:1856,y:252,width:215,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@17"},{id:"step-19",source:"edp.garm.providerEdgeConnect",target:"edgeConnect",label:"Delete App (Runner)",points:[[1759,350],[1856,369],[1972,381],[2075,358],[2092,355],[2109,350],[2126,344]],labelBBox:{x:1883,y:326,width:161,height:19},parent:null,relations:[],color:"gray",line:"dashed",head:"normal",tags:[],astPath:"/steps@18"}]},forgejoGarmArchitecture:{_type:"deployment",tags:null,links:null,_stage:"layouted",sourcePath:"views/dynamic/cicd/garm-arch.c4",description:{txt:"Deployment architecture showing GARM orchestrating ephemeral runners on Edge Connect for Forgejo Actions"},title:"Architecture of Forgejo, Garm and Edge Connect",id:"forgejoGarmArchitecture",autoLayout:{direction:"TB"},hash:"b55c6ce5e6cf4429d86201d61e94b69f67ef557f",bounds:{x:0,y:0,width:1493,height:1124},nodes:[{id:"otcKubernetes",parent:null,level:0,children:["otcKubernetes.edpCluster"],inEdges:["gly1kq","9r08on"],outEdges:["dvpbhz"],deploymentRef:"otcKubernetes",title:"OTC Kubernetes",kind:"environment",technology:"Kubernetes",color:"blue",shape:"rectangle",icon:"tech:kubernetes",description:{txt:"OTC Container Cluster Engine hosting EDP platform"},tags:[],style:{opacity:15,size:"md"},depth:2,x:8,y:8,width:979,height:1108,labelBBox:{x:6,y:0,width:106,height:15}},{id:"otcKubernetes.edpCluster",parent:"otcKubernetes",level:1,children:["otcKubernetes.edpCluster.garm","otcKubernetes.edpCluster.forgejoActions","otcKubernetes.edpCluster.providerEdgeConnect","otcKubernetes.edpCluster.forgejo"],inEdges:["gly1kq","9r08on"],outEdges:["dvpbhz"],deploymentRef:"otcKubernetes.edpCluster",title:"EDP Cluster",kind:"cluster",color:"primary",shape:"rectangle",description:{txt:"EDP platform cluster"},tags:[],style:{opacity:15,size:"md"},depth:1,x:40,y:61,width:915,height:1023,labelBBox:{x:6,y:0,width:82,height:15}},{id:"otcKubernetes.edpCluster.garm",parent:"otcKubernetes.edpCluster",level:2,children:[],inEdges:[],outEdges:["1ivu7mh"],kind:"instance",title:"Garm",description:{txt:"GARM - Runner lifecycle manager"},tags:[],icon:"tech:go",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"otcKubernetes.edpCluster.garm",modelRef:"edp.garm.garm",x:90,y:132,width:352,height:180,labelBBox:{x:46,y:63,width:290,height:48}},{id:"otcKubernetes.edpCluster.forgejoActions",parent:"otcKubernetes.edpCluster",level:2,children:[],inEdges:["9r08on"],outEdges:["dvpbhz"],kind:"instance",title:"Forgejo Actions",description:{txt:"CI/CD orchestration for Forgejo"},technology:"Golang",tags:[],icon:"tech:go",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"otcKubernetes.edpCluster.forgejoActions",modelRef:"edp.forgejoActions",x:573,y:132,width:332,height:180,labelBBox:{x:46,y:54,width:270,height:67}},{id:"otcKubernetes.edpCluster.providerEdgeConnect",parent:"otcKubernetes.edpCluster",level:2,children:[],inEdges:["1ivu7mh"],outEdges:[],kind:"instance",title:"Garm Provider for EdgeConnect",description:{txt:"GARM Provider for Edge Connect"},tags:[],icon:"tech:go",color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"otcKubernetes.edpCluster.providerEdgeConnect",modelRef:"edp.garm.providerEdgeConnect",x:90,y:515,width:409,height:180,labelBBox:{x:46,y:63,width:348,height:47}},{id:"edgeConnectEnv",parent:null,level:0,children:["edgeConnectEnv.runnerInfrastructure"],inEdges:["dvpbhz"],outEdges:["gly1kq","9r08on"],deploymentRef:"edgeConnectEnv",title:"Edge Connect",kind:"environment",technology:"Edge Connect Platform",color:"green",shape:"rectangle",modelRef:"forgejoRunner",icon:"tech:docker",description:{txt:"Edge infrastructure for ephemeral runner deployment"},tags:[],style:{opacity:15,size:"md"},depth:2,x:1037,y:408,width:448,height:351,labelBBox:{x:6,y:0,width:93,height:15}},{id:"edgeConnectEnv.runnerInfrastructure",parent:"edgeConnectEnv",level:1,children:["edgeConnectEnv.runnerInfrastructure.forgejoRunner"],inEdges:["dvpbhz"],outEdges:["gly1kq","9r08on"],deploymentRef:"edgeConnectEnv.runnerInfrastructure",title:"Runner Infrastructure",kind:"computeressource",color:"primary",shape:"rectangle",modelRef:"forgejoRunner",description:{txt:"Dynamically provisioned runner instances"},tags:[],style:{opacity:15,size:"md"},depth:1,x:1069,y:461,width:384,height:266,labelBBox:{x:6,y:0,width:156,height:15}},{id:"edgeConnectEnv.runnerInfrastructure.forgejoRunner",parent:"edgeConnectEnv.runnerInfrastructure",level:2,children:[],inEdges:["dvpbhz"],outEdges:["gly1kq","9r08on"],kind:"instance",title:"Forgejo Runner",description:{txt:"Ephemeral Forgejo Actions runner"},tags:[],color:"primary",shape:"rectangle",style:{opacity:15,size:"md"},deploymentRef:"edgeConnectEnv.runnerInfrastructure.forgejoRunner",modelRef:"forgejoRunner",x:1101,y:515,width:320,height:180,labelBBox:{x:44,y:63,width:232,height:47}},{id:"otcKubernetes.edpCluster.forgejo",parent:"otcKubernetes.edpCluster",level:2,children:[],inEdges:["gly1kq"],outEdges:[],kind:"instance",title:"Forgejo",description:{txt:"Forgejo - Git platform with Actions"},technology:"Golang",tags:[],icon:"tech:go",color:"primary",shape:"rectangle",style:{opacity:20,size:"md"},deploymentRef:"otcKubernetes.edpCluster.forgejo",modelRef:"edp.forgejo",navigateTo:"forgejo",x:555,y:854,width:350,height:180,labelBBox:{x:46,y:54,width:288,height:67}}],edges:[{id:"1ivu7mh",source:"otcKubernetes.edpCluster.garm",target:"otcKubernetes.edpCluster.providerEdgeConnect",label:"calls binary",points:[[273,312],[277,370],[283,445],[287,505]],labelBBox:{x:280,y:377,width:74,height:18},parent:"otcKubernetes.edpCluster",relations:["1olxwwi"],color:"gray",line:"dashed",head:"normal"},{id:"dvpbhz",source:"otcKubernetes.edpCluster.forgejoActions",target:"edgeConnectEnv.runnerInfrastructure.forgejoRunner",label:"runs workflows",points:[[813,312],[845,345],[885,380],[928,400],[952,411],[963,399],[987,408],[1047,432],[1105,471],[1153,508]],labelBBox:{x:929,y:377,width:97,height:18},parent:null,relations:["1pbc22f"],color:"gray",line:"dashed",head:"normal"},{id:"gly1kq",source:"edgeConnectEnv.runnerInfrastructure.forgejoRunner",target:"otcKubernetes.edpCluster.forgejo",label:"registers with and picks up jobs",points:[[1121,695],[1046,742],[954,801],[879,849]],labelBBox:{x:997,y:766,width:199,height:18},parent:null,relations:["1k6h7jf"],color:"gray",line:"dashed",head:"normal"},{id:"9r08on",source:"edgeConnectEnv.runnerInfrastructure.forgejoRunner",target:"otcKubernetes.edpCluster.forgejoActions",label:"register",points:[[1194,515],[1156,470],[1107,416],[1055,377],[1012,345],[962,317],[914,294]],labelBBox:{x:1082,y:377,width:51,height:18},parent:null,relations:["18dtot7"],color:"gray",line:"dashed",head:"normal"}]},"view_gitops-inner-outer-loop_15":{_type:"dynamic",tags:null,links:null,_stage:"layouted",sourcePath:"views/dynamic/cicd/gitops-inner-outer-loop.c4",description:null,title:"outer-ci-loop",id:"view_gitops-inner-outer-loop_15",variant:"diagram",autoLayout:{direction:"LR"},hash:"d85bdffdca5f49220457db75761ae8ba47744c16",sequenceLayout:{actors:[{id:"localbox.git",x:32,y:52,width:320,height:180,ports:[{id:"step-01_source",cx:160,cy:338,height:40,type:"source",position:"right"}]},{id:"edp.forgejogit",x:448,y:52,width:320,height:180,ports:[{id:"step-01_target",cx:160,cy:338,height:24,type:"target",position:"left"},{id:"step-02_source",cx:160,cy:360,height:40,type:"source",position:"right"},{id:"step-04_target",cx:160,cy:475,height:24,type:"target",position:"right"},{id:"step-05_source",cx:160,cy:568,height:40,type:"source",position:"right"}]},{id:"forgejoRunner",x:832,y:52,width:320,height:180,ports:[{id:"step-02_target",cx:160,cy:360,height:24,type:"target",position:"left"},{id:"step-03_source",cx:160,cy:382,height:40,type:"source",position:"right"},{id:"step-04_source",cx:160,cy:475,height:40,type:"source",position:"left"}]},{id:"edp.imageregistry",x:1216,y:52,width:373,height:180,ports:[{id:"step-03_target",cx:187,cy:382,height:24,type:"target",position:"left"},{id:"step-07_target",cx:187,cy:683,height:24,type:"target",position:"right"}]},{id:"edp.argoCD",x:1649,y:52,width:320,height:180,ports:[{id:"step-05_target",cx:160,cy:568,height:24,type:"target",position:"left"},{id:"step-06_source",cx:160,cy:590,height:40,type:"source",position:"right"}]},{id:"cloud",x:2033,y:52,width:320,height:180,ports:[{id:"step-06_target",cx:160,cy:590,height:24,type:"target",position:"left"},{id:"step-07_source",cx:160,cy:683,height:40,type:"source",position:"left"}]}],compounds:[{depth:0,x:0,y:0,width:384,height:527,id:"localbox",origin:"localbox"},{depth:0,x:416,y:0,width:384,height:735,id:"edp-1",origin:"edp"},{depth:0,x:1184,y:0,width:817,height:828,id:"edp-2",origin:"edp"}],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:92,height:27}},{id:"step-03",sourceHandle:"step-03_source",targetHandle:"step-03_target",labelBBox:{width:159,height:27}},{id:"step-04",sourceHandle:"step-04_source",targetHandle:"step-04_target",labelBBox:{width:174,height:27}},{id:"step-05",sourceHandle:"step-05_source",targetHandle:"step-05_target",labelBBox:{width:164,height:27}},{id:"step-06",sourceHandle:"step-06_source",targetHandle:"step-06_target",labelBBox:{width:161,height:27}},{id:"step-07",sourceHandle:"step-07_source",targetHandle:"step-07_target",labelBBox:{width:113,height:27}}],parallelAreas:[],bounds:{x:0,y:0,width:2353,height:828}},bounds:{x:0,y:0,width:2150,height:1243},nodes:[{id:"localbox",parent:null,level:0,children:["localbox.git"],inEdges:[],outEdges:["step-01"],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:8,y:306,width:384,height:265,labelBBox:{x:6,y:0,width:66,height:15}},{id:"localbox.git",parent:"localbox",level:1,children:[],inEdges:[],outEdges:["step-01"],title:"git",modelRef:"localbox.git",shape:"rectangle",color:"primary",icon:"tech:git",style:{opacity:15,size:"md"},description:{txt:"local git"},tags:[],technology:"Git",kind:"component",x:40,y:359,width:320,height:180,labelBBox:{x:119,y:53,width:113,height:67}},{id:"edp",parent:null,level:0,children:["edp.forgejogit","edp.imageregistry","edp.argoCD","edp.forgejo"],inEdges:["step-01","step-03","step-04","step-07"],outEdges:["step-02","step-06"],title:"EDP",modelRef:"edp",shape:"rectangle",color:"secondary",icon:"tech:kubernetes",style:{opacity:15,size:"md"},description:{txt:"EDP Edge Development Platform"},tags:[],technology:"Kubernetes",kind:"system",depth:1,navigateTo:"edp",x:528,y:8,width:1064,height:861,labelBBox:{x:6,y:0,width:27,height:15}},{id:"edp.forgejogit",parent:"edp",level:1,children:[],inEdges:["step-01","step-04"],outEdges:["step-02","step-05"],title:"ForgejoGit",modelRef:"edp.forgejogit",shape:"rectangle",color:"secondary",icon:"tech:git",style:{opacity:15,size:"md"},tags:[],kind:"component",x:595,y:359,width:320,height:180,labelBBox:{x:97,y:74,width:155,height:24}},{id:"forgejoRunner",parent:null,level:0,children:[],inEdges:["step-02"],outEdges:["step-03","step-04"],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:1232,y:909,width:320,height:180,labelBBox:{x:23,y:36,width:274,height:102}},{id:"edp.imageregistry",parent:"edp",level:1,children:[],inEdges:["step-03","step-07"],outEdges:[],title:"Forgejo OCI Image Registry",modelRef:"edp.imageregistry",shape:"rectangle",color:"secondary",icon:"tech:go",style:{opacity:15,size:"md"},description:{txt:"Container Image Registry"},tags:[],technology:"Golang",kind:"component",x:568,y:649,width:373,height:180,labelBBox:{x:46,y:53,width:311,height:67}},{id:"edp.argoCD",parent:"edp",level:1,children:[],inEdges:["step-05"],outEdges:["step-06"],title:"ArgoCD",modelRef:"edp.argoCD",shape:"rectangle",color:"secondary",style:{opacity:20,size:"md"},description:{txt:"GitOps Service"},tags:[],kind:"container",navigateTo:"argoCD",x:1232,y:495,width:320,height:180,labelBBox:{x:107,y:63,width:105,height:48}},{id:"cloud",parent:null,level:0,children:[],inEdges:["step-06"],outEdges:["step-07"],title:"Cloud",modelRef:"cloud",shape:"rectangle",color:"primary",style:{opacity:15,size:"md"},description:{txt:"Cloud environments"},tags:[],technology:"IaaS/PaaS",kind:"system",x:1830,y:1063,width:320,height:180,labelBBox:{x:91,y:53,width:137,height:67}},{id:"edp.forgejo",parent:"edp",level:1,children:[],inEdges:[],outEdges:[],title:"Forgejo",modelRef:"edp.forgejo",shape:"rectangle",color:"gray",icon:"tech:go",style:{opacity:20,size:"md"},description:{txt:`Fully managed DevOps Platform offering capabilities like code version controling collaboration and ticketing @@ -296,7 +296,7 @@ and correctness.`},tags:[],technology:"PostgreSQL",kind:"container",x:1557,y:0,w 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"},"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"},"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:{}},"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:{}},"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"}}},imports:{}}),{useLikeC4Model:PQe}=MQe(NQe);function BQe({children:e}){const r=PQe();return y.jsx(MKe,{likec4model:r,children:e})}function OQe(e){return y.jsx(BQe,{children:y.jsx(rQe,{renderIcon:wQe,...e})})}var Pz={exports:{}},b0={},Bz={exports:{}},Oz={};var Jte;function IQe(){return Jte||(Jte=1,(function(e){function r(B,F){var q=B.length;B.push(F);e:for(;0>>1,U=B[G];if(0>>1;Ga(I,q))Wa(K,I)?(B[G]=K,B[W]=q,G=W):(B[G]=I,B[Z]=q,G=Z);else if(Wa(K,q))B[G]=K,B[W]=q,G=W;else break e}}return F}function a(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 i=performance;e.unstable_now=function(){return i.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 z(B){if(w=!1,$(B),!v)if(n(c)!==null)v=!0,j||(j=!0,L());else{var F=n(d);F!==null&&V(z,F.startTime-B)}}var j=!1,A=-1,R=5,T=-1;function O(){return x?!0:!(e.unstable_now()-TB&&O());){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(z,Y.startTime-B),F=!1}}break e}finally{p=null,f=q,g=!1}F=void 0}}finally{F?L():j=!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(z,q-G))):(B.sortIndex=U,r(c,B),v||g||(v=!0,j||(j=!0,L()))),B},e.unstable_shouldYield=O,e.unstable_wrapCallback=function(B){var F=f;return function(){var q=f;f=F;try{return B.apply(this,arguments)}finally{f=q}}}})(Oz)),Oz}var ere;function LQe(){return ere||(ere=1,Bz.exports=IQe()),Bz.exports}var tre;function FQe(){if(tre)return b0;tre=1;var e=LQe(),r=g6(),n=KM();function o(h){var m="https://react.dev/errors/"+h;if(1U||(h.current=G[U],G[U]=null,U--)}function I(h,m){U++,G[U]=h.current,h.current=m}var W=Y(null),K=Y(null),Q=Y(null),ae=Y(null);function te(h,m){switch(I(Q,m),I(K,h),I(W,null),m.nodeType){case 9:case 11:h=(h=m.documentElement)&&(h=h.namespaceURI)?nme(h):0;break;default:if(h=m.tagName,m=m.namespaceURI)m=nme(m),h=ome(m,h);else switch(h){case"svg":h=1;break;case"math":h=2;break;default:h=0}}Z(W),I(W,h)}function re(){Z(W),Z(K),Z(Q)}function ue(h){h.memoizedState!==null&&I(ae,h);var m=W.current,b=ome(m,h.type);m!==b&&(I(K,h),I(W,b))}function _e(h){K.current===h&&(Z(W),Z(K)),ae.current===h&&(Z(ae),eb._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;Ga(I,q))Wa(K,I)?(B[G]=K,B[W]=q,G=W):(B[G]=I,B[Z]=q,G=Z);else if(Wa(K,q))B[G]=K,B[W]=q,G=W;else break e}}return F}function a(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 i=performance;e.unstable_now=function(){return i.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 z(B){if(w=!1,$(B),!v)if(n(c)!==null)v=!0,j||(j=!0,L());else{var F=n(d);F!==null&&V(z,F.startTime-B)}}var j=!1,A=-1,R=5,T=-1;function O(){return x?!0:!(e.unstable_now()-TB&&O());){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(z,Y.startTime-B),F=!1}}break e}finally{p=null,f=q,g=!1}F=void 0}}finally{F?L():j=!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(z,q-G))):(B.sortIndex=U,r(c,B),v||g||(v=!0,j||(j=!0,L()))),B},e.unstable_shouldYield=O,e.unstable_wrapCallback=function(B){var F=f;return function(){var q=f;f=F;try{return B.apply(this,arguments)}finally{f=q}}}})(Oz)),Oz}var ere;function LQe(){return ere||(ere=1,Bz.exports=IQe()),Bz.exports}var tre;function FQe(){if(tre)return b0;tre=1;var e=LQe(),r=g6(),n=KM();function o(h){var m="https://react.dev/errors/"+h;if(1U||(h.current=G[U],G[U]=null,U--)}function I(h,m){U++,G[U]=h.current,h.current=m}var W=Y(null),K=Y(null),Q=Y(null),ae=Y(null);function te(h,m){switch(I(Q,m),I(K,h),I(W,null),m.nodeType){case 9:case 11:h=(h=m.documentElement)&&(h=h.namespaceURI)?nme(h):0;break;default:if(h=m.tagName,m=m.namespaceURI)m=nme(m),h=ome(m,h);else switch(h){case"svg":h=1;break;case"math":h=2;break;default:h=0}}Z(W),I(W,h)}function re(){Z(W),Z(K),Z(Q)}function ue(h){h.memoizedState!==null&&I(ae,h);var m=W.current,b=ome(m,h.type);m!==b&&(I(K,h),I(W,b))}function _e(h){K.current===h&&(Z(W),Z(K)),ae.current===h&&(Z(ae),eb._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)":-1s)return!0}o=o.parentNode}while(o&&o!==n.body);return!1},yJe=function(e){var r=e.scrollTop,n=e.scrollHeight,o=e.clientHeight;return[r,n,o]},vJe=function(e){var r=e.scrollLeft,n=e.scrollWidth,o=e.clientWidth;return[r,n,o]},ure=function(e,r){return e==="v"?mJe(r):gJe(r)},pre=function(e,r){return e==="v"?yJe(r):vJe(r)},bJe=function(e,r){return e==="h"&&r==="rtl"?-1:1},xJe=function(e,r,n,o,a){var i=bJe(e,window.getComputedStyle(r).direction),l=i*o,s=n.target,c=r.contains(s),d=!1,u=l>0,p=0,f=0;do{if(!s)break;var g=pre(e,s),v=g[0],w=g[1],x=g[2],k=w-x-i*v;(v||k)&&ure(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},K2=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},hre=function(e){return[e.deltaX,e.deltaY]},fre=function(e){return e&&"current"in e?e.current:e},wJe=function(e,r){return e[0]===r[0]&&e[1]===r[1]},kJe=function(e){return` .block-interactivity-`.concat(e,` {pointer-events: none;} .allow-interactivity-`).concat(e,` {pointer-events: all;} -`)},_Je=0,Rm=[];function SJe(e){var r=S.useRef([]),n=S.useRef([0,0]),o=S.useRef(),a=S.useState(_Je++)[0],i=S.useState(lre)[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(a));var w=UQe([e.lockRef.current],(e.shards||[]).map(fre)).filter(Boolean);return w.forEach(function(x){return x.classList.add("allow-interactivity-".concat(a))}),function(){document.body.classList.remove("block-interactivity-".concat(a)),w.forEach(function(x){return x.classList.remove("allow-interactivity-".concat(a))})}}},[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=K2(w),C=n.current,_="deltaX"in w?w.deltaX:C[0]-k[0],$="deltaY"in w?w.deltaY:C[1]-k[1],z,j=w.target,A=Math.abs(_)>Math.abs($)?"h":"v";if("touches"in w&&A==="h"&&j.type==="range")return!1;var R=dre(A,j);if(!R)return!0;if(R?z=A:(z=A==="v"?"h":"v",R=dre(A,j)),!R)return!1;if(!o.current&&"changedTouches"in w&&(_||$)&&(o.current=z),!z)return!0;var T=o.current||z;return xJe(T,x,w,T==="h"?_:$)},[]),c=S.useCallback(function(w){var x=w;if(!(!Rm.length||Rm[Rm.length-1]!==i)){var k="deltaY"in x?hre(x):K2(x),C=r.current.filter(function(z){return z.name===x.type&&(z.target===x.target||x.target===z.shadowParent)&&wJe(z.delta,k)})[0];if(C&&C.should){x.cancelable&&x.preventDefault();return}if(!C){var _=(l.current.shards||[]).map(fre).filter(Boolean).filter(function(z){return z.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:EJe(k)};r.current.push(_),setTimeout(function(){r.current=r.current.filter(function($){return $!==_})},1)},[]),u=S.useCallback(function(w){n.current=K2(w),o.current=void 0},[]),p=S.useCallback(function(w){d(w.type,hre(w),w.target,s(w,e.lockRef.current))},[]),f=S.useCallback(function(w){d(w.type,K2(w),w.target,s(w,e.lockRef.current))},[]);S.useEffect(function(){return Rm.push(i),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:f}),document.addEventListener("wheel",c,zm),document.addEventListener("touchmove",c,zm),document.addEventListener("touchstart",u,zm),function(){Rm=Rm.filter(function(w){return w!==i}),document.removeEventListener("wheel",c,zm),document.removeEventListener("touchmove",c,zm),document.removeEventListener("touchstart",u,zm)}},[]);var g=e.removeScrollBar,v=e.inert;return S.createElement(S.Fragment,null,v?S.createElement(i,{styles:kJe(a)}):null,g?S.createElement(hJe,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function EJe(e){for(var r=null;e!==null;)e instanceof ShadowRoot&&(r=e.host,e=e.host),e=e.parentNode;return r}const CJe=eJe(ire,SJe);var mre=S.forwardRef(function(e,r){return S.createElement(X2,is({},e,{ref:r,sideCar:CJe}))});mre.classNames=X2.classNames;function zo(e){return Object.keys(e)}function $Je(e){return e.replace(/[A-Z]/g,r=>`-${r.toLowerCase()}`)}function zJe(e){return typeof e!="string"||!e.includes("var(--mantine-scale)")?e:e.match(/^calc\((.*?)\)$/)?.[1].split("*")[0].trim()}function Q2(e){const r=zJe(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 gre(e){return e==="0rem"?"0rem":`calc(${e} * var(--mantine-scale))`}function yre(e,{shouldScale:r=!1}={}){function n(o){if(o===0||o==="0")return`0${e}`;if(typeof o=="number"){const a=`${o/16}${e}`;return r?gre(a):a}if(typeof o=="string"){if(o===""||o.startsWith("calc(")||o.startsWith("clamp(")||o.includes("rgba("))return o;if(o.includes(","))return o.split(",").map(i=>n(i)).join(",");if(o.includes(" "))return o.split(" ").map(i=>n(i)).join(" ");const a=o.replace("px","");if(!Number.isNaN(Number(a))){const i=`${Number(a)/16}${e}`;return r?gre(i):i}}return o}return n}const Pe=yre("rem",{shouldScale:!0});yre("em");function Dd(e){return Object.keys(e).reduce((r,n)=>(e[n]!==void 0&&(r[n]=e[n]),r),{})}function vre(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 ml(e){return Array.isArray(e)||e===null?!1:typeof e=="object"?e.type!==S.Fragment:!1}function ja(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 jm(e=null){const r=S.createContext(e);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>S.useContext(r)]}function bre(e,r){return n=>{if(typeof n!="string"||n.trim().length===0)throw new Error(r);return`${e}-${n}`}}function x0(e,r){let n=e;for(;(n=n.parentElement)&&!n.matches(r););return n}function RJe(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 jJe(e,r,n){for(let o=e+1;o{n?.(s);const c=Array.from(x0(s.currentTarget,e)?.querySelectorAll(r)||[]).filter(v=>TJe(s.currentTarget,v,e)),d=c.findIndex(v=>s.currentTarget===v),u=jJe(d,c,o),p=RJe(d,c,o),f=i==="rtl"?p:u,g=i==="rtl"?u:p;switch(s.key){case"ArrowRight":{l==="horizontal"&&(s.stopPropagation(),s.preventDefault(),c[f].focus(),a&&c[f].click());break}case"ArrowLeft":{l==="horizontal"&&(s.stopPropagation(),s.preventDefault(),c[g].focus(),a&&c[g].click());break}case"ArrowUp":{l==="vertical"&&(s.stopPropagation(),s.preventDefault(),c[p].focus(),a&&c[p].click());break}case"ArrowDown":{l==="vertical"&&(s.stopPropagation(),s.preventDefault(),c[u].focus(),a&&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 AJe={app:100,modal:200,popover:300,overlay:400,max:9999};function gl(e){return AJe[e]}const DJe=()=>{};function MJe(e,r={active:!0}){return typeof e!="function"||!r.active?r.onKeyDown||DJe:n=>{n.key==="Escape"&&(e(n),r.onTrigger?.())}}function Qt(e,r="size",n=!0){if(e!==void 0)return vre(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 Ro(e){return Qt(e,"mantine-font-size")}function NJe(e){return Qt(e,"mantine-line-height",!1)}function Uz(e){if(e)return Qt(e,"mantine-shadow",!1)}function jn(e,r){return n=>{e?.(n),r?.(n)}}function PJe(e,r){return e in r?Q2(r[e]):Q2(e)}function Wz(e,r){const n=e.map(o=>({value:o,px:PJe(o,r)}));return n.sort((o,a)=>o.px-a.px),n}function yl(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function Tm(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 Gz(e="mantine-"){return`${e}${Math.random().toString(36).slice(2,11)}`}function BJe(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 a=0;a{r.current=e}),S.useMemo(()=>((...n)=>r.current?.(...n)),[])}function J2(e,r){const{delay:n,flushOnUnmount:o,leading:a}=typeof r=="number"?{delay:r,flushOnUnmount:!1,leading:!1}:r,i=jp(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(a&&u){i(...d);const v=()=>{p()},w=()=>{l.current!==0&&(p(),i(...d))},x=()=>{p()};c.flush=w,c.cancel=x,l.current=window.setTimeout(v,n);return}if(a&&!u){const v=()=>{l.current!==0&&(p(),i(...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(),i(...d))},g=()=>{p()};c.flush=f,c.cancel=g,l.current=window.setTimeout(f,n)},{flush:()=>{},cancel:()=>{},_isFirstCall:!0});return c},[i,n,a]);return S.useEffect(()=>()=>{o?s.flush():s.cancel()},[s,o]),s}const OJe=["mousedown","touchstart"];function xre(e,r,n){const o=S.useRef(null),a=r||OJe;return S.useEffect(()=>{const i=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 a.forEach(l=>document.addEventListener(l,i)),()=>{a.forEach(l=>document.removeEventListener(l,i))}},[o,e,n]),o}function IJe(e,r){try{return e.addEventListener("change",r),()=>e.removeEventListener("change",r)}catch{return e.addListener(r),()=>e.removeListener(r)}}function LJe(e,r){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(e).matches:!1}function FJe(e,r,{getInitialValueInEffect:n}={getInitialValueInEffect:!0}){const[o,a]=S.useState(n?r:LJe(e));return S.useEffect(()=>{try{const i=window.matchMedia(e);return a(i.matches),IJe(i,l=>a(l.matches))}catch{return}},[e]),o||!1}const Yz=typeof document<"u"?S.useLayoutEffect:S.useEffect;function Tp(e,r){const n=S.useRef(!1);S.useEffect(()=>()=>{n.current=!1},[]),S.useEffect(()=>{if(n.current)return e();n.current=!0},r)}function wre({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 Tp(()=>{let a=-1;const i=l=>{l.key==="Tab"&&window.clearTimeout(a)};return document.addEventListener("keydown",i),e?n.current=document.activeElement:r&&(a=window.setTimeout(o,10)),()=>{window.clearTimeout(a),document.removeEventListener("keydown",i)}},[e,r]),o}const VJe=/input|select|textarea|button|object/,kre="a, input, select, textarea, button, object, [tabindex]";function qJe(e){return e.style.display==="none"}function HJe(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(qJe(r))return!1;r=r.parentNode}return!0}function _re(e){let r=e.getAttribute("tabindex");return r===null&&(r=void 0),parseInt(r,10)}function Xz(e){const r=e.nodeName.toLowerCase(),n=!Number.isNaN(_re(e));return(VJe.test(r)&&!e.disabled||e instanceof HTMLAnchorElement&&e.href||n)&&HJe(e)}function Sre(e){const r=_re(e);return(Number.isNaN(r)||r>=0)&&Xz(e)}function UJe(e){return Array.from(e.querySelectorAll(kre)).filter(Sre)}function WJe(e,r){const n=UJe(e);if(!n.length){r.preventDefault();return}const o=n[r.shiftKey?0:n.length-1],a=e.getRootNode();let i=o===a.activeElement||e===a.activeElement;const l=a.activeElement;if(l.tagName==="INPUT"&&l.getAttribute("type")==="radio"&&(i=n.filter(c=>c.getAttribute("type")==="radio"&&c.getAttribute("name")===l.getAttribute("name")).includes(o)),!i)return;r.preventDefault();const s=n[r.shiftKey?n.length-1:0];s&&s.focus()}function GJe(e=!0){const r=S.useRef(null),n=a=>{let i=a.querySelector("[data-autofocus]");if(!i){const l=Array.from(a.querySelectorAll(kre));i=l.find(Sre)||l.find(Xz)||null,!i&&Xz(a)&&(i=a)}i&&i.focus({preventScroll:!0})},o=S.useCallback(a=>{e&&a!==null&&r.current!==a&&(a?(setTimeout(()=>{a.getRootNode()&&n(a)}),r.current=a):r.current=null)},[e]);return S.useEffect(()=>{if(!e)return;r.current&&setTimeout(()=>n(r.current));const a=i=>{i.key==="Tab"&&r.current&&WJe(r.current,i)};return document.addEventListener("keydown",a),()=>document.removeEventListener("keydown",a)},[e]),o}const YJe=Kr.useId||(()=>{});function XJe(){const e=YJe();return e?`mantine-${e.replace(/:/g,"")}`:""}function vl(e){const r=XJe(),[n,o]=S.useState(r);return Yz(()=>{o(Gz())},[]),typeof e=="string"?e:typeof window>"u"?r:n}function ZJe(e,r,n){S.useEffect(()=>(window.addEventListener(e,r,n),()=>window.removeEventListener(e,r,n)),[e,r])}function Zz(e,r){if(typeof e=="function")return e(r);typeof e=="object"&&e!==null&&"current"in e&&(e.current=r)}function Ere(...e){const r=new Map;return n=>{if(e.forEach(o=>{const a=Zz(o,n);a&&r.set(o,a)}),r.size>0)return()=>{e.forEach(o=>{const a=r.get(o);a&&typeof a=="function"?a():Zz(o,null)}),r.clear()}}}function on(...e){return S.useCallback(Ere(...e),e)}function KJe(e,r,n="ltr"){const o=S.useRef(!1),a=S.useRef(!1),i=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(i.current),i.current=requestAnimationFrame(()=>{if(o.current&&d){d.style.userSelect="none";const z=d.getBoundingClientRect();if(z.width&&z.height){const j=Tm((_-z.left)/z.width,0,1);e({x:n==="ltr"?j:1-j,y:Tm(($-z.top)/z.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=()=>{!a.current&&o.current&&(a.current=!0,typeof r?.onScrubStart=="function"&&r.onScrubStart(),s(!0),p())},v=()=>{a.current&&o.current&&(a.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 Md({value:e,defaultValue:r,finalValue:n,onChange:o=()=>{}}){const[a,i]=S.useState(r!==void 0?r:n);return e!==void 0?[e,o,!0]:[a,(s,...c)=>{i(s),o?.(s,...c)},!1]}function Kz(e,r){return FJe("(prefers-reduced-motion: reduce)",e,r)}function QJe(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]),i=S.useCallback(()=>{o(s=>s&&(r.onClose?.(),!1))},[r.onClose]),l=S.useCallback(()=>{n?i():a()},[i,a,n]);return[n,{open:a,close:i,toggle:l}]}function ret(e,r,n={autoInvoke:!1}){const o=S.useRef(null),a=S.useCallback((...l)=>{o.current||(o.current=window.setTimeout(()=>{e(l),o.current=null},r))},[r]),i=S.useCallback(()=>{o.current&&(window.clearTimeout(o.current),o.current=null)},[]);return S.useEffect(()=>(n.autoInvoke&&a(),i),[i,a]),{start:a,clear:i}}function net(e){const r=S.useRef(void 0);return S.useEffect(()=>{r.current=e},[e]),r.current}function oet(e,r,n){const o=S.useRef(null),a=S.useRef(null);return S.useEffect(()=>{const i=typeof n=="function"?n():n;return(i||a.current)&&(o.current=new MutationObserver(e),o.current.observe(i||a.current,r)),()=>{o.current?.disconnect()}},[e,r]),a}function aet(){const[e,r]=S.useState(!1);return S.useEffect(()=>r(!0),[]),e}function iet(){return typeof process<"u"&&process.env?"production":"development"}function Cre(e){const r=new Map;return(...n)=>{const o=JSON.stringify(n);if(r.has(o))return r.get(o);const a=e(...n);return r.set(o,a),a}}function $re(e,r){return r.length===0?e:r.reduce((n,o)=>Math.abs(o-e){Object.entries(n).forEach(([o,a])=>{r[o]?r[o]=no(r[o],a):r[o]=a})}),r}function rk({theme:e,classNames:r,props:n,stylesCtx:o}){const a=(Array.isArray(r)?r:[r]).map(i=>typeof i=="function"?i(e,n,o):i||set);return cet(a)}function nk({theme:e,styles:r,props:n,stylesCtx:o}){return(Array.isArray(r)?r:[r]).reduce((a,i)=>typeof i=="function"?{...a,...i(e,n,o)}:{...a,...i},{})}const det=S.createContext(null);function Ap(){const e=S.useContext(det);if(!e)throw new Error("[@mantine/core] MantineProvider was not found in tree");return e}function uet(){return Ap().classNamesPrefix}function pet(){return Ap().getStyleNonce}function het(){return Ap().withStaticClasses}function fet(){return Ap().headless}function met(){return Ap().stylesTransform?.sx}function get(){return Ap().stylesTransform?.styles}function ok(){return Ap().env||"default"}function yet(e){return/^#?([0-9A-F]{3}){1,2}([0-9A-F]{2})?$/i.test(e)}function vet(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,a=n>>8&255,i=n&255;return{r:o,g:a,b:i,a:1}}function bet(e){const[r,n,o,a]=e.replace(/[^0-9,./]/g,"").split(/[/,]/).map(Number);return{r,g:n,b:o,a:a===void 0?1:a}}function xet(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),a=parseInt(n[2],10)/100,i=parseInt(n[3],10)/100,l=n[5]?parseFloat(n[5]):void 0,s=(1-Math.abs(2*i-1))*a,c=o/60,d=s*(1-Math.abs(c%2-1)),u=i-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 Rre(e){return yet(e)?vet(e):e.startsWith("rgb")?bet(e):e.startsWith("hsl")?xet(e):{r:0,g:0,b:0,a:1}}function w0(e,r){return typeof e.primaryShade=="number"?e.primaryShade:r==="dark"?e.primaryShade.dark:e.primaryShade.light}function Qz(e){return e<=.03928?e/12.92:((e+.055)/1.055)**2.4}function wet(e){const r=e.match(/oklch\((.*?)%\s/);return r?parseFloat(r[1]):null}function ket(e){if(e.startsWith("oklch("))return(wet(e)||0)/100;const{r,g:n,b:o}=Rre(e),a=r/255,i=n/255,l=o/255,s=Qz(a),c=Qz(i),d=Qz(l);return .2126*s+.7152*c+.0722*d}function k0(e,r=.179){return e.startsWith("var(")?!1:ket(e)>r}function Dp({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:k0(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:k0(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:k0(e==="white"?r.white:r.black,r.luminanceThreshold),variable:`--mantine-color-${e}`};const[o,a]=e.split("."),i=a?Number(a):void 0,l=o in r.colors;if(l){const s=i!==void 0?r.colors[o][i]:r.colors[o][w0(r,n||"light")];return{color:o,value:s,shade:i,isThemeColor:l,isLight:k0(s,r.luminanceThreshold),variable:a?`--mantine-color-${o}-${i}`:`--mantine-color-${o}-filled`}}return{color:e,value:e,isThemeColor:l,isLight:k0(e,r.luminanceThreshold),shade:i,variable:void 0}}function qo(e,r){const n=Dp({color:e||r.primaryColor,theme:r});return n.variable?`var(${n.variable})`:e}function _et(e,r){const n={from:e?.from||r.defaultGradient.from,to:e?.to||r.defaultGradient.to,deg:e?.deg??r.defaultGradient.deg??0},o=qo(n.from,r),a=qo(n.to,r);return`linear-gradient(${n.deg}deg, ${o} 0%, ${a} 100%)`}function jre(e,r){if(typeof e!="string"||r>1||r<0)return"rgba(0, 0, 0, 1)";if(e.startsWith("var(")){const i=(1-r)*100;return`color-mix(in srgb, ${e}, transparent ${i}%)`}if(e.startsWith("oklch"))return e.includes("/")?e.replace(/\/\s*[\d.]+\s*\)/,`/ ${r})`):e.replace(")",` / ${r})`);const{r:n,g:o,b:a}=Rre(e);return`rgba(${n}, ${o}, ${a}, ${r})`}const Am=jre,Eet={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"]},Tre="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji",Cet={scale:1,fontSmoothing:!0,white:"#fff",black:"#000",colors:Eet,primaryShade:{light:6,dark:8},primaryColor:"blue",autoContrast:!1,luminanceThreshold:.3,fontFamily:Tre,fontFamilyMonospace:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace",cursorType:"default",defaultRadius:"sm",headings:{fontFamily:Tre,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)}`}},$et=S.createContext(null);function uo(){const e=S.useContext($et);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 Jz({color:e,theme:r,autoContrast:n}){return(typeof n=="boolean"?n:r.autoContrast)&&Dp({color:e||r.primaryColor,theme:r}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function Are(e,r){return Jz({color:e.colors[e.primaryColor][w0(e,r)],theme:e,autoContrast:null})}function ak({theme:e,color:r,colorScheme:n,name:o=r,withColorValues:a=!0}){if(!e.colors[r])return{};if(n==="light"){const s=w0(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`]:Am(e.colors[r][s],.1),[`--mantine-color-${o}-light-hover`]:Am(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`]:Am(e.colors[r][s],.05)};return a?{[`--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 i=w0(e,"dark"),l={[`--mantine-color-${o}-text`]:`var(--mantine-color-${o}-4)`,[`--mantine-color-${o}-filled`]:`var(--mantine-color-${o}-${i})`,[`--mantine-color-${o}-filled-hover`]:`var(--mantine-color-${o}-${i===9?8:i+1})`,[`--mantine-color-${o}-light`]:Am(e.colors[r][Math.max(0,i-2)],.15),[`--mantine-color-${o}-light-hover`]:Am(e.colors[r][Math.max(0,i-2)],.2),[`--mantine-color-${o}-light-color`]:`var(--mantine-color-${o}-${Math.max(i-5,0)})`,[`--mantine-color-${o}-outline`]:`var(--mantine-color-${o}-${Math.max(i-4,0)})`,[`--mantine-color-${o}-outline-hover`]:Am(e.colors[r][Math.max(i-4,0)],.05)};return a?{[`--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 zet(e){return!!e&&typeof e=="object"&&"mantine-virtual-color"in e}function Dm(e,r,n){zo(r).forEach(o=>Object.assign(e,{[`--mantine-${n}-${o}`]:r[o]}))}(e=>{const r=w0(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":Are(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":Are(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)"}};Dm(o.variables,e.breakpoints,"breakpoint"),Dm(o.variables,e.spacing,"spacing"),Dm(o.variables,e.fontSizes,"font-size"),Dm(o.variables,e.lineHeights,"line-height"),Dm(o.variables,e.shadows,"shadow"),Dm(o.variables,e.radius,"radius"),e.colors[e.primaryColor].forEach((i,l)=>{o.variables[`--mantine-primary-color-${l}`]=`var(--mantine-color-${e.primaryColor}-${l})`}),zo(e.colors).forEach(i=>{const l=e.colors[i];if(zet(l)){Object.assign(o.light,ak({theme:e,name:l.name,color:l.light,colorScheme:"light",withColorValues:!0})),Object.assign(o.dark,ak({theme:e,name:l.name,color:l.dark,colorScheme:"dark",withColorValues:!0}));return}l.forEach((s,c)=>{o.variables[`--mantine-color-${i}-${c}`]=s}),Object.assign(o.light,ak({theme:e,color:i,colorScheme:"light",withColorValues:!1})),Object.assign(o.dark,ak({theme:e,color:i,colorScheme:"dark",withColorValues:!1}))});const a=e.headings.sizes;return zo(a).forEach(i=>{o.variables[`--mantine-${i}-font-size`]=a[i].fontSize,o.variables[`--mantine-${i}-line-height`]=a[i].lineHeight,o.variables[`--mantine-${i}-font-weight`]=a[i].fontWeight||e.headings.fontWeight}),o})(Cet);function eR({classNames:e,styles:r,props:n,stylesCtx:o}){const a=uo();return{resolvedClassNames:rk({theme:a,classNames:e,props:n,stylesCtx:o||void 0}),resolvedStyles:nk({theme:a,styles:r,props:n,stylesCtx:o||void 0})}}const Ret={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function jet({theme:e,options:r,unstyled:n}){return no(r?.focusable&&!n&&(e.focusClassName||Ret[e.focusRing]),r?.active&&!n&&e.activeClassName)}function Tet({selector:e,stylesCtx:r,options:n,props:o,theme:a}){return rk({theme:a,classNames:n?.classNames,props:n?.props||o,stylesCtx:r})[e]}function Dre({selector:e,stylesCtx:r,theme:n,classNames:o,props:a}){return rk({theme:n,classNames:o,props:a,stylesCtx:r})[e]}function Aet({rootSelector:e,selector:r,className:n}){return e===r?n:void 0}function Det({selector:e,classes:r,unstyled:n}){return n?void 0:r[e]}function Met({themeName:e,classNamesPrefix:r,selector:n,withStaticClass:o}){return o===!1?[]:e.map(a=>`${r}-${a}-${n}`)}function Net({themeName:e,theme:r,selector:n,props:o,stylesCtx:a}){return e.map(i=>rk({theme:r,classNames:r.components[i]?.classNames,props:o,stylesCtx:a})?.[n])}function Pet({options:e,classes:r,selector:n,unstyled:o}){return e?.variant&&!o?r[`${n}--${e.variant}`]:void 0}function Bet({theme:e,options:r,themeName:n,selector:o,classNamesPrefix:a,classNames:i,classes:l,unstyled:s,className:c,rootSelector:d,props:u,stylesCtx:p,withStaticClasses:f,headless:g,transformedStyles:v}){return no(jet({theme:e,options:r,unstyled:s||g}),Net({theme:e,themeName:n,selector:o,props:u,stylesCtx:p}),Pet({options:r,classes:l,selector:o,unstyled:s}),Dre({selector:o,stylesCtx:p,theme:e,classNames:i,props:u}),Dre({selector:o,stylesCtx:p,theme:e,classNames:v,props:u}),Tet({selector:o,stylesCtx:p,options:r,props:u,theme:e}),Aet({rootSelector:d,selector:o,className:c}),Det({selector:o,classes:l,unstyled:s||g}),f&&!g&&Met({themeName:n,classNamesPrefix:a,selector:o,withStaticClass:r?.withStaticClass}),r?.className)}function Oet({theme:e,themeName:r,props:n,stylesCtx:o,selector:a}){return r.map(i=>nk({theme:e,styles:e.components[i]?.styles,props:n,stylesCtx:o})[a]).reduce((i,l)=>({...i,...l}),{})}function tR({style:e,theme:r}){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...tR({style:o,theme:r})}),{}):typeof e=="function"?e(r):e??{}}function Iet(e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{r[o]={...r[o],...Dd(n[o])}}),r),{})}function Let({vars:e,varsResolver:r,theme:n,props:o,stylesCtx:a,selector:i,themeName:l,headless:s}){return Iet([s?{}:r?.(n,o,a),...l.map(c=>n.components?.[c]?.vars?.(n,o,a)),e?.(n,o,a)])?.[i]}function Fet({theme:e,themeName:r,selector:n,options:o,props:a,stylesCtx:i,rootSelector:l,styles:s,style:c,vars:d,varsResolver:u,headless:p,withStylesTransform:f}){return{...!f&&Oet({theme:e,themeName:r,props:a,stylesCtx:i,selector:n}),...!f&&nk({theme:e,styles:s,props:a,stylesCtx:i})[n],...!f&&nk({theme:e,styles:o?.styles,props:o?.props||a,stylesCtx:i})[n],...Let({theme:e,props:a,stylesCtx:i,vars:d,varsResolver:u,selector:n,themeName:r,headless:p}),...l===n?tR({style:c,theme:e}):null,...tR({style:o?.style,theme:e})}}function Vet({props:e,stylesCtx:r,themeName:n}){const o=uo(),a=get()?.();return{getTransformedStyles:i=>a?[...i.map(l=>a(l,{props:e,theme:o,ctx:r})),...n.map(l=>a(o.components[l]?.styles,{props:e,theme:o,ctx:r}))].filter(Boolean):[],withStylesTransform:!!a}}function dt({name:e,classes:r,props:n,stylesCtx:o,className:a,style:i,rootSelector:l="root",unstyled:s,classNames:c,styles:d,vars:u,varsResolver:p,attributes:f}){const g=uo(),v=uet(),w=het(),x=fet(),k=(Array.isArray(e)?e:[e]).filter($=>$),{withStylesTransform:C,getTransformedStyles:_}=Vet({props:n,stylesCtx:o,themeName:k});return($,z)=>({className:Bet({theme:g,options:z,themeName:k,selector:$,classNamesPrefix:v,classNames:c,classes:r,unstyled:s,className:a,rootSelector:l,props:n,stylesCtx:o,withStaticClasses:w,headless:x,transformedStyles:_([z?.styles,d])}),style:Fet({theme:g,themeName:k,selector:$,options:z,props:n,stylesCtx:o,rootSelector:l,styles:d,style:i,vars:u,varsResolver:p,headless:x,withStylesTransform:C}),...f?.[$]})}function qet(e,r){return typeof e=="boolean"?e:r.autoContrast}function Re(e,r,n){const o=uo(),a=o.components[e]?.defaultProps,i=typeof a=="function"?a(o):a;return{...r,...i,...Dd(n)}}function rR(e){return zo(e).reduce((r,n)=>e[n]!==void 0?`${r}${$Je(n)}:${e[n]};`:r,"").trim()}function Het({selector:e,styles:r,media:n,container:o}){const a=r?rR(r):"",i=Array.isArray(n)?n.map(s=>`@media${s.query}{${e}{${rR(s.styles)}}}`):[],l=Array.isArray(o)?o.map(s=>`@container ${s.query}{${e}{${rR(s.styles)}}}`):[];return`${a?`${e}{${a}}`:""}${i.join("")}${l.join("")}`.trim()}function Mm(e){const r=pet();return y.jsx("style",{"data-mantine-styles":"inline",nonce:r?.(),dangerouslySetInnerHTML:{__html:Het(e)}})}function nR(e){const{m:r,mx:n,my:o,mt:a,mb:i,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:z,c:j,opacity:A,ff:R,fz:T,fw:O,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:I,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,hiddenFrom:De,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le,...St}=e;return{styleProps:Dd({m:r,mx:n,my:o,mt:a,mb:i,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:z,c:j,opacity:A,ff:R,fz:T,fw:O,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:I,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,bdrs:$,hiddenFrom:De,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le}),rest:St}}const Uet={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 oR(e,r){const n=Dp({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 Wet(e,r){const n=Dp({color:e,theme:r});return n.isThemeColor&&n.shade===void 0?`var(--mantine-color-${n.color}-text)`:oR(e,r)}function Get(e,r){if(typeof e=="number")return Pe(e);if(typeof e=="string"){const[n,o,...a]=e.split(" ").filter(l=>l.trim()!=="");let i=`${Pe(n)}`;return o&&(i+=` ${o}`),a.length>0&&(i+=` ${oR(a.join(" "),r)}`),i.trim()}return e}const Mre={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 Yet(e){return typeof e=="string"&&e in Mre?Mre[e]:e}const Xet=["h1","h2","h3","h4","h5","h6"];function Zet(e,r){return typeof e=="string"&&e in r.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&Xet.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?Pe(e):e}function Ket(e){return e}const Qet=["h1","h2","h3","h4","h5","h6"];function Jet(e,r){return typeof e=="string"&&e in r.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&Qet.includes(e)?`var(--mantine-${e}-line-height)`:e}function ett(e,r){return typeof e=="string"&&e in r.radius?`var(--mantine-radius-${e})`:typeof e=="number"||typeof e=="string"?Pe(e):e}function ttt(e){return typeof e=="number"?Pe(e):e}function rtt(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 aR={color:oR,textColor:Wet,fontSize:Zet,spacing:rtt,radius:ett,identity:Ket,size:ttt,lineHeight:Jet,fontFamily:Yet,border:Get};function Nre(e){return e.replace("(min-width: ","").replace("em)","")}function ntt({media:e,...r}){const n=Object.keys(e).sort((o,a)=>Number(Nre(o))-Number(Nre(a))).map(o=>({query:o,styles:e[o]}));return{...r,media:n}}function ott(e){if(typeof e!="object"||e===null)return!1;const r=Object.keys(e);return!(r.length===1&&r[0]==="base")}function att(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function itt(e){return typeof e=="object"&&e!==null?zo(e).filter(r=>r!=="base"):[]}function ltt(e,r){return typeof e=="object"&&e!==null&&r in e?e[r]:e}function Pre({styleProps:e,data:r,theme:n}){return ntt(zo(e).reduce((o,a)=>{if(a==="hiddenFrom"||a==="visibleFrom"||a==="sx")return o;const i=r[a],l=Array.isArray(i.property)?i.property:[i.property],s=att(e[a]);if(!ott(e[a]))return l.forEach(d=>{o.inlineStyles[d]=aR[i.type](s,n)}),o;o.hasResponsiveStyles=!0;const c=itt(e[a]);return l.forEach(d=>{s!=null&&(o.styles[d]=aR[i.type](s,n)),c.forEach(u=>{const p=`(min-width: ${n.breakpoints[u]})`;o.media[p]={...o.media[p],[d]:aR[i.type](ltt(e[a],u),n)}})}),o},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function _0(){return`__m__-${S.useId().replace(/[:«»]/g,"")}`}function iR(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...iR(o,r)}),{}):typeof e=="function"?e(r):e??{}}function Bre(e){return e.startsWith("data-")?e:`data-${e}`}function stt(e){return Object.keys(e).reduce((r,n)=>{const o=e[n];return o===void 0||o===""||o===!1||o===null||(r[Bre(n)]=e[n]),r},{})}function Ore(e){return e?typeof e=="string"?{[Bre(e)]:!0}:Array.isArray(e)?[...e].reduce((r,n)=>({...r,...Ore(n)}),{}):stt(e):null}function lR(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...lR(o,r)}),{}):typeof e=="function"?e(r):e??{}}function ctt({theme:e,style:r,vars:n,styleProps:o}){const a=lR(r,e),i=lR(n,e);return{...a,...i,...o}}const Ire=S.forwardRef(({component:e,style:r,__vars:n,className:o,variant:a,mod:i,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}=nR(g),_=met()?.()?.(k.sx),$=_0(),z=Pre({styleProps:k,theme:w,data:Uet}),j={ref:v,style:ctt({theme:w,style:r,vars:n,styleProps:z.inlineStyles}),className:no(o,_,{[$]:z.hasResponsiveStyles,"mantine-light-hidden":d,"mantine-dark-hidden":u,[`mantine-hidden-from-${s}`]:s,[`mantine-visible-from-${c}`]:c}),"data-variant":a,"data-size":vre(l)?void 0:l||void 0,size:f,...Ore(i),...C};return y.jsxs(y.Fragment,{children:[z.hasResponsiveStyles&&y.jsx(Mm,{selector:`.${$}`,styles:z.styles,media:z.media}),typeof p=="function"?p(j):y.jsx(x,{...j})]})});Ire.displayName="@mantine/core/Box";const Te=Ire;function Lre(e){return e}function We(e){const r=S.forwardRef(e);return r.extend=Lre,r.withProps=n=>{const o=S.forwardRef((a,i)=>y.jsx(r,{...n,...a,ref:i}));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((a,i)=>y.jsx(r,{...n,...a,ref:i}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o},r.extend=Lre,r}const dtt=S.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function uc(){return S.useContext(dtt)}function utt(e){if(!e||typeof e=="string")return 0;const r=e/36;return Math.round((4+15*r**.25+r/5)*10)}function sR(e){return e?.current?e.current.scrollHeight:"auto"}const ik=typeof window<"u"&&window.requestAnimationFrame,Fre=0,ptt=e=>({height:0,overflow:"hidden",...e?{}:{display:"none"}});function htt({transitionDuration:e,transitionTimingFunction:r="ease",onTransitionEnd:n=()=>{},opened:o,keepMounted:a=!1}){const i=S.useRef(null),l=ptt(a),[s,c]=S.useState(o?{}:l),d=v=>{Ii.flushSync(()=>c(v))},u=v=>{d(w=>({...w,...v}))};function p(v){const w=e||utt(v);return{transition:`height ${w}ms ${r}, opacity ${w}ms ${r}`}}Tp(()=>{typeof ik=="function"&&ik(o?()=>{u({willChange:"height",display:"block",overflow:"hidden"}),ik(()=>{const v=sR(i);u({...p(v),height:v})})}:()=>{const v=sR(i);u({...p(v),willChange:"height",height:v}),ik(()=>u({height:Fre,overflow:"hidden"}))})},[o]);const f=v=>{if(!(v.target!==i.current||v.propertyName!=="height"))if(o){const w=sR(i);w===s.height?d({}):u({height:w}),n()}else s.height===Fre&&(d(l),n())};function g({style:v={},refKey:w="ref",...x}={}){const k=x[w],C={"aria-hidden":!o,...x,[w]:Ere(i,k),onTransitionEnd:f,style:{boxSizing:"border-box",...v,...s}};return Kr.version.startsWith("18")?o||(C.inert=""):C.inert=!o,C}return g}const ftt={transitionDuration:200,transitionTimingFunction:"ease",animateOpacity:!0},Vre=We((e,r)=>{const{children:n,in:o,transitionDuration:a,transitionTimingFunction:i,style:l,onTransitionEnd:s,animateOpacity:c,keepMounted:d,...u}=Re("Collapse",ftt,e),p=uo(),f=Kz(),g=p.respectReducedMotion&&f?0:a,v=htt({opened:o,transitionDuration:g,transitionTimingFunction:i,onTransitionEnd:s,keepMounted:d});return g===0?o?y.jsx(Te,{...u,children:n}):null:y.jsx(Te,{...v({style:{opacity:o||!c?1:0,transition:c?`opacity ${g}ms ${i}`:"none",...iR(l,p)},ref:r,...u}),children:n})});Vre.displayName="@mantine/core/Collapse";function lk(){return typeof window<"u"}function Nm(e){return qre(e)?(e.nodeName||"").toLowerCase():"#document"}function aa(e){var r;return(e==null||(r=e.ownerDocument)==null?void 0:r.defaultView)||window}function ls(e){var r;return(r=(qre(e)?e.ownerDocument:e.document)||window.document)==null?void 0:r.documentElement}function qre(e){return lk()?e instanceof Node||e instanceof aa(e).Node:!1}function Mr(e){return lk()?e instanceof Element||e instanceof aa(e).Element:!1}function Ta(e){return lk()?e instanceof HTMLElement||e instanceof aa(e).HTMLElement:!1}function cR(e){return!lk()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof aa(e).ShadowRoot}const mtt=new Set(["inline","contents"]);function S0(e){const{overflow:r,overflowX:n,overflowY:o,display:a}=xi(e);return/auto|scroll|overlay|hidden|clip/.test(r+o+n)&&!mtt.has(a)}const gtt=new Set(["table","td","th"]);function ytt(e){return gtt.has(Nm(e))}const vtt=[":popover-open",":modal"];function sk(e){return vtt.some(r=>{try{return e.matches(r)}catch{return!1}})}const btt=["transform","translate","scale","rotate","perspective"],xtt=["transform","translate","scale","rotate","perspective","filter"],wtt=["paint","layout","strict","content"];function dR(e){const r=ck(),n=Mr(e)?xi(e):e;return btt.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)||xtt.some(o=>(n.willChange||"").includes(o))||wtt.some(o=>(n.contain||"").includes(o))}function ktt(e){let r=hc(e);for(;Ta(r)&&!pc(r);){if(dR(r))return r;if(sk(r))return null;r=hc(r)}return null}function ck(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const _tt=new Set(["html","body","#document"]);function pc(e){return _tt.has(Nm(e))}function xi(e){return aa(e).getComputedStyle(e)}function dk(e){return Mr(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function hc(e){if(Nm(e)==="html")return e;const r=e.assignedSlot||e.parentNode||cR(e)&&e.host||ls(e);return cR(r)?r.host:r}function Hre(e){const r=hc(e);return pc(r)?e.ownerDocument?e.ownerDocument.body:e.body:Ta(r)&&S0(r)?r:Hre(r)}function fc(e,r,n){var o;r===void 0&&(r=[]),n===void 0&&(n=!0);const a=Hre(e),i=a===((o=e.ownerDocument)==null?void 0:o.body),l=aa(a);if(i){const s=uR(l);return r.concat(l,l.visualViewport||[],S0(a)?a:[],s&&n?fc(s):[])}return r.concat(a,fc(a,[],n))}function uR(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}const Stt=["top","right","bottom","left"],bl=Math.min,jo=Math.max,uk=Math.round,pk=Math.floor,ss=e=>({x:e,y:e}),Ett={left:"right",right:"left",bottom:"top",top:"bottom"},Ctt={start:"end",end:"start"};function pR(e,r,n){return jo(e,bl(r,n))}function cs(e,r){return typeof e=="function"?e(r):e}function xl(e){return e.split("-")[0]}function Pm(e){return e.split("-")[1]}function hR(e){return e==="x"?"y":"x"}function fR(e){return e==="y"?"height":"width"}const $tt=new Set(["top","bottom"]);function wl(e){return $tt.has(xl(e))?"y":"x"}function mR(e){return hR(wl(e))}function ztt(e,r,n){n===void 0&&(n=!1);const o=Pm(e),a=mR(e),i=fR(a);let l=a==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return r.reference[i]>r.floating[i]&&(l=hk(l)),[l,hk(l)]}function Rtt(e){const r=hk(e);return[gR(e),r,gR(r)]}function gR(e){return e.replace(/start|end/g,r=>Ctt[r])}const Ure=["left","right"],Wre=["right","left"],jtt=["top","bottom"],Ttt=["bottom","top"];function Att(e,r,n){switch(e){case"top":case"bottom":return n?r?Wre:Ure:r?Ure:Wre;case"left":case"right":return r?jtt:Ttt;default:return[]}}function Dtt(e,r,n,o){const a=Pm(e);let i=Att(xl(e),n==="start",o);return a&&(i=i.map(l=>l+"-"+a),r&&(i=i.concat(i.map(gR)))),i}function hk(e){return e.replace(/left|right|bottom|top/g,r=>Ett[r])}function Mtt(e){return{top:0,right:0,bottom:0,left:0,...e}}function yR(e){return typeof e!="number"?Mtt(e):{top:e,right:e,bottom:e,left:e}}function Bm(e){const{x:r,y:n,width:o,height:a}=e;return{width:o,height:a,top:n,left:r,right:r+o,bottom:n+a,x:r,y:n}}function Ntt(){const e=navigator.userAgentData;return e!=null&&e.platform?e.platform:navigator.platform}function Ptt(){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 Btt(){return/apple/i.test(navigator.vendor)}function Ott(){return Ntt().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function Itt(){return Ptt().includes("jsdom/")}const Gre="data-floating-ui-focusable",Ltt="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function Yre(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 E0(e,r){if(!e||!r)return!1;const n=r.getRootNode==null?void 0:r.getRootNode();if(e.contains(r))return!0;if(n&&cR(n)){let o=r;for(;o;){if(e===o)return!0;o=o.parentNode||o.host}}return!1}function Om(e){return"composedPath"in e?e.composedPath()[0]:e.target}function vR(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 Ftt(e){return e.matches("html,body")}function Mp(e){return e?.ownerDocument||document}function Vtt(e){return Ta(e)&&e.matches(Ltt)}function qtt(e){if(!e||Itt())return!0;try{return e.matches(":focus-visible")}catch{return!0}}function Htt(e){return e?e.hasAttribute(Gre)?e:e.querySelector("["+Gre+"]")||e:null}function fk(e,r,n){return n===void 0&&(n=!0),e.filter(o=>{var a;return o.parentId===r&&(!n||((a=o.context)==null?void 0:a.open))}).flatMap(o=>[o,...fk(e,o.id,n)])}function Utt(e){return"nativeEvent"in e}function bR(e,r){const n=["mouse","pen"];return n.push("",void 0),n.includes(e)}var Wtt=typeof document<"u",Gtt=function(){},ds=Wtt?S.useLayoutEffect:Gtt;const Ytt={...ob};function mk(e){const r=S.useRef(e);return ds(()=>{r.current=e}),r}const Xtt=Ytt.useInsertionEffect,Ztt=Xtt||(e=>e());function us(e){const r=S.useRef(()=>{});return Ztt(()=>{r.current=e}),S.useCallback(function(){for(var n=arguments.length,o=new Array(n),a=0;a{const{placement:o="bottom",strategy:a="absolute",middleware:i=[],platform:l}=n,s=i.filter(Boolean),c=await(l.isRTL==null?void 0:l.isRTL(r));let d=await l.getElementRects({reference:e,floating:r,strategy:a}),{x:u,y:p}=Xre(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:a,rects:i,platform:l,elements:s,middlewareData:c}=r,{element:d,padding:u=0}=cs(e,r)||{};if(d==null)return{};const p=yR(u),f={x:n,y:o},g=mR(a),v=fR(g),w=await l.getDimensions(d),x=g==="y",k=x?"top":"left",C=x?"bottom":"right",_=x?"clientHeight":"clientWidth",$=i.reference[v]+i.reference[g]-f[g]-i.floating[v],z=f[g]-i.reference[g],j=await(l.getOffsetParent==null?void 0:l.getOffsetParent(d));let A=j?j[_]:0;(!A||!await(l.isElement==null?void 0:l.isElement(j)))&&(A=s.floating[_]||i.floating[v]);const R=$/2-z/2,T=A/2-w[v]/2-1,O=bl(p[k],T),P=bl(p[C],T),L=O,H=A-w[v]-P,M=A/2-w[v]/2+R,V=pR(L,M,H),B=!c.arrow&&Pm(a)!=null&&M!==V&&i.reference[v]/2-(MM<=0)){var P,L;const M=(((P=i.flip)==null?void 0:P.index)||0)+1,V=A[M];if(V&&(!(p==="alignment"&&C!==wl(V))||O.every(F=>wl(F.placement)===C?F.overflows[0]>0:!0)))return{data:{index:M,overflows:O},reset:{placement:V}};let B=(L=O.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=O.filter(q=>{if(j){const G=wl(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(a!==B)return{reset:{placement:B}}}return{}}}};function Zre(e,r){return{top:e.top-r.height,right:e.right-r.width,bottom:e.bottom-r.height,left:e.left-r.width}}function Kre(e){return Stt.some(r=>e[r]>=0)}const ert=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(r){const{rects:n}=r,{strategy:o="referenceHidden",...a}=cs(e,r);switch(o){case"referenceHidden":{const i=await C0(r,{...a,elementContext:"reference"}),l=Zre(i,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:Kre(l)}}}case"escaped":{const i=await C0(r,{...a,altBoundary:!0}),l=Zre(i,n.floating);return{data:{escapedOffsets:l,escaped:Kre(l)}}}default:return{}}}}};function Qre(e){const r=bl(...e.map(i=>i.left)),n=bl(...e.map(i=>i.top)),o=jo(...e.map(i=>i.right)),a=jo(...e.map(i=>i.bottom));return{x:r,y:n,width:o-r,height:a-n}}function trt(e){const r=e.slice().sort((a,i)=>a.y-i.y),n=[];let o=null;for(let a=0;ao.height/2?n.push([i]):n[n.length-1].push(i),o=i}return n.map(a=>Bm(Qre(a)))}const rrt=function(e){return e===void 0&&(e={}),{name:"inline",options:e,async fn(r){const{placement:n,elements:o,rects:a,platform:i,strategy:l}=r,{padding:s=2,x:c,y:d}=cs(e,r),u=Array.from(await(i.getClientRects==null?void 0:i.getClientRects(o.reference))||[]),p=trt(u),f=Bm(Qre(u)),g=yR(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(wl(n)==="y"){const O=p[0],P=p[p.length-1],L=xl(n)==="top",H=O.top,M=P.bottom,V=L?O.left:P.left,B=L?O.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=xl(n)==="left",k=jo(...p.map(O=>O.right)),C=bl(...p.map(O=>O.left)),_=p.filter(O=>x?O.left===C:O.right===k),$=_[0].top,z=_[_.length-1].bottom,j=C,A=k,R=A-j,T=z-$;return{top:$,bottom:z,left:j,right:A,width:R,height:T,x:j,y:$}}return f}const w=await i.getElementRects({reference:{getBoundingClientRect:v},floating:o.floating,strategy:l});return a.reference.x!==w.reference.x||a.reference.y!==w.reference.y||a.reference.width!==w.reference.width||a.reference.height!==w.reference.height?{reset:{rects:w}}:{}}}},Jre=new Set(["left","top"]);async function nrt(e,r){const{placement:n,platform:o,elements:a}=e,i=await(o.isRTL==null?void 0:o.isRTL(a.floating)),l=xl(n),s=Pm(n),c=wl(n)==="y",d=Jre.has(l)?-1:1,u=i&&c?-1:1,p=cs(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 ort=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(r){var n,o;const{x:a,y:i,placement:l,middlewareData:s}=r,c=await nrt(r,e);return l===((n=s.offset)==null?void 0:n.placement)&&(o=s.arrow)!=null&&o.alignmentOffset?{}:{x:a+c.x,y:i+c.y,data:{...c,placement:l}}}}},art=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(r){const{x:n,y:o,placement:a}=r,{mainAxis:i=!0,crossAxis:l=!1,limiter:s={fn:x=>{let{x:k,y:C}=x;return{x:k,y:C}}},...c}=cs(e,r),d={x:n,y:o},u=await C0(r,c),p=wl(xl(a)),f=hR(p);let g=d[f],v=d[p];if(i){const x=f==="y"?"top":"left",k=f==="y"?"bottom":"right",C=g+u[x],_=g-u[k];g=pR(C,g,_)}if(l){const x=p==="y"?"top":"left",k=p==="y"?"bottom":"right",C=v+u[x],_=v-u[k];v=pR(C,v,_)}const w=s.fn({...r,[f]:g,[p]:v});return{...w,data:{x:w.x-n,y:w.y-o,enabled:{[f]:i,[p]:l}}}}}},irt=function(e){return e===void 0&&(e={}),{options:e,fn(r){const{x:n,y:o,placement:a,rects:i,middlewareData:l}=r,{offset:s=0,mainAxis:c=!0,crossAxis:d=!0}=cs(e,r),u={x:n,y:o},p=wl(a),f=hR(p);let g=u[f],v=u[p];const w=cs(s,r),x=typeof w=="number"?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(c){const _=f==="y"?"height":"width",$=i.reference[f]-i.floating[_]+x.mainAxis,z=i.reference[f]+i.reference[_]-x.mainAxis;g<$?g=$:g>z&&(g=z)}if(d){var k,C;const _=f==="y"?"width":"height",$=Jre.has(xl(a)),z=i.reference[p]-i.floating[_]+($&&((k=l.offset)==null?void 0:k[p])||0)+($?0:x.crossAxis),j=i.reference[p]+i.reference[_]+($?0:((C=l.offset)==null?void 0:C[p])||0)-($?x.crossAxis:0);vj&&(v=j)}return{[f]:g,[p]:v}}}},lrt=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(r){var n,o;const{placement:a,rects:i,platform:l,elements:s}=r,{apply:c=()=>{},...d}=cs(e,r),u=await C0(r,d),p=xl(a),f=Pm(a),g=wl(a)==="y",{width:v,height:w}=i.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,$=bl(w-u[x],C),z=bl(v-u[k],_),j=!r.middlewareData.shift;let A=$,R=z;if((n=r.middlewareData.shift)!=null&&n.enabled.x&&(R=_),(o=r.middlewareData.shift)!=null&&o.enabled.y&&(A=C),j&&!f){const O=jo(u.left,0),P=jo(u.right,0),L=jo(u.top,0),H=jo(u.bottom,0);g?R=v-2*(O!==0||P!==0?O+P:jo(u.left,u.right)):A=w-2*(L!==0||H!==0?L+H:jo(u.top,u.bottom))}await c({...r,availableWidth:R,availableHeight:A});const T=await l.getDimensions(s.floating);return v!==T.width||w!==T.height?{reset:{rects:!0}}:{}}}};function ene(e){const r=xi(e);let n=parseFloat(r.width)||0,o=parseFloat(r.height)||0;const a=Ta(e),i=a?e.offsetWidth:n,l=a?e.offsetHeight:o,s=uk(n)!==i||uk(o)!==l;return s&&(n=i,o=l),{width:n,height:o,$:s}}function xR(e){return Mr(e)?e:e.contextElement}function Im(e){const r=xR(e);if(!Ta(r))return ss(1);const n=r.getBoundingClientRect(),{width:o,height:a,$:i}=ene(r);let l=(i?uk(n.width):n.width)/o,s=(i?uk(n.height):n.height)/a;return(!l||!Number.isFinite(l))&&(l=1),(!s||!Number.isFinite(s))&&(s=1),{x:l,y:s}}const srt=ss(0);function tne(e){const r=aa(e);return!ck()||!r.visualViewport?srt:{x:r.visualViewport.offsetLeft,y:r.visualViewport.offsetTop}}function crt(e,r,n){return r===void 0&&(r=!1),!n||r&&n!==aa(e)?!1:r}function Np(e,r,n,o){r===void 0&&(r=!1),n===void 0&&(n=!1);const a=e.getBoundingClientRect(),i=xR(e);let l=ss(1);r&&(o?Mr(o)&&(l=Im(o)):l=Im(e));const s=crt(i,n,o)?tne(i):ss(0);let c=(a.left+s.x)/l.x,d=(a.top+s.y)/l.y,u=a.width/l.x,p=a.height/l.y;if(i){const f=aa(i),g=o&&Mr(o)?aa(o):o;let v=f,w=uR(v);for(;w&&o&&g!==v;){const x=Im(w),k=w.getBoundingClientRect(),C=xi(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=aa(w),w=uR(v)}}return Bm({width:u,height:p,x:c,y:d})}function gk(e,r){const n=dk(e).scrollLeft;return r?r.left+n:Np(ls(e)).left+n}function rne(e,r){const n=e.getBoundingClientRect(),o=n.left+r.scrollLeft-gk(e,n),a=n.top+r.scrollTop;return{x:o,y:a}}function drt(e){let{elements:r,rect:n,offsetParent:o,strategy:a}=e;const i=a==="fixed",l=ls(o),s=r?sk(r.floating):!1;if(o===l||s&&i)return n;let c={scrollLeft:0,scrollTop:0},d=ss(1);const u=ss(0),p=Ta(o);if((p||!p&&!i)&&((Nm(o)!=="body"||S0(l))&&(c=dk(o)),Ta(o))){const g=Np(o);d=Im(o),u.x=g.x+o.clientLeft,u.y=g.y+o.clientTop}const f=l&&!p&&!i?rne(l,c):ss(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 urt(e){return Array.from(e.getClientRects())}function prt(e){const r=ls(e),n=dk(e),o=e.ownerDocument.body,a=jo(r.scrollWidth,r.clientWidth,o.scrollWidth,o.clientWidth),i=jo(r.scrollHeight,r.clientHeight,o.scrollHeight,o.clientHeight);let l=-n.scrollLeft+gk(e);const s=-n.scrollTop;return xi(o).direction==="rtl"&&(l+=jo(r.clientWidth,o.clientWidth)-a),{width:a,height:i,x:l,y:s}}const nne=25;function hrt(e,r){const n=aa(e),o=ls(e),a=n.visualViewport;let i=o.clientWidth,l=o.clientHeight,s=0,c=0;if(a){i=a.width,l=a.height;const u=ck();(!u||u&&r==="fixed")&&(s=a.offsetLeft,c=a.offsetTop)}const d=gk(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<=nne&&(i-=v)}else d<=nne&&(i+=d);return{width:i,height:l,x:s,y:c}}const frt=new Set(["absolute","fixed"]);function mrt(e,r){const n=Np(e,!0,r==="fixed"),o=n.top+e.clientTop,a=n.left+e.clientLeft,i=Ta(e)?Im(e):ss(1),l=e.clientWidth*i.x,s=e.clientHeight*i.y,c=a*i.x,d=o*i.y;return{width:l,height:s,x:c,y:d}}function one(e,r,n){let o;if(r==="viewport")o=hrt(e,n);else if(r==="document")o=prt(ls(e));else if(Mr(r))o=mrt(r,n);else{const a=tne(e);o={x:r.x-a.x,y:r.y-a.y,width:r.width,height:r.height}}return Bm(o)}function ane(e,r){const n=hc(e);return n===r||!Mr(n)||pc(n)?!1:xi(n).position==="fixed"||ane(n,r)}function grt(e,r){const n=r.get(e);if(n)return n;let o=fc(e,[],!1).filter(s=>Mr(s)&&Nm(s)!=="body"),a=null;const i=xi(e).position==="fixed";let l=i?hc(e):e;for(;Mr(l)&&!pc(l);){const s=xi(l),c=dR(l);!c&&s.position==="fixed"&&(a=null),(i?!c&&!a:!c&&s.position==="static"&&a&&frt.has(a.position)||S0(l)&&!c&&ane(e,l))?o=o.filter(d=>d!==l):a=s,l=hc(l)}return r.set(e,o),o}function yrt(e){let{element:r,boundary:n,rootBoundary:o,strategy:a}=e;const i=[...n==="clippingAncestors"?sk(r)?[]:grt(r,this._c):[].concat(n),o],l=i[0],s=i.reduce((c,d)=>{const u=one(r,d,a);return c.top=jo(u.top,c.top),c.right=bl(u.right,c.right),c.bottom=bl(u.bottom,c.bottom),c.left=jo(u.left,c.left),c},one(r,l,a));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function vrt(e){const{width:r,height:n}=ene(e);return{width:r,height:n}}function brt(e,r,n){const o=Ta(r),a=ls(r),i=n==="fixed",l=Np(e,!0,i,r);let s={scrollLeft:0,scrollTop:0};const c=ss(0);function d(){c.x=gk(a)}if(o||!o&&!i)if((Nm(r)!=="body"||S0(a))&&(s=dk(r)),o){const g=Np(r,!0,i,r);c.x=g.x+r.clientLeft,c.y=g.y+r.clientTop}else a&&d();i&&!o&&a&&d();const u=a&&!o&&!i?rne(a,s):ss(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 wR(e){return xi(e).position==="static"}function ine(e,r){if(!Ta(e)||xi(e).position==="fixed")return null;if(r)return r(e);let n=e.offsetParent;return ls(e)===n&&(n=n.ownerDocument.body),n}function lne(e,r){const n=aa(e);if(sk(e))return n;if(!Ta(e)){let a=hc(e);for(;a&&!pc(a);){if(Mr(a)&&!wR(a))return a;a=hc(a)}return n}let o=ine(e,r);for(;o&&ytt(o)&&wR(o);)o=ine(o,r);return o&&pc(o)&&wR(o)&&!dR(o)?n:o||ktt(e)||n}const xrt=async function(e){const r=this.getOffsetParent||lne,n=this.getDimensions,o=await n(e.floating);return{reference:brt(e.reference,await r(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function wrt(e){return xi(e).direction==="rtl"}const krt={convertOffsetParentRelativeRectToViewportRelativeRect:drt,getDocumentElement:ls,getClippingRect:yrt,getOffsetParent:lne,getElementRects:xrt,getClientRects:urt,getDimensions:vrt,getScale:Im,isElement:Mr,isRTL:wrt};function sne(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}function _rt(e,r){let n=null,o;const a=ls(e);function i(){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),i();const d=e.getBoundingClientRect(),{left:u,top:p,width:f,height:g}=d;if(s||r(),!f||!g)return;const v=pk(p),w=pk(a.clientWidth-(u+f)),x=pk(a.clientHeight-(p+g)),k=pk(u),C={rootMargin:-v+"px "+-w+"px "+-x+"px "+-k+"px",threshold:jo(0,bl(1,c))||1};let _=!0;function $(z){const j=z[0].intersectionRatio;if(j!==c){if(!_)return l();j?l(!1,j):o=setTimeout(()=>{l(!1,1e-7)},1e3)}j===1&&!sne(d,e.getBoundingClientRect())&&l(),_=!1}try{n=new IntersectionObserver($,{...C,root:a.ownerDocument})}catch{n=new IntersectionObserver($,C)}n.observe(e)}return l(!0),i}function kR(e,r,n,o){o===void 0&&(o={});const{ancestorScroll:a=!0,ancestorResize:i=!0,elementResize:l=typeof ResizeObserver=="function",layoutShift:s=typeof IntersectionObserver=="function",animationFrame:c=!1}=o,d=xR(e),u=a||i?[...d?fc(d):[],...fc(r)]:[];u.forEach(k=>{a&&k.addEventListener("scroll",n,{passive:!0}),i&&k.addEventListener("resize",n)});const p=d&&s?_rt(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?Np(e):null;c&&x();function x(){const k=Np(e);w&&!sne(w,k)&&n(),w=k,v=requestAnimationFrame(x)}return n(),()=>{var k;u.forEach(C=>{a&&C.removeEventListener("scroll",n),i&&C.removeEventListener("resize",n)}),p?.(),(k=g)==null||k.disconnect(),g=null,c&&cancelAnimationFrame(v)}}const Srt=ort,Ert=art,Crt=Jtt,$rt=lrt,zrt=ert,cne=Qtt,Rrt=rrt,jrt=irt,Trt=(e,r,n)=>{const o=new Map,a={platform:krt,...n},i={...a.platform,_c:o};return Ktt(e,r,{...a,platform:i})};var Art=typeof document<"u",Drt=function(){},yk=Art?S.useLayoutEffect:Drt;function vk(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,a;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(!vk(e[o],r[o]))return!1;return!0}if(a=Object.keys(e),n=a.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!{}.hasOwnProperty.call(r,a[o]))return!1;for(o=n;o--!==0;){const i=a[o];if(!(i==="_owner"&&e.$$typeof)&&!vk(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}function dne(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function une(e,r){const n=dne(e);return Math.round(r*n)/n}function _R(e){const r=S.useRef(e);return yk(()=>{r.current=e}),r}function Mrt(e){e===void 0&&(e={});const{placement:r="bottom",strategy:n="absolute",middleware:o=[],platform:a,elements:{reference:i,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);vk(f,o)||g(o);const[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(q=>{q!==j.current&&(j.current=q,w(q))},[]),_=S.useCallback(q=>{q!==A.current&&(A.current=q,k(q))},[]),$=i||v,z=l||x,j=S.useRef(null),A=S.useRef(null),R=S.useRef(u),T=c!=null,O=_R(c),P=_R(a),L=_R(d),H=S.useCallback(()=>{if(!j.current||!A.current)return;const q={placement:r,strategy:n,middleware:f};P.current&&(q.platform=P.current),Trt(j.current,A.current,q).then(G=>{const U={...G,isPositioned:L.current!==!1};M.current&&!vk(R.current,U)&&(R.current=U,Ii.flushSync(()=>{p(U)}))})},[f,r,n,P,L]);yk(()=>{d===!1&&R.current.isPositioned&&(R.current.isPositioned=!1,p(q=>({...q,isPositioned:!1})))},[d]);const M=S.useRef(!1);yk(()=>(M.current=!0,()=>{M.current=!1}),[]),yk(()=>{if($&&(j.current=$),z&&(A.current=z),$&&z){if(O.current)return O.current($,z,H);H()}},[$,z,H,O,T]);const V=S.useMemo(()=>({reference:j,floating:A,setReference:C,setFloating:_}),[C,_]),B=S.useMemo(()=>({reference:$,floating:z}),[$,z]),F=S.useMemo(()=>{const q={position:n,left:0,top:0};if(!B.floating)return q;const G=une(B.floating,u.x),U=une(B.floating,u.y);return s?{...q,transform:"translate("+G+"px, "+U+"px)",...dne(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 Nrt=e=>{function r(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:o,padding:a}=typeof e=="function"?e(n):e;return o&&r(o)?o.current!=null?cne({element:o.current,padding:a}).fn(n):{}:o?cne({element:o,padding:a}).fn(n):{}}}},pne=(e,r)=>({...Srt(e),options:[e,r]}),SR=(e,r)=>({...Ert(e),options:[e,r]}),hne=(e,r)=>({...jrt(e),options:[e,r]}),bk=(e,r)=>({...Crt(e),options:[e,r]}),Prt=(e,r)=>({...$rt(e),options:[e,r]}),Brt=(e,r)=>({...zrt(e),options:[e,r]}),$0=(e,r)=>({...Rrt(e),options:[e,r]}),fne=(e,r)=>({...Nrt(e),options:[e,r]});function mne(e){const r=S.useRef(void 0),n=S.useCallback(o=>{const a=e.map(i=>{if(i!=null){if(typeof i=="function"){const l=i,s=l(o);return typeof s=="function"?s:()=>{l(null)}}return i.current=o,()=>{i.current=null}}});return()=>{a.forEach(i=>i?.())}},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 Ort="data-floating-ui-focusable",gne="active",yne="selected",Irt={...ob};let vne=!1,Lrt=0;const bne=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+Lrt++;function Frt(){const[e,r]=S.useState(()=>vne?bne():void 0);return ds(()=>{e==null&&r(bne())},[]),S.useEffect(()=>{vne=!0},[]),e}const Vrt=Irt.useId,xne=Vrt||Frt;function qrt(){const e=new Map;return{emit(r,n){var o;(o=e.get(r))==null||o.forEach(a=>a(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 Hrt=S.createContext(null),Urt=S.createContext(null),ER=()=>{var e;return((e=S.useContext(Hrt))==null?void 0:e.id)||null},CR=()=>S.useContext(Urt);function $R(e){return"data-floating-ui-"+e}function wi(e){e.current!==-1&&(clearTimeout(e.current),e.current=-1)}const wne=$R("safe-polygon");function xk(e,r,n){if(n&&!bR(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 zR(e){return typeof e=="function"?e():e}function Wrt(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,dataRef:a,events:i,elements:l}=e,{enabled:s=!0,delay:c=0,handleClose:d=null,mouseOnly:u=!1,restMs:p=0,move:f=!0}=r,g=CR(),v=ER(),w=mk(d),x=mk(c),k=mk(n),C=mk(p),_=S.useRef(),$=S.useRef(-1),z=S.useRef(),j=S.useRef(-1),A=S.useRef(!0),R=S.useRef(!1),T=S.useRef(()=>{}),O=S.useRef(!1),P=us(()=>{var F;const q=(F=a.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||(wi($),wi(j),A.current=!0,O.current=!1)}return i.on("openchange",F),()=>{i.off("openchange",F)}},[s,i]),S.useEffect(()=>{if(!s||!w.current||!n)return;function F(G){P()&&o(!1,G,"hover")}const q=Mp(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=xk(x.current,"close",_.current);U&&!z.current?(wi($),$.current=window.setTimeout(()=>o(!1,F,G),U)):q&&(wi($),o(!1,F,G))},[x,o]),H=us(()=>{T.current(),z.current=void 0}),M=us(()=>{if(R.current){const F=Mp(l.floating).body;F.style.pointerEvents="",F.removeAttribute(wne),R.current=!1}}),V=us(()=>a.current.openEvent?["click","mousedown"].includes(a.current.openEvent.type):!1);S.useEffect(()=>{if(!s)return;function F(Z){if(wi($),A.current=!1,u&&!bR(_.current)||zR(C.current)>0&&!xk(x.current,"open"))return;const I=xk(x.current,"open",_.current);I?$.current=window.setTimeout(()=>{k.current||o(!0,Z,"hover")},I):n||o(!0,Z,"hover")}function q(Z){if(V()){M();return}T.current();const I=Mp(l.floating);if(wi(j),O.current=!1,w.current&&a.current.floatingContext){n||wi($),z.current=w.current({...a.current.floatingContext,tree:g,x:Z.clientX,y:Z.clientY,onClose(){M(),H(),V()||L(Z,!0,"safe-polygon")}});const W=z.current;I.addEventListener("mousemove",W),T.current=()=>{I.removeEventListener("mousemove",W)};return}(_.current!=="touch"||!E0(l.floating,Z.relatedTarget))&&L(Z)}function G(Z){V()||a.current.floatingContext&&(w.current==null||w.current({...a.current.floatingContext,tree:g,x:Z.clientX,y:Z.clientY,onClose(){M(),H(),V()||L(Z)}})(Z))}function U(){wi($)}function Y(Z){V()||L(Z,!1)}if(Mr(l.domReference)){const Z=l.domReference,I=l.floating;return n&&Z.addEventListener("mouseleave",G),f&&Z.addEventListener("mousemove",F,{once:!0}),Z.addEventListener("mouseenter",F),Z.addEventListener("mouseleave",q),I&&(I.addEventListener("mouseleave",G),I.addEventListener("mouseenter",U),I.addEventListener("mouseleave",Y)),()=>{n&&Z.removeEventListener("mouseleave",G),f&&Z.removeEventListener("mousemove",F),Z.removeEventListener("mouseenter",F),Z.removeEventListener("mouseleave",q),I&&(I.removeEventListener("mouseleave",G),I.removeEventListener("mouseenter",U),I.removeEventListener("mouseleave",Y))}}},[l,s,e,u,f,L,H,M,o,n,k,g,x,w,a,V,C]),ds(()=>{var F;if(s&&n&&(F=w.current)!=null&&(F=F.__options)!=null&&F.blockPointerEvents&&P()){R.current=!0;const G=l.floating;if(Mr(l.domReference)&&G){var q;const U=Mp(l.floating).body;U.setAttribute(wne,"");const Y=l.domReference,Z=g==null||(q=g.nodesRef.current.find(I=>I.id===v))==null||(q=q.context)==null?void 0:q.elements.floating;return Z&&(Z.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]),ds(()=>{n||(_.current=void 0,O.current=!1,H(),M())},[n,H,M]),S.useEffect(()=>()=>{H(),wi($),wi(j),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&&!bR(_.current)||n||zR(C.current)===0||O.current&&q.movementX**2+q.movementY**2<2||(wi(j),_.current==="touch"?U():(O.current=!0,j.current=window.setTimeout(U,zR(C.current))))}}},[u,o,n,k,C]);return S.useMemo(()=>s?{reference:B}:{},[s,B])}const RR=()=>{},kne=S.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:RR,setState:RR,isInstantPhase:!1}),Grt=()=>S.useContext(kne);function _ne(e){const{children:r,delay:n,timeoutMs:o=0}=e,[a,i]=S.useReducer((c,d)=>({...c,...d}),{delay:n,timeoutMs:o,initialDelay:n,currentId:null,isInstantPhase:!1}),l=S.useRef(null),s=S.useCallback(c=>{i({currentId:c})},[]);return ds(()=>{a.currentId?l.current===null?l.current=a.currentId:a.isInstantPhase||i({isInstantPhase:!0}):(a.isInstantPhase&&i({isInstantPhase:!1}),l.current=null)},[a.currentId,a.isInstantPhase]),y.jsx(kne.Provider,{value:S.useMemo(()=>({...a,setState:i,setCurrentId:s}),[a,s]),children:r})}function Yrt(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,floatingId:a}=e,{id:i,enabled:l=!0}=r,s=i??a,c=Grt(),{currentId:d,setCurrentId:u,initialDelay:p,setState:f,timeoutMs:g}=c;return ds(()=>{l&&d&&(f({delay:{open:1,close:xk(p,"close")}}),d!==s&&o(!1))},[l,s,o,f,d,p]),ds(()=>{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]),ds(()=>{l&&(u===RR||!n||u(s))},[l,n,u,s]),c}const Xrt={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},Zrt={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},Sne=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 Krt(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,elements:a,dataRef:i}=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=CR(),x=us(typeof c=="function"?c:()=>!1),k=typeof c=="function"?x:c,C=S.useRef(!1),{escapeKey:_,outsidePress:$}=Sne(g),{escapeKey:z,outsidePress:j}=Sne(v),A=S.useRef(!1),R=us(M=>{var V;if(!n||!l||!s||M.key!=="Escape"||A.current)return;const B=(V=i.current.floatingContext)==null?void 0:V.nodeId,F=w?fk(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,Utt(M)?M.nativeEvent:M,"escape-key")}),T=us(M=>{var V;const B=()=>{var F;R(M),(F=Om(M))==null||F.removeEventListener("keydown",B)};(V=Om(M))==null||V.addEventListener("keydown",B)}),O=us(M=>{var V;const B=i.current.insideReactTree;i.current.insideReactTree=!1;const F=C.current;if(C.current=!1,d==="click"&&F||B||typeof k=="function"&&!k(M))return;const q=Om(M),G="["+$R("inert")+"]",U=Mp(a.floating).querySelectorAll(G);let Y=Mr(q)?q:null;for(;Y&&!pc(Y);){const K=hc(Y);if(pc(K)||!Mr(K))break;Y=K}if(U.length&&Mr(q)&&!Ftt(q)&&!E0(q,a.floating)&&Array.from(U).every(K=>!E0(Y,K)))return;if(Ta(q)&&H){const K=pc(q),Q=xi(q),ae=/auto|scroll/,te=K||ae.test(Q.overflowX),re=K||ae.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 Z=(V=i.current.floatingContext)==null?void 0:V.nodeId,I=w&&fk(w.nodesRef.current,Z).some(K=>{var Q;return vR(M,(Q=K.context)==null?void 0:Q.elements.floating)});if(vR(M,a.floating)||vR(M,a.domReference)||I)return;const W=w?fk(w.nodesRef.current,Z):[];if(W.length>0){let K=!0;if(W.forEach(Q=>{var ae;if((ae=Q.context)!=null&&ae.open&&!Q.context.dataRef.current.__outsidePressBubbles){K=!1;return}}),!K)return}o(!1,M,"outside-press")}),P=us(M=>{var V;const B=()=>{var F;O(M),(F=Om(M))==null||F.removeEventListener(d,B)};(V=Om(M))==null||V.addEventListener(d,B)});S.useEffect(()=>{if(!n||!l)return;i.current.__escapeKeyBubbles=_,i.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},ck()?5:0)}const q=Mp(a.floating);s&&(q.addEventListener("keydown",z?T:R,z),q.addEventListener("compositionstart",B),q.addEventListener("compositionend",F)),k&&q.addEventListener(d,j?P:O,j);let G=[];return f&&(Mr(a.domReference)&&(G=fc(a.domReference)),Mr(a.floating)&&(G=G.concat(fc(a.floating))),!Mr(a.reference)&&a.reference&&a.reference.contextElement&&(G=G.concat(fc(a.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",z?T:R,z),q.removeEventListener("compositionstart",B),q.removeEventListener("compositionend",F)),k&&q.removeEventListener(d,j?P:O,j),G.forEach(U=>{U.removeEventListener("scroll",V)}),window.clearTimeout(M)}},[i,a,s,k,d,n,o,f,l,_,$,R,z,T,O,j,P]),S.useEffect(()=>{i.current.insideReactTree=!1},[i,k,d]);const L=S.useMemo(()=>({onKeyDown:R,...u&&{[Xrt[p]]:M=>{o(!1,M.nativeEvent,"reference-press")},...p!=="click"&&{onClick(M){o(!1,M.nativeEvent,"reference-press")}}}}),[R,o,u,p]),H=S.useMemo(()=>({onKeyDown:R,onMouseDown(){C.current=!0},onMouseUp(){C.current=!0},[Zrt[d]]:()=>{i.current.insideReactTree=!0}}),[R,d,i]);return S.useMemo(()=>l?{reference:L,floating:H}:{},[l,L,H])}function Qrt(e){const{open:r=!1,onOpenChange:n,elements:o}=e,a=xne(),i=S.useRef({}),[l]=S.useState(()=>qrt()),s=ER()!=null,[c,d]=S.useState(o.reference),u=us((g,v,w)=>{i.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:i,open:r,onOpenChange:u,elements:f,events:l,floatingId:a,refs:p}),[r,u,f,l,a,p])}function jR(e){e===void 0&&(e={});const{nodeId:r}=e,n=Qrt({...e,elements:{reference:null,floating:null,...e.elements}}),o=e.rootContext||n,a=o.elements,[i,l]=S.useState(null),[s,c]=S.useState(null),d=a?.domReference||i,u=S.useRef(null),p=CR();ds(()=>{d&&(u.current=d)},[d]);const f=Mrt({...e,elements:{...a,...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 ds(()=>{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 TR(){return Ott()&&Btt()}function Jrt(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,events:a,dataRef:i,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=aa(l.domReference);function v(){!n&&Ta(l.domReference)&&l.domReference===Yre(Mp(l.domReference))&&(d.current=!0)}function w(){p.current=!0}function x(){p.current=!1}return g.addEventListener("blur",v),TR()&&(g.addEventListener("keydown",w,!0),g.addEventListener("pointerdown",x,!0)),()=>{g.removeEventListener("blur",v),TR()&&(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 a.on("openchange",g),()=>{a.off("openchange",g)}},[a,s]),S.useEffect(()=>()=>{wi(u)},[]);const f=S.useMemo(()=>({onMouseLeave(){d.current=!1},onFocus(g){if(d.current)return;const v=Om(g.nativeEvent);if(c&&Mr(v)){if(TR()&&!g.relatedTarget){if(!p.current&&!Vtt(v))return}else if(!qtt(v))return}o(!0,g.nativeEvent,"focus")},onBlur(g){d.current=!1;const v=g.relatedTarget,w=g.nativeEvent,x=Mr(v)&&v.hasAttribute($R("focus-guard"))&&v.getAttribute("data-type")==="outside";u.current=window.setTimeout(()=>{var k;const C=Yre(l.domReference?l.domReference.ownerDocument:document);!v&&C===l.domReference||E0((k=i.current.floatingContext)==null?void 0:k.refs.floating.current,C)||E0(l.domReference,C)||x||o(!1,w,"focus")})}}),[i,l.domReference,o,c]);return S.useMemo(()=>s?{reference:f}:{},[s,f])}function AR(e,r,n){const o=new Map,a=n==="item";let i=e;if(a&&e){const{[gne]:l,[yne]:s,...c}=e;i=c}return{...n==="floating"&&{tabIndex:-1,[Ort]:""},...i,...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(!(a&&[gne,yne].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 ent(e){e===void 0&&(e=[]);const r=e.map(s=>s?.reference),n=e.map(s=>s?.floating),o=e.map(s=>s?.item),a=S.useCallback(s=>AR(s,e,"reference"),r),i=S.useCallback(s=>AR(s,e,"floating"),n),l=S.useCallback(s=>AR(s,e,"item"),o);return S.useMemo(()=>({getReferenceProps:a,getFloatingProps:i,getItemProps:l}),[a,i,l])}const tnt=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function rnt(e,r){var n,o;r===void 0&&(r={});const{open:a,elements:i,floatingId:l}=e,{enabled:s=!0,role:c="dialog"}=r,d=xne(),u=((n=i.domReference)==null?void 0:n.id)||d,p=S.useMemo(()=>{var k;return((k=Htt(i.floating))==null?void 0:k.id)||l},[i.floating,l]),f=(o=tnt.get(c))!=null?o:c,g=ER()!=null,v=S.useMemo(()=>f==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]:a?p:void 0}:{"aria-expanded":a?"true":"false","aria-haspopup":f==="alertdialog"?"dialog":f,"aria-controls":a?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,a,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[nnt,ki]=ja("ScrollArea.Root component was not found in tree");function Lm(e,r){const n=jp(r);Yz(()=>{let o=0;if(e){const a=new ResizeObserver(()=>{cancelAnimationFrame(o),o=window.requestAnimationFrame(n)});return a.observe(e),()=>{window.cancelAnimationFrame(o),a.unobserve(e)}}},[e,n])}const ont=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=ki(),[i,l]=S.useState(0),[s,c]=S.useState(0),d=!!(i&&s);return Lm(a.scrollbarX,()=>{const u=a.scrollbarX?.offsetHeight||0;a.onCornerHeightChange(u),c(u)}),Lm(a.scrollbarY,()=>{const u=a.scrollbarY?.offsetWidth||0;a.onCornerWidthChange(u),l(u)}),d?y.jsx("div",{...o,ref:r,style:{...n,width:i,height:s}}):null}),ant=S.forwardRef((e,r)=>{const n=ki(),o=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&o?y.jsx(ont,{...e,ref:r}):null}),int={scrollHideDelay:1e3,type:"hover"},Ene=S.forwardRef((e,r)=>{const{type:n,scrollHideDelay:o,scrollbars:a,getStyles:i,...l}=Re("ScrollAreaRoot",int,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),[z,j]=S.useState(!1),[A,R]=S.useState(!1),T=on(r,O=>c(O));return y.jsx(nnt,{value:{type:n,scrollHideDelay:o,scrollArea:s,viewport:d,onViewportChange:u,content:p,onContentChange:f,scrollbarX:g,onScrollbarXChange:v,scrollbarXEnabled:z,onScrollbarXEnabledChange:j,scrollbarY:w,onScrollbarYChange:x,scrollbarYEnabled:A,onScrollbarYEnabledChange:R,onCornerWidthChange:C,onCornerHeightChange:$,getStyles:i},children:y.jsx(Te,{...l,ref:T,__vars:{"--sa-corner-width":a!=="xy"?"0px":`${k}px`,"--sa-corner-height":a!=="xy"?"0px":`${_}px`}})})});Ene.displayName="@mantine/core/ScrollAreaRoot";function Cne(e,r){const n=e/r;return Number.isNaN(n)?0:n}function wk(e){const r=Cne(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=(e.scrollbar.size-n)*r;return Math.max(o,18)}function $ne(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 lnt(e,[r,n]){return Math.min(n,Math.max(r,e))}function zne(e,r,n="ltr"){const o=wk(r),a=r.scrollbar.paddingStart+r.scrollbar.paddingEnd,i=r.scrollbar.size-a,l=r.content-r.viewport,s=i-o,c=n==="ltr"?[0,l]:[l*-1,0],d=lnt(e,c);return $ne([0,l],[0,s])(d)}function snt(e,r,n,o="ltr"){const a=wk(n),i=a/2,l=r||i,s=a-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 $ne([c,d],p)(e)}function Rne(e,r){return e>0&&e{e?.(o),(n===!1||!o.defaultPrevented)&&r?.(o)}}const[cnt,jne]=ja("ScrollAreaScrollbar was not found in tree"),Tne=S.forwardRef((e,r)=>{const{sizes:n,hasThumb:o,onThumbChange:a,onThumbPointerUp:i,onThumbPointerDown:l,onThumbPositionChange:s,onDragScroll:c,onWheelScroll:d,onResize:u,...p}=e,f=ki(),[g,v]=S.useState(null),w=on(r,R=>v(R)),x=S.useRef(null),k=S.useRef(""),{viewport:C}=f,_=n.content-n.viewport,$=jp(d),z=jp(s),j=J2(u,10),A=R=>{if(x.current){const T=R.clientX-x.current.left,O=R.clientY-x.current.top;c({x:T,y:O})}};return S.useEffect(()=>{const R=T=>{const O=T.target;g?.contains(O)&&$(T,_)};return document.addEventListener("wheel",R,{passive:!1}),()=>document.removeEventListener("wheel",R,{passive:!1})},[C,g,_,$]),S.useEffect(z,[n,z]),Lm(g,j),Lm(f.content,j),y.jsx(cnt,{value:{scrollbar:g,hasThumb:o,onThumbChange:jp(a),onThumbPointerUp:jp(i),onThumbPositionChange:z,onThumbPointerDown:jp(l)},children:y.jsx("div",{...p,ref:w,"data-mantine-scrollbar":!0,style:{position:"absolute",...p.style},onPointerDown:Pp(e.onPointerDown,R=>{R.preventDefault(),R.button===0&&(R.target.setPointerCapture(R.pointerId),x.current=g.getBoundingClientRect(),k.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",A(R))}),onPointerMove:Pp(e.onPointerMove,A),onPointerUp:Pp(e.onPointerUp,R=>{const T=R.target;T.hasPointerCapture(R.pointerId)&&(R.preventDefault(),T.releasePointerCapture(R.pointerId))}),onLostPointerCapture:()=>{document.body.style.webkitUserSelect=k.current,x.current=null}})})}),Ane=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=ki(),[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(Tne,{"data-orientation":"horizontal",...i,ref:u,sizes:n,style:{...a,"--sa-thumb-width":`${wk(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),Rne(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:Bd(s.paddingLeft),paddingEnd:Bd(s.paddingRight)}})}})});Ane.displayName="@mantine/core/ScrollAreaScrollbarX";const Dne=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=ki(),[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(Tne,{...i,"data-orientation":"vertical",ref:u,sizes:n,style:{"--sa-thumb-height":`${wk(n)}px`,...a},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),Rne(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:Bd(s.paddingTop),paddingEnd:Bd(s.paddingBottom)}})}})});Dne.displayName="@mantine/core/ScrollAreaScrollbarY";const kk=S.forwardRef((e,r)=>{const{orientation:n="vertical",...o}=e,{dir:a}=uc(),i=ki(),l=S.useRef(null),s=S.useRef(0),[c,d]=S.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=Cne(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)=>snt(g,s.current,c,v);return n==="horizontal"?y.jsx(Ane,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollLeft,v=zne(g,c,a);l.current.style.transform=`translate3d(${v}px, 0, 0)`}},onWheelScroll:g=>{i.viewport&&(i.viewport.scrollLeft=g)},onDragScroll:g=>{i.viewport&&(i.viewport.scrollLeft=f(g,a))}}):n==="vertical"?y.jsx(Dne,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollTop,v=zne(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=>{i.viewport&&(i.viewport.scrollTop=g)},onDragScroll:g=>{i.viewport&&(i.viewport.scrollTop=f(g))}}):null});kk.displayName="@mantine/core/ScrollAreaScrollbarVisible";const DR=S.forwardRef((e,r)=>{const n=ki(),{forceMount:o,...a}=e,[i,l]=S.useState(!1),s=e.orientation==="horizontal",c=J2(()=>{if(n.viewport){const d=n.viewport.offsetWidth{const{forceMount:n,...o}=e,a=ki(),[i,l]=S.useState(!1);return S.useEffect(()=>{const{scrollArea:s}=a;let c=0;if(s){const d=()=>{window.clearTimeout(c),l(!0)},u=()=>{c=window.setTimeout(()=>l(!1),a.scrollHideDelay)};return s.addEventListener("pointerenter",d),s.addEventListener("pointerleave",u),()=>{window.clearTimeout(c),s.removeEventListener("pointerenter",d),s.removeEventListener("pointerleave",u)}}},[a.scrollArea,a.scrollHideDelay]),n||i?y.jsx(DR,{"data-state":i?"visible":"hidden",...o,ref:r}):null});Mne.displayName="@mantine/core/ScrollAreaScrollbarHover";const dnt=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=ki(),i=e.orientation==="horizontal",[l,s]=S.useState("hidden"),c=J2(()=>s("idle"),100);return S.useEffect(()=>{if(l==="idle"){const d=window.setTimeout(()=>s("hidden"),a.scrollHideDelay);return()=>window.clearTimeout(d)}},[l,a.scrollHideDelay]),S.useEffect(()=>{const{viewport:d}=a,u=i?"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)}},[a.viewport,i,c]),n||l!=="hidden"?y.jsx(kk,{"data-state":l==="hidden"?"hidden":"visible",...o,ref:r,onPointerEnter:Pp(e.onPointerEnter,()=>s("interacting")),onPointerLeave:Pp(e.onPointerLeave,()=>s("idle"))}):null}),MR=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=ki(),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:l}=a,s=e.orientation==="horizontal";return S.useEffect(()=>(s?i(!0):l(!0),()=>{s?i(!1):l(!1)}),[s,i,l]),a.type==="hover"?y.jsx(Mne,{...o,ref:r,forceMount:n}):a.type==="scroll"?y.jsx(dnt,{...o,ref:r,forceMount:n}):a.type==="auto"?y.jsx(DR,{...o,ref:r,forceMount:n}):a.type==="always"?y.jsx(kk,{...o,ref:r}):null});MR.displayName="@mantine/core/ScrollAreaScrollbar";function unt(e,r=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},o=0;return(function a(){const i={left:e.scrollLeft,top:e.scrollTop},l=n.left!==i.left,s=n.top!==i.top;(l||s)&&r(),n=i,o=window.requestAnimationFrame(a)})(),()=>window.cancelAnimationFrame(o)}const Nne=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=ki(),i=jne(),{onThumbPositionChange:l}=i,s=on(r,u=>i.onThumbChange(u)),c=S.useRef(void 0),d=J2(()=>{c.current&&(c.current(),c.current=void 0)},100);return S.useEffect(()=>{const{viewport:u}=a;if(u){const p=()=>{if(d(),!c.current){const f=unt(u,l);c.current=f,l()}};return l(),u.addEventListener("scroll",p),()=>u.removeEventListener("scroll",p)}},[a.viewport,d,l]),y.jsx("div",{"data-state":i.hasThumb?"visible":"hidden",...o,ref:s,style:{width:"var(--sa-thumb-width)",height:"var(--sa-thumb-height)",...n},onPointerDownCapture:Pp(e.onPointerDownCapture,u=>{const p=u.target.getBoundingClientRect(),f=u.clientX-p.left,g=u.clientY-p.top;i.onThumbPointerDown({x:f,y:g})}),onPointerUp:Pp(e.onPointerUp,i.onThumbPointerUp)})});Nne.displayName="@mantine/core/ScrollAreaThumb";const NR=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=jne();return n||a.hasThumb?y.jsx(Nne,{ref:r,...o}):null});NR.displayName="@mantine/core/ScrollAreaThumb";const Pne=S.forwardRef(({children:e,style:r,...n},o)=>{const a=ki(),i=on(o,a.onViewportChange);return y.jsx(Te,{...n,ref:i,style:{overflowX:a.scrollbarXEnabled?"scroll":"hidden",overflowY:a.scrollbarYEnabled?"scroll":"hidden",...r},children:y.jsx("div",{...a.getStyles("content"),ref:a.onContentChange,children:e})})});Pne.displayName="@mantine/core/ScrollAreaViewport";var PR={root:"m_d57069b5",content:"m_b1336c6",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const Bne={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},pnt=(e,{scrollbarSize:r,overscrollBehavior:n})=>({root:{"--scrollarea-scrollbar-size":Pe(r),"--scrollarea-over-scroll-behavior":n}}),Bp=We((e,r)=>{const n=Re("ScrollArea",Bne,e),{classNames:o,className:a,style:i,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:z,...j}=n,[A,R]=S.useState(!1),[T,O]=S.useState(!1),[P,L]=S.useState(!1),H=dt({name:"ScrollArea",props:n,classes:PR,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:d,varsResolver:pnt}),M=S.useRef(null),V=mne([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;O(q>G),L(U>Y)});return F.observe(B),()=>F.disconnect()},[M,x]),y.jsxs(Ene,{getStyles:H,type:u==="never"?"always":u,scrollHideDelay:p,ref:r,scrollbars:k,...H("root"),...j,children:[y.jsx(Pne,{...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"&&!T?"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(MR,{...H("scrollbar"),orientation:"horizontal","data-hidden":u==="never"||x==="present"&&!P?!0:void 0,forceMount:!0,onMouseEnter:()=>R(!0),onMouseLeave:()=>R(!1),children:y.jsx(NR,{...H("thumb")})}),(k==="xy"||k==="y")&&y.jsx(MR,{...H("scrollbar"),orientation:"vertical","data-hidden":u==="never"||x==="present"&&!T?!0:void 0,forceMount:!0,onMouseEnter:()=>R(!0),onMouseLeave:()=>R(!1),children:y.jsx(NR,{...H("thumb")})}),y.jsx(ant,{...H("corner"),"data-hovered":A||void 0,"data-hidden":u==="never"||void 0})]})});Bp.displayName="@mantine/core/ScrollArea";const BR=We((e,r)=>{const{children:n,classNames:o,styles:a,scrollbarSize:i,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:$,...z}=Re("ScrollAreaAutosize",Bne,e),j=S.useRef(null),A=mne([u,j]),[R,T]=S.useState(!1),O=S.useRef(!1);return S.useEffect(()=>{if(!$)return;const P=j.current;if(!P)return;const L=()=>{const M=P.scrollHeight>P.clientHeight;M!==R&&(O.current?$?.(M):(O.current=!0,M&&$?.(!0)),T(M))};L();const H=new ResizeObserver(L);return H.observe(P),()=>H.disconnect()},[$,R]),y.jsx(Te,{...z,ref:r,style:[{display:"flex",overflow:"hidden"},x],children:y.jsx(Te,{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(Bp,{classNames:o,styles:a,scrollHideDelay:l,scrollbarSize:i,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})})})});Bp.classes=PR,BR.displayName="@mantine/core/ScrollAreaAutosize",BR.classes=PR,Bp.Autosize=BR;var One={root:"m_87cf2631"};const hnt={__staticSelector:"UnstyledButton"},ps=Un((e,r)=>{const n=Re("UnstyledButton",hnt,e),{className:o,component:a="button",__staticSelector:i,unstyled:l,classNames:s,styles:c,style:d,attributes:u,...p}=n,f=dt({name:i,props:n,classes:One,className:o,style:d,classNames:s,styles:c,unstyled:l,attributes:u});return y.jsx(Te,{...f("root",{focusable:!0}),component:a,ref:r,type:a==="button"?"button":void 0,...p})});ps.classes=One,ps.displayName="@mantine/core/UnstyledButton";var Ine={root:"m_515a97f8"};const OR=We((e,r)=>{const n=Re("VisuallyHidden",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,attributes:d,...u}=n,p=dt({name:"VisuallyHidden",classes:Ine,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:d});return y.jsx(Te,{component:"span",ref:r,...p("root"),...u})});OR.classes=Ine,OR.displayName="@mantine/core/VisuallyHidden";var Lne={root:"m_1b7284a3"};const fnt=(e,{radius:r,shadow:n})=>({root:{"--paper-radius":r===void 0?void 0:hn(r),"--paper-shadow":Uz(n)}}),_k=Un((e,r)=>{const n=Re("Paper",null,e),{classNames:o,className:a,style:i,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:Lne,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:d,varsResolver:fnt});return y.jsx(Te,{ref:r,mod:[{"data-with-border":c},g],...x("root"),variant:f,...w})});_k.classes=Lne,_k.displayName="@mantine/core/Paper";function Fne(e,r,n,o){return e==="center"||o==="center"?{top:r}:e==="end"?{bottom:n}:e==="start"?{top:n}:{}}function Vne(e,r,n,o,a){return e==="center"||o==="center"?{left:r}:e==="end"?{[a==="ltr"?"right":"left"]:n}:e==="start"?{[a==="ltr"?"left":"right"]:n}:{}}const mnt={bottom:"borderTopLeftRadius",left:"borderTopRightRadius",right:"borderBottomLeftRadius",top:"borderBottomRightRadius"};function gnt({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,arrowX:i,arrowY:l,dir:s}){const[c,d="center"]=e.split("-"),u={width:r,height:r,transform:"rotate(45deg)",position:"absolute",[mnt[c]]:o},p=-r/2;return c==="left"?{...u,...Fne(d,l,n,a),right:p,borderLeftColor:"transparent",borderBottomColor:"transparent",clipPath:"polygon(100% 0, 0 0, 100% 100%)"}:c==="right"?{...u,...Fne(d,l,n,a),left:p,borderRightColor:"transparent",borderTopColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 100%)"}:c==="top"?{...u,...Vne(d,i,n,a,s),bottom:p,borderTopColor:"transparent",borderLeftColor:"transparent",clipPath:"polygon(0 100%, 100% 100%, 100% 0)"}:c==="bottom"?{...u,...Vne(d,i,n,a,s),top:p,borderBottomColor:"transparent",borderRightColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 0)"}:{}}const Sk=S.forwardRef(({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,visible:i,arrowX:l,arrowY:s,style:c,...d},u)=>{const{dir:p}=uc();return i?y.jsx("div",{...d,ref:u,style:{...c,...gnt({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,dir:p,arrowX:l,arrowY:s})}}):null});Sk.displayName="@mantine/core/FloatingArrow";function qne(e,r){if(e==="rtl"&&(r.includes("right")||r.includes("left"))){const[n,o]=r.split("-"),a=n==="right"?"left":"right";return o===void 0?a:`${a}-${o}`}return r}var Hne={root:"m_9814e45f"};const ynt={zIndex:gl("modal")},vnt=(e,{gradient:r,color:n,backgroundOpacity:o,blur:a,radius:i,zIndex:l})=>({root:{"--overlay-bg":r||(n!==void 0||o!==void 0)&&jre(n||"#000",o??.6)||void 0,"--overlay-filter":a?`blur(${Pe(a)})`:void 0,"--overlay-radius":i===void 0?void 0:hn(i),"--overlay-z-index":l?.toString()}}),Fm=Un((e,r)=>{const n=Re("Overlay",ynt,e),{classNames:o,className:a,style:i,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,z=dt({name:"Overlay",props:n,classes:Hne,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:vnt});return y.jsx(Te,{ref:r,...z("root"),mod:[{center:u,fixed:d},C],...$,children:p})});Fm.classes=Hne,Fm.displayName="@mantine/core/Overlay";function IR(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 bnt({target:e,reuseTargetNode:r,...n}){if(e)return typeof e=="string"?document.querySelector(e)||IR(n):e;if(r){const o=document.querySelector("[data-mantine-shared-portal-node]");if(o)return o;const a=IR(n);return a.setAttribute("data-mantine-shared-portal-node","true"),document.body.appendChild(a),a}return IR(n)}const xnt={reuseTargetNode:!0},Une=We((e,r)=>{const{children:n,target:o,reuseTargetNode:a,...i}=Re("Portal",xnt,e),[l,s]=S.useState(!1),c=S.useRef(null);return Yz(()=>(s(!0),c.current=bnt({target:o,reuseTargetNode:a,...i}),Zz(r,c.current),!o&&!a&&c.current&&document.body.appendChild(c.current),()=>{!o&&!a&&c.current&&document.body.removeChild(c.current)}),[o]),!l||!c.current?null:Ii.createPortal(y.jsx(y.Fragment,{children:n}),c.current)});Une.displayName="@mantine/core/Portal";const Op=We(({withinPortal:e=!0,children:r,...n},o)=>ok()==="test"||!e?y.jsx(y.Fragment,{children:r}):y.jsx(Une,{ref:o,...n,children:r}));Op.displayName="@mantine/core/OptionalPortal";const z0=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${e==="bottom"?10:-10}px)`},transitionProperty:"transform, opacity"}),Ek={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:{...z0("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...z0("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...z0("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...z0("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...z0("top"),common:{transformOrigin:"top right"}}},Wne={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function wnt({transition:e,state:r,duration:n,timingFunction:o}){const a={WebkitBackfaceVisibility:"hidden",transitionDuration:`${n}ms`,transitionTimingFunction:o};return typeof e=="string"?e in Ek?{transitionProperty:Ek[e].transitionProperty,...a,...Ek[e].common,...Ek[e][Wne[r]]}:{}:{transitionProperty:e.transitionProperty,...a,...e.common,...e[Wne[r]]}}function knt({duration:e,exitDuration:r,timingFunction:n,mounted:o,onEnter:a,onExit:i,onEntered:l,onExited:s,enterDelay:c,exitDelay:d}){const u=uo(),p=Kz(),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 z=A=>{$();const R=A?a:i,T=A?l:s,O=f?0:A?e:r;v(O),O===0?(typeof R=="function"&&R(),typeof T=="function"&&T(),x(A?"entered":"exited")):_.current=requestAnimationFrame(()=>{QM.flushSync(()=>{x(A?"pre-entering":"pre-exiting")}),_.current=requestAnimationFrame(()=>{typeof R=="function"&&R(),x(A?"entering":"exiting"),k.current=window.setTimeout(()=>{typeof T=="function"&&T(),x(A?"entered":"exited")},O)})})},j=A=>{if($(),typeof(A?c:d)!="number"){z(A);return}C.current=window.setTimeout(()=>{z(A)},A?c:d)};return Tp(()=>{j(o)},[o]),S.useEffect(()=>()=>{$()},[]),{transitionDuration:g,transitionStatus:w,transitionTimingFunction:n||"ease"}}function kl({keepMounted:e,transition:r="fade",duration:n=250,exitDuration:o=n,mounted:a,children:i,timingFunction:l="ease",onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f}){const g=ok(),{transitionDuration:v,transitionStatus:w,transitionTimingFunction:x}=knt({mounted:a,exitDuration:o,duration:n,timingFunction:l,onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f});return v===0||g==="test"?a?y.jsx(y.Fragment,{children:i({})}):e?i({display:"none"}):null:w==="exited"?e?i({display:"none"}):null:y.jsx(y.Fragment,{children:i(wnt({transition:r,duration:v,state:w,timingFunction:x}))})}kl.displayName="@mantine/core/Transition";const[_nt,Gne]=ja("Popover component was not found in the tree");function Ck({children:e,active:r=!0,refProp:n="ref",innerRef:o}){const a=GJe(r),i=on(a,o);return ml(e)?S.cloneElement(e,{[n]:i}):e}function Yne(e){return y.jsx(OR,{tabIndex:-1,"data-autofocus":!0,...e})}Ck.displayName="@mantine/core/FocusTrap",Yne.displayName="@mantine/core/FocusTrapInitialFocus",Ck.InitialFocus=Yne;var Xne={dropdown:"m_38a85659",arrow:"m_a31dc6c1",overlay:"m_3d7bc908"};const LR=We((e,r)=>{const n=Re("PopoverDropdown",null,e),{className:o,style:a,vars:i,children:l,onKeyDownCapture:s,variant:c,classNames:d,styles:u,...p}=n,f=Gne(),g=wre({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(Op,{...f.portalProps,withinPortal:f.withinPortal,children:y.jsx(kl,{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(Ck,{active:f.trapFocus&&f.opened,innerRef:w,children:y.jsxs(Te,{...v,...p,variant:c,onKeyDownCapture:MJe(()=>{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,a]}),children:[l,y.jsx(Sk,{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})})]})})})})});LR.classes=Xne,LR.displayName="@mantine/core/PopoverDropdown";const Snt={refProp:"ref",popupType:"dialog"},Zne=We((e,r)=>{const{children:n,refProp:o,popupType:a,...i}=Re("PopoverTarget",Snt,e);if(!ml(n))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 l=i,s=Gne(),c=on(s.reference,ek(n),r),d=s.withRoles?{"aria-haspopup":a,"aria-expanded":s.opened,"aria-controls":s.getDropdownId(),id:s.getTargetId()}:{};return S.cloneElement(n,{...l,...d,...s.targetProps,className:no(s.targetProps.className,l.className,n.props.className),[o]:c,...s.controlled?null:{onClick:()=>{s.onToggle(),n.props.onClick?.()}}})});Zne.displayName="@mantine/core/PopoverTarget";function Ent(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 Cnt(e,r,n){const o=Ent(e.middlewares),a=[pne(e.offset),Brt()];return e.dropdownVisible&&n!=="test"&&e.preventPositionChangeWhenVisible&&(o.flip=!1),o.shift&&a.push(SR(typeof o.shift=="boolean"?{limiter:hne(),padding:5}:{limiter:hne(),padding:5,...o.shift})),o.flip&&a.push(typeof o.flip=="boolean"?bk():bk(o.flip)),o.inline&&a.push(typeof o.inline=="boolean"?$0():$0(o.inline)),a.push(fne({element:e.arrowRef,padding:e.arrowOffset})),(o.size||e.width==="target")&&a.push(Prt({...typeof o.size=="boolean"?{}:o.size,apply({rects:i,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:i,availableWidth:l,availableHeight:s,...c}):Object.assign(d,{maxWidth:`${l}px`,maxHeight:`${s}px`})),e.width==="target"&&Object.assign(d,{width:`${i.reference.width}px`})}})),a}function $nt(e){const r=ok(),[n,o]=Md({value:e.opened,defaultValue:e.defaultOpened,finalValue:!1,onChange:e.onChange}),a=S.useRef(n),i=()=>{n&&!e.disabled&&o(!1)},l=()=>{e.disabled||o(!n)},s=jR({strategy:e.strategy,placement:e.preventPositionChangeWhenVisible?e.positionRef.current:e.position,middleware:Cnt(e,()=>s,r),whileElementsMounted:e.keepMounted?void 0:kR});return S.useEffect(()=>{if(!(!s.refs.reference.current||!s.refs.floating.current)&&n)return kR(s.refs.reference.current,s.refs.floating.current,s.update)},[n,s.update]),Tp(()=>{e.onPositionChange?.(s.placement),e.positionRef.current=s.placement},[s.placement,e.preventPositionChangeWhenVisible]),Tp(()=>{n!==a.current&&(n?e.onOpen?.():e.onClose?.()),a.current=n},[n,e.onClose,e.onOpen]),Tp(()=>{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:i,onToggle:l}}const znt={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:gl("popover"),__staticSelector:"Popover",width:"max-content"},Rnt=(e,{radius:r,shadow:n})=>({dropdown:{"--popover-radius":r===void 0?void 0:hn(r),"--popover-shadow":Uz(n)}});function po(e){const r=Re("Popover",znt,e),{children:n,position:o,offset:a,onPositionChange:i,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:z,withinPortal:j,portalProps:A,closeOnEscape:R,clickOutsideEvents:T,trapFocus:O,onClose:P,onDismiss:L,onOpen:H,onChange:M,zIndex:V,radius:B,shadow:F,id:q,defaultOpened:G,__staticSelector:U,withRoles:Y,disabled:Z,returnFocus:I,variant:W,keepMounted:K,vars:Q,floatingStrategy:ae,withOverlay:te,overlayProps:re,hideDetached:ue,attributes:_e,preventPositionChangeWhenVisible:ce,...pe}=r,xe=dt({name:U,props:r,classes:Xne,classNames:_,styles:$,unstyled:C,attributes:_e,rootSelector:"dropdown",vars:Q,varsResolver:Rnt}),{resolvedStyles:De}=eR({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:Ot}=uc(),Et=ok(),be=vl(q),ke=$nt({middlewares:f,width:p,position:qne(Ot,o),offset:typeof a=="number"?a+(g?v/2:0):a,arrowRef:Le,arrowOffset:w,onPositionChange:i,positionDependencies:l,opened:s,defaultOpened:G,onChange:M,onOpen:H,onClose:P,onDismiss:L,strategy:ae,dropdownVisible:Be,setDropdownVisible:Je,positionRef:st,disabled:Z,preventPositionChangeWhenVisible:ce,keepMounted:K});xre(()=>{z&&(ke.onClose(),L?.())},T,[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]),jr=S.useCallback(()=>{c?.onEntered?.(),u?.()},[c?.onEntered,u]);return y.jsxs(_nt,{value:{returnFocus:I,disabled:Z,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:jr},width:p,withArrow:g,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,placement:ke.floating.placement,trapFocus:O,withinPortal:j,portalProps:A,zIndex:V,radius:B,shadow:F,closeOnEscape:R,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:K,getStyles:xe,resolvedStyles:De,floatingStrategy:ae,referenceHidden:ue&&Et!=="test"?ke.floating.middlewareData.hide?.referenceHidden:!1},children:[n,te&&y.jsx(kl,{transition:"fade",mounted:ke.opened,duration:c?.duration||250,exitDuration:c?.exitDuration||250,children:er=>y.jsx(Op,{withinPortal:j,children:y.jsx(Fm,{...re,...xe("overlay",{className:re?.className,style:[er,re?.style]})})})})]})}po.Target=Zne,po.Dropdown=LR,po.displayName="@mantine/core/Popover",po.extend=e=>e;var _l={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 Kne=S.forwardRef(({className:e,...r},n)=>y.jsxs(Te,{component:"span",className:no(_l.barsLoader,e),...r,ref:n,children:[y.jsx("span",{className:_l.bar}),y.jsx("span",{className:_l.bar}),y.jsx("span",{className:_l.bar})]}));Kne.displayName="@mantine/core/Bars";const Qne=S.forwardRef(({className:e,...r},n)=>y.jsxs(Te,{component:"span",className:no(_l.dotsLoader,e),...r,ref:n,children:[y.jsx("span",{className:_l.dot}),y.jsx("span",{className:_l.dot}),y.jsx("span",{className:_l.dot})]}));Qne.displayName="@mantine/core/Dots";const Jne=S.forwardRef(({className:e,...r},n)=>y.jsx(Te,{component:"span",className:no(_l.ovalLoader,e),...r,ref:n}));Jne.displayName="@mantine/core/Oval";const eoe={bars:Kne,oval:Jne,dots:Qne},jnt={loaders:eoe,type:"oval"},Tnt=(e,{size:r,color:n})=>({root:{"--loader-size":Qt(r,"loader-size"),"--loader-color":n?qo(n,e):void 0}}),Ip=We((e,r)=>{const n=Re("Loader",jnt,e),{size:o,color:a,type:i,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:_l,className:s,style:c,classNames:d,styles:u,unstyled:p,attributes:w,vars:l,varsResolver:Tnt});return v?y.jsx(Te,{...k("root"),ref:r,...x,children:v}):y.jsx(Te,{...k("root"),ref:r,component:f[i],variant:g,size:o,...x})});Ip.defaultLoaders=eoe,Ip.classes=_l,Ip.displayName="@mantine/core/Loader";var Vm={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21",groupSection:"m_437b6484"};const toe={orientation:"horizontal"},Ant=(e,{borderWidth:r})=>({group:{"--ai-border-width":Pe(r)}}),FR=We((e,r)=>{const n=Re("ActionIconGroup",toe,e),{className:o,style:a,classNames:i,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=Re("ActionIconGroup",toe,e),w=dt({name:"ActionIconGroup",props:n,classes:Vm,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:Ant,rootSelector:"group"});return y.jsx(Te,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});FR.classes=Vm,FR.displayName="@mantine/core/ActionIconGroup";const Dnt=(e,{radius:r,color:n,gradient:o,variant:a,autoContrast:i,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:i});return{groupSection:{"--section-height":Qt(l,"section-height"),"--section-padding-x":Qt(l,"section-padding-x"),"--section-fz":Ro(l),"--section-radius":r===void 0?void 0:hn(r),"--section-bg":n||a?s.background:void 0,"--section-color":s.color,"--section-bd":n||a?s.border:void 0}}},VR=We((e,r)=>{const n=Re("ActionIconGroupSection",null,e),{className:o,style:a,classNames:i,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:Vm,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:Dnt,rootSelector:"groupSection"});return y.jsx(Te,{...w("groupSection"),ref:r,variant:d,...v})});VR.classes=Vm,VR.displayName="@mantine/core/ActionIconGroupSection";const Mnt=(e,{size:r,radius:n,variant:o,gradient:a,color:i,autoContrast:l})=>{const s=e.variantColorResolver({color:i||e.primaryColor,theme:e,gradient:a,variant:o||"filled",autoContrast:l});return{root:{"--ai-size":Qt(r,"ai-size"),"--ai-radius":n===void 0?void 0:hn(n),"--ai-bg":i||o?s.background:void 0,"--ai-hover":i||o?s.hover:void 0,"--ai-hover-color":i||o?s.hoverColor:void 0,"--ai-color":s.color,"--ai-bd":i||o?s.border:void 0}}},$k=Un((e,r)=>{const n=Re("ActionIcon",null,e),{className:o,unstyled:a,variant:i,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:z,attributes:j,...A}=n,R=dt({name:["ActionIcon",v],props:n,className:o,style:c,classes:Vm,classNames:l,styles:s,unstyled:a,attributes:j,vars:x,varsResolver:Mnt});return y.jsxs(ps,{...R("root",{active:!C&&!d&&!_}),...A,unstyled:a,variant:i,size:p,disabled:C||d,ref:r,mod:[{loading:d,disabled:C||_},z],children:[typeof d=="boolean"&&y.jsx(kl,{mounted:d,transition:"slide-down",duration:150,children:T=>y.jsx(Te,{component:"span",...R("loader",{style:T}),"aria-hidden":!0,children:y.jsx(Ip,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...u})})}),y.jsx(Te,{component:"span",mod:{loading:d},...R("icon"),children:k})]})});$k.classes=Vm,$k.displayName="@mantine/core/ActionIcon",$k.Group=FR,$k.GroupSection=VR;const roe=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"})}));roe.displayName="@mantine/core/CloseIcon";var noe={root:"m_86a44da5","root--subtle":"m_220c80f2"};const Nnt={variant:"subtle"},Pnt=(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)}}),Lp=Un((e,r)=>{const n=Re("CloseButton",Nnt,e),{iconSize:o,children:a,vars:i,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:noe,classNames:c,styles:u,unstyled:p,attributes:k,vars:i,varsResolver:Pnt});return y.jsxs(ps,{ref:r,..._,unstyled:p,variant:v,disabled:g,mod:[{disabled:g||f},x],...$("root",{variant:v,active:!g&&!f}),children:[w||y.jsx(roe,{}),a]})});Lp.classes=noe,Lp.displayName="@mantine/core/CloseButton";function Bnt(e){return S.Children.toArray(e).filter(Boolean)}var ooe={root:"m_4081bf90"};const Ont={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},Int=(e,{grow:r,preventGrowOverflow:n,gap:o,align:a,justify:i,wrap:l},{childWidth:s})=>({root:{"--group-child-width":r&&n?s:void 0,"--group-gap":ro(o),"--group-align":a,"--group-justify":i,"--group-wrap":l}}),aoe=We((e,r)=>{const n=Re("Group",Ont,e),{classNames:o,className:a,style:i,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,z=Bnt(c),j=z.length,A=ro(d??"md"),R={childWidth:`calc(${100/j}% - (${A} - ${A} / ${j}))`},T=dt({name:"Group",props:n,stylesCtx:R,className:a,style:i,classes:ooe,classNames:o,styles:l,unstyled:s,attributes:_,vars:w,varsResolver:Int});return y.jsx(Te,{...T("root"),ref:r,variant:x,mod:[{grow:g},C],size:k,...$,children:z})});aoe.classes=ooe,aoe.displayName="@mantine/core/Group";const[Lnt,mc]=ja("ModalBase component was not found in tree");function Fnt({opened:e,transitionDuration:r}){const[n,o]=S.useState(e),a=S.useRef(-1),i=Kz()?0:r;return S.useEffect(()=>(e?(o(!0),window.clearTimeout(a.current)):i===0?o(!1):a.current=window.setTimeout(()=>o(!1),i),()=>window.clearTimeout(a.current)),[e,i]),n}function Vnt({id:e,transitionProps:r,opened:n,trapFocus:o,closeOnEscape:a,onClose:i,returnFocus:l}){const s=vl(e),[c,d]=S.useState(!1),[u,p]=S.useState(!1),f=typeof r?.duration=="number"?r?.duration:200,g=Fnt({opened:n,transitionDuration:f});return ZJe("keydown",v=>{v.key==="Escape"&&a&&!v.isComposing&&n&&v.target?.getAttribute("data-mantine-stop-propagation")!=="true"&&i()},{capture:!0}),wre({opened:n,shouldReturnFocus:o&&l}),{_id:s,titleMounted:c,bodyMounted:u,shouldLockScroll:g,setTitleMounted:d,setBodyMounted:p}}const qR=S.forwardRef(({keepMounted:e,opened:r,onClose:n,id:o,transitionProps:a,onExitTransitionEnd:i,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:$,...z},j)=>{const{_id:A,titleMounted:R,bodyMounted:T,shouldLockScroll:O,setTitleMounted:P,setBodyMounted:L}=Vnt({id:o,transitionProps:a,opened:r,trapFocus:s,closeOnEscape:c,onClose:n,returnFocus:d}),{key:H,...M}=$||{};return y.jsx(Op,{...f,withinPortal:p,children:y.jsx(Lnt,{value:{opened:r,onClose:n,closeOnClickOutside:u,onExitTransitionEnd:i,onEnterTransitionEnd:l,transitionProps:{...a,keepMounted:e},getTitleId:()=>`${A}-title`,getBodyId:()=>`${A}-body`,titleMounted:R,bodyMounted:T,setTitleMounted:P,setBodyMounted:L,trapFocus:s,closeOnEscape:c,zIndex:w,unstyled:_},children:y.jsx(mre,{enabled:O&&g,...M,children:y.jsx(Te,{ref:j,...z,__vars:{...C,"--mb-z-index":(w||gl("modal")).toString(),"--mb-shadow":Uz(x),"--mb-padding":ro(k)},children:v})},H)})})});qR.displayName="@mantine/core/ModalBase";function qnt(){const e=mc();return S.useEffect(()=>(e.setBodyMounted(!0),()=>e.setBodyMounted(!1)),[]),e.getBodyId()}var qm={title:"m_615af6c9",header:"m_b5489c3c",inner:"m_60c222c7",content:"m_fd1ab0aa",close:"m_606cb269",body:"m_5df29311"};const HR=S.forwardRef(({className:e,...r},n)=>{const o=qnt(),a=mc();return y.jsx(Te,{ref:n,...r,id:o,className:no({[qm.body]:!a.unstyled},e)})});HR.displayName="@mantine/core/ModalBaseBody";const ioe=S.forwardRef(({className:e,onClick:r,...n},o)=>{const a=mc();return y.jsx(Lp,{ref:o,...n,onClick:i=>{a.onClose(),r?.(i)},className:no({[qm.close]:!a.unstyled},e),unstyled:a.unstyled})});ioe.displayName="@mantine/core/ModalBaseCloseButton";const UR=S.forwardRef(({transitionProps:e,className:r,innerProps:n,onKeyDown:o,style:a,...i},l)=>{const s=mc();return y.jsx(kl,{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({[qm.inner]:!s.unstyled},n.className),children:y.jsx(Ck,{active:s.opened&&s.trapFocus,innerRef:l,children:y.jsx(_k,{...i,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:[a,c],className:no({[qm.content]:!s.unstyled},r),unstyled:s.unstyled,children:i.children})})})})});UR.displayName="@mantine/core/ModalBaseContent";const loe=S.forwardRef(({className:e,...r},n)=>{const o=mc();return y.jsx(Te,{component:"header",ref:n,className:no({[qm.header]:!o.unstyled},e),...r})});loe.displayName="@mantine/core/ModalBaseHeader";const Hnt={duration:200,timingFunction:"ease",transition:"fade"};function Unt(e){const r=mc();return{...Hnt,...r.transitionProps,...e}}const WR=S.forwardRef(({onClick:e,transitionProps:r,style:n,visible:o,...a},i)=>{const l=mc(),s=Unt(r);return y.jsx(kl,{mounted:o!==void 0?o:l.opened,...s,transition:"fade",children:c=>y.jsx(Fm,{ref:i,fixed:!0,style:[n,c],zIndex:l.zIndex,unstyled:l.unstyled,onClick:d=>{e?.(d),l.closeOnClickOutside&&l.onClose()},...a})})});WR.displayName="@mantine/core/ModalBaseOverlay";function Wnt(){const e=mc();return S.useEffect(()=>(e.setTitleMounted(!0),()=>e.setTitleMounted(!1)),[]),e.getTitleId()}const soe=S.forwardRef(({className:e,...r},n)=>{const o=Wnt(),a=mc();return y.jsx(Te,{component:"h2",ref:n,className:no({[qm.title]:!a.unstyled},e),...r,id:o})});soe.displayName="@mantine/core/ModalBaseTitle";function coe({children:e}){return y.jsx(y.Fragment,{children:e})}const[Gnt,Ynt]=jm({size:"sm"}),doe=We((e,r)=>{const n=Re("InputClearButton",null,e),{size:o,variant:a,vars:i,classNames:l,styles:s,...c}=n,d=Ynt(),{resolvedClassNames:u,resolvedStyles:p}=eR({classNames:l,styles:s,props:n});return y.jsx(Lp,{variant:a||"transparent",ref:r,size:o||d?.size||"sm",classNames:u,styles:p,__staticSelector:"InputClearButton",style:{pointerEvents:"all",background:"var(--input-bg)",...c.style},...c})});doe.displayName="@mantine/core/InputClearButton";const Xnt={xs:7,sm:8,md:10,lg:12,xl:15};function Znt({__clearable:e,__clearSection:r,rightSection:n,__defaultRightSection:o,size:a="sm"}){const i=e&&r;return i&&(n||o)?y.jsxs("div",{"data-combined-clear-section":!0,style:{display:"flex",gap:2,alignItems:"center",paddingInlineEnd:Xnt[a]},children:[i,n||o]}):n===null?null:n||i||o}const[Knt,zk]=jm({offsetBottom:!1,offsetTop:!1,describedBy:void 0,getStyles:null,inputId:void 0,labelId:void 0});var _i={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 Qnt=(e,{size:r})=>({description:{"--input-description-size":r===void 0?void 0:`calc(${Ro(r)} - ${Pe(2)})`}}),Rk=We((e,r)=>{const n=Re("InputDescription",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,size:d,__staticSelector:u,__inheritStyles:p=!0,attributes:f,variant:g,...v}=Re("InputDescription",null,n),w=zk(),x=dt({name:["InputWrapper",u],props:n,classes:_i,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,rootSelector:"description",vars:c,varsResolver:Qnt}),k=p&&w?.getStyles||x;return y.jsx(Te,{component:"p",ref:r,variant:g,size:d,...k("description",w?.getStyles?{className:a,style:i}:void 0),...v})});Rk.classes=_i,Rk.displayName="@mantine/core/InputDescription";const Jnt=(e,{size:r})=>({error:{"--input-error-size":r===void 0?void 0:`calc(${Ro(r)} - ${Pe(2)})`}}),jk=We((e,r)=>{const n=Re("InputError",null,e),{classNames:o,className:a,style:i,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:_i,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,rootSelector:"error",vars:c,varsResolver:Jnt}),x=zk(),k=f&&x?.getStyles||w;return y.jsx(Te,{component:"p",ref:r,variant:g,size:d,...k("error",x?.getStyles?{className:a,style:i}:void 0),...v})});jk.classes=_i,jk.displayName="@mantine/core/InputError";const uoe={labelElement:"label"},eot=(e,{size:r})=>({label:{"--input-label-size":Ro(r),"--input-asterisk-color":void 0}}),Tk=We((e,r)=>{const n=Re("InputLabel",uoe,e),{classNames:o,className:a,style:i,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,..._}=Re("InputLabel",uoe,n),$=dt({name:["InputWrapper",w],props:n,classes:_i,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,rootSelector:"label",vars:c,varsResolver:eot}),z=zk(),j=z?.getStyles||$;return y.jsxs(Te,{...j("label",z?.getStyles?{className:a,style:i}: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",{...j("required"),"aria-hidden":!0,children:" *"})]})});Tk.classes=_i,Tk.displayName="@mantine/core/InputLabel";const GR=We((e,r)=>{const n=Re("InputPlaceholder",null,e),{classNames:o,className:a,style:i,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:_i,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,rootSelector:"placeholder"});return y.jsx(Te,{...w("placeholder"),mod:[{error:!!p},f],component:"span",variant:u,ref:r,...v})});GR.classes=_i,GR.displayName="@mantine/core/InputPlaceholder";function tot(e,{hasDescription:r,hasError:n}){const o=e.findIndex(s=>s==="input"),a=e.slice(0,o),i=e.slice(o+1),l=r&&a.includes("description")||n&&a.includes("error");return{offsetBottom:r&&i.includes("description")||n&&i.includes("error"),offsetTop:l}}const rot={labelElement:"label",inputContainer:e=>e,inputWrapperOrder:["label","description","input","error"]},not=(e,{size:r})=>({label:{"--input-label-size":Ro(r),"--input-asterisk-color":void 0},error:{"--input-error-size":r===void 0?void 0:`calc(${Ro(r)} - ${Pe(2)})`},description:{"--input-description-size":r===void 0?void 0:`calc(${Ro(r)} - ${Pe(2)})`}}),YR=We((e,r)=>{const n=Re("InputWrapper",rot,e),{classNames:o,className:a,style:i,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:z,withAsterisk:j,id:A,required:R,__stylesApiProps:T,mod:O,attributes:P,...L}=n,H=dt({name:["InputWrapper",p],props:T||n,classes:_i,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:not}),M={size:d,variant:u,__staticSelector:p},V=vl(A),B=typeof j=="boolean"?j:R,F=_?.id||`${V}-error`,q=C?.id||`${V}-description`,G=V,U=!!w&&typeof w!="boolean",Y=!!x,Z=`${U?F:""} ${Y?q:""}`,I=Z.trim().length>0?Z.trim():void 0,W=k?.id||`${V}-label`,K=v&&y.jsx(Tk,{labelElement:$,id:W,htmlFor:G,required:B,...M,...k,children:v},"label"),Q=Y&&y.jsx(Rk,{...C,...M,size:C?.size||M.size,id:C?.id||q,children:x},"description"),ae=y.jsx(S.Fragment,{children:f(z)},"input"),te=U&&S.createElement(jk,{..._,...M,size:_?.size||M.size,key:"error",id:_?.id||F},w),re=g.map(ue=>{switch(ue){case"label":return K;case"input":return ae;case"description":return Q;case"error":return te;default:return null}});return y.jsx(Knt,{value:{getStyles:H,describedBy:I,inputId:G,labelId:W,...tot(g,{hasDescription:Y,hasError:U})},children:y.jsx(Te,{ref:r,variant:u,size:d,mod:[{error:!!w},O],...H("root"),...L,children:re})})});YR.classes=_i,YR.displayName="@mantine/core/InputWrapper";const oot={variant:"default",leftSectionPointerEvents:"none",rightSectionPointerEvents:"none",withAria:!0,withErrorStyles:!0,size:"sm"},aot=(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":Ro(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}}),ia=Un((e,r)=>{const n=Re("Input",oot,e),{classNames:o,className:a,style:i,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:z,leftSectionPointerEvents:j,variant:A,vars:R,pointer:T,multiline:O,radius:P,id:L,withAria:H,withErrorStyles:M,mod:V,inputSize:B,attributes:F,__clearSection:q,__clearable:G,__defaultRightSection:U,...Y}=n,{styleProps:Z,rest:I}=nR(Y),W=zk(),K={offsetBottom:W?.offsetBottom,offsetTop:W?.offsetTop},Q=dt({name:["Input",d],props:u||n,classes:_i,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:F,stylesCtx:K,rootSelector:"wrapper",vars:R,varsResolver:aot}),ae=H?{required:c,disabled:v,"aria-invalid":!!g,"aria-describedby":W?.describedBy,id:W?.inputId||L}:{},te=Znt({__clearable:G,__clearSection:q,rightSection:C,__defaultRightSection:U,size:p});return y.jsx(Gnt,{value:{size:p||"sm"},children:y.jsxs(Te,{...Q("wrapper"),...Z,...f,mod:[{error:!!g&&M,pointer:T,disabled:v,multiline:O,"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(Te,{component:"input",...I,...ae,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})]})})});ia.classes=_i,ia.Wrapper=YR,ia.Label=Tk,ia.Error=jk,ia.Description=Rk,ia.Placeholder=GR,ia.ClearButton=doe,ia.displayName="@mantine/core/Input";function iot(e,r,n){const o=Re(e,r,n),{label:a,description:i,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:z,inputWrapperOrder:j,withAsterisk:A,variant:R,vars:T,mod:O,attributes:P,...L}=o,{styleProps:H,rest:M}=nR(L),V={label:a,description:i,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:z,inputWrapperOrder:j,withAsterisk:A,variant:R,id:C,mod:O,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:R,id:C,attributes:P}}}const lot={__staticSelector:"InputBase",withAria:!0,size:"sm"},Ak=Un((e,r)=>{const{inputProps:n,wrapperProps:o,...a}=iot("InputBase",lot,e);return y.jsx(ia.Wrapper,{...o,children:y.jsx(ia,{...n,...a,ref:r})})});Ak.classes={...ia.classes,...ia.Wrapper.classes},Ak.displayName="@mantine/core/InputBase";const sot={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 poe={root:"m_8bffd616"};const hoe=Un((e,r)=>{const n=Re("Flex",null,e),{classNames:o,className:a,style:i,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:poe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:x,vars:c}),_=uo(),$=_0(),z=Pre({styleProps:{gap:d,rowGap:u,columnGap:p,align:f,justify:g,wrap:v,direction:w},theme:_,data:sot});return y.jsxs(y.Fragment,{children:[z.hasResponsiveStyles&&y.jsx(Mm,{selector:`.${$}`,styles:z.styles,media:z.media}),y.jsx(Te,{ref:r,...C("root",{className:$,style:Dd(z.inlineStyles)}),...k})]})});hoe.classes=poe,hoe.displayName="@mantine/core/Flex";function cot(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 dot({target:e,parent:r,ref:n,displayAfterTransitionEnd:o}){const a=S.useRef(-1),[i,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=Bd(w.borderTopWidth)+Bd(x.borderTopWidth),C=Bd(w.borderLeftWidth)+Bd(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(a.current),n.current&&(n.current.style.transitionDuration="0ms"),d(),a.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=>{cot(v.target,r)&&(u(),c(!1))};return r.addEventListener("transitionend",g),()=>{r.removeEventListener("transitionend",g)}}},[r]),ret(()=>{iet()!=="test"&&l(!0)},20,{autoInvoke:!0}),oet(g=>{g.forEach(v=>{v.type==="attributes"&&v.attributeName==="dir"&&u()})},{attributes:!0,attributeFilter:["dir"]},()=>document.documentElement),{initialized:i,hidden:s}}var foe={root:"m_96b553a6"};const uot=(e,{transitionDuration:r})=>({root:{"--transition-duration":typeof r=="number"?`${r}ms`:r}}),XR=We((e,r)=>{const n=Re("FloatingIndicator",null,e),{classNames:o,className:a,style:i,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:foe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:uot}),k=S.useRef(null),{initialized:C,hidden:_}=dot({target:d,parent:u,ref:k,displayAfterTransitionEnd:g}),$=on(r,k);return!d||!u?null:y.jsx(Te,{ref:$,mod:[{initialized:C,hidden:_},f],...x("root"),...w})});XR.displayName="@mantine/core/FloatingIndicator",XR.classes=foe;function pot({open:e,close:r,openDelay:n,closeDelay:o}){const a=S.useRef(-1),i=S.useRef(-1),l=()=>{window.clearTimeout(a.current),window.clearTimeout(i.current)},s=()=>{l(),n===0||n===void 0?e():a.current=window.setTimeout(e,n)},c=()=>{l(),o===0||o===void 0?r():i.current=window.setTimeout(r,o)};return S.useEffect(()=>l,[]),{openDropdown:s,closeDropdown:c}}function ZR({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"})})}ZR.displayName="@mantine/core/AccordionChevron";var moe={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 hot=(e,{radius:r,color:n,variant:o,autoContrast:a})=>{const i=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:o||"light",autoContrast:a});return{root:{"--alert-radius":r===void 0?void 0:hn(r),"--alert-bg":n||o?i.background:void 0,"--alert-color":i.color,"--alert-bd":n||o?i.border:void 0}}},goe=We((e,r)=>{const n=Re("Alert",null,e),{classNames:o,className:a,style:i,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:z,...j}=n,A=dt({name:"Alert",classes:moe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:c,varsResolver:hot}),R=vl(g),T=p&&`${R}-title`||void 0,O=`${R}-body`;return y.jsx(Te,{id:R,...A("root",{variant:C}),variant:C,ref:r,role:$||"alert",...j,"aria-describedby":f?O:void 0,"aria-labelledby":p?T: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:T,...A("label"),children:p})}),f&&y.jsx("div",{id:O,...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})]})})});goe.classes=moe,goe.displayName="@mantine/core/Alert";var yoe={root:"m_b6d8b162"};function fot(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const mot={inherit:!1},got=(e,{variant:r,lineClamp:n,gradient:o,size:a,color:i})=>({root:{"--text-fz":Ro(a),"--text-lh":NJe(a),"--text-gradient":r==="gradient"?_et(o,e):void 0,"--text-line-clamp":typeof n=="number"?n.toString():void 0,"--text-color":i?qo(i,e):void 0}}),R0=Un((e,r)=>{const n=Re("Text",mot,e),{lineClamp:o,truncate:a,inline:i,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,z=dt({name:["Text",d],props:n,classes:yoe,className:p,style:f,classNames:g,styles:v,unstyled:w,attributes:_,vars:u,varsResolver:got});return y.jsx(Te,{...z("root",{focusable:!0}),ref:r,component:c?"span":"p",variant:x,mod:[{"data-truncate":fot(a),"data-line-clamp":typeof o=="number","data-inline":i,"data-inherit":l},k],size:C,...$})});R0.classes=yoe,R0.displayName="@mantine/core/Text";var voe={root:"m_849cf0da"};const yot={underline:"hover"},boe=Un((e,r)=>{const{underline:n,className:o,unstyled:a,mod:i,...l}=Re("Anchor",yot,e);return y.jsx(R0,{component:"a",ref:r,className:no({[voe.root]:!a},o),...l,mod:[{underline:n},i],__staticSelector:"Anchor",unstyled:a})});boe.classes=voe,boe.displayName="@mantine/core/Anchor";function xoe(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=>xoe(r))}:e}function vot(e){return e?e.map(r=>xoe(r)):[]}function woe(e){return e.reduce((r,n)=>"group"in n?{...r,...woe(n.items)}:(r[n.value]=n,r),{})}var Ho={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 bot={error:null},xot=(e,{size:r,color:n})=>({chevron:{"--combobox-chevron-size":Qt(r,"combobox-chevron-size"),"--combobox-chevron-color":n?qo(n,e):void 0}}),KR=We((e,r)=>{const n=Re("ComboboxChevron",bot,e),{size:o,error:a,style:i,className:l,classNames:s,styles:c,unstyled:d,vars:u,mod:p,...f}=n,g=dt({name:"ComboboxChevron",classes:Ho,props:n,style:i,className:l,classNames:s,styles:c,unstyled:d,vars:u,varsResolver:xot,rootSelector:"chevron"});return y.jsx(Te,{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:a},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"})})});KR.classes=Ho,KR.displayName="@mantine/core/ComboboxChevron";const[wot,Si]=ja("Combobox component was not found in tree"),koe=S.forwardRef(({size:e,onMouseDown:r,onClick:n,onClear:o,...a},i)=>y.jsx(ia.ClearButton,{ref:i,tabIndex:-1,"aria-hidden":!0,...a,onMouseDown:l=>{l.preventDefault(),r?.(l)},onClick:l=>{o(),n?.(l)}}));koe.displayName="@mantine/core/ComboboxClearButton";const QR=We((e,r)=>{const{classNames:n,styles:o,className:a,style:i,hidden:l,...s}=Re("ComboboxDropdown",null,e),c=Si();return y.jsx(po.Dropdown,{...s,ref:r,role:"presentation","data-hidden":l||void 0,...c.getStyles("dropdown",{className:a,style:i,classNames:n,styles:o})})});QR.classes=Ho,QR.displayName="@mantine/core/ComboboxDropdown";const kot={refProp:"ref"},_oe=We((e,r)=>{const{children:n,refProp:o}=Re("ComboboxDropdownTarget",kot,e);if(Si(),!ml(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})});_oe.displayName="@mantine/core/ComboboxDropdownTarget";const JR=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("ComboboxEmpty",null,e),c=Si();return y.jsx(Te,{ref:r,...c.getStyles("empty",{className:o,classNames:n,styles:i,style:a}),...s})});JR.classes=Ho,JR.displayName="@mantine/core/ComboboxEmpty";function ej({onKeyDown:e,withKeyboardNavigation:r,withAriaAttributes:n,withExpandedAttribute:o,targetType:a,autoComplete:i}){const l=Si(),[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()):a==="button"&&(u.preventDefault(),l.store.openDropdown("keyboard"))}u.key==="Escape"&&l.store.closeDropdown("keyboard"),u.nativeEvent.code==="Space"&&a==="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:i,"data-expanded":l.store.dropdownOpened||void 0,"data-mantine-stop-propagation":l.store.dropdownOpened||void 0}:{},onKeyDown:d}}const _ot={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},Soe=We((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Re("ComboboxEventsTarget",_ot,e);if(!ml(n))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 u=Si(),p=ej({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:n.props.onKeyDown,autoComplete:c});return S.cloneElement(n,{...p,...d,[o]:on(r,u.store.targetRef,ek(n))})});Soe.displayName="@mantine/core/ComboboxEventsTarget";const tj=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("ComboboxFooter",null,e),c=Si();return y.jsx(Te,{ref:r,...c.getStyles("footer",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});tj.classes=Ho,tj.displayName="@mantine/core/ComboboxFooter";const rj=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,children:s,label:c,id:d,...u}=Re("ComboboxGroup",null,e),p=Si(),f=vl(d);return y.jsxs(Te,{ref:r,role:"group","aria-labelledby":c?f:void 0,...p.getStyles("group",{className:o,classNames:n,style:a,styles:i}),...u,children:[c&&y.jsx("div",{id:f,...p.getStyles("groupLabel",{classNames:n,styles:i}),children:c}),s]})});rj.classes=Ho,rj.displayName="@mantine/core/ComboboxGroup";const nj=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("ComboboxHeader",null,e),c=Si();return y.jsx(Te,{ref:r,...c.getStyles("header",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});nj.classes=Ho,nj.displayName="@mantine/core/ComboboxHeader";function Eoe({value:e,valuesDivider:r=",",...n}){return y.jsx("input",{type:"hidden",value:Array.isArray(e)?e.join(r):e||"",...n})}Eoe.displayName="@mantine/core/ComboboxHiddenInput";const oj=We((e,r)=>{const n=Re("ComboboxOption",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,onClick:c,id:d,active:u,onMouseDown:p,onMouseOver:f,disabled:g,selected:v,mod:w,...x}=n,k=Si(),C=S.useId(),_=d||C;return y.jsx(Te,{...k.getStyles("option",{className:a,classNames:o,styles:l,style:i}),...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?.($)}})});oj.classes=Ho,oj.displayName="@mantine/core/ComboboxOption";const aj=We((e,r)=>{const n=Re("ComboboxOptions",null,e),{classNames:o,className:a,style:i,styles:l,id:s,onMouseDown:c,labelledBy:d,...u}=n,p=Si(),f=vl(s);return S.useEffect(()=>{p.store.setListId(f)},[f]),y.jsx(Te,{ref:r,...p.getStyles("options",{className:a,style:i,classNames:o,styles:l}),...u,id:f,role:"listbox","aria-labelledby":d,onMouseDown:g=>{g.preventDefault(),c?.(g)}})});aj.classes=Ho,aj.displayName="@mantine/core/ComboboxOptions";const Sot={withAriaAttributes:!0,withKeyboardNavigation:!0},ij=We((e,r)=>{const n=Re("ComboboxSearch",Sot,e),{classNames:o,styles:a,unstyled:i,vars:l,withAriaAttributes:s,onKeyDown:c,withKeyboardNavigation:d,size:u,...p}=n,f=Si(),g=f.getStyles("search"),v=ej({targetType:"input",withAriaAttributes:s,withKeyboardNavigation:d,withExpandedAttribute:!1,onKeyDown:c,autoComplete:"off"});return y.jsx(ia,{ref:on(r,f.store.searchRef),classNames:[{input:g.className},o],styles:[{input:g.style},a],size:u||f.size,...v,...p,__staticSelector:"Combobox"})});ij.classes=Ho,ij.displayName="@mantine/core/ComboboxSearch";const Eot={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},Coe=We((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Re("ComboboxTarget",Eot,e);if(!ml(n))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 u=Si(),p=ej({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:n.props.onKeyDown,autoComplete:c}),f=S.cloneElement(n,{...p,...d});return y.jsx(po.Target,{ref:on(r,u.store.targetRef),children:f})});Coe.displayName="@mantine/core/ComboboxTarget";function Cot(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 $ot(e,r,n){for(let o=e+1;o{s||(c(!0),a?.(B))},[c,a,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=Pd(f.current),F=tk(`#${d.current} [data-combobox-selected]`,B);F?.removeAttribute("data-combobox-selected"),F?.removeAttribute("aria-selected")},[]),$=S.useCallback(B=>{const F=Pd(f.current),q=tk(`#${d.current}`,F),G=q?Nd("[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,_]),z=S.useCallback(()=>{const B=Pd(f.current),F=tk(`#${d.current} [data-combobox-active]`,B);if(F){const q=Nd(`#${d.current} [data-combobox-option]`,B).findIndex(G=>G===F);return $(q)}return $(0)},[$]),j=S.useCallback(()=>{const B=Pd(f.current),F=Nd(`#${d.current} [data-combobox-option]`,B);return $($ot(u.current,F,i))},[$,i]),A=S.useCallback(()=>{const B=Pd(f.current),F=Nd(`#${d.current} [data-combobox-option]`,B);return $(Cot(u.current,F,i))},[$,i]),R=S.useCallback(()=>{const B=Pd(f.current),F=Nd(`#${d.current} [data-combobox-option]`,B);return $(zot(F))},[$]),T=S.useCallback((B="selected",F)=>{w.current=window.setTimeout(()=>{const q=Pd(f.current),G=Nd(`#${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)},[]),O=S.useCallback(()=>{u.current=-1,_()},[_]),P=S.useCallback(()=>{const B=Pd(f.current);Nd(`#${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:R,selectActiveOption:z,selectNextOption:j,selectPreviousOption:A,resetSelectedOption:O,updateSelectedOptionIndex:T,listId:d.current,setListId:L,clickSelectedOption:P,searchRef:p,focusSearchInput:H,targetRef:f,focusTarget:M}}const Rot={keepMounted:!0,withinPortal:!0,resetSelectionOnOptionHover:!1,width:"target",transitionProps:{transition:"fade",duration:0},size:"sm"},jot=(e,{size:r,dropdownPadding:n})=>({options:{"--combobox-option-fz":Ro(r),"--combobox-option-padding":Qt(r,"combobox-option-padding")},dropdown:{"--combobox-padding":n===void 0?void 0:Pe(n),"--combobox-option-fz":Ro(r),"--combobox-option-padding":Qt(r,"combobox-option-padding")}});function xr(e){const r=Re("Combobox",Rot,e),{classNames:n,styles:o,unstyled:a,children:i,store:l,vars:s,onOptionSubmit:c,onClose:d,size:u,dropdownPadding:p,resetSelectionOnOptionHover:f,__staticSelector:g,readOnly:v,attributes:w,...x}=r,k=$oe(),C=l||k,_=dt({name:g||"Combobox",classes:Ho,props:r,classNames:n,styles:o,unstyled:a,attributes:w,vars:s,varsResolver:jot}),$=()=>{d?.(),C.closeDropdown()};return y.jsx(wot,{value:{getStyles:_,store:C,onOptionSubmit:c,size:u,resetSelectionOnOptionHover:f,readOnly:v},children:y.jsx(po,{opened:C.dropdownOpened,preventPositionChangeWhenVisible:!0,...x,onChange:z=>!z&&$(),withRoles:!1,unstyled:a,children:i})})}const Tot=e=>e;xr.extend=Tot,xr.classes=Ho,xr.displayName="@mantine/core/Combobox",xr.Target=Coe,xr.Dropdown=QR,xr.Options=aj,xr.Option=oj,xr.Search=ij,xr.Empty=JR,xr.Chevron=KR,xr.Footer=tj,xr.Header=nj,xr.EventsTarget=Soe,xr.DropdownTarget=_oe,xr.Group=rj,xr.ClearButton=koe,xr.HiddenInput=Eoe;function Aot({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 j0(e){return"group"in e}function zoe({options:e,search:r,limit:n}){const o=r.trim().toLowerCase(),a=[];for(let i=0;i0)return!1;return!0}function Roe(e,r=new Set){if(Array.isArray(e))for(const n of e)if(j0(n))Roe(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 Mot(e,r){return Array.isArray(e)?e.includes(r):e===r}function joe({data:e,withCheckIcon:r,withAlignedLabels:n,value:o,checkIconPosition:a,unstyled:i,renderOption:l}){if(!j0(e)){const c=Mot(o,e.value),d=r&&(c?y.jsx(Aot,{className:Ho.optionsDropdownCheckIcon}):n?y.jsx("div",{className:Ho.optionsDropdownCheckPlaceholder}):null),u=y.jsxs(y.Fragment,{children:[a==="left"&&d,y.jsx("span",{children:e.label}),a==="right"&&d]});return y.jsx(xr.Option,{value:e.value,disabled:e.disabled,className:no({[Ho.optionsDropdownOption]:!i}),"data-reverse":a==="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(joe,{data:c,value:o,unstyled:i,withCheckIcon:r,withAlignedLabels:n,checkIconPosition:a,renderOption:l},c.value));return y.jsx(xr.Group,{label:e.group,children:s})}function Not({data:e,hidden:r,hiddenWhenEmpty:n,filter:o,search:a,limit:i,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}){Roe(e);const _=typeof a=="string"?(o||zoe)({options:e,search:c?a:"",limit:i??1/0}):e,$=Dot(_),z=_.map(j=>y.jsx(joe,{data:j,withCheckIcon:d,withAlignedLabels:u,value:p,checkIconPosition:f,unstyled:v,renderOption:x},j0(j)?j.group:j.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(Bp.Autosize,{mah:l??220,type:"scroll",scrollbarSize:"var(--combobox-padding)",offsetScrollbars:"y",...k,children:z}):z,$&&g&&y.jsx(xr.Empty,{children:g})]})})}var Toe={root:"m_347db0ec","root--dot":"m_fbd81e3d",label:"m_5add502a",section:"m_91fdda9b"};const Pot=(e,{radius:r,color:n,gradient:o,variant:a,size:i,autoContrast:l,circle:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:l});return{root:{"--badge-height":Qt(i,"badge-height"),"--badge-padding-x":Qt(i,"badge-padding-x"),"--badge-fz":Qt(i,"badge-fz"),"--badge-radius":s||r===void 0?void 0:hn(r),"--badge-bg":n||a?c.background:void 0,"--badge-color":n||a?c.color:void 0,"--badge-bd":n||a?c.border:void 0,"--badge-dot-color":a==="dot"?qo(n,e):void 0}}},Aoe=Un((e,r)=>{const n=Re("Badge",null,e),{classNames:o,className:a,style:i,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:$,...z}=n,j=dt({name:"Badge",props:n,classes:Toe,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:$,vars:c,varsResolver:Pot});return y.jsxs(Te,{variant:w,mod:[{block:x,circle:C,"with-right-section":!!g,"with-left-section":!!f},_],...j("root",{variant:w}),ref:r,...z,children:[f&&y.jsx("span",{...j("section"),"data-position":"left",children:f}),y.jsx("span",{...j("label"),children:v}),g&&y.jsx("span",{...j("section"),"data-position":"right",children:g})]})});Aoe.classes=Toe,Aoe.displayName="@mantine/core/Badge";var Doe={root:"m_8b3717df",breadcrumb:"m_f678d540",separator:"m_3b8f2208"};const Bot={separator:"/"},Oot=(e,{separatorMargin:r})=>({root:{"--bc-separator-margin":ro(r)}}),Moe=We((e,r)=>{const n=Re("Breadcrumbs",Bot,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,children:d,separator:u,separatorMargin:p,attributes:f,...g}=n,v=dt({name:"Breadcrumbs",classes:Doe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,vars:c,varsResolver:Oot}),w=S.Children.toArray(d).reduce((x,k,C,_)=>{const $=ml(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(Te,{...v("separator"),key:`separator-${C}`},u)),x},[]);return y.jsx(Te,{ref:r,...v("root"),...g,children:w})});Moe.classes=Doe,Moe.displayName="@mantine/core/Breadcrumbs";var Noe={root:"m_fea6bf1a",burger:"m_d4fb9cad"};const Iot=(e,{color:r,size:n,lineSize:o,transitionDuration:a,transitionTimingFunction:i})=>({root:{"--burger-color":r?qo(r,e):void 0,"--burger-size":Qt(n,"burger-size"),"--burger-line-size":o?Pe(o):void 0,"--burger-transition-duration":a===void 0?void 0:`${a}ms`,"--burger-transition-timing-function":i}}),Poe=We((e,r)=>{const n=Re("Burger",null,e),{classNames:o,className:a,style:i,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:Noe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:Iot});return y.jsxs(ps,{...x("root"),ref:r,...w,children:[y.jsx(Te,{mod:["reduce-motion",{opened:d}],...x("burger")}),u]})});Poe.classes=Noe,Poe.displayName="@mantine/core/Burger";var Hm={root:"m_77c9d27d",inner:"m_80f1301b",label:"m_811560b9",section:"m_a74036a",loader:"m_a25b86ee",group:"m_80d6d844",groupSection:"m_70be2a01"};const Boe={orientation:"horizontal"},Lot=(e,{borderWidth:r})=>({group:{"--button-border-width":Pe(r)}}),lj=We((e,r)=>{const n=Re("ButtonGroup",Boe,e),{className:o,style:a,classNames:i,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=Re("ButtonGroup",Boe,e),w=dt({name:"ButtonGroup",props:n,classes:Hm,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:Lot,rootSelector:"group"});return y.jsx(Te,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});lj.classes=Hm,lj.displayName="@mantine/core/ButtonGroup";const Fot=(e,{radius:r,color:n,gradient:o,variant:a,autoContrast:i,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:i});return{groupSection:{"--section-height":Qt(l,"section-height"),"--section-padding-x":Qt(l,"section-padding-x"),"--section-fz":l?.includes("compact")?Ro(l.replace("compact-","")):Ro(l),"--section-radius":r===void 0?void 0:hn(r),"--section-bg":n||a?s.background:void 0,"--section-color":s.color,"--section-bd":n||a?s.border:void 0}}},sj=We((e,r)=>{const n=Re("ButtonGroupSection",null,e),{className:o,style:a,classNames:i,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:Hm,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:Fot,rootSelector:"groupSection"});return y.jsx(Te,{...w("groupSection"),ref:r,variant:d,...v})});sj.classes=Hm,sj.displayName="@mantine/core/ButtonGroupSection";const Vot={in:{opacity:1,transform:`translate(-50%, calc(-50% + ${Pe(1)}))`},out:{opacity:0,transform:"translate(-50%, -200%)"},common:{transformOrigin:"center"},transitionProperty:"transform, opacity"},qot=(e,{radius:r,color:n,gradient:o,variant:a,size:i,justify:l,autoContrast:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:s});return{root:{"--button-justify":l,"--button-height":Qt(i,"button-height"),"--button-padding-x":Qt(i,"button-padding-x"),"--button-fz":i?.includes("compact")?Ro(i.replace("compact-","")):Ro(i),"--button-radius":r===void 0?void 0:hn(r),"--button-bg":n||a?c.background:void 0,"--button-hover":n||a?c.hover:void 0,"--button-color":c.color,"--button-bd":n||a?c.border:void 0,"--button-hover-color":n||a?c.hoverColor:void 0}}},Dk=Un((e,r)=>{const n=Re("Button",null,e),{style:o,vars:a,className:i,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:z,mod:j,attributes:A,...R}=n,T=dt({name:"Button",props:n,classes:Hm,className:i,style:o,classNames:k,styles:C,unstyled:_,attributes:A,vars:a,varsResolver:qot}),O=!!d,P=!!u;return y.jsxs(ps,{ref:r,...T("root",{active:!s&&!v&&!$}),unstyled:_,variant:f,disabled:s||v,mod:[{disabled:s||$,loading:v,block:p,"with-left-section":O,"with-right-section":P},j],...R,children:[typeof v=="boolean"&&y.jsx(kl,{mounted:v,transition:Vot,duration:150,children:L=>y.jsx(Te,{component:"span",...T("loader",{style:L}),"aria-hidden":!0,children:y.jsx(Ip,{color:"var(--button-color)",size:"calc(var(--button-height) / 1.8)",...w})})}),y.jsxs("span",{...T("inner"),children:[d&&y.jsx(Te,{component:"span",...T("section"),mod:{position:"left"},children:d}),y.jsx(Te,{component:"span",mod:{loading:v},...T("label"),children:c}),u&&y.jsx(Te,{component:"span",...T("section"),mod:{position:"right"},children:u})]})]})});Dk.classes=Hm,Dk.displayName="@mantine/core/Button",Dk.Group=lj,Dk.GroupSection=sj;const[Hot,Uot]=ja("Card component was not found in tree");var cj={root:"m_e615b15f",section:"m_599a2148"};const Mk=Un((e,r)=>{const n=Re("CardSection",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,withBorder:c,inheritPadding:d,mod:u,...p}=n,f=Uot();return y.jsx(Te,{ref:r,mod:[{"with-border":c,"inherit-padding":d},u],...f.getStyles("section",{className:a,style:i,styles:l,classNames:o}),...p})});Mk.classes=cj,Mk.displayName="@mantine/core/CardSection";const Wot=(e,{padding:r})=>({root:{"--card-padding":ro(r)}}),dj=Un((e,r)=>{const n=Re("Card",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,children:d,padding:u,attributes:p,...f}=n,g=dt({name:"Card",props:n,classes:cj,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:Wot}),v=S.Children.toArray(d),w=v.map((x,k)=>typeof x=="object"&&x&&"type"in x&&x.type===Mk?S.cloneElement(x,{"data-first-section":k===0||void 0,"data-last-section":k===v.length-1||void 0}):x);return y.jsx(Hot,{value:{getStyles:g},children:y.jsx(_k,{ref:r,unstyled:s,...g("root"),...f,children:w})})});dj.classes=cj,dj.displayName="@mantine/core/Card",dj.Section=Mk;var Ooe={root:"m_b183c0a2"};const Got=(e,{color:r})=>({root:{"--code-bg":r?qo(r,e):void 0}}),Ioe=We((e,r)=>{const n=Re("Code",null,e),{classNames:o,className:a,style:i,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:Ooe,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:Got});return y.jsx(Te,{component:u?"pre":"code",variant:p,ref:r,mod:[{block:u},f],...w("root"),...v,dir:"ltr"})});Ioe.classes=Ooe,Ioe.displayName="@mantine/core/Code";var Loe={root:"m_de3d2490",colorOverlay:"m_862f3d1b",shadowOverlay:"m_98ae7f22",alphaOverlay:"m_95709ac0",childrenOverlay:"m_93e74e3"};const Foe={withShadow:!0},Yot=(e,{radius:r,size:n})=>({root:{"--cs-radius":r===void 0?void 0:hn(r),"--cs-size":Pe(n)}}),Voe=Un((e,r)=>{const n=Re("ColorSwatch",Foe,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,color:d,size:u,radius:p,withShadow:f,children:g,variant:v,attributes:w,...x}=Re("ColorSwatch",Foe,n),k=dt({name:"ColorSwatch",props:n,classes:Loe,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:c,varsResolver:Yot});return y.jsxs(Te,{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})]})});Voe.classes=Loe,Voe.displayName="@mantine/core/ColorSwatch";var qoe={root:"m_7485cace"};const Xot=(e,{size:r,fluid:n})=>({root:{"--container-size":n?void 0:Qt(r,"container-size")}}),Hoe=We((e,r)=>{const n=Re("Container",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,fluid:d,mod:u,attributes:p,strategy:f,...g}=n,v=dt({name:"Container",classes:qoe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:Xot});return y.jsx(Te,{ref:r,mod:[{fluid:d,strategy:f||"block"},u],...v("root"),...g})});Hoe.classes=qoe,Hoe.displayName="@mantine/core/Container";var Uoe={root:"m_3eebeb36",label:"m_9e365f20"};const Zot={orientation:"horizontal"},Kot=(e,{color:r,variant:n,size:o})=>({root:{"--divider-color":r?qo(r,e):void 0,"--divider-border-style":n,"--divider-size":Qt(o,"divider-size")}}),Woe=We((e,r)=>{const n=Re("Divider",Zot,e),{classNames:o,className:a,style:i,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:Uoe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:Kot});return y.jsx(Te,{ref:r,mod:[{orientation:u,"with-label":!!p},g],...x("root"),...w,role:"separator",children:p&&y.jsx(Te,{component:"span",mod:{position:f},...x("label"),children:p})})});Woe.classes=Uoe,Woe.displayName="@mantine/core/Divider";const[Qot,Um]=ja("Drawer component was not found in tree");var gc={root:"m_f11b401e",header:"m_5a7c2c9",content:"m_b8a05bbd",inner:"m_31cd769a"};const Nk=We((e,r)=>{const n=Re("DrawerBody",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Um();return y.jsx(HR,{ref:r,...d.getStyles("body",{classNames:o,style:i,styles:l,className:a}),...c})});Nk.classes=gc,Nk.displayName="@mantine/core/DrawerBody";const Pk=We((e,r)=>{const n=Re("DrawerCloseButton",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Um();return y.jsx(ioe,{ref:r,...d.getStyles("close",{classNames:o,style:i,styles:l,className:a}),...c})});Pk.classes=gc,Pk.displayName="@mantine/core/DrawerCloseButton";const Bk=We((e,r)=>{const n=Re("DrawerContent",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,children:c,radius:d,__hidden:u,...p}=n,f=Um(),g=f.scrollAreaComponent||coe;return y.jsx(UR,{...f.getStyles("content",{className:a,style:i,styles:l,classNames:o}),innerProps:f.getStyles("inner",{className:a,style:i,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})})});Bk.classes=gc,Bk.displayName="@mantine/core/DrawerContent";const Ok=We((e,r)=>{const n=Re("DrawerHeader",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Um();return y.jsx(loe,{ref:r,...d.getStyles("header",{classNames:o,style:i,styles:l,className:a}),...c})});Ok.classes=gc,Ok.displayName="@mantine/core/DrawerHeader";const Ik=We((e,r)=>{const n=Re("DrawerOverlay",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Um();return y.jsx(WR,{ref:r,...d.getStyles("overlay",{classNames:o,style:i,styles:l,className:a}),...c})});Ik.classes=gc,Ik.displayName="@mantine/core/DrawerOverlay";function Jot(e){switch(e){case"top":return"flex-start";case"bottom":return"flex-end";default:return}}function eat(e){if(e==="top"||e==="bottom")return"0 0 calc(100% - var(--drawer-offset, 0rem) * 2)"}const tat={top:"slide-down",bottom:"slide-up",left:"slide-right",right:"slide-left"},rat={top:"slide-down",bottom:"slide-up",right:"slide-right",left:"slide-left"},nat={closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:gl("modal"),position:"left"},oat=(e,{position:r,size:n,offset:o})=>({root:{"--drawer-size":Qt(n,"drawer-size"),"--drawer-flex":eat(r),"--drawer-height":r==="left"||r==="right"?void 0:"var(--drawer-size)","--drawer-align":Jot(r),"--drawer-justify":r==="right"?"flex-end":void 0,"--drawer-offset":Pe(o)}}),Lk=We((e,r)=>{const n=Re("DrawerRoot",nat,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,scrollAreaComponent:d,position:u,transitionProps:p,radius:f,attributes:g,...v}=n,{dir:w}=uc(),x=dt({name:"Drawer",classes:gc,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:oat}),k=(w==="rtl"?rat:tat)[u];return y.jsx(Qot,{value:{scrollAreaComponent:d,getStyles:x,radius:f},children:y.jsx(qR,{ref:r,...x("root"),transitionProps:{transition:k,...p},"data-offset-scrollbars":d===Bp.Autosize||void 0,unstyled:s,...v})})});Lk.classes=gc,Lk.displayName="@mantine/core/DrawerRoot";const[aat,iat]=jm();function Goe({children:e}){const[r,n]=S.useState([]),[o,a]=S.useState(gl("modal"));return y.jsx(aat,{value:{stack:r,addModal:(i,l)=>{n(s=>[...new Set([...s,i])]),a(s=>typeof l=="number"&&typeof s=="number"?Math.max(s,l):s)},removeModal:i=>n(l=>l.filter(s=>s!==i)),getZIndex:i=>`calc(${o} + ${r.indexOf(i)} + 1)`,currentId:r[r.length-1],maxZIndex:o},children:e})}Goe.displayName="@mantine/core/DrawerStack";const Fk=We((e,r)=>{const n=Re("DrawerTitle",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Um();return y.jsx(soe,{ref:r,...d.getStyles("title",{classNames:o,style:i,styles:l,className:a}),...c})});Fk.classes=gc,Fk.displayName="@mantine/core/DrawerTitle";const lat={closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:gl("modal"),withOverlay:!0,withCloseButton:!0},hs=We((e,r)=>{const{title:n,withOverlay:o,overlayProps:a,withCloseButton:i,closeButtonProps:l,children:s,opened:c,stackId:d,zIndex:u,...p}=Re("Drawer",lat,e),f=iat(),g=!!n||i,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||gl("modal")):f.removeModal(d))},[c,d,u]),y.jsxs(Lk,{ref:r,opened:c,zIndex:f&&d?f.getZIndex(d):u,...p,...v,children:[o&&y.jsx(Ik,{visible:w,transitionProps:f&&d?{duration:0}:void 0,...a}),y.jsxs(Bk,{__hidden:f&&d&&c?d!==f.currentId:!1,children:[g&&y.jsxs(Ok,{children:[n&&y.jsx(Fk,{children:n}),i&&y.jsx(Pk,{...l})]}),y.jsx(Nk,{children:s})]})]})});hs.classes=gc,hs.displayName="@mantine/core/Drawer",hs.Root=Lk,hs.Overlay=Ik,hs.Content=Bk,hs.Body=Nk,hs.Header=Ok,hs.Title=Fk,hs.CloseButton=Pk,hs.Stack=Goe;const[Yoe,Xoe]=ja("Grid component was not found in tree"),uj=(e,r)=>e==="content"?"auto":e==="auto"?"0rem":e?`${100/(r/e)}%`:void 0,Zoe=(e,r,n)=>n||e==="auto"?"100%":e==="content"?"unset":uj(e,r),Koe=(e,r)=>{if(e)return e==="auto"||r?"1":"auto"},Qoe=(e,r)=>e===0?"0":e?`${100/(r/e)}%`:void 0;function sat({span:e,order:r,offset:n,selector:o}){const a=uo(),i=Xoe(),l=i.breakpoints||a.breakpoints,s=yl(e)===void 0?12:yl(e),c=Dd({"--col-order":yl(r)?.toString(),"--col-flex-grow":Koe(s,i.grow),"--col-flex-basis":uj(s,i.columns),"--col-width":s==="content"?"auto":void 0,"--col-max-width":Zoe(s,i.columns,i.grow),"--col-offset":Qoe(yl(n),i.columns)}),d=zo(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"]=Koe(e[f],i.grow),p[f]["--col-flex-basis"]=uj(e[f],i.columns),p[f]["--col-width"]=e[f]==="content"?"auto":void 0,p[f]["--col-max-width"]=Zoe(e[f],i.columns,i.grow)),typeof n=="object"&&n[f]!==void 0&&(p[f]["--col-offset"]=Qoe(n[f],i.columns)),p),{}),u=Wz(zo(d),l).filter(p=>zo(d[p.value]).length>0).map(p=>({query:i.type==="container"?`mantine-grid (min-width: ${l[p.value]})`:`(min-width: ${l[p.value]})`,styles:d[p.value]}));return y.jsx(Mm,{styles:c,media:i.type==="container"?void 0:u,container:i.type==="container"?u:void 0,selector:o})}var pj={container:"m_8478a6da",root:"m_410352e9",inner:"m_dee7bd2f",col:"m_96bdd299"};const cat={span:12},hj=We((e,r)=>{const n=Re("GridCol",cat,e),{classNames:o,className:a,style:i,styles:l,vars:s,span:c,order:d,offset:u,...p}=n,f=Xoe(),g=_0();return y.jsxs(y.Fragment,{children:[y.jsx(sat,{selector:`.${g}`,span:c,order:d,offset:u}),y.jsx(Te,{ref:r,...f.getStyles("col",{className:no(a,g),style:i,classNames:o,styles:l}),...p})]})});hj.classes=pj,hj.displayName="@mantine/core/GridCol";function Joe({gutter:e,selector:r,breakpoints:n,type:o}){const a=uo(),i=n||a.breakpoints,l=Dd({"--grid-gutter":ro(yl(e))}),s=zo(i).reduce((d,u)=>(d[u]||(d[u]={}),typeof e=="object"&&e[u]!==void 0&&(d[u]["--grid-gutter"]=ro(e[u])),d),{}),c=Wz(zo(s),i).filter(d=>zo(s[d.value]).length>0).map(d=>({query:o==="container"?`mantine-grid (min-width: ${i[d.value]})`:`(min-width: ${i[d.value]})`,styles:s[d.value]}));return y.jsx(Mm,{styles:l,media:o==="container"?void 0:c,container:o==="container"?c:void 0,selector:r})}const dat={gutter:"md",grow:!1,columns:12},uat=(e,{justify:r,align:n,overflow:o})=>({root:{"--grid-justify":r,"--grid-align":n,"--grid-overflow":o}}),fj=We((e,r)=>{const n=Re("Grid",dat,e),{classNames:o,className:a,style:i,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:pj,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:k,vars:c,varsResolver:uat}),$=_0();return x==="container"&&w?y.jsxs(Yoe,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(Joe,{selector:`.${$}`,...n}),y.jsx("div",{..._("container"),children:y.jsx(Te,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})})]}):y.jsxs(Yoe,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(Joe,{selector:`.${$}`,...n}),y.jsx(Te,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})]})});fj.classes=pj,fj.displayName="@mantine/core/Grid",fj.Col=hj;function eae({color:e,theme:r,defaultShade:n}){const o=Dp({color:e,theme:r});return o.isThemeColor?o.shade===void 0?`var(--mantine-color-${o.color}-${n})`:`var(${o.variable})`:e}var tae={root:"m_bcb3f3c2"};const pat={color:"yellow"},hat=(e,{color:r})=>({root:{"--mark-bg-dark":eae({color:r,theme:e,defaultShade:5}),"--mark-bg-light":eae({color:r,theme:e,defaultShade:2})}}),mj=We((e,r)=>{const n=Re("Mark",pat,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,color:d,variant:u,attributes:p,...f}=n,g=dt({name:"Mark",props:n,className:a,style:i,classes:tae,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:hat});return y.jsx(Te,{component:"mark",ref:r,variant:u,...g("root"),...f})});mj.classes=tae,mj.displayName="@mantine/core/Mark";function rae(e){return e.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&")}function fat(e,r){if(r==null)return[{chunk:e,highlighted:!1}];const n=Array.isArray(r)?r.map(rae):rae(r);if(!(Array.isArray(n)?n.filter(i=>i.trim().length>0).length>0:n.trim()!==""))return[{chunk:e,highlighted:!1}];const o=typeof n=="string"?n.trim():n.filter(i=>i.trim().length!==0).map(i=>i.trim()).sort((i,l)=>l.length-i.length).join("|"),a=new RegExp(`(${o})`,"gi");return e.split(a).map(i=>({chunk:i,highlighted:a.test(i)})).filter(({chunk:i})=>i)}const nae=Un((e,r)=>{const{unstyled:n,children:o,highlight:a,highlightStyles:i,color:l,...s}=Re("Highlight",null,e),c=fat(o,a);return y.jsx(R0,{unstyled:n,ref:r,...s,__staticSelector:"Highlight",children:c.map(({chunk:d,highlighted:u},p)=>u?y.jsx(mj,{unstyled:n,color:l,style:i,"data-highlight":d,children:d},p):y.jsx("span",{children:d},p))})});nae.classes=R0.classes,nae.displayName="@mantine/core/Highlight";const[Gxt,oae]=ja("HoverCard component was not found in the tree"),aae=S.createContext(!1),mat=aae.Provider,iae=()=>S.useContext(aae);function gat(e){const{children:r,onMouseEnter:n,onMouseLeave:o,...a}=Re("HoverCardDropdown",null,e),i=oae();if(iae()&&i.getFloatingProps&&i.floating){const c=i.getFloatingProps();return y.jsx(po.Dropdown,{ref:i.floating,...c,onMouseEnter:jn(n,c.onMouseEnter),onMouseLeave:jn(o,c.onMouseLeave),...a,children:r})}const l=jn(n,i.openDropdown),s=jn(o,i.closeDropdown);return y.jsx(po.Dropdown,{onMouseEnter:l,onMouseLeave:s,...a,children:r})}gat.displayName="@mantine/core/HoverCardDropdown";const yat={openDelay:0,closeDelay:0};function lae(e){const{openDelay:r,closeDelay:n,children:o}=Re("HoverCardGroup",yat,e);return y.jsx(mat,{value:!0,children:y.jsx(_ne,{delay:{open:r,close:n},children:o})})}lae.displayName="@mantine/core/HoverCardGroup",lae.extend=e=>e;const vat={refProp:"ref"},bat=S.forwardRef((e,r)=>{const{children:n,refProp:o,eventPropsWrapperName:a,...i}=Re("HoverCardTarget",vat,e);if(!ml(n))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 l=oae();if(iae()&&l.getReferenceProps&&l.reference){const u=l.getReferenceProps();return y.jsx(po.Target,{refProp:o,ref:r,...i,children:S.cloneElement(n,a?{[a]:{...u,ref:l.reference}}:{...u,ref:l.reference})})}const s=jn(n.props.onMouseEnter,l.openDropdown),c=jn(n.props.onMouseLeave,l.closeDropdown),d={onMouseEnter:s,onMouseLeave:c};return y.jsx(po.Target,{refProp:o,ref:r,...i,children:S.cloneElement(n,a?{[a]:d}:d)})});bat.displayName="@mantine/core/HoverCardTarget";var sae={root:"m_6e45937b",loader:"m_e8eb006c",overlay:"m_df587f17"};const cae={transitionProps:{transition:"fade",duration:0},overlayProps:{backgroundOpacity:.75},zIndex:gl("overlay")},xat=(e,{zIndex:r})=>({root:{"--lo-z-index":r?.toString()}}),dae=We((e,r)=>{const n=Re("LoadingOverlay",cae,e),{classNames:o,className:a,style:i,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:sae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:xat}),C={...cae.overlayProps,...p};return y.jsx(kl,{transition:"fade",...d,mounted:!!f,children:_=>y.jsxs(Te,{...k("root",{style:_}),ref:r,...w,children:[y.jsx(Ip,{...k("loader"),unstyled:s,...u}),y.jsx(Fm,{...C,...k("overlay"),darkHidden:!0,unstyled:s,color:p?.color||x.white}),y.jsx(Fm,{...C,...k("overlay"),lightHidden:!0,unstyled:s,color:p?.color||x.colors.dark[5]})]})})});dae.classes=sae,dae.displayName="@mantine/core/LoadingOverlay";const[Yxt,Od]=ja("Menu component was not found in the tree");var Wm={dropdown:"m_dc9b7c9f",label:"m_9bfac126",divider:"m_efdf90cb",item:"m_99ac2aa1",itemLabel:"m_5476e0d3",itemSection:"m_8b75e504",chevron:"m_b85b0bed"};const uae=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("MenuDivider",null,e),c=Od();return y.jsx(Te,{ref:r,...c.getStyles("divider",{className:o,style:a,styles:i,classNames:n}),...s})});uae.classes=Wm,uae.displayName="@mantine/core/MenuDivider";const pae=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=Re("MenuDropdown",null,e),f=S.useRef(null),g=Od(),v=jn(d,k=>{(k.key==="ArrowUp"||k.key==="ArrowDown")&&(k.preventDefault(),f.current?.querySelectorAll("[data-menu-item]:not(:disabled)")[0]?.focus())}),w=jn(s,()=>(g.trigger==="hover"||g.trigger==="click-hover")&&g.openDropdown()),x=jn(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:a,styles:i,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]})});pae.classes=Wm,pae.displayName="@mantine/core/MenuDropdown";const[wat,Vk]=jm(),hae=Un((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,color:s,closeMenuOnClick:c,leftSection:d,rightSection:u,children:p,disabled:f,"data-disabled":g,...v}=Re("MenuItem",null,e),w=Od(),x=Vk(),k=uo(),{dir:C}=uc(),_=S.useRef(null),$=v,z=jn($.onClick,()=>{g||(typeof c=="boolean"?c&&w.closeDropdownImmediately():w.closeOnItemClick&&w.closeDropdownImmediately())}),j=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,A=s?Dp({color:s,theme:k}):null,R=jn($.onKeyDown,T=>{T.key==="ArrowLeft"&&x&&(x.close(),x.focusParentItem())});return y.jsxs(ps,{onMouseDown:T=>T.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style:a,styles:i,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:z,onKeyDown:Hz({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:R}),__vars:{"--menu-item-color":A?.isThemeColor&&A?.shade===void 0?`var(--mantine-color-${A.color}-6)`:j?.color,"--menu-item-hover":j?.hover},children:[d&&y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"left",children:d}),p&&y.jsx("div",{...w.getStyles("itemLabel",{styles:i,classNames:n}),children:p}),u&&y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"right",children:u})]})});hae.classes=Wm,hae.displayName="@mantine/core/MenuItem";const fae=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("MenuLabel",null,e),c=Od();return y.jsx(Te,{ref:r,...c.getStyles("label",{className:o,style:a,styles:i,classNames:n}),...s})});fae.classes=Wm,fae.displayName="@mantine/core/MenuLabel";const gj=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=Re("MenuSubDropdown",null,e),f=S.useRef(null),g=Od(),v=Vk(),w=jn(s,v?.open),x=jn(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:a,styles:i,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,children:u})});gj.classes=Wm,gj.displayName="@mantine/core/MenuSubDropdown";const yj=Un((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,color:s,leftSection:c,rightSection:d,children:u,disabled:p,"data-disabled":f,closeMenuOnClick:g,...v}=Re("MenuSubItem",null,e),w=Od(),x=Vk(),k=uo(),{dir:C}=uc(),_=S.useRef(null),$=v,z=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,j=s?Dp({color:s,theme:k}):null,A=jn($.onKeyDown,P=>{P.key==="ArrowRight"&&(x?.open(),x?.focusFirstItem()),P.key==="ArrowLeft"&&x?.parentContext&&(x.parentContext.close(),x.parentContext.focusParentItem())}),R=jn($.onClick,()=>{!f&&g&&w.closeDropdownImmediately()}),T=jn($.onMouseEnter,x?.open),O=jn($.onMouseLeave,x?.close);return y.jsxs(ps,{onMouseDown:P=>P.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style:a,styles:i,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:T,onMouseLeave:O,onClick:R,onKeyDown:Hz({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":j?.isThemeColor&&j?.shade===void 0?`var(--mantine-color-${j.color}-6)`:z?.color,"--menu-item-hover":z?.hover},children:[c&&y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"left",children:c}),u&&y.jsx("div",{...w.getStyles("itemLabel",{styles:i,classNames:n}),children:u}),y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"right",children:d||y.jsx(ZR,{...w.getStyles("chevron"),size:14})})]})});yj.classes=Wm,yj.displayName="@mantine/core/MenuSubItem";function mae({children:e,refProp:r}){if(!ml(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 Od(),y.jsx(po.Target,{refProp:r,popupType:"menu",children:e})}mae.displayName="@mantine/core/MenuSubTarget";const kat={offset:0,position:"right-start",transitionProps:{duration:0},openDelay:0,middlewares:{shift:{crossAxis:!0}}};function T0(e){const{children:r,closeDelay:n,openDelay:o,...a}=Re("MenuSub",kat,e),i=vl(),[l,{open:s,close:c}]=tet(!1),d=Vk(),{openDropdown:u,closeDropdown:p}=pot({open:s,close:c,closeDelay:n,openDelay:o});return y.jsx(wat,{value:{opened:l,close:p,open:u,focusFirstItem:()=>window.setTimeout(()=>{document.getElementById(`${i}-dropdown`)?.querySelectorAll("[data-menu-item]:not([data-disabled])")[0]?.focus()},16),focusParentItem:()=>window.setTimeout(()=>{document.getElementById(`${i}-target`)?.focus()},16),parentContext:d},children:y.jsx(po,{opened:l,withinPortal:!1,withArrow:!1,id:i,...a,children:r})})}T0.extend=e=>e,T0.displayName="@mantine/core/MenuSub",T0.Target=mae,T0.Dropdown=gj,T0.Item=yj;const _at={refProp:"ref"},Sat=S.forwardRef((e,r)=>{const{children:n,refProp:o,...a}=Re("MenuTarget",_at,e);if(!ml(n))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 i=Od(),l=n.props,s=jn(l.onClick,()=>{i.trigger==="click"?i.toggleDropdown():i.trigger==="click-hover"&&(i.setOpenedViaClick(!0),i.opened||i.openDropdown())}),c=jn(l.onMouseEnter,()=>(i.trigger==="hover"||i.trigger==="click-hover")&&i.openDropdown()),d=jn(l.onMouseLeave,()=>{(i.trigger==="hover"||i.trigger==="click-hover"&&!i.openedViaClick)&&i.closeDropdown()});return y.jsx(po.Target,{refProp:o,popupType:"menu",ref:r,...a,children:S.cloneElement(n,{onClick:s,onMouseEnter:c,onMouseLeave:d,"data-expanded":i.opened?!0:void 0})})});Sat.displayName="@mantine/core/MenuTarget";const[Eat,vj]=ja("Modal component was not found in tree");var A0={root:"m_9df02822",content:"m_54c44539",inner:"m_1f958f16",header:"m_d0e2b9cd"};const gae=We((e,r)=>{const n=Re("ModalBody",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=vj();return y.jsx(HR,{ref:r,...d.getStyles("body",{classNames:o,style:i,styles:l,className:a}),...c})});gae.classes=A0,gae.displayName="@mantine/core/ModalBody";const yae=We((e,r)=>{const n=Re("ModalContent",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,children:c,__hidden:d,...u}=n,p=vj(),f=p.scrollAreaComponent||coe;return y.jsx(UR,{...p.getStyles("content",{className:a,style:i,styles:l,classNames:o}),innerProps:p.getStyles("inner",{className:a,style:i,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})})});yae.classes=A0,yae.displayName="@mantine/core/ModalContent";const vae=We((e,r)=>{const n=Re("ModalOverlay",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=vj();return y.jsx(WR,{ref:r,...d.getStyles("overlay",{classNames:o,style:i,styles:l,className:a}),...c})});vae.classes=A0,vae.displayName="@mantine/core/ModalOverlay";const Cat={__staticSelector:"Modal",closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:gl("modal"),transitionProps:{duration:200,transition:"fade-down"},yOffset:"5dvh"},$at=(e,{radius:r,size:n,yOffset:o,xOffset:a})=>({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(a)}}),bae=We((e,r)=>{const n=Re("ModalRoot",Cat,e),{classNames:o,className:a,style:i,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:A0,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:x,vars:c,varsResolver:$at});return y.jsx(Eat,{value:{yOffset:d,scrollAreaComponent:u,getStyles:C,fullScreen:f},children:y.jsx(qR,{ref:r,...C("root"),"data-full-screen":f||void 0,"data-centered":g||void 0,"data-offset-scrollbars":u===Bp.Autosize||void 0,unstyled:s,...k})})});bae.classes=A0,bae.displayName="@mantine/core/ModalRoot";const[Xxt,xae]=jm(),[zat,Rat]=jm();var qk={root:"m_7cda1cd6","root--default":"m_44da308b","root--contrast":"m_e3a01f8",label:"m_1e0e6180",remove:"m_ae386778",group:"m_1dcfd90b"};const jat=(e,{gap:r},{size:n})=>({group:{"--pg-gap":r!==void 0?Qt(r):Qt(n,"pg-gap")}}),bj=We((e,r)=>{const n=Re("PillGroup",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,size:d,disabled:u,attributes:p,...f}=n,g=xae()?.size||d||void 0,v=dt({name:"PillGroup",classes:qk,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:jat,stylesCtx:{size:g},rootSelector:"group"});return y.jsx(zat,{value:{size:g,disabled:u},children:y.jsx(Te,{ref:r,size:g,...v("group"),...f})})});bj.classes=qk,bj.displayName="@mantine/core/PillGroup";const Tat={variant:"default"},Aat=(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)}}),xj=We((e,r)=>{const n=Re("Pill",Tat,e),{classNames:o,className:a,style:i,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,$=Rat(),z=xae(),j=w||$?.size||void 0,A=z?.variant==="filled"?"contrast":d||"default",R=dt({name:"Pill",classes:qk,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,vars:c,varsResolver:Aat,stylesCtx:{size:j}});return y.jsxs(Te,{component:"span",ref:r,variant:A,size:j,...R("root",{variant:A}),mod:[{"with-remove":p&&!x,disabled:x||$?.disabled},k],..._,children:[y.jsx("span",{...R("label"),children:u}),p&&y.jsx(Lp,{variant:"transparent",radius:v,tabIndex:-1,"aria-hidden":!0,unstyled:s,...g,...R("remove",{className:g?.className,style:g?.style}),onMouseDown:T=>{T.preventDefault(),T.stopPropagation(),g?.onMouseDown?.(T)},onClick:T=>{T.stopPropagation(),f?.(),g?.onClick?.(T)}})]})});xj.classes=qk,xj.displayName="@mantine/core/Pill",xj.Group=bj;var wae={root:"m_f0824112",description:"m_57492dcc",section:"m_690090b5",label:"m_1f6ac4c4",body:"m_f07af9d2",children:"m_e17b862f",chevron:"m_1fd8a00b"};const Dat=(e,{variant:r,color:n,childrenOffset:o,autoContrast:a})=>{const i=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:r||"light",autoContrast:a});return{root:{"--nl-bg":n||r?i.background:void 0,"--nl-hover":n||r?i.hover:void 0,"--nl-color":n||r?i.color:void 0},children:{"--nl-offset":ro(o)}}},kae=Un((e,r)=>{const n=Re("NavLink",null,e),{classNames:o,className:a,style:i,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:z,autoContrast:j,mod:A,attributes:R,onClick:T,onKeyDown:O,...P}=n,L=dt({name:"NavLink",props:n,classes:wae,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:R,vars:c,varsResolver:Dat}),[H,M]=Md({value:d,defaultValue:u,finalValue:!1,onChange:p}),V=!!f,B=F=>{T?.(F),V&&(F.preventDefault(),M(!H))};return y.jsxs(y.Fragment,{children:[y.jsxs(ps,{...L("root"),component:"a",ref:r,onClick:B,onKeyDown:F=>{O?.(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(Te,{component:"span",...L("section"),mod:{position:"left"},children:w}),y.jsxs(Te,{...L("body"),mod:{"no-wrap":$},children:[y.jsx(Te,{component:"span",...L("label"),children:k}),y.jsx(Te,{component:"span",mod:{active:g},...L("description"),children:C})]}),(V||x!==void 0)&&y.jsx(Te,{...L("section"),component:"span",mod:{rotate:H&&!_,position:"right"},children:V?x!==void 0?x:y.jsx(ZR,{...L("chevron")}):x})]}),V&&y.jsx(Vre,{in:H,...L("collapse"),children:y.jsx("div",{...L("children"),children:f})})]})});kae.classes=wae,kae.displayName="@mantine/core/NavLink";var _ae={root:"m_a513464",icon:"m_a4ceffb",loader:"m_b0920b15",body:"m_a49ed24",title:"m_3feedf16",description:"m_3d733a3a",closeButton:"m_919a4d88"};const Mat={withCloseButton:!0},Nat=(e,{radius:r,color:n})=>({root:{"--notification-radius":r===void 0?void 0:hn(r),"--notification-color":n?qo(n,e):void 0}}),Sae=We((e,r)=>{const n=Re("Notification",Mat,e),{className:o,color:a,radius:i,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:z,role:j,attributes:A,...R}=n,T=dt({name:"Notification",classes:_ae,props:n,className:o,style:w,classNames:v,styles:x,unstyled:k,attributes:A,vars:_,varsResolver:Nat});return y.jsxs(Te,{...T("root"),mod:[{"data-with-icon":!!u||l,"data-with-border":c},$],ref:r,variant:C,role:j||"alert",...R,children:[u&&!l&&y.jsx("div",{...T("icon"),children:u}),l&&y.jsx(Ip,{size:28,color:a,...z,...T("loader")}),y.jsxs("div",{...T("body"),children:[d&&y.jsx("div",{...T("title"),children:d}),y.jsx(Te,{...T("description"),mod:{"data-with-title":!!d},children:p})]}),s&&y.jsx(Lp,{iconSize:16,color:"gray",...g,unstyled:k,onClick:f,...T("closeButton")})]})});Sae.classes=_ae,Sae.displayName="@mantine/core/Notification";const Pat={duration:100,transition:"fade"};function Eae(e,r){return{...Pat,...r,...e}}function Bat({offset:e,position:r,defaultOpened:n}){const[o,a]=S.useState(n),i=S.useRef(null),{x:l,y:s,elements:c,refs:d,update:u,placement:p}=jR({placement:r,middleware:[SR({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=i.current;w.addEventListener("mousemove",v);const x=fc(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:a,boundaryRef:i,floating:d.setFloating}}var Hk={tooltip:"m_1b3c8819",arrow:"m_f898399f"};const Oat={refProp:"ref",withinPortal:!0,offset:10,position:"right",zIndex:gl("popover")},Iat=(e,{radius:r,color:n})=>({tooltip:{"--tooltip-radius":r===void 0?void 0:hn(r),"--tooltip-bg":n?qo(n,e):void 0,"--tooltip-color":n?"var(--mantine-color-white)":void 0}}),wj=We((e,r)=>{const n=Re("TooltipFloating",Oat,e),{children:o,refProp:a,withinPortal:i,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:z,portalProps:j,attributes:A,...R}=n,T=uo(),O=dt({name:"TooltipFloating",props:n,classes:Hk,className:s,style:l,classNames:c,styles:d,unstyled:u,attributes:A,rootSelector:"tooltip",vars:z,varsResolver:Iat}),{handleMouseMove:P,x:L,y:H,opened:M,boundaryRef:V,floating:B,setOpened:F}=Bat({offset:v,position:w,defaultOpened:_});if(!ml(o))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 q=on(V,ek(o),r),G=o.props,U=Z=>{G.onMouseEnter?.(Z),P(Z),F(!0)},Y=Z=>{G.onMouseLeave?.(Z),F(!1)};return y.jsxs(y.Fragment,{children:[y.jsx(Op,{...j,withinPortal:i,children:y.jsx(Te,{...R,...O("tooltip",{style:{...iR(l,T),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(o,{...G,[a]:q,onMouseEnter:U,onMouseLeave:Y})]})});wj.classes=Hk,wj.displayName="@mantine/core/TooltipFloating";const Cae=S.createContext(!1),Lat=Cae.Provider,Fat=()=>S.useContext(Cae),Vat={openDelay:0,closeDelay:0};function kj(e){const{openDelay:r,closeDelay:n,children:o}=Re("TooltipGroup",Vat,e);return y.jsx(Lat,{value:!0,children:y.jsx(_ne,{delay:{open:r,close:n},children:o})})}kj.displayName="@mantine/core/TooltipGroup",kj.extend=e=>e;function qat(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 Hat(e){const r=qat(e.middlewares),n=[pne(e.offset)];return r.shift&&n.push(SR(typeof r.shift=="boolean"?{padding:8}:{padding:8,...r.shift})),r.flip&&n.push(typeof r.flip=="boolean"?bk():bk(r.flip)),n.push(fne({element:e.arrowRef,padding:e.arrowOffset})),r.inline?n.push(typeof r.inline=="boolean"?$0():$0(r.inline)):e.inline&&n.push($0()),n}function Uat(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,a=Fat(),i=vl(),l=S.useCallback($=>{n($),$&&x(i)},[i]),{x:s,y:c,context:d,refs:u,placement:p,middlewareData:{arrow:{x:f,y:g}={}}}=jR({strategy:e.strategy,placement:e.position,open:o,onOpenChange:l,middleware:Hat(e),whileElementsMounted:kR}),{delay:v,currentId:w,setCurrentId:x}=Yrt(d,{id:i}),{getReferenceProps:k,getFloatingProps:C}=ent([Wrt(d,{enabled:e.events?.hover,delay:a?v:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),Jrt(d,{enabled:e.events?.focus,visibleOnly:!0}),rnt(d,{role:"tooltip"}),Krt(d,{enabled:typeof e.opened>"u"})]);Tp(()=>{e.onPositionChange?.(p)},[p]);const _=o&&w&&w!==i;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 $ae={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:gl("popover"),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},Wat=(e,{radius:r,color:n,variant:o,autoContrast:a})=>{const i=e.variantColorResolver({theme:e,color:n||e.primaryColor,autoContrast:a,variant:o||"filled"});return{tooltip:{"--tooltip-radius":r===void 0?void 0:hn(r),"--tooltip-bg":n?i.background:void 0,"--tooltip-color":n?i.color:void 0}}},Uk=We((e,r)=>{const n=Re("Tooltip",$ae,e),{children:o,position:a,refProp:i,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:z,arrowOffset:j,arrowRadius:A,arrowPosition:R,offset:T,transitionProps:O,multiline:P,events:L,zIndex:H,disabled:M,positionDependencies:V,onClick:B,onMouseEnter:F,onMouseLeave:q,inline:G,variant:U,keepMounted:Y,vars:Z,portalProps:I,mod:W,floatingStrategy:K,middlewares:Q,autoContrast:ae,attributes:te,target:re,...ue}=Re("Tooltip",$ae,n),{dir:_e}=uc(),ce=S.useRef(null),pe=Uat({position:qne(_e,a),closeDelay:c,openDelay:s,onPositionChange:d,opened:u,defaultOpened:p,events:L,arrowRef:ce,arrowOffset:j,offset:typeof T=="number"?T+($?z/2:0):T,positionDependencies:[...V,re??o],inline:G,strategy:K,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:Hk,className:_,style:C,classNames:w,styles:x,unstyled:k,attributes:te,rootSelector:"tooltip",vars:Z,varsResolver:Wat});if(!re&&!ml(o))return null;if(re){const Le=Eae(O,{duration:100,transition:"fade"});return y.jsx(y.Fragment,{children:y.jsx(Op,{...I,withinPortal:f,children:y.jsx(kl,{...Le,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:Le.duration,children:St=>y.jsxs(Te,{...ue,"data-fixed":K==="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(Sk,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:z,arrowOffset:j,arrowRadius:A,arrowPosition:R,...xe("arrow")})]})})})})}const De=o,Be=De.props,Je=on(pe.reference,ek(De),r),st=Eae(O,{duration:100,transition:"fade"});return y.jsxs(y.Fragment,{children:[y.jsx(Op,{...I,withinPortal:f,children:y.jsx(kl,{...st,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:st.duration,children:Le=>y.jsxs(Te,{...ue,"data-fixed":K==="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(Sk,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:z,arrowOffset:j,arrowRadius:A,arrowPosition:R,...xe("arrow")})]})})}),S.cloneElement(De,pe.getReferenceProps({onClick:B,onMouseEnter:F,onMouseLeave:q,onMouseMove:n.onMouseMove,onPointerDown:n.onPointerDown,onPointerEnter:n.onPointerEnter,className:no(_,Be.className),...Be,[i]:Je}))]})});Uk.classes=Hk,Uk.displayName="@mantine/core/Tooltip",Uk.Floating=wj,Uk.Group=kj;var zae={root:"m_cf365364",indicator:"m_9e182ccd",label:"m_1738fcb2",input:"m_1714d588",control:"m_69686b9b",innerLabel:"m_78882f40"};const Gat={withItemsBorders:!0},Yat=(e,{radius:r,color:n,transitionDuration:o,size:a,transitionTimingFunction:i})=>({root:{"--sc-radius":r===void 0?void 0:hn(r),"--sc-color":n?qo(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":i,"--sc-padding":Qt(a,"sc-padding"),"--sc-font-size":Ro(a)}}),Rae=We((e,r)=>{const n=Re("SegmentedControl",Gat,e),{classNames:o,className:a,style:i,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:z,transitionTimingFunction:j,variant:A,autoContrast:R,withItemsBorders:T,mod:O,attributes:P,...L}=n,H=dt({name:"SegmentedControl",props:n,classes:zae,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:Yat}),M=uo(),V=d.map(re=>typeof re=="string"?{label:re,value:re}:re),B=aet(),[F,q]=S.useState(Gz()),[G,U]=S.useState(null),[Y,Z]=S.useState({}),I=(re,ue)=>{Y[ue]=re,Z(Y)},[W,K]=Md({value:u,defaultValue:p,finalValue:Array.isArray(d)?V.find(re=>!re.disabled)?.value??d[0]?.value??null:null,onChange:f}),Q=vl(v),ae=V.map(re=>S.createElement(Te,{...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&&K(re.value),"data-focus-ring":M.focusRing,key:`${re.value}-input`}),S.createElement(Te,{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=>I(ue,re.value),__vars:{"--sc-label-color":$!==void 0?Jz({color:$,theme:M,autoContrast:R}):void 0},key:`${re.value}-label`},y.jsx("span",{...H("innerLabel"),children:re.label})))),te=on(r,re=>U(re));return eet(()=>{q(Gz())},[d.length]),d.length===0?null:y.jsxs(Te,{...H("root"),variant:A,size:g,ref:te,mod:[{"full-width":k,orientation:C,initialized:B,"with-items-borders":T},O],...L,role:"radiogroup","data-disabled":w,children:[typeof W=="string"&&y.jsx(XR,{target:Y[W],parent:G,component:"span",transitionDuration:"var(--sc-transition-duration)",...H("indicator")},F),ae]})});Rae.classes=zae,Rae.displayName="@mantine/core/SegmentedControl";const Xat={withCheckIcon:!0,allowDeselect:!0,checkIconPosition:"left"},jae=We((e,r)=>{const n=Re("Select",Xat,e),{classNames:o,styles:a,unstyled:i,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:z,disabled:j,filter:A,limit:R,withScrollArea:T,maxDropdownHeight:O,size:P,searchable:L,rightSection:H,checkIconPosition:M,withCheckIcon:V,withAlignedLabels:B,nothingFoundMessage:F,name:q,form:G,searchValue:U,defaultSearchValue:Y,onSearchChange:Z,allowDeselect:I,error:W,rightSectionPointerEvents:K,id:Q,clearable:ae,clearButtonProps:te,hiddenInputProps:re,renderOption:ue,onClear:_e,autoComplete:ce,scrollAreaProps:pe,__defaultRightSection:xe,__clearSection:De,__clearable:Be,chevronColor:Je,autoSelectOnBlur:st,attributes:Le,...St}=n,Ve=S.useMemo(()=>vot(w),[w]),qe=S.useRef({}),Xe=S.useMemo(()=>woe(Ve),[Ve]),Ot=vl(Q),[Et,be,ke]=Md({value:x,defaultValue:k,finalValue:null,onChange:v}),Ye=typeof Et=="string"?Et in Xe?Xe[Et]:qe.current[Et]:void 0,yt=net(Ye),[xt,jr,er]=Md({value:U,defaultValue:Y,finalValue:Ye?Ye.label:"",onChange:Z}),qt=$oe({opened:s,defaultOpened:c,onDropdownOpen:()=>{u?.(),qt.updateSelectedOptionIndex("active",{scrollIntoView:!0})},onDropdownClose:()=>{d?.(),setTimeout(qt.resetSelectedOption,0)}}),Ht=fn=>{jr(fn),qt.resetSelectedOption()},{resolvedClassNames:Zr,resolvedStyles:Gt}=eR({props:n,styles:a,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=ae&&!!Et&&!j&&!z;return y.jsxs(y.Fragment,{children:[y.jsxs(xr,{store:qt,__staticSelector:"Select",classNames:Zr,styles:Gt,unstyled:i,readOnly:z,size:P,attributes:Le,keepMounted:st,onOptionSubmit:fn=>{_?.(fn);const oo=I&&Xe[fn].value===Et?null:Xe[fn],Uo=oo?oo.value:null;Uo!==Et&&be(Uo,oo),!ke&&Ht(typeof Uo=="string"&&oo?.label||""),qt.closeDropdown()},...$,children:[y.jsx(xr.Target,{targetType:L?"input":"button",autoComplete:ce,children:y.jsx(Ak,{id:Ot,ref:r,__defaultRightSection:y.jsx(xr.Chevron,{size:P,error:W,unstyled:i,color:Je}),__clearSection:ln,__clearable:Wn,rightSection:H,rightSectionPointerEvents:K||"none",...St,size:P,__staticSelector:"Select",disabled:j,readOnly:z||!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:Zr,styles:Gt,unstyled:i,pointer:!L,error:W,attributes:Le})}),y.jsx(Not,{data:Ve,hidden:z||j,filter:A,search:xt,limit:R,hiddenWhenEmpty:!F,withScrollArea:T,maxDropdownHeight:O,filterOptions:!!L&&Ye?.label!==xt,value:Et,checkIconPosition:M,withCheckIcon:V,withAlignedLabels:B,nothingFoundMessage:F,unstyled:i,labelId:St.label?`${Ot}-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:j,...re})]})});jae.classes={...Ak.classes,...xr.classes},jae.displayName="@mantine/core/Select";function Zat({spacing:e,verticalSpacing:r,cols:n,selector:o}){const a=uo(),i=r===void 0?e:r,l=Dd({"--sg-spacing-x":ro(yl(e)),"--sg-spacing-y":ro(yl(i)),"--sg-cols":yl(n)?.toString()}),s=zo(a.breakpoints).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=Wz(zo(s),a.breakpoints).filter(d=>zo(s[d.value]).length>0).map(d=>({query:`(min-width: ${a.breakpoints[d.value]})`,styles:s[d.value]}));return y.jsx(Mm,{styles:l,media:c,selector:o})}function _j(e){return typeof e=="object"&&e!==null?zo(e):[]}function Kat(e){return e.sort((r,n)=>Q2(r)-Q2(n))}function Qat({spacing:e,verticalSpacing:r,cols:n}){const o=Array.from(new Set([..._j(e),..._j(r),..._j(n)]));return Kat(o)}function Jat({spacing:e,verticalSpacing:r,cols:n,selector:o}){const a=r===void 0?e:r,i=Dd({"--sg-spacing-x":ro(yl(e)),"--sg-spacing-y":ro(yl(a)),"--sg-cols":yl(n)?.toString()}),l=Qat({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 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=l.map(d=>({query:`simple-grid (min-width: ${d})`,styles:s[d]}));return y.jsx(Mm,{styles:i,container:c,selector:o})}var Tae={container:"m_925c2d2c",root:"m_2415a157"};const eit={cols:1,spacing:"md",type:"media"},Aae=We((e,r)=>{const n=Re("SimpleGrid",eit,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,cols:d,verticalSpacing:u,spacing:p,type:f,attributes:g,...v}=n,w=dt({name:"SimpleGrid",classes:Tae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c}),x=_0();return f==="container"?y.jsxs(y.Fragment,{children:[y.jsx(Jat,{...n,selector:`.${x}`}),y.jsx("div",{...w("container"),children:y.jsx(Te,{ref:r,...w("root",{className:x}),...v})})]}):y.jsxs(y.Fragment,{children:[y.jsx(Zat,{...n,selector:`.${x}`}),y.jsx(Te,{ref:r,...w("root",{className:x}),...v})]})});Aae.classes=Tae,Aae.displayName="@mantine/core/SimpleGrid";const[tit,Wk]=ja("SliderProvider was not found in tree"),Dae=S.forwardRef(({size:e,disabled:r,variant:n,color:o,thumbSize:a,radius:i,...l},s)=>{const{getStyles:c}=Wk();return y.jsx(Te,{tabIndex:-1,variant:n,size:e,ref:s,...c("root"),...l})});Dae.displayName="@mantine/core/SliderRoot";const Mae=S.forwardRef(({max:e,min:r,value:n,position:o,label:a,dragging:i,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}=Wk(),[_,$]=S.useState(!1),z=d||i||_||g&&v;return y.jsxs(Te,{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:i,disabled:x},onFocus:j=>{$(!0),typeof p=="function"&&p(j)},onBlur:j=>{$(!1),typeof f=="function"&&f(j)},onTouchStart:l,onMouseDown:l,onKeyDownCapture:s,onClick:j=>j.stopPropagation(),children:[w,y.jsx(kl,{mounted:a!=null&&!!z,transition:"fade",duration:0,...c,children:j=>y.jsx("div",{...C("label",{style:j}),children:a})})]})});Mae.displayName="@mantine/core/SliderThumb";function Nae({value:e,min:r,max:n}){const o=(e-r)/(n-r)*100;return Math.min(Math.max(o,0),100)}function rit({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 Pae({marks:e,min:r,max:n,disabled:o,value:a,offset:i,inverted:l}){const{getStyles:s}=Wk();if(!e)return null;const c=e.map((d,u)=>S.createElement(Te,{...s("markWrapper"),__vars:{"--mark-offset":`${Nae({value:d.value,min:r,max:n})}%`},key:u},y.jsx(Te,{...s("mark"),mod:{filled:rit({mark:d,value:a,offset:i,inverted:l}),disabled:o}}),d.label&&y.jsx("div",{...s("markLabel"),children:d.label})));return y.jsx("div",{children:c})}Pae.displayName="@mantine/core/SliderMarks";function Bae({filled:e,children:r,offset:n,disabled:o,marksOffset:a,inverted:i,containerProps:l,...s}){const{getStyles:c}=Wk();return y.jsx(Te,{...c("trackContainer"),mod:{disabled:o},...l,children:y.jsxs(Te,{...c("track"),mod:{inverted:i,disabled:o},children:[y.jsx(Te,{mod:{inverted:i,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(Pae,{...s,offset:a,disabled:o,inverted:i})]})})}Bae.displayName="@mantine/core/SliderTrack";function nit({value:e,containerWidth:r,min:n,max:o,step:a,precision:i}){const l=(r?Math.min(Math.max(e,0),r)/r:e)*(o-n),s=(l!==0?Math.round(l/a)*a:0)+n,c=Math.max(s,n);return i!==void 0?Number(c.toFixed(i)):c}function Gk(e,r){return parseFloat(e.toFixed(r))}function oit(e){if(!e)return 0;const r=e.toString().split(".");return r.length>1?r[1].length:0}function Sj(e,r){const n=[...r].sort((o,a)=>o.value-a.value).find(o=>o.value>e);return n?n.value:e}function Ej(e,r){const n=[...r].sort((o,a)=>a.value-o.value).find(o=>o.valuen.value-o.value);return r.length>0?r[0].value:0}function Iae(e){const r=[...e].sort((n,o)=>n.value-o.value);return r.length>0?r[r.length-1].value:100}var Lae={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 ait={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"},iit=(e,{size:r,color:n,thumbSize:o,radius:a})=>({root:{"--slider-size":Qt(r,"slider-size"),"--slider-color":n?qo(n,e):void 0,"--slider-radius":a===void 0?void 0:hn(a),"--slider-thumb-size":o!==void 0?Pe(o):"calc(var(--slider-size) * 2)"}}),Fae=We((e,r)=>{const n=Re("Slider",ait,e),{classNames:o,styles:a,value:i,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:z,thumbChildren:j,disabled:A,unstyled:R,scale:T,inverted:O,className:P,style:L,vars:H,hiddenInputProps:M,restrictToMarks:V,thumbProps:B,attributes:F,...q}=n,G=dt({name:"Slider",props:n,classes:Lae,classNames:o,className:P,styles:a,style:L,attributes:F,vars:H,varsResolver:iit,unstyled:R}),{dir:U}=uc(),[Y,Z]=S.useState(!1),[I,W]=Md({value:typeof i=="number"?Tm(i,d,u):i,defaultValue:typeof v=="number"?Tm(v,d,u):v,finalValue:Tm(0,d,u),onChange:l}),K=S.useRef(I),Q=S.useRef(s);S.useEffect(()=>{Q.current=s},[s]);const ae=S.useRef(null),te=S.useRef(null),[re,ue]=p||[d,u],_e=Nae({value:I,min:re,max:ue}),ce=T(I),pe=typeof k=="function"?k(ce):k,xe=g??oit(f),De=S.useCallback(({x:Ve})=>{if(!A){const qe=nit({value:Ve,min:re,max:ue,step:f,precision:xe}),Xe=Tm(qe,d,u);W(V&&x?.length?$re(Xe,x.map(Ot=>Ot.value)):Xe),K.current=Xe}},[A,d,u,re,ue,f,xe,W,x,V]),Be=S.useCallback(()=>{if(!A&&Q.current){const Ve=V&&x?.length?$re(K.current,x.map(qe=>qe.value)):K.current;Q.current(Ve)}},[A,x,V]),{ref:Je,active:st}=KJe(De,{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=Sj(I,x);W(Xe),Le(Xe);break}const qe=Gk(Math.min(Math.max(I+f,d),u),xe);W(qe),Le(qe);break}case"ArrowRight":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?Ej(I,x):Sj(I,x);W(Xe),Le(Xe);break}const qe=Gk(Math.min(Math.max(U==="rtl"?I-f:I+f,d),u),xe);W(qe),Le(qe);break}case"ArrowDown":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=Ej(I,x);W(Xe),Le(Xe);break}const qe=Gk(Math.min(Math.max(I-f,d),u),xe);W(qe),Le(qe);break}case"ArrowLeft":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?Sj(I,x):Ej(I,x);W(Xe),Le(Xe);break}const qe=Gk(Math.min(Math.max(U==="rtl"?I+f:I-f,d),u),xe);W(qe),Le(qe);break}case"Home":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(Oae(x)),Le(Oae(x));break}W(d),Le(d);break}case"End":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(Iae(x)),Le(Iae(x));break}W(u),Le(u);break}}};return y.jsx(tit,{value:{getStyles:G},children:y.jsxs(Dae,{...q,ref:on(r,ae),onKeyDownCapture:St,onMouseDownCapture:()=>ae.current?.focus(),size:c,disabled:A,children:[y.jsx(Bae,{inverted:O,offset:0,filled:_e,marks:x,min:re,max:ue,value:ce,disabled:A,containerProps:{ref:Je,onMouseEnter:z?()=>Z(!0):void 0,onMouseLeave:z?()=>Z(!1):void 0},children:y.jsx(Mae,{max:ue,min:re,value:ce,position:_e,dragging:st,label:pe,ref:te,labelTransitionProps:C,labelAlwaysOn:_,thumbLabel:$,showLabelOnHover:z,isHovered:Y,disabled:A,...B,children:j})}),y.jsx("input",{type:"hidden",name:w,value:ce,...M})]})})});Fae.classes=Lae,Fae.displayName="@mantine/core/Slider";const lit=We((e,r)=>{const{w:n,h:o,miw:a,mih:i,...l}=Re("Space",null,e);return y.jsx(Te,{ref:r,...l,w:n,miw:a??n,h:o,mih:i??o})});lit.displayName="@mantine/core/Space";var Vae={root:"m_6d731127"};const sit={gap:"md",align:"stretch",justify:"flex-start"},cit=(e,{gap:r,align:n,justify:o})=>({root:{"--stack-gap":ro(r),"--stack-align":n,"--stack-justify":o}}),qae=We((e,r)=>{const n=Re("Stack",sit,e),{classNames:o,className:a,style:i,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:Vae,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:cit});return y.jsx(Te,{ref:r,...w("root"),variant:f,...v})});qae.classes=Vae,qae.displayName="@mantine/core/Stack";const[dit,Cj]=ja("Tabs component was not found in the tree");var D0={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 $j=We((e,r)=>{const n=Re("TabsList",null,e),{children:o,className:a,grow:i,justify:l,classNames:s,styles:c,style:d,mod:u,...p}=n,f=Cj();return y.jsx(Te,{...p,...f.getStyles("list",{className:a,style:d,classNames:s,styles:c,props:n,variant:f.variant}),ref:r,role:"tablist",variant:f.variant,mod:[{grow:i,orientation:f.orientation,placement:f.orientation==="vertical"&&f.placement,inverted:f.inverted},u],"aria-orientation":f.orientation,__vars:{"--tabs-justify":l},children:o})});$j.classes=D0,$j.displayName="@mantine/core/TabsList";const zj=We((e,r)=>{const n=Re("TabsPanel",null,e),{children:o,className:a,value:i,classNames:l,styles:s,style:c,mod:d,keepMounted:u,...p}=n,f=Cj(),g=f.value===i,v=f.keepMounted||u||g?o:null;return y.jsx(Te,{...f.getStyles("panel",{className:a,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(i),"aria-labelledby":f.getTabId(i),...p,children:v})});zj.classes=D0,zj.displayName="@mantine/core/TabsPanel";const Rj=We((e,r)=>{const n=Re("TabsTab",null,e),{className:o,children:a,rightSection:i,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:$}=uc(),z=Cj(),j=s===z.value,A=T=>{z.onChange(z.allowTabDeactivation&&s===z.value?null:s),c?.(T)},R={classNames:g,styles:v,props:n};return y.jsxs(ps,{...z.getStyles("tab",{className:o,style:f,variant:z.variant,...R}),disabled:u,unstyled:z.unstyled,variant:z.variant,mod:[{active:j,disabled:u,orientation:z.orientation,inverted:z.inverted,placement:z.orientation==="vertical"&&z.placement},x],ref:r,role:"tab",id:z.getTabId(s),"aria-selected":j,tabIndex:k!==void 0?k:j||z.value===null?0:-1,"aria-controls":z.getPanelId(s),onClick:A,__vars:{"--tabs-color":p?qo(p,_):void 0},onKeyDown:Hz({siblingSelector:'[role="tab"]',parentSelector:'[role="tablist"]',activateOnFocus:z.activateTabWithKeyboard,loop:z.loop,orientation:z.orientation||"horizontal",dir:$,onKeyDown:d}),...C,children:[l&&y.jsx("span",{...z.getStyles("tabSection",R),"data-position":"left",children:l}),a&&y.jsx("span",{...z.getStyles("tabLabel",R),children:a}),i&&y.jsx("span",{...z.getStyles("tabSection",R),"data-position":"right",children:i})]})});Rj.classes=D0,Rj.displayName="@mantine/core/TabsTab";const Hae="Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value",uit={keepMounted:!0,orientation:"horizontal",loop:!0,activateTabWithKeyboard:!0,variant:"default",placement:"left"},pit=(e,{radius:r,color:n,autoContrast:o})=>({root:{"--tabs-radius":hn(r),"--tabs-color":qo(n,e),"--tabs-text-color":qet(o,e)?Jz({color:n,theme:e,autoContrast:o}):void 0}}),M0=We((e,r)=>{const n=Re("Tabs",uit,e),{defaultValue:o,value:a,onChange:i,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:z,style:j,vars:A,autoContrast:R,mod:T,attributes:O,...P}=n,L=vl(d),[H,M]=Md({value:a,defaultValue:o,finalValue:null,onChange:i}),V=dt({name:"Tabs",props:n,classes:D0,className:z,style:j,classNames:C,styles:_,unstyled:$,attributes:O,vars:A,varsResolver:pit});return y.jsx(dit,{value:{placement:x,value:H,orientation:l,id:L,loop:c,activateTabWithKeyboard:u,getTabId:bre(`${L}-tab`,Hae),getPanelId:bre(`${L}-panel`,Hae),onChange:M,allowTabDeactivation:p,variant:f,color:g,radius:v,inverted:w,keepMounted:k,unstyled:$,getStyles:V},children:y.jsx(Te,{ref:r,id:L,variant:f,mod:[{orientation:l,inverted:l==="horizontal"&&w,placement:l==="vertical"&&x},T],...V("root"),...P,children:s})})});M0.classes=D0,M0.displayName="@mantine/core/Tabs",M0.Tab=Rj,M0.Panel=zj,M0.List=$j;var Uae={root:"m_7341320d"};const hit=(e,{size:r,radius:n,variant:o,gradient:a,color:i,autoContrast:l})=>{const s=e.variantColorResolver({color:i||e.primaryColor,theme:e,gradient:a,variant:o||"filled",autoContrast:l});return{root:{"--ti-size":Qt(r,"ti-size"),"--ti-radius":n===void 0?void 0:hn(n),"--ti-bg":i||o?s.background:void 0,"--ti-color":i||o?s.color:void 0,"--ti-bd":i||o?s.border:void 0}}},Wae=We((e,r)=>{const n=Re("ThemeIcon",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,autoContrast:d,attributes:u,...p}=n,f=dt({name:"ThemeIcon",classes:Uae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,vars:c,varsResolver:hit});return y.jsx(Te,{ref:r,...f("root"),...p})});Wae.classes=Uae,Wae.displayName="@mantine/core/ThemeIcon";const fit=["h1","h2","h3","h4","h5","h6"],mit=["xs","sm","md","lg","xl"];function git(e,r){const n=r!==void 0?r:`h${e}`;return fit.includes(n)?{fontSize:`var(--mantine-${n}-font-size)`,fontWeight:`var(--mantine-${n}-font-weight)`,lineHeight:`var(--mantine-${n}-line-height)`}:mit.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 Gae={root:"m_8a5d1357"};const yit={order:1},vit=(e,{order:r,size:n,lineClamp:o,textWrap:a})=>{const i=git(r||1,n);return{root:{"--title-fw":i.fontWeight,"--title-lh":i.lineHeight,"--title-fz":i.fontSize,"--title-line-clamp":typeof o=="number"?o.toString():void 0,"--title-text-wrap":a}}},Yae=We((e,r)=>{const n=Re("Title",yit,e),{classNames:o,className:a,style:i,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:Gae,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:d,varsResolver:vit});return[1,2,3,4,5,6].includes(c)?y.jsx(Te,{...k("root"),component:`h${c}`,variant:p,ref:r,mod:[{order:c,"data-line-clamp":typeof f=="number"},v],size:u,...x}):null});Yae.classes=Gae,Yae.displayName="@mantine/core/Title";function Xae(e,r,n){if(!e||!r)return[];const o=n.indexOf(e),a=n.indexOf(r),i=Math.min(o,a),l=Math.max(o,a);return n.slice(i,l+1)}function jj({node:e,getStyles:r,rootIndex:n,controller:o,expandOnClick:a,selectOnClick:i,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(jj,{node:_,flatValues:d,getStyles:r,rootIndex:void 0,level:s+1,controller:o,expandOnClick:a,isSubtree:!0,renderNode:c,selectOnClick:i,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&&x0(_.currentTarget,"[role=treeitem]")?.focus()),_.nativeEvent.code==="ArrowDown"||_.nativeEvent.code==="ArrowUp"){const $=x0(_.currentTarget,"[data-tree-root]");if(!$)return;_.stopPropagation(),_.preventDefault();const z=Array.from($.querySelectorAll("[role=treeitem]")),j=z.indexOf(_.currentTarget);if(j===-1)return;const A=_.nativeEvent.code==="ArrowDown"?j+1:j-1;if(z[A]?.focus(),_.shiftKey){const R=z[A];R&&o.setSelectedState(Xae(o.anchorNode,R.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(Xae(o.anchorNode,e.value,d)),g.current?.focus()):(a&&o.toggleExpanded(e.value),i&&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(Te,{component:"ul",role:"group",...r("subtree"),"data-level":s,children:v})]})}jj.displayName="@mantine/core/TreeNode";function Yk(e,r,n=[]){const o=[];for(const a of e)if(Array.isArray(a.children)&&a.children.length>0){const i=Yk(a.children,r,n);if(i.currentTreeChecked.length===a.children.length){const l=i.currentTreeChecked.every(c=>c.checked),s={checked:l,indeterminate:!l,value:a.value,hasChildren:!0};o.push(s),n.push(s)}else if(i.currentTreeChecked.length>0){const l={checked:!1,indeterminate:!0,value:a.value,hasChildren:!0};o.push(l),n.push(l)}}else if(r.includes(a.value)){const i={checked:!0,indeterminate:!1,value:a.value,hasChildren:!1};o.push(i),n.push(i)}return{result:n,currentTreeChecked:o}}function Zae(e,r){for(const n of r){if(n.value===e)return n;if(Array.isArray(n.children)){const o=Zae(e,n.children);if(o)return o}}return null}function Xk(e,r,n=[]){const o=Zae(e,r);return o?!Array.isArray(o.children)||o.children.length===0?[o.value]:(o.children.forEach(a=>{Array.isArray(a.children)&&a.children.length>0?Xk(a.value,r,n):n.push(a.value)}),n):n}function Kae(e){return e.reduce((r,n)=>(Array.isArray(n.children)&&n.children.length>0?r.push(...Kae(n.children)):r.push(n.value),r),[])}function bit(e,r,n){return n.length===0?!1:n.includes(e)?!0:Yk(r,n).result.some(o=>o.value===e&&o.checked)}const xit=Cre(bit);function wit(e,r,n){return n.length===0?!1:Yk(r,n).result.some(o=>o.value===e&&o.indeterminate)}const kit=Cre(wit);function Qae(e,r,n,o={}){return r.forEach(a=>{o[a.value]=a.value in e?e[a.value]:a.value===n,Array.isArray(a.children)&&Qae(e,a.children,n,o)}),o}function _it(e,r){const n=[];return e.forEach(o=>n.push(...Xk(o,r))),Array.from(new Set(n))}function Sit({initialSelectedState:e=[],initialCheckedState:r=[],initialExpandedState:n={},multiple:o=!1,onNodeCollapse:a,onNodeExpand:i}={}){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=>Qae(F,B,u)),g(F=>_it(F,B)),s(B)},[u,f]),_=S.useCallback(B=>{d(F=>{const q={...F,[B]:!F[B]};return q[B]?i?.(B):a?.(B),q})},[a,i]),$=S.useCallback(B=>{d(F=>(F[B]!==!1&&a?.(B),{...F,[B]:!1}))},[a]),z=S.useCallback(B=>{d(F=>(F[B]!==!0&&i?.(B),{...F,[B]:!0}))},[i]),j=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})},[]),R=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])),[]),T=S.useCallback(B=>{w(B),p(F=>o?F.includes(B)?F:[...F,B]:[B])},[]),O=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=Xk(B,l);g(q=>Array.from(new Set([...q,...F])))},[l]),H=S.useCallback(B=>{const F=Xk(B,l);g(q=>q.filter(G=>!F.includes(G)))},[l]),M=S.useCallback(()=>{g(()=>Kae(l))},[l]),V=S.useCallback(()=>{g([])},[]);return{multiple:o,expandedState:c,selectedState:u,checkedState:f,anchorNode:v,initialize:C,toggleExpanded:_,collapse:$,expand:z,expandAllNodes:j,collapseAllNodes:A,setExpandedState:d,checkNode:L,uncheckNode:H,checkAllNodes:M,uncheckAllNodes:V,setCheckedState:g,toggleSelected:R,select:T,deselect:O,clearSelected:P,setSelectedState:p,hoveredNode:x,setHoveredNode:k,getCheckedNodes:()=>Yk(l,f).result,isNodeChecked:B=>xit(B,l,f),isNodeIndeterminate:B=>kit(B,l,f)}}var Jae={root:"m_f698e191",subtree:"m_75f3ecf",node:"m_f6970eb1",label:"m_dc283425"};function eie(e){return e.reduce((r,n)=>(r.push(n.value),n.children&&r.push(...eie(n.children)),r),[])}const Eit={expandOnClick:!0,allowRangeSelection:!0,expandOnSpace:!0},Cit=(e,{levelOffset:r})=>({root:{"--level-offset":ro(r)}}),tie=We((e,r)=>{const n=Re("Tree",Eit,e),{classNames:o,className:a,style:i,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,z=Sit(),j=p||z,A=dt({name:"Tree",classes:Jae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:Cit}),R=xre(()=>v&&j.clearSelected()),T=on(r,R),O=S.useMemo(()=>eie(d),[d]);S.useEffect(()=>{j.initialize(d)},[d]);const P=d.map((L,H)=>y.jsx(jj,{node:L,getStyles:A,rootIndex:H,expandOnClick:u,selectOnClick:g,controller:j,renderNode:f,flatValues:O,allowRangeSelection:w,expandOnSpace:x,checkOnSpace:C},L.value));return y.jsx(Te,{component:"ul",ref:T,...A("root"),...$,role:"tree","aria-multiselectable":j.multiple,"data-tree-root":!0,children:P})});tie.displayName="@mantine/core/Tree",tie.classes=Jae;var $it="Invariant failed";function Zk(e,r){if(!e)throw new Error($it)}function zit(e){return typeof e=="function"}function rie(e,r){return zit(e)?e(r):e}function Rit(e,r){return r.reduce((n,o)=>(n[o]=e[o],n),{})}function nie(e,r){if(e===r)return e;const n=r,o=aie(e)&&aie(n);if(o||Kk(e)&&Kk(n)){const a=o?e:Object.keys(e),i=a.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!(!oie(n)||!n.hasOwnProperty("isPrototypeOf"))}function oie(e){return Object.prototype.toString.call(e)==="[object Object]"}function aie(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function iie(e,r){let n=Object.keys(e);return r&&(n=n.filter(o=>e[o]!==void 0)),n}function Tj(e,r,n){if(e===r)return!0;if(typeof e!=typeof r)return!1;if(Kk(e)&&Kk(r)){const o=n?.ignoreUndefined??!0,a=iie(e,o),i=iie(r,o);return!n?.partial&&a.length!==i.length?!1:i.every(l=>Tj(e[l],r[l],n))}return Array.isArray(e)&&Array.isArray(r)?e.length!==r.length?!1:!e.some((o,a)=>!Tj(o,r[a],n)):!1}function jit(e){let r,n;const o=new Promise((a,i)=>{r=a,n=i});return o.status="pending",o.resolve=a=>{o.status="resolved",o.value=a,r(a)},o.reject=a=>{o.status="rejected",n(a)},o}function Qk(e,r){return e?.endsWith("/")&&e!=="/"&&e!==`${r}/`?e.slice(0,-1):e}function Tit(e,r,n){return Qk(e,n)===Qk(r,n)}function Jk(e){return!!e?.isNotFound}const lie="tsr-scroll-restoration-v1_3";let sie=!1;try{sie=typeof window<"u"&&typeof window.sessionStorage=="object"}catch{}sie&&JSON.parse(window.sessionStorage.getItem(lie)||"null");const cie=e=>e.state.key||e.href;function Ait(e,r,n,o,a){var i;let l;try{l=JSON.parse(sessionStorage.getItem(e)||"{}")}catch(d){console.error(d);return}const s=r||((i=window.history.state)==null?void 0:i.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",...a?.filter(u=>u!=="window")??[]].forEach(u=>{const p=u==="window"?window:document.querySelector(u);p&&p.scrollTo({top:0,left:0,behavior:n})})})()}const die="__root__";function Dit(e){return!!e?.isRedirect}function Mit(e){const r=e.resolvedLocation,n=e.location,o=r?.pathname!==n.pathname,a=r?.href!==n.href,i=r?.hash!==n.hash;return{fromLocation:r,toLocation:n,pathChanged:o,hrefChanged:a,hashChanged:i}}const Nit="Error preloading route! ☝️";function uie(e){const r=e.errorComponent??Aj;return y.jsx(Pit,{getResetKey:e.getResetKey,onCatch:e.onCatch,children:({error:n,reset:o})=>n?S.createElement(r,{error:n,reset:o}):e.children})}class Pit 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 Aj({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 Bit(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var pie={exports:{}},Dj={},hie={exports:{}},Mj={},fie;function Oit(){if(fie)return Mj;fie=1;var e=Kr;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,a=e.useEffect,i=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 i(function(){w.value=g,w.getSnapshot=f,c(w)&&x({inst:w})},[p,g,f]),a(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 Mj.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:u,Mj}var mie;function gie(){return mie||(mie=1,hie.exports=Oit()),hie.exports}var yie;function Iit(){if(yie)return Dj;yie=1;var e=Kr,r=gie();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,a=r.useSyncExternalStore,i=e.useRef,l=e.useEffect,s=e.useMemo,c=e.useDebugValue;return Dj.useSyncExternalStoreWithSelector=function(d,u,p,f,g){var v=i(null);if(v.current===null){var w={hasValue:!1,value:null};v.current=w}else w=v.current;v=s(function(){function k(j){if(!C){if(C=!0,_=j,j=f(j),g!==void 0&&w.hasValue){var A=w.value;if(g(A,j))return $=A}return $=j}if(A=$,o(_,j))return A;var R=f(j);return g!==void 0&&g(A,R)?(_=j,A):(_=j,$=R)}var C=!1,_,$,z=p===void 0?null:p;return[function(){return k(u())},z===null?void 0:function(){return k(z())}]},[u,p,f,g]);var x=a(d,v[0],v[1]);return l(function(){w.hasValue=!0,w.value=x},[x]),c(x),x},Dj}var vie;function Lit(){return vie||(vie=1,pie.exports=Iit()),pie.exports}var bie=Lit();const Fit=Bit(bie);function Vit(e,r=n=>n){return bie.useSyncExternalStoreWithSelector(e.subscribe,()=>e.state,()=>e.state,r,qit)}function qit(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,a]of e)if(!r.has(o)||!Object.is(a,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"?Nj:window.__TSR_ROUTER_CONTEXT__?window.__TSR_ROUTER_CONTEXT__:(window.__TSR_ROUTER_CONTEXT__=Nj,Nj)}function Fp(e){const r=S.useContext(Hit());return e?.warn,r}function Sl(e){const r=Fp({warn:e?.router===void 0}),n=e?.router||r,o=S.useRef(void 0);return Vit(n.__store,a=>{if(e?.select){if(e.structuralSharing??n.options.defaultStructuralSharing){const i=nie(o.current,e.select(a));return o.current=i,i}return e.select(a)}return a})}const xie=S.createContext(void 0);S.createContext(void 0);function Uit(e){const r=Sl({select:n=>`not-found-${n.location.pathname}-${n.status}`});return y.jsx(uie,{getResetKey:()=>r,onCatch:(n,o)=>{var a;if(Jk(n))(a=e.onCatch)==null||a.call(e,n,o);else throw n},errorComponent:({error:n})=>{var o;if(Jk(n))return(o=e.fallback)==null?void 0:o.call(e,n);throw n},children:e.children})}function Wit(){return y.jsx("p",{children:"Not Found"})}function Pj(e){return y.jsx(y.Fragment,{children:e.children})}function wie(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(Wit,{})}var Bj,kie;function Git(){if(kie)return Bj;kie=1;const e={},r=e.hasOwnProperty,n=(R,T)=>{for(const O in R)r.call(R,O)&&T(O,R[O])},o=(R,T)=>(T&&n(T,(O,P)=>{R[O]=P}),R),a=(R,T)=>{const O=R.length;let P=-1;for(;++P"\\u"+("0000"+R).slice(-4),l=(R,T)=>{let O=R.toString(16);return T?O:O.toUpperCase()},s=e.toString,c=Array.isArray,d=R=>typeof Buffer=="function"&&Buffer.isBuffer(R),u=R=>s.call(R)=="[object Object]",p=R=>typeof R=="string"||s.call(R)=="[object String]",f=R=>typeof R=="number"||s.call(R)=="[object Number]",g=R=>typeof R=="bigint",v=R=>typeof R=="function",w=R=>s.call(R)=="[object Map]",x=R=>s.call(R)=="[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]/,z=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^]/g,j=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^ !#-&\(-\[\]-_a-~]/g,A=(R,T)=>{const O=()=>{F=B,++T.indentLevel,B=T.indent.repeat(T.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=T&&T.json;L&&(P.quotes="double",P.wrap=!0),T=o(P,T),T.quotes!="single"&&T.quotes!="double"&&T.quotes!="backtick"&&(T.quotes="single");const H=T.quotes=="double"?'"':T.quotes=="backtick"?"`":"'",M=T.compact,V=T.lowercaseHex;let B=T.indent.repeat(T.indentLevel),F="";const q=T.__inline1__,G=T.__inline2__,U=M?"":` +`)},_Je=0,Rm=[];function SJe(e){var r=S.useRef([]),n=S.useRef([0,0]),o=S.useRef(),a=S.useState(_Je++)[0],i=S.useState(lre)[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(a));var w=UQe([e.lockRef.current],(e.shards||[]).map(fre)).filter(Boolean);return w.forEach(function(x){return x.classList.add("allow-interactivity-".concat(a))}),function(){document.body.classList.remove("block-interactivity-".concat(a)),w.forEach(function(x){return x.classList.remove("allow-interactivity-".concat(a))})}}},[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=K2(w),C=n.current,_="deltaX"in w?w.deltaX:C[0]-k[0],$="deltaY"in w?w.deltaY:C[1]-k[1],z,j=w.target,A=Math.abs(_)>Math.abs($)?"h":"v";if("touches"in w&&A==="h"&&j.type==="range")return!1;var R=dre(A,j);if(!R)return!0;if(R?z=A:(z=A==="v"?"h":"v",R=dre(A,j)),!R)return!1;if(!o.current&&"changedTouches"in w&&(_||$)&&(o.current=z),!z)return!0;var T=o.current||z;return xJe(T,x,w,T==="h"?_:$)},[]),c=S.useCallback(function(w){var x=w;if(!(!Rm.length||Rm[Rm.length-1]!==i)){var k="deltaY"in x?hre(x):K2(x),C=r.current.filter(function(z){return z.name===x.type&&(z.target===x.target||x.target===z.shadowParent)&&wJe(z.delta,k)})[0];if(C&&C.should){x.cancelable&&x.preventDefault();return}if(!C){var _=(l.current.shards||[]).map(fre).filter(Boolean).filter(function(z){return z.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:EJe(k)};r.current.push(_),setTimeout(function(){r.current=r.current.filter(function($){return $!==_})},1)},[]),u=S.useCallback(function(w){n.current=K2(w),o.current=void 0},[]),p=S.useCallback(function(w){d(w.type,hre(w),w.target,s(w,e.lockRef.current))},[]),f=S.useCallback(function(w){d(w.type,K2(w),w.target,s(w,e.lockRef.current))},[]);S.useEffect(function(){return Rm.push(i),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:f}),document.addEventListener("wheel",c,zm),document.addEventListener("touchmove",c,zm),document.addEventListener("touchstart",u,zm),function(){Rm=Rm.filter(function(w){return w!==i}),document.removeEventListener("wheel",c,zm),document.removeEventListener("touchmove",c,zm),document.removeEventListener("touchstart",u,zm)}},[]);var g=e.removeScrollBar,v=e.inert;return S.createElement(S.Fragment,null,v?S.createElement(i,{styles:kJe(a)}):null,g?S.createElement(hJe,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function EJe(e){for(var r=null;e!==null;)e instanceof ShadowRoot&&(r=e.host,e=e.host),e=e.parentNode;return r}const CJe=eJe(ire,SJe);var mre=S.forwardRef(function(e,r){return S.createElement(X2,is({},e,{ref:r,sideCar:CJe}))});mre.classNames=X2.classNames;function zo(e){return Object.keys(e)}function $Je(e){return e.replace(/[A-Z]/g,r=>`-${r.toLowerCase()}`)}function zJe(e){return typeof e!="string"||!e.includes("var(--mantine-scale)")?e:e.match(/^calc\((.*?)\)$/)?.[1].split("*")[0].trim()}function Q2(e){const r=zJe(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 gre(e){return e==="0rem"?"0rem":`calc(${e} * var(--mantine-scale))`}function yre(e,{shouldScale:r=!1}={}){function n(o){if(o===0||o==="0")return`0${e}`;if(typeof o=="number"){const a=`${o/16}${e}`;return r?gre(a):a}if(typeof o=="string"){if(o===""||o.startsWith("calc(")||o.startsWith("clamp(")||o.includes("rgba("))return o;if(o.includes(","))return o.split(",").map(i=>n(i)).join(",");if(o.includes(" "))return o.split(" ").map(i=>n(i)).join(" ");const a=o.replace("px","");if(!Number.isNaN(Number(a))){const i=`${Number(a)/16}${e}`;return r?gre(i):i}}return o}return n}const Pe=yre("rem",{shouldScale:!0});yre("em");function Dd(e){return Object.keys(e).reduce((r,n)=>(e[n]!==void 0&&(r[n]=e[n]),r),{})}function vre(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 ml(e){return Array.isArray(e)||e===null?!1:typeof e=="object"?e.type!==S.Fragment:!1}function ja(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 jm(e=null){const r=S.createContext(e);return[({children:n,value:o})=>y.jsx(r.Provider,{value:o,children:n}),()=>S.useContext(r)]}function bre(e,r){return n=>{if(typeof n!="string"||n.trim().length===0)throw new Error(r);return`${e}-${n}`}}function x0(e,r){let n=e;for(;(n=n.parentElement)&&!n.matches(r););return n}function RJe(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 jJe(e,r,n){for(let o=e+1;o{n?.(s);const c=Array.from(x0(s.currentTarget,e)?.querySelectorAll(r)||[]).filter(v=>TJe(s.currentTarget,v,e)),d=c.findIndex(v=>s.currentTarget===v),u=jJe(d,c,o),p=RJe(d,c,o),f=i==="rtl"?p:u,g=i==="rtl"?u:p;switch(s.key){case"ArrowRight":{l==="horizontal"&&(s.stopPropagation(),s.preventDefault(),c[f].focus(),a&&c[f].click());break}case"ArrowLeft":{l==="horizontal"&&(s.stopPropagation(),s.preventDefault(),c[g].focus(),a&&c[g].click());break}case"ArrowUp":{l==="vertical"&&(s.stopPropagation(),s.preventDefault(),c[p].focus(),a&&c[p].click());break}case"ArrowDown":{l==="vertical"&&(s.stopPropagation(),s.preventDefault(),c[u].focus(),a&&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 AJe={app:100,modal:200,popover:300,overlay:400,max:9999};function gl(e){return AJe[e]}const DJe=()=>{};function MJe(e,r={active:!0}){return typeof e!="function"||!r.active?r.onKeyDown||DJe:n=>{n.key==="Escape"&&(e(n),r.onTrigger?.())}}function Qt(e,r="size",n=!0){if(e!==void 0)return vre(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 Ro(e){return Qt(e,"mantine-font-size")}function NJe(e){return Qt(e,"mantine-line-height",!1)}function Uz(e){if(e)return Qt(e,"mantine-shadow",!1)}function jn(e,r){return n=>{e?.(n),r?.(n)}}function PJe(e,r){return e in r?Q2(r[e]):Q2(e)}function Wz(e,r){const n=e.map(o=>({value:o,px:PJe(o,r)}));return n.sort((o,a)=>o.px-a.px),n}function yl(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function Tm(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 Gz(e="mantine-"){return`${e}${Math.random().toString(36).slice(2,11)}`}function BJe(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 a=0;a{r.current=e}),S.useMemo(()=>((...n)=>r.current?.(...n)),[])}function J2(e,r){const{delay:n,flushOnUnmount:o,leading:a}=typeof r=="number"?{delay:r,flushOnUnmount:!1,leading:!1}:r,i=jp(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(a&&u){i(...d);const v=()=>{p()},w=()=>{l.current!==0&&(p(),i(...d))},x=()=>{p()};c.flush=w,c.cancel=x,l.current=window.setTimeout(v,n);return}if(a&&!u){const v=()=>{l.current!==0&&(p(),i(...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(),i(...d))},g=()=>{p()};c.flush=f,c.cancel=g,l.current=window.setTimeout(f,n)},{flush:()=>{},cancel:()=>{},_isFirstCall:!0});return c},[i,n,a]);return S.useEffect(()=>()=>{o?s.flush():s.cancel()},[s,o]),s}const OJe=["mousedown","touchstart"];function xre(e,r,n){const o=S.useRef(null),a=r||OJe;return S.useEffect(()=>{const i=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 a.forEach(l=>document.addEventListener(l,i)),()=>{a.forEach(l=>document.removeEventListener(l,i))}},[o,e,n]),o}function IJe(e,r){try{return e.addEventListener("change",r),()=>e.removeEventListener("change",r)}catch{return e.addListener(r),()=>e.removeListener(r)}}function LJe(e,r){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(e).matches:!1}function FJe(e,r,{getInitialValueInEffect:n}={getInitialValueInEffect:!0}){const[o,a]=S.useState(n?r:LJe(e));return S.useEffect(()=>{try{const i=window.matchMedia(e);return a(i.matches),IJe(i,l=>a(l.matches))}catch{return}},[e]),o||!1}const Yz=typeof document<"u"?S.useLayoutEffect:S.useEffect;function Tp(e,r){const n=S.useRef(!1);S.useEffect(()=>()=>{n.current=!1},[]),S.useEffect(()=>{if(n.current)return e();n.current=!0},r)}function wre({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 Tp(()=>{let a=-1;const i=l=>{l.key==="Tab"&&window.clearTimeout(a)};return document.addEventListener("keydown",i),e?n.current=document.activeElement:r&&(a=window.setTimeout(o,10)),()=>{window.clearTimeout(a),document.removeEventListener("keydown",i)}},[e,r]),o}const VJe=/input|select|textarea|button|object/,kre="a, input, select, textarea, button, object, [tabindex]";function qJe(e){return e.style.display==="none"}function HJe(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(qJe(r))return!1;r=r.parentNode}return!0}function _re(e){let r=e.getAttribute("tabindex");return r===null&&(r=void 0),parseInt(r,10)}function Xz(e){const r=e.nodeName.toLowerCase(),n=!Number.isNaN(_re(e));return(VJe.test(r)&&!e.disabled||e instanceof HTMLAnchorElement&&e.href||n)&&HJe(e)}function Sre(e){const r=_re(e);return(Number.isNaN(r)||r>=0)&&Xz(e)}function UJe(e){return Array.from(e.querySelectorAll(kre)).filter(Sre)}function WJe(e,r){const n=UJe(e);if(!n.length){r.preventDefault();return}const o=n[r.shiftKey?0:n.length-1],a=e.getRootNode();let i=o===a.activeElement||e===a.activeElement;const l=a.activeElement;if(l.tagName==="INPUT"&&l.getAttribute("type")==="radio"&&(i=n.filter(c=>c.getAttribute("type")==="radio"&&c.getAttribute("name")===l.getAttribute("name")).includes(o)),!i)return;r.preventDefault();const s=n[r.shiftKey?n.length-1:0];s&&s.focus()}function GJe(e=!0){const r=S.useRef(null),n=a=>{let i=a.querySelector("[data-autofocus]");if(!i){const l=Array.from(a.querySelectorAll(kre));i=l.find(Sre)||l.find(Xz)||null,!i&&Xz(a)&&(i=a)}i&&i.focus({preventScroll:!0})},o=S.useCallback(a=>{e&&a!==null&&r.current!==a&&(a?(setTimeout(()=>{a.getRootNode()&&n(a)}),r.current=a):r.current=null)},[e]);return S.useEffect(()=>{if(!e)return;r.current&&setTimeout(()=>n(r.current));const a=i=>{i.key==="Tab"&&r.current&&WJe(r.current,i)};return document.addEventListener("keydown",a),()=>document.removeEventListener("keydown",a)},[e]),o}const YJe=Kr.useId||(()=>{});function XJe(){const e=YJe();return e?`mantine-${e.replace(/:/g,"")}`:""}function vl(e){const r=XJe(),[n,o]=S.useState(r);return Yz(()=>{o(Gz())},[]),typeof e=="string"?e:typeof window>"u"?r:n}function ZJe(e,r,n){S.useEffect(()=>(window.addEventListener(e,r,n),()=>window.removeEventListener(e,r,n)),[e,r])}function Zz(e,r){if(typeof e=="function")return e(r);typeof e=="object"&&e!==null&&"current"in e&&(e.current=r)}function Ere(...e){const r=new Map;return n=>{if(e.forEach(o=>{const a=Zz(o,n);a&&r.set(o,a)}),r.size>0)return()=>{e.forEach(o=>{const a=r.get(o);a&&typeof a=="function"?a():Zz(o,null)}),r.clear()}}}function on(...e){return S.useCallback(Ere(...e),e)}function KJe(e,r,n="ltr"){const o=S.useRef(!1),a=S.useRef(!1),i=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(i.current),i.current=requestAnimationFrame(()=>{if(o.current&&d){d.style.userSelect="none";const z=d.getBoundingClientRect();if(z.width&&z.height){const j=Tm((_-z.left)/z.width,0,1);e({x:n==="ltr"?j:1-j,y:Tm(($-z.top)/z.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=()=>{!a.current&&o.current&&(a.current=!0,typeof r?.onScrubStart=="function"&&r.onScrubStart(),s(!0),p())},v=()=>{a.current&&o.current&&(a.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 Md({value:e,defaultValue:r,finalValue:n,onChange:o=()=>{}}){const[a,i]=S.useState(r!==void 0?r:n);return e!==void 0?[e,o,!0]:[a,(s,...c)=>{i(s),o?.(s,...c)},!1]}function Kz(e,r){return FJe("(prefers-reduced-motion: reduce)",e,r)}function QJe(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]),i=S.useCallback(()=>{o(s=>s&&(r.onClose?.(),!1))},[r.onClose]),l=S.useCallback(()=>{n?i():a()},[i,a,n]);return[n,{open:a,close:i,toggle:l}]}function ret(e,r,n={autoInvoke:!1}){const o=S.useRef(null),a=S.useCallback((...l)=>{o.current||(o.current=window.setTimeout(()=>{e(l),o.current=null},r))},[r]),i=S.useCallback(()=>{o.current&&(window.clearTimeout(o.current),o.current=null)},[]);return S.useEffect(()=>(n.autoInvoke&&a(),i),[i,a]),{start:a,clear:i}}function net(e){const r=S.useRef(void 0);return S.useEffect(()=>{r.current=e},[e]),r.current}function oet(e,r,n){const o=S.useRef(null),a=S.useRef(null);return S.useEffect(()=>{const i=typeof n=="function"?n():n;return(i||a.current)&&(o.current=new MutationObserver(e),o.current.observe(i||a.current,r)),()=>{o.current?.disconnect()}},[e,r]),a}function aet(){const[e,r]=S.useState(!1);return S.useEffect(()=>r(!0),[]),e}function iet(){return typeof process<"u"&&process.env?"production":"development"}function Cre(e){const r=new Map;return(...n)=>{const o=JSON.stringify(n);if(r.has(o))return r.get(o);const a=e(...n);return r.set(o,a),a}}function $re(e,r){return r.length===0?e:r.reduce((n,o)=>Math.abs(o-e){Object.entries(n).forEach(([o,a])=>{r[o]?r[o]=no(r[o],a):r[o]=a})}),r}function r4({theme:e,classNames:r,props:n,stylesCtx:o}){const a=(Array.isArray(r)?r:[r]).map(i=>typeof i=="function"?i(e,n,o):i||set);return cet(a)}function n4({theme:e,styles:r,props:n,stylesCtx:o}){return(Array.isArray(r)?r:[r]).reduce((a,i)=>typeof i=="function"?{...a,...i(e,n,o)}:{...a,...i},{})}const det=S.createContext(null);function Ap(){const e=S.useContext(det);if(!e)throw new Error("[@mantine/core] MantineProvider was not found in tree");return e}function uet(){return Ap().classNamesPrefix}function pet(){return Ap().getStyleNonce}function het(){return Ap().withStaticClasses}function fet(){return Ap().headless}function met(){return Ap().stylesTransform?.sx}function get(){return Ap().stylesTransform?.styles}function o4(){return Ap().env||"default"}function yet(e){return/^#?([0-9A-F]{3}){1,2}([0-9A-F]{2})?$/i.test(e)}function vet(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,a=n>>8&255,i=n&255;return{r:o,g:a,b:i,a:1}}function bet(e){const[r,n,o,a]=e.replace(/[^0-9,./]/g,"").split(/[/,]/).map(Number);return{r,g:n,b:o,a:a===void 0?1:a}}function xet(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),a=parseInt(n[2],10)/100,i=parseInt(n[3],10)/100,l=n[5]?parseFloat(n[5]):void 0,s=(1-Math.abs(2*i-1))*a,c=o/60,d=s*(1-Math.abs(c%2-1)),u=i-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 Rre(e){return yet(e)?vet(e):e.startsWith("rgb")?bet(e):e.startsWith("hsl")?xet(e):{r:0,g:0,b:0,a:1}}function w0(e,r){return typeof e.primaryShade=="number"?e.primaryShade:r==="dark"?e.primaryShade.dark:e.primaryShade.light}function Qz(e){return e<=.03928?e/12.92:((e+.055)/1.055)**2.4}function wet(e){const r=e.match(/oklch\((.*?)%\s/);return r?parseFloat(r[1]):null}function ket(e){if(e.startsWith("oklch("))return(wet(e)||0)/100;const{r,g:n,b:o}=Rre(e),a=r/255,i=n/255,l=o/255,s=Qz(a),c=Qz(i),d=Qz(l);return .2126*s+.7152*c+.0722*d}function k0(e,r=.179){return e.startsWith("var(")?!1:ket(e)>r}function Dp({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:k0(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:k0(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:k0(e==="white"?r.white:r.black,r.luminanceThreshold),variable:`--mantine-color-${e}`};const[o,a]=e.split("."),i=a?Number(a):void 0,l=o in r.colors;if(l){const s=i!==void 0?r.colors[o][i]:r.colors[o][w0(r,n||"light")];return{color:o,value:s,shade:i,isThemeColor:l,isLight:k0(s,r.luminanceThreshold),variable:a?`--mantine-color-${o}-${i}`:`--mantine-color-${o}-filled`}}return{color:e,value:e,isThemeColor:l,isLight:k0(e,r.luminanceThreshold),shade:i,variable:void 0}}function qo(e,r){const n=Dp({color:e||r.primaryColor,theme:r});return n.variable?`var(${n.variable})`:e}function _et(e,r){const n={from:e?.from||r.defaultGradient.from,to:e?.to||r.defaultGradient.to,deg:e?.deg??r.defaultGradient.deg??0},o=qo(n.from,r),a=qo(n.to,r);return`linear-gradient(${n.deg}deg, ${o} 0%, ${a} 100%)`}function jre(e,r){if(typeof e!="string"||r>1||r<0)return"rgba(0, 0, 0, 1)";if(e.startsWith("var(")){const i=(1-r)*100;return`color-mix(in srgb, ${e}, transparent ${i}%)`}if(e.startsWith("oklch"))return e.includes("/")?e.replace(/\/\s*[\d.]+\s*\)/,`/ ${r})`):e.replace(")",` / ${r})`);const{r:n,g:o,b:a}=Rre(e);return`rgba(${n}, ${o}, ${a}, ${r})`}const Am=jre,Eet={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"]},Tre="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji",Cet={scale:1,fontSmoothing:!0,white:"#fff",black:"#000",colors:Eet,primaryShade:{light:6,dark:8},primaryColor:"blue",autoContrast:!1,luminanceThreshold:.3,fontFamily:Tre,fontFamilyMonospace:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace",cursorType:"default",defaultRadius:"sm",headings:{fontFamily:Tre,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)}`}},$et=S.createContext(null);function uo(){const e=S.useContext($et);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 Jz({color:e,theme:r,autoContrast:n}){return(typeof n=="boolean"?n:r.autoContrast)&&Dp({color:e||r.primaryColor,theme:r}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function Are(e,r){return Jz({color:e.colors[e.primaryColor][w0(e,r)],theme:e,autoContrast:null})}function a4({theme:e,color:r,colorScheme:n,name:o=r,withColorValues:a=!0}){if(!e.colors[r])return{};if(n==="light"){const s=w0(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`]:Am(e.colors[r][s],.1),[`--mantine-color-${o}-light-hover`]:Am(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`]:Am(e.colors[r][s],.05)};return a?{[`--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 i=w0(e,"dark"),l={[`--mantine-color-${o}-text`]:`var(--mantine-color-${o}-4)`,[`--mantine-color-${o}-filled`]:`var(--mantine-color-${o}-${i})`,[`--mantine-color-${o}-filled-hover`]:`var(--mantine-color-${o}-${i===9?8:i+1})`,[`--mantine-color-${o}-light`]:Am(e.colors[r][Math.max(0,i-2)],.15),[`--mantine-color-${o}-light-hover`]:Am(e.colors[r][Math.max(0,i-2)],.2),[`--mantine-color-${o}-light-color`]:`var(--mantine-color-${o}-${Math.max(i-5,0)})`,[`--mantine-color-${o}-outline`]:`var(--mantine-color-${o}-${Math.max(i-4,0)})`,[`--mantine-color-${o}-outline-hover`]:Am(e.colors[r][Math.max(i-4,0)],.05)};return a?{[`--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 zet(e){return!!e&&typeof e=="object"&&"mantine-virtual-color"in e}function Dm(e,r,n){zo(r).forEach(o=>Object.assign(e,{[`--mantine-${n}-${o}`]:r[o]}))}(e=>{const r=w0(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":Are(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":Are(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)"}};Dm(o.variables,e.breakpoints,"breakpoint"),Dm(o.variables,e.spacing,"spacing"),Dm(o.variables,e.fontSizes,"font-size"),Dm(o.variables,e.lineHeights,"line-height"),Dm(o.variables,e.shadows,"shadow"),Dm(o.variables,e.radius,"radius"),e.colors[e.primaryColor].forEach((i,l)=>{o.variables[`--mantine-primary-color-${l}`]=`var(--mantine-color-${e.primaryColor}-${l})`}),zo(e.colors).forEach(i=>{const l=e.colors[i];if(zet(l)){Object.assign(o.light,a4({theme:e,name:l.name,color:l.light,colorScheme:"light",withColorValues:!0})),Object.assign(o.dark,a4({theme:e,name:l.name,color:l.dark,colorScheme:"dark",withColorValues:!0}));return}l.forEach((s,c)=>{o.variables[`--mantine-color-${i}-${c}`]=s}),Object.assign(o.light,a4({theme:e,color:i,colorScheme:"light",withColorValues:!1})),Object.assign(o.dark,a4({theme:e,color:i,colorScheme:"dark",withColorValues:!1}))});const a=e.headings.sizes;return zo(a).forEach(i=>{o.variables[`--mantine-${i}-font-size`]=a[i].fontSize,o.variables[`--mantine-${i}-line-height`]=a[i].lineHeight,o.variables[`--mantine-${i}-font-weight`]=a[i].fontWeight||e.headings.fontWeight}),o})(Cet);function eR({classNames:e,styles:r,props:n,stylesCtx:o}){const a=uo();return{resolvedClassNames:r4({theme:a,classNames:e,props:n,stylesCtx:o||void 0}),resolvedStyles:n4({theme:a,styles:r,props:n,stylesCtx:o||void 0})}}const Ret={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function jet({theme:e,options:r,unstyled:n}){return no(r?.focusable&&!n&&(e.focusClassName||Ret[e.focusRing]),r?.active&&!n&&e.activeClassName)}function Tet({selector:e,stylesCtx:r,options:n,props:o,theme:a}){return r4({theme:a,classNames:n?.classNames,props:n?.props||o,stylesCtx:r})[e]}function Dre({selector:e,stylesCtx:r,theme:n,classNames:o,props:a}){return r4({theme:n,classNames:o,props:a,stylesCtx:r})[e]}function Aet({rootSelector:e,selector:r,className:n}){return e===r?n:void 0}function Det({selector:e,classes:r,unstyled:n}){return n?void 0:r[e]}function Met({themeName:e,classNamesPrefix:r,selector:n,withStaticClass:o}){return o===!1?[]:e.map(a=>`${r}-${a}-${n}`)}function Net({themeName:e,theme:r,selector:n,props:o,stylesCtx:a}){return e.map(i=>r4({theme:r,classNames:r.components[i]?.classNames,props:o,stylesCtx:a})?.[n])}function Pet({options:e,classes:r,selector:n,unstyled:o}){return e?.variant&&!o?r[`${n}--${e.variant}`]:void 0}function Bet({theme:e,options:r,themeName:n,selector:o,classNamesPrefix:a,classNames:i,classes:l,unstyled:s,className:c,rootSelector:d,props:u,stylesCtx:p,withStaticClasses:f,headless:g,transformedStyles:v}){return no(jet({theme:e,options:r,unstyled:s||g}),Net({theme:e,themeName:n,selector:o,props:u,stylesCtx:p}),Pet({options:r,classes:l,selector:o,unstyled:s}),Dre({selector:o,stylesCtx:p,theme:e,classNames:i,props:u}),Dre({selector:o,stylesCtx:p,theme:e,classNames:v,props:u}),Tet({selector:o,stylesCtx:p,options:r,props:u,theme:e}),Aet({rootSelector:d,selector:o,className:c}),Det({selector:o,classes:l,unstyled:s||g}),f&&!g&&Met({themeName:n,classNamesPrefix:a,selector:o,withStaticClass:r?.withStaticClass}),r?.className)}function Oet({theme:e,themeName:r,props:n,stylesCtx:o,selector:a}){return r.map(i=>n4({theme:e,styles:e.components[i]?.styles,props:n,stylesCtx:o})[a]).reduce((i,l)=>({...i,...l}),{})}function tR({style:e,theme:r}){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...tR({style:o,theme:r})}),{}):typeof e=="function"?e(r):e??{}}function Iet(e){return e.reduce((r,n)=>(n&&Object.keys(n).forEach(o=>{r[o]={...r[o],...Dd(n[o])}}),r),{})}function Let({vars:e,varsResolver:r,theme:n,props:o,stylesCtx:a,selector:i,themeName:l,headless:s}){return Iet([s?{}:r?.(n,o,a),...l.map(c=>n.components?.[c]?.vars?.(n,o,a)),e?.(n,o,a)])?.[i]}function Fet({theme:e,themeName:r,selector:n,options:o,props:a,stylesCtx:i,rootSelector:l,styles:s,style:c,vars:d,varsResolver:u,headless:p,withStylesTransform:f}){return{...!f&&Oet({theme:e,themeName:r,props:a,stylesCtx:i,selector:n}),...!f&&n4({theme:e,styles:s,props:a,stylesCtx:i})[n],...!f&&n4({theme:e,styles:o?.styles,props:o?.props||a,stylesCtx:i})[n],...Let({theme:e,props:a,stylesCtx:i,vars:d,varsResolver:u,selector:n,themeName:r,headless:p}),...l===n?tR({style:c,theme:e}):null,...tR({style:o?.style,theme:e})}}function Vet({props:e,stylesCtx:r,themeName:n}){const o=uo(),a=get()?.();return{getTransformedStyles:i=>a?[...i.map(l=>a(l,{props:e,theme:o,ctx:r})),...n.map(l=>a(o.components[l]?.styles,{props:e,theme:o,ctx:r}))].filter(Boolean):[],withStylesTransform:!!a}}function dt({name:e,classes:r,props:n,stylesCtx:o,className:a,style:i,rootSelector:l="root",unstyled:s,classNames:c,styles:d,vars:u,varsResolver:p,attributes:f}){const g=uo(),v=uet(),w=het(),x=fet(),k=(Array.isArray(e)?e:[e]).filter($=>$),{withStylesTransform:C,getTransformedStyles:_}=Vet({props:n,stylesCtx:o,themeName:k});return($,z)=>({className:Bet({theme:g,options:z,themeName:k,selector:$,classNamesPrefix:v,classNames:c,classes:r,unstyled:s,className:a,rootSelector:l,props:n,stylesCtx:o,withStaticClasses:w,headless:x,transformedStyles:_([z?.styles,d])}),style:Fet({theme:g,themeName:k,selector:$,options:z,props:n,stylesCtx:o,rootSelector:l,styles:d,style:i,vars:u,varsResolver:p,headless:x,withStylesTransform:C}),...f?.[$]})}function qet(e,r){return typeof e=="boolean"?e:r.autoContrast}function Re(e,r,n){const o=uo(),a=o.components[e]?.defaultProps,i=typeof a=="function"?a(o):a;return{...r,...i,...Dd(n)}}function rR(e){return zo(e).reduce((r,n)=>e[n]!==void 0?`${r}${$Je(n)}:${e[n]};`:r,"").trim()}function Het({selector:e,styles:r,media:n,container:o}){const a=r?rR(r):"",i=Array.isArray(n)?n.map(s=>`@media${s.query}{${e}{${rR(s.styles)}}}`):[],l=Array.isArray(o)?o.map(s=>`@container ${s.query}{${e}{${rR(s.styles)}}}`):[];return`${a?`${e}{${a}}`:""}${i.join("")}${l.join("")}`.trim()}function Mm(e){const r=pet();return y.jsx("style",{"data-mantine-styles":"inline",nonce:r?.(),dangerouslySetInnerHTML:{__html:Het(e)}})}function nR(e){const{m:r,mx:n,my:o,mt:a,mb:i,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:z,c:j,opacity:A,ff:R,fz:T,fw:O,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:I,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,hiddenFrom:De,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le,...St}=e;return{styleProps:Dd({m:r,mx:n,my:o,mt:a,mb:i,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:z,c:j,opacity:A,ff:R,fz:T,fw:O,lts:P,ta:L,lh:H,fs:M,tt:V,td:B,w:F,miw:q,maw:G,h:U,mih:Y,mah:Z,bgsz:I,bgp:W,bgr:K,bga:Q,pos:ae,top:te,left:re,bottom:ue,right:_e,inset:ce,display:pe,flex:xe,bdrs:$,hiddenFrom:De,visibleFrom:Be,lightHidden:Je,darkHidden:st,sx:Le}),rest:St}}const Uet={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 oR(e,r){const n=Dp({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 Wet(e,r){const n=Dp({color:e,theme:r});return n.isThemeColor&&n.shade===void 0?`var(--mantine-color-${n.color}-text)`:oR(e,r)}function Get(e,r){if(typeof e=="number")return Pe(e);if(typeof e=="string"){const[n,o,...a]=e.split(" ").filter(l=>l.trim()!=="");let i=`${Pe(n)}`;return o&&(i+=` ${o}`),a.length>0&&(i+=` ${oR(a.join(" "),r)}`),i.trim()}return e}const Mre={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 Yet(e){return typeof e=="string"&&e in Mre?Mre[e]:e}const Xet=["h1","h2","h3","h4","h5","h6"];function Zet(e,r){return typeof e=="string"&&e in r.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&Xet.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?Pe(e):e}function Ket(e){return e}const Qet=["h1","h2","h3","h4","h5","h6"];function Jet(e,r){return typeof e=="string"&&e in r.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&Qet.includes(e)?`var(--mantine-${e}-line-height)`:e}function ett(e,r){return typeof e=="string"&&e in r.radius?`var(--mantine-radius-${e})`:typeof e=="number"||typeof e=="string"?Pe(e):e}function ttt(e){return typeof e=="number"?Pe(e):e}function rtt(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 aR={color:oR,textColor:Wet,fontSize:Zet,spacing:rtt,radius:ett,identity:Ket,size:ttt,lineHeight:Jet,fontFamily:Yet,border:Get};function Nre(e){return e.replace("(min-width: ","").replace("em)","")}function ntt({media:e,...r}){const n=Object.keys(e).sort((o,a)=>Number(Nre(o))-Number(Nre(a))).map(o=>({query:o,styles:e[o]}));return{...r,media:n}}function ott(e){if(typeof e!="object"||e===null)return!1;const r=Object.keys(e);return!(r.length===1&&r[0]==="base")}function att(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function itt(e){return typeof e=="object"&&e!==null?zo(e).filter(r=>r!=="base"):[]}function ltt(e,r){return typeof e=="object"&&e!==null&&r in e?e[r]:e}function Pre({styleProps:e,data:r,theme:n}){return ntt(zo(e).reduce((o,a)=>{if(a==="hiddenFrom"||a==="visibleFrom"||a==="sx")return o;const i=r[a],l=Array.isArray(i.property)?i.property:[i.property],s=att(e[a]);if(!ott(e[a]))return l.forEach(d=>{o.inlineStyles[d]=aR[i.type](s,n)}),o;o.hasResponsiveStyles=!0;const c=itt(e[a]);return l.forEach(d=>{s!=null&&(o.styles[d]=aR[i.type](s,n)),c.forEach(u=>{const p=`(min-width: ${n.breakpoints[u]})`;o.media[p]={...o.media[p],[d]:aR[i.type](ltt(e[a],u),n)}})}),o},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function _0(){return`__m__-${S.useId().replace(/[:«»]/g,"")}`}function iR(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...iR(o,r)}),{}):typeof e=="function"?e(r):e??{}}function Bre(e){return e.startsWith("data-")?e:`data-${e}`}function stt(e){return Object.keys(e).reduce((r,n)=>{const o=e[n];return o===void 0||o===""||o===!1||o===null||(r[Bre(n)]=e[n]),r},{})}function Ore(e){return e?typeof e=="string"?{[Bre(e)]:!0}:Array.isArray(e)?[...e].reduce((r,n)=>({...r,...Ore(n)}),{}):stt(e):null}function lR(e,r){return Array.isArray(e)?[...e].reduce((n,o)=>({...n,...lR(o,r)}),{}):typeof e=="function"?e(r):e??{}}function ctt({theme:e,style:r,vars:n,styleProps:o}){const a=lR(r,e),i=lR(n,e);return{...a,...i,...o}}const Ire=S.forwardRef(({component:e,style:r,__vars:n,className:o,variant:a,mod:i,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}=nR(g),_=met()?.()?.(k.sx),$=_0(),z=Pre({styleProps:k,theme:w,data:Uet}),j={ref:v,style:ctt({theme:w,style:r,vars:n,styleProps:z.inlineStyles}),className:no(o,_,{[$]:z.hasResponsiveStyles,"mantine-light-hidden":d,"mantine-dark-hidden":u,[`mantine-hidden-from-${s}`]:s,[`mantine-visible-from-${c}`]:c}),"data-variant":a,"data-size":vre(l)?void 0:l||void 0,size:f,...Ore(i),...C};return y.jsxs(y.Fragment,{children:[z.hasResponsiveStyles&&y.jsx(Mm,{selector:`.${$}`,styles:z.styles,media:z.media}),typeof p=="function"?p(j):y.jsx(x,{...j})]})});Ire.displayName="@mantine/core/Box";const Te=Ire;function Lre(e){return e}function We(e){const r=S.forwardRef(e);return r.extend=Lre,r.withProps=n=>{const o=S.forwardRef((a,i)=>y.jsx(r,{...n,...a,ref:i}));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((a,i)=>y.jsx(r,{...n,...a,ref:i}));return o.extend=r.extend,o.displayName=`WithProps(${r.displayName})`,o},r.extend=Lre,r}const dtt=S.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function uc(){return S.useContext(dtt)}function utt(e){if(!e||typeof e=="string")return 0;const r=e/36;return Math.round((4+15*r**.25+r/5)*10)}function sR(e){return e?.current?e.current.scrollHeight:"auto"}const i4=typeof window<"u"&&window.requestAnimationFrame,Fre=0,ptt=e=>({height:0,overflow:"hidden",...e?{}:{display:"none"}});function htt({transitionDuration:e,transitionTimingFunction:r="ease",onTransitionEnd:n=()=>{},opened:o,keepMounted:a=!1}){const i=S.useRef(null),l=ptt(a),[s,c]=S.useState(o?{}:l),d=v=>{Ii.flushSync(()=>c(v))},u=v=>{d(w=>({...w,...v}))};function p(v){const w=e||utt(v);return{transition:`height ${w}ms ${r}, opacity ${w}ms ${r}`}}Tp(()=>{typeof i4=="function"&&i4(o?()=>{u({willChange:"height",display:"block",overflow:"hidden"}),i4(()=>{const v=sR(i);u({...p(v),height:v})})}:()=>{const v=sR(i);u({...p(v),willChange:"height",height:v}),i4(()=>u({height:Fre,overflow:"hidden"}))})},[o]);const f=v=>{if(!(v.target!==i.current||v.propertyName!=="height"))if(o){const w=sR(i);w===s.height?d({}):u({height:w}),n()}else s.height===Fre&&(d(l),n())};function g({style:v={},refKey:w="ref",...x}={}){const k=x[w],C={"aria-hidden":!o,...x,[w]:Ere(i,k),onTransitionEnd:f,style:{boxSizing:"border-box",...v,...s}};return Kr.version.startsWith("18")?o||(C.inert=""):C.inert=!o,C}return g}const ftt={transitionDuration:200,transitionTimingFunction:"ease",animateOpacity:!0},Vre=We((e,r)=>{const{children:n,in:o,transitionDuration:a,transitionTimingFunction:i,style:l,onTransitionEnd:s,animateOpacity:c,keepMounted:d,...u}=Re("Collapse",ftt,e),p=uo(),f=Kz(),g=p.respectReducedMotion&&f?0:a,v=htt({opened:o,transitionDuration:g,transitionTimingFunction:i,onTransitionEnd:s,keepMounted:d});return g===0?o?y.jsx(Te,{...u,children:n}):null:y.jsx(Te,{...v({style:{opacity:o||!c?1:0,transition:c?`opacity ${g}ms ${i}`:"none",...iR(l,p)},ref:r,...u}),children:n})});Vre.displayName="@mantine/core/Collapse";function l4(){return typeof window<"u"}function Nm(e){return qre(e)?(e.nodeName||"").toLowerCase():"#document"}function aa(e){var r;return(e==null||(r=e.ownerDocument)==null?void 0:r.defaultView)||window}function ls(e){var r;return(r=(qre(e)?e.ownerDocument:e.document)||window.document)==null?void 0:r.documentElement}function qre(e){return l4()?e instanceof Node||e instanceof aa(e).Node:!1}function Mr(e){return l4()?e instanceof Element||e instanceof aa(e).Element:!1}function Ta(e){return l4()?e instanceof HTMLElement||e instanceof aa(e).HTMLElement:!1}function cR(e){return!l4()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof aa(e).ShadowRoot}const mtt=new Set(["inline","contents"]);function S0(e){const{overflow:r,overflowX:n,overflowY:o,display:a}=xi(e);return/auto|scroll|overlay|hidden|clip/.test(r+o+n)&&!mtt.has(a)}const gtt=new Set(["table","td","th"]);function ytt(e){return gtt.has(Nm(e))}const vtt=[":popover-open",":modal"];function s4(e){return vtt.some(r=>{try{return e.matches(r)}catch{return!1}})}const btt=["transform","translate","scale","rotate","perspective"],xtt=["transform","translate","scale","rotate","perspective","filter"],wtt=["paint","layout","strict","content"];function dR(e){const r=c4(),n=Mr(e)?xi(e):e;return btt.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)||xtt.some(o=>(n.willChange||"").includes(o))||wtt.some(o=>(n.contain||"").includes(o))}function ktt(e){let r=hc(e);for(;Ta(r)&&!pc(r);){if(dR(r))return r;if(s4(r))return null;r=hc(r)}return null}function c4(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const _tt=new Set(["html","body","#document"]);function pc(e){return _tt.has(Nm(e))}function xi(e){return aa(e).getComputedStyle(e)}function d4(e){return Mr(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function hc(e){if(Nm(e)==="html")return e;const r=e.assignedSlot||e.parentNode||cR(e)&&e.host||ls(e);return cR(r)?r.host:r}function Hre(e){const r=hc(e);return pc(r)?e.ownerDocument?e.ownerDocument.body:e.body:Ta(r)&&S0(r)?r:Hre(r)}function fc(e,r,n){var o;r===void 0&&(r=[]),n===void 0&&(n=!0);const a=Hre(e),i=a===((o=e.ownerDocument)==null?void 0:o.body),l=aa(a);if(i){const s=uR(l);return r.concat(l,l.visualViewport||[],S0(a)?a:[],s&&n?fc(s):[])}return r.concat(a,fc(a,[],n))}function uR(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}const Stt=["top","right","bottom","left"],bl=Math.min,jo=Math.max,u4=Math.round,p4=Math.floor,ss=e=>({x:e,y:e}),Ett={left:"right",right:"left",bottom:"top",top:"bottom"},Ctt={start:"end",end:"start"};function pR(e,r,n){return jo(e,bl(r,n))}function cs(e,r){return typeof e=="function"?e(r):e}function xl(e){return e.split("-")[0]}function Pm(e){return e.split("-")[1]}function hR(e){return e==="x"?"y":"x"}function fR(e){return e==="y"?"height":"width"}const $tt=new Set(["top","bottom"]);function wl(e){return $tt.has(xl(e))?"y":"x"}function mR(e){return hR(wl(e))}function ztt(e,r,n){n===void 0&&(n=!1);const o=Pm(e),a=mR(e),i=fR(a);let l=a==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return r.reference[i]>r.floating[i]&&(l=h4(l)),[l,h4(l)]}function Rtt(e){const r=h4(e);return[gR(e),r,gR(r)]}function gR(e){return e.replace(/start|end/g,r=>Ctt[r])}const Ure=["left","right"],Wre=["right","left"],jtt=["top","bottom"],Ttt=["bottom","top"];function Att(e,r,n){switch(e){case"top":case"bottom":return n?r?Wre:Ure:r?Ure:Wre;case"left":case"right":return r?jtt:Ttt;default:return[]}}function Dtt(e,r,n,o){const a=Pm(e);let i=Att(xl(e),n==="start",o);return a&&(i=i.map(l=>l+"-"+a),r&&(i=i.concat(i.map(gR)))),i}function h4(e){return e.replace(/left|right|bottom|top/g,r=>Ett[r])}function Mtt(e){return{top:0,right:0,bottom:0,left:0,...e}}function yR(e){return typeof e!="number"?Mtt(e):{top:e,right:e,bottom:e,left:e}}function Bm(e){const{x:r,y:n,width:o,height:a}=e;return{width:o,height:a,top:n,left:r,right:r+o,bottom:n+a,x:r,y:n}}function Ntt(){const e=navigator.userAgentData;return e!=null&&e.platform?e.platform:navigator.platform}function Ptt(){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 Btt(){return/apple/i.test(navigator.vendor)}function Ott(){return Ntt().toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints}function Itt(){return Ptt().includes("jsdom/")}const Gre="data-floating-ui-focusable",Ltt="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function Yre(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 E0(e,r){if(!e||!r)return!1;const n=r.getRootNode==null?void 0:r.getRootNode();if(e.contains(r))return!0;if(n&&cR(n)){let o=r;for(;o;){if(e===o)return!0;o=o.parentNode||o.host}}return!1}function Om(e){return"composedPath"in e?e.composedPath()[0]:e.target}function vR(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 Ftt(e){return e.matches("html,body")}function Mp(e){return e?.ownerDocument||document}function Vtt(e){return Ta(e)&&e.matches(Ltt)}function qtt(e){if(!e||Itt())return!0;try{return e.matches(":focus-visible")}catch{return!0}}function Htt(e){return e?e.hasAttribute(Gre)?e:e.querySelector("["+Gre+"]")||e:null}function f4(e,r,n){return n===void 0&&(n=!0),e.filter(o=>{var a;return o.parentId===r&&(!n||((a=o.context)==null?void 0:a.open))}).flatMap(o=>[o,...f4(e,o.id,n)])}function Utt(e){return"nativeEvent"in e}function bR(e,r){const n=["mouse","pen"];return n.push("",void 0),n.includes(e)}var Wtt=typeof document<"u",Gtt=function(){},ds=Wtt?S.useLayoutEffect:Gtt;const Ytt={...ob};function m4(e){const r=S.useRef(e);return ds(()=>{r.current=e}),r}const Xtt=Ytt.useInsertionEffect,Ztt=Xtt||(e=>e());function us(e){const r=S.useRef(()=>{});return Ztt(()=>{r.current=e}),S.useCallback(function(){for(var n=arguments.length,o=new Array(n),a=0;a{const{placement:o="bottom",strategy:a="absolute",middleware:i=[],platform:l}=n,s=i.filter(Boolean),c=await(l.isRTL==null?void 0:l.isRTL(r));let d=await l.getElementRects({reference:e,floating:r,strategy:a}),{x:u,y:p}=Xre(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:a,rects:i,platform:l,elements:s,middlewareData:c}=r,{element:d,padding:u=0}=cs(e,r)||{};if(d==null)return{};const p=yR(u),f={x:n,y:o},g=mR(a),v=fR(g),w=await l.getDimensions(d),x=g==="y",k=x?"top":"left",C=x?"bottom":"right",_=x?"clientHeight":"clientWidth",$=i.reference[v]+i.reference[g]-f[g]-i.floating[v],z=f[g]-i.reference[g],j=await(l.getOffsetParent==null?void 0:l.getOffsetParent(d));let A=j?j[_]:0;(!A||!await(l.isElement==null?void 0:l.isElement(j)))&&(A=s.floating[_]||i.floating[v]);const R=$/2-z/2,T=A/2-w[v]/2-1,O=bl(p[k],T),P=bl(p[C],T),L=O,H=A-w[v]-P,M=A/2-w[v]/2+R,V=pR(L,M,H),B=!c.arrow&&Pm(a)!=null&&M!==V&&i.reference[v]/2-(MM<=0)){var P,L;const M=(((P=i.flip)==null?void 0:P.index)||0)+1,V=A[M];if(V&&(!(p==="alignment"&&C!==wl(V))||O.every(F=>wl(F.placement)===C?F.overflows[0]>0:!0)))return{data:{index:M,overflows:O},reset:{placement:V}};let B=(L=O.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=O.filter(q=>{if(j){const G=wl(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(a!==B)return{reset:{placement:B}}}return{}}}};function Zre(e,r){return{top:e.top-r.height,right:e.right-r.width,bottom:e.bottom-r.height,left:e.left-r.width}}function Kre(e){return Stt.some(r=>e[r]>=0)}const ert=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(r){const{rects:n}=r,{strategy:o="referenceHidden",...a}=cs(e,r);switch(o){case"referenceHidden":{const i=await C0(r,{...a,elementContext:"reference"}),l=Zre(i,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:Kre(l)}}}case"escaped":{const i=await C0(r,{...a,altBoundary:!0}),l=Zre(i,n.floating);return{data:{escapedOffsets:l,escaped:Kre(l)}}}default:return{}}}}};function Qre(e){const r=bl(...e.map(i=>i.left)),n=bl(...e.map(i=>i.top)),o=jo(...e.map(i=>i.right)),a=jo(...e.map(i=>i.bottom));return{x:r,y:n,width:o-r,height:a-n}}function trt(e){const r=e.slice().sort((a,i)=>a.y-i.y),n=[];let o=null;for(let a=0;ao.height/2?n.push([i]):n[n.length-1].push(i),o=i}return n.map(a=>Bm(Qre(a)))}const rrt=function(e){return e===void 0&&(e={}),{name:"inline",options:e,async fn(r){const{placement:n,elements:o,rects:a,platform:i,strategy:l}=r,{padding:s=2,x:c,y:d}=cs(e,r),u=Array.from(await(i.getClientRects==null?void 0:i.getClientRects(o.reference))||[]),p=trt(u),f=Bm(Qre(u)),g=yR(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(wl(n)==="y"){const O=p[0],P=p[p.length-1],L=xl(n)==="top",H=O.top,M=P.bottom,V=L?O.left:P.left,B=L?O.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=xl(n)==="left",k=jo(...p.map(O=>O.right)),C=bl(...p.map(O=>O.left)),_=p.filter(O=>x?O.left===C:O.right===k),$=_[0].top,z=_[_.length-1].bottom,j=C,A=k,R=A-j,T=z-$;return{top:$,bottom:z,left:j,right:A,width:R,height:T,x:j,y:$}}return f}const w=await i.getElementRects({reference:{getBoundingClientRect:v},floating:o.floating,strategy:l});return a.reference.x!==w.reference.x||a.reference.y!==w.reference.y||a.reference.width!==w.reference.width||a.reference.height!==w.reference.height?{reset:{rects:w}}:{}}}},Jre=new Set(["left","top"]);async function nrt(e,r){const{placement:n,platform:o,elements:a}=e,i=await(o.isRTL==null?void 0:o.isRTL(a.floating)),l=xl(n),s=Pm(n),c=wl(n)==="y",d=Jre.has(l)?-1:1,u=i&&c?-1:1,p=cs(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 ort=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(r){var n,o;const{x:a,y:i,placement:l,middlewareData:s}=r,c=await nrt(r,e);return l===((n=s.offset)==null?void 0:n.placement)&&(o=s.arrow)!=null&&o.alignmentOffset?{}:{x:a+c.x,y:i+c.y,data:{...c,placement:l}}}}},art=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(r){const{x:n,y:o,placement:a}=r,{mainAxis:i=!0,crossAxis:l=!1,limiter:s={fn:x=>{let{x:k,y:C}=x;return{x:k,y:C}}},...c}=cs(e,r),d={x:n,y:o},u=await C0(r,c),p=wl(xl(a)),f=hR(p);let g=d[f],v=d[p];if(i){const x=f==="y"?"top":"left",k=f==="y"?"bottom":"right",C=g+u[x],_=g-u[k];g=pR(C,g,_)}if(l){const x=p==="y"?"top":"left",k=p==="y"?"bottom":"right",C=v+u[x],_=v-u[k];v=pR(C,v,_)}const w=s.fn({...r,[f]:g,[p]:v});return{...w,data:{x:w.x-n,y:w.y-o,enabled:{[f]:i,[p]:l}}}}}},irt=function(e){return e===void 0&&(e={}),{options:e,fn(r){const{x:n,y:o,placement:a,rects:i,middlewareData:l}=r,{offset:s=0,mainAxis:c=!0,crossAxis:d=!0}=cs(e,r),u={x:n,y:o},p=wl(a),f=hR(p);let g=u[f],v=u[p];const w=cs(s,r),x=typeof w=="number"?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(c){const _=f==="y"?"height":"width",$=i.reference[f]-i.floating[_]+x.mainAxis,z=i.reference[f]+i.reference[_]-x.mainAxis;g<$?g=$:g>z&&(g=z)}if(d){var k,C;const _=f==="y"?"width":"height",$=Jre.has(xl(a)),z=i.reference[p]-i.floating[_]+($&&((k=l.offset)==null?void 0:k[p])||0)+($?0:x.crossAxis),j=i.reference[p]+i.reference[_]+($?0:((C=l.offset)==null?void 0:C[p])||0)-($?x.crossAxis:0);vj&&(v=j)}return{[f]:g,[p]:v}}}},lrt=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(r){var n,o;const{placement:a,rects:i,platform:l,elements:s}=r,{apply:c=()=>{},...d}=cs(e,r),u=await C0(r,d),p=xl(a),f=Pm(a),g=wl(a)==="y",{width:v,height:w}=i.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,$=bl(w-u[x],C),z=bl(v-u[k],_),j=!r.middlewareData.shift;let A=$,R=z;if((n=r.middlewareData.shift)!=null&&n.enabled.x&&(R=_),(o=r.middlewareData.shift)!=null&&o.enabled.y&&(A=C),j&&!f){const O=jo(u.left,0),P=jo(u.right,0),L=jo(u.top,0),H=jo(u.bottom,0);g?R=v-2*(O!==0||P!==0?O+P:jo(u.left,u.right)):A=w-2*(L!==0||H!==0?L+H:jo(u.top,u.bottom))}await c({...r,availableWidth:R,availableHeight:A});const T=await l.getDimensions(s.floating);return v!==T.width||w!==T.height?{reset:{rects:!0}}:{}}}};function ene(e){const r=xi(e);let n=parseFloat(r.width)||0,o=parseFloat(r.height)||0;const a=Ta(e),i=a?e.offsetWidth:n,l=a?e.offsetHeight:o,s=u4(n)!==i||u4(o)!==l;return s&&(n=i,o=l),{width:n,height:o,$:s}}function xR(e){return Mr(e)?e:e.contextElement}function Im(e){const r=xR(e);if(!Ta(r))return ss(1);const n=r.getBoundingClientRect(),{width:o,height:a,$:i}=ene(r);let l=(i?u4(n.width):n.width)/o,s=(i?u4(n.height):n.height)/a;return(!l||!Number.isFinite(l))&&(l=1),(!s||!Number.isFinite(s))&&(s=1),{x:l,y:s}}const srt=ss(0);function tne(e){const r=aa(e);return!c4()||!r.visualViewport?srt:{x:r.visualViewport.offsetLeft,y:r.visualViewport.offsetTop}}function crt(e,r,n){return r===void 0&&(r=!1),!n||r&&n!==aa(e)?!1:r}function Np(e,r,n,o){r===void 0&&(r=!1),n===void 0&&(n=!1);const a=e.getBoundingClientRect(),i=xR(e);let l=ss(1);r&&(o?Mr(o)&&(l=Im(o)):l=Im(e));const s=crt(i,n,o)?tne(i):ss(0);let c=(a.left+s.x)/l.x,d=(a.top+s.y)/l.y,u=a.width/l.x,p=a.height/l.y;if(i){const f=aa(i),g=o&&Mr(o)?aa(o):o;let v=f,w=uR(v);for(;w&&o&&g!==v;){const x=Im(w),k=w.getBoundingClientRect(),C=xi(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=aa(w),w=uR(v)}}return Bm({width:u,height:p,x:c,y:d})}function g4(e,r){const n=d4(e).scrollLeft;return r?r.left+n:Np(ls(e)).left+n}function rne(e,r){const n=e.getBoundingClientRect(),o=n.left+r.scrollLeft-g4(e,n),a=n.top+r.scrollTop;return{x:o,y:a}}function drt(e){let{elements:r,rect:n,offsetParent:o,strategy:a}=e;const i=a==="fixed",l=ls(o),s=r?s4(r.floating):!1;if(o===l||s&&i)return n;let c={scrollLeft:0,scrollTop:0},d=ss(1);const u=ss(0),p=Ta(o);if((p||!p&&!i)&&((Nm(o)!=="body"||S0(l))&&(c=d4(o)),Ta(o))){const g=Np(o);d=Im(o),u.x=g.x+o.clientLeft,u.y=g.y+o.clientTop}const f=l&&!p&&!i?rne(l,c):ss(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 urt(e){return Array.from(e.getClientRects())}function prt(e){const r=ls(e),n=d4(e),o=e.ownerDocument.body,a=jo(r.scrollWidth,r.clientWidth,o.scrollWidth,o.clientWidth),i=jo(r.scrollHeight,r.clientHeight,o.scrollHeight,o.clientHeight);let l=-n.scrollLeft+g4(e);const s=-n.scrollTop;return xi(o).direction==="rtl"&&(l+=jo(r.clientWidth,o.clientWidth)-a),{width:a,height:i,x:l,y:s}}const nne=25;function hrt(e,r){const n=aa(e),o=ls(e),a=n.visualViewport;let i=o.clientWidth,l=o.clientHeight,s=0,c=0;if(a){i=a.width,l=a.height;const u=c4();(!u||u&&r==="fixed")&&(s=a.offsetLeft,c=a.offsetTop)}const d=g4(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<=nne&&(i-=v)}else d<=nne&&(i+=d);return{width:i,height:l,x:s,y:c}}const frt=new Set(["absolute","fixed"]);function mrt(e,r){const n=Np(e,!0,r==="fixed"),o=n.top+e.clientTop,a=n.left+e.clientLeft,i=Ta(e)?Im(e):ss(1),l=e.clientWidth*i.x,s=e.clientHeight*i.y,c=a*i.x,d=o*i.y;return{width:l,height:s,x:c,y:d}}function one(e,r,n){let o;if(r==="viewport")o=hrt(e,n);else if(r==="document")o=prt(ls(e));else if(Mr(r))o=mrt(r,n);else{const a=tne(e);o={x:r.x-a.x,y:r.y-a.y,width:r.width,height:r.height}}return Bm(o)}function ane(e,r){const n=hc(e);return n===r||!Mr(n)||pc(n)?!1:xi(n).position==="fixed"||ane(n,r)}function grt(e,r){const n=r.get(e);if(n)return n;let o=fc(e,[],!1).filter(s=>Mr(s)&&Nm(s)!=="body"),a=null;const i=xi(e).position==="fixed";let l=i?hc(e):e;for(;Mr(l)&&!pc(l);){const s=xi(l),c=dR(l);!c&&s.position==="fixed"&&(a=null),(i?!c&&!a:!c&&s.position==="static"&&a&&frt.has(a.position)||S0(l)&&!c&&ane(e,l))?o=o.filter(d=>d!==l):a=s,l=hc(l)}return r.set(e,o),o}function yrt(e){let{element:r,boundary:n,rootBoundary:o,strategy:a}=e;const i=[...n==="clippingAncestors"?s4(r)?[]:grt(r,this._c):[].concat(n),o],l=i[0],s=i.reduce((c,d)=>{const u=one(r,d,a);return c.top=jo(u.top,c.top),c.right=bl(u.right,c.right),c.bottom=bl(u.bottom,c.bottom),c.left=jo(u.left,c.left),c},one(r,l,a));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function vrt(e){const{width:r,height:n}=ene(e);return{width:r,height:n}}function brt(e,r,n){const o=Ta(r),a=ls(r),i=n==="fixed",l=Np(e,!0,i,r);let s={scrollLeft:0,scrollTop:0};const c=ss(0);function d(){c.x=g4(a)}if(o||!o&&!i)if((Nm(r)!=="body"||S0(a))&&(s=d4(r)),o){const g=Np(r,!0,i,r);c.x=g.x+r.clientLeft,c.y=g.y+r.clientTop}else a&&d();i&&!o&&a&&d();const u=a&&!o&&!i?rne(a,s):ss(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 wR(e){return xi(e).position==="static"}function ine(e,r){if(!Ta(e)||xi(e).position==="fixed")return null;if(r)return r(e);let n=e.offsetParent;return ls(e)===n&&(n=n.ownerDocument.body),n}function lne(e,r){const n=aa(e);if(s4(e))return n;if(!Ta(e)){let a=hc(e);for(;a&&!pc(a);){if(Mr(a)&&!wR(a))return a;a=hc(a)}return n}let o=ine(e,r);for(;o&&ytt(o)&&wR(o);)o=ine(o,r);return o&&pc(o)&&wR(o)&&!dR(o)?n:o||ktt(e)||n}const xrt=async function(e){const r=this.getOffsetParent||lne,n=this.getDimensions,o=await n(e.floating);return{reference:brt(e.reference,await r(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function wrt(e){return xi(e).direction==="rtl"}const krt={convertOffsetParentRelativeRectToViewportRelativeRect:drt,getDocumentElement:ls,getClippingRect:yrt,getOffsetParent:lne,getElementRects:xrt,getClientRects:urt,getDimensions:vrt,getScale:Im,isElement:Mr,isRTL:wrt};function sne(e,r){return e.x===r.x&&e.y===r.y&&e.width===r.width&&e.height===r.height}function _rt(e,r){let n=null,o;const a=ls(e);function i(){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),i();const d=e.getBoundingClientRect(),{left:u,top:p,width:f,height:g}=d;if(s||r(),!f||!g)return;const v=p4(p),w=p4(a.clientWidth-(u+f)),x=p4(a.clientHeight-(p+g)),k=p4(u),C={rootMargin:-v+"px "+-w+"px "+-x+"px "+-k+"px",threshold:jo(0,bl(1,c))||1};let _=!0;function $(z){const j=z[0].intersectionRatio;if(j!==c){if(!_)return l();j?l(!1,j):o=setTimeout(()=>{l(!1,1e-7)},1e3)}j===1&&!sne(d,e.getBoundingClientRect())&&l(),_=!1}try{n=new IntersectionObserver($,{...C,root:a.ownerDocument})}catch{n=new IntersectionObserver($,C)}n.observe(e)}return l(!0),i}function kR(e,r,n,o){o===void 0&&(o={});const{ancestorScroll:a=!0,ancestorResize:i=!0,elementResize:l=typeof ResizeObserver=="function",layoutShift:s=typeof IntersectionObserver=="function",animationFrame:c=!1}=o,d=xR(e),u=a||i?[...d?fc(d):[],...fc(r)]:[];u.forEach(k=>{a&&k.addEventListener("scroll",n,{passive:!0}),i&&k.addEventListener("resize",n)});const p=d&&s?_rt(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?Np(e):null;c&&x();function x(){const k=Np(e);w&&!sne(w,k)&&n(),w=k,v=requestAnimationFrame(x)}return n(),()=>{var k;u.forEach(C=>{a&&C.removeEventListener("scroll",n),i&&C.removeEventListener("resize",n)}),p?.(),(k=g)==null||k.disconnect(),g=null,c&&cancelAnimationFrame(v)}}const Srt=ort,Ert=art,Crt=Jtt,$rt=lrt,zrt=ert,cne=Qtt,Rrt=rrt,jrt=irt,Trt=(e,r,n)=>{const o=new Map,a={platform:krt,...n},i={...a.platform,_c:o};return Ktt(e,r,{...a,platform:i})};var Art=typeof document<"u",Drt=function(){},y4=Art?S.useLayoutEffect:Drt;function v4(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,a;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(!v4(e[o],r[o]))return!1;return!0}if(a=Object.keys(e),n=a.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!{}.hasOwnProperty.call(r,a[o]))return!1;for(o=n;o--!==0;){const i=a[o];if(!(i==="_owner"&&e.$$typeof)&&!v4(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}function dne(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function une(e,r){const n=dne(e);return Math.round(r*n)/n}function _R(e){const r=S.useRef(e);return y4(()=>{r.current=e}),r}function Mrt(e){e===void 0&&(e={});const{placement:r="bottom",strategy:n="absolute",middleware:o=[],platform:a,elements:{reference:i,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);v4(f,o)||g(o);const[v,w]=S.useState(null),[x,k]=S.useState(null),C=S.useCallback(q=>{q!==j.current&&(j.current=q,w(q))},[]),_=S.useCallback(q=>{q!==A.current&&(A.current=q,k(q))},[]),$=i||v,z=l||x,j=S.useRef(null),A=S.useRef(null),R=S.useRef(u),T=c!=null,O=_R(c),P=_R(a),L=_R(d),H=S.useCallback(()=>{if(!j.current||!A.current)return;const q={placement:r,strategy:n,middleware:f};P.current&&(q.platform=P.current),Trt(j.current,A.current,q).then(G=>{const U={...G,isPositioned:L.current!==!1};M.current&&!v4(R.current,U)&&(R.current=U,Ii.flushSync(()=>{p(U)}))})},[f,r,n,P,L]);y4(()=>{d===!1&&R.current.isPositioned&&(R.current.isPositioned=!1,p(q=>({...q,isPositioned:!1})))},[d]);const M=S.useRef(!1);y4(()=>(M.current=!0,()=>{M.current=!1}),[]),y4(()=>{if($&&(j.current=$),z&&(A.current=z),$&&z){if(O.current)return O.current($,z,H);H()}},[$,z,H,O,T]);const V=S.useMemo(()=>({reference:j,floating:A,setReference:C,setFloating:_}),[C,_]),B=S.useMemo(()=>({reference:$,floating:z}),[$,z]),F=S.useMemo(()=>{const q={position:n,left:0,top:0};if(!B.floating)return q;const G=une(B.floating,u.x),U=une(B.floating,u.y);return s?{...q,transform:"translate("+G+"px, "+U+"px)",...dne(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 Nrt=e=>{function r(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:o,padding:a}=typeof e=="function"?e(n):e;return o&&r(o)?o.current!=null?cne({element:o.current,padding:a}).fn(n):{}:o?cne({element:o,padding:a}).fn(n):{}}}},pne=(e,r)=>({...Srt(e),options:[e,r]}),SR=(e,r)=>({...Ert(e),options:[e,r]}),hne=(e,r)=>({...jrt(e),options:[e,r]}),b4=(e,r)=>({...Crt(e),options:[e,r]}),Prt=(e,r)=>({...$rt(e),options:[e,r]}),Brt=(e,r)=>({...zrt(e),options:[e,r]}),$0=(e,r)=>({...Rrt(e),options:[e,r]}),fne=(e,r)=>({...Nrt(e),options:[e,r]});function mne(e){const r=S.useRef(void 0),n=S.useCallback(o=>{const a=e.map(i=>{if(i!=null){if(typeof i=="function"){const l=i,s=l(o);return typeof s=="function"?s:()=>{l(null)}}return i.current=o,()=>{i.current=null}}});return()=>{a.forEach(i=>i?.())}},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 Ort="data-floating-ui-focusable",gne="active",yne="selected",Irt={...ob};let vne=!1,Lrt=0;const bne=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+Lrt++;function Frt(){const[e,r]=S.useState(()=>vne?bne():void 0);return ds(()=>{e==null&&r(bne())},[]),S.useEffect(()=>{vne=!0},[]),e}const Vrt=Irt.useId,xne=Vrt||Frt;function qrt(){const e=new Map;return{emit(r,n){var o;(o=e.get(r))==null||o.forEach(a=>a(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 Hrt=S.createContext(null),Urt=S.createContext(null),ER=()=>{var e;return((e=S.useContext(Hrt))==null?void 0:e.id)||null},CR=()=>S.useContext(Urt);function $R(e){return"data-floating-ui-"+e}function wi(e){e.current!==-1&&(clearTimeout(e.current),e.current=-1)}const wne=$R("safe-polygon");function x4(e,r,n){if(n&&!bR(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 zR(e){return typeof e=="function"?e():e}function Wrt(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,dataRef:a,events:i,elements:l}=e,{enabled:s=!0,delay:c=0,handleClose:d=null,mouseOnly:u=!1,restMs:p=0,move:f=!0}=r,g=CR(),v=ER(),w=m4(d),x=m4(c),k=m4(n),C=m4(p),_=S.useRef(),$=S.useRef(-1),z=S.useRef(),j=S.useRef(-1),A=S.useRef(!0),R=S.useRef(!1),T=S.useRef(()=>{}),O=S.useRef(!1),P=us(()=>{var F;const q=(F=a.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||(wi($),wi(j),A.current=!0,O.current=!1)}return i.on("openchange",F),()=>{i.off("openchange",F)}},[s,i]),S.useEffect(()=>{if(!s||!w.current||!n)return;function F(G){P()&&o(!1,G,"hover")}const q=Mp(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=x4(x.current,"close",_.current);U&&!z.current?(wi($),$.current=window.setTimeout(()=>o(!1,F,G),U)):q&&(wi($),o(!1,F,G))},[x,o]),H=us(()=>{T.current(),z.current=void 0}),M=us(()=>{if(R.current){const F=Mp(l.floating).body;F.style.pointerEvents="",F.removeAttribute(wne),R.current=!1}}),V=us(()=>a.current.openEvent?["click","mousedown"].includes(a.current.openEvent.type):!1);S.useEffect(()=>{if(!s)return;function F(Z){if(wi($),A.current=!1,u&&!bR(_.current)||zR(C.current)>0&&!x4(x.current,"open"))return;const I=x4(x.current,"open",_.current);I?$.current=window.setTimeout(()=>{k.current||o(!0,Z,"hover")},I):n||o(!0,Z,"hover")}function q(Z){if(V()){M();return}T.current();const I=Mp(l.floating);if(wi(j),O.current=!1,w.current&&a.current.floatingContext){n||wi($),z.current=w.current({...a.current.floatingContext,tree:g,x:Z.clientX,y:Z.clientY,onClose(){M(),H(),V()||L(Z,!0,"safe-polygon")}});const W=z.current;I.addEventListener("mousemove",W),T.current=()=>{I.removeEventListener("mousemove",W)};return}(_.current!=="touch"||!E0(l.floating,Z.relatedTarget))&&L(Z)}function G(Z){V()||a.current.floatingContext&&(w.current==null||w.current({...a.current.floatingContext,tree:g,x:Z.clientX,y:Z.clientY,onClose(){M(),H(),V()||L(Z)}})(Z))}function U(){wi($)}function Y(Z){V()||L(Z,!1)}if(Mr(l.domReference)){const Z=l.domReference,I=l.floating;return n&&Z.addEventListener("mouseleave",G),f&&Z.addEventListener("mousemove",F,{once:!0}),Z.addEventListener("mouseenter",F),Z.addEventListener("mouseleave",q),I&&(I.addEventListener("mouseleave",G),I.addEventListener("mouseenter",U),I.addEventListener("mouseleave",Y)),()=>{n&&Z.removeEventListener("mouseleave",G),f&&Z.removeEventListener("mousemove",F),Z.removeEventListener("mouseenter",F),Z.removeEventListener("mouseleave",q),I&&(I.removeEventListener("mouseleave",G),I.removeEventListener("mouseenter",U),I.removeEventListener("mouseleave",Y))}}},[l,s,e,u,f,L,H,M,o,n,k,g,x,w,a,V,C]),ds(()=>{var F;if(s&&n&&(F=w.current)!=null&&(F=F.__options)!=null&&F.blockPointerEvents&&P()){R.current=!0;const G=l.floating;if(Mr(l.domReference)&&G){var q;const U=Mp(l.floating).body;U.setAttribute(wne,"");const Y=l.domReference,Z=g==null||(q=g.nodesRef.current.find(I=>I.id===v))==null||(q=q.context)==null?void 0:q.elements.floating;return Z&&(Z.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]),ds(()=>{n||(_.current=void 0,O.current=!1,H(),M())},[n,H,M]),S.useEffect(()=>()=>{H(),wi($),wi(j),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&&!bR(_.current)||n||zR(C.current)===0||O.current&&q.movementX**2+q.movementY**2<2||(wi(j),_.current==="touch"?U():(O.current=!0,j.current=window.setTimeout(U,zR(C.current))))}}},[u,o,n,k,C]);return S.useMemo(()=>s?{reference:B}:{},[s,B])}const RR=()=>{},kne=S.createContext({delay:0,initialDelay:0,timeoutMs:0,currentId:null,setCurrentId:RR,setState:RR,isInstantPhase:!1}),Grt=()=>S.useContext(kne);function _ne(e){const{children:r,delay:n,timeoutMs:o=0}=e,[a,i]=S.useReducer((c,d)=>({...c,...d}),{delay:n,timeoutMs:o,initialDelay:n,currentId:null,isInstantPhase:!1}),l=S.useRef(null),s=S.useCallback(c=>{i({currentId:c})},[]);return ds(()=>{a.currentId?l.current===null?l.current=a.currentId:a.isInstantPhase||i({isInstantPhase:!0}):(a.isInstantPhase&&i({isInstantPhase:!1}),l.current=null)},[a.currentId,a.isInstantPhase]),y.jsx(kne.Provider,{value:S.useMemo(()=>({...a,setState:i,setCurrentId:s}),[a,s]),children:r})}function Yrt(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,floatingId:a}=e,{id:i,enabled:l=!0}=r,s=i??a,c=Grt(),{currentId:d,setCurrentId:u,initialDelay:p,setState:f,timeoutMs:g}=c;return ds(()=>{l&&d&&(f({delay:{open:1,close:x4(p,"close")}}),d!==s&&o(!1))},[l,s,o,f,d,p]),ds(()=>{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]),ds(()=>{l&&(u===RR||!n||u(s))},[l,n,u,s]),c}const Xrt={pointerdown:"onPointerDown",mousedown:"onMouseDown",click:"onClick"},Zrt={pointerdown:"onPointerDownCapture",mousedown:"onMouseDownCapture",click:"onClickCapture"},Sne=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 Krt(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,elements:a,dataRef:i}=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=CR(),x=us(typeof c=="function"?c:()=>!1),k=typeof c=="function"?x:c,C=S.useRef(!1),{escapeKey:_,outsidePress:$}=Sne(g),{escapeKey:z,outsidePress:j}=Sne(v),A=S.useRef(!1),R=us(M=>{var V;if(!n||!l||!s||M.key!=="Escape"||A.current)return;const B=(V=i.current.floatingContext)==null?void 0:V.nodeId,F=w?f4(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,Utt(M)?M.nativeEvent:M,"escape-key")}),T=us(M=>{var V;const B=()=>{var F;R(M),(F=Om(M))==null||F.removeEventListener("keydown",B)};(V=Om(M))==null||V.addEventListener("keydown",B)}),O=us(M=>{var V;const B=i.current.insideReactTree;i.current.insideReactTree=!1;const F=C.current;if(C.current=!1,d==="click"&&F||B||typeof k=="function"&&!k(M))return;const q=Om(M),G="["+$R("inert")+"]",U=Mp(a.floating).querySelectorAll(G);let Y=Mr(q)?q:null;for(;Y&&!pc(Y);){const K=hc(Y);if(pc(K)||!Mr(K))break;Y=K}if(U.length&&Mr(q)&&!Ftt(q)&&!E0(q,a.floating)&&Array.from(U).every(K=>!E0(Y,K)))return;if(Ta(q)&&H){const K=pc(q),Q=xi(q),ae=/auto|scroll/,te=K||ae.test(Q.overflowX),re=K||ae.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 Z=(V=i.current.floatingContext)==null?void 0:V.nodeId,I=w&&f4(w.nodesRef.current,Z).some(K=>{var Q;return vR(M,(Q=K.context)==null?void 0:Q.elements.floating)});if(vR(M,a.floating)||vR(M,a.domReference)||I)return;const W=w?f4(w.nodesRef.current,Z):[];if(W.length>0){let K=!0;if(W.forEach(Q=>{var ae;if((ae=Q.context)!=null&&ae.open&&!Q.context.dataRef.current.__outsidePressBubbles){K=!1;return}}),!K)return}o(!1,M,"outside-press")}),P=us(M=>{var V;const B=()=>{var F;O(M),(F=Om(M))==null||F.removeEventListener(d,B)};(V=Om(M))==null||V.addEventListener(d,B)});S.useEffect(()=>{if(!n||!l)return;i.current.__escapeKeyBubbles=_,i.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},c4()?5:0)}const q=Mp(a.floating);s&&(q.addEventListener("keydown",z?T:R,z),q.addEventListener("compositionstart",B),q.addEventListener("compositionend",F)),k&&q.addEventListener(d,j?P:O,j);let G=[];return f&&(Mr(a.domReference)&&(G=fc(a.domReference)),Mr(a.floating)&&(G=G.concat(fc(a.floating))),!Mr(a.reference)&&a.reference&&a.reference.contextElement&&(G=G.concat(fc(a.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",z?T:R,z),q.removeEventListener("compositionstart",B),q.removeEventListener("compositionend",F)),k&&q.removeEventListener(d,j?P:O,j),G.forEach(U=>{U.removeEventListener("scroll",V)}),window.clearTimeout(M)}},[i,a,s,k,d,n,o,f,l,_,$,R,z,T,O,j,P]),S.useEffect(()=>{i.current.insideReactTree=!1},[i,k,d]);const L=S.useMemo(()=>({onKeyDown:R,...u&&{[Xrt[p]]:M=>{o(!1,M.nativeEvent,"reference-press")},...p!=="click"&&{onClick(M){o(!1,M.nativeEvent,"reference-press")}}}}),[R,o,u,p]),H=S.useMemo(()=>({onKeyDown:R,onMouseDown(){C.current=!0},onMouseUp(){C.current=!0},[Zrt[d]]:()=>{i.current.insideReactTree=!0}}),[R,d,i]);return S.useMemo(()=>l?{reference:L,floating:H}:{},[l,L,H])}function Qrt(e){const{open:r=!1,onOpenChange:n,elements:o}=e,a=xne(),i=S.useRef({}),[l]=S.useState(()=>qrt()),s=ER()!=null,[c,d]=S.useState(o.reference),u=us((g,v,w)=>{i.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:i,open:r,onOpenChange:u,elements:f,events:l,floatingId:a,refs:p}),[r,u,f,l,a,p])}function jR(e){e===void 0&&(e={});const{nodeId:r}=e,n=Qrt({...e,elements:{reference:null,floating:null,...e.elements}}),o=e.rootContext||n,a=o.elements,[i,l]=S.useState(null),[s,c]=S.useState(null),d=a?.domReference||i,u=S.useRef(null),p=CR();ds(()=>{d&&(u.current=d)},[d]);const f=Mrt({...e,elements:{...a,...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 ds(()=>{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 TR(){return Ott()&&Btt()}function Jrt(e,r){r===void 0&&(r={});const{open:n,onOpenChange:o,events:a,dataRef:i,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=aa(l.domReference);function v(){!n&&Ta(l.domReference)&&l.domReference===Yre(Mp(l.domReference))&&(d.current=!0)}function w(){p.current=!0}function x(){p.current=!1}return g.addEventListener("blur",v),TR()&&(g.addEventListener("keydown",w,!0),g.addEventListener("pointerdown",x,!0)),()=>{g.removeEventListener("blur",v),TR()&&(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 a.on("openchange",g),()=>{a.off("openchange",g)}},[a,s]),S.useEffect(()=>()=>{wi(u)},[]);const f=S.useMemo(()=>({onMouseLeave(){d.current=!1},onFocus(g){if(d.current)return;const v=Om(g.nativeEvent);if(c&&Mr(v)){if(TR()&&!g.relatedTarget){if(!p.current&&!Vtt(v))return}else if(!qtt(v))return}o(!0,g.nativeEvent,"focus")},onBlur(g){d.current=!1;const v=g.relatedTarget,w=g.nativeEvent,x=Mr(v)&&v.hasAttribute($R("focus-guard"))&&v.getAttribute("data-type")==="outside";u.current=window.setTimeout(()=>{var k;const C=Yre(l.domReference?l.domReference.ownerDocument:document);!v&&C===l.domReference||E0((k=i.current.floatingContext)==null?void 0:k.refs.floating.current,C)||E0(l.domReference,C)||x||o(!1,w,"focus")})}}),[i,l.domReference,o,c]);return S.useMemo(()=>s?{reference:f}:{},[s,f])}function AR(e,r,n){const o=new Map,a=n==="item";let i=e;if(a&&e){const{[gne]:l,[yne]:s,...c}=e;i=c}return{...n==="floating"&&{tabIndex:-1,[Ort]:""},...i,...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(!(a&&[gne,yne].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 ent(e){e===void 0&&(e=[]);const r=e.map(s=>s?.reference),n=e.map(s=>s?.floating),o=e.map(s=>s?.item),a=S.useCallback(s=>AR(s,e,"reference"),r),i=S.useCallback(s=>AR(s,e,"floating"),n),l=S.useCallback(s=>AR(s,e,"item"),o);return S.useMemo(()=>({getReferenceProps:a,getFloatingProps:i,getItemProps:l}),[a,i,l])}const tnt=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function rnt(e,r){var n,o;r===void 0&&(r={});const{open:a,elements:i,floatingId:l}=e,{enabled:s=!0,role:c="dialog"}=r,d=xne(),u=((n=i.domReference)==null?void 0:n.id)||d,p=S.useMemo(()=>{var k;return((k=Htt(i.floating))==null?void 0:k.id)||l},[i.floating,l]),f=(o=tnt.get(c))!=null?o:c,g=ER()!=null,v=S.useMemo(()=>f==="tooltip"||c==="label"?{["aria-"+(c==="label"?"labelledby":"describedby")]:a?p:void 0}:{"aria-expanded":a?"true":"false","aria-haspopup":f==="alertdialog"?"dialog":f,"aria-controls":a?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,a,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[nnt,ki]=ja("ScrollArea.Root component was not found in tree");function Lm(e,r){const n=jp(r);Yz(()=>{let o=0;if(e){const a=new ResizeObserver(()=>{cancelAnimationFrame(o),o=window.requestAnimationFrame(n)});return a.observe(e),()=>{window.cancelAnimationFrame(o),a.unobserve(e)}}},[e,n])}const ont=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=ki(),[i,l]=S.useState(0),[s,c]=S.useState(0),d=!!(i&&s);return Lm(a.scrollbarX,()=>{const u=a.scrollbarX?.offsetHeight||0;a.onCornerHeightChange(u),c(u)}),Lm(a.scrollbarY,()=>{const u=a.scrollbarY?.offsetWidth||0;a.onCornerWidthChange(u),l(u)}),d?y.jsx("div",{...o,ref:r,style:{...n,width:i,height:s}}):null}),ant=S.forwardRef((e,r)=>{const n=ki(),o=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&o?y.jsx(ont,{...e,ref:r}):null}),int={scrollHideDelay:1e3,type:"hover"},Ene=S.forwardRef((e,r)=>{const{type:n,scrollHideDelay:o,scrollbars:a,getStyles:i,...l}=Re("ScrollAreaRoot",int,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),[z,j]=S.useState(!1),[A,R]=S.useState(!1),T=on(r,O=>c(O));return y.jsx(nnt,{value:{type:n,scrollHideDelay:o,scrollArea:s,viewport:d,onViewportChange:u,content:p,onContentChange:f,scrollbarX:g,onScrollbarXChange:v,scrollbarXEnabled:z,onScrollbarXEnabledChange:j,scrollbarY:w,onScrollbarYChange:x,scrollbarYEnabled:A,onScrollbarYEnabledChange:R,onCornerWidthChange:C,onCornerHeightChange:$,getStyles:i},children:y.jsx(Te,{...l,ref:T,__vars:{"--sa-corner-width":a!=="xy"?"0px":`${k}px`,"--sa-corner-height":a!=="xy"?"0px":`${_}px`}})})});Ene.displayName="@mantine/core/ScrollAreaRoot";function Cne(e,r){const n=e/r;return Number.isNaN(n)?0:n}function w4(e){const r=Cne(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=(e.scrollbar.size-n)*r;return Math.max(o,18)}function $ne(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 lnt(e,[r,n]){return Math.min(n,Math.max(r,e))}function zne(e,r,n="ltr"){const o=w4(r),a=r.scrollbar.paddingStart+r.scrollbar.paddingEnd,i=r.scrollbar.size-a,l=r.content-r.viewport,s=i-o,c=n==="ltr"?[0,l]:[l*-1,0],d=lnt(e,c);return $ne([0,l],[0,s])(d)}function snt(e,r,n,o="ltr"){const a=w4(n),i=a/2,l=r||i,s=a-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 $ne([c,d],p)(e)}function Rne(e,r){return e>0&&e{e?.(o),(n===!1||!o.defaultPrevented)&&r?.(o)}}const[cnt,jne]=ja("ScrollAreaScrollbar was not found in tree"),Tne=S.forwardRef((e,r)=>{const{sizes:n,hasThumb:o,onThumbChange:a,onThumbPointerUp:i,onThumbPointerDown:l,onThumbPositionChange:s,onDragScroll:c,onWheelScroll:d,onResize:u,...p}=e,f=ki(),[g,v]=S.useState(null),w=on(r,R=>v(R)),x=S.useRef(null),k=S.useRef(""),{viewport:C}=f,_=n.content-n.viewport,$=jp(d),z=jp(s),j=J2(u,10),A=R=>{if(x.current){const T=R.clientX-x.current.left,O=R.clientY-x.current.top;c({x:T,y:O})}};return S.useEffect(()=>{const R=T=>{const O=T.target;g?.contains(O)&&$(T,_)};return document.addEventListener("wheel",R,{passive:!1}),()=>document.removeEventListener("wheel",R,{passive:!1})},[C,g,_,$]),S.useEffect(z,[n,z]),Lm(g,j),Lm(f.content,j),y.jsx(cnt,{value:{scrollbar:g,hasThumb:o,onThumbChange:jp(a),onThumbPointerUp:jp(i),onThumbPositionChange:z,onThumbPointerDown:jp(l)},children:y.jsx("div",{...p,ref:w,"data-mantine-scrollbar":!0,style:{position:"absolute",...p.style},onPointerDown:Pp(e.onPointerDown,R=>{R.preventDefault(),R.button===0&&(R.target.setPointerCapture(R.pointerId),x.current=g.getBoundingClientRect(),k.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",A(R))}),onPointerMove:Pp(e.onPointerMove,A),onPointerUp:Pp(e.onPointerUp,R=>{const T=R.target;T.hasPointerCapture(R.pointerId)&&(R.preventDefault(),T.releasePointerCapture(R.pointerId))}),onLostPointerCapture:()=>{document.body.style.webkitUserSelect=k.current,x.current=null}})})}),Ane=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=ki(),[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(Tne,{"data-orientation":"horizontal",...i,ref:u,sizes:n,style:{...a,"--sa-thumb-width":`${w4(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),Rne(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:Bd(s.paddingLeft),paddingEnd:Bd(s.paddingRight)}})}})});Ane.displayName="@mantine/core/ScrollAreaScrollbarX";const Dne=S.forwardRef((e,r)=>{const{sizes:n,onSizesChange:o,style:a,...i}=e,l=ki(),[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(Tne,{...i,"data-orientation":"vertical",ref:u,sizes:n,style:{"--sa-thumb-height":`${w4(n)}px`,...a},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),Rne(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:Bd(s.paddingTop),paddingEnd:Bd(s.paddingBottom)}})}})});Dne.displayName="@mantine/core/ScrollAreaScrollbarY";const k4=S.forwardRef((e,r)=>{const{orientation:n="vertical",...o}=e,{dir:a}=uc(),i=ki(),l=S.useRef(null),s=S.useRef(0),[c,d]=S.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=Cne(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)=>snt(g,s.current,c,v);return n==="horizontal"?y.jsx(Ane,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollLeft,v=zne(g,c,a);l.current.style.transform=`translate3d(${v}px, 0, 0)`}},onWheelScroll:g=>{i.viewport&&(i.viewport.scrollLeft=g)},onDragScroll:g=>{i.viewport&&(i.viewport.scrollLeft=f(g,a))}}):n==="vertical"?y.jsx(Dne,{...p,ref:r,onThumbPositionChange:()=>{if(i.viewport&&l.current){const g=i.viewport.scrollTop,v=zne(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=>{i.viewport&&(i.viewport.scrollTop=g)},onDragScroll:g=>{i.viewport&&(i.viewport.scrollTop=f(g))}}):null});k4.displayName="@mantine/core/ScrollAreaScrollbarVisible";const DR=S.forwardRef((e,r)=>{const n=ki(),{forceMount:o,...a}=e,[i,l]=S.useState(!1),s=e.orientation==="horizontal",c=J2(()=>{if(n.viewport){const d=n.viewport.offsetWidth{const{forceMount:n,...o}=e,a=ki(),[i,l]=S.useState(!1);return S.useEffect(()=>{const{scrollArea:s}=a;let c=0;if(s){const d=()=>{window.clearTimeout(c),l(!0)},u=()=>{c=window.setTimeout(()=>l(!1),a.scrollHideDelay)};return s.addEventListener("pointerenter",d),s.addEventListener("pointerleave",u),()=>{window.clearTimeout(c),s.removeEventListener("pointerenter",d),s.removeEventListener("pointerleave",u)}}},[a.scrollArea,a.scrollHideDelay]),n||i?y.jsx(DR,{"data-state":i?"visible":"hidden",...o,ref:r}):null});Mne.displayName="@mantine/core/ScrollAreaScrollbarHover";const dnt=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=ki(),i=e.orientation==="horizontal",[l,s]=S.useState("hidden"),c=J2(()=>s("idle"),100);return S.useEffect(()=>{if(l==="idle"){const d=window.setTimeout(()=>s("hidden"),a.scrollHideDelay);return()=>window.clearTimeout(d)}},[l,a.scrollHideDelay]),S.useEffect(()=>{const{viewport:d}=a,u=i?"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)}},[a.viewport,i,c]),n||l!=="hidden"?y.jsx(k4,{"data-state":l==="hidden"?"hidden":"visible",...o,ref:r,onPointerEnter:Pp(e.onPointerEnter,()=>s("interacting")),onPointerLeave:Pp(e.onPointerLeave,()=>s("idle"))}):null}),MR=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=ki(),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:l}=a,s=e.orientation==="horizontal";return S.useEffect(()=>(s?i(!0):l(!0),()=>{s?i(!1):l(!1)}),[s,i,l]),a.type==="hover"?y.jsx(Mne,{...o,ref:r,forceMount:n}):a.type==="scroll"?y.jsx(dnt,{...o,ref:r,forceMount:n}):a.type==="auto"?y.jsx(DR,{...o,ref:r,forceMount:n}):a.type==="always"?y.jsx(k4,{...o,ref:r}):null});MR.displayName="@mantine/core/ScrollAreaScrollbar";function unt(e,r=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},o=0;return(function a(){const i={left:e.scrollLeft,top:e.scrollTop},l=n.left!==i.left,s=n.top!==i.top;(l||s)&&r(),n=i,o=window.requestAnimationFrame(a)})(),()=>window.cancelAnimationFrame(o)}const Nne=S.forwardRef((e,r)=>{const{style:n,...o}=e,a=ki(),i=jne(),{onThumbPositionChange:l}=i,s=on(r,u=>i.onThumbChange(u)),c=S.useRef(void 0),d=J2(()=>{c.current&&(c.current(),c.current=void 0)},100);return S.useEffect(()=>{const{viewport:u}=a;if(u){const p=()=>{if(d(),!c.current){const f=unt(u,l);c.current=f,l()}};return l(),u.addEventListener("scroll",p),()=>u.removeEventListener("scroll",p)}},[a.viewport,d,l]),y.jsx("div",{"data-state":i.hasThumb?"visible":"hidden",...o,ref:s,style:{width:"var(--sa-thumb-width)",height:"var(--sa-thumb-height)",...n},onPointerDownCapture:Pp(e.onPointerDownCapture,u=>{const p=u.target.getBoundingClientRect(),f=u.clientX-p.left,g=u.clientY-p.top;i.onThumbPointerDown({x:f,y:g})}),onPointerUp:Pp(e.onPointerUp,i.onThumbPointerUp)})});Nne.displayName="@mantine/core/ScrollAreaThumb";const NR=S.forwardRef((e,r)=>{const{forceMount:n,...o}=e,a=jne();return n||a.hasThumb?y.jsx(Nne,{ref:r,...o}):null});NR.displayName="@mantine/core/ScrollAreaThumb";const Pne=S.forwardRef(({children:e,style:r,...n},o)=>{const a=ki(),i=on(o,a.onViewportChange);return y.jsx(Te,{...n,ref:i,style:{overflowX:a.scrollbarXEnabled?"scroll":"hidden",overflowY:a.scrollbarYEnabled?"scroll":"hidden",...r},children:y.jsx("div",{...a.getStyles("content"),ref:a.onContentChange,children:e})})});Pne.displayName="@mantine/core/ScrollAreaViewport";var PR={root:"m_d57069b5",content:"m_b1336c6",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const Bne={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},pnt=(e,{scrollbarSize:r,overscrollBehavior:n})=>({root:{"--scrollarea-scrollbar-size":Pe(r),"--scrollarea-over-scroll-behavior":n}}),Bp=We((e,r)=>{const n=Re("ScrollArea",Bne,e),{classNames:o,className:a,style:i,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:z,...j}=n,[A,R]=S.useState(!1),[T,O]=S.useState(!1),[P,L]=S.useState(!1),H=dt({name:"ScrollArea",props:n,classes:PR,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:d,varsResolver:pnt}),M=S.useRef(null),V=mne([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;O(q>G),L(U>Y)});return F.observe(B),()=>F.disconnect()},[M,x]),y.jsxs(Ene,{getStyles:H,type:u==="never"?"always":u,scrollHideDelay:p,ref:r,scrollbars:k,...H("root"),...j,children:[y.jsx(Pne,{...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"&&!T?"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(MR,{...H("scrollbar"),orientation:"horizontal","data-hidden":u==="never"||x==="present"&&!P?!0:void 0,forceMount:!0,onMouseEnter:()=>R(!0),onMouseLeave:()=>R(!1),children:y.jsx(NR,{...H("thumb")})}),(k==="xy"||k==="y")&&y.jsx(MR,{...H("scrollbar"),orientation:"vertical","data-hidden":u==="never"||x==="present"&&!T?!0:void 0,forceMount:!0,onMouseEnter:()=>R(!0),onMouseLeave:()=>R(!1),children:y.jsx(NR,{...H("thumb")})}),y.jsx(ant,{...H("corner"),"data-hovered":A||void 0,"data-hidden":u==="never"||void 0})]})});Bp.displayName="@mantine/core/ScrollArea";const BR=We((e,r)=>{const{children:n,classNames:o,styles:a,scrollbarSize:i,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:$,...z}=Re("ScrollAreaAutosize",Bne,e),j=S.useRef(null),A=mne([u,j]),[R,T]=S.useState(!1),O=S.useRef(!1);return S.useEffect(()=>{if(!$)return;const P=j.current;if(!P)return;const L=()=>{const M=P.scrollHeight>P.clientHeight;M!==R&&(O.current?$?.(M):(O.current=!0,M&&$?.(!0)),T(M))};L();const H=new ResizeObserver(L);return H.observe(P),()=>H.disconnect()},[$,R]),y.jsx(Te,{...z,ref:r,style:[{display:"flex",overflow:"hidden"},x],children:y.jsx(Te,{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(Bp,{classNames:o,styles:a,scrollHideDelay:l,scrollbarSize:i,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})})})});Bp.classes=PR,BR.displayName="@mantine/core/ScrollAreaAutosize",BR.classes=PR,Bp.Autosize=BR;var One={root:"m_87cf2631"};const hnt={__staticSelector:"UnstyledButton"},ps=Un((e,r)=>{const n=Re("UnstyledButton",hnt,e),{className:o,component:a="button",__staticSelector:i,unstyled:l,classNames:s,styles:c,style:d,attributes:u,...p}=n,f=dt({name:i,props:n,classes:One,className:o,style:d,classNames:s,styles:c,unstyled:l,attributes:u});return y.jsx(Te,{...f("root",{focusable:!0}),component:a,ref:r,type:a==="button"?"button":void 0,...p})});ps.classes=One,ps.displayName="@mantine/core/UnstyledButton";var Ine={root:"m_515a97f8"};const OR=We((e,r)=>{const n=Re("VisuallyHidden",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,attributes:d,...u}=n,p=dt({name:"VisuallyHidden",classes:Ine,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:d});return y.jsx(Te,{component:"span",ref:r,...p("root"),...u})});OR.classes=Ine,OR.displayName="@mantine/core/VisuallyHidden";var Lne={root:"m_1b7284a3"};const fnt=(e,{radius:r,shadow:n})=>({root:{"--paper-radius":r===void 0?void 0:hn(r),"--paper-shadow":Uz(n)}}),_4=Un((e,r)=>{const n=Re("Paper",null,e),{classNames:o,className:a,style:i,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:Lne,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:d,varsResolver:fnt});return y.jsx(Te,{ref:r,mod:[{"data-with-border":c},g],...x("root"),variant:f,...w})});_4.classes=Lne,_4.displayName="@mantine/core/Paper";function Fne(e,r,n,o){return e==="center"||o==="center"?{top:r}:e==="end"?{bottom:n}:e==="start"?{top:n}:{}}function Vne(e,r,n,o,a){return e==="center"||o==="center"?{left:r}:e==="end"?{[a==="ltr"?"right":"left"]:n}:e==="start"?{[a==="ltr"?"left":"right"]:n}:{}}const mnt={bottom:"borderTopLeftRadius",left:"borderTopRightRadius",right:"borderBottomLeftRadius",top:"borderBottomRightRadius"};function gnt({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,arrowX:i,arrowY:l,dir:s}){const[c,d="center"]=e.split("-"),u={width:r,height:r,transform:"rotate(45deg)",position:"absolute",[mnt[c]]:o},p=-r/2;return c==="left"?{...u,...Fne(d,l,n,a),right:p,borderLeftColor:"transparent",borderBottomColor:"transparent",clipPath:"polygon(100% 0, 0 0, 100% 100%)"}:c==="right"?{...u,...Fne(d,l,n,a),left:p,borderRightColor:"transparent",borderTopColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 100%)"}:c==="top"?{...u,...Vne(d,i,n,a,s),bottom:p,borderTopColor:"transparent",borderLeftColor:"transparent",clipPath:"polygon(0 100%, 100% 100%, 100% 0)"}:c==="bottom"?{...u,...Vne(d,i,n,a,s),top:p,borderBottomColor:"transparent",borderRightColor:"transparent",clipPath:"polygon(0 100%, 0 0, 100% 0)"}:{}}const S4=S.forwardRef(({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,visible:i,arrowX:l,arrowY:s,style:c,...d},u)=>{const{dir:p}=uc();return i?y.jsx("div",{...d,ref:u,style:{...c,...gnt({position:e,arrowSize:r,arrowOffset:n,arrowRadius:o,arrowPosition:a,dir:p,arrowX:l,arrowY:s})}}):null});S4.displayName="@mantine/core/FloatingArrow";function qne(e,r){if(e==="rtl"&&(r.includes("right")||r.includes("left"))){const[n,o]=r.split("-"),a=n==="right"?"left":"right";return o===void 0?a:`${a}-${o}`}return r}var Hne={root:"m_9814e45f"};const ynt={zIndex:gl("modal")},vnt=(e,{gradient:r,color:n,backgroundOpacity:o,blur:a,radius:i,zIndex:l})=>({root:{"--overlay-bg":r||(n!==void 0||o!==void 0)&&jre(n||"#000",o??.6)||void 0,"--overlay-filter":a?`blur(${Pe(a)})`:void 0,"--overlay-radius":i===void 0?void 0:hn(i),"--overlay-z-index":l?.toString()}}),Fm=Un((e,r)=>{const n=Re("Overlay",ynt,e),{classNames:o,className:a,style:i,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,z=dt({name:"Overlay",props:n,classes:Hne,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:vnt});return y.jsx(Te,{ref:r,...z("root"),mod:[{center:u,fixed:d},C],...$,children:p})});Fm.classes=Hne,Fm.displayName="@mantine/core/Overlay";function IR(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 bnt({target:e,reuseTargetNode:r,...n}){if(e)return typeof e=="string"?document.querySelector(e)||IR(n):e;if(r){const o=document.querySelector("[data-mantine-shared-portal-node]");if(o)return o;const a=IR(n);return a.setAttribute("data-mantine-shared-portal-node","true"),document.body.appendChild(a),a}return IR(n)}const xnt={reuseTargetNode:!0},Une=We((e,r)=>{const{children:n,target:o,reuseTargetNode:a,...i}=Re("Portal",xnt,e),[l,s]=S.useState(!1),c=S.useRef(null);return Yz(()=>(s(!0),c.current=bnt({target:o,reuseTargetNode:a,...i}),Zz(r,c.current),!o&&!a&&c.current&&document.body.appendChild(c.current),()=>{!o&&!a&&c.current&&document.body.removeChild(c.current)}),[o]),!l||!c.current?null:Ii.createPortal(y.jsx(y.Fragment,{children:n}),c.current)});Une.displayName="@mantine/core/Portal";const Op=We(({withinPortal:e=!0,children:r,...n},o)=>o4()==="test"||!e?y.jsx(y.Fragment,{children:r}):y.jsx(Une,{ref:o,...n,children:r}));Op.displayName="@mantine/core/OptionalPortal";const z0=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${e==="bottom"?10:-10}px)`},transitionProperty:"transform, opacity"}),E4={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:{...z0("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...z0("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...z0("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...z0("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...z0("top"),common:{transformOrigin:"top right"}}},Wne={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function wnt({transition:e,state:r,duration:n,timingFunction:o}){const a={WebkitBackfaceVisibility:"hidden",transitionDuration:`${n}ms`,transitionTimingFunction:o};return typeof e=="string"?e in E4?{transitionProperty:E4[e].transitionProperty,...a,...E4[e].common,...E4[e][Wne[r]]}:{}:{transitionProperty:e.transitionProperty,...a,...e.common,...e[Wne[r]]}}function knt({duration:e,exitDuration:r,timingFunction:n,mounted:o,onEnter:a,onExit:i,onEntered:l,onExited:s,enterDelay:c,exitDelay:d}){const u=uo(),p=Kz(),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 z=A=>{$();const R=A?a:i,T=A?l:s,O=f?0:A?e:r;v(O),O===0?(typeof R=="function"&&R(),typeof T=="function"&&T(),x(A?"entered":"exited")):_.current=requestAnimationFrame(()=>{QM.flushSync(()=>{x(A?"pre-entering":"pre-exiting")}),_.current=requestAnimationFrame(()=>{typeof R=="function"&&R(),x(A?"entering":"exiting"),k.current=window.setTimeout(()=>{typeof T=="function"&&T(),x(A?"entered":"exited")},O)})})},j=A=>{if($(),typeof(A?c:d)!="number"){z(A);return}C.current=window.setTimeout(()=>{z(A)},A?c:d)};return Tp(()=>{j(o)},[o]),S.useEffect(()=>()=>{$()},[]),{transitionDuration:g,transitionStatus:w,transitionTimingFunction:n||"ease"}}function kl({keepMounted:e,transition:r="fade",duration:n=250,exitDuration:o=n,mounted:a,children:i,timingFunction:l="ease",onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f}){const g=o4(),{transitionDuration:v,transitionStatus:w,transitionTimingFunction:x}=knt({mounted:a,exitDuration:o,duration:n,timingFunction:l,onExit:s,onEntered:c,onEnter:d,onExited:u,enterDelay:p,exitDelay:f});return v===0||g==="test"?a?y.jsx(y.Fragment,{children:i({})}):e?i({display:"none"}):null:w==="exited"?e?i({display:"none"}):null:y.jsx(y.Fragment,{children:i(wnt({transition:r,duration:v,state:w,timingFunction:x}))})}kl.displayName="@mantine/core/Transition";const[_nt,Gne]=ja("Popover component was not found in the tree");function C4({children:e,active:r=!0,refProp:n="ref",innerRef:o}){const a=GJe(r),i=on(a,o);return ml(e)?S.cloneElement(e,{[n]:i}):e}function Yne(e){return y.jsx(OR,{tabIndex:-1,"data-autofocus":!0,...e})}C4.displayName="@mantine/core/FocusTrap",Yne.displayName="@mantine/core/FocusTrapInitialFocus",C4.InitialFocus=Yne;var Xne={dropdown:"m_38a85659",arrow:"m_a31dc6c1",overlay:"m_3d7bc908"};const LR=We((e,r)=>{const n=Re("PopoverDropdown",null,e),{className:o,style:a,vars:i,children:l,onKeyDownCapture:s,variant:c,classNames:d,styles:u,...p}=n,f=Gne(),g=wre({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(Op,{...f.portalProps,withinPortal:f.withinPortal,children:y.jsx(kl,{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(C4,{active:f.trapFocus&&f.opened,innerRef:w,children:y.jsxs(Te,{...v,...p,variant:c,onKeyDownCapture:MJe(()=>{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,a]}),children:[l,y.jsx(S4,{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})})]})})})})});LR.classes=Xne,LR.displayName="@mantine/core/PopoverDropdown";const Snt={refProp:"ref",popupType:"dialog"},Zne=We((e,r)=>{const{children:n,refProp:o,popupType:a,...i}=Re("PopoverTarget",Snt,e);if(!ml(n))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 l=i,s=Gne(),c=on(s.reference,e4(n),r),d=s.withRoles?{"aria-haspopup":a,"aria-expanded":s.opened,"aria-controls":s.getDropdownId(),id:s.getTargetId()}:{};return S.cloneElement(n,{...l,...d,...s.targetProps,className:no(s.targetProps.className,l.className,n.props.className),[o]:c,...s.controlled?null:{onClick:()=>{s.onToggle(),n.props.onClick?.()}}})});Zne.displayName="@mantine/core/PopoverTarget";function Ent(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 Cnt(e,r,n){const o=Ent(e.middlewares),a=[pne(e.offset),Brt()];return e.dropdownVisible&&n!=="test"&&e.preventPositionChangeWhenVisible&&(o.flip=!1),o.shift&&a.push(SR(typeof o.shift=="boolean"?{limiter:hne(),padding:5}:{limiter:hne(),padding:5,...o.shift})),o.flip&&a.push(typeof o.flip=="boolean"?b4():b4(o.flip)),o.inline&&a.push(typeof o.inline=="boolean"?$0():$0(o.inline)),a.push(fne({element:e.arrowRef,padding:e.arrowOffset})),(o.size||e.width==="target")&&a.push(Prt({...typeof o.size=="boolean"?{}:o.size,apply({rects:i,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:i,availableWidth:l,availableHeight:s,...c}):Object.assign(d,{maxWidth:`${l}px`,maxHeight:`${s}px`})),e.width==="target"&&Object.assign(d,{width:`${i.reference.width}px`})}})),a}function $nt(e){const r=o4(),[n,o]=Md({value:e.opened,defaultValue:e.defaultOpened,finalValue:!1,onChange:e.onChange}),a=S.useRef(n),i=()=>{n&&!e.disabled&&o(!1)},l=()=>{e.disabled||o(!n)},s=jR({strategy:e.strategy,placement:e.preventPositionChangeWhenVisible?e.positionRef.current:e.position,middleware:Cnt(e,()=>s,r),whileElementsMounted:e.keepMounted?void 0:kR});return S.useEffect(()=>{if(!(!s.refs.reference.current||!s.refs.floating.current)&&n)return kR(s.refs.reference.current,s.refs.floating.current,s.update)},[n,s.update]),Tp(()=>{e.onPositionChange?.(s.placement),e.positionRef.current=s.placement},[s.placement,e.preventPositionChangeWhenVisible]),Tp(()=>{n!==a.current&&(n?e.onOpen?.():e.onClose?.()),a.current=n},[n,e.onClose,e.onOpen]),Tp(()=>{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:i,onToggle:l}}const znt={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:gl("popover"),__staticSelector:"Popover",width:"max-content"},Rnt=(e,{radius:r,shadow:n})=>({dropdown:{"--popover-radius":r===void 0?void 0:hn(r),"--popover-shadow":Uz(n)}});function po(e){const r=Re("Popover",znt,e),{children:n,position:o,offset:a,onPositionChange:i,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:z,withinPortal:j,portalProps:A,closeOnEscape:R,clickOutsideEvents:T,trapFocus:O,onClose:P,onDismiss:L,onOpen:H,onChange:M,zIndex:V,radius:B,shadow:F,id:q,defaultOpened:G,__staticSelector:U,withRoles:Y,disabled:Z,returnFocus:I,variant:W,keepMounted:K,vars:Q,floatingStrategy:ae,withOverlay:te,overlayProps:re,hideDetached:ue,attributes:_e,preventPositionChangeWhenVisible:ce,...pe}=r,xe=dt({name:U,props:r,classes:Xne,classNames:_,styles:$,unstyled:C,attributes:_e,rootSelector:"dropdown",vars:Q,varsResolver:Rnt}),{resolvedStyles:De}=eR({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:Ot}=uc(),Et=o4(),be=vl(q),ke=$nt({middlewares:f,width:p,position:qne(Ot,o),offset:typeof a=="number"?a+(g?v/2:0):a,arrowRef:Le,arrowOffset:w,onPositionChange:i,positionDependencies:l,opened:s,defaultOpened:G,onChange:M,onOpen:H,onClose:P,onDismiss:L,strategy:ae,dropdownVisible:Be,setDropdownVisible:Je,positionRef:st,disabled:Z,preventPositionChangeWhenVisible:ce,keepMounted:K});xre(()=>{z&&(ke.onClose(),L?.())},T,[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]),jr=S.useCallback(()=>{c?.onEntered?.(),u?.()},[c?.onEntered,u]);return y.jsxs(_nt,{value:{returnFocus:I,disabled:Z,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:jr},width:p,withArrow:g,arrowSize:v,arrowOffset:w,arrowRadius:x,arrowPosition:k,placement:ke.floating.placement,trapFocus:O,withinPortal:j,portalProps:A,zIndex:V,radius:B,shadow:F,closeOnEscape:R,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:K,getStyles:xe,resolvedStyles:De,floatingStrategy:ae,referenceHidden:ue&&Et!=="test"?ke.floating.middlewareData.hide?.referenceHidden:!1},children:[n,te&&y.jsx(kl,{transition:"fade",mounted:ke.opened,duration:c?.duration||250,exitDuration:c?.exitDuration||250,children:er=>y.jsx(Op,{withinPortal:j,children:y.jsx(Fm,{...re,...xe("overlay",{className:re?.className,style:[er,re?.style]})})})})]})}po.Target=Zne,po.Dropdown=LR,po.displayName="@mantine/core/Popover",po.extend=e=>e;var _l={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 Kne=S.forwardRef(({className:e,...r},n)=>y.jsxs(Te,{component:"span",className:no(_l.barsLoader,e),...r,ref:n,children:[y.jsx("span",{className:_l.bar}),y.jsx("span",{className:_l.bar}),y.jsx("span",{className:_l.bar})]}));Kne.displayName="@mantine/core/Bars";const Qne=S.forwardRef(({className:e,...r},n)=>y.jsxs(Te,{component:"span",className:no(_l.dotsLoader,e),...r,ref:n,children:[y.jsx("span",{className:_l.dot}),y.jsx("span",{className:_l.dot}),y.jsx("span",{className:_l.dot})]}));Qne.displayName="@mantine/core/Dots";const Jne=S.forwardRef(({className:e,...r},n)=>y.jsx(Te,{component:"span",className:no(_l.ovalLoader,e),...r,ref:n}));Jne.displayName="@mantine/core/Oval";const eoe={bars:Kne,oval:Jne,dots:Qne},jnt={loaders:eoe,type:"oval"},Tnt=(e,{size:r,color:n})=>({root:{"--loader-size":Qt(r,"loader-size"),"--loader-color":n?qo(n,e):void 0}}),Ip=We((e,r)=>{const n=Re("Loader",jnt,e),{size:o,color:a,type:i,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:_l,className:s,style:c,classNames:d,styles:u,unstyled:p,attributes:w,vars:l,varsResolver:Tnt});return v?y.jsx(Te,{...k("root"),ref:r,...x,children:v}):y.jsx(Te,{...k("root"),ref:r,component:f[i],variant:g,size:o,...x})});Ip.defaultLoaders=eoe,Ip.classes=_l,Ip.displayName="@mantine/core/Loader";var Vm={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21",groupSection:"m_437b6484"};const toe={orientation:"horizontal"},Ant=(e,{borderWidth:r})=>({group:{"--ai-border-width":Pe(r)}}),FR=We((e,r)=>{const n=Re("ActionIconGroup",toe,e),{className:o,style:a,classNames:i,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=Re("ActionIconGroup",toe,e),w=dt({name:"ActionIconGroup",props:n,classes:Vm,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:Ant,rootSelector:"group"});return y.jsx(Te,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});FR.classes=Vm,FR.displayName="@mantine/core/ActionIconGroup";const Dnt=(e,{radius:r,color:n,gradient:o,variant:a,autoContrast:i,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:i});return{groupSection:{"--section-height":Qt(l,"section-height"),"--section-padding-x":Qt(l,"section-padding-x"),"--section-fz":Ro(l),"--section-radius":r===void 0?void 0:hn(r),"--section-bg":n||a?s.background:void 0,"--section-color":s.color,"--section-bd":n||a?s.border:void 0}}},VR=We((e,r)=>{const n=Re("ActionIconGroupSection",null,e),{className:o,style:a,classNames:i,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:Vm,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:Dnt,rootSelector:"groupSection"});return y.jsx(Te,{...w("groupSection"),ref:r,variant:d,...v})});VR.classes=Vm,VR.displayName="@mantine/core/ActionIconGroupSection";const Mnt=(e,{size:r,radius:n,variant:o,gradient:a,color:i,autoContrast:l})=>{const s=e.variantColorResolver({color:i||e.primaryColor,theme:e,gradient:a,variant:o||"filled",autoContrast:l});return{root:{"--ai-size":Qt(r,"ai-size"),"--ai-radius":n===void 0?void 0:hn(n),"--ai-bg":i||o?s.background:void 0,"--ai-hover":i||o?s.hover:void 0,"--ai-hover-color":i||o?s.hoverColor:void 0,"--ai-color":s.color,"--ai-bd":i||o?s.border:void 0}}},$4=Un((e,r)=>{const n=Re("ActionIcon",null,e),{className:o,unstyled:a,variant:i,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:z,attributes:j,...A}=n,R=dt({name:["ActionIcon",v],props:n,className:o,style:c,classes:Vm,classNames:l,styles:s,unstyled:a,attributes:j,vars:x,varsResolver:Mnt});return y.jsxs(ps,{...R("root",{active:!C&&!d&&!_}),...A,unstyled:a,variant:i,size:p,disabled:C||d,ref:r,mod:[{loading:d,disabled:C||_},z],children:[typeof d=="boolean"&&y.jsx(kl,{mounted:d,transition:"slide-down",duration:150,children:T=>y.jsx(Te,{component:"span",...R("loader",{style:T}),"aria-hidden":!0,children:y.jsx(Ip,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...u})})}),y.jsx(Te,{component:"span",mod:{loading:d},...R("icon"),children:k})]})});$4.classes=Vm,$4.displayName="@mantine/core/ActionIcon",$4.Group=FR,$4.GroupSection=VR;const roe=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"})}));roe.displayName="@mantine/core/CloseIcon";var noe={root:"m_86a44da5","root--subtle":"m_220c80f2"};const Nnt={variant:"subtle"},Pnt=(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)}}),Lp=Un((e,r)=>{const n=Re("CloseButton",Nnt,e),{iconSize:o,children:a,vars:i,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:noe,classNames:c,styles:u,unstyled:p,attributes:k,vars:i,varsResolver:Pnt});return y.jsxs(ps,{ref:r,..._,unstyled:p,variant:v,disabled:g,mod:[{disabled:g||f},x],...$("root",{variant:v,active:!g&&!f}),children:[w||y.jsx(roe,{}),a]})});Lp.classes=noe,Lp.displayName="@mantine/core/CloseButton";function Bnt(e){return S.Children.toArray(e).filter(Boolean)}var ooe={root:"m_4081bf90"};const Ont={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},Int=(e,{grow:r,preventGrowOverflow:n,gap:o,align:a,justify:i,wrap:l},{childWidth:s})=>({root:{"--group-child-width":r&&n?s:void 0,"--group-gap":ro(o),"--group-align":a,"--group-justify":i,"--group-wrap":l}}),aoe=We((e,r)=>{const n=Re("Group",Ont,e),{classNames:o,className:a,style:i,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,z=Bnt(c),j=z.length,A=ro(d??"md"),R={childWidth:`calc(${100/j}% - (${A} - ${A} / ${j}))`},T=dt({name:"Group",props:n,stylesCtx:R,className:a,style:i,classes:ooe,classNames:o,styles:l,unstyled:s,attributes:_,vars:w,varsResolver:Int});return y.jsx(Te,{...T("root"),ref:r,variant:x,mod:[{grow:g},C],size:k,...$,children:z})});aoe.classes=ooe,aoe.displayName="@mantine/core/Group";const[Lnt,mc]=ja("ModalBase component was not found in tree");function Fnt({opened:e,transitionDuration:r}){const[n,o]=S.useState(e),a=S.useRef(-1),i=Kz()?0:r;return S.useEffect(()=>(e?(o(!0),window.clearTimeout(a.current)):i===0?o(!1):a.current=window.setTimeout(()=>o(!1),i),()=>window.clearTimeout(a.current)),[e,i]),n}function Vnt({id:e,transitionProps:r,opened:n,trapFocus:o,closeOnEscape:a,onClose:i,returnFocus:l}){const s=vl(e),[c,d]=S.useState(!1),[u,p]=S.useState(!1),f=typeof r?.duration=="number"?r?.duration:200,g=Fnt({opened:n,transitionDuration:f});return ZJe("keydown",v=>{v.key==="Escape"&&a&&!v.isComposing&&n&&v.target?.getAttribute("data-mantine-stop-propagation")!=="true"&&i()},{capture:!0}),wre({opened:n,shouldReturnFocus:o&&l}),{_id:s,titleMounted:c,bodyMounted:u,shouldLockScroll:g,setTitleMounted:d,setBodyMounted:p}}const qR=S.forwardRef(({keepMounted:e,opened:r,onClose:n,id:o,transitionProps:a,onExitTransitionEnd:i,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:$,...z},j)=>{const{_id:A,titleMounted:R,bodyMounted:T,shouldLockScroll:O,setTitleMounted:P,setBodyMounted:L}=Vnt({id:o,transitionProps:a,opened:r,trapFocus:s,closeOnEscape:c,onClose:n,returnFocus:d}),{key:H,...M}=$||{};return y.jsx(Op,{...f,withinPortal:p,children:y.jsx(Lnt,{value:{opened:r,onClose:n,closeOnClickOutside:u,onExitTransitionEnd:i,onEnterTransitionEnd:l,transitionProps:{...a,keepMounted:e},getTitleId:()=>`${A}-title`,getBodyId:()=>`${A}-body`,titleMounted:R,bodyMounted:T,setTitleMounted:P,setBodyMounted:L,trapFocus:s,closeOnEscape:c,zIndex:w,unstyled:_},children:y.jsx(mre,{enabled:O&&g,...M,children:y.jsx(Te,{ref:j,...z,__vars:{...C,"--mb-z-index":(w||gl("modal")).toString(),"--mb-shadow":Uz(x),"--mb-padding":ro(k)},children:v})},H)})})});qR.displayName="@mantine/core/ModalBase";function qnt(){const e=mc();return S.useEffect(()=>(e.setBodyMounted(!0),()=>e.setBodyMounted(!1)),[]),e.getBodyId()}var qm={title:"m_615af6c9",header:"m_b5489c3c",inner:"m_60c222c7",content:"m_fd1ab0aa",close:"m_606cb269",body:"m_5df29311"};const HR=S.forwardRef(({className:e,...r},n)=>{const o=qnt(),a=mc();return y.jsx(Te,{ref:n,...r,id:o,className:no({[qm.body]:!a.unstyled},e)})});HR.displayName="@mantine/core/ModalBaseBody";const ioe=S.forwardRef(({className:e,onClick:r,...n},o)=>{const a=mc();return y.jsx(Lp,{ref:o,...n,onClick:i=>{a.onClose(),r?.(i)},className:no({[qm.close]:!a.unstyled},e),unstyled:a.unstyled})});ioe.displayName="@mantine/core/ModalBaseCloseButton";const UR=S.forwardRef(({transitionProps:e,className:r,innerProps:n,onKeyDown:o,style:a,...i},l)=>{const s=mc();return y.jsx(kl,{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({[qm.inner]:!s.unstyled},n.className),children:y.jsx(C4,{active:s.opened&&s.trapFocus,innerRef:l,children:y.jsx(_4,{...i,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:[a,c],className:no({[qm.content]:!s.unstyled},r),unstyled:s.unstyled,children:i.children})})})})});UR.displayName="@mantine/core/ModalBaseContent";const loe=S.forwardRef(({className:e,...r},n)=>{const o=mc();return y.jsx(Te,{component:"header",ref:n,className:no({[qm.header]:!o.unstyled},e),...r})});loe.displayName="@mantine/core/ModalBaseHeader";const Hnt={duration:200,timingFunction:"ease",transition:"fade"};function Unt(e){const r=mc();return{...Hnt,...r.transitionProps,...e}}const WR=S.forwardRef(({onClick:e,transitionProps:r,style:n,visible:o,...a},i)=>{const l=mc(),s=Unt(r);return y.jsx(kl,{mounted:o!==void 0?o:l.opened,...s,transition:"fade",children:c=>y.jsx(Fm,{ref:i,fixed:!0,style:[n,c],zIndex:l.zIndex,unstyled:l.unstyled,onClick:d=>{e?.(d),l.closeOnClickOutside&&l.onClose()},...a})})});WR.displayName="@mantine/core/ModalBaseOverlay";function Wnt(){const e=mc();return S.useEffect(()=>(e.setTitleMounted(!0),()=>e.setTitleMounted(!1)),[]),e.getTitleId()}const soe=S.forwardRef(({className:e,...r},n)=>{const o=Wnt(),a=mc();return y.jsx(Te,{component:"h2",ref:n,className:no({[qm.title]:!a.unstyled},e),...r,id:o})});soe.displayName="@mantine/core/ModalBaseTitle";function coe({children:e}){return y.jsx(y.Fragment,{children:e})}const[Gnt,Ynt]=jm({size:"sm"}),doe=We((e,r)=>{const n=Re("InputClearButton",null,e),{size:o,variant:a,vars:i,classNames:l,styles:s,...c}=n,d=Ynt(),{resolvedClassNames:u,resolvedStyles:p}=eR({classNames:l,styles:s,props:n});return y.jsx(Lp,{variant:a||"transparent",ref:r,size:o||d?.size||"sm",classNames:u,styles:p,__staticSelector:"InputClearButton",style:{pointerEvents:"all",background:"var(--input-bg)",...c.style},...c})});doe.displayName="@mantine/core/InputClearButton";const Xnt={xs:7,sm:8,md:10,lg:12,xl:15};function Znt({__clearable:e,__clearSection:r,rightSection:n,__defaultRightSection:o,size:a="sm"}){const i=e&&r;return i&&(n||o)?y.jsxs("div",{"data-combined-clear-section":!0,style:{display:"flex",gap:2,alignItems:"center",paddingInlineEnd:Xnt[a]},children:[i,n||o]}):n===null?null:n||i||o}const[Knt,z4]=jm({offsetBottom:!1,offsetTop:!1,describedBy:void 0,getStyles:null,inputId:void 0,labelId:void 0});var _i={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 Qnt=(e,{size:r})=>({description:{"--input-description-size":r===void 0?void 0:`calc(${Ro(r)} - ${Pe(2)})`}}),R4=We((e,r)=>{const n=Re("InputDescription",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,size:d,__staticSelector:u,__inheritStyles:p=!0,attributes:f,variant:g,...v}=Re("InputDescription",null,n),w=z4(),x=dt({name:["InputWrapper",u],props:n,classes:_i,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,rootSelector:"description",vars:c,varsResolver:Qnt}),k=p&&w?.getStyles||x;return y.jsx(Te,{component:"p",ref:r,variant:g,size:d,...k("description",w?.getStyles?{className:a,style:i}:void 0),...v})});R4.classes=_i,R4.displayName="@mantine/core/InputDescription";const Jnt=(e,{size:r})=>({error:{"--input-error-size":r===void 0?void 0:`calc(${Ro(r)} - ${Pe(2)})`}}),j4=We((e,r)=>{const n=Re("InputError",null,e),{classNames:o,className:a,style:i,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:_i,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,rootSelector:"error",vars:c,varsResolver:Jnt}),x=z4(),k=f&&x?.getStyles||w;return y.jsx(Te,{component:"p",ref:r,variant:g,size:d,...k("error",x?.getStyles?{className:a,style:i}:void 0),...v})});j4.classes=_i,j4.displayName="@mantine/core/InputError";const uoe={labelElement:"label"},eot=(e,{size:r})=>({label:{"--input-label-size":Ro(r),"--input-asterisk-color":void 0}}),T4=We((e,r)=>{const n=Re("InputLabel",uoe,e),{classNames:o,className:a,style:i,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,..._}=Re("InputLabel",uoe,n),$=dt({name:["InputWrapper",w],props:n,classes:_i,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,rootSelector:"label",vars:c,varsResolver:eot}),z=z4(),j=z?.getStyles||$;return y.jsxs(Te,{...j("label",z?.getStyles?{className:a,style:i}: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",{...j("required"),"aria-hidden":!0,children:" *"})]})});T4.classes=_i,T4.displayName="@mantine/core/InputLabel";const GR=We((e,r)=>{const n=Re("InputPlaceholder",null,e),{classNames:o,className:a,style:i,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:_i,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,rootSelector:"placeholder"});return y.jsx(Te,{...w("placeholder"),mod:[{error:!!p},f],component:"span",variant:u,ref:r,...v})});GR.classes=_i,GR.displayName="@mantine/core/InputPlaceholder";function tot(e,{hasDescription:r,hasError:n}){const o=e.findIndex(s=>s==="input"),a=e.slice(0,o),i=e.slice(o+1),l=r&&a.includes("description")||n&&a.includes("error");return{offsetBottom:r&&i.includes("description")||n&&i.includes("error"),offsetTop:l}}const rot={labelElement:"label",inputContainer:e=>e,inputWrapperOrder:["label","description","input","error"]},not=(e,{size:r})=>({label:{"--input-label-size":Ro(r),"--input-asterisk-color":void 0},error:{"--input-error-size":r===void 0?void 0:`calc(${Ro(r)} - ${Pe(2)})`},description:{"--input-description-size":r===void 0?void 0:`calc(${Ro(r)} - ${Pe(2)})`}}),YR=We((e,r)=>{const n=Re("InputWrapper",rot,e),{classNames:o,className:a,style:i,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:z,withAsterisk:j,id:A,required:R,__stylesApiProps:T,mod:O,attributes:P,...L}=n,H=dt({name:["InputWrapper",p],props:T||n,classes:_i,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:not}),M={size:d,variant:u,__staticSelector:p},V=vl(A),B=typeof j=="boolean"?j:R,F=_?.id||`${V}-error`,q=C?.id||`${V}-description`,G=V,U=!!w&&typeof w!="boolean",Y=!!x,Z=`${U?F:""} ${Y?q:""}`,I=Z.trim().length>0?Z.trim():void 0,W=k?.id||`${V}-label`,K=v&&y.jsx(T4,{labelElement:$,id:W,htmlFor:G,required:B,...M,...k,children:v},"label"),Q=Y&&y.jsx(R4,{...C,...M,size:C?.size||M.size,id:C?.id||q,children:x},"description"),ae=y.jsx(S.Fragment,{children:f(z)},"input"),te=U&&S.createElement(j4,{..._,...M,size:_?.size||M.size,key:"error",id:_?.id||F},w),re=g.map(ue=>{switch(ue){case"label":return K;case"input":return ae;case"description":return Q;case"error":return te;default:return null}});return y.jsx(Knt,{value:{getStyles:H,describedBy:I,inputId:G,labelId:W,...tot(g,{hasDescription:Y,hasError:U})},children:y.jsx(Te,{ref:r,variant:u,size:d,mod:[{error:!!w},O],...H("root"),...L,children:re})})});YR.classes=_i,YR.displayName="@mantine/core/InputWrapper";const oot={variant:"default",leftSectionPointerEvents:"none",rightSectionPointerEvents:"none",withAria:!0,withErrorStyles:!0,size:"sm"},aot=(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":Ro(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}}),ia=Un((e,r)=>{const n=Re("Input",oot,e),{classNames:o,className:a,style:i,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:z,leftSectionPointerEvents:j,variant:A,vars:R,pointer:T,multiline:O,radius:P,id:L,withAria:H,withErrorStyles:M,mod:V,inputSize:B,attributes:F,__clearSection:q,__clearable:G,__defaultRightSection:U,...Y}=n,{styleProps:Z,rest:I}=nR(Y),W=z4(),K={offsetBottom:W?.offsetBottom,offsetTop:W?.offsetTop},Q=dt({name:["Input",d],props:u||n,classes:_i,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:F,stylesCtx:K,rootSelector:"wrapper",vars:R,varsResolver:aot}),ae=H?{required:c,disabled:v,"aria-invalid":!!g,"aria-describedby":W?.describedBy,id:W?.inputId||L}:{},te=Znt({__clearable:G,__clearSection:q,rightSection:C,__defaultRightSection:U,size:p});return y.jsx(Gnt,{value:{size:p||"sm"},children:y.jsxs(Te,{...Q("wrapper"),...Z,...f,mod:[{error:!!g&&M,pointer:T,disabled:v,multiline:O,"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(Te,{component:"input",...I,...ae,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})]})})});ia.classes=_i,ia.Wrapper=YR,ia.Label=T4,ia.Error=j4,ia.Description=R4,ia.Placeholder=GR,ia.ClearButton=doe,ia.displayName="@mantine/core/Input";function iot(e,r,n){const o=Re(e,r,n),{label:a,description:i,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:z,inputWrapperOrder:j,withAsterisk:A,variant:R,vars:T,mod:O,attributes:P,...L}=o,{styleProps:H,rest:M}=nR(L),V={label:a,description:i,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:z,inputWrapperOrder:j,withAsterisk:A,variant:R,id:C,mod:O,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:R,id:C,attributes:P}}}const lot={__staticSelector:"InputBase",withAria:!0,size:"sm"},A4=Un((e,r)=>{const{inputProps:n,wrapperProps:o,...a}=iot("InputBase",lot,e);return y.jsx(ia.Wrapper,{...o,children:y.jsx(ia,{...n,...a,ref:r})})});A4.classes={...ia.classes,...ia.Wrapper.classes},A4.displayName="@mantine/core/InputBase";const sot={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 poe={root:"m_8bffd616"};const hoe=Un((e,r)=>{const n=Re("Flex",null,e),{classNames:o,className:a,style:i,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:poe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:x,vars:c}),_=uo(),$=_0(),z=Pre({styleProps:{gap:d,rowGap:u,columnGap:p,align:f,justify:g,wrap:v,direction:w},theme:_,data:sot});return y.jsxs(y.Fragment,{children:[z.hasResponsiveStyles&&y.jsx(Mm,{selector:`.${$}`,styles:z.styles,media:z.media}),y.jsx(Te,{ref:r,...C("root",{className:$,style:Dd(z.inlineStyles)}),...k})]})});hoe.classes=poe,hoe.displayName="@mantine/core/Flex";function cot(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 dot({target:e,parent:r,ref:n,displayAfterTransitionEnd:o}){const a=S.useRef(-1),[i,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=Bd(w.borderTopWidth)+Bd(x.borderTopWidth),C=Bd(w.borderLeftWidth)+Bd(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(a.current),n.current&&(n.current.style.transitionDuration="0ms"),d(),a.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=>{cot(v.target,r)&&(u(),c(!1))};return r.addEventListener("transitionend",g),()=>{r.removeEventListener("transitionend",g)}}},[r]),ret(()=>{iet()!=="test"&&l(!0)},20,{autoInvoke:!0}),oet(g=>{g.forEach(v=>{v.type==="attributes"&&v.attributeName==="dir"&&u()})},{attributes:!0,attributeFilter:["dir"]},()=>document.documentElement),{initialized:i,hidden:s}}var foe={root:"m_96b553a6"};const uot=(e,{transitionDuration:r})=>({root:{"--transition-duration":typeof r=="number"?`${r}ms`:r}}),XR=We((e,r)=>{const n=Re("FloatingIndicator",null,e),{classNames:o,className:a,style:i,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:foe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:uot}),k=S.useRef(null),{initialized:C,hidden:_}=dot({target:d,parent:u,ref:k,displayAfterTransitionEnd:g}),$=on(r,k);return!d||!u?null:y.jsx(Te,{ref:$,mod:[{initialized:C,hidden:_},f],...x("root"),...w})});XR.displayName="@mantine/core/FloatingIndicator",XR.classes=foe;function pot({open:e,close:r,openDelay:n,closeDelay:o}){const a=S.useRef(-1),i=S.useRef(-1),l=()=>{window.clearTimeout(a.current),window.clearTimeout(i.current)},s=()=>{l(),n===0||n===void 0?e():a.current=window.setTimeout(e,n)},c=()=>{l(),o===0||o===void 0?r():i.current=window.setTimeout(r,o)};return S.useEffect(()=>l,[]),{openDropdown:s,closeDropdown:c}}function ZR({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"})})}ZR.displayName="@mantine/core/AccordionChevron";var moe={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 hot=(e,{radius:r,color:n,variant:o,autoContrast:a})=>{const i=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:o||"light",autoContrast:a});return{root:{"--alert-radius":r===void 0?void 0:hn(r),"--alert-bg":n||o?i.background:void 0,"--alert-color":i.color,"--alert-bd":n||o?i.border:void 0}}},goe=We((e,r)=>{const n=Re("Alert",null,e),{classNames:o,className:a,style:i,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:z,...j}=n,A=dt({name:"Alert",classes:moe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:z,vars:c,varsResolver:hot}),R=vl(g),T=p&&`${R}-title`||void 0,O=`${R}-body`;return y.jsx(Te,{id:R,...A("root",{variant:C}),variant:C,ref:r,role:$||"alert",...j,"aria-describedby":f?O:void 0,"aria-labelledby":p?T: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:T,...A("label"),children:p})}),f&&y.jsx("div",{id:O,...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})]})})});goe.classes=moe,goe.displayName="@mantine/core/Alert";var yoe={root:"m_b6d8b162"};function fot(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const mot={inherit:!1},got=(e,{variant:r,lineClamp:n,gradient:o,size:a,color:i})=>({root:{"--text-fz":Ro(a),"--text-lh":NJe(a),"--text-gradient":r==="gradient"?_et(o,e):void 0,"--text-line-clamp":typeof n=="number"?n.toString():void 0,"--text-color":i?qo(i,e):void 0}}),R0=Un((e,r)=>{const n=Re("Text",mot,e),{lineClamp:o,truncate:a,inline:i,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,z=dt({name:["Text",d],props:n,classes:yoe,className:p,style:f,classNames:g,styles:v,unstyled:w,attributes:_,vars:u,varsResolver:got});return y.jsx(Te,{...z("root",{focusable:!0}),ref:r,component:c?"span":"p",variant:x,mod:[{"data-truncate":fot(a),"data-line-clamp":typeof o=="number","data-inline":i,"data-inherit":l},k],size:C,...$})});R0.classes=yoe,R0.displayName="@mantine/core/Text";var voe={root:"m_849cf0da"};const yot={underline:"hover"},boe=Un((e,r)=>{const{underline:n,className:o,unstyled:a,mod:i,...l}=Re("Anchor",yot,e);return y.jsx(R0,{component:"a",ref:r,className:no({[voe.root]:!a},o),...l,mod:[{underline:n},i],__staticSelector:"Anchor",unstyled:a})});boe.classes=voe,boe.displayName="@mantine/core/Anchor";function xoe(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=>xoe(r))}:e}function vot(e){return e?e.map(r=>xoe(r)):[]}function woe(e){return e.reduce((r,n)=>"group"in n?{...r,...woe(n.items)}:(r[n.value]=n,r),{})}var Ho={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 bot={error:null},xot=(e,{size:r,color:n})=>({chevron:{"--combobox-chevron-size":Qt(r,"combobox-chevron-size"),"--combobox-chevron-color":n?qo(n,e):void 0}}),KR=We((e,r)=>{const n=Re("ComboboxChevron",bot,e),{size:o,error:a,style:i,className:l,classNames:s,styles:c,unstyled:d,vars:u,mod:p,...f}=n,g=dt({name:"ComboboxChevron",classes:Ho,props:n,style:i,className:l,classNames:s,styles:c,unstyled:d,vars:u,varsResolver:xot,rootSelector:"chevron"});return y.jsx(Te,{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:a},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"})})});KR.classes=Ho,KR.displayName="@mantine/core/ComboboxChevron";const[wot,Si]=ja("Combobox component was not found in tree"),koe=S.forwardRef(({size:e,onMouseDown:r,onClick:n,onClear:o,...a},i)=>y.jsx(ia.ClearButton,{ref:i,tabIndex:-1,"aria-hidden":!0,...a,onMouseDown:l=>{l.preventDefault(),r?.(l)},onClick:l=>{o(),n?.(l)}}));koe.displayName="@mantine/core/ComboboxClearButton";const QR=We((e,r)=>{const{classNames:n,styles:o,className:a,style:i,hidden:l,...s}=Re("ComboboxDropdown",null,e),c=Si();return y.jsx(po.Dropdown,{...s,ref:r,role:"presentation","data-hidden":l||void 0,...c.getStyles("dropdown",{className:a,style:i,classNames:n,styles:o})})});QR.classes=Ho,QR.displayName="@mantine/core/ComboboxDropdown";const kot={refProp:"ref"},_oe=We((e,r)=>{const{children:n,refProp:o}=Re("ComboboxDropdownTarget",kot,e);if(Si(),!ml(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})});_oe.displayName="@mantine/core/ComboboxDropdownTarget";const JR=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("ComboboxEmpty",null,e),c=Si();return y.jsx(Te,{ref:r,...c.getStyles("empty",{className:o,classNames:n,styles:i,style:a}),...s})});JR.classes=Ho,JR.displayName="@mantine/core/ComboboxEmpty";function ej({onKeyDown:e,withKeyboardNavigation:r,withAriaAttributes:n,withExpandedAttribute:o,targetType:a,autoComplete:i}){const l=Si(),[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()):a==="button"&&(u.preventDefault(),l.store.openDropdown("keyboard"))}u.key==="Escape"&&l.store.closeDropdown("keyboard"),u.nativeEvent.code==="Space"&&a==="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:i,"data-expanded":l.store.dropdownOpened||void 0,"data-mantine-stop-propagation":l.store.dropdownOpened||void 0}:{},onKeyDown:d}}const _ot={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},Soe=We((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Re("ComboboxEventsTarget",_ot,e);if(!ml(n))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 u=Si(),p=ej({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:n.props.onKeyDown,autoComplete:c});return S.cloneElement(n,{...p,...d,[o]:on(r,u.store.targetRef,e4(n))})});Soe.displayName="@mantine/core/ComboboxEventsTarget";const tj=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("ComboboxFooter",null,e),c=Si();return y.jsx(Te,{ref:r,...c.getStyles("footer",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});tj.classes=Ho,tj.displayName="@mantine/core/ComboboxFooter";const rj=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,children:s,label:c,id:d,...u}=Re("ComboboxGroup",null,e),p=Si(),f=vl(d);return y.jsxs(Te,{ref:r,role:"group","aria-labelledby":c?f:void 0,...p.getStyles("group",{className:o,classNames:n,style:a,styles:i}),...u,children:[c&&y.jsx("div",{id:f,...p.getStyles("groupLabel",{classNames:n,styles:i}),children:c}),s]})});rj.classes=Ho,rj.displayName="@mantine/core/ComboboxGroup";const nj=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("ComboboxHeader",null,e),c=Si();return y.jsx(Te,{ref:r,...c.getStyles("header",{className:o,classNames:n,style:a,styles:i}),...s,onMouseDown:d=>{d.preventDefault()}})});nj.classes=Ho,nj.displayName="@mantine/core/ComboboxHeader";function Eoe({value:e,valuesDivider:r=",",...n}){return y.jsx("input",{type:"hidden",value:Array.isArray(e)?e.join(r):e||"",...n})}Eoe.displayName="@mantine/core/ComboboxHiddenInput";const oj=We((e,r)=>{const n=Re("ComboboxOption",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,onClick:c,id:d,active:u,onMouseDown:p,onMouseOver:f,disabled:g,selected:v,mod:w,...x}=n,k=Si(),C=S.useId(),_=d||C;return y.jsx(Te,{...k.getStyles("option",{className:a,classNames:o,styles:l,style:i}),...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?.($)}})});oj.classes=Ho,oj.displayName="@mantine/core/ComboboxOption";const aj=We((e,r)=>{const n=Re("ComboboxOptions",null,e),{classNames:o,className:a,style:i,styles:l,id:s,onMouseDown:c,labelledBy:d,...u}=n,p=Si(),f=vl(s);return S.useEffect(()=>{p.store.setListId(f)},[f]),y.jsx(Te,{ref:r,...p.getStyles("options",{className:a,style:i,classNames:o,styles:l}),...u,id:f,role:"listbox","aria-labelledby":d,onMouseDown:g=>{g.preventDefault(),c?.(g)}})});aj.classes=Ho,aj.displayName="@mantine/core/ComboboxOptions";const Sot={withAriaAttributes:!0,withKeyboardNavigation:!0},ij=We((e,r)=>{const n=Re("ComboboxSearch",Sot,e),{classNames:o,styles:a,unstyled:i,vars:l,withAriaAttributes:s,onKeyDown:c,withKeyboardNavigation:d,size:u,...p}=n,f=Si(),g=f.getStyles("search"),v=ej({targetType:"input",withAriaAttributes:s,withKeyboardNavigation:d,withExpandedAttribute:!1,onKeyDown:c,autoComplete:"off"});return y.jsx(ia,{ref:on(r,f.store.searchRef),classNames:[{input:g.className},o],styles:[{input:g.style},a],size:u||f.size,...v,...p,__staticSelector:"Combobox"})});ij.classes=Ho,ij.displayName="@mantine/core/ComboboxSearch";const Eot={refProp:"ref",targetType:"input",withKeyboardNavigation:!0,withAriaAttributes:!0,withExpandedAttribute:!1,autoComplete:"off"},Coe=We((e,r)=>{const{children:n,refProp:o,withKeyboardNavigation:a,withAriaAttributes:i,withExpandedAttribute:l,targetType:s,autoComplete:c,...d}=Re("ComboboxTarget",Eot,e);if(!ml(n))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 u=Si(),p=ej({targetType:s,withAriaAttributes:i,withKeyboardNavigation:a,withExpandedAttribute:l,onKeyDown:n.props.onKeyDown,autoComplete:c}),f=S.cloneElement(n,{...p,...d});return y.jsx(po.Target,{ref:on(r,u.store.targetRef),children:f})});Coe.displayName="@mantine/core/ComboboxTarget";function Cot(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 $ot(e,r,n){for(let o=e+1;o{s||(c(!0),a?.(B))},[c,a,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=Pd(f.current),F=t4(`#${d.current} [data-combobox-selected]`,B);F?.removeAttribute("data-combobox-selected"),F?.removeAttribute("aria-selected")},[]),$=S.useCallback(B=>{const F=Pd(f.current),q=t4(`#${d.current}`,F),G=q?Nd("[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,_]),z=S.useCallback(()=>{const B=Pd(f.current),F=t4(`#${d.current} [data-combobox-active]`,B);if(F){const q=Nd(`#${d.current} [data-combobox-option]`,B).findIndex(G=>G===F);return $(q)}return $(0)},[$]),j=S.useCallback(()=>{const B=Pd(f.current),F=Nd(`#${d.current} [data-combobox-option]`,B);return $($ot(u.current,F,i))},[$,i]),A=S.useCallback(()=>{const B=Pd(f.current),F=Nd(`#${d.current} [data-combobox-option]`,B);return $(Cot(u.current,F,i))},[$,i]),R=S.useCallback(()=>{const B=Pd(f.current),F=Nd(`#${d.current} [data-combobox-option]`,B);return $(zot(F))},[$]),T=S.useCallback((B="selected",F)=>{w.current=window.setTimeout(()=>{const q=Pd(f.current),G=Nd(`#${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)},[]),O=S.useCallback(()=>{u.current=-1,_()},[_]),P=S.useCallback(()=>{const B=Pd(f.current);Nd(`#${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:R,selectActiveOption:z,selectNextOption:j,selectPreviousOption:A,resetSelectedOption:O,updateSelectedOptionIndex:T,listId:d.current,setListId:L,clickSelectedOption:P,searchRef:p,focusSearchInput:H,targetRef:f,focusTarget:M}}const Rot={keepMounted:!0,withinPortal:!0,resetSelectionOnOptionHover:!1,width:"target",transitionProps:{transition:"fade",duration:0},size:"sm"},jot=(e,{size:r,dropdownPadding:n})=>({options:{"--combobox-option-fz":Ro(r),"--combobox-option-padding":Qt(r,"combobox-option-padding")},dropdown:{"--combobox-padding":n===void 0?void 0:Pe(n),"--combobox-option-fz":Ro(r),"--combobox-option-padding":Qt(r,"combobox-option-padding")}});function xr(e){const r=Re("Combobox",Rot,e),{classNames:n,styles:o,unstyled:a,children:i,store:l,vars:s,onOptionSubmit:c,onClose:d,size:u,dropdownPadding:p,resetSelectionOnOptionHover:f,__staticSelector:g,readOnly:v,attributes:w,...x}=r,k=$oe(),C=l||k,_=dt({name:g||"Combobox",classes:Ho,props:r,classNames:n,styles:o,unstyled:a,attributes:w,vars:s,varsResolver:jot}),$=()=>{d?.(),C.closeDropdown()};return y.jsx(wot,{value:{getStyles:_,store:C,onOptionSubmit:c,size:u,resetSelectionOnOptionHover:f,readOnly:v},children:y.jsx(po,{opened:C.dropdownOpened,preventPositionChangeWhenVisible:!0,...x,onChange:z=>!z&&$(),withRoles:!1,unstyled:a,children:i})})}const Tot=e=>e;xr.extend=Tot,xr.classes=Ho,xr.displayName="@mantine/core/Combobox",xr.Target=Coe,xr.Dropdown=QR,xr.Options=aj,xr.Option=oj,xr.Search=ij,xr.Empty=JR,xr.Chevron=KR,xr.Footer=tj,xr.Header=nj,xr.EventsTarget=Soe,xr.DropdownTarget=_oe,xr.Group=rj,xr.ClearButton=koe,xr.HiddenInput=Eoe;function Aot({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 j0(e){return"group"in e}function zoe({options:e,search:r,limit:n}){const o=r.trim().toLowerCase(),a=[];for(let i=0;i0)return!1;return!0}function Roe(e,r=new Set){if(Array.isArray(e))for(const n of e)if(j0(n))Roe(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 Mot(e,r){return Array.isArray(e)?e.includes(r):e===r}function joe({data:e,withCheckIcon:r,withAlignedLabels:n,value:o,checkIconPosition:a,unstyled:i,renderOption:l}){if(!j0(e)){const c=Mot(o,e.value),d=r&&(c?y.jsx(Aot,{className:Ho.optionsDropdownCheckIcon}):n?y.jsx("div",{className:Ho.optionsDropdownCheckPlaceholder}):null),u=y.jsxs(y.Fragment,{children:[a==="left"&&d,y.jsx("span",{children:e.label}),a==="right"&&d]});return y.jsx(xr.Option,{value:e.value,disabled:e.disabled,className:no({[Ho.optionsDropdownOption]:!i}),"data-reverse":a==="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(joe,{data:c,value:o,unstyled:i,withCheckIcon:r,withAlignedLabels:n,checkIconPosition:a,renderOption:l},c.value));return y.jsx(xr.Group,{label:e.group,children:s})}function Not({data:e,hidden:r,hiddenWhenEmpty:n,filter:o,search:a,limit:i,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}){Roe(e);const _=typeof a=="string"?(o||zoe)({options:e,search:c?a:"",limit:i??1/0}):e,$=Dot(_),z=_.map(j=>y.jsx(joe,{data:j,withCheckIcon:d,withAlignedLabels:u,value:p,checkIconPosition:f,unstyled:v,renderOption:x},j0(j)?j.group:j.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(Bp.Autosize,{mah:l??220,type:"scroll",scrollbarSize:"var(--combobox-padding)",offsetScrollbars:"y",...k,children:z}):z,$&&g&&y.jsx(xr.Empty,{children:g})]})})}var Toe={root:"m_347db0ec","root--dot":"m_fbd81e3d",label:"m_5add502a",section:"m_91fdda9b"};const Pot=(e,{radius:r,color:n,gradient:o,variant:a,size:i,autoContrast:l,circle:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:l});return{root:{"--badge-height":Qt(i,"badge-height"),"--badge-padding-x":Qt(i,"badge-padding-x"),"--badge-fz":Qt(i,"badge-fz"),"--badge-radius":s||r===void 0?void 0:hn(r),"--badge-bg":n||a?c.background:void 0,"--badge-color":n||a?c.color:void 0,"--badge-bd":n||a?c.border:void 0,"--badge-dot-color":a==="dot"?qo(n,e):void 0}}},Aoe=Un((e,r)=>{const n=Re("Badge",null,e),{classNames:o,className:a,style:i,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:$,...z}=n,j=dt({name:"Badge",props:n,classes:Toe,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:$,vars:c,varsResolver:Pot});return y.jsxs(Te,{variant:w,mod:[{block:x,circle:C,"with-right-section":!!g,"with-left-section":!!f},_],...j("root",{variant:w}),ref:r,...z,children:[f&&y.jsx("span",{...j("section"),"data-position":"left",children:f}),y.jsx("span",{...j("label"),children:v}),g&&y.jsx("span",{...j("section"),"data-position":"right",children:g})]})});Aoe.classes=Toe,Aoe.displayName="@mantine/core/Badge";var Doe={root:"m_8b3717df",breadcrumb:"m_f678d540",separator:"m_3b8f2208"};const Bot={separator:"/"},Oot=(e,{separatorMargin:r})=>({root:{"--bc-separator-margin":ro(r)}}),Moe=We((e,r)=>{const n=Re("Breadcrumbs",Bot,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,children:d,separator:u,separatorMargin:p,attributes:f,...g}=n,v=dt({name:"Breadcrumbs",classes:Doe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:f,vars:c,varsResolver:Oot}),w=S.Children.toArray(d).reduce((x,k,C,_)=>{const $=ml(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(Te,{...v("separator"),key:`separator-${C}`},u)),x},[]);return y.jsx(Te,{ref:r,...v("root"),...g,children:w})});Moe.classes=Doe,Moe.displayName="@mantine/core/Breadcrumbs";var Noe={root:"m_fea6bf1a",burger:"m_d4fb9cad"};const Iot=(e,{color:r,size:n,lineSize:o,transitionDuration:a,transitionTimingFunction:i})=>({root:{"--burger-color":r?qo(r,e):void 0,"--burger-size":Qt(n,"burger-size"),"--burger-line-size":o?Pe(o):void 0,"--burger-transition-duration":a===void 0?void 0:`${a}ms`,"--burger-transition-timing-function":i}}),Poe=We((e,r)=>{const n=Re("Burger",null,e),{classNames:o,className:a,style:i,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:Noe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:Iot});return y.jsxs(ps,{...x("root"),ref:r,...w,children:[y.jsx(Te,{mod:["reduce-motion",{opened:d}],...x("burger")}),u]})});Poe.classes=Noe,Poe.displayName="@mantine/core/Burger";var Hm={root:"m_77c9d27d",inner:"m_80f1301b",label:"m_811560b9",section:"m_a74036a",loader:"m_a25b86ee",group:"m_80d6d844",groupSection:"m_70be2a01"};const Boe={orientation:"horizontal"},Lot=(e,{borderWidth:r})=>({group:{"--button-border-width":Pe(r)}}),lj=We((e,r)=>{const n=Re("ButtonGroup",Boe,e),{className:o,style:a,classNames:i,styles:l,unstyled:s,orientation:c,vars:d,borderWidth:u,variant:p,mod:f,attributes:g,...v}=Re("ButtonGroup",Boe,e),w=dt({name:"ButtonGroup",props:n,classes:Hm,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:d,varsResolver:Lot,rootSelector:"group"});return y.jsx(Te,{...w("group"),ref:r,variant:p,mod:[{"data-orientation":c},f],role:"group",...v})});lj.classes=Hm,lj.displayName="@mantine/core/ButtonGroup";const Fot=(e,{radius:r,color:n,gradient:o,variant:a,autoContrast:i,size:l})=>{const s=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:i});return{groupSection:{"--section-height":Qt(l,"section-height"),"--section-padding-x":Qt(l,"section-padding-x"),"--section-fz":l?.includes("compact")?Ro(l.replace("compact-","")):Ro(l),"--section-radius":r===void 0?void 0:hn(r),"--section-bg":n||a?s.background:void 0,"--section-color":s.color,"--section-bd":n||a?s.border:void 0}}},sj=We((e,r)=>{const n=Re("ButtonGroupSection",null,e),{className:o,style:a,classNames:i,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:Hm,className:o,style:a,classNames:i,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:Fot,rootSelector:"groupSection"});return y.jsx(Te,{...w("groupSection"),ref:r,variant:d,...v})});sj.classes=Hm,sj.displayName="@mantine/core/ButtonGroupSection";const Vot={in:{opacity:1,transform:`translate(-50%, calc(-50% + ${Pe(1)}))`},out:{opacity:0,transform:"translate(-50%, -200%)"},common:{transformOrigin:"center"},transitionProperty:"transform, opacity"},qot=(e,{radius:r,color:n,gradient:o,variant:a,size:i,justify:l,autoContrast:s})=>{const c=e.variantColorResolver({color:n||e.primaryColor,theme:e,gradient:o,variant:a||"filled",autoContrast:s});return{root:{"--button-justify":l,"--button-height":Qt(i,"button-height"),"--button-padding-x":Qt(i,"button-padding-x"),"--button-fz":i?.includes("compact")?Ro(i.replace("compact-","")):Ro(i),"--button-radius":r===void 0?void 0:hn(r),"--button-bg":n||a?c.background:void 0,"--button-hover":n||a?c.hover:void 0,"--button-color":c.color,"--button-bd":n||a?c.border:void 0,"--button-hover-color":n||a?c.hoverColor:void 0}}},D4=Un((e,r)=>{const n=Re("Button",null,e),{style:o,vars:a,className:i,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:z,mod:j,attributes:A,...R}=n,T=dt({name:"Button",props:n,classes:Hm,className:i,style:o,classNames:k,styles:C,unstyled:_,attributes:A,vars:a,varsResolver:qot}),O=!!d,P=!!u;return y.jsxs(ps,{ref:r,...T("root",{active:!s&&!v&&!$}),unstyled:_,variant:f,disabled:s||v,mod:[{disabled:s||$,loading:v,block:p,"with-left-section":O,"with-right-section":P},j],...R,children:[typeof v=="boolean"&&y.jsx(kl,{mounted:v,transition:Vot,duration:150,children:L=>y.jsx(Te,{component:"span",...T("loader",{style:L}),"aria-hidden":!0,children:y.jsx(Ip,{color:"var(--button-color)",size:"calc(var(--button-height) / 1.8)",...w})})}),y.jsxs("span",{...T("inner"),children:[d&&y.jsx(Te,{component:"span",...T("section"),mod:{position:"left"},children:d}),y.jsx(Te,{component:"span",mod:{loading:v},...T("label"),children:c}),u&&y.jsx(Te,{component:"span",...T("section"),mod:{position:"right"},children:u})]})]})});D4.classes=Hm,D4.displayName="@mantine/core/Button",D4.Group=lj,D4.GroupSection=sj;const[Hot,Uot]=ja("Card component was not found in tree");var cj={root:"m_e615b15f",section:"m_599a2148"};const M4=Un((e,r)=>{const n=Re("CardSection",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,withBorder:c,inheritPadding:d,mod:u,...p}=n,f=Uot();return y.jsx(Te,{ref:r,mod:[{"with-border":c,"inherit-padding":d},u],...f.getStyles("section",{className:a,style:i,styles:l,classNames:o}),...p})});M4.classes=cj,M4.displayName="@mantine/core/CardSection";const Wot=(e,{padding:r})=>({root:{"--card-padding":ro(r)}}),dj=Un((e,r)=>{const n=Re("Card",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,children:d,padding:u,attributes:p,...f}=n,g=dt({name:"Card",props:n,classes:cj,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:Wot}),v=S.Children.toArray(d),w=v.map((x,k)=>typeof x=="object"&&x&&"type"in x&&x.type===M4?S.cloneElement(x,{"data-first-section":k===0||void 0,"data-last-section":k===v.length-1||void 0}):x);return y.jsx(Hot,{value:{getStyles:g},children:y.jsx(_4,{ref:r,unstyled:s,...g("root"),...f,children:w})})});dj.classes=cj,dj.displayName="@mantine/core/Card",dj.Section=M4;var Ooe={root:"m_b183c0a2"};const Got=(e,{color:r})=>({root:{"--code-bg":r?qo(r,e):void 0}}),Ioe=We((e,r)=>{const n=Re("Code",null,e),{classNames:o,className:a,style:i,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:Ooe,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:Got});return y.jsx(Te,{component:u?"pre":"code",variant:p,ref:r,mod:[{block:u},f],...w("root"),...v,dir:"ltr"})});Ioe.classes=Ooe,Ioe.displayName="@mantine/core/Code";var Loe={root:"m_de3d2490",colorOverlay:"m_862f3d1b",shadowOverlay:"m_98ae7f22",alphaOverlay:"m_95709ac0",childrenOverlay:"m_93e74e3"};const Foe={withShadow:!0},Yot=(e,{radius:r,size:n})=>({root:{"--cs-radius":r===void 0?void 0:hn(r),"--cs-size":Pe(n)}}),Voe=Un((e,r)=>{const n=Re("ColorSwatch",Foe,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,color:d,size:u,radius:p,withShadow:f,children:g,variant:v,attributes:w,...x}=Re("ColorSwatch",Foe,n),k=dt({name:"ColorSwatch",props:n,classes:Loe,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:c,varsResolver:Yot});return y.jsxs(Te,{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})]})});Voe.classes=Loe,Voe.displayName="@mantine/core/ColorSwatch";var qoe={root:"m_7485cace"};const Xot=(e,{size:r,fluid:n})=>({root:{"--container-size":n?void 0:Qt(r,"container-size")}}),Hoe=We((e,r)=>{const n=Re("Container",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,fluid:d,mod:u,attributes:p,strategy:f,...g}=n,v=dt({name:"Container",classes:qoe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:Xot});return y.jsx(Te,{ref:r,mod:[{fluid:d,strategy:f||"block"},u],...v("root"),...g})});Hoe.classes=qoe,Hoe.displayName="@mantine/core/Container";var Uoe={root:"m_3eebeb36",label:"m_9e365f20"};const Zot={orientation:"horizontal"},Kot=(e,{color:r,variant:n,size:o})=>({root:{"--divider-color":r?qo(r,e):void 0,"--divider-border-style":n,"--divider-size":Qt(o,"divider-size")}}),Woe=We((e,r)=>{const n=Re("Divider",Zot,e),{classNames:o,className:a,style:i,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:Uoe,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:Kot});return y.jsx(Te,{ref:r,mod:[{orientation:u,"with-label":!!p},g],...x("root"),...w,role:"separator",children:p&&y.jsx(Te,{component:"span",mod:{position:f},...x("label"),children:p})})});Woe.classes=Uoe,Woe.displayName="@mantine/core/Divider";const[Qot,Um]=ja("Drawer component was not found in tree");var gc={root:"m_f11b401e",header:"m_5a7c2c9",content:"m_b8a05bbd",inner:"m_31cd769a"};const N4=We((e,r)=>{const n=Re("DrawerBody",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Um();return y.jsx(HR,{ref:r,...d.getStyles("body",{classNames:o,style:i,styles:l,className:a}),...c})});N4.classes=gc,N4.displayName="@mantine/core/DrawerBody";const P4=We((e,r)=>{const n=Re("DrawerCloseButton",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Um();return y.jsx(ioe,{ref:r,...d.getStyles("close",{classNames:o,style:i,styles:l,className:a}),...c})});P4.classes=gc,P4.displayName="@mantine/core/DrawerCloseButton";const B4=We((e,r)=>{const n=Re("DrawerContent",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,children:c,radius:d,__hidden:u,...p}=n,f=Um(),g=f.scrollAreaComponent||coe;return y.jsx(UR,{...f.getStyles("content",{className:a,style:i,styles:l,classNames:o}),innerProps:f.getStyles("inner",{className:a,style:i,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})})});B4.classes=gc,B4.displayName="@mantine/core/DrawerContent";const O4=We((e,r)=>{const n=Re("DrawerHeader",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Um();return y.jsx(loe,{ref:r,...d.getStyles("header",{classNames:o,style:i,styles:l,className:a}),...c})});O4.classes=gc,O4.displayName="@mantine/core/DrawerHeader";const I4=We((e,r)=>{const n=Re("DrawerOverlay",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Um();return y.jsx(WR,{ref:r,...d.getStyles("overlay",{classNames:o,style:i,styles:l,className:a}),...c})});I4.classes=gc,I4.displayName="@mantine/core/DrawerOverlay";function Jot(e){switch(e){case"top":return"flex-start";case"bottom":return"flex-end";default:return}}function eat(e){if(e==="top"||e==="bottom")return"0 0 calc(100% - var(--drawer-offset, 0rem) * 2)"}const tat={top:"slide-down",bottom:"slide-up",left:"slide-right",right:"slide-left"},rat={top:"slide-down",bottom:"slide-up",right:"slide-right",left:"slide-left"},nat={closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:gl("modal"),position:"left"},oat=(e,{position:r,size:n,offset:o})=>({root:{"--drawer-size":Qt(n,"drawer-size"),"--drawer-flex":eat(r),"--drawer-height":r==="left"||r==="right"?void 0:"var(--drawer-size)","--drawer-align":Jot(r),"--drawer-justify":r==="right"?"flex-end":void 0,"--drawer-offset":Pe(o)}}),L4=We((e,r)=>{const n=Re("DrawerRoot",nat,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,scrollAreaComponent:d,position:u,transitionProps:p,radius:f,attributes:g,...v}=n,{dir:w}=uc(),x=dt({name:"Drawer",classes:gc,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:oat}),k=(w==="rtl"?rat:tat)[u];return y.jsx(Qot,{value:{scrollAreaComponent:d,getStyles:x,radius:f},children:y.jsx(qR,{ref:r,...x("root"),transitionProps:{transition:k,...p},"data-offset-scrollbars":d===Bp.Autosize||void 0,unstyled:s,...v})})});L4.classes=gc,L4.displayName="@mantine/core/DrawerRoot";const[aat,iat]=jm();function Goe({children:e}){const[r,n]=S.useState([]),[o,a]=S.useState(gl("modal"));return y.jsx(aat,{value:{stack:r,addModal:(i,l)=>{n(s=>[...new Set([...s,i])]),a(s=>typeof l=="number"&&typeof s=="number"?Math.max(s,l):s)},removeModal:i=>n(l=>l.filter(s=>s!==i)),getZIndex:i=>`calc(${o} + ${r.indexOf(i)} + 1)`,currentId:r[r.length-1],maxZIndex:o},children:e})}Goe.displayName="@mantine/core/DrawerStack";const F4=We((e,r)=>{const n=Re("DrawerTitle",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=Um();return y.jsx(soe,{ref:r,...d.getStyles("title",{classNames:o,style:i,styles:l,className:a}),...c})});F4.classes=gc,F4.displayName="@mantine/core/DrawerTitle";const lat={closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:gl("modal"),withOverlay:!0,withCloseButton:!0},hs=We((e,r)=>{const{title:n,withOverlay:o,overlayProps:a,withCloseButton:i,closeButtonProps:l,children:s,opened:c,stackId:d,zIndex:u,...p}=Re("Drawer",lat,e),f=iat(),g=!!n||i,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||gl("modal")):f.removeModal(d))},[c,d,u]),y.jsxs(L4,{ref:r,opened:c,zIndex:f&&d?f.getZIndex(d):u,...p,...v,children:[o&&y.jsx(I4,{visible:w,transitionProps:f&&d?{duration:0}:void 0,...a}),y.jsxs(B4,{__hidden:f&&d&&c?d!==f.currentId:!1,children:[g&&y.jsxs(O4,{children:[n&&y.jsx(F4,{children:n}),i&&y.jsx(P4,{...l})]}),y.jsx(N4,{children:s})]})]})});hs.classes=gc,hs.displayName="@mantine/core/Drawer",hs.Root=L4,hs.Overlay=I4,hs.Content=B4,hs.Body=N4,hs.Header=O4,hs.Title=F4,hs.CloseButton=P4,hs.Stack=Goe;const[Yoe,Xoe]=ja("Grid component was not found in tree"),uj=(e,r)=>e==="content"?"auto":e==="auto"?"0rem":e?`${100/(r/e)}%`:void 0,Zoe=(e,r,n)=>n||e==="auto"?"100%":e==="content"?"unset":uj(e,r),Koe=(e,r)=>{if(e)return e==="auto"||r?"1":"auto"},Qoe=(e,r)=>e===0?"0":e?`${100/(r/e)}%`:void 0;function sat({span:e,order:r,offset:n,selector:o}){const a=uo(),i=Xoe(),l=i.breakpoints||a.breakpoints,s=yl(e)===void 0?12:yl(e),c=Dd({"--col-order":yl(r)?.toString(),"--col-flex-grow":Koe(s,i.grow),"--col-flex-basis":uj(s,i.columns),"--col-width":s==="content"?"auto":void 0,"--col-max-width":Zoe(s,i.columns,i.grow),"--col-offset":Qoe(yl(n),i.columns)}),d=zo(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"]=Koe(e[f],i.grow),p[f]["--col-flex-basis"]=uj(e[f],i.columns),p[f]["--col-width"]=e[f]==="content"?"auto":void 0,p[f]["--col-max-width"]=Zoe(e[f],i.columns,i.grow)),typeof n=="object"&&n[f]!==void 0&&(p[f]["--col-offset"]=Qoe(n[f],i.columns)),p),{}),u=Wz(zo(d),l).filter(p=>zo(d[p.value]).length>0).map(p=>({query:i.type==="container"?`mantine-grid (min-width: ${l[p.value]})`:`(min-width: ${l[p.value]})`,styles:d[p.value]}));return y.jsx(Mm,{styles:c,media:i.type==="container"?void 0:u,container:i.type==="container"?u:void 0,selector:o})}var pj={container:"m_8478a6da",root:"m_410352e9",inner:"m_dee7bd2f",col:"m_96bdd299"};const cat={span:12},hj=We((e,r)=>{const n=Re("GridCol",cat,e),{classNames:o,className:a,style:i,styles:l,vars:s,span:c,order:d,offset:u,...p}=n,f=Xoe(),g=_0();return y.jsxs(y.Fragment,{children:[y.jsx(sat,{selector:`.${g}`,span:c,order:d,offset:u}),y.jsx(Te,{ref:r,...f.getStyles("col",{className:no(a,g),style:i,classNames:o,styles:l}),...p})]})});hj.classes=pj,hj.displayName="@mantine/core/GridCol";function Joe({gutter:e,selector:r,breakpoints:n,type:o}){const a=uo(),i=n||a.breakpoints,l=Dd({"--grid-gutter":ro(yl(e))}),s=zo(i).reduce((d,u)=>(d[u]||(d[u]={}),typeof e=="object"&&e[u]!==void 0&&(d[u]["--grid-gutter"]=ro(e[u])),d),{}),c=Wz(zo(s),i).filter(d=>zo(s[d.value]).length>0).map(d=>({query:o==="container"?`mantine-grid (min-width: ${i[d.value]})`:`(min-width: ${i[d.value]})`,styles:s[d.value]}));return y.jsx(Mm,{styles:l,media:o==="container"?void 0:c,container:o==="container"?c:void 0,selector:r})}const dat={gutter:"md",grow:!1,columns:12},uat=(e,{justify:r,align:n,overflow:o})=>({root:{"--grid-justify":r,"--grid-align":n,"--grid-overflow":o}}),fj=We((e,r)=>{const n=Re("Grid",dat,e),{classNames:o,className:a,style:i,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:pj,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:k,vars:c,varsResolver:uat}),$=_0();return x==="container"&&w?y.jsxs(Yoe,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(Joe,{selector:`.${$}`,...n}),y.jsx("div",{..._("container"),children:y.jsx(Te,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})})]}):y.jsxs(Yoe,{value:{getStyles:_,grow:d,columns:p,breakpoints:w,type:x},children:[y.jsx(Joe,{selector:`.${$}`,...n}),y.jsx(Te,{ref:r,..._("root",{className:$}),...C,children:y.jsx("div",{..._("inner"),children:v})})]})});fj.classes=pj,fj.displayName="@mantine/core/Grid",fj.Col=hj;function eae({color:e,theme:r,defaultShade:n}){const o=Dp({color:e,theme:r});return o.isThemeColor?o.shade===void 0?`var(--mantine-color-${o.color}-${n})`:`var(${o.variable})`:e}var tae={root:"m_bcb3f3c2"};const pat={color:"yellow"},hat=(e,{color:r})=>({root:{"--mark-bg-dark":eae({color:r,theme:e,defaultShade:5}),"--mark-bg-light":eae({color:r,theme:e,defaultShade:2})}}),mj=We((e,r)=>{const n=Re("Mark",pat,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,color:d,variant:u,attributes:p,...f}=n,g=dt({name:"Mark",props:n,className:a,style:i,classes:tae,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:hat});return y.jsx(Te,{component:"mark",ref:r,variant:u,...g("root"),...f})});mj.classes=tae,mj.displayName="@mantine/core/Mark";function rae(e){return e.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&")}function fat(e,r){if(r==null)return[{chunk:e,highlighted:!1}];const n=Array.isArray(r)?r.map(rae):rae(r);if(!(Array.isArray(n)?n.filter(i=>i.trim().length>0).length>0:n.trim()!==""))return[{chunk:e,highlighted:!1}];const o=typeof n=="string"?n.trim():n.filter(i=>i.trim().length!==0).map(i=>i.trim()).sort((i,l)=>l.length-i.length).join("|"),a=new RegExp(`(${o})`,"gi");return e.split(a).map(i=>({chunk:i,highlighted:a.test(i)})).filter(({chunk:i})=>i)}const nae=Un((e,r)=>{const{unstyled:n,children:o,highlight:a,highlightStyles:i,color:l,...s}=Re("Highlight",null,e),c=fat(o,a);return y.jsx(R0,{unstyled:n,ref:r,...s,__staticSelector:"Highlight",children:c.map(({chunk:d,highlighted:u},p)=>u?y.jsx(mj,{unstyled:n,color:l,style:i,"data-highlight":d,children:d},p):y.jsx("span",{children:d},p))})});nae.classes=R0.classes,nae.displayName="@mantine/core/Highlight";const[Gxt,oae]=ja("HoverCard component was not found in the tree"),aae=S.createContext(!1),mat=aae.Provider,iae=()=>S.useContext(aae);function gat(e){const{children:r,onMouseEnter:n,onMouseLeave:o,...a}=Re("HoverCardDropdown",null,e),i=oae();if(iae()&&i.getFloatingProps&&i.floating){const c=i.getFloatingProps();return y.jsx(po.Dropdown,{ref:i.floating,...c,onMouseEnter:jn(n,c.onMouseEnter),onMouseLeave:jn(o,c.onMouseLeave),...a,children:r})}const l=jn(n,i.openDropdown),s=jn(o,i.closeDropdown);return y.jsx(po.Dropdown,{onMouseEnter:l,onMouseLeave:s,...a,children:r})}gat.displayName="@mantine/core/HoverCardDropdown";const yat={openDelay:0,closeDelay:0};function lae(e){const{openDelay:r,closeDelay:n,children:o}=Re("HoverCardGroup",yat,e);return y.jsx(mat,{value:!0,children:y.jsx(_ne,{delay:{open:r,close:n},children:o})})}lae.displayName="@mantine/core/HoverCardGroup",lae.extend=e=>e;const vat={refProp:"ref"},bat=S.forwardRef((e,r)=>{const{children:n,refProp:o,eventPropsWrapperName:a,...i}=Re("HoverCardTarget",vat,e);if(!ml(n))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 l=oae();if(iae()&&l.getReferenceProps&&l.reference){const u=l.getReferenceProps();return y.jsx(po.Target,{refProp:o,ref:r,...i,children:S.cloneElement(n,a?{[a]:{...u,ref:l.reference}}:{...u,ref:l.reference})})}const s=jn(n.props.onMouseEnter,l.openDropdown),c=jn(n.props.onMouseLeave,l.closeDropdown),d={onMouseEnter:s,onMouseLeave:c};return y.jsx(po.Target,{refProp:o,ref:r,...i,children:S.cloneElement(n,a?{[a]:d}:d)})});bat.displayName="@mantine/core/HoverCardTarget";var sae={root:"m_6e45937b",loader:"m_e8eb006c",overlay:"m_df587f17"};const cae={transitionProps:{transition:"fade",duration:0},overlayProps:{backgroundOpacity:.75},zIndex:gl("overlay")},xat=(e,{zIndex:r})=>({root:{"--lo-z-index":r?.toString()}}),dae=We((e,r)=>{const n=Re("LoadingOverlay",cae,e),{classNames:o,className:a,style:i,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:sae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:v,vars:c,varsResolver:xat}),C={...cae.overlayProps,...p};return y.jsx(kl,{transition:"fade",...d,mounted:!!f,children:_=>y.jsxs(Te,{...k("root",{style:_}),ref:r,...w,children:[y.jsx(Ip,{...k("loader"),unstyled:s,...u}),y.jsx(Fm,{...C,...k("overlay"),darkHidden:!0,unstyled:s,color:p?.color||x.white}),y.jsx(Fm,{...C,...k("overlay"),lightHidden:!0,unstyled:s,color:p?.color||x.colors.dark[5]})]})})});dae.classes=sae,dae.displayName="@mantine/core/LoadingOverlay";const[Yxt,Od]=ja("Menu component was not found in the tree");var Wm={dropdown:"m_dc9b7c9f",label:"m_9bfac126",divider:"m_efdf90cb",item:"m_99ac2aa1",itemLabel:"m_5476e0d3",itemSection:"m_8b75e504",chevron:"m_b85b0bed"};const uae=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("MenuDivider",null,e),c=Od();return y.jsx(Te,{ref:r,...c.getStyles("divider",{className:o,style:a,styles:i,classNames:n}),...s})});uae.classes=Wm,uae.displayName="@mantine/core/MenuDivider";const pae=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=Re("MenuDropdown",null,e),f=S.useRef(null),g=Od(),v=jn(d,k=>{(k.key==="ArrowUp"||k.key==="ArrowDown")&&(k.preventDefault(),f.current?.querySelectorAll("[data-menu-item]:not(:disabled)")[0]?.focus())}),w=jn(s,()=>(g.trigger==="hover"||g.trigger==="click-hover")&&g.openDropdown()),x=jn(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:a,styles:i,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]})});pae.classes=Wm,pae.displayName="@mantine/core/MenuDropdown";const[wat,V4]=jm(),hae=Un((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,color:s,closeMenuOnClick:c,leftSection:d,rightSection:u,children:p,disabled:f,"data-disabled":g,...v}=Re("MenuItem",null,e),w=Od(),x=V4(),k=uo(),{dir:C}=uc(),_=S.useRef(null),$=v,z=jn($.onClick,()=>{g||(typeof c=="boolean"?c&&w.closeDropdownImmediately():w.closeOnItemClick&&w.closeDropdownImmediately())}),j=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,A=s?Dp({color:s,theme:k}):null,R=jn($.onKeyDown,T=>{T.key==="ArrowLeft"&&x&&(x.close(),x.focusParentItem())});return y.jsxs(ps,{onMouseDown:T=>T.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style:a,styles:i,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:z,onKeyDown:Hz({siblingSelector:"[data-menu-item]:not([data-disabled])",parentSelector:"[data-menu-dropdown]",activateOnFocus:!1,loop:w.loop,dir:C,orientation:"vertical",onKeyDown:R}),__vars:{"--menu-item-color":A?.isThemeColor&&A?.shade===void 0?`var(--mantine-color-${A.color}-6)`:j?.color,"--menu-item-hover":j?.hover},children:[d&&y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"left",children:d}),p&&y.jsx("div",{...w.getStyles("itemLabel",{styles:i,classNames:n}),children:p}),u&&y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"right",children:u})]})});hae.classes=Wm,hae.displayName="@mantine/core/MenuItem";const fae=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,...s}=Re("MenuLabel",null,e),c=Od();return y.jsx(Te,{ref:r,...c.getStyles("label",{className:o,style:a,styles:i,classNames:n}),...s})});fae.classes=Wm,fae.displayName="@mantine/core/MenuLabel";const gj=We((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,onMouseEnter:s,onMouseLeave:c,onKeyDown:d,children:u,...p}=Re("MenuSubDropdown",null,e),f=S.useRef(null),g=Od(),v=V4(),w=jn(s,v?.open),x=jn(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:a,styles:i,classNames:n,withStaticClass:!1}),tabIndex:-1,"data-menu-dropdown":!0,children:u})});gj.classes=Wm,gj.displayName="@mantine/core/MenuSubDropdown";const yj=Un((e,r)=>{const{classNames:n,className:o,style:a,styles:i,vars:l,color:s,leftSection:c,rightSection:d,children:u,disabled:p,"data-disabled":f,closeMenuOnClick:g,...v}=Re("MenuSubItem",null,e),w=Od(),x=V4(),k=uo(),{dir:C}=uc(),_=S.useRef(null),$=v,z=s?k.variantColorResolver({color:s,theme:k,variant:"light"}):void 0,j=s?Dp({color:s,theme:k}):null,A=jn($.onKeyDown,P=>{P.key==="ArrowRight"&&(x?.open(),x?.focusFirstItem()),P.key==="ArrowLeft"&&x?.parentContext&&(x.parentContext.close(),x.parentContext.focusParentItem())}),R=jn($.onClick,()=>{!f&&g&&w.closeDropdownImmediately()}),T=jn($.onMouseEnter,x?.open),O=jn($.onMouseLeave,x?.close);return y.jsxs(ps,{onMouseDown:P=>P.preventDefault(),...v,unstyled:w.unstyled,tabIndex:w.menuItemTabIndex,...w.getStyles("item",{className:o,style:a,styles:i,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:T,onMouseLeave:O,onClick:R,onKeyDown:Hz({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":j?.isThemeColor&&j?.shade===void 0?`var(--mantine-color-${j.color}-6)`:z?.color,"--menu-item-hover":z?.hover},children:[c&&y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"left",children:c}),u&&y.jsx("div",{...w.getStyles("itemLabel",{styles:i,classNames:n}),children:u}),y.jsx("div",{...w.getStyles("itemSection",{styles:i,classNames:n}),"data-position":"right",children:d||y.jsx(ZR,{...w.getStyles("chevron"),size:14})})]})});yj.classes=Wm,yj.displayName="@mantine/core/MenuSubItem";function mae({children:e,refProp:r}){if(!ml(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 Od(),y.jsx(po.Target,{refProp:r,popupType:"menu",children:e})}mae.displayName="@mantine/core/MenuSubTarget";const kat={offset:0,position:"right-start",transitionProps:{duration:0},openDelay:0,middlewares:{shift:{crossAxis:!0}}};function T0(e){const{children:r,closeDelay:n,openDelay:o,...a}=Re("MenuSub",kat,e),i=vl(),[l,{open:s,close:c}]=tet(!1),d=V4(),{openDropdown:u,closeDropdown:p}=pot({open:s,close:c,closeDelay:n,openDelay:o});return y.jsx(wat,{value:{opened:l,close:p,open:u,focusFirstItem:()=>window.setTimeout(()=>{document.getElementById(`${i}-dropdown`)?.querySelectorAll("[data-menu-item]:not([data-disabled])")[0]?.focus()},16),focusParentItem:()=>window.setTimeout(()=>{document.getElementById(`${i}-target`)?.focus()},16),parentContext:d},children:y.jsx(po,{opened:l,withinPortal:!1,withArrow:!1,id:i,...a,children:r})})}T0.extend=e=>e,T0.displayName="@mantine/core/MenuSub",T0.Target=mae,T0.Dropdown=gj,T0.Item=yj;const _at={refProp:"ref"},Sat=S.forwardRef((e,r)=>{const{children:n,refProp:o,...a}=Re("MenuTarget",_at,e);if(!ml(n))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 i=Od(),l=n.props,s=jn(l.onClick,()=>{i.trigger==="click"?i.toggleDropdown():i.trigger==="click-hover"&&(i.setOpenedViaClick(!0),i.opened||i.openDropdown())}),c=jn(l.onMouseEnter,()=>(i.trigger==="hover"||i.trigger==="click-hover")&&i.openDropdown()),d=jn(l.onMouseLeave,()=>{(i.trigger==="hover"||i.trigger==="click-hover"&&!i.openedViaClick)&&i.closeDropdown()});return y.jsx(po.Target,{refProp:o,popupType:"menu",ref:r,...a,children:S.cloneElement(n,{onClick:s,onMouseEnter:c,onMouseLeave:d,"data-expanded":i.opened?!0:void 0})})});Sat.displayName="@mantine/core/MenuTarget";const[Eat,vj]=ja("Modal component was not found in tree");var A0={root:"m_9df02822",content:"m_54c44539",inner:"m_1f958f16",header:"m_d0e2b9cd"};const gae=We((e,r)=>{const n=Re("ModalBody",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=vj();return y.jsx(HR,{ref:r,...d.getStyles("body",{classNames:o,style:i,styles:l,className:a}),...c})});gae.classes=A0,gae.displayName="@mantine/core/ModalBody";const yae=We((e,r)=>{const n=Re("ModalContent",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,children:c,__hidden:d,...u}=n,p=vj(),f=p.scrollAreaComponent||coe;return y.jsx(UR,{...p.getStyles("content",{className:a,style:i,styles:l,classNames:o}),innerProps:p.getStyles("inner",{className:a,style:i,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})})});yae.classes=A0,yae.displayName="@mantine/core/ModalContent";const vae=We((e,r)=>{const n=Re("ModalOverlay",null,e),{classNames:o,className:a,style:i,styles:l,vars:s,...c}=n,d=vj();return y.jsx(WR,{ref:r,...d.getStyles("overlay",{classNames:o,style:i,styles:l,className:a}),...c})});vae.classes=A0,vae.displayName="@mantine/core/ModalOverlay";const Cat={__staticSelector:"Modal",closeOnClickOutside:!0,withinPortal:!0,lockScroll:!0,trapFocus:!0,returnFocus:!0,closeOnEscape:!0,keepMounted:!1,zIndex:gl("modal"),transitionProps:{duration:200,transition:"fade-down"},yOffset:"5dvh"},$at=(e,{radius:r,size:n,yOffset:o,xOffset:a})=>({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(a)}}),bae=We((e,r)=>{const n=Re("ModalRoot",Cat,e),{classNames:o,className:a,style:i,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:A0,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:x,vars:c,varsResolver:$at});return y.jsx(Eat,{value:{yOffset:d,scrollAreaComponent:u,getStyles:C,fullScreen:f},children:y.jsx(qR,{ref:r,...C("root"),"data-full-screen":f||void 0,"data-centered":g||void 0,"data-offset-scrollbars":u===Bp.Autosize||void 0,unstyled:s,...k})})});bae.classes=A0,bae.displayName="@mantine/core/ModalRoot";const[Xxt,xae]=jm(),[zat,Rat]=jm();var q4={root:"m_7cda1cd6","root--default":"m_44da308b","root--contrast":"m_e3a01f8",label:"m_1e0e6180",remove:"m_ae386778",group:"m_1dcfd90b"};const jat=(e,{gap:r},{size:n})=>({group:{"--pg-gap":r!==void 0?Qt(r):Qt(n,"pg-gap")}}),bj=We((e,r)=>{const n=Re("PillGroup",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,size:d,disabled:u,attributes:p,...f}=n,g=xae()?.size||d||void 0,v=dt({name:"PillGroup",classes:q4,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:p,vars:c,varsResolver:jat,stylesCtx:{size:g},rootSelector:"group"});return y.jsx(zat,{value:{size:g,disabled:u},children:y.jsx(Te,{ref:r,size:g,...v("group"),...f})})});bj.classes=q4,bj.displayName="@mantine/core/PillGroup";const Tat={variant:"default"},Aat=(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)}}),xj=We((e,r)=>{const n=Re("Pill",Tat,e),{classNames:o,className:a,style:i,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,$=Rat(),z=xae(),j=w||$?.size||void 0,A=z?.variant==="filled"?"contrast":d||"default",R=dt({name:"Pill",classes:q4,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:C,vars:c,varsResolver:Aat,stylesCtx:{size:j}});return y.jsxs(Te,{component:"span",ref:r,variant:A,size:j,...R("root",{variant:A}),mod:[{"with-remove":p&&!x,disabled:x||$?.disabled},k],..._,children:[y.jsx("span",{...R("label"),children:u}),p&&y.jsx(Lp,{variant:"transparent",radius:v,tabIndex:-1,"aria-hidden":!0,unstyled:s,...g,...R("remove",{className:g?.className,style:g?.style}),onMouseDown:T=>{T.preventDefault(),T.stopPropagation(),g?.onMouseDown?.(T)},onClick:T=>{T.stopPropagation(),f?.(),g?.onClick?.(T)}})]})});xj.classes=q4,xj.displayName="@mantine/core/Pill",xj.Group=bj;var wae={root:"m_f0824112",description:"m_57492dcc",section:"m_690090b5",label:"m_1f6ac4c4",body:"m_f07af9d2",children:"m_e17b862f",chevron:"m_1fd8a00b"};const Dat=(e,{variant:r,color:n,childrenOffset:o,autoContrast:a})=>{const i=e.variantColorResolver({color:n||e.primaryColor,theme:e,variant:r||"light",autoContrast:a});return{root:{"--nl-bg":n||r?i.background:void 0,"--nl-hover":n||r?i.hover:void 0,"--nl-color":n||r?i.color:void 0},children:{"--nl-offset":ro(o)}}},kae=Un((e,r)=>{const n=Re("NavLink",null,e),{classNames:o,className:a,style:i,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:z,autoContrast:j,mod:A,attributes:R,onClick:T,onKeyDown:O,...P}=n,L=dt({name:"NavLink",props:n,classes:wae,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:R,vars:c,varsResolver:Dat}),[H,M]=Md({value:d,defaultValue:u,finalValue:!1,onChange:p}),V=!!f,B=F=>{T?.(F),V&&(F.preventDefault(),M(!H))};return y.jsxs(y.Fragment,{children:[y.jsxs(ps,{...L("root"),component:"a",ref:r,onClick:B,onKeyDown:F=>{O?.(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(Te,{component:"span",...L("section"),mod:{position:"left"},children:w}),y.jsxs(Te,{...L("body"),mod:{"no-wrap":$},children:[y.jsx(Te,{component:"span",...L("label"),children:k}),y.jsx(Te,{component:"span",mod:{active:g},...L("description"),children:C})]}),(V||x!==void 0)&&y.jsx(Te,{...L("section"),component:"span",mod:{rotate:H&&!_,position:"right"},children:V?x!==void 0?x:y.jsx(ZR,{...L("chevron")}):x})]}),V&&y.jsx(Vre,{in:H,...L("collapse"),children:y.jsx("div",{...L("children"),children:f})})]})});kae.classes=wae,kae.displayName="@mantine/core/NavLink";var _ae={root:"m_a513464",icon:"m_a4ceffb",loader:"m_b0920b15",body:"m_a49ed24",title:"m_3feedf16",description:"m_3d733a3a",closeButton:"m_919a4d88"};const Mat={withCloseButton:!0},Nat=(e,{radius:r,color:n})=>({root:{"--notification-radius":r===void 0?void 0:hn(r),"--notification-color":n?qo(n,e):void 0}}),Sae=We((e,r)=>{const n=Re("Notification",Mat,e),{className:o,color:a,radius:i,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:z,role:j,attributes:A,...R}=n,T=dt({name:"Notification",classes:_ae,props:n,className:o,style:w,classNames:v,styles:x,unstyled:k,attributes:A,vars:_,varsResolver:Nat});return y.jsxs(Te,{...T("root"),mod:[{"data-with-icon":!!u||l,"data-with-border":c},$],ref:r,variant:C,role:j||"alert",...R,children:[u&&!l&&y.jsx("div",{...T("icon"),children:u}),l&&y.jsx(Ip,{size:28,color:a,...z,...T("loader")}),y.jsxs("div",{...T("body"),children:[d&&y.jsx("div",{...T("title"),children:d}),y.jsx(Te,{...T("description"),mod:{"data-with-title":!!d},children:p})]}),s&&y.jsx(Lp,{iconSize:16,color:"gray",...g,unstyled:k,onClick:f,...T("closeButton")})]})});Sae.classes=_ae,Sae.displayName="@mantine/core/Notification";const Pat={duration:100,transition:"fade"};function Eae(e,r){return{...Pat,...r,...e}}function Bat({offset:e,position:r,defaultOpened:n}){const[o,a]=S.useState(n),i=S.useRef(null),{x:l,y:s,elements:c,refs:d,update:u,placement:p}=jR({placement:r,middleware:[SR({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=i.current;w.addEventListener("mousemove",v);const x=fc(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:a,boundaryRef:i,floating:d.setFloating}}var H4={tooltip:"m_1b3c8819",arrow:"m_f898399f"};const Oat={refProp:"ref",withinPortal:!0,offset:10,position:"right",zIndex:gl("popover")},Iat=(e,{radius:r,color:n})=>({tooltip:{"--tooltip-radius":r===void 0?void 0:hn(r),"--tooltip-bg":n?qo(n,e):void 0,"--tooltip-color":n?"var(--mantine-color-white)":void 0}}),wj=We((e,r)=>{const n=Re("TooltipFloating",Oat,e),{children:o,refProp:a,withinPortal:i,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:z,portalProps:j,attributes:A,...R}=n,T=uo(),O=dt({name:"TooltipFloating",props:n,classes:H4,className:s,style:l,classNames:c,styles:d,unstyled:u,attributes:A,rootSelector:"tooltip",vars:z,varsResolver:Iat}),{handleMouseMove:P,x:L,y:H,opened:M,boundaryRef:V,floating:B,setOpened:F}=Bat({offset:v,position:w,defaultOpened:_});if(!ml(o))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 q=on(V,e4(o),r),G=o.props,U=Z=>{G.onMouseEnter?.(Z),P(Z),F(!0)},Y=Z=>{G.onMouseLeave?.(Z),F(!1)};return y.jsxs(y.Fragment,{children:[y.jsx(Op,{...j,withinPortal:i,children:y.jsx(Te,{...R,...O("tooltip",{style:{...iR(l,T),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(o,{...G,[a]:q,onMouseEnter:U,onMouseLeave:Y})]})});wj.classes=H4,wj.displayName="@mantine/core/TooltipFloating";const Cae=S.createContext(!1),Lat=Cae.Provider,Fat=()=>S.useContext(Cae),Vat={openDelay:0,closeDelay:0};function kj(e){const{openDelay:r,closeDelay:n,children:o}=Re("TooltipGroup",Vat,e);return y.jsx(Lat,{value:!0,children:y.jsx(_ne,{delay:{open:r,close:n},children:o})})}kj.displayName="@mantine/core/TooltipGroup",kj.extend=e=>e;function qat(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 Hat(e){const r=qat(e.middlewares),n=[pne(e.offset)];return r.shift&&n.push(SR(typeof r.shift=="boolean"?{padding:8}:{padding:8,...r.shift})),r.flip&&n.push(typeof r.flip=="boolean"?b4():b4(r.flip)),n.push(fne({element:e.arrowRef,padding:e.arrowOffset})),r.inline?n.push(typeof r.inline=="boolean"?$0():$0(r.inline)):e.inline&&n.push($0()),n}function Uat(e){const[r,n]=S.useState(e.defaultOpened),o=typeof e.opened=="boolean"?e.opened:r,a=Fat(),i=vl(),l=S.useCallback($=>{n($),$&&x(i)},[i]),{x:s,y:c,context:d,refs:u,placement:p,middlewareData:{arrow:{x:f,y:g}={}}}=jR({strategy:e.strategy,placement:e.position,open:o,onOpenChange:l,middleware:Hat(e),whileElementsMounted:kR}),{delay:v,currentId:w,setCurrentId:x}=Yrt(d,{id:i}),{getReferenceProps:k,getFloatingProps:C}=ent([Wrt(d,{enabled:e.events?.hover,delay:a?v:{open:e.openDelay,close:e.closeDelay},mouseOnly:!e.events?.touch}),Jrt(d,{enabled:e.events?.focus,visibleOnly:!0}),rnt(d,{role:"tooltip"}),Krt(d,{enabled:typeof e.opened>"u"})]);Tp(()=>{e.onPositionChange?.(p)},[p]);const _=o&&w&&w!==i;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 $ae={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:gl("popover"),positionDependencies:[],middlewares:{flip:!0,shift:!0,inline:!1}},Wat=(e,{radius:r,color:n,variant:o,autoContrast:a})=>{const i=e.variantColorResolver({theme:e,color:n||e.primaryColor,autoContrast:a,variant:o||"filled"});return{tooltip:{"--tooltip-radius":r===void 0?void 0:hn(r),"--tooltip-bg":n?i.background:void 0,"--tooltip-color":n?i.color:void 0}}},U4=We((e,r)=>{const n=Re("Tooltip",$ae,e),{children:o,position:a,refProp:i,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:z,arrowOffset:j,arrowRadius:A,arrowPosition:R,offset:T,transitionProps:O,multiline:P,events:L,zIndex:H,disabled:M,positionDependencies:V,onClick:B,onMouseEnter:F,onMouseLeave:q,inline:G,variant:U,keepMounted:Y,vars:Z,portalProps:I,mod:W,floatingStrategy:K,middlewares:Q,autoContrast:ae,attributes:te,target:re,...ue}=Re("Tooltip",$ae,n),{dir:_e}=uc(),ce=S.useRef(null),pe=Uat({position:qne(_e,a),closeDelay:c,openDelay:s,onPositionChange:d,opened:u,defaultOpened:p,events:L,arrowRef:ce,arrowOffset:j,offset:typeof T=="number"?T+($?z/2:0):T,positionDependencies:[...V,re??o],inline:G,strategy:K,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:H4,className:_,style:C,classNames:w,styles:x,unstyled:k,attributes:te,rootSelector:"tooltip",vars:Z,varsResolver:Wat});if(!re&&!ml(o))return null;if(re){const Le=Eae(O,{duration:100,transition:"fade"});return y.jsx(y.Fragment,{children:y.jsx(Op,{...I,withinPortal:f,children:y.jsx(kl,{...Le,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:Le.duration,children:St=>y.jsxs(Te,{...ue,"data-fixed":K==="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(S4,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:z,arrowOffset:j,arrowRadius:A,arrowPosition:R,...xe("arrow")})]})})})})}const De=o,Be=De.props,Je=on(pe.reference,e4(De),r),st=Eae(O,{duration:100,transition:"fade"});return y.jsxs(y.Fragment,{children:[y.jsx(Op,{...I,withinPortal:f,children:y.jsx(kl,{...st,keepMounted:Y,mounted:!M&&!!pe.opened,duration:pe.isGroupPhase?10:st.duration,children:Le=>y.jsxs(Te,{...ue,"data-fixed":K==="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(S4,{ref:ce,arrowX:pe.arrowX,arrowY:pe.arrowY,visible:$,position:pe.placement,arrowSize:z,arrowOffset:j,arrowRadius:A,arrowPosition:R,...xe("arrow")})]})})}),S.cloneElement(De,pe.getReferenceProps({onClick:B,onMouseEnter:F,onMouseLeave:q,onMouseMove:n.onMouseMove,onPointerDown:n.onPointerDown,onPointerEnter:n.onPointerEnter,className:no(_,Be.className),...Be,[i]:Je}))]})});U4.classes=H4,U4.displayName="@mantine/core/Tooltip",U4.Floating=wj,U4.Group=kj;var zae={root:"m_cf365364",indicator:"m_9e182ccd",label:"m_1738fcb2",input:"m_1714d588",control:"m_69686b9b",innerLabel:"m_78882f40"};const Gat={withItemsBorders:!0},Yat=(e,{radius:r,color:n,transitionDuration:o,size:a,transitionTimingFunction:i})=>({root:{"--sc-radius":r===void 0?void 0:hn(r),"--sc-color":n?qo(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":i,"--sc-padding":Qt(a,"sc-padding"),"--sc-font-size":Ro(a)}}),Rae=We((e,r)=>{const n=Re("SegmentedControl",Gat,e),{classNames:o,className:a,style:i,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:z,transitionTimingFunction:j,variant:A,autoContrast:R,withItemsBorders:T,mod:O,attributes:P,...L}=n,H=dt({name:"SegmentedControl",props:n,classes:zae,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:P,vars:c,varsResolver:Yat}),M=uo(),V=d.map(re=>typeof re=="string"?{label:re,value:re}:re),B=aet(),[F,q]=S.useState(Gz()),[G,U]=S.useState(null),[Y,Z]=S.useState({}),I=(re,ue)=>{Y[ue]=re,Z(Y)},[W,K]=Md({value:u,defaultValue:p,finalValue:Array.isArray(d)?V.find(re=>!re.disabled)?.value??d[0]?.value??null:null,onChange:f}),Q=vl(v),ae=V.map(re=>S.createElement(Te,{...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&&K(re.value),"data-focus-ring":M.focusRing,key:`${re.value}-input`}),S.createElement(Te,{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=>I(ue,re.value),__vars:{"--sc-label-color":$!==void 0?Jz({color:$,theme:M,autoContrast:R}):void 0},key:`${re.value}-label`},y.jsx("span",{...H("innerLabel"),children:re.label})))),te=on(r,re=>U(re));return eet(()=>{q(Gz())},[d.length]),d.length===0?null:y.jsxs(Te,{...H("root"),variant:A,size:g,ref:te,mod:[{"full-width":k,orientation:C,initialized:B,"with-items-borders":T},O],...L,role:"radiogroup","data-disabled":w,children:[typeof W=="string"&&y.jsx(XR,{target:Y[W],parent:G,component:"span",transitionDuration:"var(--sc-transition-duration)",...H("indicator")},F),ae]})});Rae.classes=zae,Rae.displayName="@mantine/core/SegmentedControl";const Xat={withCheckIcon:!0,allowDeselect:!0,checkIconPosition:"left"},jae=We((e,r)=>{const n=Re("Select",Xat,e),{classNames:o,styles:a,unstyled:i,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:z,disabled:j,filter:A,limit:R,withScrollArea:T,maxDropdownHeight:O,size:P,searchable:L,rightSection:H,checkIconPosition:M,withCheckIcon:V,withAlignedLabels:B,nothingFoundMessage:F,name:q,form:G,searchValue:U,defaultSearchValue:Y,onSearchChange:Z,allowDeselect:I,error:W,rightSectionPointerEvents:K,id:Q,clearable:ae,clearButtonProps:te,hiddenInputProps:re,renderOption:ue,onClear:_e,autoComplete:ce,scrollAreaProps:pe,__defaultRightSection:xe,__clearSection:De,__clearable:Be,chevronColor:Je,autoSelectOnBlur:st,attributes:Le,...St}=n,Ve=S.useMemo(()=>vot(w),[w]),qe=S.useRef({}),Xe=S.useMemo(()=>woe(Ve),[Ve]),Ot=vl(Q),[Et,be,ke]=Md({value:x,defaultValue:k,finalValue:null,onChange:v}),Ye=typeof Et=="string"?Et in Xe?Xe[Et]:qe.current[Et]:void 0,yt=net(Ye),[xt,jr,er]=Md({value:U,defaultValue:Y,finalValue:Ye?Ye.label:"",onChange:Z}),qt=$oe({opened:s,defaultOpened:c,onDropdownOpen:()=>{u?.(),qt.updateSelectedOptionIndex("active",{scrollIntoView:!0})},onDropdownClose:()=>{d?.(),setTimeout(qt.resetSelectedOption,0)}}),Ht=fn=>{jr(fn),qt.resetSelectedOption()},{resolvedClassNames:Zr,resolvedStyles:Gt}=eR({props:n,styles:a,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=ae&&!!Et&&!j&&!z;return y.jsxs(y.Fragment,{children:[y.jsxs(xr,{store:qt,__staticSelector:"Select",classNames:Zr,styles:Gt,unstyled:i,readOnly:z,size:P,attributes:Le,keepMounted:st,onOptionSubmit:fn=>{_?.(fn);const oo=I&&Xe[fn].value===Et?null:Xe[fn],Uo=oo?oo.value:null;Uo!==Et&&be(Uo,oo),!ke&&Ht(typeof Uo=="string"&&oo?.label||""),qt.closeDropdown()},...$,children:[y.jsx(xr.Target,{targetType:L?"input":"button",autoComplete:ce,children:y.jsx(A4,{id:Ot,ref:r,__defaultRightSection:y.jsx(xr.Chevron,{size:P,error:W,unstyled:i,color:Je}),__clearSection:ln,__clearable:Wn,rightSection:H,rightSectionPointerEvents:K||"none",...St,size:P,__staticSelector:"Select",disabled:j,readOnly:z||!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:Zr,styles:Gt,unstyled:i,pointer:!L,error:W,attributes:Le})}),y.jsx(Not,{data:Ve,hidden:z||j,filter:A,search:xt,limit:R,hiddenWhenEmpty:!F,withScrollArea:T,maxDropdownHeight:O,filterOptions:!!L&&Ye?.label!==xt,value:Et,checkIconPosition:M,withCheckIcon:V,withAlignedLabels:B,nothingFoundMessage:F,unstyled:i,labelId:St.label?`${Ot}-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:j,...re})]})});jae.classes={...A4.classes,...xr.classes},jae.displayName="@mantine/core/Select";function Zat({spacing:e,verticalSpacing:r,cols:n,selector:o}){const a=uo(),i=r===void 0?e:r,l=Dd({"--sg-spacing-x":ro(yl(e)),"--sg-spacing-y":ro(yl(i)),"--sg-cols":yl(n)?.toString()}),s=zo(a.breakpoints).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=Wz(zo(s),a.breakpoints).filter(d=>zo(s[d.value]).length>0).map(d=>({query:`(min-width: ${a.breakpoints[d.value]})`,styles:s[d.value]}));return y.jsx(Mm,{styles:l,media:c,selector:o})}function _j(e){return typeof e=="object"&&e!==null?zo(e):[]}function Kat(e){return e.sort((r,n)=>Q2(r)-Q2(n))}function Qat({spacing:e,verticalSpacing:r,cols:n}){const o=Array.from(new Set([..._j(e),..._j(r),..._j(n)]));return Kat(o)}function Jat({spacing:e,verticalSpacing:r,cols:n,selector:o}){const a=r===void 0?e:r,i=Dd({"--sg-spacing-x":ro(yl(e)),"--sg-spacing-y":ro(yl(a)),"--sg-cols":yl(n)?.toString()}),l=Qat({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 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=l.map(d=>({query:`simple-grid (min-width: ${d})`,styles:s[d]}));return y.jsx(Mm,{styles:i,container:c,selector:o})}var Tae={container:"m_925c2d2c",root:"m_2415a157"};const eit={cols:1,spacing:"md",type:"media"},Aae=We((e,r)=>{const n=Re("SimpleGrid",eit,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,cols:d,verticalSpacing:u,spacing:p,type:f,attributes:g,...v}=n,w=dt({name:"SimpleGrid",classes:Tae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c}),x=_0();return f==="container"?y.jsxs(y.Fragment,{children:[y.jsx(Jat,{...n,selector:`.${x}`}),y.jsx("div",{...w("container"),children:y.jsx(Te,{ref:r,...w("root",{className:x}),...v})})]}):y.jsxs(y.Fragment,{children:[y.jsx(Zat,{...n,selector:`.${x}`}),y.jsx(Te,{ref:r,...w("root",{className:x}),...v})]})});Aae.classes=Tae,Aae.displayName="@mantine/core/SimpleGrid";const[tit,W4]=ja("SliderProvider was not found in tree"),Dae=S.forwardRef(({size:e,disabled:r,variant:n,color:o,thumbSize:a,radius:i,...l},s)=>{const{getStyles:c}=W4();return y.jsx(Te,{tabIndex:-1,variant:n,size:e,ref:s,...c("root"),...l})});Dae.displayName="@mantine/core/SliderRoot";const Mae=S.forwardRef(({max:e,min:r,value:n,position:o,label:a,dragging:i,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}=W4(),[_,$]=S.useState(!1),z=d||i||_||g&&v;return y.jsxs(Te,{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:i,disabled:x},onFocus:j=>{$(!0),typeof p=="function"&&p(j)},onBlur:j=>{$(!1),typeof f=="function"&&f(j)},onTouchStart:l,onMouseDown:l,onKeyDownCapture:s,onClick:j=>j.stopPropagation(),children:[w,y.jsx(kl,{mounted:a!=null&&!!z,transition:"fade",duration:0,...c,children:j=>y.jsx("div",{...C("label",{style:j}),children:a})})]})});Mae.displayName="@mantine/core/SliderThumb";function Nae({value:e,min:r,max:n}){const o=(e-r)/(n-r)*100;return Math.min(Math.max(o,0),100)}function rit({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 Pae({marks:e,min:r,max:n,disabled:o,value:a,offset:i,inverted:l}){const{getStyles:s}=W4();if(!e)return null;const c=e.map((d,u)=>S.createElement(Te,{...s("markWrapper"),__vars:{"--mark-offset":`${Nae({value:d.value,min:r,max:n})}%`},key:u},y.jsx(Te,{...s("mark"),mod:{filled:rit({mark:d,value:a,offset:i,inverted:l}),disabled:o}}),d.label&&y.jsx("div",{...s("markLabel"),children:d.label})));return y.jsx("div",{children:c})}Pae.displayName="@mantine/core/SliderMarks";function Bae({filled:e,children:r,offset:n,disabled:o,marksOffset:a,inverted:i,containerProps:l,...s}){const{getStyles:c}=W4();return y.jsx(Te,{...c("trackContainer"),mod:{disabled:o},...l,children:y.jsxs(Te,{...c("track"),mod:{inverted:i,disabled:o},children:[y.jsx(Te,{mod:{inverted:i,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(Pae,{...s,offset:a,disabled:o,inverted:i})]})})}Bae.displayName="@mantine/core/SliderTrack";function nit({value:e,containerWidth:r,min:n,max:o,step:a,precision:i}){const l=(r?Math.min(Math.max(e,0),r)/r:e)*(o-n),s=(l!==0?Math.round(l/a)*a:0)+n,c=Math.max(s,n);return i!==void 0?Number(c.toFixed(i)):c}function G4(e,r){return parseFloat(e.toFixed(r))}function oit(e){if(!e)return 0;const r=e.toString().split(".");return r.length>1?r[1].length:0}function Sj(e,r){const n=[...r].sort((o,a)=>o.value-a.value).find(o=>o.value>e);return n?n.value:e}function Ej(e,r){const n=[...r].sort((o,a)=>a.value-o.value).find(o=>o.valuen.value-o.value);return r.length>0?r[0].value:0}function Iae(e){const r=[...e].sort((n,o)=>n.value-o.value);return r.length>0?r[r.length-1].value:100}var Lae={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 ait={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"},iit=(e,{size:r,color:n,thumbSize:o,radius:a})=>({root:{"--slider-size":Qt(r,"slider-size"),"--slider-color":n?qo(n,e):void 0,"--slider-radius":a===void 0?void 0:hn(a),"--slider-thumb-size":o!==void 0?Pe(o):"calc(var(--slider-size) * 2)"}}),Fae=We((e,r)=>{const n=Re("Slider",ait,e),{classNames:o,styles:a,value:i,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:z,thumbChildren:j,disabled:A,unstyled:R,scale:T,inverted:O,className:P,style:L,vars:H,hiddenInputProps:M,restrictToMarks:V,thumbProps:B,attributes:F,...q}=n,G=dt({name:"Slider",props:n,classes:Lae,classNames:o,className:P,styles:a,style:L,attributes:F,vars:H,varsResolver:iit,unstyled:R}),{dir:U}=uc(),[Y,Z]=S.useState(!1),[I,W]=Md({value:typeof i=="number"?Tm(i,d,u):i,defaultValue:typeof v=="number"?Tm(v,d,u):v,finalValue:Tm(0,d,u),onChange:l}),K=S.useRef(I),Q=S.useRef(s);S.useEffect(()=>{Q.current=s},[s]);const ae=S.useRef(null),te=S.useRef(null),[re,ue]=p||[d,u],_e=Nae({value:I,min:re,max:ue}),ce=T(I),pe=typeof k=="function"?k(ce):k,xe=g??oit(f),De=S.useCallback(({x:Ve})=>{if(!A){const qe=nit({value:Ve,min:re,max:ue,step:f,precision:xe}),Xe=Tm(qe,d,u);W(V&&x?.length?$re(Xe,x.map(Ot=>Ot.value)):Xe),K.current=Xe}},[A,d,u,re,ue,f,xe,W,x,V]),Be=S.useCallback(()=>{if(!A&&Q.current){const Ve=V&&x?.length?$re(K.current,x.map(qe=>qe.value)):K.current;Q.current(Ve)}},[A,x,V]),{ref:Je,active:st}=KJe(De,{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=Sj(I,x);W(Xe),Le(Xe);break}const qe=G4(Math.min(Math.max(I+f,d),u),xe);W(qe),Le(qe);break}case"ArrowRight":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?Ej(I,x):Sj(I,x);W(Xe),Le(Xe);break}const qe=G4(Math.min(Math.max(U==="rtl"?I-f:I+f,d),u),xe);W(qe),Le(qe);break}case"ArrowDown":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=Ej(I,x);W(Xe),Le(Xe);break}const qe=G4(Math.min(Math.max(I-f,d),u),xe);W(qe),Le(qe);break}case"ArrowLeft":{if(Ve.preventDefault(),te.current?.focus(),V&&x){const Xe=U==="rtl"?Sj(I,x):Ej(I,x);W(Xe),Le(Xe);break}const qe=G4(Math.min(Math.max(U==="rtl"?I+f:I-f,d),u),xe);W(qe),Le(qe);break}case"Home":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(Oae(x)),Le(Oae(x));break}W(d),Le(d);break}case"End":{if(Ve.preventDefault(),te.current?.focus(),V&&x){W(Iae(x)),Le(Iae(x));break}W(u),Le(u);break}}};return y.jsx(tit,{value:{getStyles:G},children:y.jsxs(Dae,{...q,ref:on(r,ae),onKeyDownCapture:St,onMouseDownCapture:()=>ae.current?.focus(),size:c,disabled:A,children:[y.jsx(Bae,{inverted:O,offset:0,filled:_e,marks:x,min:re,max:ue,value:ce,disabled:A,containerProps:{ref:Je,onMouseEnter:z?()=>Z(!0):void 0,onMouseLeave:z?()=>Z(!1):void 0},children:y.jsx(Mae,{max:ue,min:re,value:ce,position:_e,dragging:st,label:pe,ref:te,labelTransitionProps:C,labelAlwaysOn:_,thumbLabel:$,showLabelOnHover:z,isHovered:Y,disabled:A,...B,children:j})}),y.jsx("input",{type:"hidden",name:w,value:ce,...M})]})})});Fae.classes=Lae,Fae.displayName="@mantine/core/Slider";const lit=We((e,r)=>{const{w:n,h:o,miw:a,mih:i,...l}=Re("Space",null,e);return y.jsx(Te,{ref:r,...l,w:n,miw:a??n,h:o,mih:i??o})});lit.displayName="@mantine/core/Space";var Vae={root:"m_6d731127"};const sit={gap:"md",align:"stretch",justify:"flex-start"},cit=(e,{gap:r,align:n,justify:o})=>({root:{"--stack-gap":ro(r),"--stack-align":n,"--stack-justify":o}}),qae=We((e,r)=>{const n=Re("Stack",sit,e),{classNames:o,className:a,style:i,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:Vae,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:g,vars:c,varsResolver:cit});return y.jsx(Te,{ref:r,...w("root"),variant:f,...v})});qae.classes=Vae,qae.displayName="@mantine/core/Stack";const[dit,Cj]=ja("Tabs component was not found in the tree");var D0={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 $j=We((e,r)=>{const n=Re("TabsList",null,e),{children:o,className:a,grow:i,justify:l,classNames:s,styles:c,style:d,mod:u,...p}=n,f=Cj();return y.jsx(Te,{...p,...f.getStyles("list",{className:a,style:d,classNames:s,styles:c,props:n,variant:f.variant}),ref:r,role:"tablist",variant:f.variant,mod:[{grow:i,orientation:f.orientation,placement:f.orientation==="vertical"&&f.placement,inverted:f.inverted},u],"aria-orientation":f.orientation,__vars:{"--tabs-justify":l},children:o})});$j.classes=D0,$j.displayName="@mantine/core/TabsList";const zj=We((e,r)=>{const n=Re("TabsPanel",null,e),{children:o,className:a,value:i,classNames:l,styles:s,style:c,mod:d,keepMounted:u,...p}=n,f=Cj(),g=f.value===i,v=f.keepMounted||u||g?o:null;return y.jsx(Te,{...f.getStyles("panel",{className:a,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(i),"aria-labelledby":f.getTabId(i),...p,children:v})});zj.classes=D0,zj.displayName="@mantine/core/TabsPanel";const Rj=We((e,r)=>{const n=Re("TabsTab",null,e),{className:o,children:a,rightSection:i,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:$}=uc(),z=Cj(),j=s===z.value,A=T=>{z.onChange(z.allowTabDeactivation&&s===z.value?null:s),c?.(T)},R={classNames:g,styles:v,props:n};return y.jsxs(ps,{...z.getStyles("tab",{className:o,style:f,variant:z.variant,...R}),disabled:u,unstyled:z.unstyled,variant:z.variant,mod:[{active:j,disabled:u,orientation:z.orientation,inverted:z.inverted,placement:z.orientation==="vertical"&&z.placement},x],ref:r,role:"tab",id:z.getTabId(s),"aria-selected":j,tabIndex:k!==void 0?k:j||z.value===null?0:-1,"aria-controls":z.getPanelId(s),onClick:A,__vars:{"--tabs-color":p?qo(p,_):void 0},onKeyDown:Hz({siblingSelector:'[role="tab"]',parentSelector:'[role="tablist"]',activateOnFocus:z.activateTabWithKeyboard,loop:z.loop,orientation:z.orientation||"horizontal",dir:$,onKeyDown:d}),...C,children:[l&&y.jsx("span",{...z.getStyles("tabSection",R),"data-position":"left",children:l}),a&&y.jsx("span",{...z.getStyles("tabLabel",R),children:a}),i&&y.jsx("span",{...z.getStyles("tabSection",R),"data-position":"right",children:i})]})});Rj.classes=D0,Rj.displayName="@mantine/core/TabsTab";const Hae="Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value",uit={keepMounted:!0,orientation:"horizontal",loop:!0,activateTabWithKeyboard:!0,variant:"default",placement:"left"},pit=(e,{radius:r,color:n,autoContrast:o})=>({root:{"--tabs-radius":hn(r),"--tabs-color":qo(n,e),"--tabs-text-color":qet(o,e)?Jz({color:n,theme:e,autoContrast:o}):void 0}}),M0=We((e,r)=>{const n=Re("Tabs",uit,e),{defaultValue:o,value:a,onChange:i,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:z,style:j,vars:A,autoContrast:R,mod:T,attributes:O,...P}=n,L=vl(d),[H,M]=Md({value:a,defaultValue:o,finalValue:null,onChange:i}),V=dt({name:"Tabs",props:n,classes:D0,className:z,style:j,classNames:C,styles:_,unstyled:$,attributes:O,vars:A,varsResolver:pit});return y.jsx(dit,{value:{placement:x,value:H,orientation:l,id:L,loop:c,activateTabWithKeyboard:u,getTabId:bre(`${L}-tab`,Hae),getPanelId:bre(`${L}-panel`,Hae),onChange:M,allowTabDeactivation:p,variant:f,color:g,radius:v,inverted:w,keepMounted:k,unstyled:$,getStyles:V},children:y.jsx(Te,{ref:r,id:L,variant:f,mod:[{orientation:l,inverted:l==="horizontal"&&w,placement:l==="vertical"&&x},T],...V("root"),...P,children:s})})});M0.classes=D0,M0.displayName="@mantine/core/Tabs",M0.Tab=Rj,M0.Panel=zj,M0.List=$j;var Uae={root:"m_7341320d"};const hit=(e,{size:r,radius:n,variant:o,gradient:a,color:i,autoContrast:l})=>{const s=e.variantColorResolver({color:i||e.primaryColor,theme:e,gradient:a,variant:o||"filled",autoContrast:l});return{root:{"--ti-size":Qt(r,"ti-size"),"--ti-radius":n===void 0?void 0:hn(n),"--ti-bg":i||o?s.background:void 0,"--ti-color":i||o?s.color:void 0,"--ti-bd":i||o?s.border:void 0}}},Wae=We((e,r)=>{const n=Re("ThemeIcon",null,e),{classNames:o,className:a,style:i,styles:l,unstyled:s,vars:c,autoContrast:d,attributes:u,...p}=n,f=dt({name:"ThemeIcon",classes:Uae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:u,vars:c,varsResolver:hit});return y.jsx(Te,{ref:r,...f("root"),...p})});Wae.classes=Uae,Wae.displayName="@mantine/core/ThemeIcon";const fit=["h1","h2","h3","h4","h5","h6"],mit=["xs","sm","md","lg","xl"];function git(e,r){const n=r!==void 0?r:`h${e}`;return fit.includes(n)?{fontSize:`var(--mantine-${n}-font-size)`,fontWeight:`var(--mantine-${n}-font-weight)`,lineHeight:`var(--mantine-${n}-line-height)`}:mit.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 Gae={root:"m_8a5d1357"};const yit={order:1},vit=(e,{order:r,size:n,lineClamp:o,textWrap:a})=>{const i=git(r||1,n);return{root:{"--title-fw":i.fontWeight,"--title-lh":i.lineHeight,"--title-fz":i.fontSize,"--title-line-clamp":typeof o=="number"?o.toString():void 0,"--title-text-wrap":a}}},Yae=We((e,r)=>{const n=Re("Title",yit,e),{classNames:o,className:a,style:i,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:Gae,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:w,vars:d,varsResolver:vit});return[1,2,3,4,5,6].includes(c)?y.jsx(Te,{...k("root"),component:`h${c}`,variant:p,ref:r,mod:[{order:c,"data-line-clamp":typeof f=="number"},v],size:u,...x}):null});Yae.classes=Gae,Yae.displayName="@mantine/core/Title";function Xae(e,r,n){if(!e||!r)return[];const o=n.indexOf(e),a=n.indexOf(r),i=Math.min(o,a),l=Math.max(o,a);return n.slice(i,l+1)}function jj({node:e,getStyles:r,rootIndex:n,controller:o,expandOnClick:a,selectOnClick:i,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(jj,{node:_,flatValues:d,getStyles:r,rootIndex:void 0,level:s+1,controller:o,expandOnClick:a,isSubtree:!0,renderNode:c,selectOnClick:i,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&&x0(_.currentTarget,"[role=treeitem]")?.focus()),_.nativeEvent.code==="ArrowDown"||_.nativeEvent.code==="ArrowUp"){const $=x0(_.currentTarget,"[data-tree-root]");if(!$)return;_.stopPropagation(),_.preventDefault();const z=Array.from($.querySelectorAll("[role=treeitem]")),j=z.indexOf(_.currentTarget);if(j===-1)return;const A=_.nativeEvent.code==="ArrowDown"?j+1:j-1;if(z[A]?.focus(),_.shiftKey){const R=z[A];R&&o.setSelectedState(Xae(o.anchorNode,R.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(Xae(o.anchorNode,e.value,d)),g.current?.focus()):(a&&o.toggleExpanded(e.value),i&&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(Te,{component:"ul",role:"group",...r("subtree"),"data-level":s,children:v})]})}jj.displayName="@mantine/core/TreeNode";function Y4(e,r,n=[]){const o=[];for(const a of e)if(Array.isArray(a.children)&&a.children.length>0){const i=Y4(a.children,r,n);if(i.currentTreeChecked.length===a.children.length){const l=i.currentTreeChecked.every(c=>c.checked),s={checked:l,indeterminate:!l,value:a.value,hasChildren:!0};o.push(s),n.push(s)}else if(i.currentTreeChecked.length>0){const l={checked:!1,indeterminate:!0,value:a.value,hasChildren:!0};o.push(l),n.push(l)}}else if(r.includes(a.value)){const i={checked:!0,indeterminate:!1,value:a.value,hasChildren:!1};o.push(i),n.push(i)}return{result:n,currentTreeChecked:o}}function Zae(e,r){for(const n of r){if(n.value===e)return n;if(Array.isArray(n.children)){const o=Zae(e,n.children);if(o)return o}}return null}function X4(e,r,n=[]){const o=Zae(e,r);return o?!Array.isArray(o.children)||o.children.length===0?[o.value]:(o.children.forEach(a=>{Array.isArray(a.children)&&a.children.length>0?X4(a.value,r,n):n.push(a.value)}),n):n}function Kae(e){return e.reduce((r,n)=>(Array.isArray(n.children)&&n.children.length>0?r.push(...Kae(n.children)):r.push(n.value),r),[])}function bit(e,r,n){return n.length===0?!1:n.includes(e)?!0:Y4(r,n).result.some(o=>o.value===e&&o.checked)}const xit=Cre(bit);function wit(e,r,n){return n.length===0?!1:Y4(r,n).result.some(o=>o.value===e&&o.indeterminate)}const kit=Cre(wit);function Qae(e,r,n,o={}){return r.forEach(a=>{o[a.value]=a.value in e?e[a.value]:a.value===n,Array.isArray(a.children)&&Qae(e,a.children,n,o)}),o}function _it(e,r){const n=[];return e.forEach(o=>n.push(...X4(o,r))),Array.from(new Set(n))}function Sit({initialSelectedState:e=[],initialCheckedState:r=[],initialExpandedState:n={},multiple:o=!1,onNodeCollapse:a,onNodeExpand:i}={}){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=>Qae(F,B,u)),g(F=>_it(F,B)),s(B)},[u,f]),_=S.useCallback(B=>{d(F=>{const q={...F,[B]:!F[B]};return q[B]?i?.(B):a?.(B),q})},[a,i]),$=S.useCallback(B=>{d(F=>(F[B]!==!1&&a?.(B),{...F,[B]:!1}))},[a]),z=S.useCallback(B=>{d(F=>(F[B]!==!0&&i?.(B),{...F,[B]:!0}))},[i]),j=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})},[]),R=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])),[]),T=S.useCallback(B=>{w(B),p(F=>o?F.includes(B)?F:[...F,B]:[B])},[]),O=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=X4(B,l);g(q=>Array.from(new Set([...q,...F])))},[l]),H=S.useCallback(B=>{const F=X4(B,l);g(q=>q.filter(G=>!F.includes(G)))},[l]),M=S.useCallback(()=>{g(()=>Kae(l))},[l]),V=S.useCallback(()=>{g([])},[]);return{multiple:o,expandedState:c,selectedState:u,checkedState:f,anchorNode:v,initialize:C,toggleExpanded:_,collapse:$,expand:z,expandAllNodes:j,collapseAllNodes:A,setExpandedState:d,checkNode:L,uncheckNode:H,checkAllNodes:M,uncheckAllNodes:V,setCheckedState:g,toggleSelected:R,select:T,deselect:O,clearSelected:P,setSelectedState:p,hoveredNode:x,setHoveredNode:k,getCheckedNodes:()=>Y4(l,f).result,isNodeChecked:B=>xit(B,l,f),isNodeIndeterminate:B=>kit(B,l,f)}}var Jae={root:"m_f698e191",subtree:"m_75f3ecf",node:"m_f6970eb1",label:"m_dc283425"};function eie(e){return e.reduce((r,n)=>(r.push(n.value),n.children&&r.push(...eie(n.children)),r),[])}const Eit={expandOnClick:!0,allowRangeSelection:!0,expandOnSpace:!0},Cit=(e,{levelOffset:r})=>({root:{"--level-offset":ro(r)}}),tie=We((e,r)=>{const n=Re("Tree",Eit,e),{classNames:o,className:a,style:i,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,z=Sit(),j=p||z,A=dt({name:"Tree",classes:Jae,props:n,className:a,style:i,classNames:o,styles:l,unstyled:s,attributes:_,vars:c,varsResolver:Cit}),R=xre(()=>v&&j.clearSelected()),T=on(r,R),O=S.useMemo(()=>eie(d),[d]);S.useEffect(()=>{j.initialize(d)},[d]);const P=d.map((L,H)=>y.jsx(jj,{node:L,getStyles:A,rootIndex:H,expandOnClick:u,selectOnClick:g,controller:j,renderNode:f,flatValues:O,allowRangeSelection:w,expandOnSpace:x,checkOnSpace:C},L.value));return y.jsx(Te,{component:"ul",ref:T,...A("root"),...$,role:"tree","aria-multiselectable":j.multiple,"data-tree-root":!0,children:P})});tie.displayName="@mantine/core/Tree",tie.classes=Jae;var $it="Invariant failed";function Z4(e,r){if(!e)throw new Error($it)}function zit(e){return typeof e=="function"}function rie(e,r){return zit(e)?e(r):e}function Rit(e,r){return r.reduce((n,o)=>(n[o]=e[o],n),{})}function nie(e,r){if(e===r)return e;const n=r,o=aie(e)&&aie(n);if(o||K4(e)&&K4(n)){const a=o?e:Object.keys(e),i=a.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!(!oie(n)||!n.hasOwnProperty("isPrototypeOf"))}function oie(e){return Object.prototype.toString.call(e)==="[object Object]"}function aie(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function iie(e,r){let n=Object.keys(e);return r&&(n=n.filter(o=>e[o]!==void 0)),n}function Tj(e,r,n){if(e===r)return!0;if(typeof e!=typeof r)return!1;if(K4(e)&&K4(r)){const o=n?.ignoreUndefined??!0,a=iie(e,o),i=iie(r,o);return!n?.partial&&a.length!==i.length?!1:i.every(l=>Tj(e[l],r[l],n))}return Array.isArray(e)&&Array.isArray(r)?e.length!==r.length?!1:!e.some((o,a)=>!Tj(o,r[a],n)):!1}function jit(e){let r,n;const o=new Promise((a,i)=>{r=a,n=i});return o.status="pending",o.resolve=a=>{o.status="resolved",o.value=a,r(a)},o.reject=a=>{o.status="rejected",n(a)},o}function Q4(e,r){return e?.endsWith("/")&&e!=="/"&&e!==`${r}/`?e.slice(0,-1):e}function Tit(e,r,n){return Q4(e,n)===Q4(r,n)}function J4(e){return!!e?.isNotFound}const lie="tsr-scroll-restoration-v1_3";let sie=!1;try{sie=typeof window<"u"&&typeof window.sessionStorage=="object"}catch{}sie&&JSON.parse(window.sessionStorage.getItem(lie)||"null");const cie=e=>e.state.key||e.href;function Ait(e,r,n,o,a){var i;let l;try{l=JSON.parse(sessionStorage.getItem(e)||"{}")}catch(d){console.error(d);return}const s=r||((i=window.history.state)==null?void 0:i.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",...a?.filter(u=>u!=="window")??[]].forEach(u=>{const p=u==="window"?window:document.querySelector(u);p&&p.scrollTo({top:0,left:0,behavior:n})})})()}const die="__root__";function Dit(e){return!!e?.isRedirect}function Mit(e){const r=e.resolvedLocation,n=e.location,o=r?.pathname!==n.pathname,a=r?.href!==n.href,i=r?.hash!==n.hash;return{fromLocation:r,toLocation:n,pathChanged:o,hrefChanged:a,hashChanged:i}}const Nit="Error preloading route! ☝️";function uie(e){const r=e.errorComponent??Aj;return y.jsx(Pit,{getResetKey:e.getResetKey,onCatch:e.onCatch,children:({error:n,reset:o})=>n?S.createElement(r,{error:n,reset:o}):e.children})}class Pit 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 Aj({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 Bit(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var pie={exports:{}},Dj={},hie={exports:{}},Mj={},fie;function Oit(){if(fie)return Mj;fie=1;var e=Kr;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,a=e.useEffect,i=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 i(function(){w.value=g,w.getSnapshot=f,c(w)&&x({inst:w})},[p,g,f]),a(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 Mj.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:u,Mj}var mie;function gie(){return mie||(mie=1,hie.exports=Oit()),hie.exports}var yie;function Iit(){if(yie)return Dj;yie=1;var e=Kr,r=gie();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,a=r.useSyncExternalStore,i=e.useRef,l=e.useEffect,s=e.useMemo,c=e.useDebugValue;return Dj.useSyncExternalStoreWithSelector=function(d,u,p,f,g){var v=i(null);if(v.current===null){var w={hasValue:!1,value:null};v.current=w}else w=v.current;v=s(function(){function k(j){if(!C){if(C=!0,_=j,j=f(j),g!==void 0&&w.hasValue){var A=w.value;if(g(A,j))return $=A}return $=j}if(A=$,o(_,j))return A;var R=f(j);return g!==void 0&&g(A,R)?(_=j,A):(_=j,$=R)}var C=!1,_,$,z=p===void 0?null:p;return[function(){return k(u())},z===null?void 0:function(){return k(z())}]},[u,p,f,g]);var x=a(d,v[0],v[1]);return l(function(){w.hasValue=!0,w.value=x},[x]),c(x),x},Dj}var vie;function Lit(){return vie||(vie=1,pie.exports=Iit()),pie.exports}var bie=Lit();const Fit=Bit(bie);function Vit(e,r=n=>n){return bie.useSyncExternalStoreWithSelector(e.subscribe,()=>e.state,()=>e.state,r,qit)}function qit(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,a]of e)if(!r.has(o)||!Object.is(a,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"?Nj:window.__TSR_ROUTER_CONTEXT__?window.__TSR_ROUTER_CONTEXT__:(window.__TSR_ROUTER_CONTEXT__=Nj,Nj)}function Fp(e){const r=S.useContext(Hit());return e?.warn,r}function Sl(e){const r=Fp({warn:e?.router===void 0}),n=e?.router||r,o=S.useRef(void 0);return Vit(n.__store,a=>{if(e?.select){if(e.structuralSharing??n.options.defaultStructuralSharing){const i=nie(o.current,e.select(a));return o.current=i,i}return e.select(a)}return a})}const xie=S.createContext(void 0);S.createContext(void 0);function Uit(e){const r=Sl({select:n=>`not-found-${n.location.pathname}-${n.status}`});return y.jsx(uie,{getResetKey:()=>r,onCatch:(n,o)=>{var a;if(J4(n))(a=e.onCatch)==null||a.call(e,n,o);else throw n},errorComponent:({error:n})=>{var o;if(J4(n))return(o=e.fallback)==null?void 0:o.call(e,n);throw n},children:e.children})}function Wit(){return y.jsx("p",{children:"Not Found"})}function Pj(e){return y.jsx(y.Fragment,{children:e.children})}function wie(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(Wit,{})}var Bj,kie;function Git(){if(kie)return Bj;kie=1;const e={},r=e.hasOwnProperty,n=(R,T)=>{for(const O in R)r.call(R,O)&&T(O,R[O])},o=(R,T)=>(T&&n(T,(O,P)=>{R[O]=P}),R),a=(R,T)=>{const O=R.length;let P=-1;for(;++P"\\u"+("0000"+R).slice(-4),l=(R,T)=>{let O=R.toString(16);return T?O:O.toUpperCase()},s=e.toString,c=Array.isArray,d=R=>typeof Buffer=="function"&&Buffer.isBuffer(R),u=R=>s.call(R)=="[object Object]",p=R=>typeof R=="string"||s.call(R)=="[object String]",f=R=>typeof R=="number"||s.call(R)=="[object Number]",g=R=>typeof R=="bigint",v=R=>typeof R=="function",w=R=>s.call(R)=="[object Map]",x=R=>s.call(R)=="[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]/,z=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^]/g,j=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^ !#-&\(-\[\]-_a-~]/g,A=(R,T)=>{const O=()=>{F=B,++T.indentLevel,B=T.indent.repeat(T.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=T&&T.json;L&&(P.quotes="double",P.wrap=!0),T=o(P,T),T.quotes!="single"&&T.quotes!="double"&&T.quotes!="backtick"&&(T.quotes="single");const H=T.quotes=="double"?'"':T.quotes=="backtick"?"`":"'",M=T.compact,V=T.lowercaseHex;let B=T.indent.repeat(T.indentLevel),F="";const q=T.__inline1__,G=T.__inline2__,U=M?"":` `;let Y,Z=!0;const I=T.numbers=="binary",W=T.numbers=="octal",K=T.numbers=="decimal",Q=T.numbers=="hexadecimal";if(L&&R&&v(R.toJSON)&&(R=R.toJSON()),!p(R)){if(w(R))return R.size==0?"new Map()":(M||(T.__inline1__=!0,T.__inline2__=!1),"new Map("+A(Array.from(R),T)+")");if(x(R))return R.size==0?"new Set()":"new Set("+A(Array.from(R),T)+")";if(d(R))return R.length==0?"Buffer.from([])":"Buffer.from("+A(Array.from(R),T)+")";if(c(R))return Y=[],T.wrap=!0,q&&(T.__inline1__=!1,T.__inline2__=!0),G||O(),a(R,te=>{Z=!1,G&&(T.__inline2__=!1),Y.push((M||G?"":B)+A(te,T))}),Z?"[]":G?"["+Y.join(", ")+"]":"["+U+Y.join(","+U)+U+(M?"":F)+"]";if(f(R)||g(R)){if(L)return JSON.stringify(Number(R));let te;if(K)te=String(R);else if(Q){let re=R.toString(16);V||(re=re.toUpperCase()),te="0x"+re}else I?te="0b"+R.toString(2):W&&(te="0o"+R.toString(8));return g(R)?te+"n":te}else return g(R)?L?JSON.stringify(Number(R)):R+"n":u(R)?(Y=[],T.wrap=!0,O(),n(R,(te,re)=>{Z=!1,Y.push((M?"":B)+A(te,T)+":"+(M?"":" ")+A(re,T))}),Z?"{}":"{"+U+Y.join(","+U)+U+(M?"":F)+"}"):L?JSON.stringify(R)||"null":String(R)}const ae=T.escapeEverything?z:j;return Y=R.replace(ae,(te,re,ue,_e,ce,pe)=>{if(re){if(T.minimal)return re;const De=re.charCodeAt(0),Be=re.charCodeAt(1);if(T.es6){const Je=(De-55296)*1024+Be-56320+65536;return"\\u{"+l(Je,V)+"}"}return i(l(De,V))+i(l(Be,V))}if(ue)return i(l(ue.charCodeAt(0),V));if(te=="\0"&&!L&&!_.test(pe.charAt(ce+1)))return"\\0";if(_e)return _e==H||T.escapeEverything?"\\"+_e:_e;if(C.test(te))return k[te];if(T.minimal&&!$.test(te))return te;const xe=l(te.charCodeAt(0),V);return L||xe.length>2?i(xe):"\\x"+("00"+xe).slice(-2)}),H=="`"&&(Y=Y.replace(/\$\{/g,"\\${")),T.isScriptContext&&(Y=Y.replace(/<\/(script|style)/gi,"<\\/$1").replace(/